« Előző oldal- - - ^Tartalom^- - - Következő oldal »



HANG ÉS ZENE:

A hangok a játékhoz hangforrások formájában adódnak. A használt név érvényes változónév kell hogy legyen.
A rendszer egy wave állományt egyidőben egyszer játszik le. Ez azt jelenti, hogy ha az előző hang befejeződése előtt újra lejátszásra kerül, akkor az előző hang megáll. Így ha egyidejűleg többször kell használni egy hangot, akkor tárolni is többször kell. Ez a szám a bufferek, vagyis átmeneti tárolók száma. Több bufferral egyidejűleg többször lejátszható egy hang, de ez több memóriát is vesz igénybe, ezért körültekintően kell használni ezt a lehetőséget. (GM 6-tól egyszerre több is szólhat.)
Legtöbbször paraméterként kerül felhasználásra a hang indexe, mely a hang nevét képviseli.
De az index akár egy változóban is tárolható, és az is használható.
A wave (.wav) állományok lejátszására a DirectX-et használja a Game Maker (GM 6 előtt DirectSound-ot). Hanghatásokként (pl. lövés, robbanás) alkalmazhatók.
Háttérzeneként általában midi (.mid) állományok használatosak, és egyidejűleg csak egy szólhat.
Használható még az MP3 állományformátum is, melyet az alapértelmezett médialejátszó játszik le - abban az esetben, ha ismeri ezt. Amennyiben nem és a játék tartalmaz ilyen állományokat, akkor ezek nem lesznek hallhatók (a játék ettől függetlenül még játszható marad). Javasolt tehát az MP3 állományok használatának mellőzése.

sound_play(index) - az index jelölésű hang lejátszása egyszer.
sound_loop(index) - az index jelölésű hang lejátszásának ismétlése folyamatosan.
sound_stop(index) - az index jelölésű hang leállítása. Ha több hang van ugyanezzel az index-szel, akkor mind elhallgat..
sound_stop_all() - minden hang leállítása.
sound_isplaying(index) - szól-e az index jelölésű hang.

sound_volume(index,ertek) - a jelölt hang erősségének beállítása (ertek: 0 (halk) - 1 (hangos)) pl. sound_volume(robbanas,0.9);
sound_pan(index,ertek) - annak beállítása, hogy a jelölt hang a bal vagy jobb hangszóróból érkezzen-e. Értékként megadható a 0 (bal) és az 1 (jobb) a GM 5.3-ig. GM 6-tól viszont a -1 (bal), 0 (közép) és 1 (jobb) értékek használhatók.
sound_frequency(index,ertek) - a jelölt hang frekvenciájának beállítása (ertek: 0 (alacsony) -
1 (magas)).

A következő három függvény a GM 6-os változatától használható:
sound_global_volume(ertek) - a hangerő beállítása minden hanghoz (0=halk, 1=hangos).
sound_fade(index,ertek,ido) - a hangerő (0=halk, 1=hangos) beállítása a jelzett hanghoz az adott idő alatt (ezredmp.-ben). Zene lehalkításához vagy felhangosításához használható.
sound_background_tempo(ertek) - a háttérzene tempójának beállítása (ha midi fájl). Az ertek a szorzótényezőt jelzi, mellyel a tempó szorzódik. Az 1 jelenti a normál tempót, nagyobb érték a gyorsabbat, kisebb pedig a lassabbat. Az értéknek 0.01 és 100 között kell lennie.

A GM 6-tól a használható formátumok közé bekerültek a közvetlen zenefájlok is, melyek kiterjesztése .sgt. Ezek megtalálásához a hangrendszernek tudnia kell a helyüket. A következő, GM 6-tól használható függvénnyel megadható az a mappa, amelyben keresni kell ezeket az állományokat. Arról viszont magunknak kell gondoskodni, hogy benne is legyenek, mert a GM magától nem helyezi el őket oda.
sound_set_search_directory(mappa) - a közvetlen zenefájlokat tartalmazó mappa beállítása. A mappa szövegbe nem kell megadni az utolsó visszaper jelet.

(A következő függvények a GM 6-tól már csak a regisztrált változatban használhatók.)
cd_init() - a sorban következő függvények használata előtt kell meghívni, illetve a zenei CD kicserélésekor a CD-meghajtóban (vagy egyszerűen időről időre).
cd_present() - van-e CD az alapértelmezett CD-meghajtóban.
cd_number() - a CD-n található sávok (tracks) száma.
cd_playing() - lejátszás alatt van-e a CD.
cd_paused() - meg van-e állítva (stop) vagy felfüggesztve (pause) a CD-ről való lejátszás.
cd_track() - az aktuális sáv (1 az első).
cd_length() - a teljes CD hossza ezredmásodpercben.
cd_track_length(n) - az n-edik sáv hossza ezredmásodpercben.
cd_position() - a pillanatnyi helyzet a CD-n ezredmásodpercben.
cd_track_position() - pillanatnyi helyzet a sávban ezredmásodpercben.
cd_play(elso,utolso) - a sávok lejátszása elsotől az utolsoig. Ha a teljes CD-t le akarjuk játszatni, akkor az elso értéke 1, az utolsoé pedig 1000 legyen.
cd_stop() - lejátszás leállítása.
cd_pause() - lejátszás felfüggesztése.
cd_resume() - lejátszás újrakezdése.
cd_set_position(pos) - a pozíció beállítása a CD-n ezredmásodpercben.
cd_set_track_position(pos) - a pozíció beállítása az aktuális sávban ezredmásodpercben.
cd_open_door() - CD-tálca kinyitása.
cd_close_door() - CD-tálca becsukása.

MCI_command(str) - parancsküldés a Windows multimédia rendszerének (Media Control Interface - MCI). Erről a Windows súgójában lehet többet olvasni.
Egy példa: MCI_command('play cdaudio from 1') - egy CD lejátszása.