27.08.2013, 20:18
Ola, alguem poderia me explicar o "SetPlayerRaceCheckpoint"? Eu olhei na Wiki, mas nгo entendi muito bem, se alguem puder me ajudar mostrando um exemplo dele e explicando como funciona :3
new var[MAX_PLAYERS];
new etapa[MAX_PLAYERS];
CMD:iniciar(playerid)
{
SetPlayerRaceCheckpoint(playerid, 0, X1, Y1, Z1, X2, Y2, Z2, 5.0); // X,Y,Z = Coordenadas. 1 = Coordenada do primeiro checkpoint, 2 = Coordenada do segundo checkpoint.
var[playerid] = 1;
etapa[playerid] = 1;
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
new Float: P[3];
GetPlayerPos(playerid, P[0], P[1], P[2]); // Vai getar a posiзгo do player.
PlayerPlaySound(playerid, 1053, P[0], P[1], P[2]); // Vai reproduzir aquele som igual do GTA OFF quando o player passar pelo checkpoint.
if(etapa[playerid] == 1 && var[playerid] == 1)
{
DisablePlayerRaceCheckpoint(playerid); // Vai desativar aquele checkpoint que criamos quando usamos o comando /iniciar
SetPlayerRaceCheckpoint(playerid, 0, X3,Y3,Z3, X4,Y4,Z4, 5.0); // Iremos setar um novo checkpoint para o player, com as novas coordenadas, lembre-se: sгo 2 coordenadas.
etapa[playerid] = 2; // Setaremos a etapa para 2 para setarmos um novo checkpoint para o player.
return 1;
}
if(etapa[playerid] == 2 && var[playerid] == 1)
{
DisablePlayerRaceCheckpoint(playerid); // Desativaremos o checkpoint da etapa 1.
SetPlayerRaceCheckpoint(playerid, 1, X5,Y5,Z5, X6,Y6,Z6, 5.0); // 1 = Checkpoint final. ( Ou seja, o checkpoint que acaba a corrida. ava -q ).
var[playerid] = 0;
// aqui vc coloca outras var para setar a habilitacao para 1...
return 1;
}
return 1;
}