#include #define CP_BANK 0 #define CP_PIRATE 1 new playerCheckpoint[MAX_PLAYERS]; forward getCheckpointType(playerID); forward isPlayerInArea(playerID, Float:data[4]); forward checkpointUpdate(); #define MAX_POINTS 2 new Float:checkCoords[MAX_POINTS][4] = { {-36.5483,-57.9948, -17.2655,-49.2967}, //BANK {1894.6128,1445.3431, 2084.9739,1637.8186} //PIRATE }; new Float:checkpoints[MAX_POINTS][3] = { {-22.2549,-55.6575,1003.5469}, {2000.3132,1538.6012,13.5859} }; new checkpointType[MAX_POINTS] = { CP_BANK, CP_PIRATE }; main() { return 1; } public OnGameModeInit() { SetTimer("checkpointUpdate", 1100, 1); return 1; } public getCheckpointType(playerID) { return checkpointType[playerCheckpoint[playerID]]; } public isPlayerInArea(playerID, Float:data[4]) { new Float:X, Float:Y, Float:Z; GetPlayerPos(playerID, X, Y, Z); if(X >= data[0] && X <= data[2] && Y >= data[1] && Y <= data[3]) { return 1; } return 0; } public checkpointUpdate() { for(new i=0; i