Nein. So macht das ganze ja gar keinen Sinn.Du sollst erst DisablePlayerCheckpoint aufrufen und danach zeitversetzt SetPlayerCheckpoint. Sonst hast du ja genau das gleiche wie vorher auch.
Außerdem ist hier ein f zu viel:
SetTimerEx("CheckpointTimer", 500, 0, "ifffffi", playerid, x,y,z, size, type);
Ich meinte es eher so:
stock v_SetPlayerCheckpoint(playerid, Float:x, Float:y, Float:z, Float:size)
{
DisablePlayerCheckpoint(playerid);
SetTimerEx("CheckpointTimer", 37, 0, "iffff", playerid, x,y,z, size); // 500 ist bischen viel. 37 ist gut,Primzahlen |o/
return 1;
}
forward CheckpointTimer(playerid, Float:x, Float:y, Float:z, Float:size);
public CheckpointTimer(playerid, Float:x, Float:y, Float:z, Float:size)
{
SetPlayerCheckpoint(playerid, x,y,z,size);
return 1;
}