\b;Instructions \c;if\n; and \c;else\n;
With the instruction \c;if() {}\n; you can execute a set of instructions only if a certain condition is true. Write the condition in brackets \c;()\n;, and the instructions in braces \c;{}\n;.

\b;Basic use
Here is a concrete example: The bot will shoot only if the target is closer than 40 meters:
\c;
\s;	item = \l;radar\u cbot\radar;(AlienAnt);
\s;	if (\l;distance\u cbot\dist;(position, item.position) < 40)
\s;	{
\s;		fire(1);
\s;	}
\n;
You can also test if an object exists at all. If the instruction \c;\l;radar\u cbot\radar;();\n; does not find the requested object, it returns the value \c;null\n;. So you can test if an object does not exists with the condition  \c;(item == null)\n;, or test if it exists with  \c;(item != null)\n;. Two equal signs \c;==\n; test equality, an exclamation mark followed by an equal sign \c;!=\n; test inequality. Here is a test that will go to rechage the \l;power cell\u object\power; only if there is a \l;power station\u object\station;:
\c;
\s;	item = \l;radar\u cbot\radar;(PowerStation);
\s;	if (item != null)
\s;	{
\s;		\l;goto\u cbot\goto;(item.position);
\s;		\l;wait\u cbot\wait;(5);
\s;	}
\n;
\b;For specialists
Syntax:
\s;\c;if ( condition )
\s;{
\s;	\n;Instructions A ...\c;
\s;}
\s;else
\s;{
\s;	\n;Instructions B ...\c;
\s;}
\n;
With this conditional structure you can execute a \l;bloc\u cbot\bloc; A or a \l;bloc\u cbot\bloc; B depending on a \l;condition\u cbot\cond;. If the condition is true, bloc A is executed. If the condition is false, bloc B is executed. 
Part \c;else { }\n; is not compulsory. 

\t;Attention
Do not put a \l;semicolon\u cbot\term; at the end of the line \c;if ( )\n;.

\t;See also
\l;Programming\u cbot;, \l;types\u cbot\type; and \l;categories\u cbot\category;.
