rendered paste body#include <a_samp>
#include <float>
#include <core>
#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