« Előző oldal- - - ^Tartalom^- - - Következő oldal »
AZ ERŐFORRÁSOK MEGVÁLTOZTATÁSA:
A felhasznált képek, hangok, hátterek, stb. a játék
erőforrásai. A játék folyamán újak is létrehozhatók, de a
már létezők is megváltoztathatók. Ez utóbbi lehetőséggel
azonban óvatosan kell bánni, ugyanis az erőforrások
megváltoztatása könnyen súlyos hibákat okozhat a játékban!
Mindig tartsuk magunkat a következőkhöz:
- Ne változtassuk meg a már használatban lévő
erőforrásokat.
- Mikor játék közben mentünk, a hozzáadott és
megváltoztatott erőforrások NEM lesznek benne a mentett
játékban. Általában véve, a játékok kimentésére és
betöltésére szolgáló rendszer az erőforrások
megváltoztatása után már nem lesz használható.
- Mikor játék közben újraindítjuk a játékot, a
megváltoztatott erőforrások NEM fognak visszaállni az eredeti
alakjukba. Általában véve, a játék újraindítására
szolgáló függvény az erőforrások megváltoztatása után
már nem lesz használható.
- A változtatás lassú tud lenni. Például a képek vagy
hátterek megváltoztatása viszonylag lassú, ezért ha lehet,
ne alkalmazzuk a játék során.
- A játék folyamán újabb erőforrások létrehozása
(különösen képeké és háttereké) sokszor igen nagy
mennyiségű memóriát igényel. Erre különösen figyeljünk
oda. Például ha van egy 32 alképből álló 128x128-as
méretű animált kép, és erről 36 elforgatott másolatot
akarunk készíteni, akkor 36x32x128x128x4=72 MB-nyi memóriára
lesz szükség!
- Mindig töröljük az erőforrásokat, ha többé már nincs
rájuk szükség, különben a rendszer könnyedén kifogy a
memóriából.
Általában nincs szükség az erőforrások játék közbeni
megváltoztatására. A legjobb, ha a játék, esetleg a pálya
kezdetekor hozzuk létre és változtatjuk meg az
erőforrásokat.
- Képek:
sprite_set_transparent(kep,attetsz) - a kep
áttetszőségének (igaz vagy hamis) beállítása. (GM 7-ben már nincs.)
sprite_set_offset(kep,xoff,yoff) - a kep
eltolásának (offset) beállítása.
sprite_set_bbox_mode(kep,mod) - a kep-et
magába foglaló doboz (bounding box) beállítása
(0=önműködően, 1=teljes kép, 2=egyéni).
sprite_set_bbox(kep,bal,teteje,jobb,alja) - a
képet határoló doboz beállítása. Csak akkor működik, ha a
beállítási mód (lásd: előző függvény) egyéni.
sprite_set_precise(kep,mod) - az adott jelű
kép ütközésellenőrzése pontos legyen-e.
sprite_set_videomem(kep,mod) - az adott jelű
kép használja-e a videomemóriát. (GM 6-ban
már nincs.)
sprite_set_loadonuse(kep,mod) - csak használata
esetén töltődjön-e be a jelzett kép. (GM 6-ban
már nincs.)
sprite_duplicate(kep) - az adott kép
másolatát hozza létre, és az új kép jelével (index) tér
vissza. Hiba esetén -1 a visszaadott érték.
sprite_merge(kep1,kep2) - egyesíti a képeket
úgy, hogy a másodikat az első végéhez adja. Ha a méretek
nem egyeznek, a képeket a megfelelő nagyságúra nyújtja. A
második képet nem törli!
sprite_add(fnev,kepszam,pontos,attetesz,vmem,hasznbet,xer,yer)
- az fnev állományban tárolt kép
hozzáadása
a kép erőforrás megváltoztatásához. Csak bmp, jpg
és gif képek használhatók. Bmp és jpg
esetében egy csík tartalmazza az alképeket. A kepszam-mal
jelezhető a számuk (1, ha egyedüli kép). Az (animált) gif
esetében ez a paraméter nem használt; a gif
állományban levő alképek száma kerül alkalmazásra. A pontos-sal
az ütközések pontos ellenőrzése jelezhető. Az attetsz
jelzi, hogy részben átlátszó-e a kép, a vmem,
hogy a kép a videomemóriában tárolódjon-e, és a hasznbet,
hogy csak a használata esetén töltődjön-e be. Az xer
és yer a kiindulópontot (origin) jelzik a
képben. A függvény az új kép indexével tér vissza, így
használható a rajzolásnál, vagy egy tárgy sprite_index
változójához való hozzárendeléshez. Hiba esetén a -1
értéket adja.
A GM 6-ban a függvény alakja:
sprite_add(fnev,kepszam,pontos,attetesz,sima,betelore,xer,yer)
ahol sima jelzi, hogy a széleinek
lesimítottnak kell-e lenni, betelore pedig hogy
előre be kell-e tölteni a textúramemóriába.
sprite_replace(jel,fnev,kepszam,pontos,attetsz,vmem,hasznbet,xer,yer)
- hasonló az előzőhöz, de ezesetben a jel
indexű kép áthelyeződik. GM 6-ban a vmem
és hasznbet helyett itt is sima
és betelore paraméterek vannak.
sprite_create_from_screen(bal,teteje,jobb,alja,pontos,attetsz,vmem,hasznbet,xer,yer)
- egy kép létrehozása az adott képernyőterület
kimásolásával. Akármennyi kép létrehozására
használható. Az alak megrajzolása a képernyőre a rajzoló
függvényekkel történik, majd ezután következik ebből a
kép létrehozása (ha mindez nem a rajzolás eseményben
történik, akkor nem lesz látható a képernyőn). A függvény
az új kép indexével tér vissza.
A GM 6-ban a vmem
és hasznbet helyett itt is sima
és betelore paraméterek vannak.
sprite_create_from_surface(id,x,y,sz,m,pontos,attetsz,sima,betelore,xorig,yorig)
- egy sprite létrehozása az adott id-jű felület adott
területének kimásolása által. Ezzel tetszőleges számú
sprite hozható létre. A kép rajzolása a felületen a rajzoló
függvények használatával történik, és ezután létrejön
egy sprite belőle. A függvény visszaadja az új sprite
id-jét. Az alfa értékek megmaradnak a sprite-ban. GM
6.1-től.
sprite_add_from_surface(ind,id,x,y,sz,m) - az id
felület egy területének hozzáadása az ind
indexű sprite-hoz, mint következő alkép. GM 6.1-től.
sprite_add_from_screen(jel,bal,teteje,jobb,alja)
- a képernyőterület egy részét adja a jel
indexű kép következő alképeként.
sprite_delete(kep) - az adott képet törli a
memóriából, és szabaddá teszi azt a memóriarészt. A
törölt kép már nem állítható vissza.
sprite_set_alpha_from_sprite(ind,kep) - az alfa
(áttetszőségi) érték megváltoztatása az ind
jelű képben, a kep kép értékét használva.
Nem lehet visszacsinálni. (GM 6-tól)
sprite_assign(jel,kep) - a kep
hozzárendelése a jel jelű képhez. Így ez a
kép egy másolatát hozza létre. Ezzel könnyedén
hozzárendelhető egy létező kép egy másikhoz, pl. új
képként. Ez a függvény a GM 5.3-as
változatától használható. (GM 6-ban
már nincs)
A következő függvények bizonyos fokig a képszerkesztőben
(sprite editor) található parancsok megfelelői. Ezek a
függvények nem túl gyorsak, de gyorsabbá tehetők, ha nincs
alkalmazva a pontos ütközésérzékelés, a "csak
használatkori betöltés" (load on use) igazra van
állítva, és a képet magába foglaló doboz beállítási
módja egyéni. Ha egy megváltoztatott kép készen van, ezek a
tulajdonságok újra beállíthatók a kívánt értékre. (Ezek
a függvények GM 6-ban már
nincsenek.)
sprite_mirror(kep) - a kép alképe(i)nek
vízszintes tükrözése.
sprite_flip(kep) - az alkép(ek) függőleges
tükrözése.
sprite_shift(kep,x,y) - az alkép(ek) eltolása
az adott vektorral.
sprite_rotate180(kep) - az alkép(ek)
elforgatása 180 fokkal.
sprite_rotate90(kep,orairany,atm) - az
alkép(ek) elforgatása 90 fokkal. Orairany
jelzi, hogy a forgatás az óramutató járásával megegyező-e.
Az atm jelzi, hogy a képet át kell-e
méretezni (szélesség és magasság megcserélve).
sprite_rotate(kep,szog,minoseg) - az alkép(ek)
elforgatása szog fokkal, minoseg
minőséggel (1-9 lehet).
sprite_resize(kep,sz,m,sarok) - az alkép(ek)
átméretezése sz és m
képpontnyival. A kép nem skálázott. A sarok
jelzi a helyet az eredeti kép számára (1-9, mint a numerikus
billentyűzeten (a billentyűzet jobb szélén levő
billentyűcsoport)).
sprite_stretch(kep,sz,m,minoseg) - az alkép(ek)
megnyújtása sz és m
képpontnyival. A minoseg jelzi a minőséget
(1-9).
sprite_scale(kep,xscale,yscale,minoseg,sarok,atm)
- az alkép(ek) méretezése xscale és yscale
arányokkal. Minoseg jelzi a minőséget (1-9). Atm
jelzi, hogy a képet át kell-e méretezni. A sarok
jelzi a helyet az eredeti kép számára (1-9, mint a numerikus
billentyűzeten), ha nincs átméretezve.
sprite_black_white(kep) - az alkép(ek)
fekete-fehérré alakítása
sprite_set_hue(kep,sz) - az alkép(ek)
színárnyalatának (0-255) beállítása
sprite_change_value(kep,ertek) - az alkép(ek)
értékének (0-255) megváltoztatása
sprite_change_saturation(kep,szt) - az
alkép(ek) színtelítettségének beállítása (0-255)
sprite_fade(kep,szin,ertek) - az alkép(ek)
elhalványítása szin szín irányában ertek
értékkel (0-255)
sprite_screendoor(kep,ertek) - az alkép(ek)
áttetszőségének beállítása ertek
értékre (0-255)
sprite_blur(kep,ertek) - az alkép(ek)
színeinek elmaszatolása ertek értékkel
(0-9).
A következő két függvény a GM 5.2-es
változatától használható:
sprite_set_hue_partial(kep,ettol,eddig,ujarny) -
a kép összes képpontja színárnyalatának lecserélése az
új árnyalatra, a megadott értékek között.
sprite_shift_hue(kep,mennyiseg) - a
színárnyalat eltolása a képben adott mennyiséggel.
- Hangok:
sound_add(fnev,bufferek,effektusok,hasznbet) -
egy hangforrás hozzáadása a játékhoz. Fnev
a hangállomány neve, bufferek a bufferek
(átmeneti tárak) száma, effektusok jelzik a
hangeffektusok engedélyezett voltát, hasznbet
pedig hogy a hang csak a használatakor töltődjön-e be. A
függvény az új hang indexével tér vissza, mely a hang
lejátszására használható (-1, ha hiba történt, pl. nem
található az állomány).
Pl. sound_play(sound_add("hang.wav",1,false,true))
Az állományhoz elérési út is megadható, ha nem ugyanabban a
mappában van, mint amelyben a játék.
sound_replace(index,fnev,bufferek,effektusok,hasznbet)
- ugyanaz, mint az előző függvény, de nem egy új hangot
hoz létre, hanem a meglévő, index jelű
hangot cseréli fel.
sound_delete(index) - az index
jelű hang törlése, és a hozzá társított memória
felszabadítása. A törölt hang már nem állítható vissza.
- Hátterek:
(A következő három függvény a GM 6-ban
már nincs)
background_set_transparent(ht,attetsz) - az
adott háttér áttetszőségének beállítása (1 v. 0).
background_set_videomem(ht,mod) - használja-e a
videomemóriát az adott háttér (1 v. 0).
background_set_loadonuse(ht,mod) - az adott
háttér csak használata esetén töltődjön-e be.
background_duplicate(ht) - az adott háttér
másolatát hozza létre, és az új háttér indexével tér
vissza. Hiba esetén -1 a visszaadott érték.
background_add(fnev,attetsz,videomem,hasznbet) -
az fnev állományban tárolt kép hozzáadása
a háttér megváltoztatásához. Csak bmp és jpg
képek használhatók. Attetsz jelzi, hogy
részben áttetsző-e a kép, a videomem, hogy a
hátteret a videomemóriában kell-e tárolni, és a hasznbet,
hogy csak használata esetén töltődjön-e be. A függvény az
új háttér indexével tér vissza, ami használható a
kirajzolására, vagy a background_index[0] változóhoz
való hozzárendeléshez, hogy látható legyen az időszerű
pályán. Hiba esetén a -1 értéket adja.
A függvény két utolsó paramétere a GM 6-tól
a kép széleinek lesimítottságát (a videomem
paraméter helyén) és a képnek a textúramemóriába való
előre betöltését (a hasznbet paraméter
helyén) jelzi.
background_replace(jel,fnen,attetsz,videomem,hasznbet)
- ugyanaz, mint az előző, de ezesetben a jel
indexű
háttér áthelyeződik, akkor is, ha pont az van az adott
pályán.
A függvény két utolsó paramétere GM 6-tól
ugyanúgy megváltozott, mint az előzőé.
background_create_from_screen(bal,teteje,jobb,alja,attetsz,videomem,hasznbet)
- egy háttér létrehozása az adott képernyőterület
kimásolásával. A sprite_create_from_screen-nél
leírtak erre is vonatkoznak.
background_create_from_surface(id,x,y,sz,m,attetsz,sima,betelore)
- egy háttér létrehozása az adott id-jű felület adott
területének kimásolása által. Ezzel tetszőleges számú
háttér hozható létre. A kép rajzolása a felületen a
rajzoló függvények használatával történik, és ezután
létrejön egy háttér belőle. A függvény visszaadja az új
háttér id-jét. Az alfa értékek megmaradnak a háttérben. GM
6.1-től.
background_delete(ht) - az adott háttér
törlése, és a hozzá tartozó memória felszabadítása. A
törölt háttér már nem állítható vissza.
background_assign(jel,ht) - a ht
háttér hozzárendelése a jelzetthez. Így ez a háttér egy
másolatát hozza létre. Ez a függvény a GM 5.3-as
változatától használható.
A következő három függvény a GM 6-os
változatától használható:
background_create_color(sz,m,szin,elbet) -
háttér létrehozása adott szélességgel, magassággal és
színnel. Az elbet igaz volta esetén előre
betöltődik a textúramemóriába. A függvény az új háttér
indexével tér vissza, vagy hiba esetén a -1-gyel.
background_create_gradient(sz,m,szin1,szin2,jelleg,elbet)
- adott méretű, lejtősen kitöltött háttér létrehozása. A
szin1 és szin2 jelöli a két
színt, a jelleg pedig egy 0 és 5 közötti
szám, amely a lejtést határozza meg: 0=vízszintes,
1=függőleges, 2=téglalap, 3=ellipszis, 4=kettős vízszintes,
5=kettős függőleges. A függvény az új háttér indexével
tér vissza, vagy hiba esetén a -1 értékkel.
background_set_alpha_from_background(ind,hatter)
- az alfa (áttetszőségi) érték megváltoztatása az ind
jelű háttérben, a hatter háttér értékét
használva. Nem lehet visszacsinálni.
(A következő függvények a GM 6-ban
már nincsenek)
background_mirror(ht) - vízszintesen tükrözi
a háttérben levő képet.
background_flip(ht) - függőlegesen tükrözi a
háttérben levő képet.
background_shift(ht,x,y) - az adott vektorral
eltolja a háttérben levő képet.
background_rotate180(ht) - 180 fokkal elforgatja
a háttérben levő képet.
background_rotate90(ht,orairany,atm) - a
háttér elforgatása 90 fokkal. Orairany jelzi,
hogy a forgatás az óramutató járásával megegyező-e. Az atm
jelzi, hogy a képet át kell-e méretezni (szélesség és
magasság megcserélve).
background_rotate(kep,szog,minoseg) - a háttér
elforgatása szog fokkal, minoseg
minőséggel (1-9 lehet).
background_resize(ht,sz,m,sarok) - a háttér
átméretezése sz és m
képpontnyival. A kép nem skálázott. A sarok
jelzi a helyet az eredeti kép számára (1-9, mint a numerikus
billentyűzeten (a billentyűzet jobb szélén levő
billentyűcsoport)).
background_stretch(ht,sz,m,minoseg) - a háttér
megnyújtása sz és m
képpontnyival. A minoseg jelzi a minőséget
(1-9).
background_scale(ht,xscale,yscale,minoseg,sarok,atm)
- a háttér méretezése xscale és yscale
arányokkal. Minoseg jelzi a minőséget (1-9). Atm
jelzi, hogy a képet át kell-e méretezni. A sarok
jelzi a helyet az eredeti kép számára (1-9, mint a numerikus
billentyűzeten), ha nincs átméretezve.
background_black_white(ht) - a háttér
fekete-fehérré alakítása.
background_set_hue(ht,sz) - a háttér
színárnyalatának (0-255) beállítása.
background_change_value(ht,ertek) - a háttér
értékének (0-255) megváltoztatása.
background_change_saturation(ht,szt) - a
háttér színtelítettségének beállítása (0-255).
background_fade(ht,szin,ertek) - a háttér
elhalványítása szin szín irányában ertek értékkel
(0-255).
background_screendoor(ht,ertek) - a háttér
áttetszőségének beállítása ertek értékre (0-255).
background_blur(ht,ertek) - a háttér
színeinek elmaszatolása ertek értékkel (0-9).
A következő négy függvény a GM 5.2-es
változatától használható:
background_create_color(sz,m,szin,attetszo,videomem,loadonuse)
- egy háttér létrehozása adott mérettel, színnel és
értékekkel. A függvény az új háttér indexével tér
vissza, hiba esetén pedig a –1 értékkel.
background_create_gradient(sz,m,szin1,szin2,jelleg,attetszo,videomem,loadonuse)
- a két színnel kitöltött háttér létrehozása. A jelleg
értéke 0 és 5 között lehet, mely a kitöltés milyenségét
jelzi: 0=vízszintes, 1=függőleges, 2=téglalapszerűen,
3=ellipszis, 4=kettős vízszintes, 5=kettős függőleges. A
függvény az új háttér indexével tér vissza, hiba esetén
pedig a –1 értékkel.
background_set_hue_partial(ht,ettol,eddig,ujarny)
- a háttér összes képpontja színárnyalatának lecserélése
az új árnyalatra, a megadott értékek között.
background_shift_hue(ht,mennyiseg) - a
színárnyalat eltolása a képben adott mennyiséggel.
- Nyomvonalak:
Lehet újakat létrehozni, és a már meglévőkhöz újabb
pontokat adni, de sose változtassunk egy olyan nyomvonalon,
amely már használatban van, mert nem várt következményei
lehetnek.
path_set_kind(nyv,ertek) - az adott nyomvonal
csatlakozási jellegének beállítása (0=egyenes vonalú,
1=egyenletes)
path_set_end(nyv,ertek) - mi történjen az
adott nyomvonal végén (0=megállás, 1=ugrás a kezdőpontra,
2=csatlakozás a kezdőponthoz, 3=visszafordulás, 4=folytatás)
(GM 6-ban már nincs)
path_add() - egy új, üres nyomvonal adása. A
függvény ennek jelét adja vissza.
path_delete(nyv) - az adott jelű nyomvonal
törlése.
path_add_point(nyv,x,y,seb) - egy új pont
adása a nyomvonalhoz x,y
helyre, seb sebességértékkel.
path_clear_points(nyv) - az összes pontot
törli az adott nyomvonalban, és üres nyomvonallá változtatja
azt.
A következő 13 függvény a GM 5.3-as
változatától használható:
path_set_closed(nyv,zart) - nyitott (true)
vagy zárt (false) legyen-e a nyomvonal.
path_set_precision(nyv,pontossag) - a pontosság
beállítása (1-8 között), mellyel az egyenletes nyomvonal
számítódik.
path_duplicate(nyv) - az adott indexű nyomvonal
egy másolatának létrehozása. A másolat indexével tér
vissza..
path_assign(nyv,utv) - a jelzett útvonal
hozzárendelése nyv nyomvonalhoz. Így ez a
nyomvonal egy másolatát hozza létre. Ezzel könnyedén be
lehet állítani egy létező nyomvonalat egy eltérőhöz, pl.
új útvonalként.
path_insert_point(nyv,n,x,y,seb) - egy pont
beszúrása a nyomvonal n pontja elé, (x,y)
helyen, az adott sebességtényezővel.
path_change_point(nyv,n,x,y,seb) - az n
pont megváltoztatása a nyomvonalban (x,y)
helyre, az adott sebességtényezővel.
path_delete_point(nyv,n) - az n
pont törlése az adott indexű nyomvonalban.
path_reverse(nyv) - a nyomvonal megfordítása.
path_mirror(nyv) - a nyomvonal vízszintes
tükrözése (figyelembevéve a középpontját).
path_flip(nyv) - a nyomvonal függőleges
tükrözése (figyelembevéve a középpontját).
path_rotate(ind,szog) - a nyomvonal elforgatása
az óramutató járásával ellentétesen szog
fokkal (a középpontja körül).
path_scale(nyv,xscale,yscale) - a nyomvonal
méretezése az adott arányokkal (a középpontjától fogva).
path_shift(ind,xshift,yshift) - a nyomvonal
eltolása az adott mennyiséggel.
- Szkriptek:
Mint azt már tudjuk, az "Add a script"
menüpont használatával magunk is készíthetünk
függvényeket. Ezek nem változtathatók meg a játék futása
alatt; részei a játék logikájának. Megváltoztatásuk a kód
ön-újraírásához vezethetne, ami könnyen hibákat okozhat.
Ha tényleg szükséges egy ismeretlen szerkesztési idejű
kóddarab végrehajtása (pl. állományból), akkor a
következő függvények használhatók:
execute_string(sz) - az sz
szövegben levő kóddarab végrehajtása.
execute_file(fnev) - a fnev
állományban levő kóddarab végrehajtása.
Néha szükséges egy saját függvény indexének egy
változóban tárolása és végrehajtása. A következő
függvény erre használható:
script_execute(scr,arg0,arg1,...) - az scr
függvény végrehajtása az adott paraméterekkel.
- Idővonalak:
timeline_add() - egy új idővonal megadása. A
függvény ennek jelével tér vissza.
timeline_delete(ind) - az adott jelű idővonal
törlése. Bizonyosodjunk meg arról, hogy egyik pályán sem
használja semmi.
timeline_moment_add(ind,lepes,kod) - egy kód
cselekvés hozzáadása a jelzett idővonal lepes pillanatához.
Ha az adott lépés nem létezik, akkor létrejön. Összetett
kód cselekvések is adhatók ugyanahhoz a lépéshez.
timeline_moment_clear(ind,lepes) - minden
cselekvés törlése az adott idővonal adott lépéséből.
- Tárgyak:
A tárgyak is megváltoztathatók és létrehozhatók a játék
futása közben. SOHA NE változtassunk meg, vagy töröljünk
olyan tárgyat, melynek léteznek példányai (instances), mert
váratlan következményei lehetnek. Mivel bizonyos tárgy
tulajdonságok a példányokkal tárolódnak, azoknak az adott
tárgyban való megváltoztatása nem a kívánt eredményt
hozhatja.
object_set_sprite(ind,kep) - az ind
jelű tárgyhoz tartozó kép beállítása. -1 a tárgyat
jelenleg megjelenítő kép eltávolítása.
object_set_solid(ind,szilard) - a jelzett
tárgynak létrehozott példányok alapesetben szilárdak-e (igaz
vagy hamis).
object_set_visible(ind,lathato) - a jelzett
tárgynak létrehozott példányok alapesetben láthatók-e (igaz
vagy hamis).
object_set_depth(ind,melyseg) - a jelzett
tárgynak létrehozott példányok alapértelmezett mélysége.
object_set_persistent(ind,ism) - a jelzett
tárgynak létrehozott példányok alapesetben ismétlődőek-e
(igaz vagy hamis).
object_set_mask(ind,kep) - képmaszk
beállítása az adott objektumhoz. -1, ha a maszk legyen a
tárgy képe.
object_set_parent(ind,targy) - a tárgy
szülőjének beállítása. -1, ha nincs neki. A szülő
megváltoztatása a tárgy példányainak viselkedését is
megváltoztatja.
object_add() - egy új tárgy adása. A
függvény ennek jelével tér vissza, ami a fentebbi rutinokban
használható a tárgy bizonyos tulajdonságainak
beállítására, valamint a tárgy példányainak
létrehozására.
object_delete(ind) - az adott jelű tárgy
törlése. Legyünk bizonyosak abban, hogy egyik pályán sem
léteznek példányai.
object_event_add(ind,estip,essz,kodsz) - ahhoz,
hogy viselkedést adjunk a tárgynak, eseményeket kell
meghatároznunk hozzá, de ezek csakis kódok lehetnek. Pontosan
meg kell határozni a tárgyat, az esemény típusát, az
esemény számát, végül a végrehajtandó kódszöveget kell
megadni. Összetett kódcselekvések is adhatók minden
eseményhez.
object_event_clear(ind,estip,essz) - a
pillanatnyi eseményhez tartozó összes cselekvés (actions)
törlése.
- Pályák:
room_set_width(ind,sz) - a jelzett pálya
szélességének beállítása.
room_set_height(ind,m) - a jelzett pálya
magasságának beállítása.
room_set_caption(ind,szoveg) - a jelzett pálya
címsorában kiírt szöveg beállítása.
room_set_persistent(ind,ertek) - ismétlődő-e
a jelzett pálya, vagy sem.
room_set_code(ind,szoveg) - a pályához
tartozó GML kód beállítása.
room_set_background_color(ind,szin,mutat) - a
jelzett pályához tartozó szín beállítása, ha nincs
háttérkép. A szin jelzi a színt, mutat
pedig hogy mutassa-e, vagy sem.
room_set_background(ind,hjel,lath,elot,htk,x,y,vcsemp,fcsemp,vseb,fseb,alfa)
- a jelzett pályához tartozó háttér (hjel:
0-7) beállítása. Lath jelzi, hogy
látható-e, elot pedig, hogy éppen
előtérként legyen-e alkalmazva. Htk a
háttérkép jele, x és y a
kép helyzete. Vcsemp és fcsemp
azt jelzik, hogy vízszintesen vagy függőlegesen csempeszerűen
van-e kirakva. Vseb és fseb a
háttér mozgásának sebességei. Alfa az
áttetszőség értéke (1=szilárd).
room_set_view(ind,njel,lath,bal,teteje,sz,m,x,y,vkeret,fkeret,vseb,fseb,obj)
- az ind jelű pályához tartozó nézőpont (njel:
0-7) beállítása. Lath jelzi, hogy a
nézőpont látható-e. Bal, teteje,
sz, m a nézőpont helyzete a
pályán, x,y pedig a
képernyőn. Ha a nézőpontnak követnie kell egy tárgyat,
akkor a vkeret és fkeret
paraméterekkel adható meg a tárgy körül látható minimális
terület nagysága. Vseb és fseb
a legnagyobb sebesség, mellyel a nézőpont mozoghat. Obj
a tárgy jele.
room_set_view_enabled(ind,ertek) - a jelzett
pályához engedélyezve legyenek-e a nézőpontok, vagy sem.
room_add() - egy új pálya hozzáadása a
játékhoz. A függvény a pálya indexével tér vissza. Az így
létrehozott pálya nem lesz része a pályák sorrendjének,
így az ugrás a következő/előző pályára utasítások sem
veszik figyelembe. Az ide való jutás az indexe megadásával
érhető el.
room_duplicate(ind) - a jelzett pálya
másolatának létrehozása. A függvény ennek indexével tér
vissza.
room_instance_add(ind,x,y,obj) - az obj
tárgy egy példányát hozza létre a jelzett pálya x,y
helyén. A függvény ennek indexével tér vissza.
room_instance_clear(ind) - minden tárgy
eltávolítása a jelzett pályáról.
room_tile_add(ind,ht,bal,teteje,sz,m,x,y,melyseg)
- egy új csempe hozzáadása a pályához. A függvény a csempe
indexét adja. Ht a háttér, melyből a csempe
származik, bal,teteje,sz,m
a háttér azon része, mely a csempét adja. X,y
a csempe helye a pályán, melyseg pedig a
mélysége.
room_tile_add_ext(ind,ht,bal,teteje,sz,m,x,y,melyseg,xscale,yscale,alfa)
- ugyanaz, mint az előző, de ennél megadható a méretezési
arány x és y irányba, valamint az alfa áttetszőség is.
room_tile_clear(ind) - minden csempe
eltávolítása a jelzett pályáról.
- Betűkészletek:
(GM 6-tól)
font_add(nev,meret,fk,dolt,elso,utolso) - egy
új betűkészlet hozzáadása és visszatérés az indexével.
Meg kell adni a nevét, méretét, hogy félkövér-e vagy dőlt,
illetve az első és utolsó írásjelét, melyeknek létezniük
kell.
font_add_sprite(kep,elso,ar,tav) - egy új
betűkészlet hozzáadása, mely egy sprite-ból jön létre, és
visszatérés az indexével. A sprite-nak minden írásjel
alképét tartalmaznia kell. Az elso az első
írásjel indexe a képben. Például használható az ord('0'),
ha a kép csak számjegyeket tartalmaz. Ar
jelzi, hogy a betűkészlet arányos-e, vagyis minden írásjel
szélessége megegyezik a foglalat (bounding box)
szélességével. Végül tav jelzi, hogy az
írásjelek között vízszintesen mekkora a távolság. Egy
jellemző érték 2 és 8 között van, a betűkészlet
méretétől függően.
font_replace(ind,nev,meret,fk,dolt,elso,utolso)
- az ind jelű betűkészlet lecserélése az
újra, melynek meg kell adni a nevét, méretét, hogy
félkövér-e vagy dőlt, illetve a már létező első és
utolsó írásjelét.
font_replace_sprite(ind,kep,elso,ar,tav) - az ind
jelű betűkészlet lecserélése egy új, kép-alapú
betűkészlettel.
font_delete(ind) - az ind jelű
betűkészlet törlése és az általa használt memória
felszabadítása.
« Előző oldal- - - ^Tartalom^- - - Következő oldal »