Quote:
Originally Posted by MadeMan
It's probably your code that causes it. We can't tell what's wrong if you don't show it.
|
This is my whole OnPlayerEnterRaceCheckpoint callback:
pawn Код:
public OnPlayerEnterRaceCheckpoint(playerid)
{
if(InDakar[playerid] > 0)
{
InDakar[playerid] += 1;
if(InDakar[playerid] < 48)
{
DisablePlayerRaceCheckpoint(playerid);
PlayerPlaySound(playerid, 1139, 0.0, 0.0, 0.0);
SetPlayerRaceCheckpoint(playerid, 0, DakarCheckpoints[InDakar[playerid]-1][0], DakarCheckpoints[InDakar[playerid]-1][1], DakarCheckpoints[InDakar[playerid]-1][2], DakarCheckpoints[InDakar[playerid]][0], DakarCheckpoints[InDakar[playerid]][1], DakarCheckpoints[InDakar[playerid]][2], DakarCheckpoints[InDakar[playerid]-1][3]);
}
else if(InDakar[playerid] == 48)
{
DisablePlayerRaceCheckpoint(playerid);
PlayerPlaySound(playerid, 1139, 0.0, 0.0, 0.0);
SetPlayerRaceCheckpoint(playerid, 1, DakarCheckpoints[InDakar[playerid]-1][0], DakarCheckpoints[InDakar[playerid]-1][1], DakarCheckpoints[InDakar[playerid]-1][2], DakarCheckpoints[InDakar[playerid]-1][0], DakarCheckpoints[InDakar[playerid]-1][1], DakarCheckpoints[InDakar[playerid]-1][2], DakarCheckpoints[InDakar[playerid]-1][3]);
}
else if(InDakar[playerid] == 49)
{
if(DakarWinners < 3)
{
DakarWinners += 1;
new string[128], PlayerName[24];
GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
format(string, sizeof(string), "DAKAR RACE: %s passed the finish line %d. - congratulations.", PlayerName, DakarWinners);
SendClientMessageToAll(COLOR_ORANGE, string);
InDakar[playerid] = 0;
SetPlayerColor(playerid,0xFFFFFF00);
DisablePlayerRaceCheckpoint(playerid);
PlayerPlaySound(playerid, 1058, 0.0, 0.0, 0.0);
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
}
else
{
InDakar[playerid] = 0;
SetPlayerColor(playerid,0xFFFFFF00);
DisablePlayerRaceCheckpoint(playerid);
PlayerPlaySound(playerid, 1058, 0.0, 0.0, 0.0);
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
}
}
}
return 1;
}
And i think it's important to mention that the problem occurs only on the first checkpoint...