Kopiowanie ataku
Wystąpiły następujące problemy:
Warning [2] Cannot modify header information - headers already sent by (output started at /home/ayene/public_html/forum/inc/languages/polish/global.lang.php:1) - Line: 411 - File: inc/plugins/google_seo/redirect.php PHP 5.6.40 (Linux)
File Line Function
[PHP]   errorHandler->error
/inc/plugins/google_seo/redirect.php 411 header
/inc/plugins/google_seo/redirect.php 399 google_seo_redirect_header
/inc/class_plugins.php 101 google_seo_redirect_hook
/global.php 101 pluginSystem->run_hooks
/showthread.php 22 require_once
Warning [2] Cannot modify header information - headers already sent by (output started at /home/ayene/public_html/forum/inc/languages/polish/global.lang.php:1) - Line: 1710 - File: inc/functions.php PHP 5.6.40 (Linux)
File Line Function
[PHP]   errorHandler->error
/inc/functions.php 1710 header
/inc/functions.php 1772 my_setcookie
/inc/functions_indicators.php 42 my_set_array_cookie
/showthread.php 578 mark_thread_read



Aktualny czas: 19-04-24, 22:42 Witaj! Przejdź do zakładki Logowanie lub Rejestracja


Wątek zamknięty 
[VX] Kopiowanie ataku
Yoroiookami Offline
*


Liczba postów: 985
Dołączył: 01-05-13

Pomógł: 137



Post: #1
Kopiowanie ataku

Jest może jakiś sposób na zapamiętanie ostatniej użytej umiejętności? Chciałbym zrobić umiejętność która je kopiuje na czas walki, ale nie mam w zmiennych nawet takiej opcji, a na skryptach się nie znam. :L

[Obrazek: mt4dzY7.png]
[Obrazek: k5KQGOe.png]
09-05-17 13:42
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Dakla Offline
*


Liczba postów: 110
Dołączył: 23-12-15

Pomógł: 4



Post: #2
RE: Kopiowanie ataku

Nie wiem czy da się tak na VX, ale, o ile posiadasz znośną ilość zaklęć, to zrobiłbym typowe zdarzenie w każdym zaklęciu, które włącza przełącznik np:Zaklęcie ognia, a potem wyłącza resztę przełączników np:wyłącza przełącznik zaklęcie wody i ziemi. I teraz gdy używasz zaklęcia Kopiowanie to w typowym zdarzeniu jest warunek przełącznik ogień to wtedy wymuś zaklęcie ognia na bohaterze. Jeśli przełącznik woda to wtedy wymuś zaklęcie wody na bohaterze itd....
10-05-17 13:11
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Yoroiookami Offline
*


Liczba postów: 985
Dołączył: 01-05-13

Pomógł: 137



Post: #3
RE: Kopiowanie ataku

Nie posiadam 'znośnej' ilości zaklęć. :lol2:
Do tego chodzi mi o nauczenie się ataku na czas walki, a nie o jego natychmiastowe użycie. smiles

[Obrazek: mt4dzY7.png]
[Obrazek: k5KQGOe.png]
(Ten post był ostatnio modyfikowany: 10-05-17 13:22 przez Yoroiookami.)
10-05-17 13:21
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Dakla Offline
*


Liczba postów: 110
Dołączył: 23-12-15

Pomógł: 4



Post: #4
RE: Kopiowanie ataku

Hmm... trochę nie rozumiem o co ci chodzi...

1)Co oznacza nauczenie się zaklęcia na czas walki? Przecież przełącznik odnoszący się do ostatniego rzucanego zaklęcia jest włączony dopóki go nie wyłączysz.

2)Jeśli chodzi o natychmiastowe użycie: przecież ta kopia zaklęcia pojawiłaby się dopiero, gdy gracz rzuciłby zaklęcia Kopii z odpowiednim typowym zdarzeniem.

