Guest User

Untitled

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