rendered paste body#include <a_samp>
#include <float>
#include <core>
//Teams-------------------------------------------------------------------------
#define TEAM_RICH 1
#define TEAM_CRIMINALS 2
#define TEAM_MEDIC 3
//Teams-------------------------------------------------------------------------
#define COLOR_GREEN 0x00FF00AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_PINK 0xFF66FFAA
#define COLOR_GREY 0xAFAFAFAA
static gTeam[MAX_PLAYERS];
#define OBJECTIVE_COLOR 0xFFFF00AA
#define x_max
//forwards----------------------------------------------------------------------
forward SetPlayerToTeamColor(playerid);
forward SetupPlayerForClassSelection(playerid);
forward SetPlayerTeamFromClass(playerid,classid);
forward ExitTheGameMode();
//Main--------------------------------------------------------------------------
main()
{
print("\n----------------------------------");
print(" Rich vs Criminals\n");
print("----------------------------------\n");
}
//OnGameModeInit----------------------------------------------------------------
public OnGameModeInit()
{
SetGameModeText("Rich vs Criminals");
SetWorldTime(12);
ShowNameTags(1);
ShowPlayerMarkers(1);
AddStaticVehicle(420,2498.986,-1682.171,13.36382, 44.8214, 1, 2);
AddStaticVehicle(420,2498.986,-1682.171,13.36382, 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~Rich ~w~vs ~y~Criminals!",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 || classid == 2) {
gTeam[playerid] = TEAM_RICH;
} else if(classid == 3 || classid == 4 || classid == 5) {
gTeam[playerid] = TEAM_CRIMINALS;
} else if(classid == 6 || classid == 7 || classid == 8) {
gTeam[playerid] = TEAM_MEDIC;
}
}
//SetPlayerToTeamColor----------------------------------------------------------
public SetPlayerToTeamColor(playerid)
{
if(gTeam[playerid] == TEAM_RICH) {
SetPlayerColor(playerid,COLOR_GREEN);
} else if(gTeam[playerid] == TEAM_CRIMINALS) {
SetPlayerColor(playerid,COLOR_YELLOW);
} else if(gTeam[playerid] == TEAM_MEDIC) {
SetPlayerColor(playerid, COLOR_PINK);
}
}
//OnPlayerRequestClass----------------------------------------------------------
public OnPlayerRequestClass(playerid, classid)
{
SetupPlayerForClassSelection(playerid);
SetPlayerTeamFromClass(playerid,classid);
if(classid == 0 || classid == 1 || classid == 2) {
GameTextForPlayer(playerid,"~y~RICH",1000,5);
} else if(classid == 3 || classid == 4 || classid == 5) {
GameTextForPlayer(playerid,"~r~CRIMINALS",1000,5);
} else if(classid == 6 || classid == 7 || classid == 8) {
GameTextForPlayer(playerid,"~w~MEDIC", 1000,5);
}
return 1;
}
//OnPlayerSpawn-----------------------------------------------------------------
public OnPlayerSpawn(playerid)
{
SetPlayerToTeamColor(playerid);
SetPlayerInterior(playerid,0);
if(gTeam[playerid] == TEAM_RICH) {
SetPlayerWorldBounds(playerid,x_max, x_min, y_max, y_min);
GameTextForPlayer(playerid, "Kill the ~r~Criminals, Money makes happy!"6000,5);
}
else if(gTeam[playerid] == TEAM_CRIMINALS) {
SetPlayerWorldBounds(playerid,x_max, x_min, y_max, y_min);
GameTextForPlayer(playerid, "Kill the ~y~Rich, Those faggots!"6000,5);
}
else if(gTeam[playerid] == TEAM_MEDIC) {
SetPlayerWorldBounds(playerid,x_max, x_min, y_max, y_min);
GameTextForPlayer(playerid, "Help the warriors!"6000,5);
}
return 1;
}
//Exit--------------------------------------------------------------------------
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 OnFilterScriptExit()
{
return 1;
}
#else
main()
{
print("\n----------------------------------");
print(" Blank Gamemode by your name here");
print("----------------------------------\n");
}
#endif
public OnGameModeInit()
{
// Don't use these lines if it's a filterscript
SetGameModeText("Blank Script");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
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;
}