3)A co do ilości zaklęć to nawet jeśli posiadałbyś 60 zaklęć to te 59 przełączników zawsze byłoby na off, a tylko jeden na on.
10-05-17 13:42
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Yoroiookami Offline
*


Liczba postów: 985
Dołączył: 01-05-13

Pomógł: 137



Post: #5
RE: Kopiowanie ataku

60 zaklęć to (na razie) mają sami bohaterowie nie wliczając wrogów, więc średnio to wypada. Dużo przełączników, chyba już bym wolał zmienną. Ale i to nie jest idealne bo i tak dużo czasu mi zejdzie na wrzucenie tego wszystkiego do bazy danych. No ale dzięki za jakąś opcję, bo o tym nie pomyślałem. :ehe:
Zdecydowanie wolałbym skrypt.

[Obrazek: mt4dzY7.png]
[Obrazek: k5KQGOe.png]
10-05-17 14:47
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Mateusz SSJ8 Offline
*


Liczba postów: 510
Dołączył: 10-05-13

Pomógł: 40



Post: #6
RE: Kopiowanie ataku

Musisz skontakować się z GameFreak i zapytać, jak to zrobili. Bo w oryginalnych pokemonach był ruchu, który po użyciu uczył twojego pokemona jednego z ruchów przeciwnika.

Atak na serio to nawet w RPG Makerze XP da się. Ale to dużo pracy. Kto wie,czy nie za dużo.
1. Musisz zarezerwować miejsce, gdzie będzie przechowywany ruch, który innym ruchem skopiowałeś od przeciwnika. Wszystkie ruchy bohatera skopiowane od przeciwnika powinny tam być.
2. Jeśli planujesz jakieś ruchy na stałe, możesz je bezpośrednio na listę tych, których bohater sam się nauczył.

W przypadku aktualnie zaczynanych przeze mnie gier wygląda to tak:
1. Każdy skill ma dwa zbiory efektów (W RPG Makerze VX Ace standardowo jeden). Jeden zbiór to efekty wywoływane na wykonawcy (stąd nie da się ustawić kosztów energii w sposób typowy dla RPG Makera). Drugi to efekty wywoływane na tym, kto tym oberwie.
2. Przy spełnieniu warunków z punktu 1 tworzysz jeden skill, który jest wycelowany w jednego przeciwnika. Jeśli ten skill zżera energię przy użyciu, w efektach użytkownika dajesz efekt zmiany energii. Jeśli stosujesz system z RPG Makera VX Ace, musisz wiedzieć, jaki jest numer kodowy efektu odpowiedzialnego za zmianę energii. Dobrym rozwiązaniem byłoby mieć jeden kod efektu dla zmiany wszystkich podstawowych energii i drugi dla TP (jeśli w twojej grze są TPki).
3. W efektach na obrywającym w skillu utworzonym przez realizację punktu 2 dajesz efekt wywołania skryptu, który sprawi, że wykonawca tego ataku "zerżnie" jeden od przeciwnika. Jeśli chcesz dać graczowi wybór, który, musisz się jeszcze napracować. W przypadku ostatniego ataku wykonanego przez przeciwnika wystarczy zadbać o pamięć co do ostatniej wykonanej przez niego akcji. Jednak, jeśli przeciwnik może używać itemów, trzeba zadbać, żeby bohater nie nauczyć się skilla, kiedy ostatnim ruchem przeciwnika był item.

A zatem nie trzeba typowych zdarzeń w to mieszać.

Nienawidzony i nienawidzący. Przez nienawiść tego drugiego obaj będą martwi.
15-05-17 07:38
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
AlmostNoRuby Offline
*


Liczba postów: 174
Dołączył: 22-09-16

Pomógł: 33



Post: #7
Ostatnio użyta umiejętność

$game_actors[id].last_skill_id
gdzie id to numer bohatera z bazy danych (pierwsze nie jest zero, tylko jeden)
Przykłady:
Spoiler: (Otwórz)

[Obrazek: userbar1.png]
15-05-17 16:12
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Yoroiookami Offline
*


