A script, lépésről lépésre

A script, lépésről lépésre

1. Bevezetés
2. Fogalommeghatározások.
3. Ismerje meg, hogyan működnek tervez.
4. A tanulási dolgozni az ellenőrzéseket.
5. Tanuld meg a változók.
6. Load / check terhelési modellek.
7. Tanuld meg a műveleti kódokat. List opkodv érdeklődést a játék.
8. Érdekes cikkek: miért van a várakozás 0?
9. Érdekes cikkek: Audio-táblázatok felsorolását, vagy hogyan kell tanítani játékos beszélni?
10. Érdekes cikkek: ellenőrzi a nap a héten.
10. Következtetés.

Ha olvassa ezt a kézikönyvet, az azt jelenti, szeretne tanulni a programozást. Scripting - egy programozási nyelv, amely futtatni játékokat, mint a GTA III, GTA Vice City, és természetesen a GTA San Andreas. Cleo script - a lefordított fájlt a parancsokat kell végrehajtani játék.
Szóval, hol kezdjem? Kezdjük talán azzal a ténnyel, hogy a forgatókönyvet a programba írt Sanny Builder. Nyissa meg a programot, válassza ki a menü „Fájl / Új”. Kezdjük, hogy úgy mondjam, a semmiből.
Írni egy forgatókönyvet, meg kell tudni, hogy legalább az alapvető fogalmakat. Majd megtanít mindent, amit tudniuk kell Scripter. Miután elolvasta a kézikönyvet, akkor létrehozhatunk saját forgatókönyvet!

Tanulás dolgozni tervez.

Nézzük a program nyitott Sanny Builder, és meg kell kezdeni egy új fájlt. Ha elolvasta az utolsó fejezet, akkor felismerték, hogy a forgatókönyvet kezdődik irányelv.

Mi a következő lépés? És akkor meg kell tanulnunk olyan dolog, mint a „magas szintű tervezés.”
Tervezés segítenek megteremteni a kódot helyesen. Ezek helyett a címkéket, és kényelmesebb dolgozni velük. Vannak úgynevezett része a szerkezet, amit most beszélni.
míg igaz -, amíg a feltétel igaz, a script működni fog. A feltételek később emlékezni csak egy része a szerkezet.
ha - ha a feltétel.
és ha igen, - ha mindkét feltétel.
ha vagy - ha az egyik feltétel.
majd - a feltétel igaz.
más - a feltétel hamis.
end - a kivitelezési munkálatok befejezése.

Mi a feltétele? Ez valami ellenőrzést. Ha az állapot kielégítő, akkor végrehajtunk, akkor a parancs. Abban az esetben, a nem megfelelő feltételek, a szkript elkezdi végrehajtani valami mást, ami be van ágyazva a parancs mást. Itt egy példa.
ha // Ha
Időjárás Solar játék?
Ezután // Aztán
A kamera elindul imbolyog
mást // Egyébként
A kamera megszűnik tántorog
vége // Az építkezés befejezése
Ez az egyszerű típusának kódja napszúrás.

Nem kell használni mást. ha van egy hatása van az egész forgatókönyvet.
ha // Ha
Ha az időjárás napos a játék
Ezután // Aztán
A kamera elindul imbolyog
vége // Az építkezés befejezése

Tanulás a munka, amelyet az ellenőrzések.

Most, hogy megértsék, mi a tervezés és tesztelés tanultak. Készítettem egy listát a feltételek, amelyek segítségével írásakor a forgatókönyvet.

