Kuvat ja alikuvat

Jokaisella objektilla on siihen liitetty kuva. Tämä on joko yksittäinen kuva tai se voi muodostua useammasta alikuvasta. Jokaista objektin instanssia kohden ohjelma piirtää vastaavan kuvan ruudulle niin, että kuvan origo (kuten kuvan ominaisuuksissa on määritelty) on instanssin pisteessä (x,y). Kun kuvassa on useampia alikuvia, niitä kierrätetään saaden aikaan animaatio. On olemassa useita muuttujia, jotka vaikuttavat siihen, kuinka kuva piirretään. Näitä voidaan käyttää kuvan ulkoasun muuttamiseen. Jokaisella instanssilla on seuraavat muuttujat:

visible Jos visible on tosi (1), kuva piirretään, muuten sitä ei piirretä. Näkymättömät instanssit ovat silti aktiivisia ja aiheuttavat törmäystapahtumia (Collision); et vain näe niitä. Näkyvyyden asettaminen epätodeksi on käytännöllistä esim. hallintaobjektien (aseta ne ei-kiinteiksi, välttääksesi törmäykset) tai piilotettujen kytkinten tapauksessa.
sprite_index Tämä on instanssin sillä hetkellä käytössä olevan kuvan indeksi. Voit vaihtaa sitä asettaaksesi instanssille eri kuvan. Arvona voit käyttää luomiesi kuvien nimiä. Kuvan vaihtaminen ei vaihda sillä hetkellä näkyvän alikuvan indeksiä.
sprite_width* Ilmoittaa kuvan leveyden. Tätä arvoa ei voi muuttaa, mutta voit haluta käyttää sitä.
sprite_height* Ilmoittaa kuvan korkeuden. Tätä arvoa ei voi muuttaa, mutta voit haluta käyttää sitä.
sprite_xoffset* Ilmoittaa kuvan vaakasuuntaisen siirtymän, kuten kuvan ominaisuuksissa on määritelty. Tätä arvoa ei voi muuttaa, mutta voit haluta käyttää sitä.
sprite_yoffset* Ilmoittaa kuvan pystysuuntaisen siirtymän, kuten kuvan ominaisuuksissa on määritelty. Tätä arvoa ei voi muuttaa, mutta voit haluta käyttää sitä.
image_number* Instanssille asetetun kuvan alikuvien määrä (ei ole muutettavissa).
image_index Kun kuvalla on useampia alikuvia, ohjelma kierrättää niitä peräjälkeen. Tämä muuttuja ilmoittaa sillä hetkellä piirretyn alikuvan numeron (ensimmäisen alikuvan numero on 0). Voit vaihtaa näkyvää alikuvaa vaihtamalla tämän muuttujan arvoa. Ohjelma jatkaa alikuvien kierrättämistä aloittaen annetusta indeksistä. (Arvo voi olla myös desimaaliluku. Tässä tapauksessa annettu luku pyöristetään alaspäin.)
image_speed Nopeus, jolla alikuvia kierrätetään. Jos asetat arvoksi 1, se tarkoittaa, että jokaisella askeleella siirrytään seuraavaan alikuvaan. Pienemmät arvot vaihtavat alikuvia hitaammin, piirtäen jokaisen alikuvan useamman kerran askeleen aikana. Suuremmat arvot jättävät alikuvia väliin tehdäkseen animaatiosta nopeamman. Joissain tapauksissa haluat tietyn alikuvan näkyvän koko ajan, etkä halua ohjelman kierrättävän kaikkia läpi. Tämä saadaan aikaan asettamalla nopeudeksi 0 ja valitsemalla oikea alikuva. Oletetaan esimerkiksi, että sinulla on objekti, joka voi kääntyä ja teet kuvan, jossa on alikuvat tietylle määrälle suuntia (vastapäivään). Tällöin voit asettaa objektin askeltapahtumaan (Step) seuraavan koodinpätkän:
{
  image_index = direction * image_number/360;
  image_speed = 0;
}
depth Tavallisesti kuvat piirretään siinä järjestyksesä, missä instanssit luodaan. Voit muuttaa tätä asettamalla kuvan syvyyden (depth). Oletusarvo on 0, ellet aseta jotain muuta arvoa objektin ominaisuuksissa. Mitä suurempi arvo, sitä kauempana instanssi on. (Voit myös käyttää negatiivisia arvoja.) Instanssit, joilla on suurempi syvyys ovat instanssien, joilla on pienempi syvyys, takana. Syvyyden asettaminen takaa sen, että instanssit piirretään haluamassasi järjestyksessä (esim. lentokone pilven edessä). Taustalla sijaitsevilla instansseilla tulisi olla suuri (positiivinen) syvyys ja etualan instansseilla taas pieni (negatiivinen) syvyys.
image_xscale Skaalauskerroin kuvien venyttämiseen pienemmäksi tai suuremmaksi. Arvolla 1 kuva näkyy normaalikokoisena. Sinun täytyy erikseen asettaa vaakasuuntainen xscale ja pystysuuntainen yscale. Skaalauksen muuttaminen muuttaa myös kuvan leveyden ja korkeuden arvoja ja vaikuttaa instanssin törmaystapahtumiin, kuten varmaankin oletitkin. Skaalauksen muuttamista voidaan käyttää 3D-vaikutelman aikaansaamiseksi. Voit käyttää arvoa -1 luodaksesi kuvasta vaakasuuntaisen peilikuvan.
image_yscale Pystysuuntainen yscale. 1 tarkoittaa, että kuvaa ei skaalata pystysuunnassa. Voit käyttää arvoa -1 luodaksesi peilikuvan pystysuunnassa.
image_angle Kulma, jolla kuvaa käännetään. Tämä määritetään asteissa vastapäivään. Jos asetat arvoksi 0, kuvaa ei käännetä lainkaan. Tämän muuttujan arvoa voi muuttaa vain Pro-versiossa!
image_alpha Kuvaa piirrettäessä käytettävä läpinäkyvyysarvo (alpha). Arvolla 1 kuva on täysin läpinäkymätön; arvolla 0 kuva on kokonaan läpinäkyvä.
image_blend Väri, jota sekoitetaan kuvaan. Oletusarvo on c_white. Jos määrität jonkun muun arvon, kuvaan sekoitetaan tätä väriä. Tätä muuttujaa voidaan käyttää kuvan värittämiseen lennossa. Tämän muuttujan arvoa voi muuttaa vain Pro-versiossa!
bbox_left* Huoneessa sijaitsevan instanssin kuvaan määritellyn raja-alueen (bounding box) vasen reuna (kuvan skaalaus otetaan huomioon).
bbox_right* Huoneessa sijaitsevan instanssin raja-alueen oikea reuna.
bbox_top* Huoneessa sijaitsevan instanssin raja-alueen yläreuna.
bbox_bottom* Huoneessa sijaitsevan instanssin raja-alueen alareuna.