disableSerialization: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
Lou Montana (talk | contribs) m (Text replacement - "[] spawn" to "0 spawn") |
||
(4 intermediate revisions by 3 users not shown) | |||
Line 46: | Line 46: | ||
|text= Can be used to detecting load. Scope with disabled serialization is discontinued after load, even if there's endless loop inside. | |text= Can be used to detecting load. Scope with disabled serialization is discontinued after load, even if there's endless loop inside. | ||
<sqf> | <sqf> | ||
0 spawn { disableSerialization; waitUntil { false }; hint "Game was loaded!";}; | |||
</sqf> | </sqf> | ||
Works for all possible load types - loading user save, loading autosave and resuming mission from main menu. | Works for all possible load types - loading user save, loading autosave and resuming mission from main menu. | ||
Use with caution, as it | Use with caution, as it creates an infinite loop, having impact at overall [[Code_Optimisation#Threads|scripting time]]. | ||
}} | }} | ||
Line 70: | Line 70: | ||
{{Note | {{Note | ||
|user= | |user= Nelis75733126 | ||
|timestamp= 20170625181500 | |timestamp= 20170625181500 | ||
|text= In {{arma3}} 1.74, a scripted FSM | |text= In {{arma3}} 1.74, a scripted FSM is somehow incompatible with <sqf inline>disableSerialization</sqf>.<br> | ||
Example: | As a workaround, store a display inside an array. Example: | ||
<sqf>_display = [findDisplay idd];</sqf> | <sqf>_display = [findDisplay idd];</sqf> | ||
}} | }} |
Latest revision as of 21:24, 2 September 2024
Description
- Description:
- Disable saving of script containing this command. After this, the script can work with data types which do not support serialization (UI types).
- Groups:
- NamespacesGUI Control
Syntax
- Syntax:
- disableSerialization
- Return Value:
- Nothing
Examples
- Example 1:
Additional Information
- See also:
- Display displayAddEventHandler displayRemoveAllEventHandlers displayRemoveEventHandler uiSleep
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
- Posted on Jun 19, 2010 - 10:26 (UTC)
- Can be used to detecting load. Scope with disabled serialization is discontinued after load, even if there's endless loop inside. Works for all possible load types - loading user save, loading autosave and resuming mission from main menu. Use with caution, as it creates an infinite loop, having impact at overall scripting time.
- Posted on Oct 23, 2013 - 02:57 (UTC)
-
If you do not store UI elements (Display, Control) in variables, you do not need disableSerialization; UI elements are usually returned by scripting commands such as findDisplay or passed as params in UI event handler scripts (displayAddEventHandler, ctrlAddEventHandler).
This code will require disableSerialization:
This code will not:disableSerialization; _display = findDisplay 123; _ctrl = _display displayCtrl -1; _ctrl ctrlSetText "LOL";
- Posted on Jun 25, 2017 - 18:15 (UTC)
-
In Arma 3 1.74, a scripted FSM is somehow incompatible with disableSerialization.
As a workaround, store a display inside an array. Example: