Set Variable: Difference between revisions

From Fancade Wiki
(Add infobox, and demystify filenames)
m (Substitute any instances of ` to <code> tags)
Line 19: Line 19:


Let's say you have a script inside a block that sets a variable to 1, and you have a script outside of the block to inspect that variable.
Let's say you have a script inside a block that sets a variable to 1, and you have a script outside of the block to inspect that variable.
[[File:Set_Variable_global_example.png]]
[[File:Set_Variable_global_example.png]]


Line 27: Line 26:


If we want a variable to share information to another variable in different places, then we would have to globalize them.
If we want a variable to share information to another variable in different places, then we would have to globalize them.
You can simply press the Global button on the keyboard where you type the variable's name. Global variables gain a `$` at the start of their name.
You can simply press the Global button on the keyboard where you type the variable's name. Global variables gain a <code>$</code> at the start of their name.


Note that two variables with the same name with one being a global will not count as the same variables (e.g `Number` and `$Number` are not the same).
Note that two variables with the same name with one being a global will not count as the same variables (e.g <code>Number</code> and <code>$Number</code> are not the same).


[[File:Set_Variable_button_global.png]]
[[File:Set_Variable_button_global.png]]
Line 36: Line 35:


Saved variables were added in Fancade 1.6. Like global variables, you can make a saved variable by pressing the Local/Global/Saved button on the keyboard where you type the variable's name.
Saved variables were added in Fancade 1.6. Like global variables, you can make a saved variable by pressing the Local/Global/Saved button on the keyboard where you type the variable's name.
Saved variables gain a `!` at the start of their name.
Saved variables gain a <code>!</code> at the start of their name.


[[File:Set_Variable_button_saved.png]]
[[File:Set_Variable_button_saved.png]]

Revision as of 13:21, 20 May 2024

Set Variable
TypeScript block
ColliderNone
FolderVariables
Ports
Inputs Before
Value
Outputs After

Stores the input value into a variable. Think of a variable as a container with a nametag that can only store one value at a time. If you were to set another value to a variable, it will overwrite the previous value of that variable.

You can get/output the value from a variable with the same name and type using the Get Variable block.

Global variables

Let's say you have a script inside a block that sets a variable to 1, and you have a script outside of the block to inspect that variable.

As you can see, we've set the variable to 1, but the Get Variable block outputs 0 as if we never set the variable in the first place.

This is because those two variables are local, meaning they can't transfer variable information from one place to another (inside a block to outside the block, or into another block and vice versa).

If we want a variable to share information to another variable in different places, then we would have to globalize them. You can simply press the Global button on the keyboard where you type the variable's name. Global variables gain a $ at the start of their name.

Note that two variables with the same name with one being a global will not count as the same variables (e.g Number and $Number are not the same).

Saved variables

Saved variables were added in Fancade 1.6. Like global variables, you can make a saved variable by pressing the Local/Global/Saved button on the keyboard where you type the variable's name. Saved variables gain a ! at the start of their name.

As the name implies, saved variables persist their value from one game session to the next. This is true whether the user ends the game by winning, dying, or simply pausing and returning to the menu.

Additionally, saved variables are shared across all levels in the same game. This allows a player's actions in one level to affect their gameplay in other levels, and to keep track of purchases from the Menu Item block.

Saved variables currently only have number type and there can be up to 64 saved variables per game.