Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define FILTERSCRIPT
- #include <a_samp>
- #undef MAX_PLAYERS
- #define MAX_PLAYERS (200)
- #include <gangzonesc>
- #define TURF_STATE_NORMAL (0)
- #define TURF_STATE_ATTACKED (1)
- #define TURF_STATE_PROVOKED (2)
- #define TURF_REQUIRED_KILLS (3)
- #define TURF_REQUIRED_PLAYERS (1)
- #define TURF_REQUIRED_CAPTURETIME (2 * 60 * 1000)
- #define TURF_REQUIRED_PROVOKETIME (10 * 1000)
- #define COLOR_DODGER_BLUE (0x1E90FFFF)
- #define COLOR_FIREBRICK (0xB22222FF)
- #define COLOR_STEEL_BLUE (0x4682B4FF)
- #define COLOR_RED (0xFF0000FF)
- #define COLOR_GREY (0x808080FF)
- #define COLOR_GREEN (0x00CC00FF)
- #define COLOR_LIME (0xCCFF99FF)
- #define COLOR_BLACK (0x000000FF)
- #define COLOR_WHITE (0xFFFFFFFF)
- #define COLOR_ORANGE (0xFF9933FF)
- #define COLOR_YELLOW (0xFFFF66FF)
- #define COLOR_BLUE (0x0099CCFF)
- #define COLOR_PURPLE (0x6600FFFF)
- #define COLOR_BROWN (0x663300FF)
- #define COLOR_PINK (0xCC99FFFF)
- #define COLOR_HOT_PINK (0xFF99FFFF)
- #define COLOR_THISTLE (0xD8BFD8FF)
- #define COLOR_KHAKI (0x999966FF)
- #define COLOR_ORANGE_RED (0xFF4500FF)
- #define SAMP_BLUE "{A9C4E4}"
- #define WHITE "{FFFFFF}"
- #define MARONE "{800000}"
- #define RED "{FF0000}"
- #define HOT_PINK "{FF99FF}"
- #define LIME "{CCFF99}"
- #define TOMATO "{FF6347}"
- #define PINK "{CC99FF}"
- #define BLACK "{000000}"
- #define ORANGE "{FF9933}"
- #define YELLOW "{FFFF66}"
- #define GREEN "{00CC00}"
- #define VIOLET "{EE82EE}"
- #define BROWN "{663300}"
- #define CORAL "{993333}"
- #define LIGHT "{00FFFF}"
- #define COLOR_CHANGE_ALPHA(%1) ((%1 & ~0xFF) | (clamp(100, 0x00, 0xFF)))
- enum e_TEAM {
- teamName[35],
- teamColor
- };
- enum e_TURF {
- turfName[35],
- turfOwner,
- turfAttacker,
- Float: turfPos[4],
- turfOwnerKills,
- turfAttackerKills,
- turfState,
- turfTimer,
- turfId
- };
- new const g_Team[][e_TEAM] = {
- {"Groves", 0x00CC00FF},
- {"Ballas", 0x663300FF},
- {"Cops", 0x0099CCFF},
- {"Vagos", 0xFFFF66FF},
- {"Aztecas", 0x00FFFFFF},
- {"Chickens",0xFF9933FF},
- {"RussianMafia",0xFF0000FF},
- {"FBI",0x000000FF}
- };
- new const g_Turf[][e_TURF] = {
- {"Ganton", 0, NO_TEAM, {2286.484375, -1763.024902, 2582.484375, -1595.024902}},
- {"Idlewood", 0, NO_TEAM, {1949.637451, -1965.481323, 2213.637451, -1717.481323}},
- {"Las Colinas", 1, NO_TEAM, {2553.808837, -1232.376586, 2785.808837, -1000.376586}},
- {"Glen Park", 1, NO_TEAM, {1785.413940, -1316.985839, 2097.414062, -1028.985839}},
- {"Pershing Square", 2, NO_TEAM, {1449.186889, -1807.042236, 1657.186889, -1527.042236}},
- {"El Corona", 3, NO_TEAM, {1638.658813, -2180.318359, 1910.658813, -1932.318359}},
- {"Market", 6, NO_TEAM, {1022.130126, -1370.191772, 1230.130126, -1130.191772}},
- {"Vinewood", 7, NO_TEAM, {1179.555541, -868.956359, 1371.555541, -708.956359}}
- };
- new
- g_MembersInTurf[sizeof(g_Turf)][sizeof(g_Team)],
- PlayerText: g_PlayerTurfTxt[MAX_PLAYERS][3],
- PlayerText: g_PlayerTurfNotifyTxt[MAX_PLAYERS][4],
- g_PlayerTurfNotifyTimer[MAX_PLAYERS][4]
- ;
- public OnFilterScriptInit() {
- new
- iTeamTurfs[sizeof(g_Team)]
- ;
- for (new i, j = sizeof(g_Turf); i < j; i++) {
- g_Turf[i][turfId] = GangZoneCreate(g_Turf[i][turfPos][0], g_Turf[i][turfPos][1], g_Turf[i][turfPos][2], g_Turf[i][turfPos][3], COLOR_CHANGE_ALPHA(g_Team[g_Turf[i][turfOwner]][teamColor]), 1.8);
- g_Turf[i][turfTimer] = -1;
- for (new k, l = sizeof(g_Team); k < l; k++) {
- g_MembersInTurf[i][k] = 0;
- }
- iTeamTurfs[g_Turf[i][turfOwner]]++;
- }
- print(" ");
- print("_________________| Turfwar Script by kejo|_________________");
- print("Attempting to initialize ''turfs.amx''...");
- print(" ");
- for (new i, j = sizeof(g_Team); i < j; i++) {
- printf("Loaded %i turfs for team %s", iTeamTurfs[i], g_Team[i][teamName]);
- }
- print(" ");
- printf("Total %i turfs loaded", sizeof(g_Turf));
- print("_________________________________________________");
- print(" ");
- return 1;
- }
- public OnFilterScriptExit() {
- for (new i, j = sizeof(g_Turf); i < j; i++) {
- GangZoneDestroy(g_Turf[i][turfId]);
- if (g_Turf[i][turfTimer] != -1) {
- KillTimer(g_Turf[i][turfTimer]);
- }
- g_Turf[i][turfTimer] = -1;
- }
- return 1;
- }
- public OnPlayerConnect(playerid) {
- g_PlayerTurfTxt[playerid][0] = CreatePlayerTextDraw(playerid,317.000000, 378.000000, "Turfwar in ~b~~h~~h~~h~Gangton");
- PlayerTextDrawAlignment(playerid,g_PlayerTurfTxt[playerid][0], 2);
- PlayerTextDrawBackgroundColor(playerid,g_PlayerTurfTxt[playerid][0], 255);
- PlayerTextDrawFont(playerid,g_PlayerTurfTxt[playerid][0], 2);
- PlayerTextDrawLetterSize(playerid,g_PlayerTurfTxt[playerid][0], 0.240000, 1.200000);
- PlayerTextDrawColor(playerid,g_PlayerTurfTxt[playerid][0], -1);
- PlayerTextDrawSetOutline(playerid,g_PlayerTurfTxt[playerid][0], 1);
- PlayerTextDrawSetProportional(playerid,g_PlayerTurfTxt[playerid][0], 1);
- PlayerTextDrawSetSelectable(playerid,g_PlayerTurfTxt[playerid][0], 0);
- g_PlayerTurfTxt[playerid][1] = CreatePlayerTextDraw(playerid,317.000000, 389.000000, "Grove~w~~h~: ~r~13 ~w~~h~kills with ~r~4 ~w~~h~players");
- PlayerTextDrawAlignment(playerid,g_PlayerTurfTxt[playerid][1], 2);
- PlayerTextDrawBackgroundColor(playerid,g_PlayerTurfTxt[playerid][1], 255);
- PlayerTextDrawFont(playerid,g_PlayerTurfTxt[playerid][1], 2);
- PlayerTextDrawLetterSize(playerid,g_PlayerTurfTxt[playerid][1], 0.180000, 0.899999);
- PlayerTextDrawColor(playerid,g_PlayerTurfTxt[playerid][1], 16711935);
- PlayerTextDrawSetOutline(playerid,g_PlayerTurfTxt[playerid][1], 1);
- PlayerTextDrawSetProportional(playerid,g_PlayerTurfTxt[playerid][1], 1);
- PlayerTextDrawSetSelectable(playerid,g_PlayerTurfTxt[playerid][1], 0);
- g_PlayerTurfTxt[playerid][2] = CreatePlayerTextDraw(playerid,317.000000, 397.000000, "Aztecas~w~~h~: ~r~16 ~w~~h~kills with ~r~7 ~w~~h~players");
- PlayerTextDrawAlignment(playerid,g_PlayerTurfTxt[playerid][2], 2);
- PlayerTextDrawBackgroundColor(playerid,g_PlayerTurfTxt[playerid][2], 255);
- PlayerTextDrawFont(playerid,g_PlayerTurfTxt[playerid][2], 2);
- PlayerTextDrawLetterSize(playerid,g_PlayerTurfTxt[playerid][2], 0.180000, 0.899999);
- PlayerTextDrawColor(playerid,g_PlayerTurfTxt[playerid][2], 16777215);
- PlayerTextDrawSetOutline(playerid,g_PlayerTurfTxt[playerid][2], 1);
- PlayerTextDrawSetProportional(playerid,g_PlayerTurfTxt[playerid][2], 1);
- PlayerTextDrawSetSelectable(playerid,g_PlayerTurfTxt[playerid][2], 0);
- g_PlayerTurfNotifyTxt[playerid][0] = CreatePlayerTextDraw(playerid,317.000000, 348.000000, "~g~We have won the turfwar against the ~b~~h~~h~~h~Grove ~g~in ~b~~h~~h~~h~Gangton ~g~(/turfs)");
- PlayerTextDrawAlignment(playerid,g_PlayerTurfNotifyTxt[playerid][0], 2);
- PlayerTextDrawBackgroundColor(playerid,g_PlayerTurfNotifyTxt[playerid][0], 255);
- PlayerTextDrawFont(playerid,g_PlayerTurfNotifyTxt[playerid][0], 1);
- PlayerTextDrawLetterSize(playerid,g_PlayerTurfNotifyTxt[playerid][0], 0.180000, 0.799999);
- PlayerTextDrawColor(playerid,g_PlayerTurfNotifyTxt[playerid][0], -1);
- PlayerTextDrawSetOutline(playerid,g_PlayerTurfNotifyTxt[playerid][0], 1);
- PlayerTextDrawSetProportional(playerid,g_PlayerTurfNotifyTxt[playerid][0], 1);
- PlayerTextDrawSetSelectable(playerid,g_PlayerTurfNotifyTxt[playerid][0], 0);
- g_PlayerTurfNotifyTxt[playerid][1] = CreatePlayerTextDraw(playerid,317.000000, 355.000000, "~r~We have lost the turfwar against the ~b~~h~~h~~h~Azetecas ~r~in ~b~~h~~h~~h~LS. Beach ~r~(/turfs)");
- PlayerTextDrawAlignment(playerid,g_PlayerTurfNotifyTxt[playerid][1], 2);
- PlayerTextDrawBackgroundColor(playerid,g_PlayerTurfNotifyTxt[playerid][1], 255);
- PlayerTextDrawFont(playerid,g_PlayerTurfNotifyTxt[playerid][1], 1);
- PlayerTextDrawLetterSize(playerid,g_PlayerTurfNotifyTxt[playerid][1], 0.180000, 0.799999);
- PlayerTextDrawColor(playerid,g_PlayerTurfNotifyTxt[playerid][1], -1);
- PlayerTextDrawSetOutline(playerid,g_PlayerTurfNotifyTxt[playerid][1], 1);
- PlayerTextDrawSetProportional(playerid,g_PlayerTurfNotifyTxt[playerid][1], 1);
- PlayerTextDrawSetSelectable(playerid,g_PlayerTurfNotifyTxt[playerid][1], 0);
- g_PlayerTurfNotifyTxt[playerid][2] = CreatePlayerTextDraw(playerid,317.000000, 362.000000, "~y~We have provoked a turfwar again ~b~~h~~h~~h~Vagos ~y~in ~b~~h~~h~~h~Blueberry ~y~(/findwar)");
- PlayerTextDrawAlignment(playerid,g_PlayerTurfNotifyTxt[playerid][2], 2);
- PlayerTextDrawBackgroundColor(playerid,g_PlayerTurfNotifyTxt[playerid][2], 255);
- PlayerTextDrawFont(playerid,g_PlayerTurfNotifyTxt[playerid][2], 1);
- PlayerTextDrawLetterSize(playerid,g_PlayerTurfNotifyTxt[playerid][2], 0.180000, 0.799999);
- PlayerTextDrawColor(playerid,g_PlayerTurfNotifyTxt[playerid][2], -1);
- PlayerTextDrawSetOutline(playerid,g_PlayerTurfNotifyTxt[playerid][2], 1);
- PlayerTextDrawSetProportional(playerid,g_PlayerTurfNotifyTxt[playerid][2], 1);
- PlayerTextDrawSetSelectable(playerid,g_PlayerTurfNotifyTxt[playerid][2], 0);
- g_PlayerTurfNotifyTxt[playerid][3] = CreatePlayerTextDraw(playerid,317.000000, 369.000000, "~y~We have got a turfwar again ~b~~h~~h~~h~Vagos ~y~in ~b~~h~~h~~h~Blueberry ~y~(/findwar)");
- PlayerTextDrawAlignment(playerid,g_PlayerTurfNotifyTxt[playerid][3], 2);
- PlayerTextDrawBackgroundColor(playerid,g_PlayerTurfNotifyTxt[playerid][3], 255);
- PlayerTextDrawFont(playerid,g_PlayerTurfNotifyTxt[playerid][3], 1);
- PlayerTextDrawLetterSize(playerid,g_PlayerTurfNotifyTxt[playerid][3], 0.180000, 0.799999);
- PlayerTextDrawColor(playerid,g_PlayerTurfNotifyTxt[playerid][3], -1);
- PlayerTextDrawSetOutline(playerid,g_PlayerTurfNotifyTxt[playerid][3], 1);
- PlayerTextDrawSetProportional(playerid,g_PlayerTurfNotifyTxt[playerid][3], 1);
- PlayerTextDrawSetSelectable(playerid,g_PlayerTurfNotifyTxt[playerid][3], 0);
- ShowAllGangZonesForPlayer(playerid);
- return 1;
- }
- public OnPlayerSpawn(playerid) {
- for (new i, j = sizeof(g_Turf); i < j; i++) {
- if (g_Turf[i][turfState] == TURF_STATE_ATTACKED) {
- GangZoneFlashForPlayer(playerid, g_Turf[i][turfId], COLOR_CHANGE_ALPHA(g_Team[g_Turf[i][turfAttacker]][teamColor]));
- }
- }
- PlayerTextDrawHide(playerid, g_PlayerTurfTxt[playerid][0]);
- PlayerTextDrawHide(playerid, g_PlayerTurfTxt[playerid][1]);
- PlayerTextDrawHide(playerid, g_PlayerTurfTxt[playerid][2]);
- PlayerTextDrawHide(playerid, g_PlayerTurfNotifyTxt[playerid][0]);
- PlayerTextDrawHide(playerid, g_PlayerTurfNotifyTxt[playerid][1]);
- PlayerTextDrawHide(playerid, g_PlayerTurfNotifyTxt[playerid][2]);
- PlayerTextDrawHide(playerid, g_PlayerTurfNotifyTxt[playerid][3]);
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid) {
- PlayerTextDrawHide(playerid, g_PlayerTurfTxt[playerid][0]);
- PlayerTextDrawHide(playerid, g_PlayerTurfTxt[playerid][1]);
- PlayerTextDrawHide(playerid, g_PlayerTurfTxt[playerid][2]);
- PlayerTextDrawHide(playerid, g_PlayerTurfNotifyTxt[playerid][0]);
- PlayerTextDrawHide(playerid, g_PlayerTurfNotifyTxt[playerid][1]);
- PlayerTextDrawHide(playerid, g_PlayerTurfNotifyTxt[playerid][2]);
- PlayerTextDrawHide(playerid, g_PlayerTurfNotifyTxt[playerid][3]);
- return 1;
- }
- NotifyTeam(team, type, text[]) {
- for (new i, j = GetPlayerPoolSize(); i <= j; i++) {
- if (IsPlayerConnected(i) && GetPlayerState(i) != PLAYER_STATE_WASTED && GetPlayerTeam(i) == team) {
- if (g_PlayerTurfNotifyTimer[i][type] != -1) {
- KillTimer(g_PlayerTurfNotifyTimer[i][type]);
- }
- g_PlayerTurfNotifyTimer[i][type] = SetTimerEx("OnTeamNotified", 5000, false, "ii", team, type);
- PlayerTextDrawSetString(i, g_PlayerTurfNotifyTxt[i][type], text);
- PlayerTextDrawShow(i, g_PlayerTurfNotifyTxt[i][type]);
- }
- }
- }
- forward OnTeamNotified(team, type);
- public OnTeamNotified(team, type) {
- for (new i, j = GetPlayerPoolSize(); i <= j; i++) {
- if (IsPlayerConnected(i) && GetPlayerTeam(i) == team) {
- g_PlayerTurfNotifyTimer[i][type] = -1;
- PlayerTextDrawHide(i, g_PlayerTurfNotifyTxt[i][type]);
- }
- }
- }
- public OnPlayerDeath(playerid, killerid, reason) {
- if (killerid != INVALID_PLAYER_ID) {
- if (0 <= GetPlayerTeam(playerid) < sizeof(g_Team) && 0 <= GetPlayerTeam(killerid) < sizeof(g_Team)) {
- for (new i, j = sizeof(g_Turf); i < j; i++) {
- if (IsPlayerInGangZone(playerid, g_Turf[i][turfId])) {
- if (g_Turf[i][turfState] == TURF_STATE_NORMAL) {
- if (GetPlayerTeam(killerid) != g_Turf[i][turfOwner]) {
- g_Turf[i][turfAttackerKills]++;
- if (g_Turf[i][turfAttackerKills] >= TURF_REQUIRED_KILLS) {
- g_Turf[i][turfState] = TURF_STATE_ATTACKED;
- g_Turf[i][turfAttacker] = GetPlayerTeam(killerid);
- g_Turf[i][turfTimer] = SetTimerEx("OnTurfwarEnd", TURF_REQUIRED_CAPTURETIME, false, "i", i);
- GangZoneFlashForAll(g_Turf[i][turfId], COLOR_CHANGE_ALPHA(g_Team[GetPlayerTeam(killerid)][teamColor]));
- for (new p, q = GetPlayerPoolSize(); p <= q; p++) {
- if (IsPlayerConnected(p) && IsPlayerInGangZone(p, g_Turf[i][turfId]) && GetPlayerState(p) != PLAYER_STATE_WASTED && ! GetPlayerInterior(p) && ! GetPlayerVirtualWorld(p)) {
- new
- szBuffer[156]
- ;
- strcat(szBuffer, "Turfwar in ~b~~h~~h~~h~");
- strcat(szBuffer, g_Turf[i][turfName]);
- PlayerTextDrawSetString(p, g_PlayerTurfTxt[p][0], szBuffer);
- PlayerTextDrawShow(p, g_PlayerTurfTxt[p][0]);
- format(szBuffer, sizeof(szBuffer), "%s~w~~h~: ~r~%i ~w~~h~kills with ~r~%i ~w~~h~players", g_Team[g_Turf[i][turfOwner]][teamName], g_Turf[i][turfOwnerKills], g_MembersInTurf[i][g_Turf[i][turfOwner]]);
- PlayerTextDrawSetString(p, g_PlayerTurfTxt[p][1], szBuffer);
- PlayerTextDrawColor(p, g_PlayerTurfTxt[p][1], g_Team[g_Turf[i][turfOwner]][teamColor]);
- PlayerTextDrawShow(p, g_PlayerTurfTxt[p][1]);
- format(szBuffer, sizeof(szBuffer), "%s~w~~h~: ~r~%i ~w~~h~kills with ~r~%i ~w~~h~players", g_Team[g_Turf[i][turfAttacker]][teamName], g_Turf[i][turfAttackerKills], g_MembersInTurf[i][g_Turf[i][turfAttacker]]);
- PlayerTextDrawSetString(p, g_PlayerTurfTxt[p][2], szBuffer);
- PlayerTextDrawColor(p, g_PlayerTurfTxt[p][2], g_Team[g_Turf[i][turfAttacker]][teamColor]);
- PlayerTextDrawShow(p, g_PlayerTurfTxt[p][2]);
- }
- }
- new
- szText[156]
- ;
- strcat(szText, "~y~We have provoked a turfwar against ~b~~h~~h~~h~");
- strcat(szText, g_Team[g_Turf[i][turfOwner]][teamName]);
- strcat(szText, " ~y~in ~b~~h~~h~~h~");
- strcat(szText, g_Turf[i][turfName]);
- strcat(szText, " ~y~(/findwar)");
- NotifyTeam(g_Turf[i][turfAttacker], 2, szText);
- szText[0] = EOS;
- strcat(szText, "~y~We have been attacked by ~b~~h~~h~~h~");
- strcat(szText, g_Team[g_Turf[i][turfAttacker]][teamName]);
- strcat(szText, " ~y~in ~b~~h~~h~~h~");
- strcat(szText, g_Turf[i][turfName]);
- strcat(szText, " ~y~(/findwar)");
- NotifyTeam(g_Turf[i][turfOwner], 3, szText);
- }
- }
- }
- else if (g_Turf[i][turfState] == TURF_STATE_ATTACKED) {
- if (GetPlayerTeam(killerid) == g_Turf[i][turfOwner]) {
- g_Turf[i][turfOwnerKills]++;
- for (new p, q = GetPlayerPoolSize(); p <= q; p++) {
- if (IsPlayerConnected(p) && IsPlayerInGangZone(p, g_Turf[i][turfId]) && GetPlayerState(p) != PLAYER_STATE_WASTED && ! GetPlayerInterior(p) && ! GetPlayerVirtualWorld(p)) {
- new
- szBuffer[156]
- ;
- format(szBuffer, sizeof(szBuffer), "%s~w~~h~: ~r~%i ~w~~h~kills with ~r~%i ~w~~h~players", g_Team[g_Turf[i][turfOwner]][teamName], g_Turf[i][turfOwnerKills], g_MembersInTurf[i][g_Turf[i][turfOwner]]);
- PlayerTextDrawSetString(p, g_PlayerTurfTxt[p][1], szBuffer);
- PlayerTextDrawColor(p, g_PlayerTurfTxt[p][1], g_Team[g_Turf[i][turfOwner]][teamColor]);
- }
- }
- }
- else if (GetPlayerTeam(killerid) == g_Turf[i][turfAttacker]) {
- g_Turf[i][turfAttackerKills]++;
- for (new p, q = GetPlayerPoolSize(); p <= q; p++) {
- if (IsPlayerConnected(p) && IsPlayerInGangZone(p, g_Turf[i][turfId]) && GetPlayerState(p) != PLAYER_STATE_WASTED && ! GetPlayerInterior(p) && ! GetPlayerVirtualWorld(p)) {
- new
- szBuffer[156]
- ;
- format(szBuffer, sizeof(szBuffer), "%s~w~~h~: ~r~%i ~w~~h~kills with ~r~%i ~w~~h~players", g_Team[g_Turf[i][turfAttacker]][teamName], g_Turf[i][turfAttackerKills], g_MembersInTurf[i][g_Turf[i][turfAttacker]]);
- PlayerTextDrawSetString(p, g_PlayerTurfTxt[p][2], szBuffer);
- PlayerTextDrawColor(p, g_PlayerTurfTxt[p][2], g_Team[g_Turf[i][turfAttacker]][teamColor]);
- }
- }
- }
- }
- return 1;
- }
- }
- }
- }
- return 1;
- }
- public OnPlayerEnterGangZone(playerid, zone) {
- if (0 <= GetPlayerTeam(playerid) < sizeof(g_Team) && GetPlayerState(playerid) != PLAYER_STATE_WASTED && ! GetPlayerInterior(playerid) && ! GetPlayerVirtualWorld(playerid)) {
- for (new i, j = sizeof(g_Turf); i < j; i++) {
- if (zone == g_Turf[i][turfId]) {
- new
- szTurfText[156]
- ;
- strcat(szTurfText, "~y~~h~");
- strcat(szTurfText, g_Team[g_Turf[i][turfOwner]][teamName]);
- strcat(szTurfText, "'s ");
- strcat(szTurfText, g_Turf[i][turfName]);
- GameTextForPlayer(playerid, szTurfText, 3000, 1);
- g_MembersInTurf[i][GetPlayerTeam(playerid)]++;
- if (GetPlayerTeam(playerid) != g_Turf[i][turfOwner]) {
- if (g_Turf[i][turfState] == TURF_STATE_NORMAL) {
- if (g_MembersInTurf[i][GetPlayerTeam(playerid)] >= TURF_REQUIRED_PLAYERS) {
- g_Turf[i][turfState] = TURF_STATE_PROVOKED;
- g_Turf[i][turfAttacker] = GetPlayerTeam(playerid);
- g_Turf[i][turfTimer] = SetTimerEx("OnTurfwarProvoked", TURF_REQUIRED_PROVOKETIME, false, "i", i);
- return 1;
- }
- }
- }
- else if (g_Turf[i][turfState] == TURF_STATE_ATTACKED) {
- new
- szBuffer[156]
- ;
- strcat(szBuffer, "Turfwar in ~b~~h~~h~~h~");
- strcat(szBuffer, g_Turf[i][turfName]);
- PlayerTextDrawSetString(playerid, g_PlayerTurfTxt[playerid][0], szBuffer);
- PlayerTextDrawShow(playerid, g_PlayerTurfTxt[i][0]);
- PlayerTextDrawColor(playerid, g_PlayerTurfTxt[playerid][1], g_Team[g_Turf[i][turfOwner]][teamColor]);
- PlayerTextDrawShow(playerid, g_PlayerTurfTxt[i][1]);
- PlayerTextDrawColor(playerid, g_PlayerTurfTxt[playerid][2], g_Team[g_Turf[i][turfAttacker]][teamColor]);
- PlayerTextDrawShow(playerid, g_PlayerTurfTxt[i][2]);
- if (GetPlayerTeam(playerid) == g_Turf[i][turfOwner]) {
- for (new p, q = GetPlayerPoolSize(); p <= q; p++) {
- if (IsPlayerConnected(p) && IsPlayerInGangZone(p, g_Turf[i][turfId]) && GetPlayerState(p) != PLAYER_STATE_WASTED && ! GetPlayerInterior(p) && ! GetPlayerVirtualWorld(p)) {
- format(szBuffer, sizeof(szBuffer), "%s~w~~h~: ~r~%i ~w~~h~kills with ~r~%i ~w~~h~players", g_Team[g_Turf[i][turfOwner]][teamName], g_Turf[i][turfOwnerKills], g_MembersInTurf[i][g_Turf[i][turfOwner]]);
- PlayerTextDrawSetString(p, g_PlayerTurfTxt[p][1], szBuffer);
- }
- }
- }
- else if (GetPlayerTeam(playerid) == g_Turf[i][turfAttacker]) {
- for (new p, q = GetPlayerPoolSize(); p <= q; p++) {
- if (IsPlayerConnected(p) && IsPlayerInGangZone(p, g_Turf[i][turfId]) && GetPlayerState(p) != PLAYER_STATE_WASTED && ! GetPlayerInterior(p) && ! GetPlayerVirtualWorld(p)) {
- format(szBuffer, sizeof(szBuffer), "%s~w~~h~: ~r~%i ~w~~h~kills with ~r~%i ~w~~h~players", g_Team[g_Turf[i][turfOwner]][teamName], g_Turf[i][turfOwnerKills], g_MembersInTurf[i][g_Turf[i][turfOwner]]);
- PlayerTextDrawSetString(p, g_PlayerTurfTxt[p][1], szBuffer);
- }
- }
- }
- }
- return 1;
- }
- }
- }
- return 1;
- }
- forward OnTurfwarProvoked(turfid);
- public OnTurfwarProvoked(turfid) {
- g_Turf[turfid][turfState] = TURF_STATE_ATTACKED;
- g_Turf[turfid][turfTimer] = SetTimerEx("OnTurfwarEnd", TURF_REQUIRED_CAPTURETIME, false, "i", turfid);
- new
- szText[156]
- ;
- strcat(szText, "~y~We have turfwar against ~b~~h~~h~~h~");
- strcat(szText, g_Team[g_Turf[turfid][turfOwner]][teamName]);
- strcat(szText, " ~y~in ~b~~h~~h~~h~");
- strcat(szText, g_Turf[turfid][turfName]);
- NotifyTeam(g_Turf[turfid][turfAttacker], 2, szText);
- szText[0] = EOS;
- strcat(szText, "~y~Our turf is under attacked by ~b~~h~~h~~h~");
- strcat(szText, g_Team[g_Turf[turfid][turfAttacker]][teamName]);
- strcat(szText, " ~y~in ~b~~h~~h~~h~");
- strcat(szText, g_Turf[turfid][turfName]);
- NotifyTeam(g_Turf[turfid][turfOwner], 3, szText);
- GangZoneFlashForAll(g_Turf[turfid][turfId], COLOR_CHANGE_ALPHA(g_Team[g_Turf[turfid][turfAttacker]][teamColor]));
- for (new p, q = GetPlayerPoolSize(); p <= q; p++) {
- if (IsPlayerConnected(p) && IsPlayerInGangZone(p, g_Turf[turfid][turfId]) && GetPlayerState(p) != PLAYER_STATE_WASTED && ! GetPlayerInterior(p) && ! GetPlayerVirtualWorld(p)) {
- new
- szBuffer[156]
- ;
- strcat(szBuffer, "Turfwar in ~b~~h~~h~~h~");
- strcat(szBuffer, g_Turf[turfid][turfName]);
- PlayerTextDrawSetString(p, g_PlayerTurfTxt[p][0], szBuffer);
- PlayerTextDrawShow(p, g_PlayerTurfTxt[p][0]);
- format(szBuffer, sizeof(szBuffer), "%s~w~~h~: ~r~%i ~w~~h~kills with ~r~%i ~w~~h~players", g_Team[g_Turf[turfid][turfOwner]][teamName], g_Turf[turfid][turfOwnerKills], g_MembersInTurf[turfid][g_Turf[turfid][turfOwner]]);
- PlayerTextDrawSetString(p, g_PlayerTurfTxt[p][1], szBuffer);
- PlayerTextDrawColor(p, g_PlayerTurfTxt[p][1], g_Team[g_Turf[turfid][turfOwner]][teamColor]);
- PlayerTextDrawShow(p, g_PlayerTurfTxt[p][1]);
- format(szBuffer, sizeof(szBuffer), "%s~w~~h~: ~r~%i ~w~~h~kills with ~r~%i ~w~~h~players", g_Team[g_Turf[turfid][turfAttacker]][teamName], g_Turf[turfid][turfAttackerKills], g_MembersInTurf[turfid][g_Turf[turfid][turfAttacker]]);
- PlayerTextDrawSetString(p, g_PlayerTurfTxt[p][2], szBuffer);
- PlayerTextDrawColor(p, g_PlayerTurfTxt[p][2], g_Team[g_Turf[turfid][turfAttacker]][teamColor]);
- PlayerTextDrawShow(p, g_PlayerTurfTxt[p][2]);
- }
- }
- }
- forward OnTurfwarEnd(turfid);
- public OnTurfwarEnd(turfid) {
- g_Turf[turfid][turfTimer] = -1;
- new
- iScores[2],
- szText[156]
- ;
- iScores[0] = g_Turf[turfid][turfOwnerKills] + g_MembersInTurf[turfid][g_Turf[turfid][turfOwner]];
- iScores[1] = g_Turf[turfid][turfAttackerKills] + g_MembersInTurf[turfid][g_Turf[turfid][turfAttacker]];
- if (iScores[0] < iScores[1]) {
- strcat(szText, "[TURF SYSTEM]~y~Turf has been sucessfully captured Against ~b~~h~~h~~h~");
- strcat(szText, g_Team[g_Turf[turfid][turfOwner]][teamName]);
- strcat(szText, " ~y~in ~b~~h~~h~~h~");
- strcat(szText, g_Turf[turfid][turfName]);
- NotifyTeam(g_Turf[turfid][turfAttacker], 1, szText);
- szText[0] = EOS;
- strcat(szText, "[TURF SYSTEM]~y~You have failed to attack ~b~~h~~h~~h~");
- strcat(szText, g_Team[g_Turf[turfid][turfAttacker]][teamName]);
- strcat(szText, " ~y~in ~b~~h~~h~~h~");
- strcat(szText, g_Turf[turfid][turfName]);
- NotifyTeam(g_Turf[turfid][turfOwner], 0, szText);
- format(szText, sizeof(szText), "[TURF SYSTEM]"LIGHT":-The last turf score""\"%s\"were: %s - %i, %s - %i.", g_Turf[turfid][turfName], g_Team[g_Turf[turfid][turfOwner]][teamName], iScores[0], g_Team[g_Turf[turfid][turfAttacker]][teamName], iScores[1]);
- for (new i, j = sizeof(g_Team); i < j; i++) {
- if (GetPlayerTeam(i) == g_Turf[turfid][turfOwner]) {
- SendClientMessage(i, COLOR_GREEN, szText);
- }
- else if (GetPlayerTeam(i) == g_Turf[turfid][turfAttacker]) {
- GivePlayerMoney(i, 30000);
- SetPlayerScore(i, GetPlayerScore(i) + 8);
- SendClientMessage(i, COLOR_GREEN,"[TURF SYSTEM]:-"GREEN""WHITE" You have earned {663300}+$30000 "WHITE" cash and {663300}+8 score"WHITE" for capturing the Turf. ");
- SendClientMessage(i, COLOR_WHITE, szText);
- }
- }
- g_Turf[turfid][turfOwner] = g_Turf[turfid][turfAttacker];
- }
- else {
- strcat(szText, "[TURF SYSTEM]~y~Turf has been sucessfully captured Against ~b~~h~~h~~h~");
- strcat(szText, g_Team[g_Turf[turfid][turfAttacker]][teamName]);
- strcat(szText, " ~y~in ~b~~h~~h~~h~");
- strcat(szText, g_Turf[turfid][turfName]);
- NotifyTeam(g_Turf[turfid][turfOwner], 1, szText);
- szText[0] = EOS;
- strcat(szText, "[TURF SYSTEM]~y~You have failed to attack ~b~~h~~h~~h~");
- strcat(szText, g_Team[g_Turf[turfid][turfOwner]][teamName]);
- strcat(szText, " ~y~in ~b~~h~~h~~h~");
- strcat(szText, g_Turf[turfid][turfName]);
- NotifyTeam(g_Turf[turfid][turfAttacker], 0, szText);
- format(szText, sizeof(szText), "[TURF SYSTEM]"GREEN":-The last turf score""\"%s\"were: %s - %i, %s - %i.", g_Turf[turfid][turfName], g_Team[g_Turf[turfid][turfOwner]][teamName], iScores[0], g_Team[g_Turf[turfid][turfAttacker]][teamName], iScores[1]);
- for (new i, j = sizeof(g_Team); i < j; i++) {
- if (GetPlayerTeam(i) == g_Turf[turfid][turfOwner]) {
- GivePlayerMoney(i, 30000);
- SetPlayerScore(i, GetPlayerScore(i) + 8);
- SendClientMessage(i, COLOR_GREEN, "[TURF SYSTEM]:-"WHITE"You have earned ,{663300}+$30000 "WHITE" cash and {663300}+8 score"WHITE" for capturing the Turf. ");
- SendClientMessage(i, COLOR_WHITE, szText);
- }
- else if (GetPlayerTeam(i) == g_Turf[turfid][turfAttacker]) {
- SendClientMessage(i, COLOR_WHITE, szText);
- }
- }
- }
- g_Turf[turfid][turfState] = TURF_STATE_NORMAL;
- g_Turf[turfid][turfAttacker] = NO_TEAM;
- g_Turf[turfid][turfAttackerKills] = 0;
- g_Turf[turfid][turfOwnerKills] = 0;
- GangZoneStopFlashForAll(g_Turf[turfid][turfId]);
- GangZoneShowForAll(g_Turf[turfid][turfId], COLOR_CHANGE_ALPHA(g_Team[g_Turf[turfid][turfOwner]][teamColor]));
- for (new p, q = GetPlayerPoolSize(); p <= q; p++) {
- if (IsPlayerConnected(p) && IsPlayerInGangZone(p, g_Turf[turfid][turfId]) && GetPlayerState(p) != PLAYER_STATE_WASTED && ! GetPlayerInterior(p) && ! GetPlayerVirtualWorld(p)) {
- PlayerTextDrawHide(p, g_PlayerTurfTxt[p][0]);
- PlayerTextDrawHide(p, g_PlayerTurfTxt[p][1]);
- PlayerTextDrawHide(p, g_PlayerTurfTxt[p][2]);
- }
- }
- }
- public OnPlayerLeaveGangZone(playerid, zone) {
- if (0 <= GetPlayerTeam(playerid) < sizeof(g_Team)) {
- for (new i, j = sizeof(g_Turf); i < j; i++) {
- if (zone == g_Turf[i][turfId]) {
- g_MembersInTurf[i][GetPlayerTeam(playerid)]--;
- if (g_Turf[i][turfState] == TURF_STATE_PROVOKED) {
- if (g_MembersInTurf[i][GetPlayerTeam(playerid)] < TURF_REQUIRED_PLAYERS) {
- g_Turf[i][turfState] = TURF_STATE_NORMAL;
- g_Turf[i][turfAttacker] = NO_TEAM;
- KillTimer(g_Turf[i][turfTimer]);
- g_Turf[i][turfTimer] = -1;
- return 1;
- }
- }
- else if (g_Turf[i][turfState] == TURF_STATE_ATTACKED) {
- PlayerTextDrawHide(playerid, g_PlayerTurfTxt[playerid][0]);
- PlayerTextDrawHide(playerid, g_PlayerTurfTxt[playerid][1]);
- PlayerTextDrawHide(playerid, g_PlayerTurfTxt[playerid][2]);
- if (g_MembersInTurf[i][GetPlayerTeam(playerid)] < TURF_REQUIRED_PLAYERS) {
- OnTurfwarEnd(i);
- KillTimer(g_Turf[i][turfTimer]);
- g_Turf[i][turfTimer] = -1;
- g_Turf[i][turfState] = TURF_STATE_NORMAL;
- g_Turf[i][turfAttacker] = NO_TEAM;
- g_Turf[i][turfAttackerKills] = 0;
- g_Turf[i][turfOwnerKills] = 0;
- GangZoneStopFlashForAll(g_Turf[i][turfId]);
- GangZoneShowForAll(g_Turf[i][turfId], COLOR_CHANGE_ALPHA(g_Team[g_Turf[i][turfOwner]][teamColor]));
- for (new p, q = GetPlayerPoolSize(); p <= q; p++) {
- if (IsPlayerConnected(p) && IsPlayerInGangZone(p, g_Turf[i][turfId])) {
- PlayerTextDrawHide(p, g_PlayerTurfTxt[p][0]);
- PlayerTextDrawHide(p, g_PlayerTurfTxt[p][1]);
- PlayerTextDrawHide(p, g_PlayerTurfTxt[p][2]);
- }
- }
- return 1;
- }
- else {
- if (GetPlayerTeam(playerid) == g_Turf[i][turfOwner]) {
- for (new p, q = GetPlayerPoolSize(); p <= q; p++) {
- if (IsPlayerConnected(p) && IsPlayerInGangZone(p, g_Turf[i][turfId]) && GetPlayerState(p) != PLAYER_STATE_WASTED && ! GetPlayerInterior(p) && ! GetPlayerVirtualWorld(p)) {
- new
- szBuffer[156]
- ;
- format(szBuffer, sizeof(szBuffer), "%s~w~~h~: ~r~%i ~w~~h~kills with ~r~%i ~w~~h~players", g_Team[g_Turf[i][turfOwner]][teamName], g_Turf[i][turfOwnerKills], g_MembersInTurf[i][g_Turf[i][turfOwner]]);
- PlayerTextDrawSetString(p, g_PlayerTurfTxt[p][1], szBuffer);
- PlayerTextDrawColor(p, g_PlayerTurfTxt[p][1], g_Team[g_Turf[i][turfOwner]][teamColor]);
- }
- }
- }
- else if (GetPlayerTeam(playerid) == g_Turf[i][turfAttacker]) {
- for (new p, q = GetPlayerPoolSize(); p <= q; p++) {
- if (IsPlayerConnected(p) && IsPlayerInGangZone(p, g_Turf[i][turfId]) && GetPlayerState(p) != PLAYER_STATE_WASTED && ! GetPlayerInterior(p) && ! GetPlayerVirtualWorld(p)) {
- new
- szBuffer[156]
- ;
- format(szBuffer, sizeof(szBuffer), "%s~w~~h~: ~r~%i ~w~~h~kills with ~r~%i ~w~~h~players", g_Team[g_Turf[i][turfOwner]][teamName], g_Turf[i][turfOwnerKills], g_MembersInTurf[i][g_Turf[i][turfOwner]]);
- PlayerTextDrawSetString(p, g_PlayerTurfTxt[p][2], szBuffer);
- PlayerTextDrawColor(p, g_PlayerTurfTxt[p][2], g_Team[g_Turf[i][turfAttacker]][teamColor]);
- }
- }
- }
- return 1;
- }
- }
- }
- }
- }
- return 1;
- }
Add Comment
Please, Sign In to add comment