Liczba postów: 985
Dołączył: 01-05-13

Pomógł: 137



Post: #8
RE: Kopiowanie ataku

Dzięki Mateuszku, ale tradycyjnie mój musk niczego nie zrozumiał. :shock:

(15-05-17 16:12)AlmostNoRuby napisał(a):  
$game_actors[id].last_skill_id
gdzie id to numer bohatera z bazy danych (pierwsze nie jest zero, tylko jeden)
Przykłady:
Spoiler: (Otwórz)
Ale mi chodzi o to, żeby gracz uczył się ostatniego ruchu potwora LUB bohatera. Przydałby się też jakiś sposób na wykluczenie niektórych zdolności. :ehe:
Te polecenia byłyby przydatne gdyby chodziło tylko o bohaterów, a i nawet wtedy nie jestem pewien jak to właściwie działa. Co by mi dało przeniesienie numeru skilla do zmiennej? smiles

[Obrazek: mt4dzY7.png]
[Obrazek: k5KQGOe.png]
(Ten post był ostatnio modyfikowany: 15-05-17 16:44 przez Yoroiookami.)
15-05-17 16:43
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
AlmostNoRuby Offline
*


Liczba postów: 174
Dołączył: 22-09-16

Pomógł: 33



Post: #9
RE: Kopiowanie ataku

Nie doczytałem. :P
Jak coś wymyślę, to napiszę.
Przeniesienie numeru skilla do zmiennej ułatwiłoby dalsze tworzenie zdarzenia. Zamiast kombinować, masz to po prostu w zmiennej, którą zawsze możesz wywołać.

[Obrazek: userbar1.png]
(Ten post był ostatnio modyfikowany: 15-05-17 17:00 przez AlmostNoRuby.)
15-05-17 16:49
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Mateusz SSJ8 Offline
*


Liczba postów: 510
Dołączył: 10-05-13

Pomógł: 40



Post: #10
RE: Kopiowanie ataku

@AlmostNoRuby
Niestety, twoje rozwiązanie nie uwzględnia użycia itemu przez przeciwnika.

@Yoroiookami
W takim wypadku wystarczy w klasie "Game_Battler" udostępnić zmienną "last_action", do której przed wyczyszczeniem akcji będą wczytywane informacje o rodzaju akcji i id przedmiotu, np.
def action_config
[@kind, @item_id]
end
w samej akcji.
a.learn_skill_for_temp(b.last_action[1]) if b.last_action[0] == :skill

Podczas, gdy standardowo RPG Maker VX Ace pozwala na tylko jeden typ ataku, moje rozwiązanie polega na określeniu jednego ataku jako mającego więcej, niż jeden typ. Standardowa egzekucja wszystkich oznacza, że nie ma ograniczeń co do typów ataku, ale, jeśli pewne typy z góry określają rodzaj ataku (cios, strzał, rzut, pięść, kopnięcie, ubodzenie), to z tych typów możesz dać danemu atakowi tylko jeden, podczas, gdy z pozostałych (podstawowy, technika, czar, zaklęcie, ostateczny, itp.) możesz dać, ile chcesz, w tym nawet wszystkie.
Jeśli jakieś ataki nie powinny być zrzynane od przeciwnika, to najprościej będzie nadać im typ oznaczający, że ten atak jest tym, którego bohater nie może się nauczyć od przeciwnika. Po prostu zaznacz, że ataków mających typ podstawowy nie można zerżnąć.

Nienawidzony i nienawidzący. Przez nienawiść tego drugiego obaj będą martwi.
(Ten post był ostatnio modyfikowany: 21-05-17 21:31 przez Mateusz SSJ8.)
21-05-17 21:29
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Wątek zamknięty 


Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości

Kontakt | Ultima Forum | Wróć do góry | Wróć do forów | Wersja bez grafiki | RSS
Powered By MyBB. © 2013 MyBB Group. All Rights Reserved.
Skórka by Ayene.