isNil

From Bohemia Interactive Community
Jump to navigation Jump to search
Introduced with Armed Assault version1.00
  

Click on the images for descriptions

Introduced in

Game:
Armed Assault
Version:
1.00

Description

Description:
Tests whether the variable given by its name is nil or undefined, or whether the given expression evaluates to nil or Nothing.

Introduced with Operation Flashpoint version1.00
isNil doesn't exist in Operation Flashpoint, you can emulate it:

// SQS syntax
_nil = format ["%1", _undefinedVariable]
? (format ["%1", foo] == _nil) : foo = "Hello World!"

// SQF syntax
_nil = format ["%1", _undefinedVariable];
if (format ["%1", foo] == _nil) then { foo = "Hello World!"; };

Syntax

Syntax:
isNil variableName
Parameters:
variableName: String - name of a missionNamespace variable (e.g "someVar") or a local variable (e.g "_someVar")
Return Value:
Boolean - true if variable is nil

Alternative Syntax

Syntax:
isNil code
Parameters:
code: Code - code to evaluate:
  • the code will be executed; isNil { player setDamage 1; }; will kill the player
  • the code will not be allowed to suspend while expression is evaluated, even if the parent scope allows it.
 
Return Value:
Boolean - true if code returns something other than Nothing

Examples

Example 1:
if (isNil "pokus") then { pokus = 0; };
Example 2:
isNil { player getVariable "someVar" };
Example 3:
_myArray = [0, 1]; isNil { _myArray select 0 }; // returns false isNil { _myArray select 1 }; // returns false isNil { _myArray select 2 }; // returns true isNil { _myArray select 3 }; // throws a script error. only length+1 select is allowed

Additional Information

Multiplayer:
-
See also:
nilVariables

Notes

Only post proven facts here. Report bugs on the feedback tracker. Use the talk page or the forums for discussions.
Add New Note | How To

Notes

Bottom Section