Variables: Difference between revisions
Added that saved variables used in lists will make them function the same as global lists and fixed some mistakes I added in the prior edition
(More information about saved variables (from the old wiki)) |
(Added that saved variables used in lists will make them function the same as global lists and fixed some mistakes I added in the prior edition) Tags: Mobile edit Mobile web edit |
||
| (2 intermediate revisions by 2 users not shown) | |||
| Line 7: | Line 7: | ||
Variables can have different modes: <b>Normal</b>, <b>Global</b> and <b>Saved</b>. | Variables can have different modes: <b>Normal</b>, <b>Global</b> and <b>Saved</b>. | ||
Any variable can also be a [[List]] | Any variable can also be a [[List]], although saved ones won't work as expected, instead having the same functionality as global [[List]]s. | ||
The mode of the variable can be changed by pressing the button at the bottom left while editing it's name. | The mode of the variable can be changed by pressing the button at the bottom left while editing it's name. | ||
| Line 13: | Line 13: | ||
{{Image|Set_Variable_button_global.png|Keypad shown with mode being changed to Global.}} | {{Image|Set_Variable_button_global.png|Keypad shown with mode being changed to Global.}} | ||
Variables of different types (Number, Vector, Object, etc.) and different modes can have the same name and are considered different variables. For example, <code>Number</code> and <code>$Number</code> are different variables. | Variables of different types (Number, Vector, Object, etc.) and different modes can have the same name and are considered different variables. | ||
For example, <code>Number</code> and <code>$Number</code> are different variables. | |||
== Global variables == | == Global variables == | ||
| Line 39: | Line 40: | ||
{{Image|Set_Variable_button_saved.png|Keypad shown with mode being changed to Saved.}} | {{Image|Set_Variable_button_saved.png|Keypad shown with mode being changed to Saved.}} | ||
Saved variables currently only have number type and there can only be up to 64 saved variables per game. | Saved variables currently only have a number type and there can only be up to 64 saved variables per game. | ||
=== Notes === | === Notes === | ||
| Line 46: | Line 47: | ||
* During box art generation (the game is run for a single frame every time a level is selected), saved variables can both be read from and written to; take note of that if you have any scripts writing to them in the first frame. | * During box art generation (the game is run for a single frame every time a level is selected), saved variables can both be read from and written to; take note of that if you have any scripts writing to them in the first frame. | ||
* Saved variables will not save values such as <code>NaN</code>, <code>Infinity</code> and <code>-Infinity</code>, however, they will be stored until the game ends. | * Saved variables will not save values such as <code>NaN</code>, <code>Infinity</code> and <code>-Infinity</code>, however, they will be stored until the game ends. | ||
* Using a saved variable as a [[List]] will have the same functionality as when using a global variable. This means they will contrary to the expected behavior, not save the [[List]]'s values when losing, wining or leaving the game. | |||
* If there are not enough saved variables or they are cumbersome to use, it is possible to encode multiple values into one variable, such as with [https://play.fancade.com/60A0BAEF67EF6DD9 Float Encoder] by [[The Questers#sounak9434|Sounak9434]]. | * If there are not enough saved variables or they are cumbersome to use, it is possible to encode multiple values into one variable, such as with [https://play.fancade.com/60A0BAEF67EF6DD9 Float Encoder] by [[The Questers#sounak9434|Sounak9434]]. | ||
. | |||
[[Category:Scripting]] | [[Category:Scripting]] | ||