#include #include #include #define TEAM_PM_MINISTER 1 #define TEAM_TERRORIST 2 #define TEAM_BODYGUARD 3 #define COLOR_YELLOW 0xFFFF00AA #define COLOR_PINK 0xFF66FFAA #define COLOR_GREY 0xAFAFAFAA #define OBJECTIVE_COLOR 0xFFFF00AA static gTeam[MAX_PLAYERS]; //forwards---------------------------------------------------------------------- forward SetPlayerToTeamColor(playerid); forward SetupPlayerForClassSelection(playerid); forward SetPlayerTeamFromClass(playerid,classid); forward ExitTheGameMode(); //main-------------------------------------------------------------------------- main() { print("\n----------------------------------"); print(" PTPM by Jeroen\n"); print("----------------------------------\n"); } //OnGameModeInit---------------------------------------------------------------- public OnGameModeInit() { SetGameModeText("Ptpm"); SetWorldTime(12); ShowNameTags(1); ShowPlayerMarkers(1); AddStaticVehicle(420,2482.877,-1654.292,13.30307, 44.8214, 1, 2); AddStaticVehicle(420,2498.986,-1682.171,13.3638, 44.8214, 1, 2); AddPlayerClass(102,2512.473,-1671.403,13.49048,44.8214,9,500,25,500,32,500); AddPlayerClass(103,2512.473,-1671.403,13.49048,44.8214,9,500,25,500,32,500); AddPlayerClass(104,2512.473,-1671.403,13.49048,44.8214,9,500,25,500,32,500); AddPlayerClass(108, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0); AddPlayerClass(110, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0); AddPlayerClass(114, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0); return 1; } //OnPlayerConnect--------------------------------------------------------------- public OnPlayerConnect(playerid) { SetPlayerColor(playerid,COLOR_GREY); GameTextForPlayer(playerid,"~r~Protect The Premier Minister!",2000,5); return 1; } //SetupPlayerForClassSelection-------------------------------------------------- public SetupPlayerForClassSelection(playerid) { SetPlayerInterior(playerid,11); SetPlayerPos(playerid,508.7362,-87.4335,998.9609); SetPlayerCameraPos(playerid,508.7362,-83.4335,998.9609); SetPlayerCameraLookAt(playerid,508.7362,-87.4335,998.9609); SetPlayerFacingAngle(playerid,0.0); } //SetPlayerTeamFromClass-------------------------------------------------------- public SetPlayerTeamFromClass(playerid,classid) { if(classid == 0 || classid == 1) { gTeam[playerid] = TEAM_PM_MINISTER; } else if(classid == 2 || classid == 3) { gTeam[playerid] = TEAM_TERRORIST; } else if(classid == 4 || classid == 5) { gTeam[playerid] = TEAM_BODYGUARD; } } //SetPlayerToTeamColor---------------------------------------------------------- public SetPlayerToTeamColor(playerid) { if(gTeam[playerid] == TEAM_PM_MINISTER) { SetPlayerColor(playerid,COLOR_YELLOW); } else if(gTeam[playerid] == TEAM_TERRORIST) { SetPlayerColor(playerid,COLOR_PINK); } else if(gTeam[playerid] == TEAM_BODYGUARD) { SetPlayerColor(playerid,COLOR_PINK); } } //OnPlayerRequestclass---------------------------------------------------------- public OnPlayerRequestClass(playerid, classid) { SetupPlayerForClassSelection(playerid); SetPlayerTeamFromClass(playerid,classid); if(classid == 0 || classid == 1) { GameTextForPlayer(playerid,"~y~PM",1000,5); } else if(classid == 3 || classid == 4) { GameTextForPlayer(playerid,"~r~TERRORIST",1000,5); } else if(classid == 3 || classid == 4) { GameTextForPlayer(playerid,"~r~BODYGUARD",1000,5); } return 1; } //OnPlayerSpawn----------------------------------------------------------------- public OnPlayerSpawn(playerid) { SetPlayerTeamFromClass(playerid, GetPlayerSkin(playerid)); SetPlayerToTeamColor(playerid); SetPlayerInterior(playerid,0); if(gTeam[playerid] == TEAM_PM_MINISTER) { GameTextForPlayer(playerid,"Avoid the Terrorist!", 6000,5); } else if(gTeam[playerid] == TEAM_TERRORIST) { GameTextForPlayer(playerid,"Kill the ~y~Minister!", 6000,5); } else if(gTeam[playerid] == TEAM_BODYGUARD) { GameTextForPlayer(playerid,"Defend the Minister!", 6000,5); } return 1; } //ExitTheGameMode--------------------------------------------------------------- public ExitTheGameMode() { GameModeExit(); } //OnPlayerDeath----------------------------------------------------------------- public OnPlayerDeath(playerid, killerid, reason) { new deathstr[256]; new whodiedname[MAX_PLAYER_NAME+1]; new whokilledname[MAX_PLAYER_NAME+1]; new deathreasonstr[256]; GetPlayerName(playerid,whodiedname,MAX_PLAYER_NAME); GetWeaponName(reason,deathreasonstr,255); if(killerid == INVALID_PLAYER_ID) { if(strlen(deathreasonstr)) { format(deathstr,256,"%s died (%s)",whodiedname,deathreasonstr); } else { format(deathstr,256,"%s died",whodiedname); } SendClientMessageToAll(OBJECTIVE_COLOR, deathstr); } else { GetPlayerName(killerid,whokilledname,MAX_PLAYER_NAME); if(gTeam[killerid] != gTeam[playerid]) { // Valid kill if(strlen(deathreasonstr)) { format(deathstr,256,"%s was killed by %s (%s)",whodiedname,whokilledname,deathreasonstr); } else { format(deathstr,256,"%s was killed by %s",whodiedname,whokilledname); } SendClientMessageToAll(OBJECTIVE_COLOR, deathstr); SetPlayerScore(killerid,GetPlayerScore(killerid)+1); } else { // Team kill format(deathstr,256,"%s killed team-mate %s (%s)",whokilledname,whodiedname,deathreasonstr); SendClientMessageToAll(OBJECTIVE_COLOR, deathstr); } } return 1; } // This is a comment // uncomment the line below if you want to write a filterscript //#define FILTERSCRIPT #if defined FILTERSCRIPT public OnFilterScriptInit() { print("\n--------------------------------------"); print(" Blank Filterscript by your name here"); print("--------------------------------------\n"); return 1; } public OnGameModeExit() { return 1; } public OnPlayerRequestClass(playerid, classid) { SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746); SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746); SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746); return 1; } public OnPlayerRequestSpawn(playerid) { return 1; } public OnPlayerConnect(playerid) { return 1; } public OnPlayerDisconnect(playerid, reason) { return 1; } public OnPlayerSpawn(playerid) { return 1; } public OnPlayerDeath(playerid, killerid, reason) { return 1; } public OnVehicleSpawn(vehicleid) { return 1; } public OnVehicleDeath(vehicleid, killerid) { return 1; } public OnPlayerText(playerid, text[]) { return 1; } public OnPlayerPrivmsg(playerid, recieverid, text[]) { return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/mycommand", cmdtext, true, 10) == 0) { // Do something here return 1; } return 0; } public OnPlayerInfoChange(playerid) { return 1; } public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) { return 1; } public OnPlayerExitVehicle(playerid, vehicleid) { return 1; } public OnPlayerStateChange(playerid, newstate, oldstate) { return 1; } public OnPlayerEnterCheckpoint(playerid) { return 1; } public OnPlayerLeaveCheckpoint(playerid) { return 1; } public OnPlayerEnterRaceCheckpoint(playerid) { return 1; } public OnPlayerLeaveRaceCheckpoint(playerid) { return 1; } public OnRconCommand(cmd[]) { return 1; } public OnObjectMoved(objectid) { return 1; } public OnPlayerObjectMoved(playerid, objectid) { return 1; } public OnPlayerPickUpPickup(playerid, pickupid) { return 1; } public OnPlayerSelectedMenuRow(playerid, row) { return 1; } public OnPlayerExitedMenu(playerid) { return 1; } #endif