Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- //----VARIABLES//
- new gTeam[MAX_PLAYERS];
- new ObjectiveAttackPlayer=(-1);
- new ObjectiveReached=0;
- //----Useless----//
- #pragma unused ObjectiveAttackPlayer
- //----TEAMS----//
- #define TEAM_DEFENDERS 0
- #define TEAM_ATTACKERS 1
- //----COLOR TEAMS----//
- #define Attack_Color (0xFF0000AA)
- #define Defend_Color (0x0000FFAA)
- //----FORWARDS----//
- forward Finshed();
- forward Finshed2(playerid);
- forward EnableTDAttack(playerid);
- forward EnableTDDefend(playerid);
- forward DisableTDS(playerid);
- //----COLOR DEFINES----//
- #define COLOR_SYSTEM 0xEFEFF7AA
- #define COLOR_WHITE 0xFFFFFFFF
- #define COLOR_RED 0xFF3333AA
- #define OBJECTIVE_COLOR 0xAA0000FF
- //----CAR STOLEN----//
- #define OBJECTIVE_VEHICLE 1
- //----Objectives Textdraw----//
- new Text:ObjectiveTD[MAX_PLAYERS];
- main()
- {
- print("\n----------------------------------");
- print("Grand Theft Heli");
- print("----------------------------------\n");
- }
- public OnGameModeInit()
- {
- SetGameModeText("Grand Theft Heli");
- UsePlayerPedAnims();
- SetTimer("Finshed2",300000,false);
- // Teams Spawn
- AddPlayerClass(200,-1943.3949,562.1638,35.1795,336.0581,0,0,0,0,0,0); // Attackers
- AddPlayerClass(280,-1669.3516,693.7178,30.6016,67.0087,0,0,0,0,0,0); // Defenders
- //Objective Car
- AddStaticVehicleEx(487,-1678.68040000,704.98970000,30.80830000,87.06310000,0,1,10); //Maverick
- // Other Cars
- AddStaticVehicleEx(597,-1708.51730000,705.01540000,24.50220000,179.34580000,-1,1,8); //Police Car (SFPD)
- AddStaticVehicleEx(597,-1708.69560000,687.22030000,24.50290000,182.52010000,-1,1,8); //Police Car (SFPD)
- AddStaticVehicleEx(597,-1708.66360000,678.13560000,24.49810000,180.49480000,-1,1,8); //Police Car (SFPD)
- AddStaticVehicleEx(597,-1708.53820000,663.58940000,24.50220000,180.49480000,-1,1,8); //Police Car (SFPD)
- AddStaticVehicleEx(597,-1713.61780000,648.69490000,24.50660000,269.94740000,-1,1,8); //Police Car (SFPD)
- AddStaticVehicleEx(491,-1926.39590000,584.81790000,34.88930000,358.51820000,-1,1,8); //Virgo
- AddStaticVehicleEx(491,-1929.39450000,584.68380000,34.89120000,358.92720000,-1,1,8); //Virgo
- AddStaticVehicleEx(491,-1932.38670000,585.06610000,34.88210000,0.15180000,-1,1,8); //Virgo
- AddStaticVehicleEx(491,-1935.28920000,584.99550000,34.88280000,2.12450000,-1,1,8); //Virgo
- AddStaticVehicleEx(491,-1937.96880000,585.79300000,34.86920000,359.60750000,-1,1,8); //Virgo
- AddStaticVehicleEx(491,-1941.28190000,585.69310000,34.86910000,358.64710000,-1,1,8); //Virgo
- AddStaticVehicleEx(491,-1944.20040000,585.01780000,34.88630000,358.94910000,-1,1,8); //Virgo
- AddStaticVehicleEx(491,-1947.36080000,585.55220000,34.87620000,359.83590000,-1,1,8); //Virgo
- AddStaticVehicleEx(491,-1950.03970000,584.98730000,34.88230000,1.19830000,-1,1,8); //Virgo
- AddStaticVehicleEx(491,-1916.08730000,599.34470000,34.77190000,267.63570000,-1,1,8); //Virgo
- //Objectives
- for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
- {
- ObjectiveTD[playerid] = TextDrawCreate(128.000000, 344.000000, " ");
- TextDrawBackgroundColor(ObjectiveTD[playerid], 255);
- TextDrawFont(ObjectiveTD[playerid], 1);
- TextDrawLetterSize(ObjectiveTD[playerid], 0.429999, 1.000000);
- TextDrawColor(ObjectiveTD[playerid], -16776961);
- TextDrawSetOutline(ObjectiveTD[playerid], 0);
- TextDrawSetProportional(ObjectiveTD[playerid], 1);
- TextDrawSetShadow(ObjectiveTD[playerid], 1);
- }
- return 1;
- }
- public OnGameModeExit()
- {
- for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
- {
- TextDrawDestroy(ObjectiveTD[playerid]);
- }
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetPlayerPos(playerid, 1644.4078,-1133.8214,58.2172);
- SetPlayerCameraPos(playerid, 1647.6301,-1134.5725,58.2489);
- SetPlayerCameraLookAt(playerid, 1644.4078,-1133.8214,58.2172);
- SetPlayerFacingAngle(playerid,258.5584);
- if(classid == 0)
- {
- GameTextForPlayer(playerid,"~r~Attackers",5000,4);
- gTeam[playerid] = TEAM_ATTACKERS;
- }
- else if(classid == 1)
- {
- GameTextForPlayer(playerid,"~b~Defenders",5000,4);
- gTeam[playerid] = TEAM_DEFENDERS;
- }
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- new vehicleid;
- if(newstate == PLAYER_STATE_DRIVER)
- {
- vehicleid = GetPlayerVehicleID(playerid);
- if(gTeam[playerid] == TEAM_ATTACKERS && vehicleid == OBJECTIVE_VEHICLE)
- {
- SetPlayerColor(playerid,OBJECTIVE_COLOR);
- GameTextForPlayer(playerid,"~w~Take the ~r~helicopter ~w~back to the spawn!",3000,5);
- ObjectiveAttackPlayer = playerid;
- }
- else if(gTeam[playerid] == TEAM_DEFENDERS && vehicleid == OBJECTIVE_VEHICLE) {
- GameTextForPlayer(playerid,"~r~ HELICOPTER IS BEING STOLEN ~n~~w~ SHOOT IT",3000,5);
- }
- }
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- SetPlayerColor(playerid,0x888888FF);
- SendClientMessage(playerid,COLOR_WHITE,"Mission: Grand Theft Heli 1");
- TextDrawSetString(ObjectiveTD[playerid]," " );
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- SetPlayerCheckpoint(playerid,-1981.0564,579.5828,35.4741,5.0);
- SetPlayerWorldBounds(playerid, -1579.656, -2004.552, 767.6402, 562.5021);
- SetPlayerWeather(playerid,0);
- SetPlayerTime(playerid,0,0);
- if(gTeam[playerid] == TEAM_ATTACKERS) {
- SetPlayerColor(playerid,Attack_Color);
- SetPlayerTeam(playerid,TEAM_ATTACKERS);
- TextDrawSetString(ObjectiveTD[playerid],"~r~Attacker: ~w~Steal the helicopter");
- SetTimerEx("EnableTDDefend", 2000, false, "i", playerid);
- GivePlayerWeapon(playerid,24,30);
- GivePlayerWeapon(playerid,30,200);
- }
- else if(gTeam[playerid] == TEAM_DEFENDERS) {
- SetPlayerColor(playerid,Defend_Color);
- SetPlayerTeam(playerid,TEAM_DEFENDERS);
- TextDrawSetString(ObjectiveTD[playerid],"~g~Defender: ~w~Dont let the attackers steal the helicopter ~n~~r~Defend it for 5 min to win");
- SetTimerEx("EnableTDDefend", 2000, false, "i", playerid);
- GivePlayerWeapon(playerid,24,30);
- GivePlayerWeapon(playerid,31,1000);
- }
- return 1;
- }
- public OnVehicleStreamIn(vehicleid, forplayerid) {
- if(gTeam[forplayerid] == TEAM_ATTACKERS) {
- SetVehicleParamsForPlayer(OBJECTIVE_VEHICLE,forplayerid,1,0);
- }
- else if(gTeam[forplayerid] == TEAM_DEFENDERS) {
- SetVehicleParamsForPlayer(OBJECTIVE_VEHICLE,forplayerid,1,1);
- }
- return 1;
- }
- public EnableTDDefend(playerid) {
- TextDrawShowForPlayer(playerid,ObjectiveTD[playerid]);
- SetTimer("DisableTDS",6000,false);
- return 1;
- }
- public DisableTDS(playerid) {
- TextDrawHideForPlayer(playerid,ObjectiveTD[playerid]);
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- SendDeathMessage(killerid,playerid,reason);
- SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
- GivePlayerMoney(killerid, 3000);
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- if (strcmp("/kill", cmdtext, true, 10) == 0)
- {
- SetPlayerHealth(playerid,0);
- return 1;
- }
- return 0;
- }
- public OnPlayerEnterCheckpoint(playerid)
- {
- new playervehicleid = GetPlayerVehicleID(playerid);
- if(ObjectiveReached) return;
- if(playervehicleid == OBJECTIVE_VEHICLE && gTeam[playerid] == TEAM_ATTACKERS)
- {
- SendClientMessageToAll(COLOR_WHITE,"Attackers Win!");
- ObjectiveReached = 1;
- for(new i = 0; playerid < MAX_PLAYERS; playerid++)
- {
- if(IsPlayerConnected(playerid))
- {
- if(gTeam[playerid] == TEAM_ATTACKERS)
- {
- GameTextForPlayer(i, "~g~ YOUR TEAM WON ~n~~y~+1000", 6000, 4);
- GivePlayerMoney(i, 5000);
- }
- else if(gTeam[playerid] == TEAM_DEFENDERS)
- {
- GameTextForPlayer(i, "~r~ YOUR TEAM LOST ~n~~y~-1000", 6000, 4);
- GivePlayerMoney(i, -1000);
- }
- }
- }
- SetPlayerScore(playerid,GetPlayerScore(playerid)+5);
- SetTimer("Finshed", 8000, 0);
- return;
- }
- }
- public Finshed()
- {
- SendRconCommand("gmx");
- SendClientMessageToAll(COLOR_WHITE,"Server: Restarting Mode");
- return 1;
- }
- public Finshed2(playerid)
- {
- SendClientMessageToAll(COLOR_WHITE,"Defenders Win!");
- for(new i = 0; playerid < MAX_PLAYERS; playerid++)
- {
- if(IsPlayerConnected(i))
- {
- if(gTeam[playerid] == TEAM_ATTACKERS)
- {
- GameTextForPlayer(i, "~g~ YOUR TEAM LOST ~n~~y~-1000", 6000, 4);
- GivePlayerMoney(i, -1000);
- }
- else if(gTeam[playerid] == TEAM_DEFENDERS)
- {
- GameTextForPlayer(i, "~r~ YOUR TEAM WON ~n~~y~+5000", 6000, 4);
- GivePlayerMoney(i, 5000);
- }
- }
- }
- SetTimer("Finshed", 8000, 0);
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement