This page has been translated automatically.
Programming
Fundamentials
Setting Up Development Environment
UnigineScript
High-Level Systems
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine and Tools
GUI
Double Precision Coordinates
API
Core Library
Containers
Engine Classes
Node-Related Classes
Rendering-Related Classes
Physics-Related Classes
Bounds-Related Classes
GUI-Related Classes
Controls-Related Classes
Pathfinding-Related Classes
Utility Classes
注意! 这个版本的文档是过时的,因为它描述了一个较老的SDK版本!请切换到最新SDK版本的文档。
注意! 这个版本的文档描述了一个不再受支持的旧SDK版本!请升级到最新的SDK版本。

If-Else

The if construct allows executing code fragments, if a certain condition is true. The optional else part executes some other code, if the condition is false.

Syntax

Source code(UnigineScript)
if(expression) { 
	// code_if_true
} else { 
	// code_if_false 
}

Parts

  • expression is a condition.

Example

Source code(UnigineScript)
int a = 2;
int b = 5;

if(a > b) {
	log.message("true\n");
} else {
	log.message("false\n");
}

// output: false

You can use if and else separetely.

Source code(UnigineScript)
int a=2;
if(a == 2) log.message("a is equal to 2\n");

// the result is: a is equal to 2

Notice
Note that if you use a complex boolean expression as a condition, the expression will be evaluated from the left to the right (short-circuit evaluation):
Source code(UnigineScript)
int func(int a) {
	return a;
}

// there will be only one (the first) call of func()
if(func(0) && func(1)) log.message("true\n");
// func() will be called twice
if(func(1) && func(1)) log.message("true\n");
// there will be only one (the first) call of func()
if(func(1) || func(1)) log.message("true\n");
// func() will be called twice
if(func(0) || func(1)) log.message("true\n");
Last update: 2017-07-03
Build: ()