rendered paste body#include <a_samp>
#include <float>
#include <core>
#define TEAM_GROVE 1
#define TEAM_BALLAS 2
static gTeam[MAX_PLAYERS];
#define COLOR_PURPLE 0x00FF00AA
#define COLOR_PINK 0xFF66FFAA
#define COLOR_GREY 0xAFAFAFAA
forward SetPlayerToTeamColor(playerid); // Speler naar teamkleur zetten
forward SetupPlayerForClassSelection(playerid); // Speler klaarmaken voor setup
forward SetPlayerTeamFromClass(playerid,classid); // Speler in team zetten
forward ExitTheGameMode(); // uit gamemode gaan
//-------------------------------------
main()
{
print("\n----------------------------------");
print(" Gangwar v1 by [OG]Dominator\n");
print("----------------------------------\n");
}
//-------------------------------------
public OnGameModeInit()
{
SetGameModeText(“Gangwar v1”);
SetWorldTime(6); // tijd in uren.
ShowNameTags(1); // Spelers namen boven health balk aan of uit. Nu aan
ShowPlayerMarkers(1); // Blokjes op radar aan of uit? Nu aan
// Vehicles Grove
AddStaticVehicle(600,2473.1335,-1698.6742,13.2284,359.1152,44,8); //
AddStaticVehicle(534,2480.6929,-1653.6547,13.1121,90.6187,114,42); //
AddStaticVehicle(492,2509.5549,-1670.9086,13.1879,348.0546,86,26); //
// Vehicles Ballas
AddStaticVehicle(536,2141.6880,-1429.2720,24.3169,113.1018,5,96); //
AddStaticVehicle(517,2142.3323,-1414.9875,24.6072,124.1787,85,36); //
AddStaticVehicle(575,2156.1692,-1454.8726,25.1417,90.6440,14,96); //
// Grove Class
AddPlayerClass(105,2495.2563,-1686.9680,13.5148,357.7729,1,0,32,300,30,200); //
AddPlayerClass(106,2520.6643,-1678.9305,15.1480,83.9403,1,0,32,300,30,200); //
AddPlayerClass(107,2486.4309,-1649.1387,13.5392,181.7012,1,0,32,300,30,200); //
// Ballas Class
AddPlayerClass(102,2149.7095,-1418.9882,25.9153,91.8089,5,0,25,35,29,300); //
AddPlayerClass(103,2149.1699,-1433.6844,25.5391,91.8090,5,0,25,35,29,300); //
AddPlayerClass(104,2151.2983,-1446.5103,25.7746,90.5557,5,0,25,35,29,300); //
return 1;
}
//-------------------------------------
public OnPlayerConnect(playerid)
{
SetPlayerColor(playerid,COLOR_GREY); // Kleur
GameTextForPlayer(playerid,"~g~Grove ~w~vs ~r~Ballass!",2000,5); // Text
return 1;
}
//-------------------------------------
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);
}
//-------------------------------------
public SetPlayerTeamFromClass(playerid,classid)
{
if(classid == 0 || classid == 1 || classid == 2) {
gTeam[playerid] = TEAM_GROVE;
} else if(classid == 3 || classid == 4 || classid == 5) {
gTeam[playerid] = TEAM_BALLAS;
}
}
//-------------------------------------
public SetPlayerToTeamColor(playerid)
{
if(gTeam[playerid] == TEAM_GROVE) {
SetPlayerColor(playerid,COLOR_PURPLE); // geel
} else if(gTeam[playerid] == TEAM_BALLAS) {
SetPlayerColor(playerid,COLOR_PINK); // roze/paars
}
}
//-------------------------------------
public OnPlayerRequestClass(playerid, classid)
{
SetupPlayerForClassSelection(playerid);
SetPlayerTeamFromClass(playerid,classid);
if(classid == 0 || classid == 1 || classid == 2) {
GameTextForPlayer(playerid,"~g~GROVE",1000,5);
} else if(classid == 3 || classid == 4 || classid == 5) {
GameTextForPlayer(playerid,”~r~BALLAS",1000,5);
}
return 1;
}
//-------------------------------------
public OnPlayerSpawn(playerid)
{
SetPlayerToTeamColor(playerid);
SetPlayerInterior(playerid,0);
if(gTeam[playerid] == TEAM_GROVE) {
SetPlayerWorldBounds(playerid,x_max, x_min, y_max, y_min);
GameTextForPlayer(playerid,
"Kill the ~r~Ballas!"
6000,5);
}
else if(gTeam[playerid] == TEAM_BALLAS) {
SetPlayerWorldBounds(playerid,x_max, x_min, y_max, y_min);
GameTextForPlayer(playerid,
"Kill the ~g~Grove!",
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);
} 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;
}