rendered paste bodynew CurrCheck[MAX_PLAYERS];new Float:CPCoords[MAX_POINTS][4] = { // This is the coordinates of the checkpoint { 2144.2842,1636.5079,993.5761,25.0 },};new Float:CP[MAX_POINTS][4] = { // This is where the player will need to be when the checkpoint spawns, the last number is a radius { 2144.2842,1636.5079,993.5761,3.0 },};public CPStream(){ for(new i=0; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { for(new j=0; j < MAX_POINTS; j++) { if(PlayerToPointCP(i,CPCoords[j][0],CPCoords[j][1],CPCoords[j][2],CPCoords[j][3])) { if(CurrCheck[i]!=j) { DisablePlayerCheckpoint(i); SetPlayerCheckpoint(i,CP[j][0],CP[j][1],CP[j][2],CP[j][3]); CurrCheck[i] = j; } } else { if(CurrCheck[i] == j) { DisablePlayerCheckpoint(i); CurrCheck[i] = 999; } } } } }}public OnGameModeInit(){ SetTimer("CPStream",500,1);}stock PlayerToPointCP(playerid, Float:x, Float:y, Float:z, Float:radi){ new Float:oldposx, Float:oldposy, Float:oldposz; new Float:tempposx, Float:tempposy, Float:tempposz; GetPlayerPos(playerid, oldposx, oldposy, oldposz); tempposx = (oldposx -x); tempposy = (oldposy -y); tempposz = (oldposz -z); if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi))) { return 1; } return 0;}