#include #include #include #include #define COLOR_GREY 0xAFAFAFAA #define COLOR_GREEN 0x33AA33AA #define COLOR_RED 0xAA3333AA #define COLOR_YELLOW 0xFFFF00AA #define COLOR_PINK 0xFF66FFAA #define COLOR_BLUE 0x0000BBAA #define COLOR_LIGHTBLUE 0x33CCFFAA #define COLOR_DARKRED 0x660000AA #define COLOR_ORANGE 0xFF9900AA #define COLOR_WHITE 0xFFFFFFAA //Team Defines #define TEAM_SINATTACK 0 #define TEAM_GUESTATTACK 1 #define TEAM_SINDEFEND 2 #define TEAM_GUESTDEFEND 3 #define TEAM_SINTDM 4 #define TEAM_GUESTTDM 5 #define TEAM_REF 6 static gTeam[MAX_PLAYERS]; new Name[256]; new gPlayerClass[MAX_PLAYERS]; new sendername[MAX_PLAYER_NAME]; new tkscore[MAX_PLAYERS]; new MAXKILLS; new wpn1, wpn2, wpn3; new ammo1, ammo2, ammo3; new DeathCount[MAX_PLAYERS]; new sCount1, sCount2; new winner[256]; // Round duration new gRoundTime = 3600000; // 60 mins //new gRoundTime = 900000; //15 mins //new gRoundTime = 300000; // 5 mins #define DEFEND_POINT1 1 new Float:area51checkpoint[DEFEND_POINT1][4] = { {-22.2549,-55.6575,1003.5469,10} }; //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- main() { print("\n----------------------------------"); print(" SFTDM by Cam (2006)\n"); print("----------------------------------\n"); } //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- public OnGameModeInit() { SetGameModeText("San Fierro TDM"); SetTeamCount(7); ShowNameTags(1); ShowPlayerMarkers(1); SetWorldTime(19); rConfig(); //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- AddPlayerClass(260,-2062.5583,237.4662,35.7149,268.8936,22,272,25,40,4,1); //SINATTACK AddPlayerClass(260,-2062.5583,237.4662,35.7149,268.8936,22,272,25,40,4,1); //SINATTACK AddPlayerClass(260,-2062.5583,237.4662,35.7149,268.8936,22,272,25,40,4,1); //SINATTACK AddPlayerClass(260,-2062.5583,237.4662,35.7149,268.8936,22,272,25,40,4,1); //SINATTACK //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- AddPlayerClass(249,-2653.6443,1388.2767,7.1301,212.8453,23,272,29,270,5,1); //GUESTATTACK AddPlayerClass(249,-2653.6443,1388.2767,7.1301,212.8453,23,272,29,270,5,1); //GUESTATTACK AddPlayerClass(249,-2653.6443,1388.2767,7.1301,212.8453,23,272,29,270,5,1); //GUESTATTACK AddPlayerClass(249,-2653.6443,1388.2767,7.1301,212.8453,23,272,29,270,5,1); //GUESTATTACK //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- AddPlayerClass(259,-2642.2583,-274.9985,7.5393,135.0036,25,40,32,250,9,1); //SINDEFEND AddPlayerClass(259,-2642.2583,-274.9985,7.5393,135.0036,25,40,32,250,9,1); //SINDEFEND AddPlayerClass(259,-2642.2583,-274.9985,7.5393,135.0036,25,40,32,250,9,1); //SINDEFEND AddPlayerClass(259,-2642.2583,-274.9985,7.5393,135.0036,25,40,32,250,9,1); //SINDEFEND //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- AddPlayerClass(118,-2157.2119,649.5484,52.3672,267.0820,24,70,31,250,4,1); //GUESTDEFEND AddPlayerClass(118,-2157.2119,649.5484,52.3672,267.0820,24,70,31,250,4,1); //GUESTDEFEND AddPlayerClass(118,-2157.2119,649.5484,52.3672,267.0820,24,70,31,250,4,1); //GUESTDEFEND AddPlayerClass(118,-2157.2119,649.5484,52.3672,267.0820,24,70,31,250,4,1); //GUESTDEFEND //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- AddPlayerClass(50,-1377.4271,466.0897,7.1875,1.0348,22,272,30,300,9,1); //SINTDM AddPlayerClass(50,-1377.4271,466.0897,7.1875,1.0348,22,272,30,300,9,1); //SINTDM AddPlayerClass(50,-1377.4271,466.0897,7.1875,1.0348,22,272,30,300,9,1); //SINTDM AddPlayerClass(50,-1377.4271,466.0897,7.1875,1.0348,22,272,30,300,9,1); //SINTDM //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- AddPlayerClass(253,-1754.9976,958.5851,24.8828,163.2550,25,40,24,70,4,1); //GUESTTDM AddPlayerClass(253,-1754.9976,958.5851,24.8828,163.2550,25,40,24,70,4,1); //GUESTTDM AddPlayerClass(253,-1754.9976,958.5851,24.8828,163.2550,25,40,24,70,4,1); //GUESTTDM AddPlayerClass(253,-1754.9976,958.5851,24.8828,163.2550,25,40,24,70,4,1); //GUESTTDM //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- AddPlayerClass(274,-2665.4282,635.6348,14.4531,179.8403,33,40,23,272,4,1); //REF //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- AddStaticVehicle(401,-2118.9319,194.8274,35.7567,2.7513,-1,-1); AddStaticVehicle(401,-2036.5212,305.6321,35.9090,359.8144,-1,-1); AddStaticVehicle(413,-2087.8369,255.6416,37.0341,357.9168,-1,-1); AddStaticVehicle(457,-2652.9031,-297.2605,8.0617,315.6009,-1,-1); AddStaticVehicle(457,-2659.7441,-289.6562,8.0920,313.6239,-1,-1); //Trains // AddStaticVehicle(537,-1943.3127,158.0254,27.0006,357.3614,121,1); // AddStaticVehicle(569,-1943.3127,158.0254,27.0006,357.3614,121,1); // AddStaticVehicle(569,-1943.3127,158.0254,27.0006,357.3614,121,1); // AddStaticVehicle(569,-1943.3127,158.0254,27.0006,357.3614,121,1); SetTimer("GameModeExitFunc", gRoundTime, 0); return 1; } //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- public OnPlayerText(playerid, text[]) { new strName[MAX_PLAYER_NAME]; new strOut[MAX_STRING]; new i; i++; GetPlayerName(playerid, strName, sizeof(strName)); if(text[0] == '!') { new string[MAX_STRING]; strmid(string, text, 1, strlen(text), MAX_STRING); format(strOut, MAX_STRING, "[TC] [%s]: %s", strName, string); for(i = 0; i"); return 1; } if (strcmp(cmdtext[3], " ", true, 1) != 0) return 0; GetPlayerName(playerid, sendername, MAX_PLAYER_NAME); format(string, 255, "* %s %s", sendername, cmdtext[4]); SendClientMessageToAll(COLOR_WHITE,string); return 1; } //------------------- /scores if(strcmp(cmdtext, "/scores", true)==0) { new sstring[256], sstring2[256]; format(sstring, sizeof(sstring), "%s: %d Kills", TEAM_SINTDM, sCount1); format(sstring2, sizeof(sstring2), "%s: %d Kills", TEAM_GUESTTDM, sCount2); SendClientMessageToAll(COLOR_YELLOW, sstring); SendClientMessageToAll(COLOR_YELLOW, sstring2); return 1; } //------------------- /reset if(strcmp(cmdtext, "/reset", true)==0) { if(IsPlayerConnected(playerid) && IsPlayerAdmin(playerid)) { SendClientMessageToAll(COLOR_YELLOW, "Clan War Reset!"); sCount1 = 0; sCount2 = 0; for(new i=0;i ' ') && ((index - offset) < (sizeof(result) - 1))) { result[index - offset] = string[index]; index++; } result[index - offset] = EOS; return result; } //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- rConfig() { new File:fhandle; new cname[256]; new temp[256]; new value[256]; fhandle = fopen("ClanConfig.txt",io_readwrite); while(fread(fhandle,temp,sizeof(temp),false)) { cname = strtok(temp,0); value = strtok(temp,(strlen(cname)+1)); if(strcmp(cname,"Team-1",true) == 0) strins(TEAM_SINTDM,value,0,MAX_STRING); else if(strcmp(cname,"Team-2",true) == 0) strins(TEAM_GUESTTDM,value,0,MAX_STRING); else if(strcmp(cname,"Max-Clan-Kills",true) == 0) MAXKILLS = strval(value); else if(strcmp(cname,"Weapon1",true) == 0) wpn1 = strval(value); else if(strcmp(cname,"Weapon2",true) == 0) wpn2 = strval(value); else if(strcmp(cname,"Weapon3",true) == 0) wpn3 = strval(value); else if(strcmp(cname,"Ammo1",true) == 0) ammo1 = strval(value); else if(strcmp(cname,"Ammo2",true) == 0) ammo2 = strval(value); else if(strcmp(cname,"Ammo3",true) == 0) ammo3 = strval(value); } fclose(fhandle); return 1; } //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- iStats() { new File:fhandle; new temp[256], temp2[256], temp3[256]; fhandle = fopen("ClanStats.txt",io_append); format(temp,sizeof(temp),"ClanWar %s VS %s\r\n",TEAM_SINTDM,TEAM_GUESTTDM); format(temp2, sizeof(temp2), "Winner: %s\r\n",winner); format(temp3, sizeof(temp3), "%s: %d || %s: %d\r\n", TEAM_SINTDM, sCount1, TEAM_GUESTTDM, sCount2); fwrite(fhandle,temp); fwrite(fhandle,temp2); fwrite(fhandle,temp3); fclose(fhandle); } //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- sStats() { for(new i=0;i