...: Strona :...
News
Archiwum
Redakcja
Chat ( 1 )
Forum
Księga Go¶ci
Imprezy
Linki
Wymiana
Radio

- Download -
Programy
Gry
Zasoby
Music
Sound
ICO

- RPG Maker -
RPGMV
RPGVXAce
RPGVX
RPGXP
RPGME
Sim RPG 95
RPG95

- Projekty -
Virtua Twierdza

- Krypta -
Kompendium
Scenariusze
Questy
Artykuły

...: Buttony :...
Anime Gakure
Polska Manga
Dragon Ball Nao
Słodki Flirt - gra o randkach
Radio Aoi - najlepsze radio z muzyk± azjatyck±
Alchemic
M.U.G.E.N Samouczek
Pokemon Valhalla
Tsukuru Archive
Crasher World
Pillars of Eternity POLSKA — największy portal Pillars of Eternity (Project Eternity)
fallout walkthrough, fallout playground, video game walkthrough, playground, walkthrough, games
Kroniki Fallathanu - Prawdziwy mmoRPG w przegl±darce
Modules -  the greatest and ultimate place for every tracked-music sympathizer


Informacje || Problemy z RPGXP || Zgło¶ nowe materiały
RPG Maker :: RPG Maker XP

Przekazywanie zmiennych


OK., więc zacznijmy Nie jestem dobrym skryptowcem, dopiero zaczynam, ale tym, co już umiem chce się z wami podzielic, W dzisiejszej lekcji zajmiemy się zagadnieniem?.. Przekazywania zmiennej. A więc: Posłużę się najłatwiejszym przykładem. Otwórzcie script editor klawiszem "f11" i wejdĽcie sobie w klasę "scene_end".

Jak już poznajesz na pocz±tku masz trzy komendy prosta sprawa. S1, s2 i s3 to w sumie tez zmienne, ale tekstowe, czyli stringi. To tez już było wyja¶niane. Zmiennej "s1" znakiem = przypisuje się tekst. To tez na razie tylko przypomnienie. Ale spójrz niżej.


Widzisz w nawiasie 192 I inne trzy liczby. Nie ciekawi cię zmienna klasowa command_window? W takim razie przejdĽ do klasy Window_command. Co widzisz?


Def initialize oznacza ze to ma być wykonywane przy wywołaniu teko okna. Ale popatrz, co jest obok. Hmmm, Nawias? A w nawiasie jakie¶ zmienne. Width i commands. Ale, po co one jak nie ma na nich żadnych działań ani nic się im nie przypisuje. Otoz: s± to zmienne, które musisz przekazać wywołuj±c to okna: Porównaj:

@command_window = Window_Command.new(192, [s1, s2, s3]) - wywolanie okna

def initialize(width, commands) - pierwsze linijki w window_command

Następuje przekazanie zmiennych w nawiasach.

W ogóle to powinienem wyja¶nić, do czego jest klasa window_command. A więc jest to klasa, która odpowiada za wszystkie okna, w których mamy jaki¶ wybór komend. Jest w niej cala procedura jak to okno ma być tworzone. Oczywi¶cie takie rzeczy jak komendy i szeroko¶ć możemy modyfikować z innych klas wła¶nie przekazaniem zmiennej.

A teraz będzie prostszy przykład. Wróćmy do scene_end. ZnajdĽmy def command_cancel. Jak już było powiedziane jest to co się stanie po wywołaniu komendy anuluj. Dla przypomnienia jest to wywoływane w tej serii linijek,




Jeżeli wybieramy 3 opcje, czyli anuluj to wywołuje się komenda cancel (pamiętajcie ze musimy liczyć z zerem) ok., ale koniec przypomnień. ZejdĽcie już do tego def command_cancel:


Widzimy zmienn±, $sene która ustawia się na menu. Hmmm czyżby znowu nawias i jakie¶ tajemnicze 5 w dodatku? Ok. nie przedłużajmy tylko biegiem do scene_menu.


Def_initialize, czyli co ma być, jak startniemy t± scene. Tu znowu mamy zmienn± w nawiasie, ale od razu dopisane do niej jest zero. Znów porównajcie:


Tu jest trochę inaczej. Znów następuje przekazanie, czyli zmienna menu_index ustawia się na 5 przekazane ze scene_end, lecz tu jest różnica, że jeżeli nie przekażemy tej zmiennej to ona ustawi się na zero. Proste no nie? Zaraz potem zmienna klasowa @menu_index ustawia se warto¶ć menu index bez tej małpy. A zaraz wytłumaczę, do czego ta zmienna jest i po co przekazujemy co¶ ze scene end. Otóż, rozróżniamy następuj±ce grosze, (buahaha) PrzejdĽcie niżej do linijki 27"

To znaczy że ustawiamy pozycje kursora na warto¶ć @menu_index czyli skoro przekazali¶my ze scene_end warto¶ć 5 to ustawiamy pozycje na 6 komendę (bo jeszcze te głupie 0) Pytacie po co? A sprawdĽcie, co to za komenda (na samej górze scene menu)

Oczywi¶cie skoro wybrali¶my koniec i wyskoczyło nam scene_end to jak anulujemy, czyli wrócimy z tego scene_end to, dlaczego miałby się, resetowac kursor? Niech zostanie tam gdzie był jak wybierali¶my koniec. To samo zauważymy jak pogrzebiemy w scene’iem i znajdziemy tam, co się stanie jak escape naci¶niemy. Walnie nas wtedy powrotem do scene menu z tym, że w nawiasie będzie ile? No nie mówcie, że nie wiecie. No "0", pamiętajcie o ty głupim "0".

Ok. mam nadzieje ze było to zrozumiale. Jak nie to wróćcie tu po innych lekcjach Ja w każdym razie mam nadzieje że się to przydało.


Autor:Squcloud
Email: squcloud@tlen.pl