Ten typ służy do przechowywania jednej z dwóch logicznych wartości: false (fałsz) lub true (prawda). Ich liczbowa reprezentacja to odpowiednio 0 i 1. W pamięci zajmuje 1 bajt (8 bitów).
#property strict
bool b1 = true, b2 = false;
void OnStart()
{
//---
if(b1 == true)
Print("b1 to true.");
else
Print("b1 to false.");
//---
if(b2 == true)
Print("b2 to true.");
else
Print("b2 to false.");
//---
}
Rys. 1. Wynik działania skryptu.
Dopuszczalne jest przypisywanie zmiennym typu bool liczb całkowitych lub zmiennoprzecinkowych i kompilator nie wygeneruje błędu. Liczba 0 zostanie zinterpretowana jako false, a wszystkie inne jako true (kod 2).
#property strict
void OnStart()
{
//---
bool b3 = 1; // true
if(b3 == true) Print("b3 to true.");
else Print("b3 to false.");
//---
bool b4 = 0; // false
if(b4 == true) Print("b4 to true.");
else Print("b4 to false.");
//---
bool b5 = 7; // true
if(b5 == true) Print("b5 to true.");
else Print("b5 to false.");
//---
bool b6 = -555; // true
if(b6 == true) Print("b6 to true.");
else Print("b6 to false.");
//---
bool b7 = 0.12; // true
if(b7 == true) Print("b7 to true.");
else Print("b7 to false.");
//---
bool b8 = 0.0; // false
if(b8 == true) Print("b8 to true.");
else Print("b8 to false.");
//---
bool b9 = 3 + 55; // true
if(b9 == true) Print("b9 to true.");
else Print("b9 to false.");
//---
bool b10 = 3 * 8; // true
if(b10 == true) Print("b10 to true.");
else Print("b10 to false.");
//---
bool b11 = 7 - 7; // false, ponieważ 7 - 7 = 0
if(b11 == true) Print("b11 to true.");
else Print("b11 to false.");
//---
bool b12 = 0.5 - 0.5; // false, ponieważ 0.5 - 0.5 = 0.0
if(b12 == true) Print("b12 to true.");
else Print("b12 to false.");
//---
bool b13 = true + true; // true, ponieważ true + true = 1 + 1 = 2
if(b13 == true) Print("b13 to true.");
else Print("b13 to false.");
//---
bool b14 = true - true; // false, ponieważ true - true = 1 - 1 = 0
if(b14 == true) Print("b14 to true.");
else Print("b14 to false.");
//---
bool b15 = false + false; // false, ponieważ false + false = 0 + 0 = 0
if(b15 == true) Print("b15 to true.");
else Print("b15 to false.");
//---
}
Rys. 2. Wynik działania skryptu.