#include <a_samp>
#define TEAM_COPS 1
#define TEAM_DUDES 2
#define COLOR_GREEN 0x00FF00AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_PINK 0xFF66FFAA
#define COLOR_GREY 0xAFAFAFAA
#define OBJECTIVE_COLOR 0xFFFF00AA
new gTeam[MAX_PLAYERS];
forward SetPlayerToTeamColor(playerid);
forward SetPlayerTeamFromClass(playerid,classid);
forward ExitTheGameMode();
//-------------------------------------
main()
{
WE'RE NO STRANGERS TO LOVE
YOU KNOW THE RULES AND SO DO I
A FULL COMMITMENT'S WHAT I'M THINKING OF
YOU WOULDN'T GET THIS FROM ANY OTHER GUY
I JUST WANNA TELL YOU HOW I'M FEELING
GOTTA MAKE YOU UNDERSTAND
NEVER GONNA GIVE YOU UP
NEVER GONNA LET YOU DOWN
NEVER GONNA RUN AROUND AND DESERT YOU
NEVER GONNA MAKE YOU CRY
NEVER GONNA SAY GOODBYE
NEVER GONNA TELL A LIE AND HURT YOU
WE'VE KNOWN EACH OTHER
FOR SO LONG
YOUR HEART'S BEEN ACHING BUT
YOU'RE TOO SHY TO SAY IT
INSIDE WE BOTH KNOW WHAT'S BEEN GOING ON
WE KNOW THE GAME AND WE'RE GONNA PLAY IT
AND IF YOU ASK ME HOW I'M FEELING
DON'T TELL ME YOU'RE TOO BLIND TO SEE
NEVER GONNA GIVE YOU UP
NEVER GONNA LET YOU DOWN
NEVER GONNA RUN AROUND AND DESERT YOU
NEVER GONNA MAKE YOU CRY
NEVER GONNA SAY GOODBYE
NEVER GONNA TELL A LIE AND HURT YOU
NEVER GONNA GIVE NEVER GONNA GIVE
GIVE YOU UP
NEVER GONNA GIVE NEVER GONNA GIVE
GIVE YOU UP
WE'VE KNOWN EACH OTHER
FOR SO LONG
YOUR HEART'S BEEN ACHING BUT
YOU'RE TOO SHY TO SAY IT
INSIDE WE BOTH KNOW WHAT'S BEEN GOING ON
WE KNOW THE GAME AND WE'RE GONNA PLAY IT
AND IF YOU ASK ME HOW I'M FEELING
DON'T TELL ME YOU'RE TOO BLIND TO SEE
NEVER GONNA GIVE YOU UP
NEVER GONNA LET YOU DOWN
NEVER GONNA RUN AROUND AND DESERT YOU
NEVER GONNA MAKE YOU CRY
NEVER GONNA SAY GOODBYE
NEVER GONNA TELL A LIE AND HURT YOU
NEVER GONNA GIVE YOU UP
NEVER GONNA LET YOU DOWN
NEVER GONNA RUN AROUND AND DESERT YOU
NEVER GONNA MAKE YOU CRY
NEVER GONNA SAY GOODBYE
NEVER GONNA TELL A LIE AND HURT YOU
print("\n----------------------------------");
print(" Team Cops vs Team Dudes by Jeroen\n");
print("----------------------------------\n");
}
//--------------------------
public OnGameModeInit()
{
SetGameModeText("Cop vs Dudes");
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;
}
//-------------------------------------
public OnPlayerConnect(playerid)
{
SetPlayerColor(playerid,COLOR_GREY);
GameTextForPlayer(playerid,"~r~Cop ~w~ ~y~vs ~y~Dudes!",2000,5);
return 1;
}
//-------------------------------------
public OnPlayerRequestClass(playerid, classid)
{
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);
return 1;
}
//-------------------------------------
public SetPlayerTeamFromClass(playerid,classid)
{
SendClientMessage(playerid, COLOR_PINK, "SetPlayerTeamFromClass Called");
if(classid == 108 || classid == 110 || classid == 114)
{
gTeam[playerid] = TEAM_COPS;
}
else if(classid == 102 || classid == 103|| classid == 104)
{
gTeam[playerid] = TEAM_DUDES;
}
}
//-------------------------------------
public SetPlayerToTeamColor(playerid)
{
if(gTeam[playerid] == TEAM_COPS)
{
SetPlayerColor(playerid,COLOR_YELLOW);
}
else if(gTeam[playerid] == TEAM_DUDES)
{
SetPlayerColor(playerid,COLOR_PINK);
}
}
//-----------------------------------------
public OnPlayerSpawn(playerid)
{
SetPlayerTeamFromClass(playerid, GetPlayerSkin(playerid));
SetPlayerToTeamColor(playerid);
SetPlayerInterior(playerid,0);
if(gTeam[playerid] == TEAM_COPS)
{
GameTextForPlayer(playerid,"Kill the ~r~Dudes!", 6000,5);
}
else if(gTeam[playerid] == TEAM_DUDES)
{
GameTextForPlayer(playerid,"Kill the ~y~Cops!", 6000,5);
}
return 1;
}
//---------------------------------------------
public ExitTheGameMode()
{
GameModeExit();
}
//------------------------------------------
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);
GivePlayerMoney(playerid, 20000);
} 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;
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
return 1;
}
public OnPlayerDisconnect(playerid, 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;
}
if(strcmp("/kill", cmdtext, true) == 0)
{
SetPlayerPos(playerid, 1922.5964, -1399.8970, 40.000);
SendClientMessage(playerid, COLOR_GREEN, "Your dead meat");
SendClientMessageToAll(COLOR_GREY, "***Somebody died!");
return 1;
}
if(strcmp("/minigun", cmdtext, true) == 0)
{
GivePlayerWeapon(playerid, 38, 900);
GivePlayerMoney(playerid, -1000);
return 1;
}
if(strcmp("/flame", cmdtext, true) == 0)
{
GivePlayerWeapon(playerid, 37, 900);
GivePlayerMoney(playerid, -1000);
return 1;
}
return 0;
}
public OnPlayerInfoChange(playerid)
{
return 1;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
SendClientMessage(playerid, COLOR_GREEN, "You entered an Vehicle!");
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;
}