Game logic - Entity storage – Ylands
Jump to navigation
Jump to search
No edit summary |
Lou Montana (talk | contribs) m (Text replacement - "{{DEFAULTSORT:{{#sub:{{PAGENAME}}|19}}}}" to "{{DEFAULTSORT:{{#sub:{{PAGENAME}}|13}}}}") |
||
(7 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
=Description= | =Description= | ||
Special game logic to store data specific to one entity (e.g player). When assigned trough instruction [[Ylands Tile - Add-Remove entity storage|'''Add Storage''']], it will create a '''copy''' witch will be '''attached''' to selected entity '''instance'''. | Special game logic to store data specific to one entity (e.g player). When assigned trough instruction [[Ylands:Tile - Add-Remove entity storage|'''Add Storage''']], it will create a '''copy''' witch will be '''attached''' to selected entity '''instance'''. | ||
*Storage has to be attached to entity via '''Add Storage''' instruction, target entity becomes [[Ylands Tile - Storage owner literal|'''storage owner''']] | *Storage has to be attached to entity via '''Add Storage''' instruction, target entity becomes [[Ylands:Tile - Storage owner literal|'''storage owner''']] | ||
*Any storage can have unlimited number of owners, each owner will have its unique copy of attached storage | *Any storage can have unlimited number of owners, each owner will have its unique copy of attached storage | ||
*Entities can have unlimited number of storages | *Entities can have unlimited number of storages | ||
Line 23: | Line 23: | ||
</gallery> | </gallery> | ||
=Notes= | = Notes = | ||
*In case a script will try to access non-existent storage this will stop the script. So it is crucial to do a storage check using Has storage instruction before accessing storage on unknown entity (e.g Trigger object). | *In case a script will try to access non-existent storage this will stop the script. So it is crucial to do a storage check using *[[Ylands:Tile - Has entity storage|'''Has storage''']] instruction before accessing storage on unknown entity (e.g Trigger object). | ||
=Related Instructions= | = Related Instructions = | ||
*[[Ylands Tile - Add-Remove entity storage|Add / Remove Entity Storage]] | *[[Ylands:Tile - Add-Remove entity storage|Add / Remove Entity Storage]] | ||
*[[Ylands Tile - Has entity storage|Has | *[[Ylands:Tile - Has entity storage|Has Entity Storage]] | ||
---- | ---- | ||
{{Ylands | {{Navbox/Ylands}} | ||
{{DEFAULTSORT:{{#sub:{{PAGENAME}}| | {{DEFAULTSORT:{{#sub:{{PAGENAME}}|13}}}} | ||
[[Category: Game Logic]] | [[Category: Game Logic]] | ||
[[Category: Ylands 0.10]] | [[Category: Ylands 0.10]] |
Latest revision as of 14:21, 24 November 2023
Description
Special game logic to store data specific to one entity (e.g player). When assigned trough instruction Add Storage, it will create a copy witch will be attached to selected entity instance.
- Storage has to be attached to entity via Add Storage instruction, target entity becomes storage owner
- Any storage can have unlimited number of owners, each owner will have its unique copy of attached storage
- Entities can have unlimited number of storages
- Each owner will have unique values in each storage
- Storage data (variables) can be found in Variables category
- Storage instructions can be found in Instructions category
Custom instructions
- Instructions in a storage are executed only within currently called storage instance and it will affect only variables of this instance.
Storages in compositions
- When composition using any storage will get exported, it will save with a copy of that storage (even if not selected)
- When such composition is placed in other scenario, it will make new independent copy of included storage under new name (e.g Entity storage (2))
- In case of multiple instances of same composition, references in all compositions will be set to one storage
Notes
- In case a script will try to access non-existent storage this will stop the script. So it is crucial to do a storage check using *Has storage instruction before accessing storage on unknown entity (e.g Trigger object).
Related Instructions