Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // [GM] Torran's Team Deathmatch
- // Made by Joe Torran C
- // DO NOT REMOVE THESE CREDITS
- #include <a_samp>
- #define TEAM_GROVE 1
- #define TEAM_BALLAS 2
- #define colorRed 0xFF0000FF
- #define colorGrey 0x8F8F8F8F
- #define colorGreen 0x008000FF
- #define colorPurple 0x800080FF
- #define colorYellow 0xFFFF00FF
- #define MINUTES 30 // Change this to how many minutes you want the server to last
- forward UpdateTextdraw();
- forward EndRound();
- forward RestartServer();
- new Float:GroveSpawns[][4] =
- {
- {2473.3008, -1683.3898, 13.4502, 293.7029},
- {2495.7344, -1686.4888, 13.5156, 346.3434},
- {2510.3362, -1664.3955, 13.5796, 149.4711},
- {2488.2644, -1646.2657, 14.0703, 141.4448}
- };
- new Float:BallasSpawns[][4] =
- {
- {2438.4995, -1221.7570, 25.1250, 122.8658},
- {2442.0217, -1233.9084, 26.1863, 57.6919},
- {2424.2144, -1249.0165, 23.8363, 57.3786},
- {2402.0132, -1221.6392, 25.7077, 228.7735}
- };
- new Text:ServerInfo;
- new GroveKills;
- new BallasKills;
- main()
- {
- print("\n >> || !! ** Torran's Team Deathmatch ** !! || << \n");
- }
- public OnPlayerConnect(playerid)
- {
- new str[128];
- format(str, 128, "%s has joined Torrans TDM", GetName(playerid));
- SendClientMessageToAll(colorYellow, str);
- TextDrawShowForPlayer(playerid, Text:ServerInfo);
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- new str[128];
- switch(reason)
- {
- case 0:
- {
- format(str, 128, "%s has left Torrans TDM - Reason: Lost Connection", GetName(playerid));
- SendClientMessageToAll(colorYellow, str);
- }
- case 1:
- {
- format(str, 128, "%s has left Torrans TDM - Reason: Leaving", GetName(playerid));
- SendClientMessageToAll(colorYellow, str);
- }
- case 2:
- {
- format(str, 128, "%s has left Torrans TDM - Reason: Kicked/Banned", GetName(playerid));
- SendClientMessageToAll(colorYellow, str);
- }
- }
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- switch(classid)
- {
- case 0:
- {
- GameTextForPlayer(playerid, "~g~Team Grove", 1000, 4);
- }
- case 1:
- {
- GameTextForPlayer(playerid, "~g~Team Grove", 1000, 4);
- }
- case 2:
- {
- GameTextForPlayer(playerid, "~g~Team Grove", 1000, 4);
- }
- case 3:
- {
- GameTextForPlayer(playerid, "~p~Team Ballas", 1000, 4);
- }
- case 4:
- {
- GameTextForPlayer(playerid, "~p~Team Ballas", 1000, 4);
- }
- case 5:
- {
- GameTextForPlayer(playerid, "~p~Team Ballas", 1000, 4);
- }
- }
- SetPlayerColor(playerid, colorGrey);
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- switch(GetPlayerTeam(playerid))
- {
- case TEAM_GROVE:
- {
- new rand = random(sizeof GroveSpawns);
- SetPlayerFacingAngle(playerid, GroveSpawns[rand][3]);
- SetPlayerPos(playerid, GroveSpawns[rand][0], GroveSpawns[rand][1], GroveSpawns[rand][2]);
- SetCameraBehindPlayer(playerid);
- SetPlayerColor(playerid, colorGreen);
- }
- case TEAM_BALLAS:
- {
- new rand = random(sizeof BallasSpawns);
- SetPlayerFacingAngle(playerid, BallasSpawns[rand][3]);
- SetPlayerPos(playerid, BallasSpawns[rand][0], BallasSpawns[rand][1], BallasSpawns[rand][2]);
- SetCameraBehindPlayer(playerid);
- SetPlayerColor(playerid, colorPurple);
- }
- }
- return 1;
- }
- public OnPlayerDeath(playerid, killerid)
- {
- if(IsPlayerConnected(killerid))
- {
- if(GetPlayerTeam(killerid) == TEAM_GROVE)
- {
- GroveKills ++;
- }
- else if(GetPlayerTeam(killerid) == TEAM_BALLAS)
- {
- BallasKills ++;
- }
- }
- if(GetPlayerTeam(killerid) == GetPlayerTeam(playerid))
- {
- SendClientMessage(killerid, colorRed, "Do not teamkill, You have been punished");
- GivePlayerMoney(killerid, -1000);
- SetPlayerScore(killerid, GetPlayerScore(playerid) -1);
- }
- else
- {
- GivePlayerMoney(killerid, 1000);
- SetPlayerScore(killerid, GetPlayerScore(playerid) +1);
- }
- return 1;
- }
- public OnGameModeInit()
- {
- SetGameModeText("Torran's TDM");
- AddPlayerClassEx(TEAM_GROVE, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
- AddPlayerClassEx(TEAM_GROVE, 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
- AddPlayerClassEx(TEAM_GROVE, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
- AddPlayerClassEx(TEAM_BALLAS, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
- AddPlayerClassEx(TEAM_BALLAS, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
- AddPlayerClassEx(TEAM_BALLAS, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
- AddStaticVehicle(579, 2443.5183, -1635.7461, 13.4134, 359.3588, 86, 86); // GroveVeh1
- AddStaticVehicle(475, 2466.3037, -1655.0808, 13.1146, 90.0831, 86, 86); // GroveVeh2
- AddStaticVehicle(567, 2468.5054, -1671.0854, 13.2716, 7.9673, 86, 86); // GroveVeh3
- AddStaticVehicle(579, 2473.2747, -1693.1956, 13.5058, 0.5419, 86, 86); // GroveVeh4
- AddStaticVehicle(567, 2486.3845, -1684.1335, 13.2882, 90.0206, 86, 86); // GroveVeh5
- AddStaticVehicle(492, 2504.8928, -1680.0482, 13.2411, 319.2745, 86, 86); // GroveVeh6
- AddStaticVehicle(579, 2508.9285, -1666.5764, 13.4543, 14.5889, 86, 86); // GroveVeh7
- AddStaticVehicle(492, 2501.9983, -1656.5300, 13.2259, 242.1771, 86, 86); // GroveVeh8
- AddStaticVehicle(412, 2485.2864, -1653.9381, 13.2178, 89.7112, 86, 86); // GroveVeh9
- AddStaticVehicle(515, 2424.5168, -1641.3522, 14.5363, 181.0441, 86, 86); // GroveVeh10
- AddStaticVehicle(567, 2423.2512, -1242.9197, 23.9859, 3.7084, 99, 81); // BallasVehVeh1
- AddStaticVehicle(567, 2426.5122, -1242.9724, 24.0399, 5.4733, 97, 96); // BallasVeh2
- AddStaticVehicle(567, 2430.7012, -1242.7971, 24.1264, 4.1070, 93, 64); // BallasVeh3
- AddStaticVehicle(567, 2434.9531, -1242.8007, 24.1783, 3.5572, 90, 96); // BallasVeh4
- AddStaticVehicle(459, 2436.0439, -1223.5881, 25.1417, 180.4310, 28, 28); // BallasVeh5
- AddStaticVehicle(459, 2431.1714, -1223.4000, 25.3555, 177.9173, 44, 44); // BallasVeh6
- AddStaticVehicle(579, 2403.2712, -1222.2617, 25.3652, 265.4642, 53, 53); // BallasVeh7
- AddStaticVehicle(579, 2403.0918, -1225.8868, 24.5954, 267.0836, 42, 42); // BallasVeh8
- AddStaticVehicle(468, 2406.1084, -1230.6228, 23.5291, 266.9653, 6, 6); // BallasVeh9
- AddStaticVehicle(468, 2406.2070, -1232.0331, 23.4677, 259.7325, 46, 46); // BallasVeh10
- AddStaticVehicle(468, 2406.4124, -1233.1885, 23.4817, 269.7499, 53, 53); // BallasVeh11
- AddStaticVehicle(461, 2406.3679, -1235.4971, 23.3928, 269.6771, 37, 1); // BallasVeh12
- AddStaticVehicle(461, 2406.3005, -1238.1947, 23.4105, 270.2692, 53, 1); // BallasVeh13
- AddStaticVehicle(461, 2405.8914, -1236.7000, 23.3766, 282.7488, 43, 1); // BallasVeh14
- ServerInfo = TextDrawCreate(500.000000, 110.000000, "~g~Server Info:~n~~n~~w~Players Online: %d~n~Kills by Grove: %d~n~Kills by Ballas: %d~n~~n~~g~Made by Joe Torran C");
- TextDrawBackgroundColor(ServerInfo, 255);
- TextDrawFont(ServerInfo, 1);
- TextDrawLetterSize(ServerInfo, 0.300000, 1.000000);
- TextDrawColor(ServerInfo, -1);
- TextDrawSetOutline(ServerInfo, 1);
- TextDrawSetProportional(ServerInfo, 1);
- TextDrawUseBox(ServerInfo, 1);
- TextDrawBoxColor(ServerInfo, 255);
- TextDrawTextSize(ServerInfo, 620.000000, 0.000000);
- SetTimer("UpdateTextdraw", 1000, 1);
- SetTimer("EndRound", MINUTES*60*1000, 0);
- return 1;
- }
- public UpdateTextdraw()
- {
- new str[128];
- format(str, 128, "~g~Server Info:~n~~n~~w~Players Online: %d~n~Kills by Grove: %d~n~Kills by BallasVeh: %d~n~~n~~g~Made by Joe Torran C", GetOnlinePlayers(), GroveKills, BallasKills);
- return TextDrawSetString(Text:ServerInfo, str);
- }
- public EndRound()
- {
- if(GroveKills > BallasKills)
- {
- GameTextForAll("~g~Team Grove Wins!", 5000, 4);
- }
- else if(GroveKills < BallasKills)
- {
- GameTextForAll("~p~Team Ballas Wins!", 5000, 4);
- }
- else if(GroveKills == BallasKills)
- {
- GameTextForAll("~w~Its a draw!", 5000, 4);
- }
- SetTimer("RestartServer", 5000, 0);
- return 1;
- }
- public RestartServer()
- {
- SendRconCommand("gmx");
- return 1;
- }
- stock GetName(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, sizeof name);
- return name;
- }
- stock GetOnlinePlayers()
- {
- new count, g = GetMaxPlayers();
- for(new d; d < g; d++) if(IsPlayerConnected(d) && !IsPlayerNPC(d)) count++;
- return count;
- }
Advertisement
Add Comment
Please, Sign In to add comment