Player.Defined (# 036; PLAYER_CHAR) - játékos ott?
Actor.Driving (# 036; PLAYER_ACTOR) - a játékos hajtja az autót?
0118: színész # 036; PLAYER_ACTOR halott - a játékos halott?
0154: színész # 036; PLAYER_ACTOR in_zone 'EASB' - a játékos egy bizonyos területen? (EASB - zóna neve)
0184: színész # 036; PLAYER_ACTOR egészségügyi> = 100 - a játékosnak 100 vagy több x?
02D8: színész # 036; PLAYER_ACTOR current_weapon == 28 - a játékosnak, hogy fegyvert viselni az ID 38?
00DB: színész # 036; PLAYER_ACTOR in_car 22 @ - játékos az autó @ 22?
00DD: színész # 036; PLAYER_ACTOR driving_car_with_model #AMBULAN - játékos lovaglás egy autó AMBULAN?
02E0: színész # 036; PLAYER_ACTOR firing_weapon - játékos egy lángszóró?
047: színész # 036; PLAYER_ACTOR driving_bike - játékos számára / motorkerékpár?
04A7: színész # 036; PLAYER_ACTOR driving_boat - játékos vezeti a csónak / hajó?
04AD: színész # 036; PLAYER_ACTOR in_water - játékos a vízben?
04C8: színész # 036; PLAYER_ACTOR driving_flying_vehicle - játékos egy repülő közlekedés?
056C: színész # 036; PLAYER_ACTOR driving_police_car - játékos vezet rendőrségi járművek?
0602: színész # 036; PLAYER_ACTOR driving_taxi - a játékos a vezetés egy taxit?
0741: színész # 036; PLAYER_ACTOR lebuktak - játékos jelent meg a kórház közelében a halál után?
0965: színész # 036; PLAYER_ACTOR úszás - a játékos az úszás?
09AE: színész # 036; PLAYER_ACTOR driving_train - a színész a vonat?

Ez csak egy apró ellenőrzések számát a játékos. Van is egy teszt a szokásos szereplők ellenőrzése az autók, és így tovább. Megtekintheti az összes műveleti kódokat, kattintson a menüpont a „Tools / Eszközök / Search utasításból”. A legtöbb műveleti kódokat könnyen érthető szimbólumok, ha tud angolul, akkor könnyen érthető, mik azok felelősségre. Nézzük meg az egyik műveleti kódokat.
04AD: színész # 036; PLAYER_ACTORin_water
04AD - függvénye gta_sa.exe, amely magában foglalja egy adott funkciót.
színész - a tevékenység zajlik a színész.
# 036; PLAYER_ACTOR - Játékos változó. Vannak is változtatható # 036; PLAYER_CHAR, akkor használják olyan esetekben, amikor a műveleti kód / check csak az a játékos. Ebben az esetben ezeket a vizsgálatokat is vonatkozik a szokásos szereplők.
in_water - értelmezése a műveleti kód, amely megmutatja nekünk miért felelős opkódot.

Megtanulják, hogyan kell dolgozni változók.

SZÍNÉSZ // Home // Ha potokaif Player.Defined? (# 036; PLAYER_CHAR) // A játékos ezután // Aztán ott
0376: 18 @ = create_random_actor_at 0,0 0,0 0,0 // Létrehozunk egy véletlenszerűen színész a koordinátákat 0,0 0,0 0,0 és írjon be egy változót 18 @
vége // Az építkezés befejezése
end_thread // vége stream: színész
Most egy scriptet, mint ez: ha a játékos megnyomja a Z gombot, az autó jelenik meg a koordinátákat, amit majd írni a változó @ 0, és ha a kattintás - Mutasd meg neki a szöveget a képernyőn formájában Szövegdobozon.

// indul az autó potokaif // Ha 0AB0: key_pressed 90 // A játékos megnyomja a Z gombot (ID 90), akkor // Ekkor
00A5: 0 @ = create_car #PONY 0,0 0,0 0,0 // Létrehozunk egy modell autó
mást // Egyébként
0ACE: show_formatted_text_box „LOOOSER” // megjeleníteni a szöveget egy szöveges mező
end // End feltételek
end_thread // vége stream: CARS

By the way, majdnem elfelejtettem, ha létrehoz egy autó / színész / tárgy, igen vagy nem minden játék modell, meg kell töltse le a forgatókönyvet, mielőtt elkezdi létrehozni. Most fogunk beszélni róla.

Töltés / check terhelési modellek.

0247: load_model #MODEL - terhelési modellek a játékban. Itt tesszük a szereplők (általában), járművek, tárgyak, fegyverek, stb
023C: load_special_actor „TENPEN”, mint 1 - rengeteg különleges színész egy sejtben 1. Speciális szereplők - színészek, hogy csak használt a küldetések, és egy normális játék nem létezik. Összes 290-299 különlegesek. A tanúsítvány a nevét minden különleges szereplők, ezért ha azt szeretnénk, hogy menjen, és keressen, amire szüksége van!
02E4: load_cutscene_data 'PROLOG1' - betölt egy kivágott jelenet. Nos, régen tisztán küldetések.
0390: load_txd_dictionary 'LD_BEAT' - betölti a játékot .txd fájl textúrák.
038F: load_texture „DOWN”, mint 1 - betölti a letöltött fájlt .txd textúra egy egyedi név egy sejtbe 1. VIGYÁZAT! Mérünk CAM .TXD, majd textúra.
03CF: load_wav 43205 az 1 - letöltés hangot azonosító 43205 a cellában 1.
04ED: load_animation "LOWRIDER" - letölti a csomagot animációk anim.img. FIGYELEM! Élénkség fájl letöltési PED nem, mert vannak betöltve a rendszer indításakor a játék.
06E9: load_car_component #MODEL - betölti a játékot elemet a kocsi.
075D: load_shopping_data_SHOPS_subsection „ruhát” - betölti a játékot ruhaüzlet adatokat.
07C0: load_path 706 - betölti a játékot patch.
08A9: load_external_ssript 66 (CARMOD1) - betölt egy külső script a játék (CSAK SCM).
0AA2: 1 @ = load_library "CLEO # 092; version.dll" - a játék betölti a külső dll könyvtár és rögzíti az összes ezt a változót.
0AAC: 1 @ = load_audiostream "CLEO # 092; lejátszási lista # 092; 1.mp3" - betölti a játék zenei fájlt.
0AC1: 1 @ = load_audiostream_with_3d_support „sample.mp3” - letölti a zenefájlt játszani sztereó hang, és azt írja az egészet egy változó.
Van is egy ellenőrzést a munkát.
023D: special_actor 1 betöltve - színész 1 cella van betöltve?
03D0: wav 1 betöltve - a hang 1 cella van betöltve?
04EE: animáció „LOWRIDER” terhelt - csomag animációk anim.img letöltött fájl?
06B9: cutscene_data_loaded - a kivágott jelenet van betöltve?
Ezen kívül van egy nagyon hasznos opkódot: 038B: load_requested_models
Ha használjuk őket, semmit a terhelés nem kell ellenőrizni, mert arra kényszeríti a mindent a játékban.

Kattintson az alábbi linkre, hogy folytassa az olvasást.