Wywołanie przez nazwe zdarzenia
Aktualny czas: 28-04-26, 19:33 Witaj! Przejdź do zakładki Logowanie lub Rejestracja


Wątek zamknięty 
[VXAce] Wywołanie przez nazwe zdarzenia
X-Tech Offline


Liczba postów: 876
Dołączył: 03-05-13

Pomógł: 23



Post: #1
Wywołanie przez nazwe zdarzenia

Jak wygląda komenda, która sprawdzi czy zdarzenie o podanym id nazywa sie "noworodek" to ma być warunek:

jeśl event o id .... nazywa sie "noworodek" (nazwa jest w pole górne w lewej części eventa zwykle tam pisze jego numer id ale można to zmienić na co sie chce ja zmieniłem na "noworodek") może zajść akcja:
(Ten post był ostatnio modyfikowany: 02-08-14 21:10 przez X-Tech.)
02-08-14 21:08
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


Liczba postów: 758
Dołączył: 09-04-13

Pomógł: 112



Post: #2
RE: Wywołanie przez nazwe zdarzenia

Dopisz do klasy "Game_Event" definicję:
def name
    @event.name
  end
Wówczas warunek wygląda tak:
if $game_map.events[ID].name == "noworodek"

[Obrazek: aye_furniture_pres.png]
02-08-14 21:54
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a): X-Tech
X-Tech Offline


Liczba postów: 876
Dołączył: 03-05-13

Pomógł: 23



Post: #3
RE: Wywołanie przez nazwe zdarzenia

Dzięki. Pewnie to działa, ale nie rozumiem zapisu. Nie rozumiem co się tutaj dzieje.
(Ten post był ostatnio modyfikowany: 02-08-14 22:05 przez X-Tech.)
02-08-14 21:55
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


Liczba postów: 758
Dołączył: 09-04-13

Pomógł: 112



Post: #4
RE: Wywołanie przez nazwe zdarzenia

Sprawdź klasę Game_Map. Widnieje tam odwołanie do hasha z events. Hash ten wrzuca do tej klasy nową klasę - Game_Event, która z kolei w initialize przywołuje zmienną event. Zmienna ta odwołuje się z kolei do ukrytej w RGSS3 klasy RPG::Event, która ma atrybut name. Żeby zatem odwołać się do niego bezpośrednio trzeba było dodać definicję.

[Obrazek: aye_furniture_pres.png]
02-08-14 22:17
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
X-Tech Offline


Liczba postów: 876
Dołączył: 03-05-13

Pomógł: 23



Post: #5
RE: Wywołanie przez nazwe zdarzenia

a już czaje hashe to są te elementy w {} powoli to ogarniam.
Jeśli dobrze ogarniam hashe to są tablice, w których się przyporządkowuje jakimś
elementom zupełnie inne elementy.
(Ten post był ostatnio modyfikowany: 03-08-14 00:01 przez X-Tech.)
02-08-14 22:44
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


Liczba postów: 758
Dołączył: 09-04-13

Pomógł: 112



Post: #6
RE: Wywołanie przez nazwe zdarzenia

Hashe to takie faktycznie nieco inne tablice, które pozwalają na przypisanie wartości (value) tzw. kluczom (keys).
hash{ key => value }
lub
hash = {}
hash[key] = value
na dobrą sprawę otrzymasz coś na rodzaj tablicy, przy czym nie poruszasz się po hashu indeksami, lecz właśnie kluczami.

[Obrazek: aye_furniture_pres.png]
03-08-14 10:38
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
X-Tech Offline


Liczba postów: 876
Dołączył: 03-05-13

Pomógł: 23



Post: #7
RE: Wywołanie przez nazwe zdarzenia

No właśnie to ogarnąłem, że Hashe to tablice z szybszym dostępem do środka. Wystarczy po nazwie elementów lecieć. Fajne to jest akurat.

Teraz tylko ogarniam hierarchie. Poczytam o nowym tego rodzaju elemencie i zastanawiam się od zera jaki dostęp do środka mają z zewnątrz inne elementy/klasy i jak z wewnątrz sięgać na zewnątrz, bo o ile wiem że mamy dziedziczenie/aliasy/super i działają podobnie/inaczej to teraz hashe dodały nową komplikacje. Ciężko określić położenie np: kiedy doda się hasha w klasie, która dziedzieczy, albo w klasie od której inna dziedziczy. Pytanie teraz jak tam sięgać i jaki jest zasięg i na odwrót. Nie cierpię tego. Chyba muszę znowu eksperymentować od zera, aby sprawdzać zasięg i położenie.
(Ten post był ostatnio modyfikowany: 03-08-14 11:18 przez X-Tech.)
03-08-14 11:16
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


Liczba postów: 758
Dołączył: 09-04-13

Pomógł: 112



Post: #8
RE: Wywołanie przez nazwe zdarzenia

Masz taki zasięg hasha, jaki sobie wybierzesz. Przecież, jeśli deklarujesz, że hashem czy tablicą jest zmienna instancji, to zasięg masz zmiennej instancji... Ale hashem może myć też zmienna globalna... itd.

[Obrazek: aye_furniture_pres.png]
03-08-14 11:24
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.