Difference between revisions of "MessageBox Tutorial/Centralized Decision Catching"
Jump to navigation
Jump to search
imported>Haama (Added to Scripting Tutorial Category) |
imported>Haama (Clarity) |
||
Line 1: | Line 1: | ||
This is a subsection of the [[MessageBox Tutorial]], and uses [[MessageBox_Tutorial#Activator_Script|this script]] as a base. The following code may or may not require certain aspects of that script to work, however the information should prove useful for any script (it | This is a subsection of the [[MessageBox Tutorial]], and uses [[MessageBox_Tutorial#Activator_Script|this script]] as a base. The following code may or may not require certain aspects of that script to work, however the information should prove useful for any script (it may take a bit of care to make it work, though). | ||
---- | ---- | ||
For 99.9% of your menus, you won't need to differentiate the decision catching: | For 99.9% of your menus, you won't need to differentiate the decision catching: | ||
<pre> Elseif (Choosing == 1) | <pre> If (Choosing == 0) | ||
... | |||
Elseif (Choosing == 1) | |||
If (Choice == -1) ;No choice yet | If (Choice == -1) ;No choice yet | ||
Set Choice to GetButtonPressed | Set Choice to GetButtonPressed | ||
Elseif (Choice == 0) | |||
... | ... | ||
Elseif (Choosing == 2) | Elseif (Choosing == 2) | ||
If (Choice == -1) ;No choice yet | If (Choice == -1) ;No choice yet | ||
Set Choice to GetButtonPressed | Set Choice to GetButtonPressed | ||
Elseif (Choice == 0) | |||
...</pre> | ...</pre> | ||
Line 21: | Line 23: | ||
Set Choice to GetButtonPressed | Set Choice to GetButtonPressed | ||
Return | Return | ||
... | |||
elseif (Choosing == 1) | |||
if (Choice == 0) | |||
... | ... | ||
elseif (Choosing == 2) | elseif (Choosing == 2) | ||
if (Choice == 0) | if (Choice == 0) | ||
</pre> | </pre> | ||
[[Category: Scripting Tutorials]] | [[Category: Scripting Tutorials]] |
Revision as of 01:45, 15 September 2007
This is a subsection of the MessageBox Tutorial, and uses this script as a base. The following code may or may not require certain aspects of that script to work, however the information should prove useful for any script (it may take a bit of care to make it work, though).
For 99.9% of your menus, you won't need to differentiate the decision catching:
If (Choosing == 0) ... Elseif (Choosing == 1) If (Choice == -1) ;No choice yet Set Choice to GetButtonPressed Elseif (Choice == 0) ... Elseif (Choosing == 2) If (Choice == -1) ;No choice yet Set Choice to GetButtonPressed Elseif (Choice == 0) ...
To reduce the lines used, and to centralize the decision catching, try this instead:
if (Choosing == 0) ... elseif (Choosing > 0) && (Choice == -1) Set Choice to GetButtonPressed Return ... elseif (Choosing == 1) if (Choice == 0) ... elseif (Choosing == 2) if (Choice == 0)