4
\$\begingroup\$

I've been making my way through several tutorials on GameMaker: Studio at this point, and I've been trying to keep track of various aspects of the code used in them. One thing, however, confused me.

I have noticed that it's possible to define new variables in GM:S either with or without using the var keyword. I'm aware that you can use the var keyword to define multiple variables in one line, for example var xx, yy; (and, of course, defining null variables), but other than that, is there a particular reason why some variables don't need to use var? Is it all to do with functionality, or what? When, in that case, should I use var other than the example provided?

\$\endgroup\$
6
\$\begingroup\$

Variables declared with the var keyword are local variables, whereas variables declared without var are instance variables. More information on scope: https://yoyogames.com/tech_blog/41

\$\endgroup\$
1
\$\begingroup\$

If you say var test = 0, it is a local variable, and will be deleted at the end of the event.

If you say test = 0, it will be stored in that object until the game ends, or the object is deleted.

If you say globalvar test = 0, it will be stored until the game ends, and will not be deleted with the object. It can also be accessed in another object without typing otherObject.test.

\$\endgroup\$
  • \$\begingroup\$ Please do not use offensive language in your answer. \$\endgroup\$ – Gnemlock Oct 2 '16 at 3:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.