Advertisement
Guest User

Untitled

a guest
Jan 1st, 2014
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 17.08 KB | None | 0 0
  1. //----------------------------------------------------------
  2. //
  3. //  GRAND LARCENY  1.0
  4. //  A freeroam gamemode for SA-MP 0.3
  5. //
  6. //----------------------------------------------------------
  7.  
  8. #include <a_samp>
  9. #include <core>
  10. #include <float>
  11. #include "../include/gl_common.inc"
  12. #include "../include/gl_spawns.inc"
  13.  
  14. #pragma tabsize 0
  15.  
  16. //----------------------------------------------------------
  17.  
  18. #define COLOR_WHITE         0xFFFFFFFF
  19. #define COLOR_NORMAL_PLAYER 0xFFBB7777
  20.  
  21. //#define CITY_LOS_SANTOS   0
  22. #define CITY_SAN_FIERRO     1
  23. //#define CITY_LAS_VENTURAS     2
  24.  
  25. new total_vehicles_from_files=0;
  26.  
  27. // Class selection globals
  28. new gPlayerCitySelection[MAX_PLAYERS];
  29. new gPlayerHasCitySelected[MAX_PLAYERS];
  30. new gPlayerLastCitySelectionTick[MAX_PLAYERS];
  31.  
  32. new Text:txtClassSelHelper;
  33. new Text:txtSanFierro;
  34.  
  35. new thisanimid=0;
  36. new lastanimid=0;
  37.  
  38. //----------------------------------------------------------
  39.  
  40. main()
  41. {
  42.     print("\n---------------------------------------");
  43.     print("Running Grand Larceny - by the SA-MP team\n");
  44.     print("---------------------------------------\n");
  45. }
  46.  
  47. //----------------------------------------------------------
  48.  
  49. public OnPlayerConnect(playerid)
  50. {
  51.     GameTextForPlayer(playerid,"~w~Grand Larceny",3000,4);
  52.     SendClientMessage(playerid,COLOR_WHITE,"Welcome to {88AA88}G{FFFFFF}rand {88AA88}L{FFFFFF}arceny");
  53.  
  54.     // class selection init vars
  55.     gPlayerCitySelection[playerid] = -1;
  56.     gPlayerHasCitySelected[playerid] = 0;
  57.     gPlayerLastCitySelectionTick[playerid] = GetTickCount();
  58.  
  59.     //SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
  60.  
  61.     //Kick(playerid);
  62.  
  63.     /*
  64.     Removes vending machines
  65.     RemoveBuildingForPlayer(playerid, 1302, 0.0, 0.0, 0.0, 6000.0);
  66.     RemoveBuildingForPlayer(playerid, 1209, 0.0, 0.0, 0.0, 6000.0);
  67.     RemoveBuildingForPlayer(playerid, 955, 0.0, 0.0, 0.0, 6000.0);
  68.     RemoveBuildingForPlayer(playerid, 1775, 0.0, 0.0, 0.0, 6000.0);
  69.     RemoveBuildingForPlayer(playerid, 1776, 0.0, 0.0, 0.0, 6000.0);
  70.     */
  71.  
  72.     /*
  73.     new ClientVersion[32];
  74.     GetPlayerVersion(playerid, ClientVersion, 32);
  75.     printf("Player %d reports client version: %s", playerid, ClientVersion);*/
  76.  
  77.     return 1;
  78. }
  79.  
  80. //----------------------------------------------------------
  81.  
  82. public OnPlayerSpawn(playerid)
  83. {
  84.     if(IsPlayerNPC(playerid)) return 1;
  85.  
  86.     new randSpawn = 0;
  87.  
  88.     SetPlayerInterior(playerid,0);
  89.     TogglePlayerClock(playerid,0);
  90.     ResetPlayerMoney(playerid);
  91.     GivePlayerMoney(playerid, 30000);
  92.     if(CITY_SAN_FIERRO == gPlayerCitySelection[playerid])
  93.     {
  94.         randSpawn = random(sizeof(gRandomSpawns_SanFierro));
  95.         SetPlayerPos(playerid,
  96.         gRandomSpawns_SanFierro[randSpawn][0],
  97.         gRandomSpawns_SanFierro[randSpawn][1],
  98.         gRandomSpawns_SanFierro[randSpawn][2]);
  99.         SetPlayerFacingAngle(playerid,gRandomSpawns_SanFierro[randSpawn][3]);
  100.     }
  101.  
  102.     SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,200);
  103.     SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL_SILENCED,200);
  104.     SetPlayerSkillLevel(playerid,WEAPONSKILL_DESERT_EAGLE,200);
  105.     SetPlayerSkillLevel(playerid,WEAPONSKILL_SHOTGUN,200);
  106.     SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,200);
  107.     SetPlayerSkillLevel(playerid,WEAPONSKILL_SPAS12_SHOTGUN,200);
  108.     SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,200);
  109.     SetPlayerSkillLevel(playerid,WEAPONSKILL_MP5,200);
  110.     SetPlayerSkillLevel(playerid,WEAPONSKILL_AK47,200);
  111.     SetPlayerSkillLevel(playerid,WEAPONSKILL_M4,200);
  112.     SetPlayerSkillLevel(playerid,WEAPONSKILL_SNIPERRIFLE,200);
  113.  
  114.     GivePlayerWeapon(playerid,WEAPON_COLT45,100);
  115.     //GivePlayerWeapon(playerid,WEAPON_MP5,100);
  116.     TogglePlayerClock(playerid, 0);
  117.  
  118.     return 1;
  119. }
  120.  
  121. //----------------------------------------------------------
  122.  
  123. public OnPlayerDeath(playerid, killerid, reason)
  124. {
  125.     new playercash;
  126.  
  127.     // if they ever return to class selection make them city
  128.     // select again first
  129.     gPlayerHasCitySelected[playerid] = 0;
  130.  
  131.     if(killerid == INVALID_PLAYER_ID) {
  132.         ResetPlayerMoney(playerid);
  133.     } else {
  134.         playercash = GetPlayerMoney(playerid);
  135.         if(playercash > 0)  {
  136.             GivePlayerMoney(killerid, playercash);
  137.             ResetPlayerMoney(playerid);
  138.         }
  139.     }
  140.     return 1;
  141. }
  142.  
  143. //----------------------------------------------------------
  144.  
  145. ClassSel_SetupCharSelection(playerid)
  146. {
  147.     if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO)
  148.     {
  149.         SetPlayerInterior(playerid,3);
  150.         SetPlayerPos(playerid,-2673.8381,1399.7424,918.3516);
  151.         SetPlayerFacingAngle(playerid,181.0);
  152.         SetPlayerCameraPos(playerid,-2673.2776,1394.3859,918.3516);
  153.         SetPlayerCameraLookAt(playerid,-2673.8381,1399.7424,918.3516);
  154.     }
  155. }
  156.  
  157. //----------------------------------------------------------
  158. // Used to init textdraws of city names
  159.  
  160. ClassSel_InitCityNameText(Text:txtInit)
  161. {
  162.     TextDrawUseBox(txtInit, 0);
  163.     TextDrawLetterSize(txtInit,1.25,3.0);
  164.     TextDrawFont(txtInit, 0);
  165.     TextDrawSetShadow(txtInit,0);
  166.     TextDrawSetOutline(txtInit,1);
  167.     TextDrawColor(txtInit,0xEEEEEEFF);
  168.     TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
  169. }
  170.  
  171. //----------------------------------------------------------
  172.  
  173. ClassSel_InitTextDraws()
  174. {
  175.     // Init our observer helper text display
  176.     txtSanFierro = TextDrawCreate(10.0, 380.0, "San Fierro");
  177.     ClassSel_InitCityNameText(txtSanFierro);
  178.  
  179.     // Init our observer helper text display
  180.     txtClassSelHelper = TextDrawCreate(10.0, 415.0,
  181.        " Press ~b~~k~~GO_LEFT~ ~w~or ~b~~k~~GO_RIGHT~ ~w~to switch cities.~n~ Press ~r~~k~~PED_FIREWEAPON~ ~w~to select.");
  182.     TextDrawUseBox(txtClassSelHelper, 1);
  183.     TextDrawBoxColor(txtClassSelHelper,0x222222BB);
  184.     TextDrawLetterSize(txtClassSelHelper,0.3,1.0);
  185.     TextDrawTextSize(txtClassSelHelper,400.0,40.0);
  186.     TextDrawFont(txtClassSelHelper, 2);
  187.     TextDrawSetShadow(txtClassSelHelper,0);
  188.     TextDrawSetOutline(txtClassSelHelper,1);
  189.     TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
  190.     TextDrawColor(txtClassSelHelper,0xFFFFFFFF);
  191. }
  192.  
  193. //----------------------------------------------------------
  194.  
  195. ClassSel_SetupSelectedCity(playerid)
  196. {
  197.     if(gPlayerCitySelection[playerid] == -1)
  198.     {
  199.         gPlayerCitySelection[playerid] = CITY_SAN_FIERRO;
  200.     }
  201.     if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO)
  202.     {
  203.         SetPlayerInterior(playerid,0);
  204.         SetPlayerCameraPos(playerid,-1300.8754,68.0546,129.4823);
  205.         SetPlayerCameraLookAt(playerid,-1817.9412,769.3878,132.6589);
  206.  
  207.         TextDrawShowForPlayer(playerid,txtSanFierro);
  208.     }
  209. }
  210.  
  211. //----------------------------------------------------------
  212.  
  213. ClassSel_SwitchToNextCity(playerid)
  214. {
  215.     gPlayerCitySelection[playerid]++;
  216.     if(gPlayerCitySelection[playerid] > CITY_SAN_FIERRO) {
  217.         gPlayerCitySelection[playerid] = CITY_SAN_FIERRO;
  218.     }
  219.     PlayerPlaySound(playerid,1052,0.0,0.0,0.0);
  220.     gPlayerLastCitySelectionTick[playerid] = GetTickCount();
  221.     ClassSel_SetupSelectedCity(playerid);
  222. }
  223.  
  224. //----------------------------------------------------------
  225.  
  226. ClassSel_SwitchToPreviousCity(playerid)
  227. {
  228.     gPlayerCitySelection[playerid]--;
  229.     if(gPlayerCitySelection[playerid] < CITY_SAN_FIERRO) {
  230.         gPlayerCitySelection[playerid] = CITY_SAN_FIERRO;
  231.     }
  232.     PlayerPlaySound(playerid,1053,0.0,0.0,0.0);
  233.     gPlayerLastCitySelectionTick[playerid] = GetTickCount();
  234.     ClassSel_SetupSelectedCity(playerid);
  235. }
  236.  
  237. //----------------------------------------------------------
  238.  
  239. ClassSel_HandleCitySelection(playerid)
  240. {
  241.     new Keys,ud,lr;
  242.     GetPlayerKeys(playerid,Keys,ud,lr);
  243.  
  244.     if(gPlayerCitySelection[playerid] == -1) {
  245.         ClassSel_SwitchToNextCity(playerid);
  246.         return;
  247.     }
  248.  
  249.     // only allow new selection every ~500 ms
  250.     if( (GetTickCount() - gPlayerLastCitySelectionTick[playerid]) < 500 ) return;
  251.  
  252.     if(Keys & KEY_FIRE) {
  253.         gPlayerHasCitySelected[playerid] = 1;
  254.         TextDrawHideForPlayer(playerid,txtClassSelHelper);
  255.         TextDrawHideForPlayer(playerid,txtSanFierro);
  256.         TogglePlayerSpectating(playerid,0);
  257.         return;
  258.     }
  259.  
  260.     if(lr > 0) {
  261.        ClassSel_SwitchToNextCity(playerid);
  262.     }
  263.     else if(lr < 0) {
  264.        ClassSel_SwitchToPreviousCity(playerid);
  265.     }
  266. }
  267.  
  268. //----------------------------------------------------------
  269.  
  270. public OnPlayerRequestClass(playerid, classid)
  271. {
  272.     if(IsPlayerNPC(playerid)) return 1;
  273.  
  274.     if(gPlayerHasCitySelected[playerid]) {
  275.         ClassSel_SetupCharSelection(playerid);
  276.         return 1;
  277.     } else {
  278.         if(GetPlayerState(playerid) != PLAYER_STATE_SPECTATING) {
  279.             TogglePlayerSpectating(playerid,1);
  280.             TextDrawShowForPlayer(playerid, txtClassSelHelper);
  281.             gPlayerCitySelection[playerid] = -1;
  282.         }
  283.     }
  284.  
  285.     return 0;
  286. }
  287.  
  288. //----------------------------------------------------------
  289.  
  290. public OnGameModeInit()
  291. {
  292.     SetGameModeText("Grand Larceny");
  293.     ShowPlayerMarkers(PLAYER_MARKERS_MODE_GLOBAL);
  294.     ShowNameTags(1);
  295.     SetNameTagDrawDistance(40.0);
  296.     EnableStuntBonusForAll(0);
  297.     DisableInteriorEnterExits();
  298.     SetWeather(2);
  299.     SetWorldTime(11);
  300.  
  301.     //UsePlayerPedAnims();
  302.     //ManualVehicleEngineAndLights();
  303.     //LimitGlobalChatRadius(300.0);
  304.  
  305.     ClassSel_InitTextDraws();
  306.  
  307.     // Player Class
  308.     AddPlayerClass(281,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  309.     AddPlayerClass(282,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  310.     AddPlayerClass(283,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  311.     AddPlayerClass(284,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  312.     AddPlayerClass(285,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  313.     AddPlayerClass(286,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  314.     AddPlayerClass(287,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  315.     AddPlayerClass(288,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  316.     AddPlayerClass(289,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  317.     AddPlayerClass(265,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  318.     AddPlayerClass(266,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  319.     AddPlayerClass(267,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  320.     AddPlayerClass(268,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  321.     AddPlayerClass(269,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  322.     AddPlayerClass(270,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  323.     AddPlayerClass(1,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  324.     AddPlayerClass(2,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  325.     AddPlayerClass(3,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  326.     AddPlayerClass(4,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  327.     AddPlayerClass(5,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  328.     AddPlayerClass(6,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  329.     AddPlayerClass(8,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  330.     AddPlayerClass(42,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  331.     AddPlayerClass(65,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  332.     //AddPlayerClass(74,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  333.     AddPlayerClass(86,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  334.     AddPlayerClass(119,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  335.     AddPlayerClass(149,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  336.     AddPlayerClass(208,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  337.     AddPlayerClass(273,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  338.     AddPlayerClass(289,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  339.  
  340.     AddPlayerClass(47,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  341.     AddPlayerClass(48,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  342.     AddPlayerClass(49,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  343.     AddPlayerClass(50,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  344.     AddPlayerClass(51,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  345.     AddPlayerClass(52,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  346.     AddPlayerClass(53,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  347.     AddPlayerClass(54,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  348.     AddPlayerClass(55,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  349.     AddPlayerClass(56,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  350.     AddPlayerClass(57,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  351.     AddPlayerClass(58,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  352.     AddPlayerClass(68,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  353.     AddPlayerClass(69,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  354.     AddPlayerClass(70,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  355.     AddPlayerClass(71,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  356.     AddPlayerClass(72,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  357.     AddPlayerClass(73,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  358.     AddPlayerClass(75,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  359.     AddPlayerClass(76,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  360.     AddPlayerClass(78,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  361.     AddPlayerClass(79,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  362.     AddPlayerClass(80,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  363.     AddPlayerClass(81,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  364.     AddPlayerClass(82,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  365.     AddPlayerClass(83,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  366.     AddPlayerClass(84,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  367.     AddPlayerClass(85,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  368.     AddPlayerClass(87,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  369.     AddPlayerClass(88,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  370.     AddPlayerClass(89,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  371.     AddPlayerClass(91,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  372.     AddPlayerClass(92,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  373.     AddPlayerClass(93,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  374.     AddPlayerClass(95,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  375.     AddPlayerClass(96,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  376.     AddPlayerClass(97,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  377.     AddPlayerClass(98,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  378.     AddPlayerClass(99,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  379.  
  380.     // SPECIAL
  381.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/trains.txt");
  382.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/pilots.txt");
  383.  
  384.     // LAS VENTURAS
  385.      total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_law.txt");
  386.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_airport.txt");
  387.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_gen.txt");
  388.  
  389.     // SAN FIERRO
  390.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_law.txt");
  391.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_airport.txt");
  392.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_gen.txt");
  393.  
  394.     // LOS SANTOS
  395.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_law.txt");
  396.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_airport.txt");
  397.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_inner.txt");
  398.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_outer.txt");
  399.  
  400.     // OTHER AREAS
  401.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/whetstone.txt");
  402.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/bone.txt");
  403.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/flint.txt");
  404.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/tierra.txt");
  405.     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/red_county.txt");
  406.  
  407.     printf("Total vehicles from files: %d",total_vehicles_from_files);
  408.  
  409.     return 1;
  410. }
  411.  
  412. //----------------------------------------------------------
  413.  
  414. public OnPlayerUpdate(playerid)
  415. {
  416.     if(!IsPlayerConnected(playerid)) return 0;
  417.     if(IsPlayerNPC(playerid)) return 1;
  418.  
  419.     // changing cities by inputs
  420.     if( !gPlayerHasCitySelected[playerid] &&
  421.         GetPlayerState(playerid) == PLAYER_STATE_SPECTATING ) {
  422.         ClassSel_HandleCitySelection(playerid);
  423.         return 1;
  424.     }
  425.  
  426.     // No weapons in interiors
  427.     if(GetPlayerInterior(playerid) != 0 && GetPlayerWeapon(playerid) != 0) {
  428.         SetPlayerArmedWeapon(playerid,0); // fists
  429.         return 0; // no syncing until they change their weapon
  430.     }
  431.  
  432.     // Don't allow minigun
  433.     if(GetPlayerWeapon(playerid) == WEAPON_MINIGUN) {
  434.         Kick(playerid);
  435.         return 0;
  436.     }
  437.  
  438.     /* No jetpacks allowed
  439.     if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USEJETPACK) {
  440.         Kick(playerid);
  441.         return 0;
  442.     }*/
  443.  
  444.     /* For testing animations
  445.     new msg[128+1];
  446.     new animlib[32+1];
  447.     new animname[32+1];
  448.  
  449.     thisanimid = GetPlayerAnimationIndex(playerid);
  450.     if(lastanimid != thisanimid)
  451.     {
  452.         GetAnimationName(thisanimid,animlib,32,animname,32);
  453.         format(msg, 128, "anim(%d,%d): %s %s", lastanimid, thisanimid, animlib, animname);
  454.         lastanimid = thisanimid;
  455.         SendClientMessage(playerid, 0xFFFFFFFF, msg);
  456.     }*/
  457.  
  458.     return 1;
  459. }
  460.  
  461. //----------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement