Guest User

Pickupsystem by DrMurphy V1.0

a guest
Mar 19th, 2014
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 19.38 KB | None | 0 0
  1. /*
  2. ============================================================= Dynamisches Pickup-System by DrMurphy ========================================================================================================
  3.  
  4. Copyright: Dieses Filterscript ist Eigentum von DrMurphy (samp Forum: http://forum.sa-mp.de/index.php?page=User&userID=32610)
  5. und darf zwar verwendet und auch verändert werden, jedoch nicht als eigenes System ausgegeben werden, sondern es muss darauf hingewiesen werden,
  6. dass die Grundstruktur des Scripts DrMurphy stammt.
  7. Außerdem darf dieser Text weder entfernt, noch von anderen Personen außer DrMurphy verändert werden.
  8.  
  9. Benutzerhinweise: Eine ausführliche Erklärung aller Befehle und Funktionen ist im sa-mp.de Forum im Showroom des Systems zu finden.
  10. Verbesserungsvorschläge und Ideen für neue Funktionen werden dort ebenfalls gerne gesehen.
  11.  
  12. Version: 1.0
  13.  
  14. Datum: 19.03.2014 um 17:21 Uhr
  15.  
  16. =============================================================================================================================================================================================================
  17. */
  18.  
  19. #define FILTERSCRIPT
  20.  
  21. #include <a_samp>
  22. #include <sscanf2>
  23. #include <dini>
  24.  
  25. #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
  26.  
  27. #define MAX_PICKS 500
  28.  
  29. //Farben:
  30. #define COLOR_GREY 0xAFAFAFAA
  31. #define COLOR_GREEN 0x33AA33AA
  32. #define COLOR_RED 0xAA3333AA
  33. #define COLOR_YELLOW 0xFFFF00AA
  34. #define COLOR_WHITE 0xFFFFFFAA
  35. #define COLOR_BLUE 0x0000BBAA
  36. #define COLOR_LIGHTBLUE 0x33CCFFAA
  37. #define COLOR_ORANGE 0xFF9900AA
  38. #define COLOR_LIME 0x10F441AA
  39. #define COLOR_MAGENTA 0xFF00FFFF
  40. #define COLOR_NAVY 0x000080AA
  41. #define COLOR_AQUA 0xF0F8FFAA
  42. #define COLOR_CRIMSON 0xDC143CAA
  43. #define COLOR_FLBLUE 0x6495EDAA
  44. #define COLOR_BISQUE 0xFFE4C4AA
  45. #define COLOR_BLACK 0x000000AA
  46. #define COLOR_CHARTREUSE 0x7FFF00AA
  47. #define COLOR_BROWN 0XA52A2AAA
  48. #define COLOR_CORAL 0xFF7F50AA
  49. #define COLOR_GOLD 0xB8860BAA
  50. #define COLOR_GREENYELLOW 0xADFF2FAA
  51. #define COLOR_INDIGO 0x4B00B0AA
  52. #define COLOR_IVORY 0xFFFF82AA
  53. #define COLOR_LAWNGREEN 0x7CFC00AA
  54. #define COLOR_SEAGREEN 0x20B2AAAA
  55. #define COLOR_DARKLIME 0x32CD32AA
  56. #define COLOR_MIDNIGHTBLUE 0X191970AA
  57. #define COLOR_MAROON 0x800000AA
  58. #define COLOR_OLIVE 0x808000AA
  59. #define COLOR_ORANGERED 0xFF4500AA
  60. #define COLOR_LIGHTLIGHTPINK 0xFFC0CBAA
  61. #define COLOR_SPRINGGREEN 0x00FF7FAAP
  62. #define COLOR_YELLOWGREEN 0x9ACD32AA
  63. #define COLOR_MEDIUMAQUA 0x83BFBFAA
  64. #define COLOR_DARKMAGENTA 0x8B008BAA
  65.  
  66. //Dialoge:
  67. #define DIALOG_CABBRECHEN 891
  68. #define DIALOG_CREMOVE 892
  69.  
  70. enum PickupDaten
  71. {
  72. name[128],
  73. id,
  74. type,
  75. interior,
  76. Float:posx,
  77. Float:posy,
  78. Float:posz,
  79. Float:tpx,
  80. Float:tpy,
  81. Float:tpz,
  82. Float:tpang,
  83. dpickup,
  84. Text3D:tlabel,
  85. aktiv
  86. }
  87.  
  88. new pickupI[MAX_PICKS][PickupDaten];
  89.  
  90. new peditid[MAX_PLAYERS];
  91. new peditid2[MAX_PLAYERS];
  92. new newpickup[MAX_PLAYERS];
  93.  
  94. #if defined FILTERSCRIPT
  95.  
  96. public OnFilterScriptInit()
  97. {
  98. print("\n----------------------------------------------------------");
  99. print("Dynamisches Pickup-System by DrMurphy erfolgreich geladen!");
  100. print("----------------------------------------------------------\n");
  101. new pdatei[128];
  102. for(new i = 0; MAX_PICKS > i; i++)
  103. {
  104. format(pdatei,128,"/DPickups/Pickup%i.txt",i);
  105. if(dini_Exists(pdatei))
  106. {
  107. //laden
  108. pickupI[i][aktiv] = 1;
  109. pickupI[i][id] = i;
  110. pickupI[i][type] = dini_Int(pdatei,"Model");
  111. pickupI[i][interior] = dini_Int(pdatei,"Interior");
  112. format(pickupI[i][name],128,"%s",dini_Get(pdatei,"Name"));
  113. pickupI[i][posx] = dini_Float(pdatei,"Pos_X");
  114. pickupI[i][posy] = dini_Float(pdatei,"Pos_Y");
  115. pickupI[i][posz] = dini_Float(pdatei,"Pos_Z");
  116. pickupI[i][tpx] = dini_Int(pdatei,"TP_X");
  117. pickupI[i][tpy] = dini_Int(pdatei,"TP_Y");
  118. pickupI[i][tpz] = dini_Int(pdatei,"TP_Z");
  119. pickupI[i][tpang] = dini_Int(pdatei,"TP_Ang");
  120. pickupI[i][dpickup] = CreatePickup(pickupI[i][type],1,pickupI[i][posx],pickupI[i][posy],pickupI[i][posz],0);
  121. new string[128];
  122. format(string,sizeof(string),"%s\nEntertaste drücken",pickupI[i][name]);
  123. pickupI[i][tlabel] = Create3DTextLabel(string,COLOR_LIGHTBLUE,pickupI[i][posx],pickupI[i][posy],pickupI[i][posz] + 1,10,0,0);
  124. }
  125. }
  126. return 1;
  127. }
  128.  
  129. public OnFilterScriptExit()
  130. {
  131. return 1;
  132. }
  133.  
  134. #else
  135.  
  136. main()
  137. {
  138. print(" ");
  139. print(" ");
  140. print(" ");
  141. }
  142.  
  143. #endif
  144.  
  145. public OnGameModeInit()
  146. {
  147. return 1;
  148. }
  149.  
  150. public OnGameModeExit()
  151. {
  152. return 1;
  153. }
  154.  
  155. public OnPlayerRequestClass(playerid, classid)
  156. {
  157. return 1;
  158. }
  159.  
  160. public OnPlayerConnect(playerid)
  161. {
  162. newpickup[playerid] = 0;
  163. peditid[playerid] = 0;
  164. peditid2[playerid] = 0;
  165. return 1;
  166. }
  167.  
  168. public OnPlayerDisconnect(playerid, reason)
  169. {
  170. return 1;
  171. }
  172.  
  173. public OnPlayerSpawn(playerid)
  174. {
  175. return 1;
  176. }
  177.  
  178. public OnPlayerDeath(playerid, killerid, reason)
  179. {
  180. return 1;
  181. }
  182.  
  183. public OnVehicleSpawn(vehicleid)
  184. {
  185. return 1;
  186. }
  187.  
  188. public OnVehicleDeath(vehicleid, killerid)
  189. {
  190. return 1;
  191. }
  192.  
  193. public OnPlayerText(playerid, text[])
  194. {
  195. return 1;
  196. }
  197.  
  198. public OnPlayerCommandText(playerid, cmdtext[])
  199. {
  200. dcmd(ceingang, 8, cmdtext);
  201. dcmd(causgang, 8, cmdtext);
  202.  
  203. if(strcmp("/premove", cmdtext, true, 10) == 0)
  204. {
  205. if(IsPlayerAdmin(playerid))
  206. {
  207. if(newpickup[playerid] == 0)
  208. {
  209. for(new i = 0; MAX_PICKS > i; i++)
  210. {
  211. if(IsPlayerInRangeOfPoint(playerid,2,pickupI[i][posx],pickupI[i][posy],pickupI[i][posz]))
  212. {
  213. peditid[playerid] = i;
  214. ShowPlayerDialog(playerid,DIALOG_CREMOVE,DIALOG_STYLE_MSGBOX,"Pickup löschen - Bestätigung","Möchtest du das Pickup wirklich löschen?","Ja","Nein");
  215. return 1;
  216. }
  217. }
  218. SendClientMessage(playerid,COLOR_RED,"In deiner Nähe befindet sich kein dynamisches Pickup!");
  219. return 1;
  220. }
  221. else
  222. {
  223. return SendClientMessage(playerid,COLOR_RED,"Du musst die Editierung des Pickups erst abbrechen! (/pabbrechen)");
  224. }
  225. }
  226. else
  227. {
  228. return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin!");
  229. }
  230. }
  231.  
  232. if(strcmp("/causgangspawn", cmdtext, true, 15) == 0)
  233. {
  234. if(IsPlayerAdmin(playerid))
  235. {
  236. if(newpickup[playerid] == 4)
  237. {
  238. new Float:x, Float:y, Float:z, Float:ang;
  239. GetPlayerPos(playerid,x,y,z);
  240. GetPlayerFacingAngle(playerid,ang);
  241. new i = peditid2[playerid];
  242. pickupI[i][tpx] = x;
  243. pickupI[i][tpy] = y;
  244. pickupI[i][tpz] = z;
  245. pickupI[i][tpang] = ang;
  246. new pdatei[128];
  247. format(pdatei,128,"/DPickups/Pickup%i.txt",i);
  248. dini_FloatSet(pdatei,"TP_X",pickupI[i][tpx]);
  249. dini_FloatSet(pdatei,"TP_Y",pickupI[i][tpy]);
  250. dini_FloatSet(pdatei,"TP_Z",pickupI[i][tpz]);
  251. dini_FloatSet(pdatei,"TP_Ang",pickupI[i][tpang]);
  252. newpickup[playerid] = 0;
  253. peditid[playerid] = 0;
  254. peditid2[playerid] = 0;
  255. SendClientMessage(playerid,COLOR_GREEN,"Ausgang Spawn erfolgreich erstellt!");
  256. SendClientMessage(playerid,COLOR_YELLOW,"Erstellung des dynamischen Ein- bzw. Ausgangs erfolgreich abgeschlossen!");
  257. return 1;
  258. }
  259. else
  260. {
  261. return SendClientMessage(playerid,COLOR_RED,"Du musst vorher '/cpickup' eingeben!");
  262. }
  263. }
  264. else
  265. {
  266. return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin!");
  267. }
  268. }
  269.  
  270. if(strcmp("/ceingangspawn", cmdtext, true, 15) == 0)
  271. {
  272. if(IsPlayerAdmin(playerid))
  273. {
  274. if(newpickup[playerid] == 2)
  275. {
  276. new Float:x, Float:y, Float:z, Float:ang;
  277. GetPlayerPos(playerid,x,y,z);
  278. GetPlayerFacingAngle(playerid,ang);
  279. new i = peditid[playerid];
  280. pickupI[i][tpx] = x;
  281. pickupI[i][tpy] = y;
  282. pickupI[i][tpz] = z;
  283. pickupI[i][tpang] = ang;
  284. new pdatei[128];
  285. format(pdatei,128,"/DPickups/Pickup%i.txt",i);
  286. dini_FloatSet(pdatei,"TP_X",pickupI[i][tpx]);
  287. dini_FloatSet(pdatei,"TP_Y",pickupI[i][tpy]);
  288. dini_FloatSet(pdatei,"TP_Z",pickupI[i][tpz]);
  289. dini_FloatSet(pdatei,"TP_Ang",pickupI[i][tpang]);
  290. newpickup[playerid] = 3;
  291. SendClientMessage(playerid,COLOR_GREEN,"Eingang Spawn erfolgreich erstellt!");
  292. SendClientMessage(playerid,COLOR_YELLOW,"Wenn du keinen Ausgang erstellen möchtest gib '/pabbrechen' ein. Der Eingang bleibt gespeichert!");
  293. SendClientMessage(playerid,COLOR_YELLOW,"Gib jetzt '/causgang' an der Stelle ein wo der Ausgang sein soll.");
  294. return 1;
  295. }
  296. if(newpickup[playerid] > 2)
  297. {
  298. return SendClientMessage(playerid,COLOR_RED,"Diesen Schritt hast du bereits gemacht! ('/pabbrechen' um die Editierung abzubrechen)");
  299. }
  300. else
  301. {
  302. return SendClientMessage(playerid,COLOR_RED,"Du musst vorher '/cpickup' eingeben!");
  303. }
  304. }
  305. else
  306. {
  307. return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin!");
  308. }
  309. }
  310.  
  311. if (strcmp("/cpickup", cmdtext, true, 10) == 0)
  312. {
  313. if(IsPlayerAdmin(playerid))
  314. {
  315. if(newpickup[playerid] == 0)
  316. {
  317. newpickup[playerid] = 1;
  318. SendClientMessage(playerid,COLOR_GREEN,"Erstellung eines neuen Pickups begonnen!");
  319. SendClientMessage(playerid,COLOR_YELLOW,"Gib '/ceingang' an der Position ein wo der Eingang sein soll.");
  320. return 1;
  321. }
  322. else
  323. {
  324. return SendClientMessage(playerid,COLOR_RED,"Du erstellst gerade noch ein Pickup! (Zum Abbrechen: /pabbrechen)");
  325. }
  326. }
  327. else
  328. {
  329. return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin!");
  330. }
  331. }
  332. if(strcmp("/pabbrechen", cmdtext, true, 15) == 0)
  333. {
  334. if(IsPlayerAdmin(playerid))
  335. {
  336. ShowPlayerDialog(playerid,DIALOG_CABBRECHEN,DIALOG_STYLE_MSGBOX,"Abbrechen - Bestätigung","Bist du sicher dass du die Editierung des Pickups abbrechen möchtest?\nDie vorgenommenen Einstellungen an dem Pickup gehen dabei vielleicht verloren!","Ja","Nein");
  337. return 1;
  338. }
  339. else
  340. {
  341. return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin!");
  342. }
  343. }
  344. return 0;
  345. }
  346.  
  347. dcmd_causgang(playerid, params[])
  348. {
  349. if(IsPlayerAdmin(playerid))
  350. {
  351. if(newpickup[playerid] == 3)
  352. {
  353. new pname[128], pmodel;
  354. if(sscanf(params, "si", pname, pmodel))
  355. {
  356. return SendClientMessage(playerid,COLOR_LIGHTBLUE,"Verwendung: /causgang [Name des Ausgangs] [Pickup Model]");
  357. }
  358. else
  359. {
  360. new pdatei[128];
  361. for(new i = 0; MAX_PICKS > i; i++)
  362. {
  363. if(pickupI[i][aktiv] == 0)
  364. {
  365. format(pdatei,128,"/DPickups/Pickup%i.txt",i);
  366. dini_Create(pdatei);
  367. peditid2[playerid] = i;
  368. pickupI[i][aktiv] = 1;
  369. format(pickupI[i][name],128,"%s",pname);
  370. pickupI[i][id] = i;
  371. pickupI[i][tpx] = pickupI[peditid[playerid]][posx];
  372. pickupI[i][tpy] = pickupI[peditid[playerid]][posy];
  373. pickupI[i][tpz] = pickupI[peditid[playerid]][posz];
  374. pickupI[i][type] = pmodel;
  375. pickupI[i][interior] = 0;
  376. new Float:x, Float:y, Float:z;
  377. GetPlayerPos(playerid,x,y,z);
  378. pickupI[i][dpickup] = CreatePickup(pickupI[i][type],1,x,y,z,0);
  379. pickupI[i][posx] = x;
  380. pickupI[i][posy] = y;
  381. pickupI[i][posz] = z;
  382. new string[128];
  383. format(string,sizeof(string),"%s\nEntertaste drücken",pname);
  384. pickupI[i][tlabel] = Create3DTextLabel(string,COLOR_LIGHTBLUE,x,y,z + 1,10,0,0);
  385. dini_Set(pdatei,"Name",pickupI[i][name]);
  386. dini_IntSet(pdatei,"Model",pickupI[i][type]);
  387. dini_IntSet(pdatei,"Interior",pickupI[i][interior]);
  388. dini_FloatSet(pdatei,"Pos_X",pickupI[i][posx]);
  389. dini_FloatSet(pdatei,"Pos_Y",pickupI[i][posy]);
  390. dini_FloatSet(pdatei,"Pos_Z",pickupI[i][posz]);
  391. dini_FloatSet(pdatei,"TP_X",pickupI[i][tpx]);
  392. dini_FloatSet(pdatei,"TP_Y",pickupI[i][tpy]);
  393. dini_FloatSet(pdatei,"TP_Z",pickupI[i][tpz]);
  394. SendClientMessage(playerid,COLOR_GREEN,"Ausgang erfolgreich erstellt!");
  395. SendClientMessage(playerid,COLOR_YELLOW,"Gib '/causgangspawn' an der Stelle ein wo der Spieler spawnen soll.");
  396. SetPlayerPos(playerid,pickupI[i][tpx],pickupI[i][tpy],pickupI[i][tpz]);
  397. SetPlayerInterior(playerid,0);
  398. newpickup[playerid] = 4;
  399. return 1;
  400. }
  401. }
  402. SendClientMessage(playerid,COLOR_RED,"Die maximale Anzahl von Pickups wurde erreicht!");
  403. return 1;
  404. }
  405. }
  406. if(newpickup[playerid] > 3)
  407. {
  408. return SendClientMessage(playerid,COLOR_RED,"Diesen Schritt hast du bereits gemacht! ('/pabbrechen' um die Editierung abzubrechen)");
  409. }
  410. else
  411. {
  412. return SendClientMessage(playerid,COLOR_RED,"Du musst vorher '/cpickup' eingeben!");
  413. }
  414. }
  415. else
  416. {
  417. return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin!");
  418. }
  419. }
  420.  
  421. dcmd_ceingang(playerid, params[])
  422. {
  423. if(IsPlayerAdmin(playerid))
  424. {
  425. if(newpickup[playerid] == 1)
  426. {
  427. new pname[128], picon, pinterior;
  428. new Float:pposx, Float:pposy, Float:pposz;
  429. if(sscanf(params, "siifff", pname, picon, pinterior, pposx, pposy, pposz))
  430. {
  431. return SendClientMessage(playerid,COLOR_LIGHTBLUE,"Verwendung: /ceingang [Name des Eingangs] [Pickup Model] [Interior ID] [Spawn X] [Spawn Y] [Spawn Z]");
  432. }
  433. else
  434. {
  435. new pdatei[128];
  436. for(new i = 0; MAX_PICKS > i; i++)
  437. {
  438. if(pickupI[i][aktiv] == 0)
  439. {
  440. format(pdatei,sizeof(pdatei),"/DPickups/Pickup%i.txt",i);
  441. dini_Create(pdatei);
  442. pickupI[i][aktiv] = 1;
  443. format(pickupI[i][name],128,"%s",pname);
  444. pickupI[i][id] = i;
  445. peditid[playerid] = i;
  446. pickupI[i][tpx] = pposx;
  447. pickupI[i][tpy] = pposy;
  448. pickupI[i][tpz] = pposz;
  449. pickupI[i][type] = picon;
  450. pickupI[i][interior] = pinterior;
  451. new Float:x, Float:y, Float:z;
  452. GetPlayerPos(playerid,x,y,z);
  453. pickupI[i][dpickup] = CreatePickup(pickupI[i][type],1,x,y,z,0);
  454. pickupI[i][posx] = x;
  455. pickupI[i][posy] = y;
  456. pickupI[i][posz] = z;
  457. new string[128];
  458. format(string,sizeof(string),"%s\nEntertaste drücken",pname);
  459. pickupI[i][tlabel] = Create3DTextLabel(string,COLOR_LIGHTBLUE,x,y,z + 1,10,0,0);
  460. dini_Set(pdatei,"Name",pickupI[i][name]);
  461. dini_IntSet(pdatei,"Model",pickupI[i][type]);
  462. dini_IntSet(pdatei,"Interior",pickupI[i][interior]);
  463. dini_FloatSet(pdatei,"Pos_X",pickupI[i][posx]);
  464. dini_FloatSet(pdatei,"Pos_Y",pickupI[i][posy]);
  465. dini_FloatSet(pdatei,"Pos_Z",pickupI[i][posz]);
  466. dini_FloatSet(pdatei,"TP_X",pickupI[i][tpx]);
  467. dini_FloatSet(pdatei,"TP_Y",pickupI[i][tpy]);
  468. dini_FloatSet(pdatei,"TP_Z",pickupI[i][tpz]);
  469. SendClientMessage(playerid,COLOR_GREEN,"Eingang erfolgreich erstellt!");
  470. SendClientMessage(playerid,COLOR_YELLOW,"Gib nun '/ceingangspawn' an der Stelle ein wo der Spieler spawnen soll.");
  471. SetPlayerPos(playerid,pickupI[i][tpx],pickupI[i][tpy],pickupI[i][tpz]);
  472. SetPlayerInterior(playerid,pickupI[i][interior]);
  473. newpickup[playerid] = 2;
  474. return 1;
  475. }
  476. }
  477. SendClientMessage(playerid,COLOR_RED,"Die maximale Anzahl von Pickups wurde erreicht!");
  478. return 1;
  479. }
  480. }
  481. if(newpickup[playerid] > 1)
  482. {
  483. return SendClientMessage(playerid,COLOR_RED,"Diesen Schritt hast du bereits gemacht! ('/pabbrechen' um die Editierung abzubrechen)");
  484. }
  485. else
  486. {
  487. return SendClientMessage(playerid,COLOR_RED,"Du musst vorher '/cpickup' eingeben!");
  488. }
  489. }
  490. else
  491. {
  492. return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin!");
  493. }
  494. }
  495.  
  496. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  497. {
  498. return 1;
  499. }
  500.  
  501. public OnPlayerExitVehicle(playerid, vehicleid)
  502. {
  503. return 1;
  504. }
  505.  
  506. public OnPlayerStateChange(playerid, newstate, oldstate)
  507. {
  508. return 1;
  509. }
  510.  
  511. public OnPlayerEnterCheckpoint(playerid)
  512. {
  513. return 1;
  514. }
  515.  
  516. public OnPlayerLeaveCheckpoint(playerid)
  517. {
  518. return 1;
  519. }
  520.  
  521. public OnPlayerEnterRaceCheckpoint(playerid)
  522. {
  523. return 1;
  524. }
  525.  
  526. public OnPlayerLeaveRaceCheckpoint(playerid)
  527. {
  528. return 1;
  529. }
  530.  
  531. public OnRconCommand(cmd[])
  532. {
  533. return 1;
  534. }
  535.  
  536. public OnPlayerRequestSpawn(playerid)
  537. {
  538. return 1;
  539. }
  540.  
  541. public OnObjectMoved(objectid)
  542. {
  543. return 1;
  544. }
  545.  
  546. public OnPlayerObjectMoved(playerid, objectid)
  547. {
  548. return 1;
  549. }
  550.  
  551. public OnPlayerPickUpPickup(playerid, pickupid)
  552. {
  553. return 1;
  554. }
  555.  
  556. public OnVehicleMod(playerid, vehicleid, componentid)
  557. {
  558. return 1;
  559. }
  560.  
  561. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  562. {
  563. return 1;
  564. }
  565.  
  566. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  567. {
  568. return 1;
  569. }
  570.  
  571. public OnPlayerSelectedMenuRow(playerid, row)
  572. {
  573. return 1;
  574. }
  575.  
  576. public OnPlayerExitedMenu(playerid)
  577. {
  578. return 1;
  579. }
  580.  
  581. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  582. {
  583. return 1;
  584. }
  585.  
  586. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  587. {
  588. if(newkeys == 16) //enter
  589. {
  590. for(new i = 0; MAX_PICKS > i; i++)
  591. {
  592. if(IsPlayerInRangeOfPoint(playerid,2,pickupI[i][posx],pickupI[i][posy],pickupI[i][posz]))
  593. {
  594. if(pickupI[i][aktiv] == 1)
  595. {
  596. SetPlayerPos(playerid,pickupI[i][tpx],pickupI[i][tpy],pickupI[i][tpz]);
  597. SetPlayerInterior(playerid,pickupI[i][interior]);
  598. SetPlayerFacingAngle(playerid,pickupI[i][tpang]);
  599. SetCameraBehindPlayer(playerid);
  600. return 1;
  601. }
  602. }
  603. }
  604. }
  605. return 1;
  606. }
  607.  
  608. public OnRconLoginAttempt(ip[], password[], success)
  609. {
  610. return 1;
  611. }
  612.  
  613. public OnPlayerUpdate(playerid)
  614. {
  615. return 1;
  616. }
  617.  
  618. public OnPlayerStreamIn(playerid, forplayerid)
  619. {
  620. return 1;
  621. }
  622.  
  623. public OnPlayerStreamOut(playerid, forplayerid)
  624. {
  625. return 1;
  626. }
  627.  
  628. public OnVehicleStreamIn(vehicleid, forplayerid)
  629. {
  630. return 1;
  631. }
  632.  
  633. public OnVehicleStreamOut(vehicleid, forplayerid)
  634. {
  635. return 1;
  636. }
  637.  
  638. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  639. {
  640. if(dialogid == DIALOG_CREMOVE)
  641. {
  642. if(response == 1)
  643. {
  644. new i = peditid[playerid];
  645. pickupI[i][aktiv] = 0;
  646. new pdatei[128];
  647. format(pdatei,128,"/DPickups/Pickup%i.txt",i);
  648. dini_Remove(pdatei);
  649. DestroyPickup(pickupI[i][dpickup]);
  650. Delete3DTextLabel(pickupI[i][tlabel]);
  651. SendClientMessage(playerid,COLOR_GREEN,"Das Pickup wurde erfolgreich gelöscht!");
  652. return 1;
  653. }
  654. if(response == 0)
  655. {
  656. return 1;
  657. }
  658. return 1;
  659. }
  660.  
  661. if(dialogid == DIALOG_CABBRECHEN)
  662. {
  663. if(response == 1)
  664. {
  665. SendClientMessage(playerid,COLOR_GREEN,"Editierung des Pickups abgebrochen!");
  666. newpickup[playerid] = 0;
  667. return 1;
  668. }
  669. if(response == 0)
  670. {
  671. return 1;
  672. }
  673. return 1;
  674. }
  675. return 0;
  676. }
  677.  
  678. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  679. {
  680. return 1;
  681. }
Advertisement
Add Comment
Please, Sign In to add comment