A tag bool serve para identificar o tipo de dado booleano, este tipo de dado aceita apenas dois valores: true (verdadeiro) e false (falso). Ele nгo aceita valores inteiros, apenas booleanos (true e false < os 2 ъnicos valores booleanos).
Criar uma variбvel booleana no Pawn nгo hб vantagens importantes, pois o peso delas na memуria й similar а uma variбvel do tipo inteiro, se nгo me engano pesam 4 bytes. Geralmente eu uso este tipo de dado em variбveis que apenas indicarгo uma verdade ou mentira, por exemplo:
Code:
new bool:usoucmd[MAX_PLAYERS];
CMD:comando(playerid)
{
if(usoucmd[playerid] == true) // se ele usou o comando
{
SendClientMessage(playerid, -1, "Vocк jб usou o comando.");
}
else if(usoucmd[playerid] == false) // se ele nгo usou o comando
{
usoucmd[playerid] = true; // ele usou, entгo assume o valor verdadeiro
SendClientMessage(playerid, -1, "Vocк usou agora o comando.");
}
return 1;
}
Quando criadas, por padrгo elas assumem o valor falso (false) e sу mudarгo caso seu valor for alterado no script.
Claro que hб como simplificar este cуdigo acima, mas fiz assim para que nгo pareзa confuso.
Vocк tambйm pode usa-las para especificar o tipo de retorno booleano em funзхes:
Code:
bool:Motorista(playerid)
{
if(GetPlayerVehicleSeat(playerid) == 0)
{
return true;
}
return false;
}
// O mesmo cуdigo tambйm poderia ser feito de modo mais simples assim:
bool:Motorista(playerid)
{
return (GetPlayerVehicleSeat(playerid) == 0);
}
Й simples, o tipo de dado booleano apenas informa se algo й verdade (true) ou mentira (false). Nada mais, portanto, vocк nгo pode fazer:
Code:
new bool:variavel1 = 1;
new bool:variavel2 = 0;
new bool:variavel3 = 3;
O compilador lhe informarб um erro, pois o tipo de dado booleano sу aceita os valores true e false.
Espero que ajude.