Guest User

Untitled

a guest
May 28th, 2012
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 25.55 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. #include <dini>
  14.  
  15. #pragma tabsize 0
  16.  
  17. //----------------------------------------------------------
  18.  
  19. #define COLOR_WHITE 0xFFFFFFFF
  20. #define COLOR_NORMAL_PLAYER 0xFF4444FF
  21.  
  22. #define CITY_LOS_SANTOS 0
  23. #define CITY_SAN_FIERRO 1
  24. #define CITY_LAS_VENTURAS 2
  25.  
  26. new total_vehicles_from_files=0;
  27.  
  28. // Class selection globals
  29. new gPlayerCitySelection[MAX_PLAYERS];
  30. new gPlayerHasCitySelected[MAX_PLAYERS];
  31. new gPlayerLastCitySelectionTick[MAX_PLAYERS];
  32.  
  33. new Text:txtClassSelHelper;
  34. new Text:txtLosSantos;
  35. new Text:txtSanFierro;
  36. new Text:txtLasVenturas;
  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. return 1;
  62. }
  63.  
  64. //----------------------------------------------------------
  65.  
  66. public OnPlayerSpawn(playerid)
  67. {
  68. if(IsPlayerNPC(playerid)) return 1;
  69.  
  70. new randSpawn = 0;
  71.  
  72. SetPlayerInterior(playerid,0);
  73. TogglePlayerClock(playerid,0);
  74. ResetPlayerMoney(playerid);
  75. GivePlayerMoney(playerid, 30000);
  76.  
  77. // if they ever return to class selection make them city
  78. // select again first
  79. gPlayerHasCitySelected[playerid] = 0;
  80.  
  81. if(CITY_LOS_SANTOS == gPlayerCitySelection[playerid]) {
  82. randSpawn = random(sizeof(gRandomSpawns_LosSantos));
  83. SetPlayerPos(playerid,
  84. gRandomSpawns_LosSantos[randSpawn][0],
  85. gRandomSpawns_LosSantos[randSpawn][1],
  86. gRandomSpawns_LosSantos[randSpawn][2]);
  87. SetPlayerFacingAngle(playerid,gRandomSpawns_LosSantos[randSpawn][3]);
  88. }
  89. else if(CITY_SAN_FIERRO == gPlayerCitySelection[playerid]) {
  90. randSpawn = random(sizeof(gRandomSpawns_SanFierro));
  91. SetPlayerPos(playerid,
  92. gRandomSpawns_SanFierro[randSpawn][0],
  93. gRandomSpawns_SanFierro[randSpawn][1],
  94. gRandomSpawns_SanFierro[randSpawn][2]);
  95. SetPlayerFacingAngle(playerid,gRandomSpawns_SanFierro[randSpawn][3]);
  96. }
  97. else if(CITY_LAS_VENTURAS == gPlayerCitySelection[playerid]) {
  98. randSpawn = random(sizeof(gRandomSpawns_LasVenturas));
  99. SetPlayerPos(playerid,
  100. gRandomSpawns_LasVenturas[randSpawn][0],
  101. gRandomSpawns_LasVenturas[randSpawn][1],
  102. gRandomSpawns_LasVenturas[randSpawn][2]);
  103. SetPlayerFacingAngle(playerid,gRandomSpawns_LasVenturas[randSpawn][3]);
  104. }
  105.  
  106. //SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
  107.  
  108. SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,200);
  109. SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL_SILENCED,200);
  110. SetPlayerSkillLevel(playerid,WEAPONSKILL_DESERT_EAGLE,200);
  111. SetPlayerSkillLevel(playerid,WEAPONSKILL_SHOTGUN,200);
  112. SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,200);
  113. SetPlayerSkillLevel(playerid,WEAPONSKILL_SPAS12_SHOTGUN,200);
  114. SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,200);
  115. SetPlayerSkillLevel(playerid,WEAPONSKILL_MP5,200);
  116. SetPlayerSkillLevel(playerid,WEAPONSKILL_AK47,200);
  117. SetPlayerSkillLevel(playerid,WEAPONSKILL_M4,200);
  118. SetPlayerSkillLevel(playerid,WEAPONSKILL_SNIPERRIFLE,200);
  119.  
  120. GivePlayerWeapon(playerid,WEAPON_COLT45,100);
  121. //GivePlayerWeapon(playerid,WEAPON_MP5,100);
  122. //TogglePlayerClock(playerid, 1);
  123.  
  124. return 1;
  125. }
  126.  
  127. //----------------------------------------------------------
  128.  
  129. public OnPlayerDeath(playerid, killerid, reason)
  130. {
  131. new playercash;
  132.  
  133. if(killerid == INVALID_PLAYER_ID) {
  134. ResetPlayerMoney(playerid);
  135. } else {
  136. playercash = GetPlayerMoney(playerid);
  137. if(playercash > 0) {
  138. GivePlayerMoney(killerid, playercash);
  139. ResetPlayerMoney(playerid);
  140. }
  141. }
  142. return 1;
  143. }
  144.  
  145. //----------------------------------------------------------
  146.  
  147. ClassSel_SetupCharSelection(playerid)
  148. {
  149. if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
  150. SetPlayerInterior(playerid,11);
  151. SetPlayerPos(playerid,508.7362,-87.4335,998.9609);
  152. SetPlayerFacingAngle(playerid,0.0);
  153. SetPlayerCameraPos(playerid,508.7362,-83.4335,998.9609);
  154. SetPlayerCameraLookAt(playerid,508.7362,-87.4335,998.9609);
  155. }
  156. else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
  157. SetPlayerInterior(playerid,3);
  158. SetPlayerPos(playerid,-2673.8381,1399.7424,918.3516);
  159. SetPlayerFacingAngle(playerid,181.0);
  160. SetPlayerCameraPos(playerid,-2673.2776,1394.3859,918.3516);
  161. SetPlayerCameraLookAt(playerid,-2673.8381,1399.7424,918.3516);
  162. }
  163. else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
  164. SetPlayerInterior(playerid,3);
  165. SetPlayerPos(playerid,349.0453,193.2271,1014.1797);
  166. SetPlayerFacingAngle(playerid,286.25);
  167. SetPlayerCameraPos(playerid,352.9164,194.5702,1014.1875);
  168. SetPlayerCameraLookAt(playerid,349.0453,193.2271,1014.1797);
  169. }
  170.  
  171. }
  172.  
  173. //----------------------------------------------------------
  174. // Used to init textdraws of city names
  175.  
  176. ClassSel_InitCityNameText(Text:txtInit)
  177. {
  178. TextDrawUseBox(txtInit, 0);
  179. TextDrawLetterSize(txtInit,1.25,3.0);
  180. TextDrawFont(txtInit, 0);
  181. TextDrawSetShadow(txtInit,0);
  182. TextDrawSetOutline(txtInit,1);
  183. TextDrawColor(txtInit,0xEEEEEEFF);
  184. TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
  185. }
  186.  
  187. //----------------------------------------------------------
  188.  
  189. ClassSel_InitTextDraws()
  190. {
  191. // Init our observer helper text display
  192. txtLosSantos = TextDrawCreate(10.0, 380.0, "Los Santos");
  193. ClassSel_InitCityNameText(txtLosSantos);
  194. txtSanFierro = TextDrawCreate(10.0, 380.0, "San Fierro");
  195. ClassSel_InitCityNameText(txtSanFierro);
  196. txtLasVenturas = TextDrawCreate(10.0, 380.0, "Las Venturas");
  197. ClassSel_InitCityNameText(txtLasVenturas);
  198.  
  199. // Init our observer helper text display
  200. txtClassSelHelper = TextDrawCreate(10.0, 415.0,
  201. " Press ~b~~k~~GO_LEFT~ ~w~or ~b~~k~~GO_RIGHT~ ~w~to switch cities.~n~ Press ~r~~k~~PED_FIREWEAPON~ ~w~to select.");
  202. TextDrawUseBox(txtClassSelHelper, 1);
  203. TextDrawBoxColor(txtClassSelHelper,0x222222BB);
  204. TextDrawLetterSize(txtClassSelHelper,0.3,1.0);
  205. TextDrawTextSize(txtClassSelHelper,400.0,40.0);
  206. TextDrawFont(txtClassSelHelper, 2);
  207. TextDrawSetShadow(txtClassSelHelper,0);
  208. TextDrawSetOutline(txtClassSelHelper,1);
  209. TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
  210. TextDrawColor(txtClassSelHelper,0xFFFFFFFF);
  211. }
  212.  
  213. //----------------------------------------------------------
  214.  
  215. ClassSel_SetupSelectedCity(playerid)
  216. {
  217. if(gPlayerCitySelection[playerid] == -1) {
  218. gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
  219. }
  220.  
  221. if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
  222. SetPlayerInterior(playerid,0);
  223. SetPlayerCameraPos(playerid,1630.6136,-2286.0298,110.0);
  224. SetPlayerCameraLookAt(playerid,1887.6034,-1682.1442,47.6167);
  225.  
  226. TextDrawShowForPlayer(playerid,txtLosSantos);
  227. TextDrawHideForPlayer(playerid,txtSanFierro);
  228. TextDrawHideForPlayer(playerid,txtLasVenturas);
  229. }
  230. else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
  231. SetPlayerInterior(playerid,0);
  232. SetPlayerCameraPos(playerid,-1300.8754,68.0546,129.4823);
  233. SetPlayerCameraLookAt(playerid,-1817.9412,769.3878,132.6589);
  234.  
  235. TextDrawHideForPlayer(playerid,txtLosSantos);
  236. TextDrawShowForPlayer(playerid,txtSanFierro);
  237. TextDrawHideForPlayer(playerid,txtLasVenturas);
  238. }
  239. else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
  240. SetPlayerInterior(playerid,0);
  241. SetPlayerCameraPos(playerid,1310.6155,1675.9182,110.7390);
  242. SetPlayerCameraLookAt(playerid,2285.2944,1919.3756,68.2275);
  243.  
  244. TextDrawHideForPlayer(playerid,txtLosSantos);
  245. TextDrawHideForPlayer(playerid,txtSanFierro);
  246. TextDrawShowForPlayer(playerid,txtLasVenturas);
  247. }
  248. }
  249.  
  250. //----------------------------------------------------------
  251.  
  252. ClassSel_SwitchToNextCity(playerid)
  253. {
  254. gPlayerCitySelection[playerid]++;
  255. if(gPlayerCitySelection[playerid] > CITY_LAS_VENTURAS) {
  256. gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
  257. }
  258. PlayerPlaySound(playerid,1052,0.0,0.0,0.0);
  259. gPlayerLastCitySelectionTick[playerid] = GetTickCount();
  260. ClassSel_SetupSelectedCity(playerid);
  261. }
  262.  
  263. //----------------------------------------------------------
  264.  
  265. ClassSel_SwitchToPreviousCity(playerid)
  266. {
  267. gPlayerCitySelection[playerid]--;
  268. if(gPlayerCitySelection[playerid] < CITY_LOS_SANTOS) {
  269. gPlayerCitySelection[playerid] = CITY_LAS_VENTURAS;
  270. }
  271. PlayerPlaySound(playerid,1053,0.0,0.0,0.0);
  272. gPlayerLastCitySelectionTick[playerid] = GetTickCount();
  273. ClassSel_SetupSelectedCity(playerid);
  274. }
  275.  
  276. //----------------------------------------------------------
  277.  
  278. ClassSel_HandleCitySelection(playerid)
  279. {
  280. new Keys,ud,lr;
  281. GetPlayerKeys(playerid,Keys,ud,lr);
  282.  
  283. if(gPlayerCitySelection[playerid] == -1) {
  284. ClassSel_SwitchToNextCity(playerid);
  285. return;
  286. }
  287.  
  288. // only allow new selection every ~500 ms
  289. if( (GetTickCount() - gPlayerLastCitySelectionTick[playerid]) < 500 ) return;
  290.  
  291. if(Keys & KEY_FIRE) {
  292. gPlayerHasCitySelected[playerid] = 1;
  293. TextDrawHideForPlayer(playerid,txtClassSelHelper);
  294. TextDrawHideForPlayer(playerid,txtLosSantos);
  295. TextDrawHideForPlayer(playerid,txtSanFierro);
  296. TextDrawHideForPlayer(playerid,txtLasVenturas);
  297. TogglePlayerSpectating(playerid,0);
  298. return;
  299. }
  300.  
  301. if(lr > 0) {
  302. ClassSel_SwitchToNextCity(playerid);
  303. }
  304. else if(lr < 0) {
  305. ClassSel_SwitchToPreviousCity(playerid);
  306. }
  307. }
  308.  
  309. //----------------------------------------------------------
  310.  
  311. public OnPlayerRequestClass(playerid, classid)
  312. {
  313. if(IsPlayerNPC(playerid)) return 1;
  314.  
  315. if(gPlayerHasCitySelected[playerid]) {
  316. ClassSel_SetupCharSelection(playerid);
  317. return 1;
  318. } else {
  319. if(GetPlayerState(playerid) != PLAYER_STATE_SPECTATING) {
  320. TogglePlayerSpectating(playerid,1);
  321. TextDrawShowForPlayer(playerid, txtClassSelHelper);
  322. gPlayerCitySelection[playerid] = -1;
  323. }
  324. }
  325.  
  326. return 0;
  327. }
  328.  
  329. //----------------------------------------------------------
  330.  
  331. public OnGameModeInit()
  332. {
  333. SetGameModeText("Grand Larceny");
  334. ShowPlayerMarkers(PLAYER_MARKERS_MODE_GLOBAL);
  335. ShowNameTags(1);
  336. SetNameTagDrawDistance(40.0);
  337. EnableStuntBonusForAll(0);
  338. DisableInteriorEnterExits();
  339. SetWeather(2);
  340. SetWorldTime(11);
  341.  
  342. //ManualVehicleEngineAndLights();
  343. //LimitGlobalChatRadius(300.0);
  344.  
  345. ClassSel_InitTextDraws();
  346.  
  347. // Player Class
  348. AddPlayerClass(1,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  349. AddPlayerClass(2,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  350. AddPlayerClass(269,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  351. AddPlayerClass(270,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  352. AddPlayerClass(271,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  353. AddPlayerClass(272,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  354. AddPlayerClass(47,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  355. AddPlayerClass(48,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  356. AddPlayerClass(49,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  357. AddPlayerClass(50,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  358. AddPlayerClass(51,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  359. AddPlayerClass(52,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  360. AddPlayerClass(53,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  361. AddPlayerClass(54,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  362. AddPlayerClass(55,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  363. AddPlayerClass(56,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  364. AddPlayerClass(57,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  365. AddPlayerClass(58,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  366. AddPlayerClass(68,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  367. AddPlayerClass(69,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  368. AddPlayerClass(70,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  369. AddPlayerClass(71,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  370. AddPlayerClass(72,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  371. AddPlayerClass(73,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  372. AddPlayerClass(75,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  373. AddPlayerClass(76,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  374. AddPlayerClass(78,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  375. AddPlayerClass(79,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  376. AddPlayerClass(80,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  377. AddPlayerClass(81,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  378. AddPlayerClass(82,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  379. AddPlayerClass(83,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  380. AddPlayerClass(84,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  381. AddPlayerClass(85,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  382. AddPlayerClass(87,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  383. AddPlayerClass(88,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  384. AddPlayerClass(89,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  385. AddPlayerClass(91,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  386. AddPlayerClass(92,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  387. AddPlayerClass(93,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  388. AddPlayerClass(95,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  389. AddPlayerClass(96,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  390. AddPlayerClass(97,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  391. AddPlayerClass(98,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  392. AddPlayerClass(99,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
  393.  
  394. // SPECIAL
  395. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/trains.txt");
  396. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/pilots.txt");
  397.  
  398. // LAS VENTURAS
  399. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_law.txt");
  400. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_airport.txt");
  401. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_gen.txt");
  402.  
  403. // SAN FIERRO
  404. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_law.txt");
  405. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_airport.txt");
  406. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_gen.txt");
  407.  
  408. // LOS SANTOS
  409. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_law.txt");
  410. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_airport.txt");
  411. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_inner.txt");
  412. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_outer.txt");
  413.  
  414. // OTHER AREAS
  415. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/whetstone.txt");
  416. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/bone.txt");
  417. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/flint.txt");
  418. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/tierra.txt");
  419. total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/red_county.txt");
  420.  
  421. printf("Total vehicles from files: %d",total_vehicles_from_files);
  422.  
  423. CreateObject(1634,2471.30004883,-1662.00000000,13.60000038,0.00000000,0.00000000,0.00000000); //object(landjump2) (1)
  424. CreateObject(1634,2475.39990234,-1662.00000000,13.60000038,0.00000000,0.00000000,0.00000000); //object(landjump2) (2)
  425. CreateObject(1634,2471.29980469,-1655.69921875,17.50000000,12.99682617,0.00000000,0.00000000); //object(landjump2) (3)
  426. CreateObject(1634,2475.39941406,-1655.69921875,17.50000000,12.99682617,0.00000000,0.00000000); //object(landjump2) (6)
  427. CreateObject(1634,2471.30004883,-1652.00000000,21.79999924,33.99652100,0.30154419,0.08135986); //object(landjump2) (3)
  428. CreateObject(1634,2475.39990234,-1652.00000000,21.79999924,33.99169922,0.29663086,0.07690430); //object(landjump2) (3)
  429. CreateObject(1634,2471.30004883,-1649.40002441,27.10000038,43.99154663,0.34185791,0.00531006); //object(landjump2) (3)
  430. CreateObject(1634,2475.39990234,-1649.40002441,27.10000038,43.98925781,0.34057617,0.00000000); //object(landjump2) (3)
  431. CreateObject(1634,2471.30004883,-1648.00000000,32.50000000,55.98892212,0.43807983,359.87341309); //object(landjump2) (3)
  432. CreateObject(1634,2475.39990234,-1648.00000000,32.50000000,55.98632812,0.43395996,359.86816406); //object(landjump2) (3)
  433. CreateObject(1634,2471.30004883,-1647.69995117,38.09999847,66.98590088,0.62091064,359.65637207); //object(landjump2) (3)
  434. CreateObject(1634,2475.39990234,-1647.69995117,38.09999847,66.98364258,0.62072754,359.65393066); //object(landjump2) (3)
  435. CreateObject(1634,2471.30004883,-1648.69995117,43.90000153,80.98159790,1.54846191,358.69592285); //object(landjump2) (3)
  436. CreateObject(1634,2475.39990234,-1648.69995117,43.90000153,80.98022461,1.54357910,358.69262695); //object(landjump2) (3)
  437. CreateObject(3571,2471.60009766,-1671.90002441,25.00000000,0.00000000,0.00000000,268.25000000); //object(lasdkrt3) (1)
  438. CreateObject(3571,2474.19995117,-1672.00000000,25.00000000,0.00000000,0.00000000,268.24768066); //object(lasdkrt3) (2)
  439. CreateObject(9093,2475.39990234,-1671.80004883,26.60000038,0.00000000,0.00000000,358.25000000); //object(cmdgrgdoor_lvs) (1)
  440. CreateObject(9093,2470.39990234,-1671.59997559,26.60000038,0.00000000,0.00000000,177.99768066); //object(cmdgrgdoor_lvs) (2)
  441. CreateObject(3571,2471.39990234,-1676.90002441,25.00000000,0.00000000,0.00000000,268.24768066); //object(lasdkrt3) (4)
  442. CreateObject(3571,2474.00000000,-1677.00000000,25.00000000,0.00000000,0.00000000,268.24768066); //object(lasdkrt3) (5)
  443. CreateObject(9093,2470.19995117,-1677.19995117,26.60000038,0.00000000,0.00000000,177.99499512); //object(cmdgrgdoor_lvs) (3)
  444. CreateObject(9093,2475.19995117,-1677.40002441,26.60000038,0.00000000,0.00000000,357.99499512); //object(cmdgrgdoor_lvs) (4)
  445. CreateObject(1634,2472.39990234,-1685.50000000,27.29999924,0.00000000,0.00000000,178.49487305); //object(landjump2) (18)
  446. CreateObject(3571,2472.19995117,-1707.90002441,29.00000000,0.00000000,0.00000000,268.24768066); //object(lasdkrt3) (6)
  447. CreateObject(3571,2472.00000000,-1714.80004883,29.00000000,0.00000000,0.00000000,268.24768066); //object(lasdkrt3) (7)
  448. CreateObject(3571,2470.50000000,-1722.19921875,29.00000000,0.00000000,0.00000000,248.49426270); //object(lasdkrt3) (8)
  449. CreateObject(3571,2464.30004883,-1737.50000000,31.00000000,0.00000000,0.00000000,248.49426270); //object(lasdkrt3) (8)
  450. CreateObject(5153,2468.39941406,-1727.19921875,31.10000038,0.00000000,0.00000000,246.99462891); //object(stuntramp7_las2) (1)
  451. CreateObject(3571,2461.39990234,-1744.90002441,31.00000000,0.00000000,0.00000000,248.49426270); //object(lasdkrt3) (8)
  452. CreateObject(3571,2458.50000000,-1752.30004883,31.00000000,0.00000000,0.00000000,248.49426270); //object(lasdkrt3) (8)
  453. CreateObject(1245,2456.60009766,-1754.30004883,33.79999924,0.00000000,0.00000000,70.00000000); //object(newramp) (1)
  454. CreateObject(3571,2452.69995117,-1764.90002441,33.50000000,0.00000000,0.00000000,158.49426270); //object(lasdkrt3) (8)
  455. CreateObject(3571,2451.80004883,-1767.30004883,33.50000000,0.00000000,0.00000000,158.49426270); //object(lasdkrt3) (8)
  456. CreateObject(5153,2468.69995117,-1726.50000000,29.70000076,359.99987793,157.99993896,248.99462891); //object(stuntramp7_las2) (1)
  457. CreateObject(3571,2450.80004883,-1769.69995117,33.50000000,0.00000000,0.00000000,158.49426270); //object(lasdkrt3) (8)
  458. CreateObject(13647,2433.50000000,-1784.09997559,34.79999924,0.00000000,0.00000000,224.50000000); //object(wall1) (1)
  459. CreateObject(3571,2449.89990234,-1772.09997559,33.50000000,0.00000000,0.00000000,158.49426270); //object(lasdkrt3) (8)
  460. CreateObject(13647,2433.89990234,-1784.50000000,34.79999924,0.00000000,0.00000000,224.49462891); //object(wall1) (4)
  461. CreateObject(3571,2449.00000000,-1774.50000000,33.50000000,0.00000000,0.00000000,158.49426270); //object(lasdkrt3) (8)
  462. CreateObject(3571,2419.10009766,-1798.90002441,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  463. CreateObject(3571,2417.30004883,-1800.69995117,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  464. CreateObject(3571,2415.60009766,-1802.50000000,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  465. CreateObject(3571,2413.80004883,-1804.30004883,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  466. CreateObject(3571,2412.10009766,-1806.09997559,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  467. CreateObject(1322,2418.50000000,-1797.80004883,37.70000076,0.00000000,0.00000000,20.00000000); //object(ws_roadwarning_02) (1)
  468. CreateObject(3571,2410.30004883,-1807.90002441,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  469. CreateObject(3571,2408.60009766,-1809.80004883,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  470. CreateObject(3571,2406.80004883,-1811.59997559,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  471. CreateObject(3571,2405.00000000,-1813.40002441,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  472. CreateObject(3571,2403.30004883,-1815.30004883,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  473. CreateObject(1634,2399.00000000,-1819.69995117,38.20000076,0.00000000,0.00000000,136.00000000); //object(landjump2) (4)
  474. CreateObject(3571,2401.39990234,-1817.09997559,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  475. CreateObject(3571,2399.69995117,-1819.09997559,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  476. CreateObject(3571,2397.89990234,-1820.90002441,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  477. CreateObject(3571,2396.19921875,-1822.79980469,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  478. CreateObject(3571,2364.30004883,-1856.40002441,21.29999924,0.00000000,0.00000000,137.99426270); //object(lasdkrt3) (8)
  479. CreateObject(3571,2362.69995117,-1858.19995117,21.29999924,0.00000000,0.00000000,137.99377441); //object(lasdkrt3) (8)
  480. CreateObject(3571,2361.10009766,-1860.00000000,21.29999924,0.00000000,0.00000000,137.99377441); //object(lasdkrt3) (8)
  481. CreateObject(3571,2359.39990234,-1861.90002441,21.29999924,0.00000000,0.00000000,137.99377441); //object(lasdkrt3) (8)
  482. CreateObject(3571,2391.60009766,-1821.69995117,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  483. CreateObject(3571,2397.30004883,-1827.19995117,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  484. CreateObject(3571,2395.69995117,-1828.90002441,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  485. CreateObject(3571,2390.00000000,-1823.40002441,35.59999847,0.00000000,0.00000000,135.99426270); //object(lasdkrt3) (8)
  486. CreateObject(8873,2389.80004883,-1821.59997559,43.00000000,0.00000000,0.00000000,340.00000000); //object(vgsecnstrct12) (3)
  487. CreateObject(8873,2397.50000000,-1829.30004883,43.00000000,0.00000000,0.00000000,230.00000000); //object(vgsecnstrct12) (4)
  488. CreateObject(5152,2471.50000000,-1724.30004883,13.39999962,0.00000000,0.00000000,90.00000000); //object(stuntramp1_las2) (1)
  489. CreateObject(3571,2365.80004883,-1854.69995117,21.29999924,0.00000000,0.00000000,137.99377441); //object(lasdkrt3) (8)
  490.  
  491. return 1;
  492. }
  493.  
  494. //----------------------------------------------------------
  495.  
  496. public OnPlayerUpdate(playerid)
  497. {
  498. if(!IsPlayerConnected(playerid)) return 0;
  499.  
  500. // changing cities by inputs
  501. if( !gPlayerHasCitySelected[playerid] &&
  502. GetPlayerState(playerid) == PLAYER_STATE_SPECTATING ) {
  503. ClassSel_HandleCitySelection(playerid);
  504. return 1;
  505. }
  506.  
  507. // No weapons in interiors
  508. if(GetPlayerInterior(playerid) != 0 && GetPlayerWeapon(playerid) != 0) {
  509. SetPlayerArmedWeapon(playerid,0); // fists
  510. return 0; // no syncing until they change their weapon
  511. }
  512.  
  513. // Don't allow minigun
  514. if(GetPlayerWeapon(playerid) == WEAPON_MINIGUN) {
  515. Kick(playerid);
  516. return 0;
  517. }
  518.  
  519. /* No jetpacks allowed
  520. if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USEJETPACK) {
  521. Kick(playerid);
  522. return 0;
  523. }*/
  524.  
  525. /* For testing animations
  526. if(GetPlayerAnimationIndex(playerid))
  527. {
  528. new animlib[32];
  529. new animname[32];
  530. new msg[128+1];
  531. GetAnimationName(GetPlayerAnimationIndex(playerid),animlib,32,animname,32);
  532. format(msg, 128, "anim: %s %s", animlib, animname);
  533. SendClientMessage(playerid, 0xFFFFFFFF, msg);
  534. } else {
  535. SendClientMessage(playerid, 0xFFFFFFFF, "No Anim");
  536. }*/
  537.  
  538. return 1;
  539. }
  540.  
  541. //----------------------------------------------------------
  542. forward LoadPlayerData(playerid);
  543. public LoadPlayerData(playerid)
  544. {
  545. new pname[MAX_PLAYER_NAME];
  546. new file[MAX_PLAYER_NAME];
  547. GetPlayerName(playerid, pname, sizeof(pname));
  548. format(file, sizeof(file), "/save/%s.ini", pname);
  549. if(!dini_Exists(file))
  550. {
  551. dini_Create(file);
  552. }
  553. else
  554. {
  555. PlayerInfo[playerid][pMoney] = dini_Int(file,"Money");
  556. // and others..
  557. }
  558. }
Advertisement
Add Comment
Please, Sign In to add comment