DreadedEntity – User talk

From Bohemia Interactive Community
Jump to navigation Jump to search
(Tips & Tricks)
 
Line 7: Line 7:
sleep 5;
sleep 5;
hint "";
hint "";
}</code>
}</code><br>
 
This should be common sense, but...Always use parenthesis when dealing with array elements. All of the scripting commands will reach the array variable reference, then use that for input, ignoring your select command. This will usually result in a "Type Array, expected (something else)" error. Occasionally, a command is able to accept arrays '''and''' single objects, so it will throw a different error when it reaches your select command.
<code>_myArray = [0,1,2,3,4,5];
_myResult = _myArray [[select]] 0 + _myArray [[select]] 4; //'''Generic Error Reported''', engine is trying to add 0 & _myArray together. "#" is right before the "+"
_myResult = (_myArray [[select]] 0) + (_myArray [[select]] 4); //Result is 4 as expected<br>
[[hint]] [[str]] _myArray [[select]] 3; //'''Hint will be [0,1,2,3,4,5]'''. Yes, that's the entire array.
[[hint]] [[str]] (_myArray [[select]] 3); //'''Hint will be 3''', as expected.
</code>
There are many more situations where programming techniques will break your code. Use parenthesis. Seriously.


Memorize a large portion of the wiki. Seriously.
Memorize a large portion of the wiki. Seriously.

Revision as of 04:02, 23 October 2014

Tips & Tricks

The easiest way to remove a hint from the screen is: hint "Delete this hint after 5 seconds." [] spawn { sleep 5; hint ""; }

This should be common sense, but...Always use parenthesis when dealing with array elements. All of the scripting commands will reach the array variable reference, then use that for input, ignoring your select command. This will usually result in a "Type Array, expected (something else)" error. Occasionally, a command is able to accept arrays and single objects, so it will throw a different error when it reaches your select command. _myArray = [0,1,2,3,4,5]; _myResult = _myArray select 0 + _myArray select 4; //Generic Error Reported, engine is trying to add 0 & _myArray together. "#" is right before the "+" _myResult = (_myArray select 0) + (_myArray select 4); //Result is 4 as expected
hint str _myArray select 3; //Hint will be [0,1,2,3,4,5]. Yes, that's the entire array. hint str (_myArray select 3); //Hint will be 3, as expected.
There are many more situations where programming techniques will break your code. Use parenthesis. Seriously.

Memorize a large portion of the wiki. Seriously.