Guest User

tdm.pwn

a guest
Dec 26th, 2012
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 9.47 KB | None | 0 0
  1. #include <a_samp>
  2. #include "../include/gl_common.inc"
  3. #include <streamer>
  4.  
  5. #define TEAM_GROVE 1
  6. #define TEAM_BALLAS 2
  7. #define TEAM_GROVE_COLOR 0x00FF00AA
  8. #define TEAM_BALLAS_COLOR 0xFF00FFAA
  9.  
  10. #define DIALOG_CARSHOP 1
  11. #define DIALOG_JETPACKANDPARACHUTESHOP 2
  12. #define DIALOG_AIRCRAFTSHOP 3
  13. #define DIALOG_HEAVYWEAPONSSHOP 4
  14.  
  15. new total_vehicles_from_files=0;
  16. new gTeam[MAX_PLAYERS];
  17. new Checkpoint[4];
  18. new CarShopCar[MAX_PLAYERS];
  19. new AircraftShopVehicle[MAX_PLAYERS];
  20.  
  21. main()
  22. {
  23.     print("\n----------------------------------");
  24.     print(" Grove vs Ballas by Sydcul");
  25.     print("----------------------------------\n");
  26. }
  27.  
  28. public OnGameModeInit()
  29. {
  30.     SetGameModeText("Grove vs Ballas");
  31.     AddPlayerClass(105, 2512.0581, -1672.3823, 13.4813, 66.2349, WEAPON_KNIFE, 1, WEAPON_COLT45, 0x7FFFFFFF, WEAPON_TEC9, 0x7FFFFFFF);
  32.     AddPlayerClass(106, 2512.0581, -1672.3823, 13.4813, 66.2349, WEAPON_KNIFE, 1, WEAPON_COLT45, 0x7FFFFFFF, WEAPON_TEC9, 0x7FFFFFFF);
  33.     AddPlayerClass(107, 2512.0581, -1672.3823, 13.4813, 66.2349, WEAPON_KNIFE, 1, WEAPON_COLT45, 0x7FFFFFFF, WEAPON_TEC9, 0x7FFFFFFF);
  34.     AddPlayerClass(102, 2172.8787, -1672.7426, 15.0859, 286.4139, WEAPON_BAT, 1, WEAPON_COLT45, 0x7FFFFFFF, WEAPON_UZI, 0x7FFFFFFF);
  35.     AddPlayerClass(103, 2172.8787, -1672.7426, 15.0859, 286.4139, WEAPON_BAT, 1, WEAPON_COLT45, 0x7FFFFFFF, WEAPON_UZI, 0x7FFFFFFF);
  36.     AddPlayerClass(104, 2172.8787, -1672.7426, 15.0859, 286.4139, WEAPON_BAT, 1, WEAPON_COLT45, 0x7FFFFFFF, WEAPON_UZI, 0x7FFFFFFF);
  37.    
  38.     total_vehicles_from_files += LoadStaticVehiclesFromFile("tdm/vehicles.txt");
  39.     return 1;
  40. }
  41.  
  42. public OnPlayerRequestClass(playerid, classid)
  43. {
  44.     SetPlayerPos(playerid, 2121.7322, -1623.2563, 26.8368);
  45.     SetPlayerFacingAngle(playerid, 60.2360);
  46.     SetPlayerCameraPos(playerid, 2111.9089 ,-1623.7340, 24.2307);
  47.     SetPlayerCameraLookAt(playerid, 2121.7322, -1623.2563, 26.8368);
  48.     switch(classid)
  49.     {
  50.     case 0,1,2:
  51.     {
  52.         GameTextForPlayer(playerid, "~g~GROVE~w~", 3000, 5);
  53.         gTeam[playerid] = TEAM_GROVE;
  54.     }
  55.     case 3,4,5:
  56.     {
  57.         GameTextForPlayer(playerid, "~b~BALLAS~w~", 3000, 5);
  58.         gTeam[playerid] = TEAM_BALLAS;
  59.     }
  60.     }
  61.     return 1;
  62. }
  63.  
  64.  
  65. SetPlayerToTeamColor(playerid)
  66. {
  67.     if (gTeam[playerid] == TEAM_GROVE)
  68.     {
  69.         SetPlayerColor(playerid, TEAM_GROVE_COLOR);
  70.     }
  71.     else if (gTeam[playerid] == TEAM_BALLAS)
  72.     {
  73.         SetPlayerColor(playerid, TEAM_BALLAS_COLOR);
  74.     }
  75. }
  76.  
  77. public OnPlayerConnect(playerid)
  78. {
  79.     CarShopCar[playerid] = -1;
  80.     SendDeathMessage(INVALID_PLAYER_ID, playerid, 200);
  81.     return 1;
  82. }
  83.  
  84. public OnPlayerDisconnect(playerid, reason)
  85. {
  86.     SendDeathMessage(INVALID_PLAYER_ID, playerid, 201);
  87.     return 1;
  88. }
  89.  
  90. public OnPlayerSpawn(playerid)
  91. {
  92.     SetPlayerToTeamColor(playerid);
  93.     Checkpoint[0] = CreateDynamicCP(1772.1460,-1929.1642,13.5534, 2, -1, -1, -1, 100); //Car shop
  94.     Checkpoint[1] = CreateDynamicCP(1954.6067,-2188.5210,13.5469, 2, -1, -1, -1, 100); //Jetpack and parachute shop
  95.     Checkpoint[2] = CreateDynamicCP(2444.6648,-1975.5310,13.5469, 2, -1, -1, -1, 100); //Aircraft shop
  96.     Checkpoint[3] = CreateDynamicCP(1683.3267,-2638.3318,13.5469, 2, -1, -1, -1, 100); //Heavy weapons shop
  97. }
  98.  
  99. public OnPlayerDeath(playerid, killerid, reason)
  100. {
  101.     if(killerid == INVALID_PLAYER_ID) {
  102.         SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
  103.         ResetPlayerMoney(playerid);
  104.         SetPlayerScore(playerid,GetPlayerScore(playerid)-1);
  105.     } else if(gTeam[killerid] == gTeam[playerid]) {
  106.         SetPlayerScore(killerid,GetPlayerScore(killerid)-2);
  107.         GivePlayerMoney(killerid, -50);
  108.         SendDeathMessage(killerid,playerid,reason);
  109.     } else {
  110.         ResetPlayerMoney(playerid);
  111.         SetPlayerScore(playerid,GetPlayerScore(playerid)-1);
  112.         SendDeathMessage(killerid,playerid,reason);
  113.         SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
  114.         GivePlayerMoney(killerid, 100);
  115.     }
  116.     return 1;
  117. }
  118.  
  119. public OnPlayerEnterDynamicCP(playerid, checkpointid)
  120. {
  121.     if(checkpointid == Checkpoint[0]) //Car shop
  122.     {
  123.         ShowPlayerDialog(playerid, DIALOG_CARSHOP, DIALOG_STYLE_LIST, "Car shop", "Infernus ($250)\nTurismo ($350)", "Buy", "Cancel");
  124.     }
  125.     if(checkpointid == Checkpoint[1]) //Jetpack and parachute shop
  126.     {
  127.         ShowPlayerDialog(playerid, DIALOG_JETPACKANDPARACHUTESHOP, DIALOG_STYLE_LIST, "Jetpack and parachute shop", "Jetpack ($300)\nParachute ($50)", "Buy", "Cancel");
  128.     }
  129.     if(checkpointid == Checkpoint[2]) //Aircraft shop
  130.     {
  131.         ShowPlayerDialog(playerid, DIALOG_AIRCRAFTSHOP, DIALOG_STYLE_LIST, "Aircraft shop", "Hydra ($500)\nHunter ($600)", "Buy", "Cancel");
  132.     }
  133.     if(checkpointid == Checkpoint[3]) //Heavy weapons shop
  134.     {
  135.         ShowPlayerDialog(playerid, DIALOG_HEAVYWEAPONSSHOP, DIALOG_STYLE_LIST, "Heavy weapons shop", "Minigun ($800)\nRPG ($400)\nFlamethrower ($200)", "Buy", "Cancel");
  136.     }
  137.     return 1;
  138. }
  139.  
  140. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  141. {
  142.     if(dialogid == DIALOG_CARSHOP)
  143.     {
  144.         if(response)
  145.         {
  146.             if(listitem == 0)
  147.             {
  148.                 new playermoney;
  149.                 playermoney = GetPlayerMoney(playerid);
  150.                 if playermoney >= 250 {
  151.                 if CarShopCar[playerid] != -1 {
  152.                 DestroyVehicle(CarShopCar[playerid]);
  153.                 CarShopCar[playerid] = -1;
  154.                 }
  155.                 CarShopCar[playerid] = CreateVehicle(411,1776.6417,-1929.3938,13.1665,0.6010,-1,-1,-1);
  156.                 GivePlayerMoney(playerid, -250);
  157.                 }
  158.             }
  159.             if(listitem == 1)
  160.             {
  161.                 new playermoney;
  162.                 playermoney = GetPlayerMoney(playerid);
  163.                 if playermoney >= 350 {
  164.                 if CarShopCar[playerid] != -1 {
  165.                 DestroyVehicle(CarShopCar[playerid]);
  166.                 CarShopCar[playerid] = -1;
  167.                 }
  168.                 CarShopCar[playerid] = CreateVehicle(451,1776.6417,-1929.3938,13.1665,0.6010,-1,-1,-1);
  169.                 GivePlayerMoney(playerid, -350);
  170.                 }
  171.             }
  172.         }
  173.         return 1;
  174.     }
  175.    
  176.     if(dialogid == DIALOG_JETPACKANDPARACHUTESHOP)
  177.     {
  178.         if(response)
  179.         {
  180.             if(listitem == 0)
  181.             {
  182.                 new playermoney;
  183.                 playermoney = GetPlayerMoney(playerid);
  184.                 if playermoney >= 300 {
  185.                 SetPlayerSpecialAction(playerid, SPECIAL_ACTION_USEJETPACK);
  186.                 GivePlayerMoney(playerid, -300);
  187.                 }
  188.             }
  189.             if(listitem == 1)
  190.             {
  191.                 new playermoney;
  192.                 playermoney = GetPlayerMoney(playerid);
  193.                 if playermoney >= 50 {
  194.                 GivePlayerWeapon(playerid, 46, 1);
  195.                 GivePlayerMoney(playerid, -50);
  196.                 }
  197.             }
  198.         }
  199.         return 1;
  200.     }
  201.        
  202.     if(dialogid == DIALOG_AIRCRAFTSHOP)
  203.     {
  204.         if(response)
  205.         {
  206.             if(listitem == 0)
  207.             {
  208.                 new playermoney;
  209.                 playermoney = GetPlayerMoney(playerid);
  210.                 if playermoney >= 500 {
  211.                 if AircraftShopVehicle[playerid] != -1 {
  212.                 DestroyVehicle(AircraftShopVehicle[playerid]);
  213.                 AircraftShopVehicle[playerid] = -1;
  214.                 }
  215.                 AircraftShopVehicle[playerid] = CreateVehicle(520,1681.7134,-2612.5090,14.2579,2.3501,-1,-1,-1);
  216.                 GivePlayerMoney(playerid, -500);
  217.                 }
  218.             }
  219.             if(listitem == 1)
  220.             {
  221.                 new playermoney;
  222.                 playermoney = GetPlayerMoney(playerid);
  223.                 if playermoney >= 600 {
  224.                 if AircraftShopVehicle[playerid] != -1 {
  225.                 DestroyVehicle(AircraftShopVehicle[playerid]);
  226.                 AircraftShopVehicle[playerid] = -1;
  227.                 }
  228.                 AircraftShopVehicle[playerid] = CreateVehicle(425,1681.7134,-2612.5090,14.2579,2.3501,-1,-1,-1);
  229.                 GivePlayerMoney(playerid, -600);
  230.                 }
  231.             }
  232.         }
  233.         return 1;
  234.     }
  235.     if(dialogid == DIALOG_HEAVYWEAPONSSHOP)
  236.     {
  237.         if(response)
  238.         {
  239.             if(listitem == 0)
  240.             {
  241.                 new playermoney;
  242.                 playermoney = GetPlayerMoney(playerid);
  243.                 if playermoney >= 800 {
  244.                 GivePlayerWeapon(playerid, 38, 100);
  245.                 GivePlayerMoney(playerid, -800);
  246.                 }
  247.             }
  248.             if(listitem == 1)
  249.             {
  250.                 new playermoney;
  251.                 playermoney = GetPlayerMoney(playerid);
  252.                 if playermoney >= 400 {
  253.                 GivePlayerWeapon(playerid, 35, 10);
  254.                 GivePlayerMoney(playerid, -400);
  255.                 }
  256.             }
  257.             if(listitem == 2)
  258.             {
  259.                 new playermoney;
  260.                 playermoney = GetPlayerMoney(playerid);
  261.                 if playermoney >= 200 {
  262.                 GivePlayerWeapon(playerid, 37, 150);
  263.                 GivePlayerMoney(playerid, -200);
  264.                 }
  265.             }
  266.         }
  267.         return 1;
  268.     }
  269.     return 0;
  270. }
  271. public OnVehicleDeath(vehicleid, killerid)
  272. {
  273.     for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
  274.     {
  275.         if (vehicleid == CarShopCar[playerid]) {
  276.         DestroyVehicle(CarShopCar[playerid]);
  277.         CarShopCar[playerid] = -1;
  278.         }
  279.         if (vehicleid == AircraftShopVehicle[playerid]) {
  280.         DestroyVehicle(AircraftShopVehicle[playerid]);
  281.         AircraftShopVehicle[playerid] = -1;
  282.         }
  283.     }
  284.     return 1;
  285. }
  286.  
  287. public OnPlayerCommandText(playerid, cmdtext[])
  288. {
  289.     if (strcmp("/suicide", cmdtext, true, 8) == 0)
  290.     {
  291.         SetPlayerHealth(playerid, 0);
  292.         return 1;
  293.     }
  294.     return 0;
  295. }
Advertisement
Add Comment
Please, Sign In to add comment