Omat muuttujat

Uusia muuttujia luodaan antamalla niille arvo (niitä ei tarvitse erikseen esitellä). Jos käytät vain muuttujan nimeä, muuttuja tallennetaan vain nykyiseen objektin instanssiin. Ei siis kannata olettaa, että se on saatavilla toista objektia (tai saman objektien eri instansseja) käsitellessä. Voit myös määrittää ja lukea muiden objektien muuttujia kirjoittamalla objektin nimen ja pisteen ennen muuttujan nimeä.

Globaaleita muuttujia, jotka ovat näkyvissä kaikille instansseille, luodaan asettamalla muuttujan nimen eteen sana global ja piste. Voidaan siis esimerkiksi kirjoittaa:

{
  if (global.doit)
  {
    // do something
    global.doit = false;
  }
}

Muuttujia voi myös esitellä valmiiksi globaaleina. Tällainen esittely näyttää seuraavanlaiselta:

globalvar <muuttujannimi1>,<muuttujannimi2>,<muuttujannimi3>, ... ;

Kun tämä esittely on tehty, muuttuja käsitetään aina globaaliksi, eikä sen eteen tarvitse laittaa sanaa global tai pistettä. Se tarvitsee esitellä vain kerran koodissa. Sen jälkeen muuttuja käsitetään globaaliksi joka paikassa.

Joskus halutaan käyttää muuttujia, jotka ovat olemassa vain sillä hetkellä suoritettavassa koodinpätkässä. Tällä tavoin vältytään tuhlaamasta muistia ja voidaan olla varmoja, että muuttujien nimien kanssa ei tule ristiriitoja. Se on myös nopeampaa kuin globaalien muuttujien käyttäminen. Tällaisissa tilanteissa muuttujat on esiteltävä koodin alussa käyttäen avainsanaa var. Tämä esittely näyttää seuraavanlaiselta:

var <muuttujannimi1>,<muuttujannimi2>,<muuttujannimi3>, ... ;

Voidaan siis kirjoittaa vaikkapa seuraavanlaisesti:

{
  var xx,yy;
  xx = x+10;
  yy = y+10;
  instance_create(xx,yy,ball);
}