Advertisement
Guest User

Untitled

a guest
Jul 17th, 2012
359
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 343.68 KB | None | 0 0
  1. /*
  2. Copyright by fair, MySQL Tutorial by Maddin.
  3. Dieser Kopfbereich darf nicht editiert werden das Werk steht unter eine CC Lizenz von FairNet-Works.
  4.  
  5. Changelog v0.6
  6.  
  7. - Datenverarbeitungsmethode via MySQL
  8. - Vereinfachung durch Dialoge und Stock´s ebenso durch Includes
  9. - Dynamische Gestaltung
  10. - AntiCheatsystem by Dark Trigardon erweitert durch Deuce
  11. - Haussystem by Vincent erweitert durch Deuce
  12. - Beamtenlohn editierbar
  13.  
  14. Changelog v0.6.2
  15.  
  16. - Firmenlohn pro Levelup
  17. - SL_Bedürfnissystem by Deuce
  18. - Grundstückbesitzt, Eigentum (Business, Privatgelände)
  19.  
  20. Changelog v0.6.4
  21.  
  22. - Whitelist für Betatester (Makeleader)
  23. - Setname, Lizenzen eingefügt
  24. - TeamChat
  25. - ATM´s eingefügt
  26. - Statistik setzen / Clearchat
  27. - Adminwarning bei sämmtlichen Adminbefehlen
  28.  
  29. Changelog v0.6.6
  30.  
  31. - AntiInflationssystem
  32. - Staatskasse + Steuern
  33.  
  34. Changelog v0.7
  35.  
  36. - Startbonus
  37. - Pickups
  38. - 3DLabel
  39. - Wantedsystem (Katalog 'OnPlayerKlicked')
  40. - Grund.inc
  41.  
  42. Changelog v0.8
  43.  
  44. - Camera für Beamte
  45. - Meldung für Beamte
  46. - Pflanze für Drogendealer
  47.  
  48. Changelog v0.9.1
  49.  
  50. - Wantedliste
  51. - Afksystem
  52. - Trucker eingefügt
  53. - Fahrschule
  54. - Adminliste
  55. - Befehle gefixxt
  56.  
  57. Changelog v1.0
  58.  
  59. - Lieferant
  60. - Pilot
  61. - Verbesserung und Optimierung
  62. - *Neu* OnPlayerCommandText
  63. - gta_sa.set Überprüfung via HTTP
  64.  
  65.  
  66. new CheckNames[]=
  67. {
  68. "Hans","Peter"
  69. };
  70.  
  71.  
  72.  
  73.  
  74. new pname[MAX_PLAYER_NAME];
  75. GetPlayerName(playerid, pname, MAX_PLAYER_NAME);
  76. for(new i = 0; i < sizeof CheckNames; i++)
  77. if(!strcmp(pname,CheckNames,true))
  78. {
  79. //Iwas
  80. }
  81. }
  82.  
  83.  
  84.  
  85. Weitere Versionen folgen.... (c) by Deuce
  86. */
  87. /*Includes*/
  88. //#error v0.9.5
  89. //Client Settings
  90. #define Versionzahl "vI.o"
  91. #define OCBlau 0x00C2ECFF
  92. #define mapname "mapname San Andreas"
  93. #define gmname "Streetlifehistory vI.o"
  94. /*Bedürfnissystem*/
  95. #define BEDARFUPDATE 500/2
  96. #define _100 "IIIIIIIIIIIIIIIIII"
  97. #define _uber90 "IIIIIIIIIIIIIII"
  98. #define _uber80 "IIIIIIIIIIIII"
  99. #define _uber70 "IIIIIIIIIIII"
  100. #define _uber60 "IIIIIIIIII"
  101. #define _uber50 "IIIIIIIII"
  102. #define _uber40 "IIIIIIII"
  103. #define _uber30 "IIIIII"
  104. #define _uber20 "IIIII"
  105. #define _uber10 "III"
  106. #define _u10 "I"
  107.  
  108.  
  109. #include <a_samp>
  110. #include <a_mysql>
  111. #include <a_players>
  112. #include <ocmd>
  113. #include <streamer>
  114. #include <sscanf2>
  115. #include <dini>
  116. #include <SL_Grund>
  117. #include <blitzer>
  118. #include <a_http>
  119. #define SL_CALL%0(%1) forward%0(%1); public%0(%1)
  120. /*Handysys*/
  121. new Anruf[MAX_PLAYERS];
  122. new Anrufername;
  123. /*Lieferant*/
  124. new Checkpoint[MAX_PLAYERS];
  125. new CheckpointF[MAX_PLAYERS];
  126. /*C Bug*/
  127. #define WVCBUG 3
  128. new CBUGWARNUNGEN[MAX_PLAYERS];
  129.  
  130. /*SL_Wantedsystem*/
  131. #define DIALOG_ADMINBAN 1000
  132. #define DIALOG_OPTION 1002
  133. #define Sterne1 "."
  134. #define Sterne2 "."
  135. #define Sterne3 ".."
  136. #define Sterne4 "...."
  137. #define Sterne5 "......"
  138. #define Sterne6 "....."
  139. #define Sterne7 "...."
  140. #define Sterne8 "..."
  141. #define Sterne9 "..."
  142. #define Sterne10 ".."
  143. #define Sterne11 ".."
  144. #define Sterne12 ".."
  145. #define Sterne13 ".."
  146. #define Sterne14 ".."
  147. #define Sterne15 ".."
  148. #define Sterne16 ".."
  149. #define Sterne17 ".."
  150. #define Sterne18 ".."
  151. #define Sterne19 ".."
  152. #define Sterne20 ".."
  153. #define Sterne21 ".."
  154. new Adminbanname;
  155. new WID;
  156. new OnDuty[MAX_PLAYERS];
  157. /*Anticheatsystem*/
  158. //#define SILENT_MODE
  159. #define DEBUG_MODE
  160. // Sparender aber schlechter
  161. //#define SAVE_RECOURCES
  162. #define STEUERN 1000
  163. #define FREETIME_MONEY 2
  164. #define FREETIME_HEALTH 4
  165. #define FREETIME_ARMOUR 4
  166. #define FREETIME_TELEPORT 4
  167. #define FREETIME_WEAPON 4
  168. #define DIALOG_ID 1483
  169.  
  170.  
  171. #define CHEAT_STATUS_OFF 0 // No action
  172. #define CHEAT_STATUS_UNDO 1 // Just took him away his money / guns / jetpack / remove from vehicle / ...
  173. #define CHEAT_STATUS_WARN 2 // Give him a warn, after x warn's -> Kick / Ban
  174. #define CHEAT_STATUS_KICK 3 // Kick him
  175. #define CHEAT_STATUS_BAN 4 // Ban him, he can be unbanned in the ACP
  176.  
  177. /*Haussystem*/
  178. #define MinHausPreis 1 // Minimaler Hauspreis den ein Haus haben kann
  179. #define MaxHausPreis 8000000 // Maximaler Hauspreis den ein Haus haben kann
  180. #define MinHausZimmer 0 // Minimale Zimmer pro Haus
  181. #define MaxHausZimmer 50 // Maximale Zimmer pro Haus
  182. #define MinHausBeschreibung 5 // Mindestlaenge der Hausbeschreibung
  183. #define MaxHausBeschreibung 80 // Maximallaenge der Hausbeschreibung
  184. #define MinHausLevel 4 // Mindestlevel für jenes Haus
  185. #define MaxHausLevel 99 // Maximallevel für jenes Haus
  186. #define MaxHaus 100 // Maximale Häuser, man sollte hier nicht übertreiben!
  187. #define MaxHausTextSehbar 15 // Haus-3DText-Sichtweite
  188. #define HausPickupModel 1274 // PickupModel (siehe: http://weedarr.wikidot.com/pickups)
  189. #define HELPHAUS "/buyhaus\n/sellhaus"
  190. #define MAX_HAUS 15
  191. #define NON_RES 99999999
  192. /*Settings*/
  193. #define SQL_HOST "localhost"
  194. #define SQL_USER "fairnet"
  195. #define SQL_PASS "system100"
  196. #define SQL_DATA "fairnet_db"
  197. /*Dialoge*/
  198. #define DIALOG_REGISTER (0)
  199. #define DIALOG_LOGIN (1)
  200. #define DIALOG_PROFIL (2)
  201. #define DIALOG_ZAHLTAG (3)
  202. #define DIALOG_ALTER (4)
  203. #define DIALOG_SEX (5)
  204. #define DIALOG_HAUSHILFE (6)
  205. #define DIALOG_LIST (7)
  206. #define DIALOG_HLIST (8)
  207. #define DIALOG_ADMINS (9)
  208. #define DIALOG_Lieferant (10)
  209. #define DIALOG_TUTORIAL (11)
  210. #define SUBDIALOG_MAIN 71
  211. #define SUBDIALOG_CONFIG 81
  212. #define SUBDIALOG_CONFIG_EDIT 91
  213. #define SUBDIALOG_CONFIG_EXTENDET 101
  214. #define SUBDIALOG_BAN 111
  215.  
  216. /*Farben*/
  217. #define Rot 0xEB0000FF
  218. #define Grun 0x23FF00FF
  219. #define Weiss 0xF0FFFFFF
  220. #define Blau 0x0089F6FF
  221. #define FARBE_FADE1 0xE6E6E6E6
  222. #define FARBE_FADE2 0xC8C8C8C8
  223. #define FARBE_FADE3 0xAAAAAAAA
  224. #define FARBE_FADE4 0x8C8C8C8C
  225. #define FARBE_FADE5 0x6E6E6E6E
  226. /*Shades of red*/
  227. #define COLOR_INDIANRED 0xCD5C5CFF
  228. #define COLOR_LIGHTCORAL 0xF08080FF
  229. #define COLOR_SALMON 0xFA8072FF
  230. #define COLOR_DARKSALMON 0xE9967AFF
  231. #define COLOR_LIGHTSALMON 0xFFA07AFF
  232. #define COLOR_CRIMSON 0xDC143CFF
  233. #define COLOR_RED 0xFF0000FF
  234. #define COLOR_FIREBRICK 0xB22222FF
  235. #define COLOR_DARKRED 0x8B0000FF
  236.  
  237. /*Shades of pink*/
  238. #define COLOR_PINK 0xFFC0CBFF
  239. #define COLOR_LIGHTPINK 0xFFB6C1FF
  240. #define COLOR_HOTPINK 0xFF69B4FF
  241. #define COLOR_DEEPPINK 0xFF1493FF
  242. #define COLOR_MEDIUMVIOLETRED 0xC71585FF
  243. #define COLOR_PALEVIOLETRED 0xDB7093FF
  244.  
  245. /*Shades of Orange*/
  246. #define COLOR_CORAL 0xFF7F50FF
  247. #define COLOR_TOMATO 0xFF6347FF
  248. #define COLOR_ORANGERED 0xFF4500FF
  249. #define COLOR_DARKORANGE 0xFF8C00FF
  250. #define COLOR_ORANGE 0xFFA500FF
  251.  
  252.  
  253. /*Shades of Yellow*/
  254. #define COLOR_GOLD 0xFFD700FF
  255. #define COLOR_YELLOW 0xFFFF00FF
  256. #define COLOR_LIGHTYELLOW 0xFFFFE0FF
  257. #define COLOR_LEMONCHIFFON 0xFFFACDFF
  258. #define COLOR_LIGHTGOLDENRODYELLOW 0xFAFAD2FF
  259. #define COLOR_PAPAYAWHIP 0xFFEFD5FF
  260. #define COLOR_MOCCASIN 0xFFE4B5FF
  261. #define COLOR_PEACHPUFF 0xFFDAB9FF
  262. #define COLOR_PALEGOLDENROD 0xEEE8AAFF
  263. #define COLOR_KHAKI 0xF0E68CFF
  264. #define COLOR_DARKKHAKI 0xBDB76BFF
  265.  
  266. /*Shades of Purple*/
  267. #define COLOR_LAVENDER 0xE6E6FAFF
  268. #define COLOR_THISTLE 0xD8BFD8FF
  269. #define COLOR_PLUM 0xDDA0DDFF
  270. #define COLOR_VIOLET 0xEE82EEFF
  271. #define COLOR_ORCHID 0xDA70D6FF
  272. #define COLOR_FUCHSIA 0xFF00FFFF
  273. #define COLOR_MAGENTA 0xFF00FFFF
  274. #define COLOR_MEDIUMORCHID 0xBA55D3FF
  275. #define COLOR_MEDIUMPURPLE 0x9370DBFF
  276. #define COLOR_AMETHYST 0x9966CCFF
  277. #define COLOR_BLUEVIOLET 0x8A2BE2FF
  278. #define COLOR_DARKVIOLET 0x9400D3FF
  279. #define COLOR_DARKORCHID 0x9932CCFF
  280. #define COLOR_DARKMAGENTA 0x8B008BFF
  281. #define COLOR_PURPLE 0x800080FF
  282. #define COLOR_INDIGO 0x4B0082FF
  283. #define COLOR_SLATEBLUE 0x6A5ACDFF
  284. #define COLOR_DARKSLATEBLUE 0x483D8BFF
  285. #define COLOR_MEDIUMSLATEBLUE 0x7B68EEFF
  286.  
  287. /*Shades of Green*/
  288. #define COLOR_GREENYELLOW 0xADFF2FFF
  289. #define COLOR_CHARTREUSE 0x7FFF00FF
  290. #define COLOR_LAWNGREEN 0x7CFC00FF
  291. #define COLOR_LIME 0x00FF00FF
  292. #define COLOR_LIMEGREEN 0x32CD32FF
  293. #define COLOR_PALEGREEN 0x98FB98FF
  294. #define COLOR_LIGHTGREEN 0x90EE90FF
  295. #define COLOR_MEDIUMSPRINGGREEN 0x00FA9AFF
  296. #define COLOR_SPRINGGREEN 0x00FF7FFF
  297. #define COLOR_MEDIUMSEAGREEN 0x3CB371FF
  298. #define COLOR_SEAGREEN 0x2E8B57FF
  299. #define COLOR_FORESTGREEN 0x228B22FF
  300. #define COLOR_GREEN 0x008000FF
  301. #define COLOR_DARKGREEN 0x006400FF
  302. #define COLOR_YELLOWGREEN 0x9ACD32FF
  303. #define COLOR_OLIVEDRAB 0x6B8E23FF
  304. #define COLOR_OLIVE 0x808000FF
  305. #define COLOR_DARKOLIVEGREEN 0x556B2FFF
  306. #define COLOR_MEDIUMAQUAMARINE 0x66CDAAFF
  307. #define COLOR_DARKSEAGREEN 0x8FBC8FFF
  308. #define COLOR_LIGHTSEAGREEN 0x20B2AAFF
  309. #define COLOR_DARKCYAN 0x008B8BFF
  310. #define COLOR_TEAL 0x008080FF
  311.  
  312. /*Shades of Blue/Cyan*/
  313. #define COLOR_AQUA 0x00FFFFFF
  314. #define COLOR_CYAN 0x00FFFFFF
  315. #define COLOR_LIGHTCYAN 0xE0FFFFFF
  316. #define COLOR_PALETURQUOISE 0xAFEEEEFF
  317. #define COLOR_AQUAMARINE 0x7FFFD4FF
  318. #define COLOR_TURQUOISE 0x40E0D0FF
  319. #define COLOR_MEDIUMTURQUOISE 0x48D1CC
  320. #define COLOR_DARKTURQUOISE 0x00CED1FF
  321. #define COLOR_CADETBLUE 0x5F9EA0FF
  322. #define COLOR_STEELBLUE 0x4682B4FF
  323. #define COLOR_LIGHTSTEELBLUE 0xB0C4DEFF
  324. #define COLOR_POWDERBLUE 0xB0E0E6FF
  325. #define COLOR_LIGHTBLUE 0xADD8E6FF
  326. #define COLOR_SKYBLUE 0x87CEEBFF
  327. #define COLOR_LIGHTSKYBLUE 0x87CEFAFF
  328. #define COLOR_DEEPSKYBLUE 0x00BFFFFF
  329. #define COLOR_DODGERBLUE 0x1E90FFFF
  330. #define COLOR_CORNFLOWERBLUE 0x6495EDFF
  331. #define COLOR_MEDIUMSLATEBLUE 0x7B68EEFF
  332. #define COLOR_ROYALBLUE 0x4169E1FF
  333. #define COLOR_BLUE 0x0000FFFF
  334. #define COLOR_MEDIUMBLUE 0x0000CDFF
  335. #define DARKBLUE 0x00008BFF
  336. #define COLOR_NAVY 0x000080FF
  337. #define COLOR_MIDNIGHTBLUE 0x191970FF
  338.  
  339. /*Shades of Brown*/
  340. #define COLOR_CORNSILK 0xFFF8DCFF
  341. #define COLOR_BLANCHEDALMOND 0xFFEBCDFF
  342. #define COLOR_BISQUE 0xFFE4C4FF
  343. #define COLOR_NAVAJOWHITE 0xFFDEADFF
  344. #define COLOR_WHEAT 0xF5DEB3FF
  345. #define COLOR_BURLYWOOD 0xDEB887FF
  346. #define COLOR_TAN 0xD2B48CFF
  347. #define COLOR_ROSYBROWN 0xBC8F8FFF
  348. #define COLOR_SANDYBROWN 0xF4A460FF
  349. #define COLOR_DARKGOLDENROD 0xB8860BFF
  350. #define COLOR_PERU 0xCD853FFF
  351. #define COLOR_SADDLEBROWN 0x8B4513FF
  352. #define COLOR_SIENNA 0xA0522DFF
  353. #define COLOR_BROWN 0xA52A2AFF
  354. #define COLOR_MAROON 0x800000FF
  355.  
  356. /*Shades of Grey*/
  357. #define COLOR_WHITE 0xFFFFFFFF
  358. #define COLOR_GAINSBORO 0xDCDCDCFF
  359. #define COLOR_LIGHTGREY 0xD3D3D3FF
  360. #define COLOR_SILVER 0xC0C0C0FF
  361. #define COLOR_DARKGRAY 0xA9A9A9FF
  362. #define COLOR_GRAY 0x808080FF
  363. #define COLOR_DIMGRAY 0x696969FF
  364. #define COLOR_LIGHTSLATEGRAY 0x778899FF
  365. #define COLOR_SLATEGRAY 0x708090FF
  366. #define COLOR_DARKSLATEGRAY 0x2F4F4FFF
  367. #define COLOR_BLACK 0x000000FF
  368.  
  369.  
  370. #define MAX_ATMS 16
  371. #define MAX_DRUGS 10
  372.  
  373.  
  374. #define DIALOG_BANK 2224
  375. #define DIALOG_EINZAHLEN 312
  376. #define DIALOG_ABHEBEN 1231
  377. #define DIALOG_NEWMONEY 80
  378. #define DIALOG_UBERWEISEN 1241
  379. #define DIALOG_UBERWEISUNG 1232
  380. #define COLOR_WHITE 0xFFFFFFFF
  381. #define COLOR_GREY 0xAFAFAFAA
  382.  
  383. #define Alle(%0) for(new index_%0=0, %0=ConnectedPlayerList[0]; index_%0<ConnectedPlayers; index_%0++, %0=ConnectedPlayerList[index_%0])
  384.  
  385.  
  386. #define DIALOG_LSLINE1 121
  387. #define DIALOG_LSLINE2 122
  388. #define DIALOG_LSLINE3 123
  389. #define DIALOG_LSLINE4 124
  390. #define DIALOG_LVLINE5 125
  391. #define DIALOG_LVLINE6 126
  392. #define DIALOG_LVLINE7 127
  393. #define DIALOG_LVLINE8 128
  394. new ConnectedPlayers;
  395. new ConnectedPlayerList[MAX_PLAYERS+1];
  396.  
  397.  
  398. #define rot 0xFF0000FF
  399.  
  400. enum COORD {
  401. Float:coord_x,
  402. Float:coord_y,
  403. Float:coord_z
  404. }
  405.  
  406. enum CAMMOVEMENT {
  407. steps,
  408. currentstep,
  409. Float:amount_x,
  410. Float:amount_y,
  411. Float:amount_z,
  412. Float:look_x,
  413. Float:look_y,
  414. Float:look_z,
  415. CameraMoveTimerID
  416. }
  417.  
  418. forward Float:GetDistanceBetweenPoints(Float:x1, Float:y1, Float:z1, Float:x2, Float:y2, Float:z2);
  419. forward CameraMoveTimer(playerid);
  420.  
  421. new Float:gPlayerCameraPos[MAX_PLAYERS][COORD];
  422. new Float:gPlayerCamMovement[MAX_PLAYERS][CAMMOVEMENT];
  423.  
  424. enum Bank
  425. {
  426. Float:atmx,
  427. Float:atmy,
  428. Float:atmz,
  429. }
  430.  
  431. new position[MAX_ATMS][Bank];
  432. enum Drugs
  433. {
  434. Float:dx,
  435. Float:dy,
  436. Float:dz,
  437. }
  438.  
  439. new Drugpos[MAX_DRUGS][Drugs];
  440. new tmpid[MAX_PLAYERS];
  441. new tmmpmoney[MAX_PLAYERS];
  442. enum Textt
  443. {
  444. Float:tx,
  445. Float:ty,
  446. Float:tz,
  447. Float:itx,
  448. Float:ity,
  449. Float:itz,
  450. Float:tradius,
  451. Text3D:label
  452.  
  453. }
  454. new TextPos[MAX_PLAYERS][Textt];
  455.  
  456. AddText(textid, pickupid, anweisung[], Float:X, Float:Y, Float:Z, Float:radius,Float:iX, Float:iY, Float:iZ, stringg[])
  457. {
  458. TextPos[textid][tx] = Float:X;
  459. TextPos[textid][ty] = Float:Y;
  460. TextPos[textid][tz] = Float:Z;
  461. TextPos[textid][itx] = Float:iX;
  462. TextPos[textid][ity] = Float:iY;
  463. TextPos[textid][itz] = Float:iZ;
  464. TextPos[textid][tradius] = Float:radius;
  465. CreateDynamic3DTextLabel(anweisung,0x0C9BCBFF,Float:X, Float:Y, Float:Z,Float:radius);
  466. CreateDynamic3DTextLabel(stringg,0x0C9BCBFF,Float:iX, Float:iY, Float:iZ,Float:radius);
  467. CreateDynamicPickup(pickupid, 1, Float:X, Float:Y, Float:Z);
  468. CreateDynamicPickup(pickupid, 1, Float:iX, Float:iY, Float:iZ);
  469. }
  470. AddAtm(atmid, Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ)
  471. {
  472. CreateObject(2942, Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ, 300.0);
  473. position[atmid][atmx] = Float:X;
  474. position[atmid][atmy] = Float:Y;
  475. position[atmid][atmz] = Float:Z;
  476. }
  477. AddDrug(drugid, Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ)
  478. {
  479. CreateObject(1279, Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ, 300.0);
  480. Drugpos[drugid][dx] = Float:X;
  481. Drugpos[drugid][dy] = Float:Y;
  482. Drugpos[drugid][dz] = Float:Z;
  483. }
  484.  
  485. stock mysql_GetString(Table[], Field[], Where[], Is[])
  486. {
  487. new query[128], Get[128];
  488. mysql_real_escape_string(Table, Table);
  489. mysql_real_escape_string(Field, Field);
  490. mysql_real_escape_string(Where, Where);
  491. mysql_real_escape_string(Is, Is);
  492. format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
  493. mysql_query(query);
  494. mysql_store_result();
  495. mysql_fetch_row(Get);
  496. mysql_free_result();
  497. return Get;
  498. }
  499. stock Float:mysql_GetFloat(Table[], Field[], Where[], Is[])
  500. {
  501. new query[128], Float:sqlfloat;
  502. mysql_real_escape_string(Table, Table);
  503. mysql_real_escape_string(Field, Field);
  504. mysql_real_escape_string(Where, Where);
  505. mysql_real_escape_string(Is, Is);
  506. format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
  507. mysql_query(query);
  508. mysql_store_result();
  509. mysql_fetch_float(sqlfloat);
  510. mysql_free_result();
  511. return sqlfloat;
  512. }
  513. /*Enums*/
  514. enum apInfo
  515. {
  516. bool:apConnected,
  517. apFreeTime,
  518. apMoney,
  519. apSpamMessages,
  520. Float:apHealth,
  521. Float:apArmour,
  522. Float:apPosition[3],
  523. Float:apAngle,
  524. apLastSpawned,
  525. apWeapons[13],
  526. apAmmo[13],
  527. apMuted,
  528. apWarns,
  529. apSpawnClass,
  530. apUnkillableTime
  531. }
  532. enum acConfig
  533. {
  534. money,
  535. driveby,
  536. spam,
  537. armour,
  538. heal,
  539. jetpack,
  540. speed,
  541. weapon,
  542. teleport,
  543. spawnkill,
  544. quickturn,
  545. joypad,
  546. maxwarns,
  547. bool:savewarns,
  548. spawnprotecttime
  549. }
  550. enum servSpawnClasses
  551. {
  552. team,
  553. skin,
  554. Float:spawnx,
  555. Float:spawny,
  556. Float:spawnz,
  557. Float:spawna,
  558. weapons[3],
  559. ammo[3]
  560. }
  561. enum fahrzeug_struktur
  562. {
  563. model,
  564. Float:fxa,
  565. Float:fya,
  566. Float:fza,
  567. Float:faa,
  568. farb1,farb2,
  569. preis,
  570. v_id,
  571. v_name[70],
  572. Text3D:lbl,
  573. };
  574.  
  575. enum SpielerDaten
  576. {
  577. pName[MAX_PLAYER_NAME],
  578. pBerechtigt,
  579. pLevel,
  580. pGeld,
  581. pKills,
  582. pTode,
  583. pRang,
  584. pMember,
  585. pLeader,
  586. pBank,
  587. pKnast,
  588. pUserLevel,
  589. pDrugsP,
  590. pDrugs,
  591. pInterior,
  592. pRespekt,
  593. pSkin,
  594. Firstlogin,
  595. Float:pX,
  596. Float:pY,
  597. Float:pZ,
  598. pSex,
  599. pAge,
  600. pGehalt,
  601. filmgehabt,
  602. pFirmenlohn,
  603. pSchein,
  604. pFahrschule,
  605. pWanted,
  606. pTour,
  607. pJob,
  608. pZeit
  609. }
  610. enum Hauser {
  611. Float:hX, //Haus-X Koordinate
  612. Float:hY, //Haus-Y Koordinate
  613. Float:hZ, //Haus-Z Koordinate
  614. hBesitzer[MAX_PLAYER_NAME], //Besitzer
  615. hBeschreibung[MaxHausBeschreibung], //Beschreibung
  616. hLevel, //Hauslevel
  617. hZimmerA, //Aktuelle Zimmer
  618. hZimmerM, //Maximale Zimmer
  619. hPreis, //Hauspreis
  620. hID, //HausID
  621. hPickup, //HausPickup
  622. Text3D:hText //Haus3D-Text
  623. };
  624. /*Global Definitionen*/
  625. new Text:Uhrzeit, Text:Datum;
  626. new Text:Leveltext[MAX_PLAYERS];
  627. new Text:Spielpunktetext[MAX_PLAYERS];
  628. new Text:Spielpunktezahl[MAX_PLAYERS];
  629. new Text:Levelzahl[MAX_PLAYERS];
  630. new Staatskasse;
  631. new Text:newlogin0;
  632. new Text:newlogin1;
  633. new Text:newlogin2;
  634. new Text:newlogin3;
  635. new Text:newlogin5;
  636. new Text:newlogin7;
  637. new Text:newlogin8;
  638. new Text:newlogin9;
  639. new Text:newlogin10;
  640. new Text:newlogin11;
  641. new Text:newlogin12;
  642. new Text:newlogin13;
  643. new Text:newlogin14;
  644. new Text:newlogin15;
  645. new Text:stats[MAX_PLAYERS];
  646. new Text:VW[MAX_PLAYERS];
  647. new Text:VWPunkte[MAX_PLAYERS];
  648. new Text:SLH[MAX_PLAYERS];
  649. new Text:Version[MAX_PLAYERS];
  650. new Text:Geldzeichen[MAX_PLAYERS];
  651. new Text:Geldtext[MAX_PLAYERS];
  652. new Text:Wantedpunkt[MAX_PLAYERS];
  653. new
  654. Text:h_Textdraw[MAX_PLAYERS]
  655. ,Text:d_Textdraw[MAX_PLAYERS]
  656. ,Text:dr_Textdraw[MAX_PLAYERS]
  657. ,Text:hunger_i[MAX_PLAYERS]
  658. ,Text:durst_i[MAX_PLAYERS]
  659. ,Text:druck_i[MAX_PLAYERS]
  660. ,UpdateTimer
  661. ,SpawnClasses[300][servSpawnClasses]
  662. ,DTAC_Config[acConfig]
  663. ,DTAC_Player[MAX_PLAYERS][apInfo]
  664. ,TutTimer[MAX_PLAYERS]
  665. ,TutTime[MAX_PLAYERS];
  666. new DropLimit=6
  667. ,DeleteTime=10
  668. //,Handschelle
  669. ,GetNamee[MAX_PLAYER_NAME]
  670. ,RMafiator
  671. ,lspd1
  672. ,lspd2
  673. ,SpielerInfo[MAX_PLAYERS][SpielerDaten];
  674. new Haus[MaxHaus][Hauser]
  675. ,KriegtGeldHausSell = 0
  676. ,gdebug = 0
  677. ,gNews[MAX_PLAYERS];
  678. //Schwarze Balken
  679. //new Text:lbt;
  680. //new Text:lbb;
  681. /*Bankautomaten ATM*/
  682. new const Float:Banken[][] = {
  683. {1498.216309, -1749.921021, 15.088212},
  684. {1204.718384, -919.228821, 42.724968},
  685. {1001.071533, -924.023926, 41.971024},
  686. {1035.951782, -1024.514648, 31.744461},
  687. {732.453186, -1338.232544, 13.175097},//5
  688. {2023.365479, 1017.663818, 10.463212},
  689. {1062.384521, 2140.426270, 10.463212},
  690. {1062.384521, 2140.426270, 10.463212},
  691. {-1980.580688, 145.030273, 27.330399},
  692. {-1985.877441, 1131.340088, 52.872906},//10
  693. {-1791.375488, 1204.635132, 24.767899},
  694. {-1677.125610, 431.082123, 6.822587},
  695. {-78.785622, -1170.931396, 1.777992},
  696. {485.300049, -1733.809937, 10.727262},
  697. {-2029.4519,-101.9671,35.1641},
  698. {1423.756714, -1486.887573, 20.075184},
  699. {303.970428, -1419.902466, 13.676299}
  700. };
  701. forward bool:IsCamorraVeh(vehicleid);
  702. new cCars[][fahrzeug_struktur] = { // Camorra Fahrzeuge
  703. {445,961.0401,2082.4287,10.6953,179.2394,0,0,0,-1},
  704. {445,953.3093,2082.3027,10.6953,179.2593,0,0,0,-1},
  705. {445,936.4614,2082.4585,10.6953,353.9433,0,0,0,-1},
  706. {445,944.2711,2082.5471,10.6959,179.5249,0,0,0,-1}};
  707.  
  708. bool:IsCamorraVeh(vehicleid)
  709. {
  710. for(new i = 0;i<sizeof(cCars);i++)
  711. {
  712. if(vehicleid == cCars[i][v_id])return true;
  713. }
  714. return false;
  715. }
  716. forward bool:IsLieferant(vehicleid);
  717. new lCars[][fahrzeug_struktur] = { // Liefer Fahrzeuge
  718. {482,2780.9785,-2450.1860,13.7545,181.9457,18,18,0,-1},
  719. {482,1538.9683,-1645.3339,6.0053,180.9544,19,19,0,-1},
  720. {459,-42.1342,-1151.5916,1.1268,68.4391,16,5,0,-1},
  721. {600,-2429.5022,2322.0437,4.7075,4.2870,4,7,0,-1},
  722. {415,627.5703,1223.8625,11.4891,300.0544,1,1,0,-1},
  723. {515,2839.2639,986.6435,11.7656,180.5827,20,20,0,-1},
  724. {554,-1651.8552,2478.0745,87.0567,160.3637,0,0,0,-1},
  725. {553,1821.0365,-2623.5327,14.8863,2.1118,0,19,0,-1},
  726. {553,1808.5615,-2437.6858,14.8871,22.2743,0,19,0,-1},
  727. {553,1853.5634,-2391.6194,14.8870,179.5848,0,19,0,-1},
  728. {519,1329.0468,1490.5940,11.7386,86.9368,1,1,0,-1},
  729. {454,-1446.0756,354.3717,0.2115,269.0686,15,14,0,-1}};
  730.  
  731. bool:IsLieferant(vehicleid)
  732. {
  733. for(new i = 0;i<sizeof(lCars);i++)
  734. {
  735. if(vehicleid == lCars[i][v_id])return true;
  736. }
  737. return false;
  738. }
  739. forward bool:IsYakuzaVeh(vehicleid);
  740. new yCars[][fahrzeug_struktur] = { // Yakuza Fahrzeuge
  741. {445,2574.8540,1722.2437,10.6973,0.8804,19,19,0,-1},
  742. {445,2578.8240,1722.1060,10.6953,359.7893,19,19,0,-1},
  743. {445,2582.6646,1721.3378,10.6953,1.7761,19,19,0,-1},
  744. {405,2599.1472,1700.5355,10.6954,269.3975,19,19,0,-1},
  745. {405,2598.9883,1697.3578,10.6951,268.2885,19,19,0,-1},
  746. {405,2598.8523,1694.3704,10.6950,268.8457,19,19,0,-1},
  747. {415,1277.2516,-2012.4835,58.6881,89.6708,0,0,0,-1},
  748. {411,1276.9241,-2021.3381,58.7082,90.1867,0,0,0,-1},
  749. {415,1276.5209,-2030.7622,58.7490,90.5865,0,0,0,-1},
  750. {409,1253.4674,-2043.8954,59.3642,269.3349,0,0,0,-1}};
  751.  
  752. bool:IsYakuzaVeh(vehicleid)
  753. {
  754. for(new i = 0;i<sizeof(yCars);i++)
  755. {
  756. if(vehicleid == yCars[i][v_id])return true;
  757. }
  758. return false;
  759. }
  760. forward bool:IsFahrschuleVeh(vehicleid);
  761. new fCars[][fahrzeug_struktur] = { // Fahrschulfahrzeuge
  762. {445,2765.9375,1291.3562,10.6250,270.7837,1,1,0,-1},
  763. {445,2766.0862,1288.0176,10.6249,271.0015,1,1,0,-1},
  764. {515,2764.5298,1250.5426,11.7879,1.5836,1,1,0,-1},
  765. {581,2785.0569,1252.0184,10.9009,87.0946,1,1,0,-1},
  766. {522,2788.9290,1251.8246,10.8781,266.9306,1,1,0,-1},
  767. {584,2786.6399,1259.5223,11.9230,269.8195,1,1,0,-1}};
  768.  
  769. bool:IsFahrschuleVeh(vehicleid)
  770. {
  771. for(new i = 0;i<sizeof(fCars);i++)
  772. {
  773. if(vehicleid == fCars[i][v_id])return true;
  774. }
  775. return false;
  776. }
  777.  
  778. forward bool:IsPolizeiVeh(vehicleid);
  779. new pCars[][fahrzeug_struktur] = { // Polizei Fahrzeuge
  780. {596,1535.8110,-1668.9468,13.1047,359.3576,0,0,-1,-1},
  781. {596,1536.1436,-1678.2460,13.1041,180.4853,0,0,-1,-1}};
  782. /* {470,1443.6401,-1624.5649,5.6628,270.8070,0,0,-1,-1},
  783. {470,1443.6709,-1629.7960,5.6634,271.1887,0,0,-1,-1},
  784. {470,1444.3478,-1635.3085,5.6667,270.1700,0,0,-1,-1},
  785. {470,1443.4326,-1640.3839,5.6683,270.6212,0,0,-1,-1},
  786. {523,1424.3582,-1661.7957,5.2192,270.0391,0,0,-1,-1},
  787. {523,1427.6682,-1661.7957,5.2342,270.0392,0,0,-1,-1},
  788. {596,1375.6746,-1678.9912,5.3959,0.1999,0,0,-1,-1},
  789. {596,1379.5657,-1678.7974,5.3939,1.5612,0,0,-1,-1},
  790. {596,1383.8209,-1679.0228,5.3938,0.4008,0,0,-1,-1},
  791. {596,1388.1951,-1678.9993,5.3960,358.6443,0,0,-1,-1},
  792. {596,1432.1997,-1679.4598,5.3934,0.1603,0,0,-1,-1},
  793. {596,1427.5581,-1679.4514,5.3940,0.3321,0,0,-1,-1},
  794. {596,1422.9537,-1679.4347,5.3957,358.7678,0,0,-1,-1},
  795. {596,1418.7352,-1679.3705,5.3936,358.1803,0,0,-1,-1},
  796. {506,1442.9128,-1614.2240,-5.3485,89.8064,0,0,-1,-1},
  797. {506,1443.4933,-1620.0609,-5.3483,91.1626,0,0,-1,-1},
  798. {506,1443.2876,-1624.9075,-5.3484,88.8563,0,0,-1,-1},
  799. {506,1442.8975,-1630.1077,-5.3485,89.0351,0,0,-1,-1},
  800. {506,1442.6047,-1635.0970,-5.3485,91.8270,0,0,-1,-1},
  801. {560,1442.9412,-1640.0464,-5.3473,90.8699,0,0,-1,-1},
  802. {560,1443.6353,-1644.4423,-5.3486,89.8483,0,0,-1,-1},
  803. {560,1443.2792,-1649.8851,-5.3486,88.8047,0,0,-1,-1},
  804. {560,1443.3986,-1654.7153,-5.3475,89.7198,0,0,-1,-1}*/
  805.  
  806. bool:IsPolizeiVeh(vehicleid)
  807. {
  808. for(new i = 0;i<sizeof(pCars);i++)
  809. {
  810. if(vehicleid == pCars[i][v_id])return true;
  811. }
  812. return false;
  813. }
  814. /*Consoleoutput*/
  815. main()
  816. {
  817. print("\n----------------------------------");
  818. print(" SLH Gamemode by fair");
  819. print("----------------------------------\n");
  820. }
  821. /*Callback GI*/
  822. public OnGameModeInit()
  823. {
  824. Datum = TextDrawCreate(547.000000,11.000000,"--");
  825. TextDrawFont(Datum,1);
  826. TextDrawLetterSize(Datum,0.399999,1.600000);
  827. TextDrawColor(Datum,0xffffffff);
  828. //Uhrzeit
  829. Uhrzeit = TextDrawCreate(547.000000,28.000000,"--");
  830. TextDrawFont(Uhrzeit,1);
  831. TextDrawLetterSize(Uhrzeit,0.399999,1.600000);
  832. TextDrawColor(Uhrzeit,0xffffffff);
  833. SetTimer("Timer1",1151, 1);// 1 Sekunden für Playerid
  834. SetTimer("Blitzer_Timer", BLITZER_TIMER_INTERVALL, 1);
  835. CreateDynamicObject(8355,71.79589844,115.18847656,8.19301128,0.00000000,0.00000000,349.99694824); //object(vgssairportland18) (1)
  836. CreateDynamicObject(10828,50.22576523,102.10453033,-4.09727478,0.00000000,180.00000000,260.00000000); //object(drydock1_sfse) (1)
  837. CreateDynamicObject(10841,55.73614502,123.38285065,7.10906601,90.00000000,180.00000000,80.00000000); //object(drydock1_sfse01) (1)
  838. CreateDynamicObject(10841,88.28710938,106.82031250,7.20006609,90.00000000,179.99450684,259.99694824); //object(drydock1_sfse01) (2)
  839. CreateDynamicObject(10841,64.96069336,128.54481506,0.26990661,0.00000000,179.99450684,149.00000000); //object(drydock1_sfse01) (3)
  840. CreateDynamicObject(10841,82.27138519,117.82867432,0.26990661,0.00000000,179.99450684,149.00000000); //object(drydock1_sfse01) (4)
  841. CreateDynamicObject(10841,79.48828888,102.75086975,0.26990661,0.00000000,179.99450684,148.99655151); //object(drydock1_sfse01) (5)
  842. CreateDynamicObject(10841,61.41847992,113.47192383,0.26990661,0.00000000,179.99450684,148.99655151); //object(drydock1_sfse01) (6)
  843. CreateDynamicObject(10828,58.88115692,150.90814209,-4.09727478,0.00000000,179.99450684,259.99694824); //object(drydock1_sfse) (2)
  844. CreateDynamicObject(10828,93.79000854,129.12182617,-4.09727478,0.00000000,179.99450684,259.99694824); //object(drydock1_sfse) (3)
  845. CreateDynamicObject(10828,85.18206787,80.52987671,-4.09727478,0.00000000,179.99450684,259.99694824); //object(drydock1_sfse) (4)
  846. CreateDynamicObject(10841,64.10403442,117.04188538,7.10906601,90.00000000,179.99450684,79.99694824); //object(drydock1_sfse01) (7)
  847. CreateDynamicObject(10841,78.59845734,107.48934174,7.20006609,90.00000000,179.99450684,259.99694824); //object(drydock1_sfse01) (8)
  848. CreateDynamicObject(10828,99.84203339,163.31889343,-4.09727478,0.00000000,179.99450684,259.99694824); //object(drydock1_sfse) (5)
  849. CreateDynamicObject(10828,62.31382370,169.56967163,-4.09727478,0.00000000,179.99450684,259.99694824); //object(drydock1_sfse) (6)
  850. CreateDynamicObject(10841,75.29199219,184.39550781,6.60906601,0.00000000,0.00000000,169.99694824); //object(drydock1_sfse01) (9)
  851. CreateDynamicObject(10841,92.69335938,181.33593750,6.60906601,0.00000000,0.00000000,169.99145508); //object(drydock1_sfse01) (10)
  852. CreateDynamicObject(4571,67.71386719,26.62695312,-55.81005478,0.00000000,0.00000000,350.99670410); //object(stolenbuilds09) (1)
  853. CreateDynamicObject(4571,60.53320312,-11.43457031,-55.81005478,0.00000000,0.00000000,170.99121094); //object(stolenbuilds09) (2)
  854. CreateDynamicObject(10828,79.27736664,46.08792114,-4.09727478,0.00000000,179.99450684,259.99694824); //object(drydock1_sfse) (8)
  855. CreateDynamicObject(10828,44.32136536,67.88691711,-4.09727478,0.00000000,179.99450684,259.99694824); //object(drydock1_sfse) (9)
  856. CreateDynamicObject(18483,118.64257812,41.10058594,4.95320177,0.00000000,5.49865723,64.99511719); //object(cuntsrod07) (1)
  857. CreateDynamicObject(4571,78.59765625,-0.25683594,-55.83105469,0.00000000,0.00000000,154.97863770); //object(stolenbuilds09) (4)
  858. CreateDynamicObject(1660,133.18907166,80.37221527,-1.11927795,345.00000000,0.00000000,154.84570312); //object(ramp) (1)
  859. CreateDynamicObject(1660,137.67849731,78.23200226,-1.11927795,344.99816895,0.00000000,154.84130859); //object(ramp) (2)
  860. CreateDynamicObject(1660,142.42671204,76.05740356,-1.11927795,344.99816895,0.00000000,154.84130859); //object(ramp) (3)
  861. CreateDynamicObject(1660,129.81347656,82.01006317,-1.11927795,344.99816895,0.00000000,152.84179688); //object(ramp) (4)
  862. CreateDynamicObject(10828,134.18815613,53.59002686,0.75000000,0.00000000,354.50000000,245.99694824); //object(drydock1_sfse) (10)
  863. CreateDynamicObject(10828,119.97362518,21.72917938,4.00000000,0.00000000,354.49584961,245.99487305); //object(drydock1_sfse) (11)
  864. CreateDynamicObject(10828,104.48606110,31.79907227,4.00000000,0.00000000,354.49584961,245.00000000); //object(drydock1_sfse) (12)
  865. CreateDynamicObject(10828,117.94947815,61.49477386,0.75000000,0.00000000,354.49584961,245.99487305); //object(drydock1_sfse) (13)
  866. CreateDynamicObject(3881,95.56649780,11.66856003,9.80713272,0.00000000,0.00000000,153.99536133); //object(airsecbooth_sfse) (1)
  867. CreateDynamicObject(10841,89.44854736,43.45347595,6.95006609,0.00000000,0.00000000,351.99694824); //object(drydock1_sfse01) (11)
  868. CreateDynamicObject(10841,98.41345215,31.23516655,6.95006609,0.00000000,0.00000000,81.99645996); //object(drydock1_sfse01) (12)
  869. CreateDynamicObject(10841,29.07887268,52.84327698,6.95006609,0.00000000,0.00000000,349.99645996); //object(drydock1_sfse01) (13)
  870. CreateDynamicObject(10841,21.41546822,54.01361847,6.95006609,0.00000000,0.00000000,349.99145508); //object(drydock1_sfse01) (14)
  871. CreateDynamicObject(10828,8.65880108,39.92608261,5.70844269,0.00000000,0.00000000,261.00000000); //object(drydock1_sfse) (15)
  872. CreateDynamicObject(4571,38.06911087,31.33826065,-55.89005661,0.00000000,0.00000000,350.99670410); //object(stolenbuilds09) (6)
  873. CreateDynamicObject(4571,31.93979263,-6.72377205,-55.89005661,0.00000000,0.00000000,350.99670410); //object(stolenbuilds09) (7)
  874. CreateDynamicObject(10828,3.18085718,5.23486996,5.70844269,0.00000000,0.00000000,260.99670410); //object(drydock1_sfse) (16)
  875. CreateDynamicObject(10828,1.40555859,-5.80866194,5.70844269,0.00000000,0.00000000,260.99670410); //object(drydock1_sfse) (17)
  876. CreateDynamicObject(10828,15.20802402,-24.51052856,5.70844269,0.00000000,0.00000000,170.99670410); //object(drydock1_sfse) (18)
  877. CreateDynamicObject(10828,49.36687851,-29.77730942,5.70844269,0.00000000,0.00000000,170.99121094); //object(drydock1_sfse) (19)
  878. CreateDynamicObject(10828,79.69921875,-34.53895569,5.70844269,0.00000000,0.00000000,170.99121094); //object(drydock1_sfse) (20)
  879. CreateDynamicObject(10828,102.87466431,-22.28403854,5.70844269,0.00000000,0.00000000,244.99121094); //object(drydock1_sfse) (21)
  880. CreateDynamicObject(10828,107.84179688,-11.61450958,5.70844269,0.00000000,0.00000000,244.98962402); //object(drydock1_sfse) (22)
  881. CreateDynamicObject(10841,105.56094360,8.51094723,0.20006609,0.00000000,180.00000000,153.99645996); //object(drydock1_sfse01) (15)
  882. CreateDynamicObject(8253,24.07983971,39.39117813,12.05335617,0.00000000,0.00000000,351.00000000); //object(pltschlhnger01_lvs) (1)
  883. CreateDynamicObject(8253,20.02691269,14.50257111,12.05335617,0.00000000,0.00000000,350.99670410); //object(pltschlhnger01_lvs) (2)
  884. CreateDynamicObject(8253,16.13411903,-10.57862186,12.05335617,0.00000000,0.00000000,350.99670410); //object(pltschlhnger01_lvs) (3)
  885. CreateDynamicObject(9245,91.29814911,-23.52216530,20.06427765,0.00000000,0.00000000,261.00000000); //object(cstguard_sfn01) (1)
  886. CreateDynamicObject(3287,86.94699097,9.50002289,12.94461632,0.00000000,0.00000000,259.99645996); //object(cxrf_oiltank) (1)
  887. CreateDynamicObject(4571,74.96755981,-6.24205017,-55.97105408,0.00000000,0.00000000,154.98413086); //object(stolenbuilds09) (4)
  888. CreateDynamicObject(3287,86.33122253,5.03374767,12.94461632,0.00000000,0.00000000,259.99096680); //object(cxrf_oiltank) (2)
  889. CreateDynamicObject(973,91.55226135,4.63993931,9.02479076,0.00000000,0.00000000,210.00000000); //object(sub_roadbarrier) (1)
  890. CreateDynamicObject(973,82.62532806,2.96361089,9.02479076,0.00000000,0.00000000,169.99816895); //object(sub_roadbarrier) (2)
  891. CreateDynamicObject(973,96.30474854,-10.77727890,9.02479076,0.00000000,0.00000000,33.99719238); //object(sub_roadbarrier) (6)
  892. CreateDynamicObject(973,104.08267212,-5.54288244,9.02479076,0.00000000,0.00000000,33.99169922); //object(sub_roadbarrier) (7)
  893. CreateDynamicObject(973,109.99295044,1.70007598,9.02479076,0.00000000,0.00000000,65.98986816); //object(sub_roadbarrier) (8)
  894. CreateDynamicObject(16399,94.45455933,20.48121262,8.20557022,0.00000000,0.00000000,262.00000000); //object(desn2_peckfac2) (2)
  895. CreateDynamicObject(2991,82.84313965,30.36190605,8.83330441,0.00000000,0.00000000,82.00000000); //object(imy_bbox) (1)
  896. CreateDynamicObject(2991,82.84277344,30.36132812,10.08330441,0.00000000,0.00000000,81.99645996); //object(imy_bbox) (2)
  897. CreateDynamicObject(2991,82.40344238,26.38552856,8.83330441,0.00000000,0.00000000,81.99645996); //object(imy_bbox) (3)
  898. CreateDynamicObject(3576,83.29160309,41.13844299,9.44824314,0.00000000,0.00000000,352.00000000); //object(dockcrates2_la) (1)
  899. CreateDynamicObject(3576,82.90110016,39.43167496,9.44824314,0.00000000,0.00000000,351.99645996); //object(dockcrates2_la) (2)
  900. CreateDynamicObject(2973,83.42697144,36.30525970,8.20557022,0.00000000,0.00000000,351.99645996); //object(k_cargo2) (2)
  901. CreateDynamicObject(1238,76.47153473,3.92392731,8.52375031,0.00000000,0.00000000,0.00000000); //object(trafficcone) (1)
  902. CreateDynamicObject(1238,74.72505188,4.20262241,8.52375031,0.00000000,0.00000000,0.00000000); //object(trafficcone) (2)
  903. CreateDynamicObject(1238,72.74627686,4.49589539,8.52375031,0.00000000,0.00000000,0.00000000); //object(trafficcone) (3)
  904. CreateDynamicObject(16400,81.55263519,-21.97717285,8.20557022,0.00000000,0.00000000,351.00000000); //object(desn2_peckfac3) (1)
  905. CreateDynamicObject(1226,118.18152618,82.52769470,4.89415789,0.00000000,0.00000000,242.00000000); //object(lamppost3) (1)
  906. CreateDynamicObject(1226,91.37957764,97.66297913,4.89415789,0.00000000,0.00000000,241.99584961); //object(lamppost3) (2)
  907. CreateDynamicObject(1226,48.89343262,123.56863403,4.89415789,0.00000000,0.00000000,241.99584961); //object(lamppost3) (3)
  908. CreateDynamicObject(1226,151.89567566,65.79673767,4.89415789,0.00000000,0.00000000,247.99584961); //object(lamppost3) (4)
  909. CreateDynamicObject(1226,122.11376953,63.30474091,6.64415741,0.00000000,0.00000000,153.99438477); //object(lamppost3) (5)
  910. CreateDynamicObject(1226,103.51953125,23.04199219,10.92415619,0.00000000,0.00000000,153.98437500); //object(lamppost3) (6)
  911. CreateDynamicObject(1315,138.40542603,82.75183105,4.34720516,0.00000000,0.00000000,66.00000000); //object(trafficlight1) (1)
  912. CreateDynamicObject(1352,138.88085938,69.31933594,1.51508355,0.00000000,0.00000000,331.99682617); //object(cj_traffic_light3) (1)
  913. CreateDynamicObject(3514,124.38618469,74.99499512,5.94184685,0.00000000,0.00000000,332.00000000); //object(vgs_roadsign02) (1)
  914. CreateDynamicObject(1278,76.88105011,-32.39191437,22.39504433,0.00000000,0.00000000,230.00000000); //object(sub_floodlite) (1)
  915. CreateDynamicObject(1278,27.95597267,-24.60941124,22.14504433,0.00000000,0.00000000,109.99880981); //object(sub_floodlite) (2)
  916. CreateDynamicObject(1278,81.82399750,12.79105377,22.14504433,0.00000000,0.00000000,263.99511719); //object(sub_floodlite) (3)
  917. CreateDynamicObject(1226,87.79927826,1.63473177,11.92415619,0.00000000,0.00000000,109.98434448); //object(lamppost3) (6)
  918. CreateDynamicObject(1226,105.41336823,-3.33790183,11.92415619,0.00000000,0.00000000,299.98315430); //object(lamppost3) (6)
  919. CreateDynamicObject(1536,87.35182953,-12.71774197,8.54457092,0.00000000,0.00000000,352.00000000); //object(gen_doorext15) (1)
  920. CreateDynamicObject(1536,90.34430695,-13.04240513,8.54457092,0.00000000,0.00000000,171.99645996); //object(gen_doorext15) (2)
  921. CreateDynamicObject(3666,72.00341034,12.70646000,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (1)
  922. CreateDynamicObject(3666,73.26948547,21.62001228,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (2)
  923. CreateDynamicObject(3666,74.20186615,29.81620598,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (3)
  924. CreateDynamicObject(3666,75.60913849,39.97131729,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (4)
  925. CreateDynamicObject(3666,77.26961517,56.77061081,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (5)
  926. CreateDynamicObject(3666,83.23948669,91.55283356,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (6)
  927. CreateDynamicObject(3666,91.62361145,138.40859985,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (7)
  928. CreateDynamicObject(3666,97.04395294,169.80816650,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (8)
  929. CreateDynamicObject(3666,86.35617828,171.69377136,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (9)
  930. CreateDynamicObject(3666,77.23645782,173.26502991,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (10)
  931. CreateDynamicObject(3666,66.65645599,175.12928772,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (11)
  932. CreateDynamicObject(3666,61.88212585,144.20721436,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (12)
  933. CreateDynamicObject(3666,53.34629059,97.46945190,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (13)
  934. CreateDynamicObject(3666,47.18590546,62.35086060,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (14)
  935. CreateDynamicObject(3666,39.28068542,23.97758675,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (15)
  936. CreateDynamicObject(3666,33.94120789,-0.18088967,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (16)
  937. CreateDynamicObject(3666,31.98081779,-23.93481827,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (17)
  938. CreateDynamicObject(3666,39.45164490,-25.23752975,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (18)
  939. CreateDynamicObject(3666,47.20273209,-26.68838882,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (19)
  940. CreateDynamicObject(3666,55.31712723,-28.14141083,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (20)
  941. CreateDynamicObject(3666,63.34328842,-29.33600616,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (21)
  942. CreateDynamicObject(3666,71.54897308,-30.54680634,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (22)
  943. CreateDynamicObject(10764,87.01345062,208.47323608,6.25000000,0.00000000,0.00000000,215.99719238); //object(app_light_sfs05e) (1)
  944. CreateDynamicObject(897,86.30925751,205.38806152,-3.00000000,0.00000000,0.00000000,0.00000000); //object(searock01) (1)
  945. CreateDynamicObject(897,90.08937073,226.90162659,-3.00000000,0.00000000,0.00000000,0.00000000); //object(searock01) (2)
  946. CreateDynamicObject(897,92.57717133,247.76931763,-3.00000000,0.00000000,0.00000000,109.99514771); //object(searock01) (3)
  947. CreateDynamicObject(3666,70.83798981,4.93895340,7.96925545,0.00000000,0.00000000,0.00000000); //object(airuntest_las) (23)
  948. CreateDynamicObject(10764,78.58378601,154.20419312,4.75000000,0.00000000,0.00000000,215.99719238); //object(app_light_sfs05e) (1)
  949. CreateDynamicObject(897,84.39819336,194.25946045,-4.25000000,0.00000000,0.00000000,0.00000000); //object(searock01) (1)
  950. // INTRO
  951. newlogin0 = TextDrawCreate(269.000000, 134.000000, "_");
  952. TextDrawAlignment(newlogin0, 2);
  953. TextDrawBackgroundColor(newlogin0, 255);
  954. TextDrawFont(newlogin0, 1);
  955. TextDrawLetterSize(newlogin0, 0.500000, 22.299987);
  956. TextDrawColor(newlogin0, 30);
  957. TextDrawSetOutline(newlogin0, 0);
  958. TextDrawSetProportional(newlogin0, 1);
  959. TextDrawSetShadow(newlogin0, 1);
  960. TextDrawUseBox(newlogin0, 1);
  961. TextDrawBoxColor(newlogin0, 80);
  962. TextDrawTextSize(newlogin0, 0.000000, 787.000000);
  963.  
  964. newlogin1 = TextDrawCreate(250.000000, -27.000000, "_");
  965. TextDrawAlignment(newlogin1, 2);
  966. TextDrawBackgroundColor(newlogin1, 255);
  967. TextDrawFont(newlogin1, 1);
  968. TextDrawLetterSize(newlogin1, 0.500000, 17.300004);
  969. TextDrawColor(newlogin1, -1);
  970. TextDrawSetOutline(newlogin1, 0);
  971. TextDrawSetProportional(newlogin1, 1);
  972. TextDrawSetShadow(newlogin1, 1);
  973. TextDrawUseBox(newlogin1, 1);
  974. TextDrawBoxColor(newlogin1, 200);
  975. TextDrawTextSize(newlogin1, 0.000000, 787.000000);
  976.  
  977. newlogin2 = TextDrawCreate(250.000000, 341.000000, "_");
  978. TextDrawAlignment(newlogin2, 2);
  979. TextDrawBackgroundColor(newlogin2, 255);
  980. TextDrawFont(newlogin2, 1);
  981. TextDrawLetterSize(newlogin2, 0.500000, 16.200000);
  982. TextDrawColor(newlogin2, -1);
  983. TextDrawSetOutline(newlogin2, 0);
  984. TextDrawSetProportional(newlogin2, 1);
  985. TextDrawSetShadow(newlogin2, 1);
  986. TextDrawUseBox(newlogin2, 1);
  987. TextDrawBoxColor(newlogin2, 200);
  988. TextDrawTextSize(newlogin2, 0.000000, 787.000000);
  989.  
  990. newlogin3 = TextDrawCreate(250.000000, 340.000000, "_");
  991. TextDrawAlignment(newlogin3, 2);
  992. TextDrawBackgroundColor(newlogin3, 255);
  993. TextDrawFont(newlogin3, 1);
  994. TextDrawLetterSize(newlogin3, 0.500000, -0.500000);
  995. TextDrawColor(newlogin3, -1);
  996. TextDrawSetOutline(newlogin3, 0);
  997. TextDrawSetProportional(newlogin3, 1);
  998. TextDrawSetShadow(newlogin3, 1);
  999. TextDrawUseBox(newlogin3, 1);
  1000. TextDrawBoxColor(newlogin3, 0xFFFF00FF);
  1001. TextDrawTextSize(newlogin3, 0.000000, 787.000000);
  1002.  
  1003. newlogin5 = TextDrawCreate(250.000000, 134.000000, "_");
  1004. TextDrawAlignment(newlogin5, 2);
  1005. TextDrawBackgroundColor(newlogin5, 255);
  1006. TextDrawFont(newlogin5, 1);
  1007. TextDrawLetterSize(newlogin5, 0.500000, -0.500000);
  1008. TextDrawColor(newlogin5, -1);
  1009. TextDrawSetOutline(newlogin5, 0);
  1010. TextDrawSetProportional(newlogin5, 1);
  1011. TextDrawSetShadow(newlogin5, 1);
  1012. TextDrawUseBox(newlogin5, 1);
  1013. TextDrawBoxColor(newlogin5, 0xFFFF00FF);
  1014. TextDrawTextSize(newlogin5, 0.000000, 787.000000);
  1015.  
  1016. newlogin7 = TextDrawCreate(284.000000, 31.000000, "Willkommen");
  1017. TextDrawBackgroundColor(newlogin7, 255);
  1018. TextDrawFont(newlogin7, 3);
  1019. TextDrawLetterSize(newlogin7, 0.529999, 1.900000);
  1020. TextDrawColor(newlogin7, -156);
  1021. TextDrawSetOutline(newlogin7, 0);
  1022. TextDrawSetProportional(newlogin7, 1);
  1023. TextDrawSetShadow(newlogin7, 1);
  1024.  
  1025. newlogin8 = TextDrawCreate(325.000000, 51.000000, "auf");
  1026. TextDrawBackgroundColor(newlogin8, 255);
  1027. TextDrawFont(newlogin8, 2);
  1028. TextDrawLetterSize(newlogin8, 0.440000, 1.700000);
  1029. TextDrawColor(newlogin8, -156);
  1030. TextDrawSetOutline(newlogin8, 0);
  1031. TextDrawSetProportional(newlogin8, 1);
  1032. TextDrawSetShadow(newlogin8, 1);
  1033.  
  1034. newlogin9 = TextDrawCreate(246.000000, 73.000000, "Street");
  1035. TextDrawBackgroundColor(newlogin9, 255);
  1036. TextDrawFont(newlogin9, 3);
  1037. TextDrawLetterSize(newlogin9, 0.779999, 3.699998);
  1038. TextDrawColor(newlogin9, -1);
  1039. TextDrawSetOutline(newlogin9, 1);
  1040. TextDrawSetProportional(newlogin9, 1);
  1041.  
  1042. newlogin10 = TextDrawCreate(79.000000, 103.000000, ".");
  1043. TextDrawBackgroundColor(newlogin10, 255);
  1044. TextDrawFont(newlogin10, 1);
  1045. TextDrawLetterSize(newlogin10, 29.940078, 1.000000);
  1046. TextDrawColor(newlogin10, -1);
  1047. TextDrawSetOutline(newlogin10, 1);
  1048. TextDrawSetProportional(newlogin10, 1);
  1049.  
  1050. newlogin11 = TextDrawCreate(281.000000, 109.000000, "since");
  1051. TextDrawBackgroundColor(newlogin11, 255);
  1052. TextDrawFont(newlogin11, 2);
  1053. TextDrawLetterSize(newlogin11, 0.470000, 1.500000);
  1054. TextDrawColor(newlogin11, 0xFFFF00FF);
  1055. TextDrawSetOutline(newlogin11, 1);
  1056. TextDrawSetProportional(newlogin11, 1);
  1057.  
  1058. newlogin12 = TextDrawCreate(390.000000, 108.000000, "v0.9.1");
  1059. TextDrawBackgroundColor(newlogin12, 255);
  1060. TextDrawFont(newlogin12, 2);
  1061. TextDrawLetterSize(newlogin12, 0.270000, 1.200000);
  1062. TextDrawColor(newlogin12, -156);
  1063. TextDrawSetOutline(newlogin12, 0);
  1064. TextDrawSetProportional(newlogin12, 1);
  1065. TextDrawSetShadow(newlogin12, 1);
  1066.  
  1067. newlogin13 = TextDrawCreate(340.000000, 73.000000, "Lifehistory");
  1068. TextDrawBackgroundColor(newlogin13, 255);
  1069. TextDrawFont(newlogin13, 3);
  1070. TextDrawLetterSize(newlogin13, 0.779999, 3.699998);
  1071. TextDrawColor(newlogin13, 0xFFFF00FF);
  1072. TextDrawSetOutline(newlogin13, 1);
  1073. TextDrawSetProportional(newlogin13, 1);
  1074.  
  1075. newlogin14 = TextDrawCreate(337.000000, 109.000000, "2009");
  1076. TextDrawBackgroundColor(newlogin14, 255);
  1077. TextDrawFont(newlogin14, 2);
  1078. TextDrawLetterSize(newlogin14, 0.470000, 1.500000);
  1079. TextDrawColor(newlogin14, -1);
  1080. TextDrawSetOutline(newlogin14, 1);
  1081. TextDrawSetProportional(newlogin14, 1);
  1082.  
  1083. newlogin15 = TextDrawCreate(244.000000, 64.000000, ".");
  1084. TextDrawBackgroundColor(newlogin15, 255);
  1085. TextDrawFont(newlogin15, 1);
  1086. TextDrawLetterSize(newlogin15, 29.940078, 1.000000);
  1087. TextDrawColor(newlogin15, -1);
  1088. TextDrawSetOutline(newlogin15, 1);
  1089. TextDrawSetProportional(newlogin15, 1);
  1090.  
  1091. AntiDeAMX();
  1092. ShowNameTags(1);
  1093. //Schwarze Balken
  1094. /*lbt = TextDrawCreate(-1.000000,2.000000,"---");
  1095. lbb = TextDrawCreate(0.000000,337.000000,"---");
  1096. TextDrawUseBox(lbt,1);
  1097. TextDrawBoxColor(lbt,0x000000ff);
  1098. TextDrawTextSize(lbt,640.000000,-69.000000);
  1099. TextDrawUseBox(lbb,1);
  1100. TextDrawBoxColor(lbb,0x000000ff);
  1101. TextDrawTextSize(lbb,638.000000,-60.000000);
  1102. TextDrawAlignment(lbt,0);
  1103. TextDrawAlignment(lbb,0);
  1104. TextDrawBackgroundColor(lbt,0x000000ff);
  1105. TextDrawBackgroundColor(lbb,0x000000ff);
  1106. TextDrawFont(lbt,3);
  1107. TextDrawLetterSize(lbt,1.000000,12.199999);
  1108. TextDrawFont(lbb,3);
  1109. TextDrawLetterSize(lbb,0.899999,15.000000);
  1110. TextDrawColor(lbt,0x000000ff);
  1111. TextDrawColor(lbb,0x000000ff);
  1112. TextDrawSetOutline(lbt,1);
  1113. TextDrawSetOutline(lbb,1);
  1114. TextDrawSetProportional(lbt,1);
  1115. TextDrawSetProportional(lbb,1);
  1116. TextDrawSetShadow(lbt,1);
  1117. TextDrawSetShadow(lbb,1);*/
  1118. //Pickups + 3D
  1119. AddText(0,1318,"{0C9BCB}--> {E0C61B}'Enter'{0C9BCB} <--\n-->{FFFFFF}um Clucking Bell zu betretten{0C9BCB}<--", 2637.2104,1672.6830,11.0234,5,365.1315,-11.0269,1001.8516,"{0C9BCB}--> {E0C61B}'Enter'{0C9BCB} <--\n-->{FFFFFF}um Clucking Bell zu verlassen{0C9BCB}<--");
  1120. CreateDynamic3DTextLabel("{0C9BCB}--> {E0C61B}'Enter'{0C9BCB} <--\n-->{FFFFFF}um dein Fahrzeug zu beladen{0C9BCB}<--",0x0C9BCBFF,2780.9785,-2450.1860,13.7545,3);
  1121. CreateDynamic3DTextLabel("{0C9BCB}--> {E0C61B}'Enter'{0C9BCB} <--\n-->{FFFFFF}Um dein Flugzeug zu beladen{0C9BCB}<--",0x0C9BCBFF,2111.8140,-2424.9380,13.5469,15);
  1122.  
  1123.  
  1124. CreateDynamicPickup(1247, 1, 1546.3226,-1670.3237,13.5672); //wantedliste
  1125. CreateDynamic3DTextLabel("{0C9BCB}--> {E0C61B}'Enter'{0C9BCB} <--\n-->{FFFFFF}um die Wantedliste zu sehen{0C9BCB}<--",0x0C9BCBFF,1546.3226,-1670.3237,13.5672,3); //wantedliste
  1126.  
  1127. CreateDynamic3DTextLabel("{0C9BCB}--> {E0C61B}'Lieferstelle'{0C9BCB} <--\n-->{FFFFFF}hier wird deine Ware dir abgenommen{0C9BCB}<--",0x0C9BCBFF,980.4124,2102.5181,11.4132,8); //entladen
  1128. CreateDynamic3DTextLabel("{0C9BCB}--> {E0C61B}'Rückwärts'{0C9BCB} <--\n-->{FFFFFF}die Lieferung einfahren!{0C9BCB}<--",0x0C9BCBFF,997.5786,2140.2588,10.8203,10); //Ansage
  1129.  
  1130. CreateDynamicPickup(1318, 1, 2869.5420,892.1075,10.7500); //Beladen
  1131. CreateDynamic3DTextLabel("{0C9BCB}--> {E0C61B}'/beladen'{0C9BCB} <--\n-->{FFFFFF}um dein Fahrzeug zu beladen{0C9BCB}<--",0x0C9BCBFF,2869.5420,892.1075,10.7500,3); //beladen
  1132.  
  1133. CreateDynamicPickup(1318, 1, 364.3269,-74.1132,1001.5078); //BSN exit
  1134. CreateDynamic3DTextLabel("{0C9BCB}--> {E0C61B}'Enter'{0C9BCB} <--\n-->{FFFFFF}um BSN zu verlassen{0C9BCB}<--",0x0C9BCBFF,364.3269,-74.1132,1001.5078,3); // BSN
  1135.  
  1136. CreateDynamicPickup(1318, 1, 1199.1746,-918.7615,43.1191); //BSN
  1137. CreateDynamic3DTextLabel("{0C9BCB}--> {E0C61B}'Enter'{0C9BCB} <--\n-->{FFFFFF}um BSN zu betretten{0C9BCB}<--",0x0C9BCBFF,1199.1746,-918.7615,43.1191,3); // BSN
  1138.  
  1139. CreateDynamicPickup(1247, 1, 254.3305,76.6339,1003.6406); //LSPD Duty
  1140. CreateDynamic3DTextLabel("{0C9BCB}--> {E0C61B}'Enter'{0C9BCB} <--\n-->{FFFFFF}um deinen Job zu beginnen{0C9BCB}<--",0x0C9BCBFF,254.3305,76.6339,1003.6406,3); // Duty
  1141.  
  1142. CreateDynamicPickup(1247, 1, 268.1141,77.5713,1001.0391); //LSPD Arrest
  1143. CreateDynamic3DTextLabel("{0C9BCB}--> {FFFFFF}'/einsperren'{0C9BCB} <--\n-->{FFFFFF}um einen Verbrecher einzusperren{0C9BCB}<--",0x0C9BCBFF,268.1141,77.5713,1001.0391,10); // Arrest
  1144.  
  1145. CreateDynamicPickup(1247, 1, 1526.8578,-1678.2483,5.8906); //LSPD GArrest
  1146. CreateDynamic3DTextLabel("{0C9BCB}--> {FFFFFF}'/einsperren'{0C9BCB} <--\n-->{FFFFFF}um einen Verbrecher einzusperren{0C9BCB}<--",0x0C9BCBFF,1526.8578,-1678.2483,5.8906,10); // Arrest
  1147.  
  1148. CreateDynamicPickup(1318, 1, 246.783996,63.900199,1003.640625); //LSPD Exit
  1149. CreateDynamic3DTextLabel("{0C9BCB}--> {E0C61B}'Enter'{0C9BCB} <--\n-->{FFFFFF}um das LSPD zu verlassen{0C9BCB}<--",0x0C9BCBFF,246.783996,63.900199,1003.640625,20); // Exit
  1150.  
  1151. CreateDynamicPickup(1318, 1, 1554.1898,-1675.7930,16.1953); //LSPD
  1152. CreateDynamic3DTextLabel("{0C9BCB}--> {E0C61B}'Enter' {0C9BCB}<--\n-->{FFFFFF}um das LSPD zu betreten{0C9BCB}<--",0x0C9BCBFF,1554.1898,-1675.7930,16.1953,20); // Enter
  1153.  
  1154. CreateDynamicPickup(1239, 1, 2825.4316,1293.7446,10.7656); //FSchein
  1155. CreateDynamic3DTextLabel("{0C9BCB}--> {E0C61B}'Enter' {FAFAFA}um einen Führerschein zu erhalten{0C9BCB}<--",0x0C9BCBFF,2825.4316,1293.7446,10.7656,20); // FSChein
  1156.  
  1157. CreateDynamicPickup(1276, 1, 2825.1450,1284.0991,10.7652); //Startbonus
  1158. CreateDynamic3DTextLabel("{0C9BCB}--> {E0C61B}/startbonus {FAFAFA}um Level 2 und 6.000€ zu erhalten {0C9BCB}<--",0x0C9BCBFF,2825.1450,1284.0991,10.7652+ 0.5,20); // STart
  1159.  
  1160. CreateDynamicPickup(1247, 1, 256.9072,63.6661,1003.6406); //Clearpunkt
  1161. CreateDynamic3DTextLabel("--> {FFFFFF}Akten Löschung {0C9BCB}<--",0x0C9BCBFF,256.9072,63.6661,1003.6406+ 0.5,20); // Clearpoint
  1162. //Buggys bude
  1163. CreateDynamicObject(9509, -2060.77, 2484.54, 50.40, 0.00, 0.00, 326.25);
  1164. CreateDynamicObject(14420, -2066.36, 2459.73, 43.38, 0.00, 0.00, 326.25);
  1165. CreateDynamicObject(9339, -2083.65, 2465.81, 39.97, 0.00, 89.99, 236.25);
  1166. CreateDynamicObject(9339, -2082.89, 2466.94, 39.97, 0.00, 89.99, 236.25);
  1167. CreateDynamicObject(9339, -2082.13, 2468.07, 39.97, 0.00, 89.99, 236.25);
  1168. CreateDynamicObject(9339, -2081.37, 2469.23, 39.97, 0.00, 89.99, 236.25);
  1169. CreateDynamicObject(9339, -2080.61, 2470.33, 39.97, 0.00, 89.99, 236.25);
  1170. CreateDynamicObject(9339, -2079.86, 2471.48, 39.97, 0.00, 89.99, 236.25);
  1171. CreateDynamicObject(9339, -2079.07, 2472.60, 39.97, 0.00, 89.99, 236.25);
  1172. CreateDynamicObject(9339, -2078.31, 2473.74, 39.97, 0.00, 89.99, 236.25);
  1173. CreateDynamicObject(9339, -2077.57, 2474.90, 39.97, 0.00, 89.99, 236.25);
  1174. CreateDynamicObject(9339, -2076.87, 2476.12, 39.97, 0.00, 89.99, 236.25);
  1175. CreateDynamicObject(9339, -2076.11, 2477.19, 39.97, 0.00, 89.99, 56.25);
  1176. CreateDynamicObject(11496, -2074.19, 2473.02, 35.14, 0.00, 0.00, 56.25);
  1177. CreateDynamicObject(9339, -2082.61, 2483.18, 39.97, 0.00, 89.99, 236.25);
  1178. CreateDynamicObject(5340, -2083.63, 2479.18, 41.67, 0.00, 0.00, 236.25);
  1179. CreateDynamicObject(10246, -2075.47, 2479.12, 41.85, 0.00, 0.00, 236.25);
  1180. CreateDynamicObject(10246, -2087.02, 2471.60, 41.85, 0.00, 0.00, 236.25);
  1181. CreateDynamicObject(10246, -2082.13, 2468.33, 41.85, 0.00, 0.00, 236.25);
  1182. CreateDynamicObject(9339, -2085.52, 2486.25, 40.52, 0.00, 0.00, 326.25);
  1183. CreateDynamicObject(9339, -2085.53, 2486.25, 41.92, 0.00, 0.00, 326.25);
  1184. CreateDynamicObject(9339, -2085.52, 2486.25, 43.32, 0.00, 0.00, 326.25);
  1185. CreateDynamicObject(9339, -2087.55, 2483.26, 43.90, 0.00, 179.62, 146.25);
  1186. CreateDynamicObject(9339, -2083.99, 2465.30, 44.21, 0.00, 179.62, 236.24);
  1187. CreateDynamicObject(9339, -2087.50, 2483.28, 45.21, 0.00, 0.00, 326.25);
  1188. CreateDynamicObject(9339, -2084.00, 2465.32, 45.20, 0.00, 0.00, 56.25);
  1189. CreateDynamicObject(9339, -2063.61, 2472.60, 40.82, 0.00, 0.00, 146.25);
  1190. CreateDynamicObject(9339, -2063.62, 2472.55, 42.19, 0.00, 0.00, 146.24);
  1191. CreateDynamicObject(9339, -2063.61, 2472.59, 43.39, 0.00, 0.00, 146.25);
  1192. CreateDynamicObject(9339, -2066.05, 2468.88, 43.90, 0.00, 179.62, 326.25);
  1193. CreateDynamicObject(9339, -2066.05, 2468.88, 45.20, 0.00, 0.00, 146.25);
  1194. CreateDynamicObject(1408, -2071.28, 2468.05, 35.76, 0.00, 179.62, 146.25);
  1195. CreateDynamicObject(1408, -2075.71, 2471.01, 35.79, 0.00, 179.62, 146.25);
  1196. CreateDynamicObject(1408, -2080.01, 2473.88, 35.79, 0.00, 180.48, 146.25);
  1197. CreateDynamicObject(1408, -2080.70, 2477.68, 35.79, 0.00, 179.62, 56.25);
  1198. CreateDynamicObject(1408, -2067.49, 2468.81, 35.71, 0.00, 179.62, 236.25);
  1199. CreateDynamicObject(9339, -2070.46, 2476.53, 39.97, 0.00, 89.99, 236.25);
  1200. CreateDynamicObject(9339, -2069.76, 2477.74, 39.96, 0.00, 89.99, 236.25);
  1201. CreateDynamicObject(9339, -2069.92, 2479.40, 39.95, 0.00, 89.99, 236.25);
  1202. CreateDynamicObject(10246, -2068.60, 2474.47, 41.84, 0.00, 0.00, 236.25);
  1203. CreateDynamicObject(10246, -2069.06, 2464.59, 41.82, 0.00, 0.00, 146.25);
  1204. CreateDynamicObject(10246, -2065.30, 2470.23, 41.83, 0.00, 0.00, 146.25);
  1205. CreateDynamicObject(1491, -2077.56, 2469.24, 40.10, 0.00, 0.00, 236.25);
  1206. CreateDynamicObject(1491, -2079.22, 2466.71, 40.10, 0.00, 0.00, 56.25);
  1207. CreateDynamicObject(10246, -2077.27, 2478.85, 41.85, 0.00, 0.00, 326.25);
  1208. CreateDynamicObject(10246, -2077.81, 2475.30, 41.85, 0.00, 0.00, 56.25);
  1209. CreateDynamicObject(5340, -2085.16, 2480.20, 41.64, 0.00, 0.00, 236.25);
  1210. CreateDynamicObject(9339, -2083.68, 2465.80, 43.67, 0.00, 89.99, 236.25);
  1211. CreateDynamicObject(9339, -2083.00, 2466.82, 43.67, 0.00, 89.99, 236.25);
  1212. CreateDynamicObject(9339, -2082.38, 2467.70, 43.67, 0.00, 89.99, 236.25);
  1213. CreateDynamicObject(9339, -2081.56, 2468.84, 44.73, 0.00, 89.99, 236.25);
  1214. CreateDynamicObject(9339, -2080.83, 2470.00, 44.74, 0.00, 89.99, 236.25);
  1215. CreateDynamicObject(9339, -2082.08, 2468.16, 44.21, 0.00, 0.00, 56.25);
  1216. CreateDynamicObject(9339, -2080.04, 2471.17, 44.74, 0.00, 89.99, 236.25);
  1217. CreateDynamicObject(9339, -2079.28, 2472.31, 44.73, 0.00, 89.99, 236.25);
  1218. CreateDynamicObject(9339, -2078.53, 2473.45, 44.73, 0.00, 89.99, 236.25);
  1219. CreateDynamicObject(2600, -2081.37, 2475.48, 36.16, 0.00, 0.00, 292.50);
  1220. CreateDynamicObject(9339, -2077.77, 2474.54, 44.72, 0.00, 89.98, 236.24);
  1221. CreateDynamicObject(9339, -2077.19, 2475.46, 44.71, 0.00, 89.99, 236.25);
  1222. CreateDynamicObject(9339, -2076.45, 2476.65, 44.71, 0.00, 89.99, 236.25);
  1223. CreateDynamicObject(9339, -2075.83, 2477.89, 44.70, 0.00, 89.99, 236.25);
  1224. CreateDynamicObject(9339, -2075.11, 2479.09, 44.70, 0.00, 89.99, 236.25);
  1225. CreateDynamicObject(9339, -2075.13, 2478.92, 44.13, 0.00, 0.00, 56.25);
  1226. CreateDynamicObject(9339, -2071.85, 2487.11, 44.09, 0.00, 0.00, 146.25);
  1227. CreateDynamicObject(10246, -2077.78, 2475.28, 42.95, 0.00, 0.00, 236.25);
  1228. CreateDynamicObject(17574, -2068.95, 2477.63, 44.83, 0.00, 0.00, 56.25);
  1229. CreateDynamicObject(9339, -2069.18, 2472.39, 46.22, 0.00, 0.00, 146.25);
  1230. CreateDynamicObject(9339, -2053.89, 2476.65, 46.23, 0.00, 0.00, 92.58);
  1231. CreateDynamicObject(3850, -2093.35, 2471.53, 48.17, 0.00, 0.00, 56.25);
  1232. CreateDynamicObject(3850, -2090.49, 2469.63, 48.17, 0.00, 0.00, 56.25);
  1233. CreateDynamicObject(3850, -2087.63, 2467.71, 48.17, 0.00, 0.00, 56.25);
  1234. CreateDynamicObject(3850, -2084.78, 2465.80, 48.16, 0.00, 0.00, 56.25);
  1235. CreateDynamicObject(3850, -2081.93, 2463.92, 48.14, 0.00, 0.00, 56.25);
  1236. CreateDynamicObject(3850, -2093.81, 2473.91, 48.15, 0.00, 0.00, 326.25);
  1237. CreateDynamicObject(3850, -2091.89, 2476.79, 48.15, 0.00, 0.00, 326.25);
  1238. CreateDynamicObject(3331, -2076.95, 2498.59, 13.20, 305.86, 0.00, 326.25);
  1239. CreateDynamicObject(3331, -2069.61, 2493.70, 13.22, 305.86, 0.00, 326.25);
  1240. CreateDynamicObject(9339, -2083.93, 2465.37, 39.22, 0.00, 335.08, 56.25);
  1241. CreateDynamicObject(9339, -2083.79, 2465.59, 38.65, 0.00, 335.08, 56.25);
  1242. CreateDynamicObject(12958, -2069.87, 2468.98, 36.44, 0.00, 0.00, 236.25);
  1243. CreateDynamicObject(3570, -2063.92, 2473.90, 41.46, 0.00, 0.00, 56.25);
  1244. CreateDynamicObject(914, -2066.70, 2472.01, 41.68, 0.00, 0.00, 56.25);
  1245. CreateDynamicObject(927, -2066.20, 2470.53, 41.55, 0.00, 0.00, 326.25);
  1246. CreateDynamicObject(9339, -2072.13, 2477.46, 43.33, 0.00, 179.62, 146.25);
  1247. CreateDynamicObject(9339, -2072.96, 2476.23, 44.43, 0.00, 0.00, 326.25);
  1248. CreateDynamicObject(10246, -2075.73, 2472.16, 41.85, 0.00, 0.00, 326.25);
  1249. CreateDynamicObject(13187, -2070.49, 2479.89, 41.41, 0.00, 0.00, 319.37);
  1250. CreateDynamicObject(13187, -2070.01, 2478.47, 41.40, 0.00, 0.00, 236.25);
  1251. CreateDynamicObject(13187, -2067.66, 2476.27, 41.41, 0.00, 0.00, 202.50);
  1252. CreateDynamicObject(13187, -2066.08, 2476.91, 41.41, 0.00, 0.00, 146.25);
  1253. CreateDynamicObject(3851, -2090.19, 2469.33, 42.09, 0.00, 0.00, 56.25);
  1254. CreateDynamicObject(3851, -2077.90, 2461.12, 42.12, 0.00, 0.00, 56.24);
  1255. CreateDynamicObject(3851, -2070.05, 2462.69, 42.12, 0.00, 0.00, 146.25);
  1256. CreateDynamicObject(3851, -2091.74, 2477.17, 42.12, 0.00, 0.00, 146.25);
  1257. CreateDynamicObject(5856, -2083.95, 2465.27, 41.73, 0.00, 0.00, 56.25);
  1258. CreateDynamicObject(13187, -2068.57, 2474.55, 41.41, 0.00, 0.00, 56.25);
  1259. CreateDynamicObject(16500, -2068.17, 2477.33, 42.78, 0.00, 90.24, 146.25);
  1260. CreateDynamicObject(16500, -2070.59, 2478.94, 42.77, 0.00, 90.24, 146.25);
  1261. CreateDynamicObject(9339, -2075.22, 2478.96, 43.33, 0.00, 179.62, 236.25);
  1262. CreateDynamicObject(1491, -2072.66, 2477.24, 40.10, 0.00, 0.00, 326.25);
  1263. CreateDynamicObject(17574, -2075.35, 2494.61, 46.94, 0.00, 0.00, 247.50);
  1264. CreateDynamicObject(9339, -2083.91, 2492.17, 47.24, 0.00, 0.00, 334.92);
  1265. CreateDynamicObject(9339, -2083.87, 2493.26, 48.63, 0.00, 0.00, 337.50);
  1266. CreateDynamicObject(9339, -2084.26, 2491.02, 46.29, 0.00, 179.62, 154.06);
  1267. CreateDynamicObject(16500, -2068.14, 2477.33, 40.02, 0.00, 269.86, 146.25);
  1268. CreateDynamicObject(16500, -2070.60, 2478.96, 40.03, 0.00, 269.86, 146.25);
  1269. CreateDynamicObject(10246, -2075.75, 2472.13, 41.83, 0.00, 0.00, 146.25);
  1270. CreateDynamicObject(14720, -2074.16, 2459.25, 40.11, 0.00, 0.00, 56.25);
  1271. CreateDynamicObject(2528, -2068.21, 2476.47, 40.13, 0.00, 0.00, 292.50);
  1272. CreateDynamicObject(2836, -2070.78, 2476.95, 40.13, 0.00, 0.00, 326.25);
  1273. CreateDynamicObject(2630, -2076.16, 2462.64, 40.11, 0.00, 0.00, 326.25);
  1274. CreateDynamicObject(2522, -2069.17, 2475.57, 40.13, 0.00, 0.00, 326.25);
  1275. CreateDynamicObject(2523, -2069.67, 2477.59, 40.13, 0.00, 0.00, 326.25);
  1276. CreateDynamicObject(2834, -2076.02, 2461.96, 40.12, 0.00, 0.00, 56.25);
  1277. CreateDynamicObject(936, -2070.34, 2476.28, 40.58, 0.00, 0.00, 146.25);
  1278. CreateDynamicObject(949, -2071.15, 2478.86, 40.77, 0.00, 0.00, 0.00);
  1279. CreateDynamicObject(2194, -2070.75, 2476.40, 41.39, 0.00, 0.00, 0.00);
  1280. CreateDynamicObject(1280, -2076.31, 2477.92, 35.74, 0.00, 0.00, 84.84);
  1281. CreateDynamicObject(2207, -2084.84, 2475.02, 40.13, 0.00, 0.00, 326.25);
  1282. CreateDynamicObject(1723, -2071.01, 2473.92, 40.11, 0.00, 0.00, 326.25);
  1283. CreateDynamicObject(1723, -2075.89, 2470.80, 40.11, 0.00, 0.00, 56.25);
  1284. CreateDynamicObject(2568, -2076.03, 2472.79, 40.11, 0.00, 0.00, 236.25);
  1285. CreateDynamicObject(2204, -2090.16, 2478.99, 40.11, 0.00, 0.00, 56.25);
  1286. CreateDynamicObject(2197, -2089.67, 2477.62, 40.11, 0.00, 0.00, 56.25);
  1287. CreateDynamicObject(1646, -2069.30, 2469.94, 35.68, 0.00, 0.00, 281.25);
  1288. CreateDynamicObject(1481, -2083.78, 2472.14, 48.10, 0.00, 0.00, 56.25);
  1289. CreateDynamicObject(1659, -2087.81, 2477.26, 44.07, 0.00, 0.00, 326.25);
  1290. CreateDynamicObject(1659, -2081.30, 2472.81, 44.08, 0.00, 0.00, 326.25);
  1291. CreateDynamicObject(1736, -2088.36, 2472.97, 42.83, 0.00, 0.00, 146.25);
  1292. CreateDynamicObject(1786, -2070.74, 2464.68, 41.09, 0.00, 0.00, 202.49);
  1293. CreateDynamicObject(1797, -2074.48, 2476.61, 40.11, 0.00, 0.00, 56.25);
  1294. CreateDynamicObject(1809, -2071.21, 2465.21, 40.11, 0.00, 0.00, 236.25);
  1295. CreateDynamicObject(2028, -2071.26, 2465.76, 40.20, 0.00, 0.00, 337.49);
  1296. CreateDynamicObject(2149, -2073.34, 2458.64, 41.25, 0.00, 0.00, 191.25);
  1297. CreateDynamicObject(2192, -2084.58, 2475.56, 40.86, 0.00, 0.00, 258.75);
  1298. CreateDynamicObject(2229, -2071.38, 2474.62, 40.09, 0.00, 0.00, 348.75);
  1299. CreateDynamicObject(2332, -2080.32, 2476.42, 40.58, 0.00, 0.00, 326.25);
  1300. CreateDynamicObject(2828, -2083.37, 2473.82, 40.91, 0.00, 0.00, 348.75);
  1301. CreateDynamicObject(1846, -2068.69, 2478.66, 41.64, 90.24, 0.00, 326.25);
  1302. CreateDynamicObject(3260, -2072.00, 2461.61, 44.56, 0.00, 269.76, 326.25);
  1303. CreateDynamicObject(3260, -2074.47, 2463.26, 44.54, 0.00, 269.76, 326.25);
  1304. CreateDynamicObject(3260, -2076.94, 2464.91, 44.54, 0.00, 269.76, 326.25);
  1305. CreateDynamicObject(3260, -2079.38, 2466.54, 44.53, 0.00, 269.76, 327.97);
  1306. CreateDynamicObject(1472, -2077.72, 2476.16, 40.53, 0.00, 0.00, 56.25);
  1307. CreateDynamicObject(14819, -2078.91, 2476.09, 42.10, 0.00, 0.00, 236.25);
  1308. CreateDynamicObject(1656, -2076.84, 2475.59, 40.22, 0.00, 0.00, 56.25);
  1309. CreateDynamicObject(1656, -2077.04, 2475.70, 40.43, 0.00, 0.00, 56.25);
  1310. CreateDynamicObject(1656, -2077.22, 2475.86, 40.65, 0.00, 0.00, 56.25);
  1311. CreateDynamicObject(1656, -2077.47, 2475.99, 40.80, 0.00, 0.00, 56.25);
  1312. CreateDynamicObject(2163, -2077.08, 2476.69, 40.11, 0.00, 0.00, 146.24);
  1313. CreateDynamicObject(2163, -2077.73, 2477.11, 41.03, 0.00, 0.00, 146.24);
  1314. CreateDynamicObject(644, -2068.54, 2472.34, 40.30, 0.00, 0.00, 0.00);
  1315. CreateDynamicObject(2240, -2075.11, 2474.30, 40.71, 0.00, 0.00, 0.00);
  1316. CreateDynamicObject(14640, -2066.44, 2474.50, 40.40, 0.00, 0.00, 56.25);
  1317. CreateDynamicObject(2208, -2074.32, 2468.57, 40.02, 0.00, 0.00, 56.25);
  1318. CreateDynamicObject(2207, -2072.97, 2468.14, 40.11, 0.00, 0.00, 56.25);
  1319. CreateDynamicObject(2251, -2073.16, 2469.28, 40.98, 0.00, 0.00, 0.00);
  1320. CreateDynamicObject(2247, -2072.98, 2469.18, 41.08, 0.00, 0.00, 180.00);
  1321. CreateDynamicObject(2163, -2077.53, 2477.46, 40.11, 0.00, 0.00, 326.10);
  1322. CreateDynamicObject(2163, -2077.31, 2476.87, 41.16, 0.00, 0.00, 146.24);
  1323. CreateDynamicObject(894, -2065.32, 2473.96, 45.28, 0.00, 0.00, 37.71);
  1324. CreateDynamicObject(895, -2069.05, 2468.60, 45.40, 0.00, 0.00, 113.14);
  1325. CreateDynamicObject(892, -2067.08, 2470.88, 45.36, 0.00, 0.00, 0.00);
  1326. CreateDynamicObject(889, -2070.75, 2465.62, 45.44, 0.00, 0.00, 0.00);
  1327. CreateDynamicObject(885, -2072.52, 2463.23, 45.48, 0.00, 0.00, 0.00);
  1328. CreateDynamicObject(1710, -2084.60, 2470.63, 40.12, 0.00, 0.00, 146.15);
  1329. CreateDynamicObject(2258, -2088.12, 2472.24, 42.11, 0.00, 0.00, 326.26);
  1330. CreateDynamicObject(2259, -2087.02, 2470.96, 41.66, 0.00, 0.00, 326.26);
  1331. CreateDynamicObject(2260, -2086.08, 2470.32, 41.79, 0.00, 0.00, 326.26);
  1332. CreateDynamicObject(2266, -2087.04, 2470.93, 40.50, 0.00, 0.00, 326.26);
  1333. CreateDynamicObject(2267, -2088.13, 2472.23, 40.81, 0.00, 0.00, 326.26);
  1334. CreateDynamicObject(17037, -2003.26, 2453.66, 37.76, 5.95, 0.00, 332.21);
  1335. CreateDynamicObject(17037, -2006.78, 2446.15, 37.03, 3.97, 0.00, 338.16);
  1336. CreateDynamicObject(1454, -2058.12, 2478.11, 47.38, 86.11, 0.00, 176.66);
  1337. CreateDynamicObject(1454, -2060.61, 2477.74, 47.26, 107.94, 0.00, 330.22);
  1338. CreateDynamicObject(1454, -2055.76, 2476.88, 47.37, 96.03, 0.00, 5.95);
  1339. CreateDynamicObject(1454, -2054.09, 2475.18, 47.30, 96.03, 0.00, 5.95);
  1340. CreateDynamicObject(1454, -2052.37, 2473.15, 47.15, 96.03, 0.00, 5.95);
  1341. CreateDynamicObject(1454, -2050.70, 2471.59, 47.07, 100.00, 0.00, 5.95);
  1342. CreateDynamicObject(1454, -2048.77, 2469.87, 46.95, 96.03, 0.00, 5.95);
  1343. CreateDynamicObject(1454, -2047.51, 2467.98, 46.43, 115.88, 0.00, 17.86);
  1344. CreateDynamicObject(1454, -2046.52, 2465.52, 45.52, 74.19, 0.00, 192.54);
  1345. CreateDynamicObject(1454, -2045.03, 2463.44, 44.84, 74.19, 0.00, 192.54);
  1346. CreateDynamicObject(1454, -2043.49, 2461.39, 44.15, 74.19, 0.00, 192.54);
  1347. CreateDynamicObject(1454, -2041.88, 2459.36, 43.39, 74.19, 0.00, 192.54);
  1348. CreateDynamicObject(1454, -2040.23, 2457.42, 42.69, 74.19, 0.00, 192.54);
  1349. CreateDynamicObject(1454, -2038.42, 2455.61, 42.00, 74.19, 0.00, 192.54);
  1350. CreateDynamicObject(1454, -2036.31, 2453.75, 41.21, 74.19, 0.00, 192.54);
  1351. CreateDynamicObject(1454, -2034.22, 2451.94, 40.48, 103.96, 0.00, 39.69);
  1352. CreateDynamicObject(1454, -2032.06, 2450.43, 40.09, 103.96, 0.00, 39.69);
  1353. CreateDynamicObject(1454, -2029.91, 2449.18, 39.66, 98.00, 0.00, 39.69);
  1354. CreateDynamicObject(1454, -2027.64, 2447.80, 39.21, 98.00, 0.00, 39.68);
  1355. CreateDynamicObject(1454, -2025.60, 2446.52, 38.86, 98.00, 0.00, 39.68);
  1356. CreateDynamicObject(1454, -2023.75, 2444.93, 38.49, 98.00, 0.00, 39.68);
  1357. CreateDynamicObject(1454, -2022.13, 2443.38, 38.03, 68.22, 0.00, 234.93);
  1358. CreateDynamicObject(1454, -2020.41, 2442.10, 37.16, 68.22, 0.00, 234.93);
  1359. CreateDynamicObject(1454, -2018.42, 2440.86, 36.25, 68.22, 0.00, 234.93);
  1360. CreateDynamicObject(1454, -2016.50, 2439.54, 35.37, 68.22, 0.00, 234.93);
  1361. CreateDynamicObject(1454, -2014.55, 2438.34, 34.48, 68.22, 0.00, 234.93);
  1362. CreateDynamicObject(1454, -2012.41, 2437.18, 33.66, 76.16, 0.00, 234.93);
  1363. CreateDynamicObject(1454, -2010.03, 2436.03, 33.46, 90.05, 0.00, 234.92);
  1364. CreateDynamicObject(1454, -2008.17, 2435.35, 33.22, 74.92, 0.00, 246.83);
  1365. CreateDynamicObject(1478, -2007.61, 2436.28, 34.52, 0.00, 0.00, 81.38);
  1366. CreateDynamicObject(642, -2081.20, 2468.20, 48.83, 0.00, 0.00, 282.59);
  1367. CreateDynamicObject(643, -2081.01, 2470.90, 47.87, 0.00, 0.00, 0.00);
  1368. CreateDynamicObject(16151, -2069.73, 2465.23, 40.49, 0.00, 0.00, 326.26);
  1369. CreateDynamicObject(889, -2084.37, 2483.53, 47.35, 0.00, 0.00, 0.00);
  1370. CreateDynamicObject(1714, -2082.58, 2476.46, 40.12, 0.00, 0.00, 324.27);
  1371. CreateDynamicObject(1659, -2072.13, 2469.91, 44.12, 0.00, 0.00, 0.00);
  1372. CreateDynamicObject(14527, -2084.40, 2473.74, 42.09, 0.00, 0.00, 350.03);
  1373. CreateDynamicObject(4079, -2906.08203125, 454.4609375, 16.577751159668, 0, 0, 44.983520507813);
  1374. CreateDynamicObject(7191, -2905.298828125, 417.04296875, 5.7637405395508, 0, 0, 89.994506835938);
  1375. CreateDynamicObject(7191, -2892.2392578125, 417.1015625, 5.7637405395508, 0, 0, 89.994506835938);
  1376. CreateDynamicObject(7191, -2892.1953125, 509.6865234375, 5.7637405395508, 0, 0, 89.989013671875);
  1377. CreateDynamicObject(7191, -2908.6076660156, 509.6921081543, 5.7637405395508, 0, 0, 89.989013671875);
  1378. CreateDynamicObject(7191, -2869.74609375, 439.09747314453, 5.7637405395508, 0, 0, 179.99450683594);
  1379. CreateDynamicObject(7191, -2869.6999511719, 477.70001220703, 5.8000001907349, 0, 0, 179.99450683594);
  1380. CreateDynamicObject(5020, -2898.1279296875, 488.666015625, 5.5911269187927, 0, 0, 44.994506835938);
  1381. CreateDynamicObject(7191, -2905.3134765625, 417.09069824219, 5.7637405395508, 0, 0, 269.99450683594);
  1382. CreateDynamicObject(17037, -2992.8720703125, 466.19369506836, 6.4055366516113, 0, 0, 270);
  1383. CreateDynamicObject(17037, -2992.8723144531, 470.63000488281, 6.4055366516113, 0, 0, 90);
  1384. CreateDynamicObject(17037, -2992.8876953125, 479.5143737793, 6.4055366516113, 0, 0, 90);
  1385. CreateDynamicObject(17037, -2992.8852539063, 475.0778503418, 6.4055366516113, 0, 0, 270);
  1386. CreateDynamicObject(17037, -2970.740234375, 482.396484375, 6.4055366516113, 0, 0, 179.99450683594);
  1387. CreateDynamicObject(17037, -2966.2880859375, 482.36602783203, 6.4055366516113, 0, 0, 359.99450683594);
  1388. CreateDynamicObject(17037, -2953.396484375, 482.4580078125, 6.4055366516113, 0, 0, 359.98352050781);
  1389. CreateDynamicObject(17037, -2957.841796875, 482.462890625, 6.4055366516113, 0, 0, 179.98352050781);
  1390. CreateDynamicObject(1232, -2887.8256835938, 506.6809387207, 6.5507054328918, 0, 0, 0);
  1391. CreateDynamicObject(1232, -2871.22265625, 499.27734375, 6.5507054328918, 0, 0, 0);
  1392. CreateDynamicObject(1232, -2871.0126953125, 482.3346862793, 6.4757051467896, 0, 0, 0);
  1393. CreateDynamicObject(1232, -2870.9421386719, 436.27694702148, 6.6021428108215, 0, 0, 0);
  1394. CreateDynamicObject(1232, -2871.28125, 461.35546875, 6.4609150886536, 0, 0, 0);
  1395. CreateDynamicObject(737, -2884.2666015625, 492.53085327148, 4.0565710067749, 0, 0, 46);
  1396. CreateDynamicObject(737, -2884.1604003906, 482.65295410156, 4.0565710067749, 0, 0, 45.999755859375);
  1397. CreateDynamicObject(737, -2884.2890625, 472.7685546875, 4.0565710067749, 0, 0, 45.999755859375);
  1398. CreateDynamicObject(737, -2884.177734375, 462.73934936523, 4.0565710067749, 0, 0, 45.999755859375);
  1399. CreateDynamicObject(983, -2884.1833496094, 468.50170898438, 4.597617149353, 0, 0, 0);
  1400. CreateDynamicObject(983, -2884.224609375, 458.564453125, 4.597617149353, 0, 0, 0);
  1401. CreateDynamicObject(983, -2884.228515625, 453.7578125, 4.597617149353, 0, 0, 0);
  1402. CreateDynamicObject(983, -2884.2231445313, 476.92864990234, 4.597617149353, 0, 0, 0);
  1403. CreateDynamicObject(983, -2884.2180175781, 478.52853393555, 4.597617149353, 0, 0, 0);
  1404. CreateDynamicObject(983, -2884.1708984375, 486.78564453125, 4.597617149353, 0, 0, 0);
  1405. CreateDynamicObject(983, -2884.1701660156, 488.38739013672, 4.597617149353, 0, 0, 0);
  1406. CreateDynamicObject(630, -2885.7573242188, 454.873046875, 5.4489898681641, 0, 0, 110);
  1407. CreateDynamicObject(630, -2885.6821289063, 454.87396240234, 5.4489898681641, 0, 0, 59.9951171875);
  1408. CreateDynamicObject(630, -2889.3999023438, 456.20001220703, 5.4000000953674, 0, 0, 39.990234375);
  1409. CreateDynamicObject(638, -2889.4135742188, 474.32238769531, 4.6110963821411, 0, 0, 0);
  1410. CreateDynamicObject(638, -2889.431640625, 471.34564208984, 4.6110963821411, 0, 0, 0);
  1411. CreateDynamicObject(638, -2889.4462890625, 468.34408569336, 4.6110963821411, 0, 0, 0);
  1412. CreateDynamicObject(638, -2889.5178222656, 461.01864624023, 4.6110963821411, 0, 0, 0);
  1413. CreateDynamicObject(638, -2889.5393066406, 463.89395141602, 4.6110963821411, 0, 0, 0);
  1414. CreateDynamicObject(638, -2894.029296875, 483.34765625, 4.6110963821411, 0, 0, 32.75);
  1415. CreateDynamicObject(638, -2892.3044433594, 480.69244384766, 4.6110963821411, 0, 0, 32.744750976563);
  1416. CreateDynamicObject(638, -2890.6091308594, 478.06884765625, 4.6110963821411, 0, 0, 32.744750976563);
  1417. CreateDynamicObject(3517, -2891.3852539063, 423.7082824707, 15.114149093628, 0, 0, 0);
  1418. CreateDynamicObject(717, -2865.7541503906, 421.86880493164, 4.0151615142822, 0, 0, 0);
  1419. CreateDynamicObject(717, -2865.6293945313, 431.77099609375, 4.0151615142822, 0, 0, 0);
  1420. CreateDynamicObject(717, -2865.3442382813, 441.84719848633, 4.0151615142822, 0, 0, 0);
  1421. CreateDynamicObject(717, -2860.3195800781, 488.69189453125, 4.1078038215637, 0, 0, 344.75);
  1422. CreateDynamicObject(970, -2864.4853515625, 418.33129882813, 4.6085033416748, 0, 0, 270);
  1423. CreateDynamicObject(970, -2864.4970703125, 422.45602416992, 4.6085033416748, 0, 0, 270);
  1424. CreateDynamicObject(970, -2864.5029296875, 426.57955932617, 4.6085033416748, 0, 0, 270);
  1425. CreateDynamicObject(970, -2864.5146484375, 430.70407104492, 4.6085033416748, 0, 0, 270);
  1426. CreateDynamicObject(970, -2864.5256347656, 434.80303955078, 4.6085033416748, 0, 0, 270);
  1427. CreateDynamicObject(970, -2864.5349121094, 438.92752075195, 4.6085033416748, 0, 0, 270);
  1428. CreateDynamicObject(970, -2864.5466308594, 443.02679443359, 4.6085033416748, 0, 0, 270);
  1429. CreateDynamicObject(970, -2864.5576171875, 447.12634277344, 4.6085033416748, 0, 0, 270);
  1430. CreateDynamicObject(970, -2864.5708007813, 451.25106811523, 4.6085033416748, 0, 0, 270);
  1431. CreateDynamicObject(970, -2864.5732421875, 453.32571411133, 4.6085033416748, 0, 0, 270);
  1432. CreateDynamicObject(970, -2858.7705078125, 489.06036376953, 4.7048320770264, 0, 0, 253.75);
  1433. CreateDynamicObject(970, -2857.6193847656, 492.99356079102, 4.7048320770264, 0, 0, 253.74572753906);
  1434. CreateDynamicObject(970, -2856.466796875, 496.92724609375, 4.7048320770264, 0, 0, 253.74572753906);
  1435. CreateDynamicObject(970, -2855.1911621094, 500.82867431641, 4.7048320770264, 0, 0, 249.74572753906);
  1436. CreateDynamicObject(970, -2853.765625, 504.69177246094, 4.7048320770264, 0, 0, 249.7412109375);
  1437. CreateDynamicObject(970, -2852.3474121094, 508.55432128906, 4.7048320770264, 0, 0, 249.7412109375);
  1438. CreateDynamicObject(717, -2865.53515625, 451.876953125, 3.9151611328125, 0, 0, 0);
  1439. CreateDynamicObject(717, -2857.3232421875, 498.67578125, 4.0578036308289, 0, 0, 343.49304199219);
  1440. CreateDynamicObject(717, -2853.2619628906, 509.16644287109, 4.1078038215637, 359, 0, 342.24304199219);
  1441. CreateDynamicObject(3517, -2888.1071777344, 427.07904052734, 15.114149093628, 0, 0, 0);
  1442. CreateDynamicObject(3517, -2884.744140625, 430.5751953125, 15.114149093628, 0, 0, 0);
  1443. CreateDynamicObject(8866, -2919.0991210938, 508.21566772461, 4.1543779373169, 0, 0, 270);
  1444. CreateDynamicObject(8866, -2897.2109375, 508.2294921875, 4.1543779373169, 0, 0, 270);
  1445. CreateDynamicObject(3517, -2928.5095214844, 508.31384277344, 15.014150619507, 0, 0, 0);
  1446. CreateDynamicObject(3517, -2910.396484375, 508.20227050781, 15.014150619507, 0, 0, 0);
  1447. CreateDynamicObject(3517, -2919.5341796875, 508.17446899414, 15.014150619507, 0, 0, 0);
  1448. CreateDynamicObject(3517, -2905.4858398438, 508.29580688477, 15.014150619507, 0, 0, 0);
  1449. CreateDynamicObject(3517, -2888.8159179688, 508.24230957031, 15.014150619507, 0, 0, 0);
  1450. CreateDynamicObject(3517, -2897.1528320313, 508.21859741211, 15.014150619507, 0, 0, 0);
  1451. CreateDynamicObject(3928, -2901.1000976563, 446.39999389648, 13.300000190735, 0, 0, 0);
  1452. CreateDynamicObject(3660, -2891.50390625, 448.3828125, 15.740658760071, 0, 0, 271.24694824219);
  1453. CreateDynamicObject(3660, -2891.7294921875, 458.9052734375, 15.740658760071, 0, 0, 271.24145507813);
  1454. CreateDynamicObject(3660, -2895.88671875, 477.41015625, 15.740658760071, 0, 0, 293.994140625);
  1455. CreateDynamicObject(3660, -2895.884765625, 430.35708618164, 15.740658760071, 0, 0, 241.24694824219);
  1456. CreateDynamicObject(1697, -2887.51171875, 435.47790527344, 10.101276397705, 0, 0, 330);
  1457. CreateDynamicObject(1697, -2887.576171875, 443.03433227539, 10.101276397705, 0, 0, 329.99633789063);
  1458. CreateDynamicObject(1697, -2887.6765136719, 450.25244140625, 10.051277160645, 0, 0, 329.99633789063);
  1459. CreateDynamicObject(2922, -2869.3466796875, 509.45849609375, 5.289445400238, 0, 0, 270);
  1460. CreateDynamicObject(1616, -2869.0856933594, 509.76821899414, 8.0634288787842, 0, 356.5, 165);
  1461. CreateDynamicObject(717, -2857.3232421875, 498.67578125, 4.0578036308289, 0, 0, 343.49304199219);
  1462. CreateDynamicObject(1616, -2931.3583984375, 457.51892089844, 10.133710861206, 0, 0, 340);
  1463. CreateDynamicObject(1223, -2901.2749023438, 491.81097412109, 3.8565702438354, 0, 0, 90);
  1464. CreateDynamicObject(1223, -2904.1630859375, 491.802734375, 3.8565702438354, 0, 0, 90);
  1465. CreateDynamicObject(1223, -2907.0517578125, 491.794921875, 3.8565702438354, 0, 0, 90);
  1466. CreateDynamicObject(983, -2887.4321289063, 450.60150146484, 4.597617149353, 0, 0, 90);
  1467. CreateDynamicObject(1232, -2901.3850097656, 506.59378051758, 6.4757051467896, 0, 0, 0);
  1468. CreateDynamicObject(3920, -2889.1000976563, 466.89999389648, 7.5, 0, 0, 270);
  1469. CreateDynamicObject(983, -2884.1767578125, 466.8974609375, 4.597617149353, 0, 0, 0);
  1470. CreateDynamicObject(3920, -2889.1999511719, 470.29998779297, 7.5, 0, 0, 270);
  1471. CreateDynamicObject(14387, -2886.6999511719, 459.70001220703, 3.2999999523163, 0, 0, 64.5);
  1472. CreateDynamicObject(630, -2889.3994140625, 456.19921875, 5.4000000953674, 0, 0, 39.990234375);
  1473. CreateDynamicObject(1886, -2885.6000976563, 454.10000610352, 7.6999998092651, 27.5, 0, 219.49998474121);
  1474. CreateDynamicObject(3920, -2889.099609375, 466.8994140625, 7.5, 0, 0, 270);
  1475. CreateDynamicObject(1569, -2929.6000976563, 470.39999389648, 3.9000000953674, 0, 0, 44.247436523438);
  1476. CreateDynamicObject(1569, -2927.5, 472.5, 3.9000000953674, 0, 0, 225.49438476563);
  1477. CreateDynamicObject(1569, -2914.3994140625, 459.19921875, 13.300000190735, 0, 0, 223.99475097656);
  1478. CreateDynamicObject(3666, -2913.3999023438, 464.70001220703, 30.700000762939, 0, 0, 0);
  1479. CreateDynamicObject(3666, -2898.099609375, 432.599609375, 30.700000762939, 0, 0, 0);
  1480. CreateDynamicObject(3666, -2913.19921875, 444.19921875, 30.700000762939, 0, 0, 0);
  1481. CreateDynamicObject(3666, -2898.5, 476.10000610352, 30.700000762939, 0, 0, 0);
  1482. CreateDynamicObject(3928, -2901.1999511719, 462.79998779297, 13.300000190735, 0, 0, 0);
  1483. CreateDynamicObject(1569, -2916.5, 457.099609375, 13.300000190735, 0, 0, 45.7470703125);
  1484. CreateDynamicObject(4079, -2906.1000976563, 454.5, -2.5, 0, 0, 44.983520507813);
  1485. CreateDynamicObject(17037, -2958, 459.29998779297, 6.4000000953674, 0, 0, 179.98352050781);
  1486. CreateDynamicObject(17037, -2953.6000976563, 459.29998779297, 6.4000000953674, 0, 0, 359.98352050781);
  1487. CreateDynamicObject(17037, -2940.8000488281, 459.29998779297, 6.4000000953674, 0, 0, 359.98352050781);
  1488. CreateDynamicObject(17037, -2945.1999511719, 459.29998779297, 6.4000000953674, 0, 0, 179.98352050781);
  1489. CreateDynamicObject(17037, -2971.1000976563, 459.29998779297, 6.4000000953674, 0, 0, 179.98352050781);
  1490. CreateDynamicObject(17037, -2966.6000976563, 459.29998779297, 6.4000000953674, 0, 0, 359.98352050781);
  1491. CreateDynamicObject(17037, -2985.1000976563, 459.29998779297, 6.4000000953674, 0, 0, 179.98352050781);
  1492. CreateDynamicObject(17037, -2980.6999511719, 459.29998779297, 6.4000000953674, 0, 0, 359.98352050781);
  1493. /*//Pay n spray
  1494. CreateDynamicObject(6400, 488.28, -1734.67, 12.39, 356.86, 0.00, -1.42);
  1495. CreateDynamicObject(5856, 1024.96, -1029.39, 33.20, 3.14, 0.00, 1.57);
  1496. CreateDynamicObject(5779, 1041.42, -1025.98, 32.67, 3.14, 0.00, 1.57);
  1497. CreateDynamicObject(5422, 2071.50, -1831.51, 14.56, 3.14, 0.00, 0.00);*/
  1498. //Baumhaus
  1499. CreateDynamicObject(1418, 3.45, -1.40, -3.60, 90.00, 0.00, 0.00);
  1500. CreateDynamicObject(1418, 3.45, 0.00, -3.60, 90.00, 0.00, 0.00);
  1501. CreateDynamicObject(1418, 3.45, 1.40, -3.60, 90.00, 0.00, 0.00);
  1502. CreateDynamicObject(1418, 3.45, 2.80, -3.60, 90.00, 0.00, 0.00);
  1503. CreateDynamicObject(1418, 3.45, 4.20, -3.60, 90.00, 0.00, 0.00);
  1504. CreateDynamicObject(1418, -0.05, 4.20, -3.60, 90.00, 0.00, 0.00);
  1505. CreateDynamicObject(1418, -0.05, 2.80, -3.60, 90.00, 0.00, 0.00);
  1506. CreateDynamicObject(1418, -0.05, 1.40, -3.60, 90.00, 0.00, 0.00);
  1507. CreateDynamicObject(1418, -0.05, 0.00, -3.60, 90.00, 0.00, 0.00);
  1508. CreateDynamicObject(1418, -0.05, -2.80, -3.60, 90.00, 0.00, 0.00);
  1509. CreateDynamicObject(1418, -0.05, -4.20, -3.60, 90.00, 0.00, 0.00);
  1510. CreateDynamicObject(1418, 3.45, -4.20, -3.60, 90.00, 0.00, 0.00);
  1511. CreateDynamicObject(1418, 3.45, -2.80, -3.60, 90.00, 0.00, 0.00);
  1512. CreateDynamicObject(1418, -3.55, 4.20, -3.60, 90.00, 0.00, 0.00);
  1513. CreateDynamicObject(1418, -3.55, 2.80, -3.60, 90.00, 0.00, 0.00);
  1514. CreateDynamicObject(1418, -3.55, 1.40, -3.60, 90.00, 0.00, 0.00);
  1515. CreateDynamicObject(1418, -3.55, 0.00, -3.60, 90.00, 0.00, 0.00);
  1516. CreateDynamicObject(1418, -3.55, -1.40, -3.60, 90.00, 0.00, 0.00);
  1517. CreateDynamicObject(1418, -3.55, -2.80, -3.60, 90.00, 0.00, 0.00);
  1518. CreateDynamicObject(1418, -3.55, -4.20, -3.60, 90.00, 0.00, 0.00);
  1519. CreateDynamicObject(1418, 3.55, 4.90, -2.90, 0.00, 0.00, 180.00);
  1520. CreateDynamicObject(1418, 0.05, 4.90, -2.90, 0.00, 0.00, 179.99);
  1521. CreateDynamicObject(1418, -3.45, 4.90, -2.90, 0.00, 0.00, 179.99);
  1522. CreateDynamicObject(1418, -5.25, 3.20, -2.90, 0.00, 0.00, 269.99);
  1523. CreateDynamicObject(1418, -5.25, -0.30, -2.90, 0.00, 0.00, 269.99);
  1524. CreateDynamicObject(1418, -5.25, -3.20, -2.90, 0.00, 0.00, 269.99);
  1525. CreateDynamicObject(1418, 5.25, 3.10, -2.90, 0.00, 0.00, 89.99);
  1526. CreateDynamicObject(1418, 5.25, -0.40, -2.90, 0.00, 0.00, 89.99);
  1527. CreateDynamicObject(1418, 5.25, -3.20, -2.90, 0.00, 0.00, 89.99);
  1528. CreateDynamicObject(1418, 3.45, -4.90, -2.90, 0.00, 0.00, 359.99);
  1529. CreateDynamicObject(1418, -0.05, -4.90, -2.90, 0.00, 0.00, 359.99);
  1530. CreateDynamicObject(1418, -3.55, -4.90, -2.90, 0.00, 0.00, 359.99);
  1531. CreateDynamicObject(1418, -3.45, 4.90, -1.50, 0.00, 0.00, 179.99);
  1532. CreateDynamicObject(1418, 3.55, 4.90, -1.50, 0.00, 0.00, 179.99);
  1533. CreateDynamicObject(1418, 0.05, 4.90, -0.10, 0.00, 0.00, 179.99);
  1534. CreateDynamicObject(1418, -3.45, 4.90, -0.10, 0.00, 0.00, 179.99);
  1535. CreateDynamicObject(1418, -3.55, -4.90, -1.50, 0.00, 0.00, 359.99);
  1536. CreateDynamicObject(1418, -0.05, -4.90, -1.50, 0.00, 0.00, 359.99);
  1537. CreateDynamicObject(1418, 3.45, -4.90, -1.50, 0.00, 0.00, 359.99);
  1538. CreateDynamicObject(1418, 3.45, -4.90, -0.10, 0.00, 0.00, 359.98);
  1539. CreateDynamicObject(1418, -0.05, -4.90, -0.10, 0.00, 0.00, 359.98);
  1540. CreateDynamicObject(1418, -3.55, -4.90, -0.10, 0.00, 0.00, 359.98);
  1541. CreateDynamicObject(1418, -5.25, -3.20, -1.50, 0.00, 0.00, 269.99);
  1542. CreateDynamicObject(1418, -5.25, 3.20, -1.50, 0.00, 0.00, 269.99);
  1543. CreateDynamicObject(1418, -5.25, 3.20, -0.10, 0.00, 0.00, 269.99);
  1544. CreateDynamicObject(1418, -5.25, -0.30, -0.10, 0.00, 0.00, 269.99);
  1545. CreateDynamicObject(1418, -5.25, -3.20, -0.10, 0.00, 0.00, 269.99);
  1546. CreateDynamicObject(1418, 5.25, 3.10, -1.50, 0.00, 0.00, 89.99);
  1547. CreateDynamicObject(1418, 5.25, 3.10, -0.10, 0.00, 0.00, 89.99);
  1548. CreateDynamicObject(1418, 5.25, -0.40, -1.50, 0.00, 0.00, 89.99);
  1549. CreateDynamicObject(1418, 5.25, -0.40, -0.10, 0.00, 0.00, 89.99);
  1550. CreateDynamicObject(1418, 5.25, -3.20, -1.50, 0.00, 0.00, 89.99);
  1551. CreateDynamicObject(1418, 5.25, -3.20, -0.10, 0.00, 0.00, 89.99);
  1552. CreateDynamicObject(1418, -4.75, -3.20, 1.10, 315.00, 0.00, 269.99);
  1553. CreateDynamicObject(1418, -4.75, -0.30, 1.10, 315.00, 0.00, 269.99);
  1554. CreateDynamicObject(1418, -4.75, 3.20, 1.10, 315.00, 0.00, 269.99);
  1555. CreateDynamicObject(1418, -3.75, 3.20, 2.10, 315.00, 0.00, 269.99);
  1556. CreateDynamicObject(1418, -3.75, -0.30, 2.10, 315.00, 0.00, 269.99);
  1557. CreateDynamicObject(1418, -3.75, -3.20, 2.10, 315.00, 0.00, 269.99);
  1558. CreateDynamicObject(1418, -2.75, -3.20, 3.10, 315.00, 0.00, 269.99);
  1559. CreateDynamicObject(1418, -2.75, -0.30, 3.10, 315.00, 0.00, 269.99);
  1560. CreateDynamicObject(1418, -2.75, 3.20, 3.10, 315.00, 0.00, 269.99);
  1561. CreateDynamicObject(1418, -1.55, -3.20, 3.60, 270.00, 0.00, 269.99);
  1562. CreateDynamicObject(1418, -0.15, -3.20, 3.60, 269.99, 0.00, 269.99);
  1563. CreateDynamicObject(1418, 4.75, -3.20, 1.10, 315.00, 0.00, 89.99);
  1564. CreateDynamicObject(1418, 4.75, -0.40, 1.10, 314.99, 0.00, 89.99);
  1565. CreateDynamicObject(1418, 4.75, 3.10, 1.10, 314.99, 0.00, 89.99);
  1566. CreateDynamicObject(1418, 3.75, 3.10, 2.10, 314.99, 0.00, 89.99);
  1567. CreateDynamicObject(1418, 3.75, -0.40, 2.10, 314.99, 0.00, 89.99);
  1568. CreateDynamicObject(1418, 3.75, -3.20, 2.10, 314.99, 0.00, 89.99);
  1569. CreateDynamicObject(1418, 2.75, -3.20, 3.10, 314.99, 0.00, 89.99);
  1570. CreateDynamicObject(1418, 2.75, -0.40, 3.10, 314.99, 0.00, 89.99);
  1571. CreateDynamicObject(1418, 2.75, 3.10, 3.10, 314.99, 0.00, 89.99);
  1572. CreateDynamicObject(1418, 1.25, -3.20, 3.60, 269.99, 0.00, 269.99);
  1573. CreateDynamicObject(1418, 1.55, -3.20, 3.60, 269.99, 0.00, 269.99);
  1574. CreateDynamicObject(1418, -1.55, -0.30, 3.60, 269.99, 0.00, 269.99);
  1575. CreateDynamicObject(1418, -1.55, 3.20, 3.60, 269.99, 0.00, 269.99);
  1576. CreateDynamicObject(1418, -0.15, 3.20, 3.60, 269.99, 0.00, 269.99);
  1577. CreateDynamicObject(1418, 1.25, 3.20, 3.60, 269.99, 0.00, 269.99);
  1578. CreateDynamicObject(1418, 1.55, 3.20, 3.60, 269.99, 0.00, 269.99);
  1579. CreateDynamicObject(1418, -0.15, -0.30, 3.60, 269.99, 0.00, 269.99);
  1580. CreateDynamicObject(1418, 1.25, -0.30, 3.60, 269.99, 0.00, 269.99);
  1581. CreateDynamicObject(1418, 1.55, -0.30, 3.60, 269.99, 0.00, 269.99);
  1582. CreateDynamicObject(1418, 3.55, 4.90, -0.10, 0.00, 0.00, 179.99);
  1583. CreateDynamicObject(1418, 0.05, 4.90, 1.30, 0.00, 0.00, 179.99);
  1584. CreateDynamicObject(1418, 0.05, 4.90, 2.70, 0.00, 0.00, 179.99);
  1585. CreateDynamicObject(1418, 0.05, 4.90, 2.90, 0.00, 0.00, 179.99);
  1586. CreateDynamicObject(1418, -3.45, 4.90, 1.40, 0.00, 45.00, 179.99);
  1587. CreateDynamicObject(1418, -2.95, 4.90, 1.90, 0.00, 44.99, 179.99);
  1588. CreateDynamicObject(1418, -1.65, 4.90, 1.30, 0.00, 0.00, 179.99);
  1589. CreateDynamicObject(1418, 3.55, 4.90, 1.30, 0.00, 315.00, 179.99);
  1590. CreateDynamicObject(1418, 2.95, 4.90, 1.90, 0.00, 315.00, 179.99);
  1591. CreateDynamicObject(1418, -0.45, 4.90, 2.90, 0.00, 0.00, 179.99);
  1592. CreateDynamicObject(1418, 0.55, 4.90, 2.90, 0.00, 0.00, 179.99);
  1593. CreateDynamicObject(1418, 1.85, 4.90, 1.30, 0.00, 0.00, 179.99);
  1594. CreateDynamicObject(1418, -0.05, -4.90, 1.30, 0.00, 0.00, 359.98);
  1595. CreateDynamicObject(1418, -0.05, -4.90, 2.70, 0.00, 0.00, 359.98);
  1596. CreateDynamicObject(1418, -0.05, -4.90, 2.90, 0.00, 0.00, 359.98);
  1597. CreateDynamicObject(1418, -3.55, -4.90, 1.30, 0.00, 315.00, 359.98);
  1598. CreateDynamicObject(1418, -2.95, -4.90, 1.90, 0.00, 315.00, 359.98);
  1599. CreateDynamicObject(1418, -0.55, -4.90, 2.90, 0.00, 0.00, 359.98);
  1600. CreateDynamicObject(1418, -1.75, -4.90, 1.30, 0.00, 0.00, 359.98);
  1601. CreateDynamicObject(1418, 3.45, -4.90, 1.40, 0.00, 45.00, 359.98);
  1602. CreateDynamicObject(1418, 2.95, -4.90, 1.90, 0.00, 44.99, 359.98);
  1603. CreateDynamicObject(1418, 0.55, -4.90, 2.90, 0.00, 0.00, 359.98);
  1604. CreateDynamicObject(1418, 1.65, -4.90, 1.30, 0.00, 0.00, 359.98);
  1605. CreateDynamicObject(2370, -4.65, -4.30, -3.60, 0.00, 0.00, 0.00);
  1606. CreateDynamicObject(1723, -4.65, 4.30, -3.60, 0.00, 0.00, 0.00);
  1607. CreateDynamicObject(1723, -2.65, 1.60, -3.60, 0.00, 0.00, 180.00);
  1608. CreateDynamicObject(2180, 3.75, 4.50, -3.60, 0.00, 0.00, 0.00);
  1609. CreateDynamicObject(2180, 3.75, 4.50, -2.80, 0.00, 0.00, 0.00);
  1610. CreateDynamicObject(2180, 3.95, 4.40, -2.30, 0.00, 60.00, 180.00);
  1611. CreateDynamicObject(2180, 3.45, 3.20, -3.30, 315.00, 0.00, 0.00);
  1612. CreateDynamicObject(2311, -4.45, 2.90, -3.60, 0.00, 0.00, 0.00);
  1613. CreateDynamicObject(1551, -3.65, -4.10, -2.50, 0.00, 0.00, 310.00);
  1614. CreateDynamicObject(1551, -4.35, -3.60, -2.50, 0.00, 0.00, 240.00);
  1615. CreateDynamicObject(1551, -4.45, -4.20, -2.50, 0.00, 0.00, 179.99);
  1616. CreateDynamicObject(1551, -3.75, -3.40, -2.50, 0.00, 0.00, 229.99);
  1617. CreateDynamicObject(1551, -4.75, -3.50, -2.50, 0.00, 0.00, 289.99);
  1618. CreateDynamicObject(1664, -3.65, -3.80, -2.60, 0.00, 0.00, 40.00);
  1619. CreateDynamicObject(1664, -4.15, -3.30, -2.60, 0.00, 0.00, 80.00);
  1620. CreateDynamicObject(1664, -4.15, -3.90, -2.60, 0.00, 0.00, 109.99);
  1621. CreateDynamicObject(1664, -4.85, -4.00, -2.60, 0.00, 0.00, 109.99);
  1622. CreateDynamicObject(1664, -3.85, -4.40, -2.60, 0.00, 0.00, 109.99);
  1623. CreateDynamicObject(1668, -4.45, -3.30, -2.60, 0.00, 0.00, 50.00);
  1624. CreateDynamicObject(1668, -4.05, -3.50, -2.60, 0.00, 0.00, 90.00);
  1625. CreateDynamicObject(1668, -4.85, -3.30, -2.60, 0.00, 0.00, 129.99);
  1626. CreateDynamicObject(1668, -3.85, -3.30, -2.60, 0.00, 0.00, 129.99);
  1627. CreateDynamicObject(1668, -3.95, -4.10, -2.60, 0.00, 0.00, 169.99);
  1628. CreateDynamicObject(1668, -4.25, -4.40, -2.60, 0.00, 0.00, 169.99);
  1629. CreateDynamicObject(1669, -3.65, -3.20, -2.60, 0.00, 0.00, 0.00);
  1630. CreateDynamicObject(1669, -4.55, -3.60, -2.60, 0.00, 0.00, 70.00);
  1631. CreateDynamicObject(1669, -4.75, -4.30, -2.60, 0.00, 0.00, 70.00);
  1632. CreateDynamicObject(1669, -4.15, -4.20, -2.60, 0.00, 0.00, 70.00);
  1633. CreateDynamicObject(1669, -3.65, -3.60, -2.60, 0.00, 0.00, 70.00);
  1634. CreateDynamicObject(1487, -4.75, -4.60, -2.60, 0.00, 0.00, 0.00);
  1635. CreateDynamicObject(1487, -4.35, -4.60, -2.60, 0.00, 0.00, 0.00);
  1636. CreateDynamicObject(1487, -3.95, -4.60, -2.60, 0.00, 0.00, 0.00);
  1637. CreateDynamicObject(1487, -3.75, -4.60, -2.60, 0.00, 0.00, 0.00);
  1638. CreateDynamicObject(1487, -3.85, -3.70, -2.60, 0.00, 0.00, 0.00);
  1639. CreateDynamicObject(1487, -4.55, -3.90, -2.60, 0.00, 0.00, 0.00);
  1640. CreateDynamicObject(1520, -4.25, -3.50, -2.80, 0.00, 0.00, 0.00);
  1641. CreateDynamicObject(1520, -4.05, -3.70, -2.80, 0.00, 0.00, 310.00);
  1642. CreateDynamicObject(1520, -4.35, -4.00, -2.80, 0.00, 0.00, 270.00);
  1643. CreateDynamicObject(1520, -4.75, -3.80, -2.80, 0.00, 0.00, 219.99);
  1644. CreateDynamicObject(1520, -4.95, -4.30, -2.80, 0.00, 0.00, 189.99);
  1645. CreateDynamicObject(1520, -4.65, -3.30, -2.80, 0.00, 0.00, 139.99);
  1646. CreateDynamicObject(2295, 1.75, 2.20, -3.60, 0.00, 0.00, 40.00);
  1647. CreateDynamicObject(2295, 1.65, 0.70, -3.60, 0.00, 0.00, 90.00);
  1648. CreateDynamicObject(2063, -0.85, -4.60, -2.70, 0.00, 0.00, 180.00);
  1649. CreateDynamicObject(1550, 0.85, -4.60, -3.20, 0.00, 0.00, 320.00);
  1650. CreateDynamicObject(1550, 1.35, -4.40, -3.30, 0.00, 90.00, 120.00);
  1651. CreateDynamicObject(1578, -4.55, 2.80, -3.10, 0.00, 0.00, 270.00);
  1652. CreateDynamicObject(1579, -4.15, 2.80, -3.10, 0.00, 0.00, 270.00);
  1653. CreateDynamicObject(1580, -3.75, 2.80, -3.10, 0.00, 0.00, 270.00);
  1654. CreateDynamicObject(1575, -3.35, 2.80, -3.10, 0.00, 0.00, 270.00);
  1655. CreateDynamicObject(1576, -2.95, 2.80, -3.10, 0.00, 0.00, 270.00);
  1656. CreateDynamicObject(1575, -3.15, 2.80, -3.00, 0.00, 0.00, 270.00);
  1657. CreateDynamicObject(1580, -3.55, 2.80, -3.00, 0.00, 0.00, 270.00);
  1658. CreateDynamicObject(1579, -3.95, 2.80, -3.00, 0.00, 0.00, 270.00);
  1659. CreateDynamicObject(1578, -4.35, 2.80, -3.00, 0.00, 0.00, 270.00);
  1660. CreateDynamicObject(1654, -1.75, -4.50, -2.70, 0.00, 90.00, 180.00);
  1661. CreateDynamicObject(1654, -1.35, -4.50, -2.70, 0.00, 90.00, 179.99);
  1662. CreateDynamicObject(1654, -1.35, -4.70, -2.70, 0.00, 90.00, 179.99);
  1663. CreateDynamicObject(1654, -1.75, -4.70, -2.70, 0.00, 90.00, 179.99);
  1664. CreateDynamicObject(1672, 0.05, -4.40, -1.80, 0.00, 0.00, 0.00);
  1665. CreateDynamicObject(1672, -0.05, -4.40, -1.80, 0.00, 0.00, 0.00);
  1666. CreateDynamicObject(1672, -0.15, -4.40, -1.80, 0.00, 0.00, 0.00);
  1667. CreateDynamicObject(1672, -0.15, -4.50, -1.80, 0.00, 0.00, 0.00);
  1668. CreateDynamicObject(1672, 0.05, -4.50, -1.80, 0.00, 0.00, 0.00);
  1669. CreateDynamicObject(1672, 0.15, -4.50, -1.80, 0.00, 0.00, 0.00);
  1670. CreateDynamicObject(1672, 0.15, -4.40, -1.80, 0.00, 0.00, 0.00);
  1671. CreateDynamicObject(1672, -0.05, -4.50, -1.80, 0.00, 0.00, 0.00);
  1672. CreateDynamicObject(2057, -2.45, -4.60, -3.40, 0.00, 0.00, 0.00);
  1673. CreateDynamicObject(1210, -2.45, 2.70, -3.30, 0.00, 0.00, 90.00);
  1674. CreateDynamicObject(1210, 0.05, -4.60, -3.10, 90.00, 180.00, 0.00);
  1675. CreateDynamicObject(1210, 0.05, -4.60, -3.00, 90.00, 179.99, 0.00);
  1676. CreateDynamicObject(1242, -0.55, -4.50, -1.80, 90.00, 90.00, 0.00);
  1677. CreateDynamicObject(1242, -1.05, -4.50, -1.80, 90.00, 90.00, 0.00);
  1678. CreateDynamicObject(1242, -1.65, -4.50, -1.80, 90.00, 90.00, 0.00);
  1679. CreateDynamicObject(1252, -0.85, -4.60, -2.70, 70.00, 90.00, 0.00);
  1680. CreateDynamicObject(1252, -0.15, -4.70, -2.70, 70.00, 90.00, 0.00);
  1681. CreateDynamicObject(358, -0.65, -4.60, -2.29, 275.10, 101.28, 101.33);
  1682. CreateDynamicObject(359, -4.25, -3.40, -3.30, 87.25, 180.00, 180.00);
  1683. CreateDynamicObject(359, -4.25, -3.80, -3.30, 87.25, 179.99, 179.99);
  1684. CreateDynamicObject(359, -4.25, -4.20, -3.30, 87.25, 179.99, 179.99);
  1685. CreateDynamicObject(364, -2.75, 3.10, -3.10, 0.00, 0.00, 270.00);
  1686. CreateDynamicObject(2296, 4.95, 1.50, -3.60, 0.00, 0.00, 270.00);
  1687. CreateDynamicObject(2114, -1.85, 4.40, -3.40, 0.00, 0.00, 0.00);
  1688. CreateDynamicObject(286, -0.53, -4.17, -3.41, 0.00, 0.00, 267.08);
  1689. Staatskasse = dini_Int("/Staat.ini", "Betrag");
  1690. //Drugs
  1691. AddDrug(0, 153.8548,-759.5621,35.1494, 0.0000, 0.0000, 180.0000);
  1692. AddDrug(0, -435.6600,-60.6342,58.8750, 0.0000, 0.0000, 180.0000);
  1693. //--------------------------------------ATMS---------------------------------------------
  1694. AddAtm(0, 1498.216309, -1749.921021, 15.088212, 0.0000, 0.0000, 180.0000);
  1695. AddAtm(1, 1204.718384, -919.228821, 42.724968, 0.0000, 0.0000, 8.6717);
  1696. AddAtm(2, 1001.071533, -924.023926, 41.971024, 0.0000, 0.0000, 279.5312);
  1697. AddAtm(3, 1035.951782, -1024.514648, 31.744461, 0.0000, 0.0000, 0.0000);
  1698. AddAtm(4, 732.453186, -1338.232544, 13.175097, 0.0000, 0.0000, 90.0000);
  1699. AddAtm(5, 2023.365479, 1017.663818, 10.463212, 0.0000, 0.0000, 90.0000);
  1700. AddAtm(6, 1062.384521, 2140.426270, 10.463212, 0.0000, 0.0000, 0.0000);
  1701. AddAtm(7, -1980.580688, 145.030273, 27.330399, 0.0000, 0.0000, 270.0000);
  1702. AddAtm(8, -1985.877441, 1131.340088, 52.872906, 0.0000, 0.0000, 360.0000);
  1703. AddAtm(9, -1791.375488, 1204.635132, 24.767899, 0.0000, 0.0000, 90.0000);
  1704. AddAtm(10, -1677.125610, 431.082123, 6.822587, 0.0000, 0.0000, 45.0000);
  1705. AddAtm(11, -78.785622, -1170.931396, 1.777992, 0.0000, 0.0000, 247.5000);
  1706. AddAtm(12, 485.300049, -1733.809937, 10.727262, 0.0000, 0.0000, 174.8434);
  1707. AddAtm(13, 1423.756714, -1486.887573, 20.075184, 0.0000, 0.0000, 0.9368);
  1708. CreateDynamic3DTextLabel("--> {FFFFFF}'/atm' {0C9BCB}<--\n-->{FFFFFF}Um den Automaten zu benutzen {0C9BCB}<--",0x0C9BCBFF,1498.216309, -1749.921021, 15.088212,40.0);
  1709. CreateDynamic3DTextLabel("--> {FFFFFF}'/atm' {0C9BCB}<--\n-->{FFFFFF}Um den Automaten zu benutzen {0C9BCB}<--",0x0C9BCBFF,1204.718384, -919.228821, 42.724968,40.0);
  1710. CreateDynamic3DTextLabel("--> {FFFFFF}'/atm' {0C9BCB}<--\n-->{FFFFFF}Um den Automaten zu benutzen {0C9BCB}<--",0x0C9BCBFF,1001.071533, -924.023926, 41.971024,40.0);
  1711. CreateDynamic3DTextLabel("--> {FFFFFF}'/atm' {0C9BCB}<--\n-->{FFFFFF}Um den Automaten zu benutzen {0C9BCB}<--",0x0C9BCBFF,1035.951782, -1024.514648, 31.744461,40.0);
  1712. CreateDynamic3DTextLabel("--> {FFFFFF}'/atm' {0C9BCB}<--\n-->{FFFFFF}Um den Automaten zu benutzen {0C9BCB}<--",0x0C9BCBFF,-1980.580688, 145.030273, 27.330399,40.0);
  1713. CreateDynamic3DTextLabel("--> {FFFFFF}'/atm' {0C9BCB}<--\n-->{FFFFFF}Um den Automaten zu benutzen {0C9BCB}<--",0x0C9BCBFF,-1985.877441, 1131.340088, 52.872906,40.0);
  1714. CreateDynamic3DTextLabel("--> {FFFFFF}'/atm' {0C9BCB}<--\n-->{FFFFFF}Um den Automaten zu benutzen {0C9BCB}<--",0x0C9BCBFF,-1791.375488, 1204.635132, 24.767899,40.0);
  1715. CreateDynamic3DTextLabel("--> {FFFFFF}'/atm' {0C9BCB}<--\n-->{FFFFFF}Um den Automaten zu benutzen {0C9BCB}<--",0x0C9BCBFF,-1677.125610, 431.082123, 6.822587,40.0);
  1716. CreateDynamic3DTextLabel("--> {FFFFFF}'/atm' {0C9BCB}<--\n-->{FFFFFF}Um den Automaten zu benutzen {0C9BCB}<--",0x0C9BCBFF,-78.785622, -1170.931396, 1.777992,40.0);
  1717. CreateDynamic3DTextLabel("--> {FFFFFF}'/atm' {0C9BCB}<--\n-->{FFFFFF}Um den Automaten zu benutzen {0C9BCB}<--",0x0C9BCBFF,485.300049, -1733.809937, 10.727262,40.0);
  1718. CreateDynamic3DTextLabel("--> {FFFFFF}'/atm' {0C9BCB}<--\n-->{FFFFFF}Um den Automaten zu benutzen {0C9BCB}<--",0x0C9BCBFF,1423.756714, -1486.887573, 20.075184,40.0);
  1719. CreateDynamic3DTextLabel("--> {FFFFFF}'/atm' {0C9BCB}<--\n-->{FFFFFF}Um den Automaten zu benutzen {0C9BCB}<--",0x0C9BCBFF,303.970428, -1419.902466, 13.676299,40.0);
  1720. CreateDynamic3DTextLabel("--> {FFFFFF}'/atm' {0C9BCB}<--\n-->{FFFFFF}Um den Automaten zu benutzen {0C9BCB}<--",0x0C9BCBFF,-2029.4519,-101.9671,35.1641,40.0);
  1721. //SL_BEDARF
  1722. print("+------------------------------------+");
  1723. print("| Bedürfnissystem by System-Love |");
  1724. print("+------------------------------------+");
  1725. print(" SL_B: Initialisiering ...");
  1726. SetTimer("SavePlayerAll", 60000, 1);
  1727. for(new i = 0; i < MAX_PLAYERS; i++)
  1728. {
  1729. SLH[i] = TextDrawCreate(497.000000,80.000000,"Streetlifehistory");
  1730. Version[i] = TextDrawCreate(586.000000,83.000000,"vI.o");
  1731. TextDrawUseBox(SLH[i],1);
  1732. TextDrawBoxColor(SLH[i],0x000000ff);
  1733. TextDrawTextSize(SLH[i],617.000000,-1.000000);
  1734. TextDrawAlignment(SLH[i],0);
  1735. TextDrawAlignment(Version[i],0);
  1736. TextDrawBackgroundColor(SLH[i],0x000000ff);
  1737. TextDrawBackgroundColor(Version[i],0x000000ff);
  1738. TextDrawFont(SLH[i],2);
  1739. TextDrawLetterSize(SLH[i],0.199999,1.800004);
  1740. TextDrawFont(Version[i],1);
  1741. TextDrawLetterSize(Version[i],0.399999,1.200000);
  1742. TextDrawColor(SLH[i],0xffffffff);
  1743. TextDrawColor(Version[i],0xffffffff);
  1744. TextDrawSetOutline(SLH[i],1);
  1745. TextDrawSetOutline(Version[i],1);
  1746. TextDrawSetProportional(SLH[i],1);
  1747. TextDrawSetProportional(Version[i],1);
  1748. TextDrawSetShadow(SLH[i],1);
  1749. TextDrawSetShadow(Version[i],1);
  1750. stats[i] = TextDrawCreate(24.000000,341.000000,"Statistik");
  1751. VW[i] = TextDrawCreate(24.000000,352.000000,"VW");
  1752. VWPunkte[i] = TextDrawCreate(45.000000,351.000000,"5");
  1753. Geldzeichen[i] = TextDrawCreate(12.000000,361.000000,"$");
  1754. Geldtext[i] = TextDrawCreate(29.000000,361.000000,"2000000");
  1755. Wantedpunkt[i] = TextDrawCreate(15.000000,361.000000,".");
  1756. TextDrawAlignment(stats[i],0);
  1757. TextDrawAlignment(VW[i],0);
  1758. TextDrawAlignment(VWPunkte[i],0);
  1759. TextDrawAlignment(Geldzeichen[i],0);
  1760. TextDrawAlignment(Geldtext[i],0);
  1761. TextDrawAlignment(Wantedpunkt[i],0);
  1762. TextDrawBackgroundColor(stats[i],0x000000ff);
  1763. TextDrawBackgroundColor(VW[i],0x000000ff);
  1764. TextDrawBackgroundColor(VWPunkte[i],0x000000ff);
  1765. TextDrawBackgroundColor(Geldzeichen[i],0x000000ff);
  1766. TextDrawBackgroundColor(Geldtext[i],0x000000ff);
  1767. TextDrawBackgroundColor(Wantedpunkt[i],0x000000ff);
  1768. TextDrawFont(stats[i],2);
  1769. TextDrawLetterSize(stats[i],0.299999,0.799999);
  1770. TextDrawFont(VW[i],2);
  1771. TextDrawLetterSize(VW[i],0.200000,0.499999);
  1772. TextDrawFont(VWPunkte[i],2);
  1773. TextDrawLetterSize(VWPunkte[i],0.199999,0.699999);
  1774. TextDrawFont(Geldzeichen[i],2);
  1775. TextDrawLetterSize(Geldzeichen[i],0.599999,1.100000);
  1776. TextDrawFont(Geldtext[i],2);
  1777. TextDrawLetterSize(Geldtext[i],0.499999,1.100000);
  1778. TextDrawFont(Wantedpunkt[i],1);
  1779. TextDrawLetterSize(Wantedpunkt[i],1.000000,2.799999);
  1780. TextDrawColor(stats[i],0xffffffff);
  1781. TextDrawColor(VW[i],0xffffffff);
  1782. TextDrawColor(VWPunkte[i],0xff0000cc);
  1783. TextDrawColor(Geldzeichen[i],0xffffffff);
  1784. TextDrawColor(Geldtext[i],0xffffffff);
  1785. TextDrawColor(Wantedpunkt[i],0xff000066);
  1786. TextDrawSetOutline(stats[i],1);
  1787. TextDrawSetOutline(VW[i],1);
  1788. TextDrawSetOutline(VWPunkte[i],1);
  1789. TextDrawSetOutline(Geldzeichen[i],1);
  1790. TextDrawSetOutline(Geldtext[i],1);
  1791. TextDrawSetOutline(Wantedpunkt[i],1);
  1792. TextDrawSetProportional(stats[i],1);
  1793. TextDrawSetProportional(VW[i],1);
  1794. TextDrawSetProportional(VWPunkte[i],1);
  1795. TextDrawSetProportional(Geldzeichen[i],1);
  1796. TextDrawSetProportional(Geldtext[i],1);
  1797. TextDrawSetProportional(Wantedpunkt[i],1);
  1798. TextDrawSetShadow(stats[i],1);
  1799. TextDrawSetShadow(VW[i],1);
  1800. TextDrawSetShadow(VWPunkte[i],1);
  1801. TextDrawSetShadow(Geldzeichen[i],1);
  1802. TextDrawSetShadow(Geldtext[i],1);
  1803. TextDrawSetShadow(Wantedpunkt[i],1);
  1804. SetTimerEx("StartHunger", BEDARFUPDATE, 1, "d", i);
  1805. Leveltext[i] = TextDrawCreate(55.000000,327.000000,"Level");
  1806. Spielpunktetext[i] = TextDrawCreate(55.000000,317.000000,"Spielpunkte");
  1807. Spielpunktezahl[i] = TextDrawCreate(104.000000,316.000000," ");
  1808. Levelzahl[i] = TextDrawCreate(88.000000,329.000000," ");
  1809. TextDrawAlignment(Leveltext[i],0);
  1810. TextDrawAlignment(Spielpunktetext[i],0);
  1811. TextDrawAlignment(Spielpunktezahl[i],0);
  1812. TextDrawAlignment(Levelzahl[i],0);
  1813. TextDrawBackgroundColor(Leveltext[i],0x000000ff);
  1814. TextDrawBackgroundColor(Spielpunktetext[i],0x000000ff);
  1815. TextDrawBackgroundColor(Spielpunktezahl[i],0x000000ff);
  1816. TextDrawBackgroundColor(Levelzahl[i],0x000000ff);
  1817. TextDrawFont(Leveltext[i],0);
  1818. TextDrawLetterSize(Leveltext[i],0.399999,1.000000);
  1819. TextDrawFont(Spielpunktetext[i],0);
  1820. TextDrawLetterSize(Spielpunktetext[i],0.299999,0.799999);
  1821. TextDrawFont(Spielpunktezahl[i],2);
  1822. TextDrawLetterSize(Spielpunktezahl[i],0.199999,0.899999);
  1823. TextDrawFont(Levelzahl[i],1);
  1824. TextDrawLetterSize(Levelzahl[i],0.299999,0.599999);
  1825. TextDrawColor(Leveltext[i],0xffffffff);
  1826. TextDrawColor(Spielpunktetext[i],0xffffffff);
  1827. TextDrawColor(Spielpunktezahl[i],0x00ff0066);
  1828. TextDrawColor(Levelzahl[i],0x00ff0066);
  1829. TextDrawSetOutline(Leveltext[i],1);
  1830. TextDrawSetOutline(Spielpunktetext[i],1);
  1831. TextDrawSetOutline(Spielpunktezahl[i],1);
  1832. TextDrawSetOutline(Levelzahl[i],1);
  1833. TextDrawSetProportional(Leveltext[i],1);
  1834. TextDrawSetProportional(Spielpunktetext[i],1);
  1835. TextDrawSetProportional(Spielpunktezahl[i],1);
  1836. TextDrawSetProportional(Levelzahl[i],1);
  1837. TextDrawSetShadow(Leveltext[i],1);
  1838. TextDrawSetShadow(Spielpunktetext[i],1);
  1839. TextDrawSetShadow(Spielpunktezahl[i],1);
  1840. TextDrawSetShadow(Levelzahl[i],1);
  1841. h_Textdraw[i] = TextDrawCreate(500.000000,106.000000,"hunger");
  1842. d_Textdraw[i] = TextDrawCreate(500.000000,116.000000,"durst");
  1843. dr_Textdraw[i] = TextDrawCreate(500.000000,126.000000,"druck");
  1844. TextDrawUseBox(h_Textdraw[i],1);
  1845. TextDrawBoxColor(h_Textdraw[i],0x00000033);
  1846. TextDrawTextSize(h_Textdraw[i],654.000000,23.000000);
  1847. TextDrawUseBox(d_Textdraw[i],1);
  1848. TextDrawBoxColor(d_Textdraw[i],0x00000033);
  1849. TextDrawTextSize(d_Textdraw[i],699.000000,2.000000);
  1850. TextDrawUseBox(dr_Textdraw[i],1);
  1851. TextDrawBoxColor(dr_Textdraw[i],0x00000033);
  1852. TextDrawTextSize(dr_Textdraw[i],687.000000,0.000000);
  1853. TextDrawAlignment(h_Textdraw[i],0);
  1854. TextDrawAlignment(d_Textdraw[i],0);
  1855. TextDrawAlignment(dr_Textdraw[i],0);
  1856. TextDrawBackgroundColor(h_Textdraw[i],0x000000ff);
  1857. TextDrawBackgroundColor(d_Textdraw[i],0x000000ff);
  1858. TextDrawBackgroundColor(dr_Textdraw[i],0x000000ff);
  1859. TextDrawFont(h_Textdraw[i],2);
  1860. TextDrawLetterSize(h_Textdraw[i],0.299999,0.699999);
  1861. TextDrawFont(d_Textdraw[i],2);
  1862. TextDrawLetterSize(d_Textdraw[i],0.299999,0.699999);
  1863. TextDrawFont(dr_Textdraw[i],2);
  1864. TextDrawLetterSize(dr_Textdraw[i],0.299999,0.699999);
  1865. TextDrawColor(h_Textdraw[i],0xffffffff);
  1866. TextDrawColor(d_Textdraw[i],0xffffffff);
  1867. TextDrawColor(dr_Textdraw[i],0xffffffff);
  1868. TextDrawSetOutline(h_Textdraw[i],1);
  1869. TextDrawSetOutline(d_Textdraw[i],1);
  1870. TextDrawSetOutline(dr_Textdraw[i],1);
  1871. TextDrawSetProportional(h_Textdraw[i],1);
  1872. TextDrawSetProportional(d_Textdraw[i],1);
  1873. TextDrawSetProportional(dr_Textdraw[i],1);
  1874. TextDrawSetShadow(h_Textdraw[i],1);
  1875. TextDrawSetShadow(d_Textdraw[i],1);
  1876. TextDrawSetShadow(dr_Textdraw[i],1);
  1877. hunger_i[i] = TextDrawCreate(553.000000,105.000000,"IIIIIIIIIIIIIIIIII");
  1878. durst_i[i] = TextDrawCreate(553.000000,115.000000,"IIIIIIIIIIIIIIIIII");
  1879. druck_i[i] = TextDrawCreate(623.000000,125.000000,"IIIIIIIIIIIIIIIIII");
  1880. TextDrawAlignment(hunger_i[i],0);
  1881. TextDrawAlignment(durst_i[i],0);
  1882. TextDrawAlignment(druck_i[i],3);
  1883. TextDrawBackgroundColor(hunger_i[i],0x000000ff);
  1884. TextDrawBackgroundColor(durst_i[i],0x000000ff);
  1885. TextDrawBackgroundColor(druck_i[i],0x000000ff);
  1886. TextDrawFont(hunger_i[i],2);
  1887. TextDrawLetterSize(hunger_i[i],0.299999,0.899999);
  1888. TextDrawFont(durst_i[i],2);
  1889. TextDrawLetterSize(durst_i[i],0.299999,0.899999);
  1890. TextDrawFont(druck_i[i],2);
  1891. TextDrawLetterSize(druck_i[i],0.299999,0.899999);
  1892. TextDrawColor(hunger_i[i],COLOR_LIMEGREEN);
  1893. TextDrawColor(durst_i[i],COLOR_LIMEGREEN);
  1894. TextDrawColor(druck_i[i],COLOR_LIMEGREEN);
  1895. TextDrawSetOutline(hunger_i[i],1);
  1896. TextDrawSetOutline(durst_i[i],1);
  1897. TextDrawSetOutline(druck_i[i],1);
  1898. TextDrawSetProportional(hunger_i[i],1);
  1899. TextDrawSetProportional(durst_i[i],1);
  1900. TextDrawSetProportional(druck_i[i],1);
  1901. TextDrawSetShadow(hunger_i[i],1);
  1902. TextDrawSetShadow(durst_i[i],1);
  1903. TextDrawSetShadow(druck_i[i],1);
  1904. }
  1905. //Haussystem
  1906. new Hausx;
  1907. print(" Haussystem!");
  1908. while(Hausx < MaxHaus) {
  1909. LoadHouse(Hausx);
  1910. Hausx++;
  1911. }
  1912. //Enter´s
  1913. AddStaticPickup(1318,2, 1426.0999755859, -1039.1999511719, 4728.3999023438, -1);
  1914. //Russischa Mafia
  1915. RMafiator = CreateObject(2933, -2869.6999511719, 504.89999389648, 5.5999999046326, 0, 0, 90);
  1916. //LSPD
  1917. lspd1 = CreateObject(3089, 245.10000610352, 72.699996948242, 1004, 0, 0, 0);
  1918. lspd2 = CreateObject(3089, 247.69999694824, 72.800003051758, 1004, 0, 0, 180);
  1919. /*Frakcars*/
  1920. for(new i = 0;i<sizeof(yCars);i++){SetVehicleNumberPlate(yCars[i][v_id], "Yakuza"); yCars[i][v_id] = AddStaticVehicleEx(yCars[i][model],yCars[i][fxa],yCars[i][fya],yCars[i][fza],yCars[i][faa],yCars[i][farb1],yCars[i][farb2],NON_RES);}
  1921. for(new i = 0;i<sizeof(pCars);i++)pCars[i][v_id] = AddStaticVehicleEx(pCars[i][model],pCars[i][fxa],pCars[i][fya],pCars[i][fza],pCars[i][faa],pCars[i][farb1],pCars[i][farb2],NON_RES);
  1922. for(new i = 0;i<sizeof(fCars);i++)fCars[i][v_id] = AddStaticVehicleEx(fCars[i][model],fCars[i][fxa],fCars[i][fya],fCars[i][fza],fCars[i][faa],fCars[i][farb1],fCars[i][farb2],NON_RES);
  1923. for(new i = 0;i<sizeof(cCars);i++)cCars[i][v_id] = AddStaticVehicleEx(cCars[i][model],cCars[i][fxa],cCars[i][fya],cCars[i][fza],cCars[i][faa],cCars[i][farb1],cCars[i][farb2],NON_RES);
  1924. for(new i = 0;i<sizeof(lCars);i++)lCars[i][v_id] = AddStaticVehicleEx(lCars[i][model],lCars[i][fxa],lCars[i][fya],lCars[i][fza],lCars[i][faa],lCars[i][farb1],lCars[i][farb2],NON_RES);
  1925. /*ATMS*/
  1926. for(new i = 0;i<sizeof(Banken);i++)CreateDynamicPickup(1239,1,Banken[i][0],Banken[i][1],Banken[i][2]);
  1927. AddStaticVehicleEx(435,2873.3591,897.8155,11.3838,2.6730,1,1, 2000); // Trailer
  1928. AddStaticVehicleEx(435,2827.1523,895.7090,10.7566,355.6864,5,6, 2000); // trailer
  1929. AddStaticVehicleEx(591,2817.7449,895.9352,10.7723,357.5490,1,1, 2000); // trailer
  1930. /*Weitere Settings*/
  1931. DisableInteriorEnterExits();
  1932. ShowPlayerMarkers(0);
  1933. UsePlayerPedAnims();
  1934. EnableStuntBonusForAll(0);
  1935. LimitGlobalChatRadius(30);
  1936. SetGameModeText(gmname);
  1937. SendRconCommand(mapname);
  1938. Connect_To_Database();
  1939. mysql_debug(1);
  1940. _AC_AddPlayerClass(2, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
  1941. /*AntiCheat*/
  1942. print("+------------------------------------+");
  1943. print("| Anticheat by Dark-Trigardon.eu |");
  1944. print("+------------------------------------+");
  1945. print(" AC: Initialisiering ...");
  1946. ParseCurrentSettings();
  1947. for(new i = 0; i < MAX_PLAYERS; i++)
  1948. {
  1949. if(IsPlayerConnected(i))
  1950. {
  1951.  
  1952. DTAC_Player[i][apConnected] = true;
  1953. DTAC_Player[i][apMoney] = GetPlayerMoney(i);
  1954. DTAC_Player[i][apFreeTime] = 3;
  1955. DTAC_Player[i][apSpamMessages] = 0;
  1956. GetPlayerHealth(i, DTAC_Player[i][apHealth]);
  1957. GetPlayerArmour(i, DTAC_Player[i][apArmour]);
  1958. GetPlayerPos(i, DTAC_Player[i][apPosition][0], DTAC_Player[i][apPosition][1], DTAC_Player[i][apPosition][2]);
  1959. GetPlayerFacingAngle(i, DTAC_Player[i][apAngle]);
  1960. DTAC_Player[i][apLastSpawned] = 0;
  1961. DTAC_Player[i][apWarns] = 0;
  1962. DTAC_Player[i][apMuted] = 0;
  1963. }
  1964. }
  1965. SetTimer("OnPlayerWanted", 1000, true);
  1966. UpdateTimer = SetTimer("OnAnticheatUpdate", 1000, true);
  1967. return 1;
  1968. }
  1969. SL_CALL NextTour(playerid)
  1970. {
  1971. Checkpoint[playerid] = 0;
  1972. SpielerInfo[playerid][pZeit] = 0;
  1973. SendClientMessage(playerid,COLOR_YELLOW,"Du kannst nun wieder eine Tour starten");
  1974. return 1;
  1975. }
  1976. SL_CALL OnPlayerWanted(playerid)
  1977. {
  1978. if(IsPlayerInRangeOfPoint(playerid, 20.0, 1222.8087,-937.6934,42.6131) && SpielerInfo[playerid][pWanted] >= 1)
  1979. {
  1980. new stringg[200];
  1981. format(stringg,sizeof(stringg), "Zentrale: {FAFAFA}Der Gesuchte : {1A5BE8}%s {FAFAFA} ist eben am {1A5BE8}BSN {FAFAFA}gesichtet worden", getName(playerid));
  1982. SendBeamtenMessage(COLOR_YELLOW, stringg);
  1983. }
  1984. if(IsPlayerInRangeOfPoint(playerid, 20.0, 820.5861,-1045.7067,24.6731) && SpielerInfo[playerid][pWanted] >= 1)
  1985. {
  1986. new stringg[200];
  1987. format(stringg,sizeof(stringg), "Zentrale: {FAFAFA}Der Gesuchte : {1A5BE8}%s {FAFAFA} ist eben am {1A5BE8}NEWSTAND {FAFAFA}gesichtet worden", getName(playerid));
  1988. SendBeamtenMessage(COLOR_YELLOW, stringg);
  1989. }
  1990. if(IsPlayerInRangeOfPoint(playerid, 20.0, 152.6629,-1554.5972,10.3560) && SpielerInfo[playerid][pWanted] >= 1)
  1991. {
  1992. new stringg[200];
  1993. format(stringg,sizeof(stringg), "Zentrale: {FAFAFA}Der Gesuchte : {1A5BE8}%s {FAFAFA} ist eben an der {1A5BE8}Verona Beach Kreuzung {FAFAFA}gesichtet worden", getName(playerid));
  1994. SendBeamtenMessage(COLOR_YELLOW, stringg);
  1995. }
  1996. if(IsPlayerInRangeOfPoint(playerid, 20.0, 1176.3274,-1401.3042,12.9906) && SpielerInfo[playerid][pWanted] >= 1)
  1997. {
  1998. new stringg[200];
  1999. format(stringg,sizeof(stringg), "Zentrale: {FAFAFA}Der Gesuchte : {1A5BE8}%s {FAFAFA} ist eben an der {1A5BE8}Hauptstraße am KH {FAFAFA}gesichtet worden", getName(playerid));
  2000. SendBeamtenMessage(COLOR_YELLOW, stringg);
  2001. }
  2002. if(IsPlayerInRangeOfPoint(playerid, 20.0,-150.4243,-1305.8110,2.8123) && SpielerInfo[playerid][pWanted] >=1)
  2003. {
  2004. new stringg[200];
  2005. format(stringg,sizeof(stringg), "Zentrale: {FAFAFA}Der Gesuchte : {1A5BE8}%s {FAFAFA} ist eben an der {1A5BE8}Hauptstraße Richtung SF an der Tanke {FAFAFA}gesichtet worden", getName(playerid));
  2006. SendBeamtenMessage(COLOR_YELLOW, stringg);
  2007. }
  2008. return 1;
  2009. }
  2010. /*Callback GE*/
  2011. public OnGameModeExit()
  2012. {
  2013. /*TextDrawHideForAll(lbt);
  2014. TextDrawHideForAll(lbb);
  2015. TextDrawDestroy(lbt);
  2016. TextDrawDestroy(lbb);*/
  2017. SaveStaat();
  2018. print(" AC: Decontermining ...");
  2019. SaveCurrentSettings();
  2020. KillTimer(UpdateTimer);
  2021. new Hausy;
  2022. while(Hausy < MaxHaus) {
  2023. DestroyHouse(Hausy);
  2024. Hausy++;
  2025. }
  2026. for(new i = 0; i < MAX_PLAYERS; i++)
  2027. {
  2028. SavePlayer(i);
  2029. }
  2030. return 1;
  2031. }
  2032. /*Callback RC*/
  2033. public OnPlayerRequestClass(playerid, classid)
  2034. {
  2035. if(!IsPlayerNPC(playerid)){
  2036. //TextDrawShowForPlayer(playerid,lbt);
  2037. //TextDrawShowForPlayer(playerid,lbb);
  2038. DTAC_Player[playerid][apSpawnClass] = classid;
  2039. RandScreen(playerid);
  2040. if(GetPVarInt(playerid,"Eingeloggt") == 0)
  2041. {
  2042. if(mysql_CheckAccount(playerid) == 0)
  2043. {
  2044. SendClientMessage(playerid, 0xFFFFFFFF,"________-> [Streetlifehistory] heißt dich Willkommen <-________");
  2045. SendClientMessage(playerid, 0xFFFFFFFF,"Die Datenbank vermisst dich, registriere dich bitte!");
  2046. ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"{E0D01B}Registrierung","Dein Passwort soll lauten?:","Registrieren","Verlassen");
  2047. }
  2048. else if(mysql_CheckAccount(playerid) == 1)
  2049. {
  2050. SendClientMessage(playerid, 0xFFFFFFFF,"________-> [Streetlifehistory] heißt dich Willkommen <-________");
  2051. SendClientMessage(playerid, 0xFFFFFFFF,"Schön dich wieder zu sehen, melde dich nun wieder an!");
  2052. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"{E0D01B}Anmeldung","Bitte gib dein Passwort ein:","Anmelden","Verlassen");
  2053. }
  2054. }
  2055. for (new a=1;a<=10;a++)
  2056. {
  2057. SendClientMessage(playerid,COLOR_YELLOW, "\n");
  2058. SendClientMessage(playerid, COLOR_YELLOW,"\n");
  2059. SendClientMessage(playerid,COLOR_YELLOW, "\n");
  2060. SendClientMessage(playerid, COLOR_YELLOW,"\n");
  2061. SendClientMessage(playerid, COLOR_YELLOW,"\n");
  2062. }}
  2063. return 1;
  2064. }
  2065. new geradeconnect[MAX_PLAYERS];
  2066. /*Callback CO*/
  2067. public OnPlayerConnect(playerid)
  2068. {
  2069. if(!IsPlayerNPC(playerid)){
  2070. AddPlayer(playerid);
  2071. PlayAudioStreamForPlayer(playerid,"http://fairnet-arts.de/mp3/Timati.mp3");
  2072. TextDrawHideForPlayer(playerid,Wantedpunkt[playerid]);
  2073. TextDrawShowForPlayer(playerid, Version[playerid]);
  2074. TextDrawShowForPlayer(playerid, SLH[playerid]);
  2075. TextDrawShowForPlayer(playerid, newlogin0);
  2076. TextDrawShowForPlayer(playerid, newlogin1);
  2077. TextDrawShowForPlayer(playerid, newlogin2);
  2078. TextDrawShowForPlayer(playerid, newlogin3);
  2079. TextDrawShowForPlayer(playerid, newlogin5);
  2080. TextDrawShowForPlayer(playerid, newlogin7);
  2081. TextDrawShowForPlayer(playerid, newlogin8);
  2082. TextDrawShowForPlayer(playerid, newlogin9);
  2083. TextDrawShowForPlayer(playerid, newlogin10);
  2084. TextDrawShowForPlayer(playerid, newlogin11);
  2085. TextDrawShowForPlayer(playerid, newlogin12);
  2086. TextDrawShowForPlayer(playerid, newlogin13);
  2087. TextDrawShowForPlayer(playerid, newlogin14);
  2088. TextDrawShowForPlayer(playerid, newlogin15);
  2089. RemoveBuildingForPlayer(playerid, 785, -1914.4453, -1893.8984, 81.9219, 0.25);
  2090. //LSPD
  2091. TogglePlayerControllable(playerid,true);
  2092. gNews[playerid] = 0;
  2093. if (Whitelist(playerid)) {
  2094. } else {
  2095. SendClientMessage(playerid, COLOR_RED, "Du bist kein Betatester!");
  2096. //Kick(playerid);
  2097. }
  2098. new playername[MAX_PLAYER_NAME], string[128];
  2099. GetPlayerName(playerid, playername, MAX_PLAYER_NAME);
  2100. format(string, 128, "%s connected to the server", playername);
  2101. DTAC_Player[playerid][apConnected] = true;
  2102. DTAC_Player[playerid][apMuted] = 0;
  2103. _AC_ResetPlayerMoney(playerid);
  2104. DTAC_Player[playerid][apMoney] = 0;
  2105. //SetTimer("Zahltag", 60000,1);
  2106. geradeconnect[playerid] = 1;
  2107. SetPlayerColor(playerid, FARBE_FADE1);
  2108. if(Whitelist(playerid)){
  2109. GameTextForPlayer(playerid, "Willkommen!",6000,1);
  2110. } else {
  2111. GameTextForPlayer(playerid, "Du bist nicht auf der ~r~ Whitelist!",6000,1);
  2112. }}
  2113. return 1;
  2114. }
  2115. public OnPlayerClickTextDraw(playerid, Text:clickedid)
  2116. {
  2117. return 1;
  2118. }
  2119. /*Callback DCO*/
  2120. public OnPlayerDisconnect(playerid, reason)
  2121. {
  2122. TextDrawHideForPlayer(playerid, Uhrzeit), TextDrawHideForPlayer(playerid, Datum);
  2123. RemovePlayer(playerid);
  2124. if(Checkpoint[playerid] >= 1)
  2125. {
  2126. Checkpoint[playerid] = 0;
  2127. GivePlayerMoney(playerid, -8000);
  2128. }
  2129. SpielerInfo[playerid][pTour] = 0;
  2130. if(SpielerInfo[playerid][pWanted] >= 1)
  2131. {
  2132. new string[200];
  2133. format(string,sizeof(string), "{50A5FA}%s {FAFAFA}hat den Server mit {FACF50}%d{FAFAFA} Wanteds verlassen",getName(playerid),SpielerInfo[playerid][pWanted]);
  2134. SendBeamtenMessage(COLOR_YELLOW, string);
  2135. }
  2136. geradeconnect[playerid] = 1;
  2137. SavePlayer(playerid);
  2138. DeletePVar(playerid,"Eingeloggt");
  2139. return 1;
  2140. }
  2141. /*Callback SP*/
  2142. public OnPlayerSpawn(playerid)
  2143. {
  2144. TextDrawShowForPlayer(playerid, Uhrzeit), TextDrawShowForPlayer(playerid, Datum);
  2145. if(HTTP(playerid, HTTP_GET, getNameSET(playerid),"", "MyHttpResponse"))
  2146.  
  2147. if(SpielerInfo[playerid][pWanted] < 0){
  2148. TextDrawHideForPlayer(playerid,Wantedpunkt[playerid]);
  2149. }
  2150. else{
  2151. TextDrawShowForPlayer(playerid,Wantedpunkt[playerid]);
  2152. }
  2153. SetPlayerInterior(playerid, GetPlayerInterior(playerid));
  2154. TextDrawHideForPlayer(playerid, newlogin0);
  2155. TextDrawHideForPlayer(playerid, newlogin1);
  2156. TextDrawHideForPlayer(playerid, newlogin2);
  2157. TextDrawHideForPlayer(playerid, newlogin3);
  2158. TextDrawHideForPlayer(playerid, newlogin5);
  2159. TextDrawHideForPlayer(playerid, newlogin7);
  2160. TextDrawHideForPlayer(playerid, newlogin8);
  2161. TextDrawHideForPlayer(playerid, newlogin9);
  2162. TextDrawHideForPlayer(playerid, newlogin10);
  2163. TextDrawHideForPlayer(playerid, newlogin11);
  2164. TextDrawHideForPlayer(playerid, newlogin12);
  2165. TextDrawHideForPlayer(playerid, newlogin13);
  2166. TextDrawHideForPlayer(playerid, newlogin14);
  2167. TextDrawHideForPlayer(playerid, newlogin15);
  2168. //Schwarze Balken
  2169. // TextDrawHideForPlayer(playerid,lbt);
  2170. // TextDrawHideForPlayer(playerid,lbb);
  2171. TextDrawShowForPlayer(playerid,Geldtext[playerid]);
  2172. TextDrawShowForPlayer(playerid,VW[playerid]);
  2173. TextDrawShowForPlayer(playerid,stats[playerid]);
  2174. TextDrawShowForPlayer(playerid,VWPunkte[playerid]);
  2175. TextDrawShowForPlayer(playerid,Geldzeichen[playerid]);
  2176. TextDrawShowForPlayer(playerid,Leveltext[playerid]);
  2177. TextDrawShowForPlayer(playerid, Spielpunktetext[playerid]);
  2178. TextDrawShowForPlayer(playerid,Levelzahl[playerid]);
  2179. TextDrawShowForPlayer(playerid, Spielpunktezahl[playerid]);
  2180. TextDrawShowForPlayer(playerid, hunger_i[playerid]);
  2181. TextDrawShowForPlayer(playerid, durst_i[playerid]);
  2182. TextDrawShowForPlayer(playerid, druck_i[playerid]);
  2183. TextDrawShowForPlayer(playerid, h_Textdraw[playerid]);
  2184. TextDrawShowForPlayer(playerid, d_Textdraw[playerid]);
  2185. TextDrawShowForPlayer(playerid, dr_Textdraw[playerid]);
  2186. // Anti-Teleportbug
  2187. DTAC_Player[playerid][apFreeTime] = FREETIME_TELEPORT;
  2188.  
  2189. // Health
  2190. DTAC_Player[playerid][apUnkillableTime] = DTAC_Config[spawnprotecttime];
  2191. if(DTAC_Config[spawnkill] == CHEAT_STATUS_UNDO)
  2192. DTAC_Player[playerid][apHealth] = 65534.0;
  2193. else
  2194. DTAC_Player[playerid][apHealth] = 100.0;
  2195. SetPlayerHealth(playerid, DTAC_Player[playerid][apHealth]);
  2196.  
  2197. // Weapons
  2198. for(new i = 0; i < 13; i++)
  2199. {
  2200. DTAC_Player[playerid][apWeapons][i] = -1;
  2201. DTAC_Player[playerid][apAmmo][i] = -1;
  2202. }
  2203.  
  2204. // Spawn-Weapons
  2205. _AC_ResetPlayerWeapons(playerid);
  2206. new spawnclass = DTAC_Player[playerid][apSpawnClass];
  2207. for(new i = 0; i < 3; i++)
  2208. {
  2209. new weaponid = SpawnClasses[spawnclass][weapons][i];
  2210. new weaponammo = SpawnClasses[spawnclass][ammo][i];
  2211. new weaponslot = GetWeaponSlot(weaponid);
  2212. if(weaponslot < 0 || weaponslot > 12) continue;
  2213. DTAC_Player[playerid][apWeapons][weaponslot] = weaponid;
  2214. DTAC_Player[playerid][apAmmo][weaponslot] = weaponammo;
  2215. }
  2216. if(geradeconnect[playerid] == 1)
  2217. {
  2218. LoadPlayer(playerid);
  2219. }
  2220. if(geradeconnect[playerid] == 0)
  2221. {
  2222. Frakspawn(playerid);
  2223. }
  2224. if(SpielerInfo[playerid][Firstlogin] == 0)
  2225. {
  2226. TogglePlayerControllable(playerid,false);
  2227. TutTime[playerid] = 1;
  2228. TutTimer[playerid] = SetTimerEx("Tutorial",1000,1,"i",playerid);
  2229. }
  2230. StopAudioStreamForPlayer(playerid);
  2231. for (new a=1;a<=10;a++)
  2232. {
  2233. SendClientMessage(playerid,COLOR_YELLOW, "\n");
  2234. SendClientMessage(playerid, COLOR_YELLOW,"\n");
  2235. SendClientMessage(playerid,COLOR_YELLOW, "\n");
  2236. SendClientMessage(playerid, COLOR_YELLOW,"\n");
  2237. SendClientMessage(playerid, COLOR_YELLOW,"\n");
  2238. }
  2239. if(istBeamter(playerid)){
  2240. SendClientMessage(playerid, COLOR_AQUA, "Achte auf die Polizeiliche Gesetzlinie §1");
  2241. }
  2242. return 1;
  2243. }
  2244. /*Callback DT*/
  2245. public OnPlayerDeath(playerid, killerid, reason)
  2246. {
  2247. TextDrawHideForPlayer(playerid, Uhrzeit), TextDrawHideForPlayer(playerid, Datum);
  2248. if(playerid == killerid) return false;
  2249. /* DriveBy */
  2250. if(DTAC_Config[driveby] > CHEAT_STATUS_OFF)
  2251. {
  2252. new string[128], name[32];
  2253. GetPlayerName(playerid, name, 32);
  2254. if(IsPlayerInAnyVehicle(killerid))
  2255. {
  2256. switch(DTAC_Config[driveby])
  2257. {
  2258. case CHEAT_STATUS_UNDO:
  2259. {
  2260. Frakspawn(playerid);
  2261. }
  2262. case CHEAT_STATUS_WARN:
  2263. {
  2264. WarnPlayer(playerid, 1, "driveby");
  2265. }
  2266. case CHEAT_STATUS_KICK:
  2267. {
  2268. #if defined SILENT_MODE
  2269. CrashPlayer(playerid);
  2270. #else
  2271. format(string, 128, "%s has been banned due driveby", name);
  2272. SendClientMessageToAll(0xFF0000FF, string);
  2273. Kick(playerid);
  2274. #endif
  2275. }
  2276. case CHEAT_STATUS_BAN:
  2277. {
  2278. BanPlayer(playerid);
  2279. #if defined SILENT_MODE
  2280. CrashPlayer(playerid);
  2281. #else
  2282. format(string, 128, "%s has been banned due driveby", name);
  2283. SendClientMessageToAll(0xFF0000FF, string);
  2284. Kick(playerid);
  2285. #endif
  2286. }
  2287. }
  2288. }
  2289. }
  2290. if(DTAC_Player[playerid][apUnkillableTime] >= 1 && DTAC_Config[spawnkill] >= CHEAT_STATUS_OFF)
  2291. {
  2292. new string[128], name[32];
  2293. GetPlayerName(playerid, name, 32);
  2294. switch(DTAC_Config[spawnkill])
  2295. {
  2296. case CHEAT_STATUS_WARN:
  2297. {
  2298. WarnPlayer(killerid, 1, "spawn kill");
  2299. }
  2300. case CHEAT_STATUS_KICK:
  2301. {
  2302. #if defined SILENT_MODE
  2303. CrashPlayer(playerid);
  2304. #else
  2305. format(string, 128, "%s has been kicked due spawnkill", name);
  2306. SendClientMessageToAll(0xFF0000FF, string);
  2307. Kick(playerid);
  2308. #endif
  2309. }
  2310. case CHEAT_STATUS_BAN:
  2311. {
  2312. BanPlayer(playerid);
  2313. #if defined SILENT_MODE
  2314. CrashPlayer(playerid);
  2315. #else
  2316. format(string, 128, "%s has been banned due spawnkill", name);
  2317. SendClientMessageToAll(0xFF0000FF, string);
  2318. Kick(playerid);
  2319. #endif
  2320. }
  2321. }
  2322. }
  2323. geradeconnect[playerid] = 0;
  2324. DropPlayerWeapons(playerid);
  2325. return 1;
  2326. }
  2327. /*Callback VSP*/
  2328. public OnVehicleSpawn(vehicleid)
  2329. {
  2330. return 1;
  2331. }
  2332. /*Callback VDT*/
  2333. public OnVehicleDeath(vehicleid, killerid)
  2334. {
  2335. return 1;
  2336. }
  2337. /*Callback PT*/
  2338. public OnPlayerText(playerid, text[])
  2339. {
  2340. if(GetPVarInt(playerid,"Mute")==1)
  2341. {
  2342. SendClientMessage(playerid,COLOR_CORNSILK,"Du bist gemutet und kannst deswegen nichts schreiben, bis dich ein Admin entmutet");
  2343. }
  2344. if(Anruf[playerid] == 1 && Anruf[Anrufername] == 1)
  2345. {
  2346. new stringg[200];
  2347. format(stringg, sizeof(stringg), "{E0C61B}(HANDY){FAFAFA}%s", text);
  2348. SendPlayerMessageToPlayer(playerid, Anrufername, stringg);
  2349. }
  2350. else if(Anruf[playerid] == 0)
  2351. {
  2352. new string[200];
  2353. format(string, sizeof(string), "%s sagt: %s", getName(playerid), text);
  2354. ProxDetector(30.0, playerid, string, FARBE_FADE1,FARBE_FADE2,FARBE_FADE3,FARBE_FADE4,FARBE_FADE5);
  2355. if(DTAC_Player[playerid][apMuted] >= 1)
  2356. {
  2357. format(string, 128, "You were muted, %d seconds left !", DTAC_Player[playerid][apMuted]);
  2358. SendClientMessage(playerid, 0xFF0000FF, string);
  2359. return false;
  2360. }
  2361. else
  2362. {
  2363. DTAC_Player[playerid][apSpamMessages]++;
  2364. }
  2365. }
  2366. return false;
  2367. }
  2368. /*Callback CMD*/
  2369. public OnPlayerCommandText(playerid, cmdtext[])
  2370. {
  2371. new cmd[256];
  2372. new tmp[256];
  2373. new idx;
  2374. cmd = strtok(cmdtext, idx);
  2375. if(strcmp(cmdtext,"/settime",true,8)==0) {
  2376. if(strlen(cmdtext[9])) {
  2377. new zeit=strval(cmdtext[9]);
  2378. if(zeit>=0 && zeit<=23) {
  2379. new name[MAX_PLAYER_NAME], s[80];
  2380. GetPlayerName(playerid,name,sizeof(name));
  2381. format(s,sizeof(s),"%s hat die Uhr auf %d gestellt",name,zeit);
  2382. SendClientMessageToAll(COLOR_CORNSILK,s);
  2383. SetWorldTime(zeit);}}
  2384. return 1;
  2385. }
  2386. if(strcmp(cmd, "/o", true) == 0)
  2387. {
  2388. if(IstAdmin(playerid))
  2389. {
  2390. new name[32];
  2391. new eingabe[128];
  2392. new message[128];
  2393. GetPlayerName(playerid, name, sizeof(name));
  2394. eingabe = bigstrtok(cmdtext, idx);
  2395. format(message,sizeof(message), "((Admin %s : %s))",name, eingabe);
  2396. SendClientMessageToAll(0x00C2ECFF, message);
  2397. return 1;
  2398. }
  2399. return 0;
  2400. }
  2401. if (strcmp(cmd, "/staatinfo", true)==0)
  2402. {
  2403. new string[256];
  2404. new tmpstring[256];
  2405. format(string, sizeof(string), "Staat.ini");
  2406. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  2407. format(tmpstring, sizeof(tmpstring), "Geld: %s", dini_Get(string,"Betrag"));
  2408. SendClientMessage(playerid, COLOR_GREEN, tmpstring);
  2409. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  2410. return 1;
  2411. }
  2412. if (strcmp(cmd, "/spenden", true)==0)
  2413. {
  2414. new string[128];
  2415. tmp = strtok(cmdtext, idx);
  2416. if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "Benutze: /spenden [Menge]");
  2417. new spendenmenge = strval(tmp);
  2418. if(spendenmenge < 1 ) return SendClientMessage(playerid,COLOR_RED,"Du möchtest also nichts Spenden ...");
  2419. if(spendenmenge > GetPlayerMoney(playerid) ) return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genug Geld.");
  2420. SendClientMessage(playerid,COLOR_SEAGREEN,"============[Gespendet]==========================");
  2421. format(string,sizeof(string),"Du hast : %d $ gespendet, Vielen Dank!",spendenmenge);
  2422. SendClientMessage(playerid,COLOR_SEAGREEN,string);
  2423. SendClientMessage(playerid,COLOR_SEAGREEN,"=================================================");
  2424. SL_GivePlayerMoneyMinus(playerid, spendenmenge);
  2425. SaveStaat();
  2426. return 1;
  2427. }
  2428. if(strcmp(cmdtext, "/clearchat", true) == 0)
  2429. {
  2430. if (IstAdmin(playerid))
  2431. {
  2432. {
  2433. for (new a=1;a<=10;a++)
  2434. {
  2435. SendClientMessageToAll(0, "\n");
  2436. SendClientMessageToAll(0, "\n");
  2437. SendClientMessageToAll(0, "\n");
  2438. SendClientMessageToAll(0, "\n");
  2439. SendClientMessageToAll(0, "\n");
  2440. GameTextForAll("Chat cleared!",6000,1);
  2441. }
  2442. new Player[MAX_PLAYER_NAME];
  2443. GetPlayerName(playerid,Player,sizeof(Player));
  2444. {
  2445. new string[200];
  2446. format(string, sizeof(string), "*** Administrator %s clearte den Chat ***",Player);
  2447. SendClientMessageToAll(0, "\n");
  2448. printf(string);
  2449. }
  2450. }
  2451. }
  2452. else
  2453. {
  2454. SendClientMessage(playerid, FARBE_FADE1, "Du Bist Kein Admin oO!");
  2455. }
  2456. return 1;
  2457. }
  2458. if(strcmp(cmdtext, "/dtac", true) == 0)
  2459. {
  2460. if(!IstAdmin(playerid)) return false;
  2461. SetPVarInt(playerid, "dtac_dialog", SUBDIALOG_MAIN);
  2462. ShowPlayerDialog(playerid, DIALOG_ID, DIALOG_STYLE_LIST, "Anticheat", "Config\nBansystem", "Ok", "Exit");
  2463. return true;
  2464. }
  2465. return 1;
  2466. }
  2467. /*Callback EV*/
  2468. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  2469. {
  2470. new Float:pos[3];
  2471. if(!IsPlayerNPC(playerid)){
  2472. if(IsLieferant(vehicleid) && !ispassenger)
  2473. {
  2474. if(SpielerInfo[playerid][pJob] > 0 && SpielerInfo[playerid][pJob] < 3)
  2475. {
  2476.  
  2477. }
  2478. else
  2479. {
  2480. GetPlayerPos(playerid,pos[0],pos[1],pos[2]);
  2481. SetPlayerPos(playerid,pos[0],pos[1],pos[2]);
  2482. return GameTextForPlayer(playerid,"~g~Keine Schluessel!",2000,3);
  2483. }
  2484. }
  2485. if(IsYakuzaVeh(vehicleid) && !ispassenger)
  2486. {
  2487. if(InFrak(playerid, 5))
  2488. {
  2489. GetPlayerPos(playerid,pos[0],pos[1],pos[2]);
  2490. SetPlayerPos(playerid,pos[0],pos[1],pos[2]);
  2491. return GameTextForPlayer(playerid,"~g~Keine Schluessel!",2000,3);
  2492. }
  2493. }
  2494. else if(IsCamorraVeh(vehicleid) && !ispassenger)
  2495. {
  2496. if(InFrak(playerid, 6))
  2497. {
  2498. GetPlayerPos(playerid,pos[0],pos[1],pos[2]);
  2499. SetPlayerPos(playerid,pos[0],pos[1],pos[2]);
  2500. return GameTextForPlayer(playerid,"~r~Keine Schluessel!",2000,3);
  2501. }
  2502. }
  2503. else if(IsFahrschuleVeh(vehicleid) && !ispassenger && !IstFahrschule(playerid))
  2504. {
  2505. GetPlayerPos(playerid,pos[0],pos[1],pos[2]);
  2506. SetPlayerPos(playerid,pos[0],pos[1],pos[2]);
  2507. TogglePlayerControllable(playerid,0);
  2508. SetTimerEx("Unfreeze",1000,false,"d",playerid);
  2509. }
  2510. else if(IsPolizeiVeh(vehicleid) && !ispassenger && !istBeamter(playerid))
  2511. {
  2512. GetPlayerPos(playerid,pos[0],pos[1],pos[2]);
  2513. SetPlayerPos(playerid,pos[0],pos[1],pos[2]);
  2514. }
  2515. else if(IsCar(vehicleid)&& !ispassenger && !HatFschein(playerid))
  2516. {
  2517. GetPlayerPos(playerid,pos[0],pos[1],pos[2]);
  2518. SetPlayerPos(playerid,pos[0],pos[1],pos[2]);
  2519. }}
  2520. return 1;
  2521. }
  2522. stock HatFschein(playerid)
  2523. {
  2524. if(SpielerInfo[playerid][pSchein] >= 1) return 1;
  2525. return 0;
  2526. }
  2527. /*Callback EV*/
  2528. public OnPlayerExitVehicle(playerid, vehicleid)
  2529. {
  2530. return 1;
  2531. }
  2532. /*Callback SC*/
  2533. public OnPlayerStateChange(playerid, newstate, oldstate)
  2534. {
  2535. return 1;
  2536. }
  2537. new obbeladen[MAX_PLAYERS];
  2538. /*Callback EC*/
  2539. public OnPlayerEnterCheckpoint(playerid)
  2540. {
  2541. if(IsLieferant(GetPlayerVehicleID(playerid)))
  2542. {
  2543. if(SpielerInfo[playerid][pJob] == 2 && SpielerInfo[playerid][pTour] == 1 && CheckpointF[playerid] == 1)
  2544. {
  2545. CheckpointF[playerid] = 2;
  2546. DisablePlayerCheckpoint(playerid);
  2547. SetPlayerCheckpoint(playerid, 1575.1204,1174.5308,11.5357,30);
  2548. new string1[200], string2[200], alles[200];
  2549. format(string1,sizeof(string1),"{FAFAFA}Aktuelles Fahrziel : {1B6DE0}Flughafen in LV{FAFAFA}");
  2550. format(string2,sizeof(string2),"{FAFAFA}Aktuelle Anzahl der Ware : {1B6DE0}3 Packete{FAFAFA}");
  2551. format(alles, sizeof(alles),"%s\n%s\nEs steht ein Flugzeug für den Rückflug bereit",string1, string2);
  2552. ShowPlayerDialog(playerid, DIALOG_Lieferant, DIALOG_STYLE_MSGBOX,"{1B6DE0}Lieferschein",alles, "Ok", "");
  2553. }
  2554. if(SpielerInfo[playerid][pJob] == 2 && SpielerInfo[playerid][pTour] == 1 && CheckpointF[playerid] == 2)
  2555. {
  2556. CheckpointF[playerid] = 3;
  2557. DisablePlayerCheckpoint(playerid);
  2558. EndTour(playerid);
  2559. }
  2560. if(SpielerInfo[playerid][pJob] == 1 && SpielerInfo[playerid][pTour] == 1 && Checkpoint[playerid] == 1)
  2561. {
  2562. Checkpoint[playerid] = 2;
  2563. RemovePlayerFromVehicle(playerid);
  2564. DisablePlayerCheckpoint(playerid);
  2565. SetPlayerCheckpoint(playerid, -29.4857,-1123.7842,1.1914,3);
  2566. new string1[200], string2[200], alles[200];
  2567. format(string1,sizeof(string1),"{FAFAFA}Aktuelles Fahrziel : {1B6DE0}Lieferfirma Richtung SF{FAFAFA}");
  2568. format(string2,sizeof(string2),"{FAFAFA}Aktuelle Anzahl der Ware : {1B6DE0}3 Packete{FAFAFA}");
  2569. format(alles, sizeof(alles),"%s\n%s\nSteig in den Grauen Pkw",string1, string2);
  2570. ShowPlayerDialog(playerid, DIALOG_Lieferant, DIALOG_STYLE_MSGBOX,"{1B6DE0}Lieferschein",alles, "Ok", "");
  2571. }
  2572. else if(IsPlayerInRangeOfPoint(playerid, 3,-29.4857,-1123.7842,1.1914) && SpielerInfo[playerid][pJob] == 1 && SpielerInfo[playerid][pTour] == 1 && Checkpoint[playerid] == 2)
  2573. {
  2574. Checkpoint[playerid] = 3;
  2575. RemovePlayerFromVehicle(playerid);
  2576. DisablePlayerCheckpoint(playerid);
  2577. SetPlayerCheckpoint(playerid, -1457.6538,354.4757,7.2403,3);
  2578. new string1[200], string2[200], alles[200];
  2579. format(string1,sizeof(string1),"{FAFAFA}Aktuelles Fahrziel : {1B6DE0}Hafen in SF{FAFAFA}");
  2580. format(string2,sizeof(string2),"{FAFAFA}Aktuelle Anzahl der Ware : {1B6DE0}14 Päckchen{FAFAFA}");
  2581. format(alles, sizeof(alles),"%s\n%s",string1, string2);
  2582. ShowPlayerDialog(playerid, DIALOG_Lieferant, DIALOG_STYLE_MSGBOX,"{1B6DE0}Lieferschein",alles, "Ok", "");
  2583. }
  2584. else if(IsPlayerInRangeOfPoint(playerid, 3,-1457.6538,354.4757,7.2403) && SpielerInfo[playerid][pJob] == 1 && SpielerInfo[playerid][pTour] == 1 && Checkpoint[playerid] == 3)
  2585. {
  2586. Checkpoint[playerid] = 4;
  2587. RemovePlayerFromVehicle(playerid);
  2588. DisablePlayerCheckpoint(playerid);
  2589. SetPlayerCheckpoint(playerid, -1434.7314,1503.4187,-0.0603,3);
  2590. new string1[200], string2[200], alles[200];
  2591. format(string1,sizeof(string1),"{FAFAFA}Aktuelles Fahrziel : {1B6DE0}Transportschiff{FAFAFA}");
  2592. format(string2,sizeof(string2),"{FAFAFA}Aktuelle Anzahl der Ware : {1B6DE0}3 Kästen{FAFAFA}");
  2593. format(alles, sizeof(alles),"%s\n%s",string1, string2);
  2594. ShowPlayerDialog(playerid, DIALOG_Lieferant, DIALOG_STYLE_MSGBOX,"{1B6DE0}Lieferschein",alles, "Ok", "");
  2595. }
  2596. else if(IsPlayerInRangeOfPoint(playerid, 3,-1434.7314,1503.4187,-0.0603) && SpielerInfo[playerid][pJob] == 1 && SpielerInfo[playerid][pTour] == 1 && Checkpoint[playerid] == 4)
  2597. {
  2598. Checkpoint[playerid] = 5;
  2599. DisablePlayerCheckpoint(playerid);
  2600. SetPlayerCheckpoint(playerid, -2409.1101,2317.1301,0.4213,3);
  2601. new string1[200], string2[200], alles[200];
  2602. format(string1,sizeof(string1),"{FAFAFA}Aktuelles Fahrziel : {1B6DE0}Baysidehafen{FAFAFA}");
  2603. format(string2,sizeof(string2),"{FAFAFA}Aktuelle Anzahl der Ware : {1B6DE0} Keine Lieferung {FAFAFA}");
  2604. format(alles, sizeof(alles),"%s\n%s\nEs steht bereits ein Fahrzeug für dich da",string1, string2);
  2605. ShowPlayerDialog(playerid, DIALOG_Lieferant, DIALOG_STYLE_MSGBOX,"{1B6DE0}Lieferschein",alles, "Ok", "");
  2606. }
  2607. else if(IsPlayerInRangeOfPoint(playerid, 3,-2409.1101,2317.1301,0.4213) && SpielerInfo[playerid][pJob] == 1 && SpielerInfo[playerid][pTour] == 1 && Checkpoint[playerid] == 5)
  2608. {
  2609. Checkpoint[playerid] = 6;
  2610. RemovePlayerFromVehicle(playerid);
  2611. DisablePlayerCheckpoint(playerid);
  2612. SetPlayerCheckpoint(playerid, -1663.9274,2495.8372,86.9234,3);
  2613. new string1[200], string2[200], alles[200];
  2614. format(string1,sizeof(string1),"{FAFAFA}Aktuelles Fahrziel : {1B6DE0}Schreinerei LV{FAFAFA}");
  2615. format(string2,sizeof(string2),"{FAFAFA}Aktuelle Anzahl der Ware : {1B6DE0}2 Balcken{FAFAFA}");
  2616. format(alles, sizeof(alles),"%s\n%s\nAm ziel wechselst du dein Fahrzeug",string1, string2);
  2617. ShowPlayerDialog(playerid, DIALOG_Lieferant, DIALOG_STYLE_MSGBOX,"{1B6DE0}Lieferschein",alles, "Ok", "");
  2618. }
  2619. else if(IsPlayerInRangeOfPoint(playerid, 3,-1663.9274,2495.8372,86.9234) && SpielerInfo[playerid][pJob] == 1 && SpielerInfo[playerid][pTour] == 1 && Checkpoint[playerid] == 6)
  2620. {
  2621. Checkpoint[playerid] = 7;
  2622. RemovePlayerFromVehicle(playerid);
  2623. DisablePlayerCheckpoint(playerid);
  2624. SetPlayerCheckpoint(playerid, 579.7719,1220.7260,11.4817,3);
  2625. new string1[200], string2[200], alles[200];
  2626. format(string1,sizeof(string1),"{FAFAFA}Aktuelles Fahrziel : {1B6DE0}Ölfabrik{FAFAFA}");
  2627. format(string2,sizeof(string2),"{FAFAFA}Aktuelle Anzahl der Ware : {1B6DE0}10 Ersatzteile und Schrauben{FAFAFA}");
  2628. format(alles, sizeof(alles),"%s\n%s\nAm Zielort steigst du in das weiße Fahrzeug um",string1, string2);
  2629. ShowPlayerDialog(playerid, DIALOG_Lieferant, DIALOG_STYLE_MSGBOX,"{1B6DE0}Lieferschein",alles, "Ok", "");
  2630. }
  2631. else if(IsPlayerInRangeOfPoint(playerid, 3,579.7719,1220.7260,11.4817) && SpielerInfo[playerid][pJob] == 1 && SpielerInfo[playerid][pTour] == 1 && Checkpoint[playerid] == 7)
  2632. {
  2633. Checkpoint[playerid] = 8;
  2634. RemovePlayerFromVehicle(playerid);
  2635. DisablePlayerCheckpoint(playerid);
  2636. SetPlayerCheckpoint(playerid, 2826.8474,969.3438,10.7500,3);
  2637. new string1[200], string2[200], alles[200];
  2638. format(string1,sizeof(string1),"{FAFAFA}Aktuelles Fahrziel : {1B6DE0}Welttransport{FAFAFA}");
  2639. format(string2,sizeof(string2),"{FAFAFA}Aktuelle Anzahl der Ware : {1B6DE0} Keine Lieferung {FAFAFA}");
  2640. format(alles, sizeof(alles),"%s\n%s\nSteig am Zielort in den Truck und hol dir den linken Anhänger",string1, string2);
  2641. ShowPlayerDialog(playerid, DIALOG_Lieferant, DIALOG_STYLE_MSGBOX,"{1B6DE0}Lieferschein",alles, "Ok", "");
  2642. }
  2643. else if(IsPlayerInRangeOfPoint(playerid, 3,2826.8474,969.3438,10.7500) && SpielerInfo[playerid][pJob] == 1 && SpielerInfo[playerid][pTour] == 1 && Checkpoint[playerid] == 8)
  2644. {
  2645. Checkpoint[playerid] = 9;
  2646. RemovePlayerFromVehicle(playerid);
  2647. DisablePlayerCheckpoint(playerid);
  2648. SetPlayerCheckpoint(playerid, 2789.4390,-2400.5747,14.6331,3);
  2649. new string1[200], string2[200], alles[200];
  2650. format(string1,sizeof(string1),"{FAFAFA}Aktuelles Fahrziel : {1B6DE0}Hafen LS{FAFAFA}");
  2651. format(string2,sizeof(string2),"{FAFAFA}Aktuelle Anzahl der Ware : {1B6DE0}120 Kartongs{FAFAFA}");
  2652. format(alles, sizeof(alles),"%s\n%s\nFahr zurück zu deiner Lieferfirma",string1, string2);
  2653. ShowPlayerDialog(playerid, DIALOG_Lieferant, DIALOG_STYLE_MSGBOX,"{1B6DE0}Lieferschein",alles, "Ok", "");
  2654. }
  2655. else if(IsPlayerInRangeOfPoint(playerid, 3,2789.4390,-2400.5747,14.6331) && SpielerInfo[playerid][pJob] == 1 && SpielerInfo[playerid][pTour] == 1 && Checkpoint[playerid] == 9)
  2656. {
  2657. EndTour(playerid);
  2658. }
  2659. }
  2660. else
  2661. {
  2662. DisablePlayerCheckpoint(playerid);
  2663. SendClientMessage(playerid, COLOR_CORNSILK, "Das ist kein Lieferfahrzeug, du zahlst Schadensersatz für das Fahrzeug und die Ware");
  2664. GivePlayerMoney(playerid, -8000);
  2665. }
  2666. if(obbeladen[playerid] == 1){
  2667. obbeladen[playerid] = 0;
  2668. SpielerInfo[playerid][pTour] = 0;
  2669. SetTimerEx("NextTour", 360000, 0, "d", playerid);
  2670. DetachTrailerFromVehicle(GetPlayerVehicleID(playerid));
  2671. EndTour(playerid);}
  2672. return 1;
  2673. }
  2674. /*Callback LC*/
  2675. public OnPlayerLeaveCheckpoint(playerid)
  2676. {
  2677. return 1;
  2678. }
  2679. /*Callback ERC*/
  2680. public OnPlayerEnterRaceCheckpoint(playerid)
  2681. {
  2682. return 1;
  2683. }
  2684. /*Callback LRC*/
  2685. public OnPlayerLeaveRaceCheckpoint(playerid)
  2686. {
  2687. return 1;
  2688. }
  2689. /*Callback RCON*/
  2690. public OnRconCommand(cmd[])
  2691. {
  2692. return 1;
  2693. }
  2694. /*Callback RSP*/
  2695. public OnPlayerRequestSpawn(playerid)
  2696. {
  2697. return 1;
  2698. }
  2699. /*Callback OBM*/
  2700. public OnObjectMoved(objectid)
  2701. {
  2702. return 1;
  2703. }
  2704.  
  2705. public OnPlayerObjectMoved(playerid, objectid)
  2706. {
  2707. return 1;
  2708. }
  2709.  
  2710. public OnPlayerPickUpPickup(playerid, pickupid)
  2711. {
  2712. return 1;
  2713. }
  2714.  
  2715. public OnVehicleMod(playerid, vehicleid, componentid)
  2716. {
  2717. return 1;
  2718. }
  2719.  
  2720. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  2721. {
  2722. return 1;
  2723. }
  2724.  
  2725. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  2726. {
  2727. return 1;
  2728. }
  2729.  
  2730. public OnPlayerSelectedMenuRow(playerid, row)
  2731. {
  2732. return 1;
  2733. }
  2734.  
  2735. public OnPlayerExitedMenu(playerid)
  2736. {
  2737. return 1;
  2738. }
  2739.  
  2740. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  2741. {
  2742. SetPlayerInterior(playerid, GetPlayerInterior(playerid));
  2743. return 1;
  2744. }
  2745.  
  2746. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  2747. {
  2748. if(newkeys & KEY_FIRE && oldkeys & KEY_CROUCH && IsteseineCBUGWaffe(playerid))
  2749. {
  2750. CBUGWARNUNGEN[playerid] ++;
  2751.  
  2752. if(CBUGWARNUNGEN[playerid] > WVCBUG)
  2753. {
  2754. CBUGWARNUNGEN[playerid] = 0;
  2755. new string[200];
  2756. format(string, sizeof(string), "%s hat C Bug benutzt und wurde gekickt", getName(playerid));
  2757. SendClientMessageToAll(COLOR_RED, string);
  2758. SendClientMessage(playerid,COLOR_RED,"** C-Bug > Kick!");
  2759. Kick(playerid);
  2760. }
  2761. }
  2762. if(SpielerInfo[playerid][pMember] == 7)
  2763. {
  2764. if(newkeys == KEY_SUBMISSION)
  2765. {
  2766. if(IsPlayerInRangeOfPoint(playerid,10.0,-2869.6999511719, 496, 5.5999999046326))//Russischmafia Tor
  2767. {
  2768. if(SpielerInfo[playerid][pMember] == 7)
  2769. {
  2770. SetTimer("RMTor", 5000, 0);
  2771. MoveObject(RMafiator, -2869.6999511719, 496, 5.5999999046326, 2);
  2772. }
  2773. }
  2774. }
  2775. }
  2776. if(newkeys == KEY_SECONDARY_ATTACK && !IsPlayerInAnyVehicle(playerid))
  2777. {
  2778. SpielerInfo[playerid][pInterior] = GetPlayerInterior(playerid);
  2779. SavePlayer(playerid);
  2780. if(IsPlayerInRangeOfPoint(playerid,1.0,-88.1925,-1212.3824,2.8906))//KriPo Enter
  2781. {
  2782. SetPlayerPos(playerid,322.197998,302.497985,999.148437);
  2783. SetPlayerFacingAngle(playerid,358.0127);
  2784. SetPlayerInterior(playerid, 5);
  2785. TogglePlayerControllable(playerid,0);
  2786. SetTimerEx("Unfreeze",1000,false,"d",playerid);
  2787.  
  2788. }
  2789. if(IsPlayerInRangeOfPoint(playerid,1.0,322.197998,302.497985,999.148437))//KriPo Exit
  2790. {
  2791. SetPlayerPos(playerid,-88.1925,-1212.3824,2.8906);
  2792. SetPlayerFacingAngle(playerid,358.0127);
  2793. SetTimerEx("Unfreeze",1000,false,"d",playerid);
  2794. TogglePlayerControllable(playerid,0);
  2795. SetPlayerInterior(playerid, 0);
  2796. }
  2797. if(IsPlayerInRangeOfPoint(playerid,1.0,254.3305,76.6339,1003.6406)) //FSchein stelle
  2798. {
  2799. if(istBeamter(playerid) && OnDuty[playerid] != 1){
  2800. new str[200];
  2801. format(str, sizeof(str), "<< Marke von %s, Dienstwaffen erhälst du an der Waffenstelle. >>", getName(playerid));
  2802. SetPlayerSkin(playerid, 267);
  2803. SendClientMessage(playerid,COLOR_LIGHTCORAL, str);
  2804. OnDuty[playerid] = 1;
  2805. }
  2806. else if(istBeamter(playerid) && OnDuty[playerid] != 0){
  2807. new str[200];
  2808. format(str, sizeof(str), "<< %s, du hast deine Dienstkleidung und Marke abgelegt.>>", getName(playerid));
  2809. SendClientMessage(playerid,COLOR_LIGHTCORAL, str);
  2810. OnDuty[playerid] = 0;
  2811. }
  2812. }
  2813. if(IsPlayerInRangeOfPoint(playerid,1.0,2825.4316,1293.7446,10.7656)) //FSchein stelle
  2814. {
  2815. if(SpielerInfo[playerid][pSchein] < 1){
  2816. SendClientMessage(playerid, COLOR_YELLOW,"{E0C91B}x¸,ø¤°``°¤ø,¸{FAFAFA} Führerschein{E0C91B} ¸,ø¤°``°¤ø,¸x");
  2817. SendClientMessage(playerid, COLOR_GREEN,"{E0C91B}x¸,ø¤°``°¤ø,¸{FAFAFA}Da du neu bist erhälst du...{E0C91B} ¸,ø¤°``°¤ø,¸x");
  2818. SendClientMessage(playerid, COLOR_GREEN,"{E0C91B}x¸,ø¤°``°¤ø,¸{FAFAFA}einen Führerschein kostenlos{E0C91B} ¸,ø¤°``°¤ø,¸x");
  2819. SpielerInfo[playerid][pSchein] = 1;
  2820. }
  2821. }
  2822. if(IsPlayerInRangeOfPoint(playerid,1.0,1199.1746,-918.7615,43.1191))//BSN
  2823. {
  2824. SetPlayerPos(playerid,364.3269,-74.1132,1001.5078);
  2825. SetPlayerInterior(playerid, 10);
  2826. SetTimerEx("Unfreeze",1000,false,"d",playerid);
  2827. TogglePlayerControllable(playerid,0);
  2828. }
  2829. if(IsPlayerInRangeOfPoint(playerid,1.0,364.3269,-74.1132,1001.5078))//BSN exit
  2830. {
  2831. SetPlayerPos(playerid,1199.1746,-918.7615,43.1191);
  2832. SetTimerEx("Unfreeze",1000,false,"d",playerid);
  2833. TogglePlayerControllable(playerid,0);
  2834. SetPlayerInterior(playerid, 0);
  2835. }
  2836. if(IsPlayerInRangeOfPoint(playerid,1.0,1546.3226,-1670.3237,13.5672))//Wantedliste
  2837. {
  2838. if(istBeamter(playerid)){
  2839. SendClientMessage(playerid, COLOR_LIGHTBLUE,"x¸,ø¤°``°¤ø,¸ Wantedliste ¸,ø¤°``°¤ø,¸x");
  2840. new i = 0, string[256];
  2841. for(; i < MAX_PLAYERS; i++)
  2842. {
  2843. if(IsPlayerConnected(i))
  2844. {
  2845. if(SpielerInfo[i][pWanted] > 0)
  2846. {
  2847. format(string, 256, "- %s \tWanted: %d\n", getName(i),SpielerInfo[i][pWanted]);
  2848. SendClientMessage(playerid, COLOR_CORNSILK, string);
  2849. }
  2850. SendClientMessage(playerid, COLOR_LIGHTBLUE,"x¸,ø¤°``°¤ø,¸ Los Santos ¸,ø¤°``°¤ø,¸x");
  2851. }
  2852. }}
  2853. }
  2854. if(IsPlayerInRangeOfPoint(playerid, 15.0, 2111.8140,-2424.9380,13.5469) && CheckpointF[playerid] == 0 && SpielerInfo[playerid][pJob] == 2)
  2855. {
  2856. SetPlayerCheckpoint(playerid,-1327.2264,-541.9271,14.1484,20);
  2857. new string1[200], string2[200], alles[200];
  2858. format(string1,sizeof(string1),"{FAFAFA}Aktuelles Flugziel : {1B6DE0}SF Flughafen{FAFAFA}");
  2859. format(string2,sizeof(string2),"{FAFAFA}Aktuelle Anzahl der Ware : {1B6DE0}10 Kisten{FAFAFA}");
  2860. format(alles, sizeof(alles),"%s\n%s\nACHTUNG: /lock muss immer beim Umsteigen benutzt werden",string1, string2);
  2861. ShowPlayerDialog(playerid, DIALOG_Lieferant, DIALOG_STYLE_MSGBOX,"{1B6DE0}Lieferschein",alles, "Ok", "");
  2862. CheckpointF[playerid] = 1;
  2863. }
  2864. if(IsPlayerInRangeOfPoint(playerid, 4.0, 2780.9785,-2450.1860,13.7545) && Checkpoint[playerid] == 0 && SpielerInfo[playerid][pJob] == 1)
  2865. {
  2866. SpielerInfo[playerid][pTour] = 1;
  2867. SetPlayerCheckpoint(playerid,1530.5970,-1645.4406,5.8906,6);
  2868. new string1[200], string2[200], alles[200];
  2869. format(string1,sizeof(string1),"{FAFAFA}Aktuelles Fahrziel : {1B6DE0}LSPD Garage{FAFAFA}");
  2870. format(string2,sizeof(string2),"{FAFAFA}Aktuelle Anzahl der Ware : {1B6DE0}1 Packet{FAFAFA}");
  2871. format(alles, sizeof(alles),"%s\n%s\nACHTUNG: /lock muss immer beim Umsteigen benutzt werden",string1, string2);
  2872. ShowPlayerDialog(playerid, DIALOG_Lieferant, DIALOG_STYLE_MSGBOX,"{1B6DE0}Lieferschein",alles, "Ok", "");
  2873. Checkpoint[playerid] = 1;
  2874. }
  2875. if(IsPlayerInRangeOfPoint(playerid,1.0,2637.2104,1672.6830,11.0234))//CT Enter
  2876. {
  2877. SetPlayerPos(playerid,365.1315,-11.0269,1001.8516);
  2878. SetPlayerInterior(playerid, 9);
  2879. SetTimerEx("Unfreeze",1000,false,"d",playerid);
  2880. TogglePlayerControllable(playerid,0);
  2881. }
  2882. if(IsPlayerInRangeOfPoint(playerid,1.0,365.1315,-11.0269,1001.8516))//CT Exit
  2883. {
  2884. SetPlayerPos(playerid,2637.2104,1672.6830,11.0234);
  2885. SetPlayerInterior(playerid, 0);
  2886. SetTimerEx("Unfreeze",1000,false,"d",playerid);
  2887. TogglePlayerControllable(playerid,0);
  2888. }
  2889. if(IsPlayerInRangeOfPoint(playerid,1.0,1526.8578,-1678.2483,5.8906))//LSPD Garage enter
  2890. {
  2891. SetPlayerPos(playerid,254.8996,89.7255,1002.4453);
  2892. SetPlayerFacingAngle(playerid,358.0127);
  2893. SetPlayerInterior(playerid, 6);
  2894. SetTimerEx("Unfreeze",1000,false,"d",playerid);
  2895. TogglePlayerControllable(playerid,0);
  2896. }
  2897. if(IsPlayerInRangeOfPoint(playerid,1.0,254.8996,89.7255,1002.4453))//LSPD Garage Exit
  2898. {
  2899. SetPlayerPos(playerid,1526.8578,-1678.2483,5.8906);
  2900. SetPlayerFacingAngle(playerid,358.0127);
  2901. SetTimerEx("Unfreeze",1000,false,"d",playerid);
  2902. TogglePlayerControllable(playerid,0);
  2903. SetPlayerInterior(playerid, 0);
  2904. }
  2905. if(IsPlayerInRangeOfPoint(playerid,1.0,1554.1898,-1675.7930,16.1953))//LSPD enter
  2906. {
  2907. SetPlayerPos(playerid,246.783996,63.900199,1003.640625);
  2908. SetPlayerFacingAngle(playerid,358.0127);
  2909. SetPlayerInterior(playerid, 6);
  2910. SetTimerEx("Unfreeze",1000,false,"d",playerid);
  2911. TogglePlayerControllable(playerid,0);
  2912. }
  2913. if(IsPlayerInRangeOfPoint(playerid,1.0,246.783996,63.900199,1003.640625))//LSPD Exit
  2914. {
  2915. SetPlayerPos(playerid,1554.1898,-1675.7930,16.1953);
  2916. SetPlayerFacingAngle(playerid,358.0127);
  2917. SetTimerEx("Unfreeze",1000,false,"d",playerid);
  2918. TogglePlayerControllable(playerid,0);
  2919. SetPlayerInterior(playerid, 0);
  2920. }
  2921. if(IsPlayerInRangeOfPoint(playerid,1.0,1462.4657,-1011.3002,26.8438))//Bank enter
  2922. {
  2923. SetPlayerPos(playerid,1426.0999755859, -1039.1999511719, 4728.3999023438);
  2924. SetPlayerFacingAngle(playerid,358.0127);
  2925. SetTimerEx("Unfreeze",1000,false,"d",playerid);
  2926. TogglePlayerControllable(playerid,0);
  2927. SendClientMessage(playerid,COLOR_GREEN,"Du hast die Bank betreten");
  2928. }
  2929. if(IsPlayerInRangeOfPoint(playerid,1.0,1426.0999755859, -1039.1999511719, 4728.3999023438)) //Bank exit
  2930. {
  2931. SetPlayerPos(playerid,1462.4657,-1011.3002,26.8438);
  2932. SetPlayerFacingAngle(playerid,358.0127);
  2933. }
  2934. }
  2935. return 1;
  2936. }
  2937.  
  2938. public OnRconLoginAttempt(ip[], password[], success)
  2939. {
  2940. return 1;
  2941. }
  2942.  
  2943.  
  2944. public OnPlayerStreamIn(playerid, forplayerid)
  2945. {
  2946. return 1;
  2947. }
  2948.  
  2949. public OnPlayerStreamOut(playerid, forplayerid)
  2950. {
  2951. return 1;
  2952. }
  2953.  
  2954. public OnVehicleStreamIn(vehicleid, forplayerid)
  2955. {
  2956. return 1;
  2957. }
  2958.  
  2959. public OnVehicleStreamOut(vehicleid, forplayerid)
  2960. {
  2961. return 1;
  2962. }
  2963. /*Callback DR*/
  2964. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  2965. {
  2966. if(dialogid == DIALOG_OPTION)
  2967. {
  2968. if(istBeamter(playerid))
  2969. {
  2970. if(response == 1)
  2971. {
  2972. switch (listitem)
  2973. {
  2974. case 0:
  2975. {
  2976. ShowPlayerDialog(playerid,DIALOG_ADMINBAN,DIALOG_STYLE_LIST,"Wantedkatalog","Falsch Parken\nSchwere Beleidigungen\nStVO\nMord\nBeamtenmord\nRaub\nFreiheitsberaubung\nDrogen-/Waffenbesitz\nVersuchter Mord\nSachbeschädigung\nEUERGRUND\nEUERGRUND\nEUERGRUND\nEUERGRUND\nEUERGRUND\nEUERGRUND\nEUERGRUND\nEUERGRUND\nEUERGRUND\nEUERGRUND\nEUERGRUND","Auswählen","Beenden");
  2977. return 1;
  2978. }
  2979. }
  2980. }
  2981. }
  2982. }
  2983. if(dialogid == DIALOG_ADMINBAN)
  2984. {
  2985. new stringn[200];
  2986. new giveplayer[MAX_PLAYER_NAME];
  2987. GetPlayerName(Adminbanname,giveplayer,sizeof(giveplayer));
  2988. if(istBeamter(playerid))
  2989. {
  2990. if(response == 1)
  2991. {
  2992. switch (listitem)
  2993. {
  2994. case 0:
  2995. {
  2996. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund1);
  2997. SendBeamtenMessage(COLOR_YELLOW, stringn);
  2998. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  2999. SpielerInfo[Adminbanname][pWanted] += Wantedgrund1;
  3000. //SetPlayerWantedLevel(Adminbanname, Wantedgrund1);
  3001. new newtext[100];
  3002. format(newtext, sizeof(newtext), "%s", Sterne1);
  3003. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3004.  
  3005. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3006. return 1;
  3007. }
  3008. case 1:
  3009. {
  3010. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund2);
  3011. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3012. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3013. SpielerInfo[Adminbanname][pWanted] += Wantedgrund2;
  3014. //SetPlayerWantedLevel(Adminbanname, Wantedgrund2);
  3015. new newtext[100];
  3016. format(newtext, sizeof(newtext), "%s", Sterne2);
  3017. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3018. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3019. return 1;
  3020. }
  3021. case 2:
  3022. {
  3023. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund3);
  3024. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3025. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3026. SpielerInfo[Adminbanname][pWanted] += Wantedgrund3;
  3027. //SetPlayerWantedLevel(Adminbanname, Wantedgrund3);
  3028. new newtext[100];
  3029. format(newtext, sizeof(newtext), "%s", Sterne3);
  3030. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3031.  
  3032. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3033. return 1;
  3034. }
  3035. case 3:
  3036. {
  3037. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund4);
  3038. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3039. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3040. SpielerInfo[Adminbanname][pWanted] += Wantedgrund4;
  3041. //SetPlayerWantedLevel(Adminbanname, Wantedgrund4);
  3042. new newtext[100];
  3043. format(newtext, sizeof(newtext), "%s", Sterne4);
  3044. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3045.  
  3046. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3047. }
  3048. case 4:
  3049. {
  3050. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund5);
  3051. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3052. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3053. SpielerInfo[Adminbanname][pWanted] += Wantedgrund5;
  3054. //SetPlayerWantedLevel(Adminbanname, Wantedgrund5);
  3055. new newtext[100];
  3056. format(newtext, sizeof(newtext), "%s", Sterne5);
  3057. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3058.  
  3059. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3060. }
  3061. case 5:
  3062. {
  3063. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund6);
  3064. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3065. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3066. SpielerInfo[Adminbanname][pWanted] += Wantedgrund6;
  3067. //SetPlayerWantedLevel(Adminbanname, Wantedgrund6);
  3068. new newtext[100];
  3069. format(newtext, sizeof(newtext), "%s", Sterne6);
  3070. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3071.  
  3072. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3073. }
  3074. case 6:
  3075. {
  3076. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund7);
  3077. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3078. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3079. SpielerInfo[Adminbanname][pWanted] += Wantedgrund7;
  3080. //SetPlayerWantedLevel(Adminbanname, Wantedgrund7);
  3081. new newtext[100];
  3082. format(newtext, sizeof(newtext), "%s", Sterne7);
  3083. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3084.  
  3085. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3086. }
  3087. case 7:
  3088. {
  3089. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund8);
  3090. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3091. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3092. SpielerInfo[Adminbanname][pWanted] += Wantedgrund8;
  3093. //SetPlayerWantedLevel(Adminbanname, Wantedgrund8);
  3094. new newtext[100];
  3095. format(newtext, sizeof(newtext), "%s", Sterne8);
  3096. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3097.  
  3098. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3099. }
  3100. case 8:
  3101. {
  3102. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund9);
  3103. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3104. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3105. SpielerInfo[Adminbanname][pWanted] += Wantedgrund9;
  3106. //SetPlayerWantedLevel(Adminbanname, Wantedgrund9);
  3107. new newtext[100];
  3108. format(newtext, sizeof(newtext), "%s", Sterne9);
  3109. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3110.  
  3111. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3112. }
  3113. case 9:
  3114. {
  3115. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund10);
  3116. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3117. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3118. SpielerInfo[Adminbanname][pWanted] += Wantedgrund10;
  3119. //SetPlayerWantedLevel(Adminbanname, Wantedgrund10);
  3120. new newtext[100];
  3121. format(newtext, sizeof(newtext), "%s", Sterne10);
  3122. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3123.  
  3124. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3125. }
  3126. case 10:
  3127. {
  3128. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund11);
  3129. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3130. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3131. SpielerInfo[Adminbanname][pWanted] += Wantedgrund11;
  3132. //SetPlayerWantedLevel(Adminbanname, Wantedgrund11);
  3133. new newtext[100];
  3134. format(newtext, sizeof(newtext), "%s", Sterne11);
  3135. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3136.  
  3137. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3138. }
  3139. case 11:
  3140. {
  3141. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund12);
  3142. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3143. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3144. SpielerInfo[Adminbanname][pWanted] += Wantedgrund12;
  3145. //SetPlayerWantedLevel(Adminbanname, Wantedgrund12);
  3146. new newtext[100];
  3147. format(newtext, sizeof(newtext), "%s", Sterne12);
  3148. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3149.  
  3150. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3151. }
  3152. case 12:
  3153. {
  3154. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund13);
  3155. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3156. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3157. SpielerInfo[Adminbanname][pWanted] += Wantedgrund13;
  3158. //SetPlayerWantedLevel(Adminbanname, Wantedgrund13);
  3159. new newtext[100];
  3160. format(newtext, sizeof(newtext), "%s", Sterne13);
  3161. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3162.  
  3163. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3164. }
  3165. case 13:
  3166. {
  3167. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund14);
  3168. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3169. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3170. SpielerInfo[Adminbanname][pWanted] += Wantedgrund14;
  3171. //SetPlayerWantedLevel(Adminbanname, Wantedgrund14);
  3172. new newtext[100];
  3173. format(newtext, sizeof(newtext), "%s", Sterne14);
  3174. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3175.  
  3176. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3177. }
  3178. case 14:
  3179. {
  3180. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund15);
  3181. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3182. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3183. SpielerInfo[Adminbanname][pWanted] += Wantedgrund15;
  3184. //SetPlayerWantedLevel(Adminbanname, Wantedgrund15);
  3185. new newtext[100];
  3186. format(newtext, sizeof(newtext), "%s", Sterne15);
  3187. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3188. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3189. }
  3190. case 15:
  3191. {
  3192. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund16);
  3193. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3194. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3195. SpielerInfo[Adminbanname][pWanted] += Wantedgrund16;
  3196. //SetPlayerWantedLevel(Adminbanname, Wantedgrund16);
  3197. new newtext[100];
  3198. format(newtext, sizeof(newtext), "%s", Sterne16);
  3199. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3200.  
  3201. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3202. }
  3203. case 16:
  3204. {
  3205. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund17);
  3206. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3207. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3208. SpielerInfo[Adminbanname][pWanted] += Wantedgrund17;
  3209. //SetPlayerWantedLevel(Adminbanname, Wantedgrund17);
  3210. new newtext[100];
  3211. format(newtext, sizeof(newtext), "%s", Sterne17);
  3212. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3213.  
  3214. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3215. }
  3216. case 17:
  3217. {
  3218. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund18);
  3219. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3220. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3221. SpielerInfo[Adminbanname][pWanted] += Wantedgrund18;
  3222. //SetPlayerWantedLevel(Adminbanname, Wantedgrund18);
  3223. new newtext[100];
  3224. format(newtext, sizeof(newtext), "%s", Sterne18);
  3225. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3226.  
  3227. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3228. }
  3229. case 18:
  3230. {
  3231. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund19);
  3232. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3233. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3234. SpielerInfo[Adminbanname][pWanted] += Wantedgrund19;
  3235. //SetPlayerWantedLevel(Adminbanname, Wantedgrund19);
  3236. new newtext[100];
  3237. format(newtext, sizeof(newtext), "%s", Sterne19);
  3238. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3239.  
  3240. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3241. }
  3242. case 19:
  3243. {
  3244. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund20);
  3245. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3246. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3247. SpielerInfo[Adminbanname][pWanted] += Wantedgrund20;
  3248. //SetPlayerWantedLevel(Adminbanname, Wantedgrund20);
  3249. new newtext[100];
  3250. format(newtext, sizeof(newtext), "%s", Sterne20);
  3251. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3252.  
  3253. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3254. }
  3255. case 20:
  3256. {
  3257. format(stringn,sizeof(stringn),"<< Officer %s hat %s Wanted gegeben,%s du wirst gesucht Grund: %s >>",getName(playerid),giveplayer,giveplayer,Grund21);
  3258. SendClientMessage(WID,COLOR_CORNSILK, stringn);
  3259. SendBeamtenMessage(COLOR_YELLOW, stringn);
  3260. SpielerInfo[Adminbanname][pWanted] += Wantedgrund21;
  3261. //SetPlayerWantedLevel(Adminbanname, Wantedgrund21);
  3262. new newtext[100];
  3263. format(newtext, sizeof(newtext), "%s", Sterne21);
  3264. TextDrawSetString(Wantedpunkt[Adminbanname], newtext);
  3265.  
  3266. TextDrawShowForPlayer(Adminbanname,Wantedpunkt[WID]);
  3267. }
  3268. }
  3269. }
  3270. }
  3271. }
  3272. if(response)
  3273. {
  3274. switch(dialogid)
  3275. {
  3276. case DIALOG_BANK:
  3277. {
  3278. switch(listitem)
  3279. {
  3280. case 0: ShowPlayerDialog(playerid,DIALOG_ABHEBEN,1,"Abheben","Wie viel Geld willst du abheben?","Bestätigen","Abbrechen");
  3281. case 1: ShowPlayerDialog(playerid,DIALOG_EINZAHLEN,1,"Einzahlen","Wie viel Geld willst du einzahlen?","Bestätigen","Abbrechen");
  3282. case 2: ShowPlayerDialog(playerid,DIALOG_UBERWEISEN,1,"Überweisen","Wenn möchtest du Geld Überweisen?","Bestätigen","Abbrechen");
  3283. case 3:
  3284. {
  3285. new string[128];
  3286. format(string,sizeof(string),"=================================\n\n{FAFAFA}[{E0D01B}Stand{FAFAFA}]: %i$ \n\n=================================",GetPlayerBankCash(playerid));
  3287. ShowPlayerDialog(playerid,DIALOG_NEWMONEY,0,"{E0D01B}Kontoauszug",string,"Bestätigen","Abbrechen");
  3288. }
  3289. }
  3290. }
  3291. case DIALOG_ABHEBEN:
  3292. {
  3293. if(strval(inputtext) > GetPlayerBankCash(playerid) || strval(inputtext) <= 0)
  3294. {
  3295. ShowPlayerDialog(playerid,DIALOG_ABHEBEN,1,"{E0D01B}Abheben","[ERROR]\nWie viel Geld willst du abheben?","Bestätigen","Abbrechen");
  3296. }
  3297. else
  3298. {
  3299. GivePlayerMoney(playerid, strval(inputtext));
  3300. GivePlayerBankCash(playerid, -strval(inputtext));
  3301. new string[123];
  3302. format(string,sizeof(string),"=================================\n\n{FAFAFA}[{E0D01B}*ALT{FAFAFA}]: %i$ \n\n{FAFAFA}[{E0D01B}*NEU{FAFAFA}]: %i$ \n\n=================================",GetPlayerBankCash(playerid)+strval(inputtext),GetPlayerBankCash(playerid));
  3303. ShowPlayerDialog(playerid,DIALOG_NEWMONEY,0,"{E0D01B}Kontoauszug",string,"Bestätigen","Abbrechen");
  3304. }
  3305. }
  3306. case DIALOG_EINZAHLEN:
  3307. {
  3308. if(strval(inputtext) > GetPlayerMoney(playerid) || strval(inputtext) <= 0)
  3309. {
  3310. ShowPlayerDialog(playerid,DIALOG_EINZAHLEN,1,"{E0D01B}Abheben","[ERROR]\nWie viel Geld willst du einzahlen?","Bestätigen","Abbrechen");
  3311. }
  3312. else
  3313. {
  3314. SL_GivePlayerMoneyMinus(playerid, strval(inputtext));
  3315. GivePlayerBankCash(playerid, strval(inputtext));
  3316. new string[123];
  3317. format(string,sizeof(string),"=================================\n\n[Alter Kontostand]: %i$ \n\n[Neuer Kontostand]: %i$ \n\n=================================",GetPlayerBankCash(playerid)-strval(inputtext),GetPlayerBankCash(playerid));
  3318. ShowPlayerDialog(playerid,DIALOG_NEWMONEY,0,"{E0D01B}Kontoauszug",string,"Bestätigen","Abbrechen");
  3319. }
  3320. }
  3321. case DIALOG_NEWMONEY:
  3322. {
  3323. ShowPlayerDialog(playerid, DIALOG_BANK,2,"{E0D01B}Bank","Abheben\r\nEinzahlen\r\nÜberweisen\r\nKontoauszug","Bestätigen","Abbrechen");
  3324. }
  3325. case DIALOG_UBERWEISEN:
  3326. {
  3327. if(IsNumeric(inputtext))
  3328. {
  3329. if(strval(inputtext) == playerid)
  3330. {
  3331. ShowPlayerDialog(playerid,DIALOG_UBERWEISEN,1,"{E0D01B}Überweisen","[ERROR]\nWenn möchtest du Geld Überweisen?","Bestätigen","Abbrechen");
  3332. return 1;
  3333. }
  3334. if(IsPlayerConnected(strval(inputtext)))
  3335. {
  3336. tmpid[playerid] = strval(inputtext);
  3337. tmmpmoney[playerid] = strval(inputtext);
  3338. ShowPlayerDialog(playerid,DIALOG_UBERWEISUNG,1,"{E0D01B}Überweisen","Wie viel möchtest du Überweisen?","Bestätigen","Abbrechen");
  3339. }
  3340. else
  3341. {
  3342. ShowPlayerDialog(playerid,DIALOG_UBERWEISEN,1,"{E0D01B}Überweisen","[ERROR]\nWenn möchtest du Geld Überweisen?","Bestätigen","Abbrechen");
  3343. }
  3344. }
  3345. else
  3346. {
  3347. new pID = GetPlayerId(inputtext);
  3348. if(pID == playerid)
  3349. {
  3350. ShowPlayerDialog(playerid,DIALOG_UBERWEISEN,1,"{E0D01B}Überweisen","[ERROR]\nWenn möchtest du Geld Überweisen?","Bestätigen","Abbrechen");
  3351. return 1;
  3352. }
  3353. if(IsPlayerConnected(pID))
  3354. {
  3355. tmpid[playerid] = pID;
  3356. tmmpmoney[playerid] = strval(inputtext);
  3357. ShowPlayerDialog(playerid,DIALOG_UBERWEISUNG,1,"{E0D01B}Überweisen","Wie viel möchtest du Überweisen?","Bestätigen","Abbrechen");
  3358. }
  3359. else
  3360. {
  3361. ShowPlayerDialog(playerid,DIALOG_UBERWEISEN,1,"{E0D01B}Überweisen","[ERROR]\nWenn möchtest du Geld Überweisen?","Bestätigen","Abbrechen");
  3362. }
  3363. }
  3364. }
  3365. case DIALOG_UBERWEISUNG:
  3366. {
  3367. if(GetPlayerBankCash(playerid) < strval(inputtext) || strval(inputtext) <= 0)
  3368. {
  3369. ShowPlayerDialog(playerid,DIALOG_UBERWEISUNG,1,"{E0D01B}Überweisen","[ERROR]\nWie viel möchtest du Überweisen?","Bestätigen","Abbrechen");
  3370. }
  3371. else
  3372. {
  3373. GivePlayerBankCash(playerid, -strval(inputtext));
  3374. GivePlayerBankCash(tmpid[playerid], strval(inputtext));
  3375. new string[123], string2[123],string3[123], name[MAX_PLAYER_NAME], name2[MAX_PLAYER_NAME];
  3376. format(string,sizeof(string),"=================================\n\n{FAFAFA}[{E0D01B}*ALT{FAFAFA}]: %i$ \n\n{FAFAFA}[{E0D01B}*NEU{FAFAFA}]: %i$ \n\n=================================",GetPlayerBankCash(playerid)+strval(inputtext),GetPlayerBankCash(playerid));
  3377. ShowPlayerDialog(playerid,DIALOG_NEWMONEY,0,"Kontoauszug",string,"Bestätigen","Abbrechen");
  3378. GetPlayerName(tmpid[playerid],name2, sizeof(name2));
  3379. GetPlayerName(playerid, name, sizeof(name));
  3380. format(string2, sizeof(string2),"%s hat dir %d$ überwiesen!",name,strval(inputtext));
  3381. format(string3, sizeof(string3),"Du hast %s %d$ überwiesen!",name2,strval(inputtext));
  3382. SendClientMessage(playerid, COLOR_GREY, string3);
  3383. SendClientMessage(tmpid[playerid],COLOR_GREY, string2);
  3384. }
  3385. }
  3386. }
  3387. }
  3388. else
  3389. {
  3390. switch(dialogid)
  3391. {
  3392. case DIALOG_EINZAHLEN: ShowPlayerDialog(playerid, DIALOG_BANK,2,"{E0D01B}Bank","Abheben\r\nEinzahlen\r\nÜberweisen\r\nKontoauszug","Bestätigen","Abbrechen");
  3393. case DIALOG_ABHEBEN: ShowPlayerDialog(playerid, DIALOG_BANK,2,"{E0D01B}Bank","Abheben\r\nEinzahlen\r\nÜberweisen\r\nKontoauszug","Bestätigen","Abbrechen");
  3394. case DIALOG_NEWMONEY: ShowPlayerDialog(playerid, DIALOG_BANK,2,"{E0D01B}Bank","Abheben\r\nEinzahlen\r\nÜberweisen\r\nKontoauszug","Bestätigen","Abbrechen");
  3395. case DIALOG_UBERWEISEN: ShowPlayerDialog(playerid, DIALOG_BANK,2,"{E0D01B}Bank","Abheben\r\nEinzahlen\r\nÜberweisen\r\nKontoauszug","Bestätigen","Abbrechen");
  3396. case DIALOG_UBERWEISUNG: ShowPlayerDialog(playerid, DIALOG_BANK,2,"{E0D01B}Bank","Abheben\r\nEinzahlen\r\nÜberweisen\r\nKontoauszug","Bestätigen","Abbrechen");
  3397. }
  3398. }
  3399. switch(dialogid)
  3400. {
  3401. case DIALOG_REGISTER:
  3402. {
  3403. if(response)
  3404. {
  3405. if(strlen(inputtext) == 0) // Wenn kein Passwort angegebene wurde
  3406. {
  3407. ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrierung","Dein Passwort ist zu Kurz..\nBitte gib ein neues Passwort ein:","Registrieren","Verlassen");
  3408. return 1;
  3409. }
  3410. else
  3411. {
  3412. SavePlayer(playerid);
  3413. CreateAccount(playerid, inputtext); //Account wird erstellt
  3414. SetPVarInt(playerid,"Eingeloggt",1); //Die variable wird auf 1 gesetzt, damit wir nun die Skin Auswahl benutzen können ohne wieder nach unserem Passwort gefragt zu werden.
  3415. SpawnPlayer(playerid);
  3416. return 1;
  3417. }
  3418. }
  3419. else
  3420. {
  3421. Kick(playerid); //Wenn auf Abbrechen geklickt wurde, wird der Spieler gekickt damit man ohne Account nicht Spielen kann.
  3422. }
  3423. }
  3424. case DIALOG_LOGIN:
  3425. {
  3426. if(response)
  3427. {
  3428. if(strlen(inputtext) == 0) // Wenn kein Passwort angegebene wurde
  3429. {
  3430. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Anmeldung","Das angegebene Passwort ist Falsch..\nBitte wiederhole den Vorgang erneut:","Anmelden","Verlassen");
  3431. return 1;
  3432. }
  3433. else
  3434. {
  3435. new SpielerName[MAX_PLAYER_NAME];
  3436. GetPlayerName(playerid, SpielerName, MAX_PLAYER_NAME);
  3437. if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName), true)) // Wir holen uns das Passwort aus der MySQL Datenbank und überprüfen es mit dem angegebenen passwort.
  3438. {
  3439. SetPVarInt(playerid,"Eingeloggt",1); //Falls beide passwörter übereinstimmen wird die Variable auf 1 gesetzt damit wir die Skin auswahl benutzen können.
  3440. LoadPlayer(playerid); //Der Spieler wird "geladen", speich es werden seine Daten aus der Datenbank geholt und in variablen gespeichert um diese im Skript zu verwenden.
  3441. SpawnPlayer(playerid); //Wir lassen den Spieler Spawnen
  3442. return 1;
  3443. }
  3444. else
  3445. {
  3446. //Wenn das Passwort falsch war, lassen wir erneut das Login fenster erscheinen damit der Spieler das Richtige Passwort eingibt.
  3447. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Anmeldung","Falsches Passwort.\nBitte melde dich jetzt mit dem richtigen Passwort an:","Anmelden","Verlassen");
  3448. return 1;
  3449. }
  3450. }
  3451. }
  3452. else
  3453. {
  3454. Kick(playerid); //Wenn auf Abbrechen geklickt wurde, wird der Spieler gekickt damit man ohne Account nicht Spielen kann.
  3455. }
  3456. }
  3457. case DIALOG_ALTER:
  3458. {
  3459. if(response)
  3460. {
  3461. if(strlen(inputtext) == 0)
  3462. {
  3463. ShowPlayerDialog(playerid,DIALOG_ALTER,DIALOG_STYLE_INPUT,"Alter","Gib dein Alter an:","Angeben","Verlassen");
  3464. return 1;
  3465. }
  3466. else
  3467. {
  3468. new alter = strval(inputtext);
  3469. SpielerInfo[playerid][pAge] = alter;
  3470. new string[250];
  3471. SpielerInfo[playerid][pBerechtigt] = 0;
  3472. format(string, sizeof(string),"Du bist %d Jahre alt ", alter);
  3473. SpielerInfo[playerid][Firstlogin] = 1;
  3474. SendClientMessage(playerid, FARBE_FADE1,string);
  3475. SavePlayer(playerid);
  3476. KillTimer(TutTimer[playerid]); // der Tutorial Timer wird beendet
  3477. TutTime[playerid] = -1;
  3478. SetPlayerPos(playerid,1645.1366,-2286.5884,-1.2037);
  3479. SpawnPlayer(playerid);
  3480. }
  3481. }
  3482. else
  3483. {
  3484. Kick(playerid);
  3485. }
  3486. }
  3487. case DIALOG_SEX:
  3488. {
  3489. if (response)
  3490. {
  3491. if(listitem == 0)
  3492. {
  3493. SpielerInfo[playerid][pSex] = 1;
  3494. ShowPlayerDialog(playerid,DIALOG_ALTER,DIALOG_STYLE_INPUT,"Alter","Gib dein Alter an:","Angeben","Verlassen");
  3495. }
  3496. if(listitem == 1)
  3497. {
  3498. SpielerInfo[playerid][pSex] = 2;
  3499. ShowPlayerDialog(playerid,DIALOG_ALTER,DIALOG_STYLE_INPUT,"Alter","Gib dein Alter an:","Angeben","Verlassen");
  3500. }
  3501. }
  3502. }
  3503. }
  3504. if(dialogid != DIALOG_ID) return false;
  3505. if(!IstAdmin(playerid)) return false;
  3506. dialogid = GetPVarInt(playerid, "dtac_dialog");
  3507. if(dialogid == SUBDIALOG_MAIN)
  3508. {
  3509. if(!response) return false;
  3510. if(listitem == 0)
  3511. {
  3512. SetPVarInt(playerid, "dtac_dialog", SUBDIALOG_CONFIG);
  3513. ShowPlayerDialog(playerid, DIALOG_ID, DIALOG_STYLE_LIST, "Anticheat / Config", "Toogle systemstate\nChange extendet propertys", "Ok", "Exit");
  3514. }
  3515. else if(listitem == 1)
  3516. {
  3517. SetPVarInt(playerid, "dtac_dialog", SUBDIALOG_BAN);
  3518. ShowPlayerDialog(playerid, DIALOG_ID, DIALOG_STYLE_MSGBOX, "Anticheat / Ban", "Comming soon", "Ok", "Exit");
  3519. }
  3520. }
  3521. else if(dialogid == SUBDIALOG_CONFIG)
  3522. {
  3523. if(!response) return false;
  3524. if(listitem == 0)
  3525. {
  3526. new string[512]; // We need such a big string ;)
  3527.  
  3528. switch(DTAC_Config[money])
  3529. {
  3530. case CHEAT_STATUS_OFF:
  3531. {
  3532. format(string, sizeof(string), "{FFFFFF}Money ( {FF0000}off{FFFFFF} )\n");
  3533. }
  3534. case CHEAT_STATUS_UNDO:
  3535. {
  3536. format(string, sizeof(string), "{FFFFFF}Money ( {00FF00}restore{FFFFFF} )\n");
  3537. }
  3538. case CHEAT_STATUS_WARN:
  3539. {
  3540. format(string, sizeof(string), "{FFFFFF}Money ( {0000FF}warn{FFFFFF} )\n");
  3541. }
  3542. case CHEAT_STATUS_KICK:
  3543. {
  3544. format(string, sizeof(string), "{FFFFFF}Money ( {0000FF}kick{FFFFFF} )\n");
  3545. }
  3546. case CHEAT_STATUS_BAN:
  3547. {
  3548. format(string, sizeof(string), "{FFFFFF}Money ( {0000FF}ban{FFFFFF} )\n");
  3549. }
  3550. default:
  3551. {
  3552. format(string, sizeof(string), "{FFFFFF}Money ( {FF00FF}???{FFFFFF} )\n");
  3553. }
  3554. }
  3555. switch(DTAC_Config[driveby])
  3556. {
  3557. case CHEAT_STATUS_OFF:
  3558. {
  3559. format(string, sizeof(string), "%s{FFFFFF}Driveby ( {FF0000}off{FFFFFF} )\n", string);
  3560. }
  3561. case CHEAT_STATUS_UNDO:
  3562. {
  3563. format(string, sizeof(string), "%s{FFFFFF}Driveby ( {FF0000}ignore{FFFFFF} )\n", string);
  3564. }
  3565. case CHEAT_STATUS_WARN:
  3566. {
  3567. format(string, sizeof(string), "%s{FFFFFF}Driveby ( {0000FF}warn{FFFFFF} )\n", string);
  3568. }
  3569. case CHEAT_STATUS_KICK:
  3570. {
  3571. format(string, sizeof(string), "%s{FFFFFF}Driveby ( {0000FF}kick{FFFFFF} )\n", string);
  3572. }
  3573. case CHEAT_STATUS_BAN:
  3574. {
  3575. format(string, sizeof(string), "%s{FFFFFF}Driveby ( {0000FF}ban{FFFFFF} )\n", string);
  3576. }
  3577. default:
  3578. {
  3579. format(string, sizeof(string), "%s{FFFFFF}Driveby ( {FF00FF}???{FFFFFF} )\n", string);
  3580. }
  3581. }
  3582. switch(DTAC_Config[spam])
  3583. {
  3584. case CHEAT_STATUS_OFF:
  3585. {
  3586. format(string, sizeof(string), "%s{FFFFFF}Spam ( {FF0000}off{FFFFFF} )\n", string);
  3587. }
  3588. case CHEAT_STATUS_UNDO:
  3589. {
  3590. format(string, sizeof(string), "%s{FFFFFF}Spam ( {FF0000}mute{FFFFFF} )\n", string);
  3591. }
  3592. case CHEAT_STATUS_WARN:
  3593. {
  3594. format(string, sizeof(string), "%s{FFFFFF}Spam ( {0000FF}warn{FFFFFF} )\n", string);
  3595. }
  3596. case CHEAT_STATUS_KICK:
  3597. {
  3598. format(string, sizeof(string), "%s{FFFFFF}Spam ( {0000FF}kick{FFFFFF} )\n", string);
  3599. }
  3600. case CHEAT_STATUS_BAN:
  3601. {
  3602. format(string, sizeof(string), "%s{FFFFFF}Spam ( {0000FF}ban{FFFFFF} )\n", string);
  3603. }
  3604. default:
  3605. {
  3606. format(string, sizeof(string), "%s{FFFFFF}Spam ( {FF00FF}???{FFFFFF} )\n", string);
  3607. }
  3608. }
  3609. switch(DTAC_Config[heal])
  3610. {
  3611. case CHEAT_STATUS_OFF:
  3612. {
  3613. format(string, sizeof(string), "%s{FFFFFF}Heal ( {FF0000}off{FFFFFF} )\n", string);
  3614. }
  3615. case CHEAT_STATUS_UNDO:
  3616. {
  3617. format(string, sizeof(string), "%s{FFFFFF}Heal ( {00FF00}restore{FFFFFF} )\n", string);
  3618. }
  3619. case CHEAT_STATUS_WARN:
  3620. {
  3621. format(string, sizeof(string), "%s{FFFFFF}Heal ( {0000FF}warn{FFFFFF} )\n", string);
  3622. }
  3623. case CHEAT_STATUS_KICK:
  3624. {
  3625. format(string, sizeof(string), "%s{FFFFFF}Heal ( {0000FF}kick{FFFFFF} )\n", string);
  3626. }
  3627. case CHEAT_STATUS_BAN:
  3628. {
  3629. format(string, sizeof(string), "%s{FFFFFF}Heal ( {0000FF}ban{FFFFFF} )\n", string);
  3630. }
  3631. default:
  3632. {
  3633. format(string, sizeof(string), "%s{FFFFFF}Heal ( {FF00FF}???{FFFFFF} )\n", string);
  3634. }
  3635. }
  3636. switch(DTAC_Config[armour])
  3637. {
  3638. case CHEAT_STATUS_OFF:
  3639. {
  3640. format(string, sizeof(string), "%s{FFFFFF}Armour ( {FF0000}off{FFFFFF} )\n", string);
  3641. }
  3642. case CHEAT_STATUS_UNDO:
  3643. {
  3644. format(string, sizeof(string), "%s{FFFFFF}Armour ( {00FF00}restore{FFFFFF} )\n", string);
  3645. }
  3646. case CHEAT_STATUS_WARN:
  3647. {
  3648. format(string, sizeof(string), "%s{FFFFFF}Armour ( {0000FF}warn{FFFFFF} )\n", string);
  3649. }
  3650. case CHEAT_STATUS_KICK:
  3651. {
  3652. format(string, sizeof(string), "%s{FFFFFF}Armour ( {0000FF}kick{FFFFFF} )\n", string);
  3653. }
  3654. case CHEAT_STATUS_BAN:
  3655. {
  3656. format(string, sizeof(string), "%s{FFFFFF}Armour ( {0000FF}ban{FFFFFF} )\n", string);
  3657. }
  3658. default:
  3659. {
  3660. format(string, sizeof(string), "%s{FFFFFF}Armour ( {FF00FF}???{FFFFFF} )\n", string);
  3661. }
  3662. }
  3663. switch(DTAC_Config[jetpack])
  3664. {
  3665. case CHEAT_STATUS_OFF:
  3666. {
  3667. format(string, sizeof(string), "%s{FFFFFF}Jetpack ( {FF0000}off{FFFFFF} )\n", string);
  3668. }
  3669. case CHEAT_STATUS_UNDO:
  3670. {
  3671. format(string, sizeof(string), "%s{FFFFFF}Jetpack ( {00FF00}restore{FFFFFF} )\n", string);
  3672. }
  3673. case CHEAT_STATUS_WARN:
  3674. {
  3675. format(string, sizeof(string), "%s{FFFFFF}Jetpack ( {0000FF}warn{FFFFFF} )\n", string);
  3676. }
  3677. case CHEAT_STATUS_KICK:
  3678. {
  3679. format(string, sizeof(string), "%s{FFFFFF}Jetpack ( {0000FF}kick{FFFFFF} )\n", string);
  3680. }
  3681. case CHEAT_STATUS_BAN:
  3682. {
  3683. format(string, sizeof(string), "%s{FFFFFF}Jetpack ( {0000FF}ban{FFFFFF} )\n", string);
  3684. }
  3685. default:
  3686. {
  3687. format(string, sizeof(string), "%s{FFFFFF}Jetpack ( {FF00FF}???{FFFFFF} )\n", string);
  3688. }
  3689. }
  3690. switch(DTAC_Config[weapon])
  3691. {
  3692. case CHEAT_STATUS_OFF:
  3693. {
  3694. format(string, sizeof(string), "%s{FFFFFF}Weapon ( {FF0000}off{FFFFFF} )\n", string);
  3695. }
  3696. case CHEAT_STATUS_UNDO:
  3697. {
  3698. format(string, sizeof(string), "%s{FFFFFF}Weapon ( {00FF00}restore{FFFFFF} )\n", string);
  3699. }
  3700. case CHEAT_STATUS_WARN:
  3701. {
  3702. format(string, sizeof(string), "%s{FFFFFF}Weapon ( {0000FF}warn{FFFFFF} )\n", string);
  3703. }
  3704. case CHEAT_STATUS_KICK:
  3705. {
  3706. format(string, sizeof(string), "%s{FFFFFF}Weapon ( {0000FF}kick{FFFFFF} )\n", string);
  3707. }
  3708. case CHEAT_STATUS_BAN:
  3709. {
  3710. format(string, sizeof(string), "%s{FFFFFF}Weapon ( {0000FF}ban{FFFFFF} )\n", string);
  3711. }
  3712. default:
  3713. {
  3714. format(string, sizeof(string), "%s{FFFFFF}Weapon ( {FF00FF}???{FFFFFF} )\n", string);
  3715. }
  3716. }
  3717. switch(DTAC_Config[spawnkill])
  3718. {
  3719. case CHEAT_STATUS_OFF:
  3720. {
  3721. format(string, sizeof(string), "%s{FFFFFF}Spawnprotection ( {FF0000}off{FFFFFF} )\n", string);
  3722. }
  3723. case CHEAT_STATUS_UNDO:
  3724. {
  3725. format(string, sizeof(string), "%s{FFFFFF}Spawnprotection ( {00FF00}unkillable{FFFFFF} )\n", string);
  3726. }
  3727. case CHEAT_STATUS_WARN:
  3728. {
  3729. format(string, sizeof(string), "%s{FFFFFF}Spawnprotection ( {0000FF}warn{FFFFFF} )\n", string);
  3730. }
  3731. case CHEAT_STATUS_KICK:
  3732. {
  3733. format(string, sizeof(string), "%s{FFFFFF}Spawnprotection ( {0000FF}kick{FFFFFF} )\n", string);
  3734. }
  3735. case CHEAT_STATUS_BAN:
  3736. {
  3737. format(string, sizeof(string), "%s{FFFFFF}Spawnprotection ( {0000FF}ban{FFFFFF} )\n", string);
  3738. }
  3739. default:
  3740. {
  3741. format(string, sizeof(string), "%s{FFFFFF}Spawnprotection ( {FF00FF}???{FFFFFF} )\n", string);
  3742. }
  3743. }
  3744. switch(DTAC_Config[quickturn])
  3745. {
  3746. case CHEAT_STATUS_OFF:
  3747. {
  3748. format(string, sizeof(string), "%s{FFFFFF}Quickturn ( {FF0000}off{FFFFFF} )\n", string);
  3749. }
  3750. case CHEAT_STATUS_UNDO:
  3751. {
  3752. format(string, sizeof(string), "%s{FFFFFF}Quickturn ( {00FF00}restore{FFFFFF} )\n", string);
  3753. }
  3754. case CHEAT_STATUS_WARN:
  3755. {
  3756. format(string, sizeof(string), "%s{FFFFFF}Quickturn ( {0000FF}warn{FFFFFF} )\n", string);
  3757. }
  3758. case CHEAT_STATUS_KICK:
  3759. {
  3760. format(string, sizeof(string), "%s{FFFFFF}Quickturn ( {0000FF}kick{FFFFFF} )\n", string);
  3761. }
  3762. case CHEAT_STATUS_BAN:
  3763. {
  3764. format(string, sizeof(string), "%s{FFFFFF}Quickturn ( {0000FF}ban{FFFFFF} )\n", string);
  3765. }
  3766. default:
  3767. {
  3768. format(string, sizeof(string), "%s{FFFFFF}Quickturn ( {FF00FF}???{FFFFFF} )\n", string);
  3769. }
  3770. }
  3771. switch(DTAC_Config[joypad])
  3772. {
  3773. case CHEAT_STATUS_OFF:
  3774. {
  3775. format(string, sizeof(string), "%s{FFFFFF}Joypad ( {FF0000}off{FFFFFF} )\n", string);
  3776. }
  3777. case CHEAT_STATUS_UNDO:
  3778. {
  3779. format(string, sizeof(string), "%s{FFFFFF}Joypad ( {00FF00}tell him to turn off{FFFFFF} )\n", string);
  3780. }
  3781. case CHEAT_STATUS_WARN:
  3782. {
  3783. format(string, sizeof(string), "%s{FFFFFF}Joypad ( {0000FF}warn{FFFFFF} )\n", string);
  3784. }
  3785. case CHEAT_STATUS_KICK:
  3786. {
  3787. format(string, sizeof(string), "%s{FFFFFF}Joypad ( {0000FF}kick{FFFFFF} )\n", string);
  3788. }
  3789. case CHEAT_STATUS_BAN:
  3790. {
  3791. format(string, sizeof(string), "%s{FFFFFF}Joypad ( {0000FF}ban{FFFFFF} )\n", string);
  3792. }
  3793. default:
  3794. {
  3795. format(string, sizeof(string), "%s{FFFFFF}Joypad ( {FF00FF}???{FFFFFF} )\n", string);
  3796. }
  3797. }
  3798. SetPVarInt(playerid, "dtac_dialog", SUBDIALOG_CONFIG_EDIT);
  3799. ShowPlayerDialog(playerid, DIALOG_ID, DIALOG_STYLE_LIST, "Anticheat / Config / Set Modes", string, "Change", "Exit");
  3800. }
  3801. else if(listitem == 1)
  3802. {
  3803. // Extendet configuration
  3804. SetPVarInt(playerid, "dtac_dialog", SUBDIALOG_CONFIG_EXTENDET);
  3805. new string[150]; // Blame, string is at least 129 chars >.<
  3806.  
  3807. format(string, 128, "{FFFFFF}Max. Warns: {FF0000}%d{FFFFFF}\n", DTAC_Config[maxwarns]);
  3808. if(DTAC_Config[savewarns])
  3809. format(string, 128, "%s{FFFFFF}Save Warns: {FF0000}true{FFFFFF}\n", string);
  3810. else
  3811. format(string, 128, "%s{FFFFFF}Save Warns: {FF0000}false{FFFFFF}\n", string);
  3812. format(string, 128, "%s{FFFFFF}Spawn-Protection time: {FF0000}%d{FFFFFF}", string, DTAC_Config[spawnprotecttime]);
  3813.  
  3814. ShowPlayerDialog(playerid, DIALOG_ID, DIALOG_STYLE_LIST, "Anticheat / Config / Extendet", string, "Ok", "Exit");
  3815. }
  3816.  
  3817. }
  3818. else if(dialogid == SUBDIALOG_CONFIG_EDIT)
  3819. {
  3820. if(!response) return false;
  3821. switch(listitem)
  3822. {
  3823. case 0:
  3824. {
  3825. DTAC_Config[money]++;
  3826. if(DTAC_Config[money] > 4)
  3827. DTAC_Config[money] = 0;
  3828. }
  3829. case 1:
  3830. {
  3831. DTAC_Config[driveby]++;
  3832. if(DTAC_Config[driveby] > 4)
  3833. DTAC_Config[driveby] = 0;
  3834. }
  3835. case 2:
  3836. {
  3837. DTAC_Config[spam]++;
  3838. if(DTAC_Config[spam] > 4)
  3839. DTAC_Config[spam] = 0;
  3840. }
  3841. case 3:
  3842. {
  3843. DTAC_Config[heal]++;
  3844. if(DTAC_Config[heal] > 4)
  3845. DTAC_Config[heal] = 0;
  3846. }
  3847. case 4:
  3848. {
  3849. DTAC_Config[armour]++;
  3850. if(DTAC_Config[armour] > 4)
  3851. DTAC_Config[armour] = 0;
  3852. }
  3853. case 5:
  3854. {
  3855. DTAC_Config[jetpack]++;
  3856. if(DTAC_Config[jetpack] > 4)
  3857. DTAC_Config[jetpack] = 0;
  3858. }
  3859. case 6:
  3860. {
  3861. DTAC_Config[weapon]++;
  3862. if(DTAC_Config[weapon] > 4)
  3863. DTAC_Config[weapon] = 0;
  3864. }
  3865. case 7:
  3866. {
  3867. DTAC_Config[spawnkill]++;
  3868. if(DTAC_Config[spawnkill] > 4)
  3869. DTAC_Config[spawnkill] = 0;
  3870. }
  3871. case 8:
  3872. {
  3873. DTAC_Config[quickturn]++;
  3874. if(DTAC_Config[quickturn] > 4)
  3875. DTAC_Config[quickturn] = 0;
  3876. }
  3877. case 9:
  3878. {
  3879. DTAC_Config[joypad]++;
  3880. if(DTAC_Config[joypad] > 4)
  3881. DTAC_Config[joypad] = 0;
  3882. }
  3883. }
  3884. // "Bugusing" / show the dialog again
  3885. SetPVarInt(playerid, "dtac_dialog", SUBDIALOG_CONFIG);
  3886. OnDialogResponse(playerid, DIALOG_ID, true, 0, "");
  3887. }
  3888. else if(dialogid == SUBDIALOG_CONFIG_EXTENDET)
  3889. {
  3890. if(!response) return false;
  3891. switch(listitem)
  3892. {
  3893. case 0:
  3894. {
  3895. DTAC_Config[maxwarns]++;
  3896. if(DTAC_Config[maxwarns] > 5)
  3897. DTAC_Config[maxwarns] = 2;
  3898. }
  3899. case 1:
  3900. {
  3901. DTAC_Config[savewarns] = DTAC_Config[savewarns] == false;
  3902. }
  3903. case 2:
  3904. {
  3905. DTAC_Config[spawnprotecttime]++;
  3906. if(DTAC_Config[spawnprotecttime] > 5)
  3907. DTAC_Config[spawnprotecttime] = 0;
  3908. }
  3909. }
  3910. // "Bugusing" / show the dialog again
  3911. SetPVarInt(playerid, "dtac_dialog", SUBDIALOG_CONFIG);
  3912. OnDialogResponse(playerid, DIALOG_ID, true, 1, "");
  3913. }
  3914. else if(dialogid == SUBDIALOG_BAN)
  3915. {
  3916. if(!response) return false;
  3917. }
  3918. return 1;
  3919. }
  3920.  
  3921. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  3922. {
  3923. if(istBeamter(playerid) && IsPlayerInAnyVehicle(playerid))
  3924. {
  3925. ShowPlayerDialog(playerid,DIALOG_OPTION,DIALOG_STYLE_LIST,"Option","Wantedkatalog","Auswählen","Beenden");
  3926. Adminbanname = clickedplayerid;
  3927. WID = clickedplayerid;
  3928. }
  3929.  
  3930. return 1;
  3931. }
  3932.  
  3933. //===== OCMD =====
  3934. /*Jobbefehle*/
  3935. ocmd:test(playerid,params[]){
  3936. PlayAudioStreamForPlayer(playerid,"http://fairnet-arts.de/mp3/Milow%20-%20Ayo%20Technology.mp3");
  3937. return 1;
  3938. }
  3939. ocmd:anrufen(playerid, params[]){
  3940. new pID, string[200];
  3941. if(Anruf[playerid] != 0) return SendClientMessage(playerid, COLOR_CORNSILK, "Du telefonierst bereits");
  3942. if(Anruf[pID] != 0) return SendClientMessage(playerid, COLOR_CORNSILK, "Der Teilnehmer ist nicht erreichbar");
  3943. if(sscanf(params, "d",pID)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /anrufen [ID]");
  3944. format(string,sizeof(string),"%s ruft sie an(/abheben)",getName(playerid));
  3945. SendClientMessage(pID, COLOR_CORNSILK,string);
  3946. Anrufername = pID;
  3947. Anruf[playerid] = 1;
  3948. return 1;
  3949. }
  3950. ocmd:auflegen(playerid, params[]){
  3951. if(Anruf[playerid] != 1) return SendClientMessage(playerid, COLOR_CORNSILK, "Du telefonierst nicht");
  3952. Anruf[playerid] = 0;
  3953. return 1;
  3954. }
  3955. ocmd:abheben(playerid, params[]){
  3956. if(Anruf[playerid] != 0) return SendClientMessage(playerid, COLOR_CORNSILK, "Du telefonierst bereits");
  3957. Anruf[playerid] = 1;
  3958. return 1;
  3959. }
  3960. ocmd:fahrstunde(playerid, params[]){
  3961. new pID;
  3962. if(SpielerInfo[playerid][pMember] == 11){
  3963. if(sscanf(params, "d",pID)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /fahrstunde [ID]");
  3964. if(SpielerInfo[pID][pFahrschule] < 1){
  3965. SpielerInfo[pID][pFahrschule] = 2;
  3966. }
  3967. else if(SpielerInfo[pID][pFahrschule] > 0)
  3968. {
  3969. SpielerInfo[pID][pFahrschule] = 0;
  3970. }
  3971. }
  3972. return 1;
  3973. }
  3974. ocmd:beladen(playerid, params[])
  3975. {
  3976. if(IsPlayerInRangeOfPoint(playerid, 3.0, 2869.5420,892.1075,10.7500) && obbeladen[playerid] != 1){
  3977. if(SpielerInfo[playerid][pTour] != 1 && SpielerInfo[playerid][pJob] != 3) return SendClientMessage(playerid, COLOR_CORNSILK," Du warst gerade auf einer Tour");
  3978. SendClientMessage(playerid, COLOR_YELLOW, "Steig nun in dein Fahrzeug und beginn deine Tour '/tour'");
  3979. obbeladen[playerid] = 1;
  3980. }
  3981. return 1;
  3982. }
  3983. ocmd:tour(playerid, params[])
  3984. {
  3985. new vehicle;
  3986. vehicle = GetPlayerVehicleID(playerid);
  3987. if(SpielerInfo[playerid][pTour] != 1){
  3988. if(!IsTrailerAttachedToVehicle(vehicle)) return SendClientMessage(playerid, COLOR_YELLOW,"Kein Anhänger");
  3989. if(obbeladen[playerid] == 1){
  3990. Starttour(playerid);
  3991. SendClientMessage(playerid, COLOR_YELLOW,"Deine Tour hat begonnen");}}
  3992. return 1;
  3993. }
  3994.  
  3995. /*Allgemein*/
  3996. ocmd:admins(playerid, params[])
  3997. {
  3998. new i = 0, string[256], Rang[100];
  3999. for(; i < MAX_PLAYERS; i++)
  4000. {
  4001. if(IsPlayerConnected(i))
  4002. {
  4003. if(SpielerInfo[i][pLevel] > 0)
  4004. {
  4005. switch(SpielerInfo[i][pLevel])
  4006. {
  4007. case 1: Rang = "{FC4F11}Supporter";
  4008. case 2: Rang = "{C6C61E}Moderator";
  4009. case 3: Rang = "{C6C61E}Super Moderator";
  4010. case 4: Rang = "{EBAD1C}Administrator";
  4011. case 5: Rang = "{EBAD1C}Super Admin";
  4012. case 6: Rang = "{C43959}Scriptingteam";
  4013. case 7: Rang = "{EBAD1C}Kon-Admin";
  4014. case 8: Rang = "{AF00FA}Kon-Servermanager";
  4015. case 9: Rang = "{AF00FA}Servermanager";
  4016. case 1338: Rang = "{1C7CEB}Projektleiter";
  4017. }
  4018. format(string, 256, "\n\t%s\t\t%s\n", getName(i),Rang);
  4019. ShowPlayerDialog(playerid,DIALOG_ADMINS, DIALOG_STYLE_MSGBOX, "{1C7CEB}Admins{FFFFFF}", string, "", "");
  4020. }
  4021. }
  4022. }
  4023. return 1;
  4024. }
  4025.  
  4026. ocmd:wanteds(playerid, params[])
  4027. {
  4028. if(istBeamter(playerid)){
  4029. SendClientMessage(playerid, COLOR_CORNSILK,"Wantedliste");
  4030. SendClientMessage(playerid, COLOR_LIGHTBLUE,"__________________________________________");
  4031. new i = 0, string[256];
  4032. for(; i < MAX_PLAYERS; i++)
  4033. {
  4034. if(IsPlayerConnected(i))
  4035. {
  4036. if(SpielerInfo[i][pWanted] > 0)
  4037. {
  4038. format(string, 256, "- %s \tWanted: %d\n", getName(i),SpielerInfo[i][pWanted]);
  4039. SendClientMessage(playerid, COLOR_CORNSILK, string);
  4040. }
  4041. SendClientMessage(playerid, COLOR_LIGHTBLUE,"__________________________________________");
  4042. }
  4043. }}
  4044. return 1;
  4045. }
  4046. ocmd:afklist(playerid, params[])
  4047. {
  4048. SendClientMessage(playerid, COLOR_LIGHTBLUE,"AFK List");
  4049. SendClientMessage(playerid, COLOR_LIGHTBLUE,"__________________________________________");
  4050. new i = 0, aname[256], string[256];
  4051. for(; i < MAX_PLAYERS; i++)
  4052. {
  4053. if(IsPlayerConnected(i))
  4054. {
  4055. if(GetPVarInt(i,"AFK")==1)
  4056. {
  4057. GetPlayerName(i, aname, sizeof(aname));
  4058. format(string, 256, "- %s", aname);
  4059. SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
  4060. }
  4061. SendClientMessage(playerid, COLOR_LIGHTBLUE,"__________________________________________");
  4062. }
  4063. }
  4064. return 1;
  4065. }
  4066. ocmd:afk(playerid, params[])
  4067. {
  4068. if(GetPVarInt(playerid,"AFK")==0)
  4069. {
  4070. new reason[128], string[128];
  4071. if(sscanf(params,"s",reason)) return SendClientMessage(playerid,COLOR_YELLOW,"Benutzung:/afk [Grund]");
  4072. format(string,sizeof(string),"Spieler: %s ist AFK gegangen, Grund: %s",getName(playerid),reason);
  4073. SendClientMessageToAll(COLOR_BLUE,string);
  4074. TogglePlayerControllable(playerid,0);
  4075. SetPlayerVirtualWorld(playerid, 2);
  4076. SetPVarInt(playerid, "AFK", 1);
  4077. }
  4078. if(GetPVarInt(playerid,"AFK")==1)
  4079. {
  4080. SendClientMessage(playerid,COLOR_YELLOW,"Du bist bereits im AFK Modus, tippe /back.");
  4081. }
  4082. return 1;
  4083. }
  4084.  
  4085. ocmd:back(playerid, params[])
  4086. {
  4087. if(GetPVarInt(playerid,"AFK")!=1)
  4088. {
  4089. SendClientMessage(playerid,COLOR_YELLOW,"Du bist nicht AFK!");
  4090. }
  4091. if(GetPVarInt(playerid,"AFK")==1)
  4092. {
  4093. new string[128],stringg[128];
  4094. if(sscanf(params,"s"))
  4095. format(string,sizeof(string),"Spieler: %s ist vom AFK-Modus zürck! ",getName(playerid));
  4096. format(stringg,sizeof(stringg),"Willkommen zurück %s",getName(playerid));
  4097. SendClientMessageToAll(COLOR_BLUE,string);
  4098. GameTextForPlayer(playerid,stringg,5000,5);
  4099. TogglePlayerControllable(playerid,1);
  4100. SetPVarInt(playerid, "AFK", 0);
  4101. SetPlayerVirtualWorld(playerid, 0);
  4102. }
  4103. return 1;
  4104. }
  4105.  
  4106. ocmd:sammeln(playerid, params[])
  4107. {
  4108. if(SpielerInfo[playerid][pDrugsP] >= 1) return 1;
  4109. if(AtDrug(playerid))
  4110. {
  4111. SpielerInfo[playerid][pDrugsP] += 1;
  4112. SendClientMessage(playerid, COLOR_YELLOW,"{E0C91B}x¸,ø¤°``°¤ø,¸{FAFAFA} Du hast Drogen gefunden{E0C91B} ¸,ø¤°``°¤ø,¸x");
  4113. SendClientMessage(playerid, COLOR_YELLOW,"{E0C91B}x¸,ø¤°``°¤ø,¸{FAFAFA} Pflege diese nun oder verkaufe sie{E0C91B} ¸,ø¤°``°¤ø,¸x");
  4114. }
  4115. return 1;
  4116. }
  4117. ocmd:verhandlung(playerid, params[])
  4118. {
  4119. if(SpielerInfo[playerid][filmgehabt] == 1)
  4120. {
  4121. Film(playerid);
  4122. }
  4123. else if(SpielerInfo[playerid][filmgehabt] == 0)
  4124. {
  4125. Filmende(playerid);
  4126. }
  4127. return 1;
  4128. }
  4129. ocmd:eject(playerid,params[])
  4130. {
  4131. new pID;
  4132. if(sscanf(params,"u",pID))return SendClientMessage(playerid,0xB0AFB0FF,"/eject [ID/Name]");
  4133. if(!IsPlayerConnected(pID))return SendClientMessage(playerid,0xB0AFB0FF,"Dieser Spieler ist nicht online");
  4134. if(pID == playerid) return SendClientMessage(playerid,0xB0AFB0FF,"Du kannst dich nicht selber rausschmeißen");
  4135. if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)return SendClientMessage(playerid,0xB0AFB0FF,"Du bist nicht der Fahrer");
  4136. {
  4137. new str[128] ,str2[128];
  4138. format(str,sizeof(str),"%s hat dich rausgeworfen",getName(playerid));
  4139. format(str2,sizeof(str2),"Du hast %s rausgeworfen",getName(pID));
  4140. SendClientMessage(pID,0xB0AFB0FF, str);
  4141. SendClientMessage(playerid,0xB0AFB0FF,str2);
  4142. RemovePlayerFromVehicle(pID);
  4143. TogglePlayerControllable(pID,1);
  4144. }
  4145. return 1;
  4146. }
  4147. ocmd:ausweis(playerid,params)
  4148. {
  4149. profile(playerid);
  4150. return 1;
  4151. }
  4152. ocmd:startbonus(playerid, params[]){
  4153. if(IsPlayerInRangeOfPoint(playerid, 3.0,2825.1450,1284.0991,10.7652)){
  4154. if(SpielerInfo[playerid][pUserLevel] <= 2 && GetPlayerScore(playerid) < 2)
  4155. {
  4156. Levelup(playerid,2);
  4157. GivePlayerMoney(playerid, 6000);
  4158. SendClientMessage(playerid, COLOR_YELLOW,"{E0C91B}x¸,ø¤°``°¤ø,¸{FAFAFA} Streetlifehistory Startbonus{E0C91B} ¸,ø¤°``°¤ø,¸x");
  4159. SendClientMessage(playerid, COLOR_GREEN,"{E0C91B}x¸,ø¤°``°¤ø,¸{FAFAFA} Du erhälst den Bonus nur einmal {E0C91B}¸,ø¤°``°¤ø,¸x");
  4160. SendClientMessage(playerid, COLOR_GREEN,"{E0C91B}x¸,ø¤°``°¤ø,¸{FAFAFA} ...du bist nun Level - 2{E0C91B} ¸,ø¤°``°¤ø,¸x");
  4161. SendClientMessage(playerid, COLOR_GREEN,"{E0C91B}x¸,ø¤°``°¤ø,¸{FAFAFA} und du hast +6.000 € erhalten.{E0C91B} ¸,ø¤°``°¤ø,¸x");
  4162. }}
  4163. return 1;
  4164. }
  4165. ocmd:atm(playerid, params[]){
  4166. if(!AtATM(playerid)) return SendClientMessage(playerid, COLOR_YELLOW,"{E0C91B}Warnung{FAFAFA} Du bist nicht am ATM");{
  4167. ShowPlayerDialog(playerid, DIALOG_BANK,2,"Bank","Abheben\r\nEinzahlen\r\nÜberweisen\r\nKontoauszug","Bestätigen","Abbrechen");
  4168. }
  4169. return 1;
  4170. }
  4171.  
  4172. ocmd:onews(playerid, params[]){
  4173. new occtext[256], string[256];
  4174. if(sscanf(params, "s",occtext)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /o [text]");
  4175. format(string, sizeof(string), "((%s : %s ))", getName(playerid), occtext);
  4176. SendClientMessageToAll(Weiss, string);
  4177. //OOCNews(Weiss, string);
  4178. return 1;
  4179. }
  4180. ocmd:erlaubeperso(playerid, params[]){
  4181. if(IstAdmin(playerid))
  4182. {
  4183. new pID;
  4184. if(sscanf(params, "u",pID)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /erlaubeperso [ID]");
  4185. SpielerInfo[pID][pBerechtigt] = 1;
  4186. }
  4187. return 1;
  4188. }
  4189. ocmd:perso(playerid, params[]){
  4190. if(SpielerInfo[playerid][pBerechtigt] == 1){
  4191. ShowPlayerDialog(playerid,DIALOG_SEX, DIALOG_STYLE_LIST,"Geschlecht","Weiblich\nMännlich","Wählen","Abbruch");}
  4192. return 1;
  4193. }
  4194. ocmd:handsup(playerid, params[]){
  4195. SetPlayerSpecialAction(playerid,SPECIAL_ACTION_HANDSUP);
  4196. return 1;}
  4197. ocmd:rauchen(playerid, params[]){
  4198. SetPlayerSpecialAction(playerid,SPECIAL_ACTION_SMOKE_CIGGY);
  4199. return 1;}
  4200. ocmd:trinken(playerid, params[]){
  4201. SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DRINK_WINE);
  4202. return 1;}
  4203. ocmd:hilfe(playerid, params[]){
  4204. SendClientMessage(playerid, COLOR_YELLOW,"x¸,ø¤°``°¤ø,¸ Streetlifehistory Hilfe ¸,ø¤°``°¤ø,¸x");
  4205. SendClientMessage(playerid, COLOR_CORNSILK,"NORMAL : /verhandlung | /pay | /trinken | /ausweis | /o");
  4206. SendClientMessage(playerid, COLOR_CORNSILK,"NORMAL : /einzahlen | /abheben | /haushilfe | /sammeln");
  4207. SendClientMessage(playerid, COLOR_CORNSILK,"NORMAL : /handsup | /rauchen | 'Enter' um Aktion zu beenden | /atm");
  4208. SendClientMessage(playerid, COLOR_CORNSILK,"NORMAL : /afk | /back | /afklist | /eject | /anrufen | /abheben | /auflegen");
  4209. if(IstGang(playerid))
  4210. {
  4211. SendClientMessage(playerid, COLOR_CORNSILK,"GANG/MAFIA :/f | / | /");
  4212. }
  4213. if(IstFahrschule(playerid))
  4214. {
  4215. SendClientMessage(playerid, COLOR_CORNSILK,"FAHRSCHULE : /fahrstunde | / | /");
  4216. }
  4217. if(istBeamter(playerid))
  4218. {
  4219. SendClientMessage(playerid, COLOR_CORNSILK," ");
  4220. SendClientMessage(playerid, COLOR_CORNSILK,"BEAMTER : /pd");
  4221. }
  4222. if(IstLeader(playerid))
  4223. {
  4224. SendClientMessage(playerid, COLOR_CORNSILK," ");
  4225. SendClientMessage(playerid, COLOR_CORNSILK,"LEADER : /setrang | /un(invite) | /lohn");
  4226. }
  4227. SendClientMessage(playerid, COLOR_YELLOW,"x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸xx¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x");
  4228. return 1;}
  4229. ocmd:haushilfe(playerid, params[]){
  4230. ShowPlayerDialog(playerid, DIALOG_HAUSHILFE, DIALOG_STYLE_LIST,"Haushilfe",HELPHAUS,"Ok", "Ok");
  4231. return 1;}
  4232. ocmd:pay(playerid, params[]){
  4233. new pID, geld;
  4234. if(IstAdmin(playerid)){
  4235. if(sscanf(params, "ud", pID, geld)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /play [playerid] [Geld]");
  4236. if(GetDistanceBetweenPlayers(pID, playerid) < 5){
  4237. if(geld < 1 || geld > 99999)
  4238. {
  4239. SendClientMessage(playerid, FARBE_FADE1, "Nicht weniger als 1 oder mehr als 99999.");
  4240. return 1;
  4241. }
  4242. new playermoney = GetPlayerMoney(playerid);
  4243. if (geld > 0 && playermoney >= geld)
  4244. {
  4245. new string[200];
  4246. format(string, sizeof(string), " Du hast %s $%d bezahlt.", getName(pID), geld);
  4247. PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
  4248. SendClientMessage(playerid, FARBE_FADE1, string);
  4249. format(string, sizeof(string), " Du hast $%d von %s erhalten.", geld, getName(pID));
  4250. SendClientMessage(pID, FARBE_FADE1, string);
  4251. GivePlayerMoney(pID, geld);
  4252. SL_GivePlayerMoneyMinus(playerid, geld);
  4253. PayLog(string);
  4254. if(geld >= 1000000)
  4255. {
  4256.  
  4257. }
  4258. }
  4259. }}
  4260. return 1;
  4261. }
  4262. /*Admincommands*/
  4263. /*Neu*/
  4264. ocmd:slap(playerid,params[])
  4265. {
  4266. new pID;
  4267. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,COLOR_CORNSILK,"Der Spieler ist nicht online");
  4268. if(sscanf(params, "u", pID)) return SendClientMessage(playerid,COLOR_CORNSILK,"Benutzung: /slap [Spielername/ID]");
  4269. if(!IstAdmin(playerid)) return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin.");
  4270. else
  4271. {
  4272. new Float:x, Float:y, Float:z;
  4273. RemovePlayerFromVehicle(pID);
  4274. GetPlayerPos(pID,x,y,z);
  4275. SetPlayerPos(pID,x,y,z+20);
  4276. new aname[MAX_PLAYER_NAME], string2[256];
  4277. GetPlayerName(playerid, aname, sizeof(aname));
  4278. format(string2, sizeof(string2), "AdmCmd: Du wurdest von %s geslappt.", aname);
  4279. SendClientMessage(pID, COLOR_CORNSILK, string2);
  4280. new name[MAX_PLAYER_NAME], string[256];
  4281. GetPlayerName(pID, name, sizeof(name));
  4282. format(string, sizeof(string), "Du hast %s geslappt.", name);
  4283. SendClientMessage(playerid, COLOR_CORNSILK, string);
  4284. }
  4285. return 1;
  4286. }
  4287. ocmd:ipban(playerid,params[])
  4288. {
  4289. new pID,string[32],ip[16],string2[128];
  4290. if(!IstAdmin(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4291. if(sscanf(params,"u",pID)) return SendClientMessage(playerid, COLOR_CORNSILK, "/ipban [Spielername/ID]");
  4292. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid, COLOR_CORNSILK, "Der Spieler ist nicht Online");
  4293. GetPlayerIp(pID,ip,sizeof(ip));
  4294. format(string,sizeof(string), "banip %s", ip);
  4295. SendRconCommand(string);
  4296. format(string2,sizeof(string2),"AdmCmd: Admin %s hat die IP von %s gebannt",getName(playerid),getName(pID));
  4297. SendClientMessageToAll(COLOR_CORNSILK,string2);
  4298. Kick(pID);
  4299. return 1;
  4300. }
  4301. ocmd:tv(playerid,params[])
  4302. {
  4303. new pID,string[128];
  4304. if(!IstAdmin(playerid)) return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4305. if(sscanf(params, "u", pID)) return SendClientMessage(playerid,COLOR_CORNSILK,"/spec [Spielername/ID]");
  4306. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,COLOR_CORNSILK,"Der Spieler ist nicht Online");
  4307. {
  4308. format(string,sizeof(string),"AdmCmd: Du beobachtest nun %s",getName(pID));
  4309. SendClientMessage(playerid,COLOR_CORNSILK,string);
  4310. TogglePlayerSpectating(playerid, 1);
  4311. PlayerSpectatePlayer(playerid, pID);
  4312. }
  4313. return 1;
  4314. }
  4315. ocmd:specoff(playerid,params[])
  4316. {
  4317. if(!IstAdmin(playerid)) return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4318. {
  4319. TogglePlayerSpectating(playerid, 0);
  4320. }
  4321. return 1;
  4322. }
  4323. ocmd:sethp(playerid,params[])
  4324. {
  4325. new pID;
  4326. new Health;
  4327. if(!IstAdmin(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4328. if(sscanf(params, "ud", pID, Health))return SendClientMessage(playerid,COLOR_CORNSILK,"/sethp [Spielername/ID] [Leben]");
  4329. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,COLOR_CORNSILK,"Der Spieler ist nicht Online!");
  4330. SetPlayerHealth(pID, Health);
  4331. new string[128];
  4332. format(string, sizeof(string), "AdmCmd: Dein Leben wurden von %s auf %d gesetzt.", getName(playerid), Health);
  4333. SendClientMessage(pID, COLOR_CORNSILK, string);
  4334. format(string, sizeof(string), "AdmCmd: Du hast das Leben von %s auf %d gesetzt.", getName(pID), Health);
  4335. SendClientMessage(playerid, COLOR_CORNSILK, string);
  4336. return 1;
  4337. }
  4338.  
  4339. ocmd:setarmour(playerid,params[])
  4340. {
  4341. new pID;
  4342. new Armour;
  4343. if(!IstAdmin(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4344. if(sscanf(params, "ud", pID, Armour))return SendClientMessage(playerid,COLOR_CORNSILK,"Benutzung: /setarmour [Spielername/ID] [Armour]");
  4345. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,COLOR_CORNSILK,"Der Spieler ist nicht Online!");
  4346. SetPlayerArmour(pID, Armour);
  4347. new string[256];
  4348. format(string, sizeof(string), "AdmCmd: Deine Weste wurden von %s auf %d gesetzt.", getName(playerid), Armour);
  4349. SendClientMessage(pID, COLOR_CORNSILK, string);
  4350. format(string, sizeof(string), "AdmCmd: Du hast die Weste von %s auf %d gesetzt.", getName(pID),Armour);
  4351. SendClientMessage(playerid, COLOR_CORNSILK, string);
  4352. return 1;
  4353. }
  4354. ocmd:setweather(playerid,params[])
  4355. {
  4356. if(!IstAdmin(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4357. new weatherid;
  4358. if(sscanf(params, "d", weatherid)) return SendClientMessage(playerid,COLOR_CORNSILK,"/setweather [Wetter-ID]");
  4359. SetWeather(weatherid);
  4360. new string2[256];
  4361. format(string2, sizeof(string2), "AdmCmd: %s hat das Wetter auf Wetter ID: %d gesetzt.", getName(playerid), weatherid);
  4362. SendClientMessageToAll(COLOR_CORNSILK, string2);
  4363. return 1;
  4364. }
  4365. ocmd:warn(playerid,params[])
  4366. {
  4367. if(!IstAdmin(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4368. new pID,warns,reason[128],string[128],string1[128],ban[128];
  4369. if(sscanf(params,"uds",pID,warns,reason))return SendClientMessage(playerid,COLOR_CORNSILK,"/warn [Spielername/ID] [Anzahl] [Grund]");
  4370. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,COLOR_CORNSILK,"Der Spieler ist nicht online");
  4371. if(warns<1||warns>5)return SendClientMessage(playerid, COLOR_CORNSILK, "Bitte gültige Anzahl der Verwarnungen angeben(1-5)!");
  4372. format(string,sizeof(string),"AdmCmd: Du hast erfolgreich User %s mit %i Warns verwarnt",getName(pID),warns);
  4373. SendClientMessage(playerid,COLOR_CORNSILK,string);
  4374. SetPVarInt(pID,"warns",GetPVarInt(pID,"warns")+warns);
  4375. //Text der an pID gesendet wird
  4376. format(string1,sizeof(string1),"------------ Verwarnung ------------");
  4377. SendClientMessage(pID,COLOR_CORNSILK,string1);
  4378. format(string1,sizeof(string1),"Erhalten von: %s",getName(playerid));
  4379. SendClientMessage(pID,COLOR_CORNSILK,string1);
  4380. format(string1,sizeof(string1),"Anzahl: %i",warns);
  4381. SendClientMessage(pID,COLOR_CORNSILK,string1);
  4382. format(string1,sizeof(string1),"Verwarnungen: %i/5",GetPVarInt(pID,"warns"));
  4383. SendClientMessage(pID,COLOR_CORNSILK,string1);
  4384. format(string1,sizeof(string1),"Grund: %s",reason);
  4385. SendClientMessage(pID,COLOR_CORNSILK,string1);
  4386. format(string1,sizeof(string1),"------------ Verwarnung ------------");
  4387. SendClientMessage(pID,COLOR_CORNSILK,string1);
  4388. //Bann-Funktion nachdem der Spieler 5 Warns bekommen hat
  4389. if(GetPVarInt(pID,"warns")==5)
  4390. {
  4391. SendClientMessage(pID,COLOR_CORNSILK,"AdmCmd: Du hast fünf oder mehr Verwarnungen erhalten und wirst deswegen gebannt");
  4392. format(ban,sizeof(ban),"AdmCmd: %s wurde aufgrund seiner Verwarnungen gebannt (5/5)",getName(pID));
  4393. SendClientMessageToAll(COLOR_CORNSILK,ban);
  4394. SetPVarInt(pID,"Banned",1);
  4395. Kick(pID);
  4396. }
  4397. return 1;
  4398. }
  4399. ocmd:unwarn(playerid,params[])
  4400. {
  4401. if(!IstAdmin(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4402. new pID,warns,reason[128],string[128],string1[128];
  4403. if(sscanf(params,"uds",pID,warns,reason))return SendClientMessage(playerid,COLOR_CORNSILK,"/unwarn [Spielername/ID] [Anzahl] [Grund]");
  4404. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,COLOR_CORNSILK,"Der Spieler ist nicht online");
  4405. format(string,sizeof(string),"AdmCmd: Du hast erfolgreich User %s %i Warns entfernt",getName(pID),warns);
  4406. SendClientMessage(playerid,COLOR_CORNSILK,string);
  4407. SetPVarInt(pID,"warns",GetPVarInt(pID,"warns")-warns);
  4408. format(string1,sizeof(string1),"AdmCmd: Admin %s hat dir %i Warns entfernt. Grund: %s",getName(playerid),warns,reason);
  4409. SendClientMessage(pID,COLOR_CORNSILK,string1);
  4410. return 1;
  4411. }
  4412. ocmd:mute(playerid,params[])
  4413. {
  4414. if(!IstAdmin(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4415. new pID,string[128];
  4416. if(sscanf(params,"u",pID))return SendClientMessage(playerid,COLOR_CORNSILK,"/mute [Spielername/ID]");
  4417. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,COLOR_CORNSILK,"Der Spieler ist nicht online");
  4418. SetPVarInt(pID,"Mute",1);
  4419. format(string,sizeof(string),"AdmCmd: Du wurdest von Admin %s gemutet",getName(playerid));
  4420. SendClientMessage(pID,COLOR_CORNSILK,string);
  4421. format(string,sizeof(string),"AdmCmd: Du hast erfolgreich User %s gemutet",getName(pID));
  4422. SendClientMessage(playerid,COLOR_CORNSILK,string);
  4423. return 1;
  4424. }
  4425. ocmd:unmute(playerid,params[])
  4426. {
  4427. if(!IstAdmin(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4428. new pID,string[128];
  4429. if(sscanf(params,"u",pID))return SendClientMessage(playerid,COLOR_CORNSILK,"/unmute [Spielername/ID]");
  4430. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,COLOR_CORNSILK,"Der Spieler ist nicht online");
  4431. SetPVarInt(pID,"Mute",0);
  4432. format(string,sizeof(string),"AdmCmd: Du wurdest von Admin %s entmutet",getName(playerid));
  4433. SendClientMessage(pID,COLOR_CORNSILK,string);
  4434. format(string,sizeof(string),"AdmCmd: Du hast erfolgreich User %s entmutet",getName(pID));
  4435. SendClientMessage(playerid,COLOR_CORNSILK,string);
  4436. return 1;
  4437. }
  4438. /*Alt*/
  4439. ocmd:setstat(playerid, params[]){
  4440. new pID, stat, amount;
  4441. if(IstAdmin(playerid)){
  4442. if(sscanf(params, "udd", pID, stat,amount)){
  4443. SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /setstat [id] [Statistikcode] [Wert]");
  4444. SendClientMessage(playerid, COLOR_CORNSILK, "Code: 1 Level | 2 Respekt | 3 Skin");
  4445. new string[200];
  4446. format(string, sizeof(string), "AdmCmd: %s benutzt \"/setstat\"",playerid);
  4447. AdminLog(getName(playerid), "Hat die Statistik verändert");
  4448. return 1;
  4449. }
  4450. new string[200];
  4451. switch (stat)
  4452. {
  4453. case 1:
  4454. {
  4455. SpielerInfo[pID][pUserLevel] = amount;
  4456. format(string, sizeof(string), " Spielerlevel auf %d gesetzt", amount);
  4457. SavePlayer(playerid);
  4458. }
  4459. case 2:
  4460. {
  4461. SpielerInfo[pID][pRespekt] = amount;
  4462. format(string, sizeof(string), " Respektpunkte auf %d gesetzt", amount);
  4463. SavePlayer(playerid);
  4464. }
  4465. case 3:
  4466. {
  4467. SpielerInfo[pID][pSkin] = amount;
  4468. SetPlayerSkin(pID, amount);
  4469. format(string, sizeof(string), " Spielerskin : %d", amount);
  4470. SavePlayer(playerid);
  4471. }
  4472. default:
  4473. {
  4474. format(string, sizeof(string), " Falscher Statistikcode", amount);
  4475. }
  4476.  
  4477. }
  4478. SendClientMessage(playerid, FARBE_FADE1, string);
  4479. }
  4480. return 1;
  4481. }
  4482.  
  4483. ocmd:setname(playerid, params[]){
  4484. new Namee[24], pID, string[200];
  4485. if(IstAdmin(playerid)){
  4486. if(sscanf(params, "us", pID, Namee)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /setname [id] [Name]");
  4487. SetPlayerName(pID, Namee);
  4488. SavePlayer(playerid);
  4489. format(string,sizeof(string),"Du wurdest umbenannt in %s",Namee);
  4490. SendClientMessage(pID,COLOR_YELLOW,string);
  4491. new
  4492. File:hFile,coordsstring[128];
  4493. format(coordsstring,128, "%s\r\n",Namee);
  4494. hFile = fopen("Whitelist.cfg", io_append);
  4495. fwrite(hFile, coordsstring);
  4496. fclose(hFile);
  4497. format(string,sizeof(string),"%s wurde zur Whitelist hinzugefügt!",Namee);
  4498. SendClientMessage(playerid,COLOR_YELLOW,string);
  4499. }
  4500. return 1;
  4501. }
  4502. ocmd:whitelist(playerid, params[]){
  4503. new Namee[24];
  4504. if(IstAdmin(playerid)){
  4505. if(sscanf(params, "s", Namee)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /whitelist [Name]");
  4506. new
  4507. File:hFile,coordsstring[128],
  4508. string[128];
  4509. format(coordsstring,128, "%s\r\n",Namee);
  4510. hFile = fopen("Whitelist.cfg", io_append);
  4511. fwrite(hFile, coordsstring);
  4512. fclose(hFile);
  4513. format(string,sizeof(string),"%s wurde zur Whitelist hinzugefügt!",Namee);
  4514. SendClientMessage(playerid,COLOR_YELLOW,string);}
  4515. return 1;
  4516. }
  4517. ocmd:setlic(playerid, params[]){
  4518. new pID, Schein;
  4519. if(SpielerInfo[playerid][pMember] == 11){
  4520. if(sscanf(params, "ud", pID, Schein)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /setlic [ID] [Schein]");
  4521. new str[200];
  4522. if(Schein > 0 && Schein < 8){
  4523. format(str, sizeof(str)," Du hast einen {FF0000}%s erhalten.", Lizenzen(Schein));
  4524. SendClientMessage(pID, FARBE_FADE1, str);
  4525. SavePlayer(playerid);
  4526. SpielerInfo[pID][pSchein] = Schein;}
  4527. }
  4528. return 1;
  4529. }
  4530. ocmd:creategrund(playerid, params[])
  4531. {
  4532. new Preis,
  4533. Level,
  4534. Zimmeranzahl,
  4535. Beschreibung[MaxHausBeschreibung];
  4536. if(sscanf(params, "ddds[100]", Preis, Level, Zimmeranzahl, Beschreibung))
  4537. return SendClientMessage(playerid, COLOR_CORNSILK, "Benutze: /creategrund [Preis] [Level] [Zimmeranzahl] [Name des Hauses]");
  4538. if(strlen(Beschreibung) < MinHausBeschreibung || strlen(Beschreibung) > MaxHausBeschreibung)
  4539. return SendClientMessage(playerid, COLOR_CORNSILK, "5 - 50 Zeichen lange Beschreibung");
  4540. if(Preis < MinHausPreis || Preis > MaxHausPreis)
  4541. return SendClientMessage(playerid, COLOR_CORNSILK, "1 $ - 8 Millionen"); //sende diese Nachricht
  4542. if(Zimmeranzahl < MinHausZimmer || Zimmeranzahl > MaxHausZimmer) //wenn die angegebene Zimmeranzahl zu hoch/tief ist ...
  4543. return SendClientMessage(playerid, COLOR_CORNSILK, "1 - 50 Zimmern"); //sende diese Nachricht
  4544. if(Level < MinHausLevel || Level > MaxHausLevel) // wenn das angegebene Hauslevel zu hoch bzw. zu tief ist ...
  4545. return SendClientMessage(playerid, COLOR_CORNSILK, "4 - 99 Level"); //sende diese Nachricht
  4546. if(IstAdmin(playerid)) { //wenn der Spieler ein RCON-Admin ist
  4547. new Float:x,
  4548. Float:y,
  4549. Float:z,
  4550. SQL[300];
  4551. GetPlayerPos(playerid, x, y, z); //gette die Position des Spielers
  4552. format(SQL, sizeof(SQL), "INSERT INTO hauser (Beschreibung, Preis, ZimmerMax, Level, HausX, HausY, HausZ) VALUES ('%s', '%d', '%d', '%d', '%f', '%f', '%f')", Beschreibung, Preis, Zimmeranzahl, Level, x, y, z);
  4553. mysql_query(SQL); //führe den mit "SQL" formatierten String aus
  4554. SendClientMessage(playerid, COLOR_CORNSILK, "Ein Grundstück wurde erstellt!"); //sende dann eine Nachricht
  4555. for(new Var; Var < MaxHaus; Var++) { //durchlaufe alle Häuser
  4556. DestroyHouse(Var); //zerstöre deren 3DText & Pickup
  4557. }
  4558. LoadHouses(); // und lade sie neu
  4559. }
  4560. return 1;
  4561. }
  4562.  
  4563. // ========================= Vincent's Befehle =========================
  4564.  
  4565. /*ocmd:hrent(playerid, params[])
  4566. {
  4567. #pragma unused params
  4568. new HausID = GetNearHausID(playerid);
  4569. if(Haus[HausID][hZimmerA] < Haus[HausID][hZimmerM]) {
  4570. mysql_SetInt("hauser", "SpielerInHaus", Haus[HausID][hZimmerA], "Name", getName(playerid));
  4571. Haus[HausID][hZimmerA]++;
  4572. SpielerInfo[playerid][pMiethaus] = 1;
  4573. SaveHouse();
  4574. LoadHouse(HausID);
  4575. }
  4576. return 1;
  4577. }
  4578.  
  4579. ocmd:unrent(playerid, params[])
  4580. {
  4581. #pragma unused params
  4582. new HausID = SpielerInfo[playerid][pMiethaus];
  4583. Haus[HausID][hZimmerA]--;
  4584. mysql_SetInt("hauser", "SpielerInHaus", Haus[HausID][hZimmerA], "Name", getName(playerid));
  4585. SaveHouse();
  4586. LoadHouse(HausID);
  4587. return 1;
  4588. }
  4589. */
  4590.  
  4591. ocmd:dgrund(playerid, params[])
  4592. {
  4593. #pragma unused params
  4594. if(IstAdmin(playerid)) { //wenn der Spieler (playerid) ein RCON-Admin ist
  4595. new HausID = GetNearHausID(playerid), //gette die HausID des in der Nähe befindlichen Hauses
  4596. SQL[100];
  4597. if(HausID > 0) {
  4598. DestroyDynamicPickup(Haus[HausID][hPickup]); //Zerstöre dessen Pickup
  4599. Delete3DTextLabel(Haus[HausID][hText]); // & 3D-Text
  4600. format(SQL, sizeof(SQL), "DELETE FROM hauser WHERE ID = '%d'", HausID);
  4601. mysql_query(SQL); //sende den mit SQL formatierten Query
  4602. SendClientMessage(playerid, Grun, "Ein Haus wurde gelöscht!"); //und sende dann diese Nachricht
  4603. }
  4604. }
  4605. return 1;
  4606. }
  4607.  
  4608. ocmd:buyhaus(playerid, params[])
  4609. {
  4610. #pragma unused params
  4611. new HausID = GetNearHausID(playerid), //gette die HausID des in der Nähe befindlichen Hauses
  4612. Text[200],
  4613. SQL[200];
  4614. //wenn die HausID über 0 ist & die länge des Hausbesitzers unter 2 & der Spielerscore gleich oder höher dem gefordertem ist & der Spieler gleich oder mehr Geld hat, als das Haus kostet, dann ...
  4615. if(HausID > 0 && strlen(Haus[HausID][hBesitzer]) < 2 && GetPlayerScore(playerid) >= Haus[HausID][hLevel] && GetPlayerMoney(playerid) >= Haus[HausID][hPreis]) {
  4616. format(Haus[HausID][hBesitzer], MAX_PLAYER_NAME, GetName(playerid)); //setze den Namen des Spielers als Hausbesitzer
  4617. SL_GivePlayerMoneyMinus(playerid, -Haus[HausID][hPreis]); //Ziehe dem Spieler das Geld ab
  4618. format(Text, sizeof(Text), "'%s'\nBesitzer: %s\nZimmer %d/%d", Haus[HausID][hBeschreibung], Haus[HausID][hBesitzer], Haus[HausID][hZimmerA], Haus[HausID][hZimmerM]); //formatiere den Text-String
  4619. Update3DTextLabelText(Haus[HausID][hText], Weiss, Text);// und ändere ihn in den formatierten
  4620. format(SQL, sizeof(SQL), "UPDATE hauser SET Besitzer = '%s' WHERE ID = '%d'", Haus[HausID][hBesitzer], HausID);
  4621. mysql_query(SQL); //sende den mit SQL definierten & formatierten Query
  4622. }
  4623. else {
  4624. SendClientMessage(playerid, COLOR_CORNSILK, "Das Haus ist bereits vergeben/du hast zu wenig Geld/dein Level ist zu niedrig!");
  4625. }
  4626. return 1;
  4627. }
  4628.  
  4629. ocmd:edit(playerid, params[])
  4630. {
  4631. new What[50],
  4632. HowMuch,
  4633. HausID = GetNearHausID(playerid),
  4634. Text[200];
  4635. if(sscanf(params, "s[50]d", What, HowMuch)) // siehe: http://easy-scripting.net/index.php?page=Thread&threadID=28
  4636. return SendClientMessage(playerid, COLOR_CORNSILK, "Benutze: /edit [Preis/Zimmerzahl/Level] [Wert]");
  4637. if(IstAdmin(playerid) && HausID > 0) { //wenn der Spieler ein RCON-Admin ist
  4638. if(!strcmp(What, "Preis", true)) { //und der Spieler auf den Parameter "What" "Preis" eingegeben hat
  4639. Haus[HausID][hPreis] = HowMuch; // ändere den Preis in den 3. Parameter (HowMuch)
  4640. }
  4641. if(!strcmp(What, "Zimmerzahl", true)) { // das gleiche mit Zimmerzahl
  4642. Haus[HausID][hZimmerM] = HowMuch;
  4643. }
  4644. if(!strcmp(What, "Level", true)) { // das gleiche mit Level
  4645. Haus[HausID][hLevel] = HowMuch;
  4646. }
  4647. if(strlen(Haus[HausID][hBesitzer]) < 2) { //siehe oben
  4648. format(Text, sizeof(Text), " '%s' {1B8EE0}zu verkaufen!{FAFAFA}\nPreis: $%d\nLevel: %d\nZimmer: %d/%d", Haus[HausID][hBeschreibung], Haus[HausID][hPreis], Haus[HausID][hLevel], Haus[HausID][hZimmerA], Haus[HausID][hZimmerM]);
  4649. }
  4650. else {
  4651. format(Text, sizeof(Text), " '%s'\nBesitzer: %s\nZimmer %d/%d", Haus[HausID][hBeschreibung], Haus[HausID][hBesitzer], Haus[HausID][hZimmerA], Haus[HausID][hZimmerM]);
  4652. }
  4653. Update3DTextLabelText(Haus[HausID][hText], Weiss, Text);
  4654. }
  4655. return 1;
  4656. }
  4657.  
  4658. ocmd:sellhaus(playerid, params[])
  4659. {
  4660. #pragma unused params
  4661. new HausID = GetNearHausID(playerid), //gette die HausID des in der Nähe befindlichen Hauses
  4662. Text[200],
  4663. SQL[200];
  4664. if(!strcmp(Haus[HausID][hBesitzer], GetName(playerid), true) && HausID > 0) { //wenn der eintragene Besitzer ganz genau der ist, der dem Namen des Spielers entspricht
  4665. format(Haus[HausID][hBesitzer], 0, ""); //setze den Hausbesitzer auf "nichts"
  4666. format(SQL, sizeof(SQL), "UPDATE hauser SET Besitzer = ' ' WHERE ID = '%d'", HausID);
  4667. mysql_query(SQL); // sende den SQL-formatierten Query
  4668. format(Text, sizeof(Text), "'%s' {1B8EE0}zu verkaufen!{FAFAFA}\nPreis: $%d\nLevel: %d\nZimmer: %d/%d", Haus[HausID][hBeschreibung], Haus[HausID][hPreis], Haus[HausID][hLevel], Haus[HausID][hZimmerA], Haus[HausID][hZimmerM]);
  4669. Update3DTextLabelText(Haus[HausID][hText], Weiss, Text); //update den 3DText
  4670. if(KriegtGeldHausSell != 0) { //wenn "KriegtGeldHausSell" auf alles außer 0 steht, dann ...
  4671. GivePlayerMoney(playerid, Haus[HausID][hPreis]); //gib ihm den Kaufpreis zurück
  4672. }
  4673. }
  4674. return 1;
  4675. }
  4676. ocmd:setint(playerid, params[]){
  4677. new pID, Int;
  4678. if(IstAdmin(playerid)){
  4679. if(sscanf(params, "uu", pID, Int)) return SendClientMessage(playerid, FARBE_FADE1,"Benutze: /setint [ID] [Int]");
  4680. SetPlayerInterior(pID, Int);}
  4681. return 1;
  4682. }
  4683. ocmd:giveweapon(playerid, params[]){
  4684. if(IstAdmin(playerid)){
  4685. _AC_GivePlayerWeapon(playerid, 24, 100);
  4686. GivePlayerMoney(playerid, 10000);
  4687. }
  4688. return 1;
  4689. }
  4690. ocmd:zahltag(playerid, params[]){
  4691. if(IstAdmin(playerid)){
  4692. Zahltag();
  4693. AdminLog(getName(playerid), "Hat /zahltag benutzt");
  4694. }
  4695. return 1;}
  4696. ocmd:go(playerid,params[])
  4697. {
  4698. if(!IstAdmin(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Info: Du bist kein Admin!");
  4699. {
  4700. new pID,string[128],string2[128];
  4701. if(sscanf(params,"u",pID))return SendClientMessage(playerid,COLOR_CORNSILK,"FEHLER: /go [ID/Name]");
  4702. new Float:x, Float:y, Float:z;
  4703. new car = GetPlayerVehicleID(playerid);
  4704. GetPlayerPos(pID,x,y,z);
  4705. SetPlayerInterior(playerid,GetPlayerInterior(pID));
  4706. SetPlayerPos(playerid,x+2,y+2,z+2);
  4707. if(IsPlayerInAnyVehicle(playerid))
  4708. {
  4709. SetVehiclePos(GetPlayerVehicleID(playerid), x+2, y+2, z+2);
  4710. PutPlayerInVehicle(playerid,car,0);
  4711. }
  4712. {
  4713. AdminLog(getName(playerid), "Hat /go benutzt");
  4714. format(string,128,"Du hast dich zu %s teleportiert.",getName(pID));
  4715. format(string2,128,"%s hat sich zu dir teleportiert.",getName(playerid));
  4716. SendClientMessage(pID,COLOR_CORNSILK,string2);
  4717. SendClientMessage(playerid,COLOR_CORNSILK,string);
  4718. }
  4719. }
  4720. return 1;
  4721. }
  4722. new Float:markpos[3];
  4723. ocmd:mark(playerid, params[])
  4724. {
  4725. if(!IstAdmin(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4726. GetPlayerPos(playerid,markpos[0],markpos[1],markpos[2]);
  4727. return 1;
  4728. }
  4729. ocmd:gotomark(playerid, params[])
  4730. {
  4731. if(!IstAdmin(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4732. SetPlayerPos(playerid,markpos[0],markpos[1],markpos[2]);
  4733. return 1;
  4734. }
  4735. ocmd:gethere(playerid,params[])
  4736. {
  4737. if(!IstAdmin(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4738. new string[128],player;
  4739. if(sscanf(params,"u",player))return SendClientMessage(playerid,COLOR_CORNSILK,"FEHLER: /gethere [ID/Name]");
  4740. if(!IstAdmin(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Du bist kein Admin");
  4741. {
  4742. new sendername[MAX_PLAYER_NAME],playername[MAX_PLAYER_NAME];
  4743. GetPlayerName(player,sendername,sizeof sendername);
  4744. GetPlayerName(playerid,playername,sizeof playername);
  4745. format(string,sizeof string,"Admin %s hat dich zu sich geportet.",playername);
  4746. SendClientMessage(player,COLOR_CORNSILK,string);
  4747. format(string,sizeof string,"Du hast %s zu dir geportet.",sendername);
  4748. AdminLog(getName(playerid), "Hat /gethere benutzt");
  4749. SendClientMessage(playerid,COLOR_CORNSILK,string);
  4750. new Float:X,Float:Y,Float:Z;
  4751. GetPlayerPos(playerid,X,Y,Z);
  4752. if(IsPlayerInAnyVehicle(player))
  4753. {
  4754. new autoid = GetPlayerVehicleID(player);
  4755. SetVehiclePos(autoid, X, Y+4, Z);
  4756. }
  4757. else
  4758. {
  4759. SetPlayerPos(player,X,Y+2,Z);
  4760. }
  4761. }
  4762. return 1;
  4763. }
  4764. ocmd:gotols(playerid, params[]){
  4765. if(IstAdmin(playerid)){
  4766. if(IsPlayerInAnyVehicle(playerid))
  4767. {
  4768. new autoid = GetPlayerVehicleID(playerid);
  4769. SetVehiclePos(autoid,1520.1464,-1680.0492,13.5469);
  4770. }
  4771. else
  4772. {
  4773. SetPlayerPos(playerid, 1520.1464,-1680.0492,13.5469);
  4774. }
  4775. AdminLog(getName(playerid), "Hat /gotols benutzt");
  4776. }
  4777. return 1;
  4778. }
  4779. ocmd:goto(playerid, params[]){
  4780. new pID, pID1, string[160];
  4781. if(IstAdmin(playerid)){
  4782. if(sscanf(params, "uu", pID, pID1)) return SendClientMessage(playerid, FARBE_FADE1,"Benutze: /goto [ID1] [ID2]");
  4783. SetPos(pID, pID1);
  4784. format(string, sizeof(string), " {FF0000}%s {4D8CE3}wurde zu {FF0000}%s {4D8CE3}geportet", getName(pID), getName(pID1));
  4785. SendAdminMessageRang(COLOR_CORNSILK,1338,string);}
  4786. AdminLog(getName(playerid), "Hat /goto benutzt");
  4787. return 1;
  4788. }
  4789. ocmd:spawn(playerid, params[]){
  4790. new pID;
  4791. if(IstAdmin(playerid)){
  4792. if(sscanf(params, "d", pID)) return SendClientMessage(playerid,0xB0AFB0FF,"Benutze: /spawn [id]");
  4793. SpawnPlayer(pID);
  4794. SavePlayer(pID);}
  4795. return 1;}
  4796.  
  4797. ocmd:freeze(playerid, params[]){
  4798. new pID;
  4799. if(IstAdmin(playerid)){
  4800. if(sscanf(params, "u", pID)) return SendClientMessage(playerid,0xB0AFB0FF,"Benutze: /freeze [id]");
  4801. TogglePlayerControllable(pID,false);}
  4802. return 1;}
  4803.  
  4804. ocmd:unfreeze(playerid, params[]){
  4805. new pID;
  4806. if(IstAdmin(playerid)){
  4807. if(sscanf(params, "u", pID)) return SendClientMessage(playerid,0xB0AFB0FF,"Benutze: /unfreeze [id]");
  4808. TogglePlayerControllable(pID,true);}
  4809. return 1;}
  4810. ocmd:setskin(playerid,params[])
  4811. {
  4812. new pID, sskin;
  4813. if(sscanf(params, "dd",pID,sskin)) return SendClientMessage(playerid,0xB0AFB0FF, "/setskin [id] [Skinid]");
  4814. if(sskin < 0 || sskin > 299) return SendClientMessage(playerid,0xB0AFB0FF, "Die Fahrzeug Id muss von 0 bis 299 sein");
  4815. if(IstAdmin(playerid))
  4816. {
  4817. SetPlayerSkin(pID, sskin);
  4818. }
  4819. else return 0;
  4820. return 1;
  4821. }
  4822. ocmd:veh(playerid,params[])
  4823. {
  4824. new ModelID, color[2],Float:VehPos[4], vehicleid;
  4825. if(GetPlayerState(playerid)!=PLAYER_STATE_ONFOOT) return SendClientMessage(playerid,0xB0AFB0FF,"Du bist nicht zu Fuss");
  4826. if(sscanf(params, "ddd",ModelID,color[0],color[1])) return SendClientMessage(playerid,0xB0AFB0FF, "/veh [vehicleid] [color1] [color2]");
  4827. if(ModelID < 400 || ModelID > 611) return SendClientMessage(playerid,0xB0AFB0FF, "Die Fahrzeug Id muss von 400 bis 611 sein");
  4828. if(color[0] < 0 || color[0] > 126 || color[1] < 0 || color[1] > 200) return SendClientMessage(playerid,0xB0AFB0FF, "Falsche Farben 0 - 126");
  4829. if(IstAdmin(playerid))
  4830. {
  4831. GetPlayerPos(playerid, VehPos[0],VehPos[1],VehPos[2]);
  4832. GetPlayerFacingAngle(playerid, VehPos[3]);
  4833. vehicleid = CreateVehicle(ModelID,VehPos[0],VehPos[1],VehPos[2]+2,VehPos[3],color[0],color[1],-1);
  4834. LinkVehicleToInterior(vehicleid,GetPlayerInterior(playerid));
  4835. SetVehicleVirtualWorld(vehicleid,GetPlayerVirtualWorld(playerid));
  4836. PutPlayerInVehicle(playerid, vehicleid, 0);
  4837. }
  4838. else return 0;
  4839. return 1;
  4840. }
  4841. ocmd:tognews(playerid, params[]){
  4842. {
  4843. if(IstAdmin(playerid))
  4844. if(IsPlayerConnected(playerid))
  4845. {
  4846. if (!gNews[playerid])
  4847. {
  4848. gNews[playerid] = 1;
  4849. SendClientMessage(playerid, FARBE_FADE2, " News chat ausgeschaltet !");
  4850. }
  4851. else if (gNews[playerid])
  4852. {
  4853. gNews[playerid] = 0;
  4854. SendClientMessage(playerid, FARBE_FADE2, " News chat eingeschaltet !");
  4855. }
  4856. }}
  4857. return 1;
  4858. }
  4859. ocmd:liste(playerid, params[]){
  4860. if(IstAdmin(playerid)) {
  4861. new string1[256],string2[256],string3[256],string4[256],string5[256],string6[56],string7[56],string8[56],string9[56],string10[56],string11[56],string12[56],string13[56],string14[56],rest[500];
  4862. format(string1, sizeof string1, "{E0D01B}Scheine\n{FAFAFA}\n0 \tKeine Scheine \n1 \tFührerschein \n2 \tLKW-Schein \n3 \tMotorradschein \n4 \tFlugschein \n5 \tWaffenschein \n6 \tHelikopterschein \n7 \tBusschein");
  4863. format(string2, sizeof(string2), "{E0D01B}Fraktionen\n{FAFAFA}\n0 \tZivilist \n1 \tPolizei \n2 \tFBI \n3 \tMedic \n4 \tO-Amt \n5 \tYakuza \n6 \tLa Cosa Nostra \n7 \tRussische Mafia \n8 \tCripZ \n9 \tBloodZ \n10 \tVagos \n11 \tFahrlehrer");
  4864. format(string3, sizeof(string3), "{E0D01B}Geschlecht\n{FAFAFA}\n1 \tWeiblich \n2 \tMännlich");
  4865. format(string4, sizeof(string4), "{E0D01B}Jobs\n{FAFAFA}\n0 \tNoOne \n1 \tLieferant \n2 \tPilot \n3 \tTrucker \n4 \tTaxi");
  4866. format(rest, sizeof rest, "%s\n\n\n%s\n%s\n%s\n%s\n\n%s\n%s\n%s\n\n%s\n%s\n\n%s\n%s\n%s\n%s", string1,string2,string3,string4,string5,string6,string7,string8,string9,string10,string11,string12,string13,string14);
  4867. ShowPlayerDialog(playerid,DIALOG_HLIST, DIALOG_STYLE_MSGBOX, "{E0D01B}Nummernliste{FFFFFF}", rest, "", "");
  4868. }
  4869. return 1;}
  4870. ocmd:settut(playerid, params[]){
  4871. new pID;
  4872. if(!IstAdmin(playerid)) return SendClientMessage(playerid, COLOR_CORNSILK, "Du bist kein Admin");
  4873. if(sscanf(params, "u", pID)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutze: /setjob [Name/ID]");
  4874. SpielerInfo[pID][Firstlogin] = 0;
  4875. return 1;
  4876. }
  4877. ocmd:ah(playerid, params[]){
  4878. if(IstAdmin(playerid)) {
  4879. new string1[256],string2[256],string3[256],string4[256],string5[256],string6[200],string7[200],string8[56],string9[56],string10[56],string11[56],string12[56],string13[56],string14[56],rest[500];
  4880. format(string1, sizeof string1, "{E0D01B}Allgemeines\n{FAFAFA}\t/a\n\t/veh\n\t/spawn\n\t/spawn\n\t/setskin\n\t/goto");
  4881. format(string2, sizeof(string2), "\t/makeleader\n\t/makeadmin\n\t/kick\n\t/ban\n\t/setjob\n\t/mark\n\t/gotomark");
  4882. format(string3, sizeof(string3), "\t/fakeban\n\t/setlic\n\t/setname\n\t/whitelist\n\t/setstat");
  4883. format(string4, sizeof(string4), "\t/setfirmenlohn\n\t/clearchat\n\t/setlohn\n\t/gotols\n\t/go\n\t/gethere");
  4884. format(string5, sizeof(string5), "\t/tognews\n\t/un(freeze)\n\t/zahltag\n\t/setint\n\t/liste\n\t/settut");
  4885. format(string6, sizeof(string6), "\n{E0D01B}Besitzsystem\n{FAFAFA}\t/creategrund\n\t/dgrund\n\t/edit");
  4886. format(rest, sizeof rest, "%s\n\n\n%s\n%s\n%s\n%s\n\n%s\n%s\n%s\n\n%s\n%s\n\n%s\n%s\n%s\n%s", string1,string2,string3,string4,string5,string6,string7,string8,string9,string10,string11,string12,string13,string14);
  4887. ShowPlayerDialog(playerid,DIALOG_LIST, DIALOG_STYLE_MSGBOX, "{E0D01B}Adminhilfe{FFFFFF}", rest, "", "");
  4888. }
  4889. return 1;}
  4890. ocmd:setjob(playerid, params[])
  4891. {
  4892. if(IstAdmin(playerid)){
  4893. new pID, Frak, Fraktion[100], string[160];
  4894. if(sscanf(params, "ud", pID, Frak)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutze: /setjob [Playerid] [Jobid]");
  4895. if(Frak >= 0 || Frak < 5){
  4896. switch(Frak)
  4897. {
  4898. case 0: Fraktion = "NoOne";
  4899. case 1: Fraktion = "Lieferant";
  4900. case 2: Fraktion = "Pilot";
  4901. case 3: Fraktion = "Trucker";
  4902. case 4: Fraktion = "Taxi";
  4903. }
  4904. format(string, sizeof(string), " %s {4D8CE3}ist nun {FF0000}%s", getName(pID), Fraktion);
  4905. SendAdminMessageRang(COLOR_CORNSILK,1338,string);
  4906. SpielerInfo[pID][pJob] = Frak;
  4907. SavePlayer(pID);}}
  4908. return 1;
  4909. }
  4910. ocmd:makeleader(playerid, params[])
  4911. {
  4912. if(IstAdmin(playerid)){
  4913. new pID, Frak, Fraktion[100], Rang, string[160];
  4914. if(sscanf(params, "ddd", pID, Frak, Rang)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutze: /makeleader [Playerid] [Fraktion] [Rang]");
  4915. if(Frak >= 0 || Frak < 12 && Rang >= 0 || Rang <= 6){
  4916. switch(Frak)
  4917. {
  4918. case 0: Fraktion = "Zivi";
  4919. case 1: Fraktion = "Polizei";
  4920. case 2: Fraktion = "FBI";
  4921. case 3: Fraktion = "Medic";
  4922. case 4: Fraktion = "O-Amt";
  4923. case 5: Fraktion = "Yakuza";
  4924. case 6: Fraktion = "Comorra";
  4925. case 7: Fraktion = "Tambov";
  4926. case 8: Fraktion = "CripZ";
  4927. case 9: Fraktion = "BloodZ";
  4928. case 10: Fraktion = "Vagos";
  4929. case 11: Fraktion = "Fahrschule";
  4930. }
  4931. format(string, sizeof(string), " %s {4D8CE3}wurde zum Leiter der {FF0000}%s {4D8CE3}ernannt, Rang: {FF0000}%d", getName(pID), Fraktion, Rang);
  4932. SendAdminMessageRang(COLOR_CORNSILK,1338,string);
  4933. SpielerInfo[pID][pMember] = Frak;
  4934. SpielerInfo[pID][pLeader] = Frak;
  4935. SpielerInfo[pID][pRang] = Rang;
  4936. SavePlayer(pID);}}
  4937. return 1;
  4938. }
  4939. ocmd:makeadmin(playerid, params[])
  4940. {
  4941. if(IstAdmin(playerid)){
  4942. new pID, Level, string[160];
  4943. if(sscanf(params, "dd", pID, Level)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutze: /makeadmin [Playerid] [Level]");
  4944. format(string, sizeof(string), " %s {4D8CE3}wurde zum Admin ernannt, Level: {FF0000}%d", getName(pID), Level);
  4945. SendAdminMessageRang(COLOR_CORNSILK,1338,string);
  4946.  
  4947. SpielerInfo[pID][pLevel] = Level;
  4948. SavePlayer(pID);}
  4949. return 1;
  4950. }
  4951. ocmd:kick(playerid, params[])
  4952. {
  4953. if(IstAdmin(playerid)){
  4954. new pID, Grund[50], string[160], stringa[160];
  4955. if(sscanf(params, "ds", pID, Grund)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutze: /kick [Playerid] [Grund]");
  4956. format(stringa, sizeof(stringa), "ADM: %s {FAFAFA}wurde gekickt, Grund: {FF0000}%s", getName(pID), Grund);
  4957. format(string, sizeof(string), " %s {FAFAFA}wurde gekickt, Grund: {FF0000}%s", getName(pID), Grund);
  4958. SendAdminMessageRang(COLOR_CORNSILK,1338,stringa);
  4959. SendClientMessageToAll(COLOR_CORNSILK, string);
  4960. Kick(pID);}
  4961. return 1;
  4962. }
  4963. ocmd:fakeban(playerid, params[])
  4964. {
  4965. if(IstAdmin(playerid)){
  4966. new pID, Grund[50], string[160];
  4967. if(sscanf(params, "ds", pID, Grund)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutze: /fakeban [Playerid] [Grund]");
  4968. format(string, sizeof(string), " %s {FAFAFA}wurde gebannt, Grund: {FF0000}%s", getName(pID), Grund);
  4969. SendClientMessageToAll(COLOR_CORNSILK, string);
  4970. }
  4971. return 1;
  4972. }
  4973. ocmd:ban(playerid, params[])
  4974. {
  4975. if(IstAdmin(playerid)){
  4976. new pID, Grund[50], string[160], stringa[160];
  4977. if(sscanf(params, "ds", pID, Grund)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutze: /ban [Playerid] [Grund]");
  4978. format(stringa, sizeof(stringa), "ADM: %s {FAFAFA}wurde gebannt, Grund: {FF0000}%s", getName(pID), Grund);
  4979. format(string, sizeof(string), " %s {FAFAFA}wurde gebannt, Grund: {FF0000}%s", getName(pID), Grund);
  4980. SendAdminMessageRang(COLOR_CORNSILK,1338,stringa);
  4981. SendClientMessageToAll(COLOR_CORNSILK, string);
  4982. Ban(pID);}
  4983. return 1;
  4984. }
  4985. ocmd:a(playerid, params[])
  4986. {
  4987. new text[256], string[500];
  4988. if(sscanf(params, "s", text))
  4989. return SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /a [Text]");
  4990. if(IstAdmin(playerid))
  4991. {
  4992. format(string, sizeof(string), "((%s: {FAFAFA}%s ))", getName(playerid), text);
  4993. SendAdminMessageRang(OCBlau,1,string);
  4994. }
  4995. return 1;
  4996. }
  4997. ocmd:setfirmenlohn(playerid, params[]){
  4998. new pID, Gehalt;
  4999. if(IstAdmin(playerid)){
  5000. if(sscanf(params, "ud", pID, Gehalt)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /setfirmenlohn [ID] [Lohn]");
  5001. SpielerInfo[pID][pFirmenlohn] = Gehalt;
  5002. new str[200];
  5003. format(str, sizeof(str)," Dein neuer Firmenlohn beträgt : {FF0000}%d pro Levelup", Gehalt);
  5004. SendClientMessage(pID, FARBE_FADE1, str);
  5005. SavePlayer(pID);
  5006. }
  5007. return 1;
  5008. }
  5009. /*Gangs & Mafien*/
  5010. ocmd:lohn(playerid, params[]){
  5011. if(IstLeader(playerid)){
  5012. new pID,string[160],Wert, gehalt = SpielerInfo[playerid][pGehalt], lohn = SpielerInfo[pID][pGehalt];
  5013. if(sscanf(params, "ud", pID, Wert)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutze: /lohn [Playerid] [Wert]");
  5014. if(SpielerInfo[pID][pMember] == SpielerInfo[playerid][pLeader]){
  5015. if(Wert <= gehalt && gehalt >= lohn)
  5016. {
  5017. format(string, sizeof(string), "{FAFAFA}Dein Lohn wurde auf({FF0000}%d {24AD40}${FAFAFA}) gesetzt.",Wert);
  5018. SendClientMessage(pID,COLOR_CORNSILK,string);
  5019. format(string, sizeof(string), "{FAFAFA}Du hast den Lohn von %s auf {FF0000}%d {24AD40}$ {FAFAFA}gesetzt.",getName(pID), Wert);
  5020. SendClientMessage(playerid,COLOR_CORNSILK,string);
  5021. SpielerInfo[playerid][pGehalt] -= Wert;
  5022. SpielerInfo[pID][pGehalt] = Wert;
  5023. SavePlayer(pID);
  5024. SavePlayer(playerid);
  5025. }
  5026. else
  5027. {
  5028. SendClientMessage(playerid,COLOR_CORNSILK,"Dein Lohn ist zu niedrig");
  5029. }
  5030. }}
  5031. return 1;
  5032. }
  5033. ocmd:invite(playerid, params[]){
  5034. if(IstLeader(playerid)){
  5035. new pID,string[160];
  5036. if(sscanf(params, "u", pID)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutze: /invite [Playerid]");
  5037. if(SpielerInfo[pID][pMember] == 0){
  5038. SpielerInfo[pID][pMember] = SpielerInfo[playerid][pLeader];
  5039. format(string, sizeof(string), "Du wurdest in die Fraktione %s aufgenommen",GetTeamStr(SpielerInfo[playerid][pLeader]));
  5040. SendClientMessage(pID,COLOR_CORNSILK,string);
  5041. Frakspawn(pID);
  5042. }
  5043. else
  5044. {
  5045. SendClientMessage(pID,COLOR_CORNSILK,"Der Spieler ist bereits in einer Fraktion");
  5046. }
  5047. }
  5048. return 1;
  5049. }
  5050. ocmd:uninvite(playerid, params[]){
  5051. if(IstLeader(playerid)){
  5052. new pID,string[160];
  5053. if(sscanf(params, "u", pID)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutze: /uninvite [Playerid]");
  5054. if(SpielerInfo[pID][pMember] == SpielerInfo[playerid][pLeader]){
  5055. if(SpielerInfo[pID][pMember] > 0){
  5056. SpielerInfo[pID][pMember] = 0;
  5057. format(string, sizeof(string), "Du wurdest in die Fraktion %s rausgeworfen",GetTeamStr(SpielerInfo[playerid][pMember]));
  5058. SendClientMessage(pID,COLOR_CORNSILK,string);
  5059. SetPlayerHealth(pID, 0);
  5060. SavePlayer(pID);
  5061. }
  5062. }}
  5063. return 1;
  5064. }
  5065. ocmd:setrang(playerid, params[])
  5066. {
  5067. if(IstLeader(playerid)){
  5068. new pID, Rang, string[160];
  5069. if(sscanf(params, "ud", pID, Rang)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutze: /setrang [Playerid] [Rang]");
  5070. if(SpielerInfo[pID][pMember] == SpielerInfo[playerid][pLeader]){
  5071. if(SpielerInfo[pID][pRang] < Rang){
  5072. format(string, sizeof(string), "Du wurdest befördert: %d", Rang);}
  5073. else if(SpielerInfo[pID][pRang] > Rang){
  5074. format(string, sizeof(string), "Du wurdest degradiert: %d", Rang);}
  5075. SendClientMessage(pID,COLOR_CORNSILK,string);
  5076. SpielerInfo[pID][pRang] = Rang;
  5077. SavePlayer(pID);}}
  5078. return 1;
  5079. }
  5080. ocmd:f(playerid, params[]){
  5081. if(SpielerInfo[playerid][pMember] > 0 && !istBeamter(playerid))
  5082. {
  5083. new text[128];
  5084. if(sscanf(params, "s", text))
  5085. return SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /f [Text]");
  5086. format(text, sizeof text, "((%s {FAFAFA}%s: %s ))", GetRang(SpielerInfo[playerid][pRang]), getName(playerid), text);
  5087. for(new i; i < GetMaxPlayers(); i++)
  5088. {
  5089. if(IsPlayerConnected(i))
  5090. SendTeamMessage(SpielerInfo[playerid][pMember], Grun, text);
  5091. }
  5092. }
  5093. return 1;
  5094. }
  5095. /*Sicherheitsbehörden Befehle*/
  5096. ocmd:setlohn(playerid, params[]){
  5097. new pID, Gehalt;
  5098. if(SpielerInfo[playerid][pLeader] == 1 || SpielerInfo[playerid][pLeader] == 2){
  5099. if(sscanf(params, "ud", pID, Gehalt)) return SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /setlohn [ID] [Lohn]");
  5100. if(!istBeamter(pID))return SendClientMessage(playerid, COLOR_CORNSILK, "Der Spieler muss ein Beamter sein");
  5101. {
  5102. SpielerInfo[pID][pGehalt] = Gehalt;
  5103. new str[200];
  5104. format(str, sizeof(str),"Dein neuer Lohn : {FF0000}%d ", Gehalt);
  5105. SendClientMessage(pID, FARBE_FADE1, str);
  5106. SavePlayer(pID);
  5107. }
  5108. }
  5109. return 1;
  5110. }
  5111. ocmd:ptor(playerid, params[]){
  5112. if(istBeamter(playerid)){
  5113. MoveObject(lspd1, 243.89999389648, 72.699996948242, 1004, 2);
  5114. MoveObject(lspd2, 248.80000305176, 72.800003051758, 1004, 2);
  5115. SetTimer("Torzu",5000,false);}
  5116. return 1;
  5117. }
  5118. ocmd:handschellenab(playerid, params[]){
  5119. new pID;
  5120. if(istBeamter(playerid))
  5121. {
  5122. if(sscanf(params, "u", pID)) return SendClientMessage(playerid, COLOR_CORNSILK,"Benutze: /handschnellenab [id] ");
  5123. for(new i=0; i<MAX_PLAYER_ATTACHED_OBJECTS; i++)
  5124. {
  5125. if(IsPlayerAttachedObjectSlotUsed(pID, i)) RemovePlayerAttachedObject(pID, i);
  5126. }
  5127. SetPlayerSpecialAction(pID,0);
  5128. }
  5129. return 1;}
  5130. ocmd:grab(playerid, params[]){
  5131. new pID, sitz, bool:voll[4];
  5132. if(istBeamter(playerid))
  5133. {
  5134. if(sscanf(params, "ud", pID,sitz)) return SendClientMessage(playerid, COLOR_CORNSILK,"Benutze: /grab [id] [Sitz]");
  5135. SetPlayerAttachedObject(pID, 0, 19418, 6, -0.011000, 0.028000, -0.022000, -15.600012, -33.699977, -81.700035, 0.891999, 1.000000, 1.168000);
  5136. SetPlayerSpecialAction(pID,24);
  5137. if(IsPlayerInAnyVehicle(playerid) && !IsPlayerInAnyVehicle(pID)){
  5138. if(sitz > 0 || sitz < 5 && sitz != GetPlayerVehicleSeat(playerid)){
  5139. switch(sitz)
  5140. {
  5141. case 1:{if(voll[0] == false){PutPlayerInVehicle(pID, GetPlayerVehicleID(playerid), 1); voll[0] = true;}}
  5142. case 2:{if(voll[1] == false){PutPlayerInVehicle(pID, GetPlayerVehicleID(playerid), 2); voll[1] = true;}}
  5143. case 3:{if(voll[2] == false){PutPlayerInVehicle(pID, GetPlayerVehicleID(playerid), 3); voll[2] = true;}}
  5144. case 4:{if(voll[3] == false){PutPlayerInVehicle(pID, GetPlayerVehicleID(playerid), 4); voll[3] = true;}}
  5145. }
  5146. }}
  5147. }
  5148. return 1;
  5149. }
  5150. ocmd:handschellen(playerid, params[]){
  5151. new pID;
  5152. if(istBeamter(playerid))
  5153. {
  5154. if(sscanf(params, "u", pID)) return SendClientMessage(playerid, COLOR_CORNSILK,"Benutze: /handschnellen [id] ");
  5155. /*Handschelle = */
  5156. SetPlayerAttachedObject(pID, 0, 19418, 6, -0.011000, 0.028000, -0.022000, -15.600012, -33.699977, -81.700035, 0.891999, 1.000000, 1.168000);
  5157. SetPlayerSpecialAction(pID,24);
  5158. }
  5159. return 1;}
  5160. ocmd:blitzeradd(playerid, params[]){
  5161. if(istBeamter(playerid))
  5162. {
  5163. if(sscanf(params, "dd", speed, Radius)) return SendClientMessage(playerid, COLOR_CORNSILK,"Benutze: /blitzer [speed][radius] ");
  5164. AddBlitzer(playerid, speed,Radius);
  5165. }
  5166. return 1;}
  5167. ocmd:clear(playerid, params[]){
  5168. new pID, str[200];
  5169. if(istBeamter(playerid) && IsPlayerInRangeOfPoint(playerid, 2.0, 256.9072,63.6661,1003.6406))
  5170. {
  5171. if(sscanf(params, "u", pID)) return SendClientMessage(playerid, COLOR_CORNSILK,"Benutze: /clear [id] ");
  5172. SpielerInfo[pID][pWanted] = 0;
  5173. format(str, sizeof(str), "<< Officer %s hat deine Akte gelöscht >>", getName(playerid));
  5174. SendClientMessage(pID,COLOR_LIGHTCORAL, str);
  5175. format(str, sizeof(str), "<< Du hast die Akte von %s gelöscht >>", getName(pID));
  5176. SendClientMessage(playerid,COLOR_LIGHTCORAL, str);
  5177. TextDrawHideForPlayer(playerid,Wantedpunkt[pID]);
  5178. SpielerInfo[pID][pWanted] = 0;}
  5179. return 1;
  5180. }
  5181. ocmd:einsperren(playerid, params[]){
  5182. new pID, Time, str[300];
  5183. if(istBeamter(playerid)){
  5184. if(sscanf(params, "ud", pID, Time)) return SendClientMessage(playerid, COLOR_CORNSILK,"Benutze: /einsperren [id] [Minuten] [Kaution]");
  5185. if(!IsPlayerConnected(pID) || IsPlayerNPC(pID))return SendClientMessage(playerid,COLOR_CORNSILK,"Dieser Spieler ist nicht Aktiv...");
  5186. if(!AtZelle(pID) && !AtZelle(playerid))return SendClientMessage(playerid,COLOR_CORNSILK,"Du oder der Verbrecher befindet sich zu Weit von der Zelle!");
  5187. if(GetDistanceBetweenPlayers(pID, playerid) < 10){
  5188. new ttime = Time*1000*60;
  5189. GivePlayerMoney(playerid, 2000);
  5190. GivePlayerMoney(pID, -2000);
  5191. if(SpielerInfo[playerid][pMember]==1||SpielerInfo[playerid][pLeader]==1)
  5192. {
  5193. format(str,sizeof str,"Du wurdest von Officer %s verhaftet, du musst %d Minute/n im Gefängnis sein.",getName(playerid), Time);
  5194. SendClientMessage(pID,COLOR_LIGHTCORAL,str);
  5195. format(str, sizeof(str), "<< Officer %s hat den Verdächtigen %s eingesperrt >>", getName(playerid), getName(pID));
  5196. OOCNews(COLOR_LIGHTCORAL, str);
  5197. format(str,sizeof str,"Du hast %s verhaftet, %d Minute",getName(pID), Time);
  5198. SendClientMessage(playerid,COLOR_LIGHTCORAL,str);
  5199. }
  5200. else if(SpielerInfo[playerid][pMember]==2||SpielerInfo[playerid][pLeader]==2)
  5201. {
  5202. format(str,sizeof str,"Du wurdest von FBI-Agent %s verhaftet, du musst %d Minute/n im Gefängnis sein.",getName(playerid), Time);
  5203. SendClientMessage(pID,COLOR_LIGHTCORAL,str);
  5204. format(str, sizeof(str), "<< FBI-Agent %s hat den Verdächtigen %s eingesperrt >>", getName(playerid), getName(pID));
  5205. OOCNews(COLOR_LIGHTCORAL, str);
  5206. format(str,sizeof str,"Du hast %s verhaftet, %d Minute",getName(pID), Time);
  5207. SendClientMessage(playerid,COLOR_LIGHTCORAL,str);
  5208. }
  5209. SetTimerEx("Freiheit", ttime,false,"d",pID);
  5210. SetPlayerInterior(pID, 6);
  5211. SpielerInfo[playerid][pKnast] = 1;
  5212. SetPlayerSkin(pID, 221);
  5213. SetPlayerPos(pID,264.5391,77.4866,1001.0391);
  5214. ResetPlayerWeapons(pID);}}
  5215. return 1;
  5216. }
  5217. ocmd:blitzerremoveall(playerid, params[])
  5218. {
  5219. if(istBeamter(playerid)){
  5220. RemoveAllBlitzer();}
  5221. return 1;
  5222. }
  5223. ocmd:ausruestung(playerid, params[])
  5224. {
  5225. if(istBeamter(playerid)){
  5226. SetPlayerAttachedObject(playerid,0,19141,2,0.105999,0.016000,0.000000,0.000000,0.000000,0.000000,1.000000,1.000000,1.000000);
  5227. SetPlayerAttachedObject(playerid,1,19142,1,0.085000,0.059000,0.000000,0.000000,0.000000,0.000000,1.059000,1.322999,1.135000);
  5228. SetPlayerAttachedObject(playerid,2,19163,2,0.069999,0.040000,0.000000,0.000000,85.399940,173.500076,1.000000,1.000000,1.000000);
  5229. SetPlayerAttachedObject(playerid,3,18643,2,0.111999,0.000000,-0.090999,-2.899999,-0.199999,87.600059,1.000000,1.000000,1.000000);}
  5230. return 1;
  5231. }
  5232. ocmd:zivil(playerid, params[])
  5233. {
  5234. if(istBeamter(playerid)){
  5235. for(new i=0; i<MAX_PLAYER_ATTACHED_OBJECTS; i++)
  5236. {
  5237. if(IsPlayerAttachedObjectSlotUsed(playerid, i)) RemovePlayerAttachedObject(playerid, i);
  5238. }
  5239. }
  5240. return 1;
  5241. }
  5242. ocmd:camera(playerid, params[]){
  5243. new stat;
  5244. if(istBeamter(playerid)){
  5245. if(sscanf(params, "d",stat)){
  5246. SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /camera [Statistikcode]");
  5247. SendClientMessage(playerid, COLOR_CORNSILK, "Code: 1 BSN Richtung SF | 2 BSN Richtung LS | ");
  5248. return 1;
  5249. }
  5250. new string[200];
  5251. switch (stat)
  5252. {
  5253. case 1:
  5254. {
  5255. SetPlayerCameraPos(playerid, 1219.1892,-924.0557,55.3483);
  5256. SetPlayerCameraLookAt(playerid, 1190.6022,-943.0222,42.7567);
  5257. SendClientMessage(playerid,COLOR_CORNSILK,"Blickrichtung SF");
  5258. }
  5259. case 2:
  5260. {
  5261. SetPlayerCameraPos(playerid, 1219.1892,-924.0557,55.3483);
  5262. SetPlayerCameraLookAt(playerid, 1257.0942,-933.0156,42.5843);
  5263. SendClientMessage(playerid,COLOR_CORNSILK,"Blickrichtung LS");
  5264. }
  5265. default:
  5266. {
  5267. SetCameraBehindPlayer(playerid);
  5268. format(string, sizeof(string), "Falscher Statistikcode");
  5269. }
  5270. }
  5271. SendClientMessage(playerid, FARBE_FADE1, string);
  5272. }
  5273. return 1;
  5274. }
  5275. ocmd:pd(playerid, params[]){
  5276. if(istBeamter(playerid)){
  5277. SendClientMessage(playerid, COLOR_YELLOW,"x¸,ø¤°``°¤ø,¸Streetlifehistory Polizeihilfe¸,ø¤°``°¤ø,¸x");
  5278. SendClientMessage(playerid, COLOR_CORNSILK," | /wanteds | /handschellen(ab) | /einsperren | /ausruestung | /zivil");
  5279. SendClientMessage(playerid, COLOR_CORNSILK," | /setlohn | /clear | /r | /camera | /blitzeradd | /blitzerremoveall");
  5280. SendClientMessage(playerid, COLOR_CORNSILK," | 'Tab' Klick = Wantedkatalog /grab '1 - 4'");
  5281. SendClientMessage(playerid, COLOR_YELLOW,"x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x");}
  5282. return 1;}
  5283. ocmd:r(playerid, params[])
  5284. {
  5285. if(istBeamter(playerid))
  5286. {
  5287. new text[256],Rang[54];
  5288. if(sscanf(params, "s", text))
  5289. return SendClientMessage(playerid, COLOR_CORNSILK, "Benutzung: /r [Text]");
  5290. if(istBeamter(playerid))
  5291. {
  5292. switch(SpielerInfo[playerid][pRang])
  5293. {
  5294. case 1: Rang = "Azubi";
  5295. case 2: Rang = "Officer";
  5296. case 3: Rang = "Streifenpolizist";
  5297. case 4: Rang = "Fortgeschrittener";
  5298. case 5: Rang = "Agent";
  5299. case 6: Rang = "Ausbilder";
  5300. case 7: Rang = "Sekretär";
  5301. case 8: Rang = "Stellv. Leiter";
  5302. case 9: Rang = "Leiter";
  5303. case 10: Rang = "Bürgermeister";
  5304. }
  5305. }
  5306. format(text, sizeof(text), "((%s {FAFAFA}%s: %s ))", Rang, getName(playerid), text);
  5307. for(new i; i < GetMaxPlayers(); i++)
  5308. {
  5309. if(IsPlayerConnected(i))
  5310. if(istBeamter(i))//Nur die Frak, wo man drinnen ist
  5311. SendClientMessage(i,Grun, text);
  5312. }
  5313. }
  5314. return 1;
  5315. }
  5316.  
  5317. SL_CALL SavePlayerAll()
  5318. {
  5319. for(new i = 0; i < MAX_PLAYERS; i++)
  5320. {
  5321. SavePlayer(i);
  5322. }
  5323. }
  5324. SL_CALL SaveStaat() /* Unter ongamemodeexit oder per Timer alle 5 Minuten ausführen */
  5325. {
  5326. new datei[64] = "Staat.ini";
  5327. if(!fexist(datei)) { dini_Create(datei); }
  5328. dini_IntSet(datei,"Betrag",Staatskasse);
  5329. return 1;
  5330. }
  5331. SL_CALL OOCNews(color,const string[])
  5332. {
  5333. for(new i = 0; i < MAX_PLAYERS; i++)
  5334. {
  5335. if(IsPlayerConnected(i))
  5336. {
  5337. if(!gNews[i])
  5338. {
  5339. SendClientMessage(i, color, string);
  5340. }
  5341. }
  5342. }
  5343. }
  5344. SL_CALL ABroadCast(color,const string[],level)
  5345. {
  5346. for(new i = 0; i < MAX_PLAYERS; i++)
  5347. {
  5348. if(IsPlayerConnected(i))
  5349. {
  5350. if (SpielerInfo[i][pLevel] >= level)
  5351. {
  5352. SendClientMessage(i, color, string);
  5353. printf("%s", string);
  5354. }
  5355. }
  5356. }
  5357. return 1;
  5358. }
  5359. SL_CALL Tutorial(playerid)
  5360. {
  5361. new string1[256],string2[256],string3[256],string4[256],string5[256],rest[500];
  5362. if(TutTime[playerid] >= 1) // wenn die Zeit auf 1 gesetzt worden war, gehts los. Wenn während des Tutorials die zeit wieder auf 0 gesetzt wird, passiert in dem Timer garnichts.
  5363. {
  5364. if(TutTime[playerid] == 2)// hier wird abgefragt wieviel Sekunden seit dem Start des Tutorials verstrichen sind
  5365. {
  5366. format(string1, sizeof(string1), "{FAFAFA}Willkommen auf SLH, schön dass du zu uns gefunden hast");
  5367. format(string2, sizeof(string2), "{FAFAFA}Es folgt nun eine kleine Einleitung also pass einfach auf.");
  5368. format(string3, sizeof(string3), "{FAFAFA}Natürlich kannst du alles im Forum nachschlagen wenn du also dass Tut überspringen möchtest");
  5369. format(string4, sizeof(string4), "{FAFAFA}dann tippe {E01B3F}/perso {FAFAFA}ein.");
  5370. format(string5, sizeof(string5), "x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x");
  5371. format(rest, sizeof rest, "%s\n%s\n%s\n%s\n%s", string1,string2,string3,string4,string5);
  5372. ShowPlayerDialog(playerid,DIALOG_TUTORIAL, DIALOG_STYLE_MSGBOX, "{E0D01B}Streetlifehistory - Tutorial{FFFFFF}", rest, "", "");
  5373. SetPlayerCameraPosEx(playerid, 2827.4434,1288.1993,10.7685,2827.4434,1288.1993,10.7685);
  5374. MoveCamera(playerid, 2825.3301,1347.0905,23.7587, 2827.4434,1288.1993,10.7685, 0.2);
  5375. TextDrawHideForPlayer(playerid, newlogin0);
  5376. TextDrawHideForPlayer(playerid, newlogin1);
  5377. TextDrawHideForPlayer(playerid, newlogin2);
  5378. TextDrawHideForPlayer(playerid, newlogin3);
  5379. TextDrawHideForPlayer(playerid, newlogin5);
  5380. TextDrawHideForPlayer(playerid, newlogin7);
  5381. TextDrawHideForPlayer(playerid, newlogin8);
  5382. TextDrawHideForPlayer(playerid, newlogin9);
  5383. TextDrawHideForPlayer(playerid, newlogin10);
  5384. TextDrawHideForPlayer(playerid, newlogin11);
  5385. TextDrawHideForPlayer(playerid, newlogin12);
  5386. TextDrawHideForPlayer(playerid, newlogin13);
  5387. TextDrawHideForPlayer(playerid, newlogin14);
  5388. TextDrawHideForPlayer(playerid, newlogin15);
  5389. PlayAudioStreamForPlayer(playerid,"http://fairnet-arts.de/mp3/tutorial.mp3");
  5390. SpielerInfo[playerid][pBerechtigt] = 1;
  5391. //TextDrawShowForPlayer(playerid,lbt);
  5392. //TextDrawShowForPlayer(playerid,lbb);
  5393. }
  5394. else if(TutTime[playerid] == 12)// hier wird abgefragt wieviel Sekunden seit dem Start des Tutorials verstrichen sind
  5395. {
  5396. format(string1, sizeof string1, "{FAFAFA}Bitte behandle jeden so wie du gern behandelt werden möchtest.");
  5397. format(string2, sizeof string2, "{FAFAFA}Ein Verstoß´gegen diese Regel wird mit einem Warn gehandelt.");
  5398. format(string3, sizeof string3, "{FAFAFA}Bitte respektiere die Admins auch, denn auch sie werden dich..");
  5399. format(string4, sizeof string4, "{FAFAFA}..respektieren, sofern du nichts böses getan hast.");
  5400. format(string5, sizeof string5, "x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x");
  5401. format(rest, sizeof rest, "%s\n%s\n%s\n%s\n%s", string1,string2,string3,string4,string5);
  5402. ShowPlayerDialog(playerid,DIALOG_TUTORIAL, DIALOG_STYLE_MSGBOX, "{E0D01B}Respekt und Umgangston{FFFFFF}", rest, "", "");
  5403. }
  5404. else if(TutTime[playerid] == 22)// hier wird abgefragt wieviel Sekunden seit dem Start des Tutorials verstrichen sind
  5405. {
  5406. format(string1, sizeof string1, "{FAFAFA}Falls du jemanden siehst, der Bugusing betreibt");
  5407. format(string2, sizeof string2, "{FAFAFA}oder sich aufällig verhält, sprich Cheatet, dann melde es umgehend einem Admin.");
  5408. format(string3, sizeof string3, "{FAFAFA}Dazu musst du ein Video mit z.B 'Fraps' aufnehmen, und im Forum einem Admin zuschicken.");
  5409. format(string4, sizeof string4, "x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x");
  5410. format(rest, sizeof rest, "%s\n%s\n%s\n%s", string1,string2,string3,string4);
  5411. ShowPlayerDialog(playerid,DIALOG_TUTORIAL, DIALOG_STYLE_MSGBOX, "{E0D01B}Verbotene Vorteile verschaffen{FFFFFF}", rest, "", "");
  5412. }
  5413. else if(TutTime[playerid] == 32)// hier wird abgefragt wieviel Sekunden seit dem Start des Tutorials verstrichen sind
  5414. {
  5415. format(string1, sizeof string1, "{FAFAFA}Häuser werden nach Wunsch erstellt, einige gibt es aber auch bereits zum Kaufen.");
  5416. format(string2, sizeof string2, "{FAFAFA}Fahrzeuge werden in Autohäusern verkauft dazu benötigst du auch ein Nummernschild.");
  5417. format(string3, sizeof string3, "{FAFAFA}Auch hier gibt es Regeln an die du dich halten solltest");
  5418. format(string4, sizeof string4, "{FAFAFA}diese werden dir im Forum genauer erläutert.");
  5419. format(string5, sizeof string5, "x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x");
  5420. format(rest, sizeof rest, "%s\n%s\n%s\n%s\n%s", string1,string2,string3,string4,string5);
  5421. ShowPlayerDialog(playerid,DIALOG_TUTORIAL, DIALOG_STYLE_MSGBOX, "{E0D01B}Häuser, Grundbesitze und Fahrzeuge{FFFFFF}", rest, "", "");
  5422. }
  5423. else if(TutTime[playerid] == 42)// hier wird abgefragt wieviel Sekunden seit dem Start des Tutorials verstrichen sind
  5424. {
  5425. format(string1, sizeof string1, "{FAFAFA}Als User kann man sich ein Business kaufen oder/und einen Beruf suchen,");
  5426. format(string2, sizeof string2, "{FAFAFA}dazu musst du dich im Forum bewerben. ");
  5427. format(string3, sizeof string3, "{FAFAFA}Für ein Biz brauchst du ein Konzept, ohne diesen werden die Admins dir keine");
  5428. format(string4, sizeof string4, "{FAFAFA}Erlaubniss erteilen dir ein Biz herzurichten.");
  5429. format(string5, sizeof string5, "x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x");
  5430. format(rest, sizeof rest, "%s\n%s\n%s\n%s\n%s", string1,string2,string3,string4,string5);
  5431. ShowPlayerDialog(playerid,DIALOG_TUTORIAL, DIALOG_STYLE_MSGBOX, "{E0D01B}Berufe und Firmen{FFFFFF}", rest, "", "");
  5432. }
  5433. else if(TutTime[playerid] == 52)
  5434. {
  5435. format(string1, sizeof string1, "{FAFAFA}Ich hoffe du hast dir alles gut gemerkt, falls nicht ist es nicht so tragisch,");
  5436. format(string2, sizeof string2, "{FAFAFA}im {E0B21B}Forum {FAFAFA}kannst du alles noch einmal nach lesen.");
  5437. format(string3, sizeof string3, "x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x");
  5438. format(rest, sizeof rest, "%s\n%s\n%s", string1,string2,string3);
  5439. ShowPlayerDialog(playerid,DIALOG_TUTORIAL, DIALOG_STYLE_MSGBOX, "{E0D01B}Streetlifehistory{FFFFFF}", rest, "", "");
  5440. }
  5441. else if(TutTime[playerid] == 62)
  5442. {
  5443. format(string1, sizeof string1, "{FAFAFA}Scheien erhälst du bei den Fahrlehrern,");
  5444. format(string2, sizeof string2, "{FAFAFA}für diese musst du eine Fahrschule besuchen.");
  5445. format(string3, sizeof string3, "x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x x¸,ø¤°``°¤ø,¸¸,ø¤°``°¤ø,¸x");
  5446. format(rest, sizeof rest, "%s\n%s\n%s", string1,string2,string3);
  5447. ShowPlayerDialog(playerid,DIALOG_TUTORIAL, DIALOG_STYLE_MSGBOX, "{E0D01B}Info{FFFFFF}", rest, "", "");
  5448. }
  5449. else if(TutTime[playerid] == 72) // hier wird abgefragt wieviel Sekunden seit dem Start des Tutorials verstrichen sind
  5450. {
  5451. SpielerInfo[playerid][Firstlogin] = 1;
  5452. KillTimer(TutTimer[playerid]); // der Tutorial Timer wird beendigt
  5453. TutTime[playerid] = -1; // die Tutorial Zeit auf INVALID gsetzt - nach Goldkiller :)
  5454. SpawnPlayer(playerid);//Frakspawn(playerid);
  5455. SavePlayer(playerid);
  5456. TogglePlayerControllable(playerid,true); // hier wird die Fähigkeit sich zu bewegen wieder auf "wahr" gesetzt
  5457. GameTextForPlayer(playerid,"~g~Willkommen, ~r~ auf Streetlifehistory.",6000,1); // GameText am Ende des Tutorials
  5458. }
  5459. TutTime[playerid]++; // hier wird die Zeit jede Sekunde erhöht
  5460. }
  5461. }
  5462.  
  5463. SL_CALL Freiheit(id){
  5464. if(SpielerInfo[id][pKnast] == 1){
  5465. SetPlayerPos(id, 248.9362,67.8887,1003.6406);
  5466. SetPlayerInterior(id, 0);
  5467. SpielerInfo[id][pKnast] = 0;
  5468. }
  5469. return 1;
  5470. }
  5471. SL_CALL PayLog(string[])
  5472. {
  5473. new entry[256];
  5474. format(entry, sizeof(entry), "%s\n\n",string);
  5475. new File:hFile;
  5476. hFile = fopen("Pay.log", io_append);
  5477. fwrite(hFile, entry);
  5478. fclose(hFile);
  5479. }
  5480. SL_CALL RMTor()
  5481. {
  5482. MoveObject(RMafiator, -2869.6999511719, 504.89999389648, 5.5999999046326, 2);
  5483. }
  5484. SL_CALL SetVehicleParamsForAll(carid,objective,doorslocked)
  5485. {
  5486. new i;
  5487. for(i=0; i<MAX_PLAYERS; i++) { SetVehicleParamsForPlayer(carid,i,objective,doorslocked); }
  5488. }
  5489. SL_CALL Zahltag()
  5490. {
  5491. for(new i = 0;i<MAX_PLAYERS;i++)
  5492. {
  5493. SetPVarInt(i, "Stunde", GetPVarInt(i, "Stunde")+1);
  5494. if(GetPVarInt(i, "Stunde") == 60)
  5495. {
  5496. PayDay(i);
  5497. }
  5498. }
  5499. return 1;
  5500. }
  5501. stock StripNewLine(string[])
  5502. {
  5503. new len = strlen(string);
  5504. if (string[0]==0) return ;
  5505. if ((string[len - 1] == '\n') || (string[len - 1] == '\r')) {
  5506. string[len - 1] = 0;
  5507. if (string[0]==0) return ;
  5508. if ((string[len - 2] == '\n') || (string[len - 2] == '\r')) string[len - 2] = 0;
  5509. }
  5510. }
  5511. stock SendTeamMessage(teamid, color, string[])
  5512. {
  5513. for(new i = 0; i < MAX_PLAYERS; i++)
  5514. {
  5515. if(IsPlayerConnected(i))
  5516. {
  5517. if(!istBeamter(i)){
  5518. if(SpielerInfo[i][pMember] == teamid)
  5519. {
  5520. SendClientMessage(i, color, string);
  5521. }}
  5522. }
  5523. }
  5524. }
  5525. stock AtZelle(id)
  5526. {
  5527. if(IsPlayerInRangeOfPoint(id,5.0,268.1141,77.5713,1001.0391)) return 1;
  5528. else if(IsPlayerInRangeOfPoint(id,5.0,264.9046,77.8138,1001.0391)) return 1;
  5529. else if(IsPlayerInRangeOfPoint(id,4.0,1526.8578,-1678.2483,5.8906)) return 1;
  5530. else if(IsPlayerInRangeOfPoint(id,4.0,1526.8578,-1678.2483,5.8906)) return 1;
  5531. return 0;
  5532. }
  5533. stock AtATM(playerid)
  5534. {
  5535. for(new i=0; i<MAX_ATMS; i++)
  5536. {
  5537. if(IsPlayerInRangeOfPoint(playerid,2,position[i][atmx],position[i][atmy],position[i][atmz])) return 1;
  5538. }
  5539. return 0;
  5540. }
  5541. stock AtDrug(playerid)
  5542. {
  5543. for(new i=0; i<MAX_DRUGS; i++)
  5544. {
  5545. if(IsPlayerInRangeOfPoint(playerid,2,Drugpos[i][dx],Drugpos[i][dy],Drugpos[i][dz])) return 1;
  5546. }
  5547. return 0;
  5548. }
  5549. stock Levelup(playerid,amount)
  5550. {
  5551. new firmenlohn = SpielerInfo[playerid][pFirmenlohn], str[200];
  5552. SpielerInfo[playerid][pUserLevel] +=amount;
  5553. GivePlayerMoney(playerid, firmenlohn);
  5554. format(str,sizeof(str)," Firmenlohn : %d",firmenlohn);
  5555. PayLog(str);
  5556. SpielerInfo[playerid][pRespekt] = 0;
  5557. SetPlayerScore(playerid,GetPlayerScore(playerid)+amount);
  5558. GameTextForPlayer(playerid,"~r~Levelup!!",2000,3);
  5559. return 1;
  5560. }
  5561. stock IsPlaneOrHeli(vehicleid)
  5562. {
  5563. switch(GetVehicleModel(vehicleid))
  5564. {
  5565. case 592,577,511,512,593,520:return 1;
  5566. case 553,476,519,460,513,548:return 1;
  5567. case 425,417,487,488,497,563:return 1;
  5568. case 447,469:return 1;
  5569. }
  5570. return 0;
  5571. }
  5572. stock IsCar(vehicleid)
  5573. {
  5574. switch(GetVehicleModel(vehicleid))
  5575. {
  5576. case 568,424,579,400,422:return 1;
  5577. case 500,556,470,412,482:return 1;
  5578. case 489,505,495,416,438:return 1;
  5579. case 490,528,598,597,582:return 1;
  5580. case 420,536,575,534,413:return 1;
  5581. case 567,535,566,576,543:return 1;
  5582. case 605,459,552,478,554:return 1;
  5583. case 480,533,439,555,602:return 1;
  5584. case 429,496,402,541,415:return 1;
  5585. case 589,587,565,494,502:return 1;
  5586. case 503,411,559,603,475:return 1;
  5587. case 506,451,558,477,418:return 1;
  5588. case 404,479,458,561,483:return 1;
  5589. case 434,545,588,423,442:return 1;
  5590. case 428,409,525,445,504:return 1;
  5591. case 401,518,527,542,507:return 1;
  5592. case 562,585,419,526,604:return 1;
  5593. case 466,492,474,546,517:return 1;
  5594. case 410,551,516,467,600:return 1;
  5595. case 426,436,547,405,580:return 1;
  5596. case 560,550,549,540,491:return 1;
  5597. case 529,421:return 1;
  5598. }
  5599. return 0;
  5600. }
  5601. stock IsLkw(vehicleid)
  5602. {
  5603. switch(GetVehicleModel(vehicleid))
  5604. {
  5605. case 433,431,437,427,407:return 1;
  5606. case 544,432,601,573,444:return 1;
  5607. case 556,557,499,498,609:return 1;
  5608. case 524,578,455,403,414:return 1;
  5609. case 443,514,515,440,408:return 1;
  5610. case 456,508,406:return 1;
  5611. }
  5612. return 0;
  5613. }
  5614. stock IsBike(vehicleid)
  5615. {
  5616. switch(GetVehicleModel(vehicleid))
  5617. {
  5618. case 523,521,463,522,461:return 1;
  5619. case 471,468,586:return 1;
  5620. }
  5621. return 0;
  5622. }
  5623. stock SetPos(id, id1){
  5624. new Float:pos[3];
  5625. SetPlayerInterior(id, GetPlayerInterior(id1));
  5626. GetPlayerPos(id1, pos[0], pos[1], pos[2]);
  5627. SetPlayerPos(id, pos[0], pos[1], pos[2]);}
  5628. stock GetWeaponModel(weaponid)
  5629. {
  5630. new modell;
  5631.  
  5632. switch(weaponid)
  5633. {
  5634. case 1: modell=331; case 2: modell=333; case 3: modell=334;
  5635. case 4: modell=335; case 5: modell=336; case 6: modell=337;
  5636. case 7: modell=338; case 8: modell=339; case 9: modell=341;
  5637. case 10: modell=321; case 11: modell=322; case 12: modell=323;
  5638. case 13: modell=324; case 14: modell=325; case 15: modell=326;
  5639. case 16: modell=342; case 17: modell=343; case 18: modell=344;
  5640. case 22: modell=346; case 23: modell=347; case 24: modell=348;
  5641. case 25: modell=349; case 26: modell=350; case 27: modell=351;
  5642. case 28: modell=352; case 29: modell=353; case 30: modell=355;
  5643. case 31: modell=356; case 32: modell=372; case 33: modell=357;
  5644. case 34: modell=358; case 35: modell=359; case 36: modell=360;
  5645. case 37: modell=361; case 38: modell=362; case 39: modell=363;
  5646. case 41: modell=365; case 42: modell=366; case 46: modell=371;
  5647. }
  5648. if(modell<300) return -1;
  5649.  
  5650. return modell;
  5651. }
  5652. SL_CALL Torzu(){
  5653. DestroyObject(lspd1);
  5654. DestroyObject(lspd2);
  5655. lspd1 = CreateObject(3089, 245.10000610352, 72.699996948242, 1004, 0, 0, 0);
  5656. lspd2 = CreateObject(3089, 247.69999694824, 72.800003051758, 1004, 0, 0, 180);}
  5657. SL_CALL Unfreeze(playerid){
  5658. TogglePlayerControllable(playerid,1);}
  5659. stock istBeamter(pid){
  5660. if(SpielerInfo[pid][pMember] == 1 || SpielerInfo[pid][pMember] == 2) return 1;
  5661. return 0;
  5662. }
  5663. stock DeletePickup(pickupid)
  5664. {
  5665. DestroyPickup(pickupid);
  5666. return 1;
  5667. }
  5668. stock DropPlayerWeapons(playerid)
  5669. {
  5670. new playerweapons[13][2];
  5671. new Float:x,Float:y,Float:z;
  5672. GetPlayerPos(playerid, x, y, z);
  5673.  
  5674. for(new i=0;i<13;i++){
  5675. GetPlayerWeaponData(playerid, i, playerweapons[i][0], playerweapons[i][1]);
  5676. new modell=GetWeaponModel(playerweapons[i][0]);
  5677. new times=floatround(playerweapons[i][1]/10.0001);
  5678. new string[256];
  5679. format(string, sizeof(string), "%d", times);
  5680. times=strval(string);
  5681. new Float:X=x+(random(3)-random(3));
  5682. new Float:Y=y+(random(3)-random(3));
  5683. if(playerweapons[i][1]!=0)
  5684. {
  5685. if(times>DropLimit) times=DropLimit;
  5686. for(new a=0;a<times;a++)
  5687. {
  5688. if(modell!=-1)
  5689. {
  5690. new pickupid=CreatePickup(modell, 3, X, Y, z);
  5691. SetTimerEx("DeletePickup", DeleteTime*1000, false, "d", pickupid);
  5692. }
  5693. }
  5694. }
  5695. }
  5696. return 1;
  5697. }
  5698. stock profile(playerid){
  5699. new Name[MAX_PLAYER_NAME],respekt = SpielerInfo[playerid][pRespekt],beruf = SpielerInfo[playerid][pMember],rang = SpielerInfo[playerid][pRang], Bankgeld = SpielerInfo[playerid][pBank],alter = SpielerInfo[playerid][pAge], Geld = GetPlayerMoney(playerid), Score = GetPlayerScore(playerid),
  5700. string1[256],string2[256],string3[256],string4[256],string5[256],string6[56],string7[56],string8[56],string9[56],string10[56],string11[56],string12[56],string13[56],string14[56],rest[500];
  5701. GetPlayerName(playerid,Name,sizeof Name);
  5702. format(string1, sizeof string1, "{FAFAFA}[Allgemeines]");
  5703. format(string2, sizeof(string2), "{FAFAFA}Name: \t{E0D01B}[%s] \t{FAFAFA}Level: \t{E0D01B}[%d] \t{FAFAFA}Spielpunkte: \t{E0D01B}[%d]", Name,Score,respekt);
  5704. format(string3, sizeof(string3), "{FAFAFA}Bankgeld: \t{E0D01B}[%d] {24AD40}${FAFAFA} \tGeld: \t{E0D01B}[%d] {24AD40}${FAFAFA}",Bankgeld,Geld);
  5705. format(string4, sizeof(string4), "{FAFAFA}[Persönliches]");
  5706. format(string5, sizeof(string5), "{FAFAFA}Geschlecht: \t{E0D01B}%s{FAFAFA}\nAlter: \t{E0D01B}%d{FAFAFA}\nBeruf: \t{E0D01B}%s{FAFAFA}\nRang: \t{E0D01B}%s",sSex(SpielerInfo[playerid][pSex]),alter,GetTeamStr(beruf),GetRang(rang));
  5707. format(string6, sizeof(string6), "%s {FAFAFA}\tDrogen: {E0D01B}%d",altersbesch(alter), SpielerInfo[playerid][pDrugs]);
  5708. format(rest, sizeof rest, "%s\n\n\n%s\n%s\n%s\n%s\n\n%s\n%s\n%s\n\n%s\n%s\n\n%s\n%s\n%s\n%s", string1,string2,string3,string4,string5,string6,string7,string8,string9,string10,string11,string12,string13,string14);
  5709. ShowPlayerDialog(playerid,DIALOG_PROFIL, DIALOG_STYLE_MSGBOX, "{E0D01B}Statistik{FFFFFF}", rest, "Weiter", "Weiter");
  5710. return 1;
  5711. }
  5712.  
  5713. stock PayDay(id){
  5714. if(GetPVarInt(id, "Stunde") == 60)
  5715. {
  5716. new Name[MAX_PLAYER_NAME],gehalt = SpielerInfo[id][pGehalt], Bankgeld = SpielerInfo[id][pBank], Geld = GetPlayerMoney(id),
  5717. string1[156],string2[156],string3[156],string4[156],string5[156],string6[56],string7[56],string8[56],string9[56],string10[56],string11[56],string12[56],string13[56],string14[56],rest[400];
  5718. GetPlayerName(id,Name,sizeof Name);
  5719. if(SpielerInfo[id][pRespekt] == 15)
  5720. {
  5721. Levelup(id, 1);
  5722. }
  5723. new neur = SpielerInfo[id][pRespekt] += 1;
  5724. format(string1, sizeof(string1), "{FAFAFA}Name: \t%s\nGeld: \t{E0D01B}%d {24AD40}${FAFAFA}", Name,Geld);
  5725. format(string2, sizeof(string2), "Kontostand *ALT: \t{E0D01B}%d {24AD40}${FAFAFA}",Bankgeld);
  5726. format(string3, sizeof(string3), "Gehalt: \t{E0D01B}%d {24AD40}${FAFAFA}\nSpielpunkte: \t %d (*ALT %d)",gehalt, neur,SpielerInfo[id][pRespekt]-1);
  5727. new neukonto = SpielerInfo[id][pBank] += gehalt;
  5728. new currentlohnfirma = SpielerInfo[id][pFirmenlohn];
  5729. format(string4, sizeof(string4), "Kontostand *NEU: \t{E0D01B}%d {24AD40}${FAFAFA}",neukonto);
  5730. format(string5, sizeof(string5), "Derzeitiger Firmenlohn: \t{E0D01B}%d {24AD40}${FAFAFA}",currentlohnfirma);
  5731. format(string6, sizeof(string6), "Steuern: \t{E0D01B}%d {24AD40}${FAFAFA}",STEUERN);
  5732. SpielerInfo[id][pBank] -= STEUERN;
  5733. format(rest, sizeof rest, "%s\n\n\n%s\n%s\n%s\n%s\n\n%s\n%s\n%s\n\n%s\n%s\n\n%s\n%s\n%s\n%s", string1,string2,string3,string4,string5,string6,string7,string8,string9,string10,string11,string12,string13,string14);
  5734. ShowPlayerDialog(id,DIALOG_ZAHLTAG, DIALOG_STYLE_MSGBOX, "{E0D01B}Zahltag{FFFFFF}", rest, "Weiter", "Weiter");
  5735. SavePlayer(id);
  5736. SetPVarInt(id, "Stunde", GetPVarInt(id, "Stunde")-60);
  5737. }
  5738. return 1;
  5739. }
  5740. stock GetRang(sRang)
  5741. {
  5742. new teamstr[20];
  5743. switch(sRang)
  5744. {
  5745. case 0:teamstr = "Neuling";
  5746. case 1:teamstr = "Anfaenger";
  5747. case 2:teamstr = "Fortgeschrittener";
  5748. case 3:teamstr = "Ausbilder";
  5749. case 4:teamstr = "Stellv. Leiter";
  5750. case 5:teamstr = "Leitung";
  5751. case 6:teamstr = "Godfather";
  5752. }
  5753. for(new i = 0;i<MAX_PLAYERS;i++)
  5754. {
  5755. if(istBeamter(i))
  5756. switch(sRang)
  5757. {
  5758. case 0:teamstr = "Azubi";
  5759. case 1:teamstr = "Officer";
  5760. case 2:teamstr = "Fortgeschrittener";
  5761. case 3:teamstr = "Ausbilder";
  5762. case 4:teamstr = "Stellv. Leiter";
  5763. case 5:teamstr = "Leitung";
  5764. case 6:teamstr = "Geschäftsführer";
  5765. }}
  5766. return teamstr;
  5767. }
  5768. stock Lizenzen(stringalt)
  5769. {
  5770. new str[256];
  5771. switch(stringalt)
  5772. {
  5773. case 0:str = "Keine Scheine";
  5774. case 1:str = "Führerschein";
  5775. case 2:str = "LKW-Schein";
  5776. case 3:str = "Motorradschein";
  5777. case 4:str = "Flugschein";
  5778. case 5:str = "Waffenschein";
  5779. case 6:str = "Helikopterschein";
  5780. case 7:str = "Busschein";
  5781. }
  5782. return str;
  5783. }
  5784. stock altersbesch(stringalt)
  5785. {
  5786. new str[256];
  5787. switch(stringalt)
  5788. {
  5789. case 0:str = "Kind";
  5790. case 1:str = "Kind";
  5791. case 2:str = "Kind";
  5792. case 3:str = "Kind";
  5793. case 4:str = "Kind";
  5794. case 5:str = "Kind";
  5795. case 6:str = "Kind";
  5796. case 7:str = "Kind";
  5797. case 8:str = "Kind";
  5798. case 9:str = "Kind";
  5799. case 10:str = "Kind";
  5800. case 11:str = "Kind";
  5801. case 12:str = "Kind";
  5802. case 13:str = "Kind";
  5803. case 14:str = "Jugendlicher";
  5804. case 15:str = "Jugendlicher";
  5805. case 16:str = "Jugendlicher";
  5806. case 17:str = "Angehender Erwachsener";
  5807. case 18:str = "Erwachsener";
  5808. case 19:str = "Erwachsener";
  5809. case 20:str = "Erwachsener";
  5810. case 21:str = "Erwachsener";
  5811. case 22:str = "Erwachsener";
  5812. case 23:str = "Erwachsener";
  5813. case 24:str = "Erwachsener";
  5814. case 25:str = "Erwachsener";
  5815. case 26:str = "Erwachsener";
  5816. case 27:str = "Erwachsener";
  5817. case 28:str = "Erwachsener";
  5818. }
  5819. return str;
  5820. }
  5821. stock sSex(stringsex)
  5822. {
  5823. new str[20];
  5824. switch(stringsex)
  5825. {
  5826. case 1:str = "Weiblich";
  5827. case 2:str = "Männlich";
  5828. }
  5829. return str;
  5830. }
  5831. stock GetTeamStr(Teamid)
  5832. {
  5833. new tstr[25];
  5834. switch(Teamid)
  5835. {
  5836. case 0:tstr = "Zivilist";
  5837. case 1: tstr = "Polizei";
  5838. case 2: tstr = "FBI";
  5839. case 3: tstr = "Medic";
  5840. case 4: tstr = "O-Amt";
  5841. case 5: tstr = "Yakuza";
  5842. case 6: tstr = "La Cosa Nostra";
  5843. case 7: tstr = "Russische Mafia";
  5844. case 8: tstr = "CripZ";
  5845. case 9: tstr = "BloodZ";
  5846. case 10: tstr = "Vagos";
  5847. case 11: tstr = "Fahrlehrer";
  5848. }
  5849. return tstr;
  5850. }
  5851. stock Film(playerid)
  5852. {
  5853. new Float:x, Float:y, Float:z;
  5854. GetPlayerPos(playerid, x, y, z);
  5855. InterpolateCameraPos(playerid, x, y, z, x+5, y+20, z+5, 5000, CAMERA_CUT);
  5856. SpielerInfo[playerid][filmgehabt] = 0;
  5857. return 1;
  5858. }
  5859. stock Filmende(playerid)
  5860. {
  5861. SpielerInfo[playerid][filmgehabt] = 1;
  5862. SetCameraBehindPlayer(playerid);
  5863. return 1;
  5864. }
  5865. stock Connect_To_Database()
  5866. {
  5867. mysql_connect(SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS); //Wir versuchen mit den Angaben die wir oben im Script gemacht haben uns mit dem MySQL Server zu verbinden.
  5868. if(mysql_ping() == 1) //Es wird überprüft ob die Verbindung steht.
  5869. {
  5870. //Falls ja wird das in die Console geschrieben und die Funktion wird beendet.
  5871. print("<-| [MYSQL] Verbindung zur Datenbank wurde erfolgreich hergestellt!");
  5872. return true;
  5873. }
  5874. else
  5875. {
  5876. //Falls nicht wird erneut versucht eine Verbindung aufzubauen.
  5877. print("<-| [MYSQL] Es konnte keine Verbindung zur Datenbank hergestellt werden!");
  5878. print("<-| [MYSQL] Es wird erneut versucht eine Verbindung zur Datenbank herzustellen!");
  5879. mysql_connect(SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS);
  5880. if(mysql_ping() == 1)
  5881. {
  5882. print("<-| [MYSQL] Es konnte im 2 Versuch eine Verbindung hergestellt werden!");
  5883. return true;
  5884. }
  5885. else
  5886. {
  5887. //Falls das auch nicht Funktioniert wird der Server zur Sicherheit wieder heruntergefahren.
  5888. print("<-| [MYSQL] Es konnte keine Verbindung zur Datenbank hergestellt werden!");
  5889. print("<-| [MYSQL] Der Server wird nun beendet!");
  5890. SendRconCommand("exit");
  5891. return true;
  5892. }
  5893. }
  5894. }
  5895. stock mysql_CheckAccount(playerid)
  5896. {
  5897. new Query[128],Name[MAX_PLAYER_NAME];
  5898. GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
  5899. mysql_real_escape_string(Name, Name);
  5900. format(Query, sizeof(Query), "SELECT * FROM accounts WHERE Name = '%s'", Name);
  5901. mysql_query(Query);
  5902. mysql_store_result();
  5903. return mysql_num_rows();
  5904. }
  5905. stock CreateAccount(playerid, pass[])
  5906. {
  5907. new query[256],Name[MAX_PLAYER_NAME];
  5908. GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
  5909. mysql_real_escape_string(Name,Name);
  5910. mysql_real_escape_string(pass,pass);
  5911. format(query, sizeof(query), "INSERT INTO accounts (Name, Passwort) VALUES ('%s', '%s')", Name, pass);
  5912. mysql_query(query);
  5913. return true;
  5914. }
  5915. stock mysql_ReturnPasswort(Name[])
  5916. {
  5917. new query[130], Get[130];
  5918. mysql_real_escape_string(Name, Name);
  5919. format(query, 128, "SELECT passwort FROM accounts WHERE Name = '%s'", Name);
  5920. mysql_query(query);
  5921. mysql_store_result();
  5922. mysql_fetch_row(Get);
  5923. mysql_free_result();
  5924. return Get;
  5925. }
  5926. stock LoadPlayer(playerid)
  5927. {
  5928. if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))//Wir fragen ab ob der angegebene Spieler auch Online ist, und kein NPC ist (nur zur sicherhheit)
  5929. {
  5930. if(GetPlayerInterior(playerid) > 0)
  5931. {
  5932. TogglePlayerControllable(playerid,0);
  5933. SetTimerEx("Unfreeze",1000,false,"d",playerid);
  5934. new int = GetPlayerInterior(playerid);
  5935. SetPlayerInterior(playerid, int);
  5936. }
  5937. GetPlayerName(playerid, SpielerInfo[playerid][pName], MAX_PLAYER_NAME); //Wir Speichern den Namen des Spielers in der Variable [i]SpielerInfo[playerid][pName][/i]
  5938. SpielerInfo[playerid][pLevel] = mysql_GetInt("accounts", "Level", "Name", SpielerInfo[playerid][pName]); //Wir holen uns den wert der unter "Level" eingetragen ist und Speichern ihn in unserer Variable.
  5939. SpielerInfo[playerid][pGeld] = SetPlayerMoney(playerid,mysql_GetInt("accounts", "Geld", "Name", SpielerInfo[playerid][pName])); //Wir holen uns den wert der unter "Geld" eingetragen ist und Speichern ihn in unserer Variable.
  5940. SpielerInfo[playerid][pKills] = mysql_GetInt("accounts", "Kills", "Name", SpielerInfo[playerid][pName]); //Wir holen uns den wert der unter "Kills" eingetragen ist und Speichern ihn in unserer Variable.
  5941. SpielerInfo[playerid][pTode] = mysql_GetInt("accounts", "Tode", "Name", SpielerInfo[playerid][pName]); //Wir holen uns den wert der unter "Tode" eingetragen ist und Speichern ihn in unserer Variable.
  5942. SpielerInfo[playerid][pRang] = mysql_GetInt("accounts", "Rang", "Name", SpielerInfo[playerid][pName]);
  5943. SpielerInfo[playerid][pMember] = mysql_GetInt("accounts", "Member", "Name", SpielerInfo[playerid][pName]);
  5944. SpielerInfo[playerid][pLeader] = mysql_GetInt("accounts", "Leader", "Name", SpielerInfo[playerid][pName]);
  5945. SpielerInfo[playerid][pBank] = mysql_GetInt("accounts", "Bankgeld", "Name", SpielerInfo[playerid][pName]);
  5946. SpielerInfo[playerid][pInterior] = SetPlayerInterior(playerid,mysql_GetInt("accounts", "Int", "Name", SpielerInfo[playerid][pName]));
  5947. SpielerInfo[playerid][pDrugsP] = mysql_GetInt("accounts", "Pflanze", "Name", SpielerInfo[playerid][pName]);
  5948. SpielerInfo[playerid][pDrugs] = mysql_GetInt("accounts", "Drogen", "Name", SpielerInfo[playerid][pName]);
  5949. SpielerInfo[playerid][pUserLevel] = SetPlayerScore(playerid,mysql_GetInt("accounts", "UserLevel", "Name", SpielerInfo[playerid][pName]));
  5950. SpielerInfo[playerid][pRespekt] = mysql_GetInt("accounts", "Respekt", "Name", SpielerInfo[playerid][pName]);
  5951. SpielerInfo[playerid][pWanted] = mysql_GetInt("accounts", "Wanted", "Name", SpielerInfo[playerid][pName]);
  5952. SpielerInfo[playerid][pSkin] = SetPlayerSkin(playerid,mysql_GetInt("accounts", "Skin", "Name", SpielerInfo[playerid][pName]));
  5953. SpielerInfo[playerid][Firstlogin] = mysql_GetInt("accounts", "Tutorial", "Name", SpielerInfo[playerid][pName]);
  5954. SetPlayerPos(playerid,mysql_GetFloat("accounts", "x", "Name", SpielerInfo[playerid][pName]),mysql_GetFloat("accounts", "y", "Name", SpielerInfo[playerid][pName]),mysql_GetFloat("accounts", "z", "Name", SpielerInfo[playerid][pName]));
  5955. _AC_GivePlayerWeapon(playerid,mysql_GetInt("accounts", "Slot0", "Name", SpielerInfo[playerid][pName]),mysql_GetInt("accounts", "Ammo0", "Name", SpielerInfo[playerid][pName]));
  5956. _AC_GivePlayerWeapon(playerid,mysql_GetInt("accounts", "Slot1", "Name", SpielerInfo[playerid][pName]),mysql_GetInt("accounts", "Ammo1", "Name", SpielerInfo[playerid][pName]));
  5957. _AC_GivePlayerWeapon(playerid,mysql_GetInt("accounts", "Slot2", "Name", SpielerInfo[playerid][pName]),mysql_GetInt("accounts", "Ammo2", "Name", SpielerInfo[playerid][pName]));
  5958. _AC_GivePlayerWeapon(playerid,mysql_GetInt("accounts", "Slot3", "Name", SpielerInfo[playerid][pName]),mysql_GetInt("accounts", "Ammo3", "Name", SpielerInfo[playerid][pName]));
  5959. _AC_GivePlayerWeapon(playerid,mysql_GetInt("accounts", "Slot4", "Name", SpielerInfo[playerid][pName]),mysql_GetInt("accounts", "Ammo4", "Name", SpielerInfo[playerid][pName]));
  5960. _AC_GivePlayerWeapon(playerid,mysql_GetInt("accounts", "Slot5", "Name", SpielerInfo[playerid][pName]),mysql_GetInt("accounts", "Ammo5", "Name", SpielerInfo[playerid][pName]));
  5961. _AC_GivePlayerWeapon(playerid,mysql_GetInt("accounts", "Slot6", "Name", SpielerInfo[playerid][pName]),mysql_GetInt("accounts", "Ammo6", "Name", SpielerInfo[playerid][pName]));
  5962. _AC_GivePlayerWeapon(playerid,mysql_GetInt("accounts", "Slot7", "Name", SpielerInfo[playerid][pName]),mysql_GetInt("accounts", "Ammo7", "Name", SpielerInfo[playerid][pName]));
  5963. _AC_GivePlayerWeapon(playerid,mysql_GetInt("accounts", "Slot8", "Name", SpielerInfo[playerid][pName]),mysql_GetInt("accounts", "Ammo8", "Name", SpielerInfo[playerid][pName]));
  5964. _AC_GivePlayerWeapon(playerid,mysql_GetInt("accounts", "Slot9", "Name", SpielerInfo[playerid][pName]),mysql_GetInt("accounts", "Ammo9", "Name", SpielerInfo[playerid][pName]));
  5965. _AC_GivePlayerWeapon(playerid,mysql_GetInt("accounts", "Slot10", "Name", SpielerInfo[playerid][pName]),mysql_GetInt("accounts", "Ammo10", "Name", SpielerInfo[playerid][pName]));
  5966. _AC_GivePlayerWeapon(playerid,mysql_GetInt("accounts", "Slot11", "Name", SpielerInfo[playerid][pName]),mysql_GetInt("accounts", "Ammo11", "Name", SpielerInfo[playerid][pName]));
  5967. _AC_GivePlayerWeapon(playerid,mysql_GetInt("accounts", "Slot12", "Name", SpielerInfo[playerid][pName]),mysql_GetInt("accounts", "Ammo12", "Name", SpielerInfo[playerid][pName]));
  5968. SpielerInfo[playerid][pSex] = mysql_GetInt("accounts", "Geschlecht", "Name", SpielerInfo[playerid][pName]);
  5969. SpielerInfo[playerid][pAge] = mysql_GetInt("accounts", "Age", "Name", SpielerInfo[playerid][pName]);
  5970. SpielerInfo[playerid][pGehalt] = mysql_GetInt("accounts", "Gehalt", "Name", SpielerInfo[playerid][pName]);
  5971. SpielerInfo[playerid][pSchein] = mysql_GetInt("accounts", "Schein", "Name", SpielerInfo[playerid][pName]);
  5972. SpielerInfo[playerid][pFirmenlohn] = mysql_GetInt("accounts", "Firmenlohn", "Name", SpielerInfo[playerid][pName]);
  5973. SpielerInfo[playerid][pJob] = mysql_GetInt("accounts", "Job", "Name", SpielerInfo[playerid][pName]);
  5974. }
  5975. return 1;
  5976. }
  5977. stock mysql_GetInt(Table[], Field[], Where[], Is[])
  5978. {
  5979. new query[128];
  5980. mysql_real_escape_string(Table, Table);
  5981. mysql_real_escape_string(Field, Field);
  5982. mysql_real_escape_string(Where, Where);
  5983. mysql_real_escape_string(Is, Is);
  5984. format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
  5985. mysql_query(query);
  5986. mysql_store_result();
  5987. new sqlint = mysql_fetch_int();
  5988. mysql_free_result();
  5989. return sqlint;
  5990. }
  5991. stock GetNearHausID(playerid)
  5992. {
  5993. for(new hWhich; hWhich != MaxHaus; hWhich++)
  5994. {
  5995. if(IsPlayerInRangeOfPoint(playerid, 3.0, Haus[hWhich][hX], Haus[hWhich][hY], Haus[hWhich][hZ])) return hWhich;
  5996. }
  5997. return -1;
  5998. }
  5999.  
  6000. stock LoadHouse(IDD)
  6001. {
  6002. new String[5],
  6003. Text[150];
  6004. format(String, sizeof(String), "%d", IDD);
  6005. Haus[IDD][hZimmerA] = mysql_GetInt("hauser", "Zimmer", "ID", String);
  6006. Haus[IDD][hZimmerM] = mysql_GetInt("hauser", "ZimmerMax", "ID", String);
  6007. Haus[IDD][hLevel] = mysql_GetInt("hauser", "Level", "ID", String);
  6008. Haus[IDD][hPreis] = mysql_GetInt("hauser", "Preis", "ID", String);
  6009. Haus[IDD][hX] = mysql_GetFloat("hauser", "HausX", "ID", String);
  6010. Haus[IDD][hY] = mysql_GetFloat("hauser", "HausY", "ID", String);
  6011. Haus[IDD][hZ] = mysql_GetFloat("hauser", "HausZ", "ID", String);
  6012. Haus[IDD][hID] = mysql_GetInt("hauser", "ID", "ID", String);
  6013. format(Haus[IDD][hBesitzer], MAX_PLAYER_NAME, mysql_GetString("hauser", "Besitzer", "ID", String));
  6014. format(Haus[IDD][hBeschreibung], MaxHausBeschreibung, mysql_GetString("hauser", "Beschreibung", "ID", String));
  6015. if(strlen(Haus[IDD][hBesitzer]) < 2) { //Wenn die Länge des Hausbesitzers < 2 (sprich unter 2) ist, mache folgendes ...
  6016. format(Text, sizeof(Text), " '%s' {1B8EE0}zu verkaufen!{FAFAFA}\nPreis: $%d\nLevel: %d\nZimmer: %d/%d", Haus[IDD][hBeschreibung], Haus[IDD][hPreis], Haus[IDD][hLevel], Haus[IDD][hZimmerA], Haus[IDD][hZimmerM]); //definiere den String "Text" so
  6017. }
  6018. else { //wenn der aber länger ist, dann ...
  6019. format(Text, sizeof(Text), " '%s'\nBesitzer: %s\nZimmer %d/%d", Haus[IDD][hBeschreibung], Haus[IDD][hBesitzer], Haus[IDD][hZimmerA], Haus[IDD][hZimmerM]); //definiere ihn so ...
  6020. }
  6021. Update3DTextLabelText(Haus[IDD][hText], Weiss, Text); //ändere/update den TextLabel mit dem formatieren String
  6022. return 1;
  6023. }
  6024.  
  6025. stock SaveHouse()
  6026. {
  6027. for(new Haeuser; Haeuser < MaxHaus; Haeuser++) {
  6028. mysql_SetInt("hauser", "Zimmer", Haus[Haeuser][hZimmerA], "ID", Haus[Haeuser][hID]);
  6029. mysql_SetString("hauser", "Besitzer", Haus[Haeuser][hBesitzer], "ID", Haus[Haeuser][hID]);
  6030. }
  6031. return 1;
  6032. }
  6033. stock EndTour(playerid)
  6034. {
  6035. if(SpielerInfo[playerid][pJob] == 1 && CheckpointF[playerid] == 3)
  6036. {
  6037. DisablePlayerCheckpoint(playerid);
  6038. SpielerInfo[playerid][pGehalt] +=240;
  6039. new str[200];
  6040. format(str, sizeof(str)," Dein neuer Lohn : {FF0000}%d (+240$)", SpielerInfo[playerid][pGehalt]);
  6041. SendClientMessage(playerid, FARBE_FADE1, str);
  6042. SavePlayer(playerid);
  6043. SpielerInfo[playerid][pTour] = 0;
  6044. SetTimerEx("NextTour", 36000000, 0, "d", playerid);
  6045. }
  6046. else if(SpielerInfo[playerid][pJob] == 1 && Checkpoint[playerid] == 9)
  6047. {
  6048. DisablePlayerCheckpoint(playerid);
  6049. SpielerInfo[playerid][pGehalt] +=300;
  6050. new str[200];
  6051. format(str, sizeof(str)," Dein neuer Lohn : {FF0000}%d (+300$)", SpielerInfo[playerid][pGehalt]);
  6052. SendClientMessage(playerid, FARBE_FADE1, str);
  6053. SavePlayer(playerid);
  6054. SpielerInfo[playerid][pTour] = 0;
  6055. SetTimerEx("NextTour", 36000000, 0, "d", playerid);
  6056. }
  6057. else
  6058. {
  6059. DisablePlayerCheckpoint(playerid);
  6060. SpielerInfo[playerid][pGehalt] +=100;
  6061. new str[200];
  6062. format(str, sizeof(str)," Dein neuer Lohn : {FF0000}%d (+100$)", SpielerInfo[playerid][pGehalt]);
  6063. SendClientMessage(playerid, FARBE_FADE1, str);
  6064. SavePlayer(playerid);
  6065. }
  6066. return 1;
  6067. }
  6068. stock Starttour(playerid)
  6069. {
  6070. if(SpielerInfo[playerid][pTour] != 1)
  6071. {
  6072. SpielerInfo[playerid][pTour] = 1;
  6073. SpielerInfo[playerid][pZeit] = 1;
  6074. SetPlayerCheckpoint(playerid, 980.4124,2102.5181,11.4132, 5.0);
  6075. SendClientMessage(playerid,FARBE_FADE1, "Fahre nun zu dem Checkpoint und entlade deine Ware");
  6076. }
  6077. return 1;
  6078. }
  6079. stock GetName(playerid)
  6080. {
  6081. new Name[MAX_PLAYER_NAME];
  6082. GetPlayerName(playerid, Name, sizeof(Name));
  6083. return Name;
  6084. }
  6085.  
  6086. stock DestroyHouse(IDD)
  6087. {
  6088. DestroyDynamicPickup(Haus[IDD][hPickup]);
  6089. Delete3DTextLabel(Haus[IDD][hText]);
  6090. return 1;
  6091. }
  6092.  
  6093. stock LoadHouses()
  6094. {
  6095. new Schleife = 1,
  6096. String[5],
  6097. Text[150];
  6098. while(Schleife < MaxHaus) {
  6099. format(String, sizeof(String), "%d", Schleife);
  6100. Haus[Schleife][hZimmerA] = mysql_GetInt("hauser", "Zimmer", "ID", String);
  6101. Haus[Schleife][hZimmerM] = mysql_GetInt("hauser", "ZimmerMax", "ID", String);
  6102. Haus[Schleife][hLevel] = mysql_GetInt("hauser", "Level", "ID", String);
  6103. Haus[Schleife][hPreis] = mysql_GetInt("hauser", "Preis", "ID", String);
  6104. Haus[Schleife][hX] = mysql_GetFloat("hauser", "HausX", "ID", String);
  6105. Haus[Schleife][hY] = mysql_GetFloat("hauser", "HausY", "ID", String);
  6106. Haus[Schleife][hZ] = mysql_GetFloat("hauser", "HausZ", "ID", String);
  6107. Haus[Schleife][hID] = mysql_GetInt("hauser", "ID", "ID", String);
  6108. format(Haus[Schleife][hBesitzer], MAX_PLAYER_NAME, mysql_GetString("hauser", "Besitzer", "ID", String));
  6109. format(Haus[Schleife][hBeschreibung], MaxHausBeschreibung, mysql_GetString("hauser", "Beschreibung", "ID", String));
  6110. if(strlen(Haus[Schleife][hBesitzer]) < 2) { // das gleiche wie oben ...
  6111. format(Text, sizeof(Text), " '%s' {1B8EE0}zu verkaufen!{FAFAFA}\nPreis: $%d\nLevel: %d\nZimmer: %d/%d", Haus[Schleife][hBeschreibung], Haus[Schleife][hPreis], Haus[Schleife][hLevel], Haus[Schleife][hZimmerA], Haus[Schleife][hZimmerM]);
  6112. }
  6113. else {
  6114. format(Text, sizeof(Text), " '%s'\nBesitzer: %s\nZimmer %d/%d", Haus[Schleife][hBeschreibung], Haus[Schleife][hBesitzer], Haus[Schleife][hZimmerA], Haus[Schleife][hZimmerM]);
  6115. }
  6116. Haus[Schleife][hText] = Create3DTextLabel(Text, Weiss, Haus[Schleife][hX], Haus[Schleife][hY], Haus[Schleife][hZ], MaxHausTextSehbar, 0);
  6117. Haus[Schleife][hPickup] = CreateDynamicPickup(HausPickupModel, 23, Haus[Schleife][hX], Haus[Schleife][hY], Haus[Schleife][hZ], -1);
  6118. Update3DTextLabelText(Haus[Schleife][hText], Weiss, Text);
  6119. Schleife++;
  6120. }
  6121. return 1;
  6122. }
  6123. stock SavePlayer(playerid)
  6124. {
  6125. if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid)) //wir überprüfen ob der Spieler überhaupt noch Connected ist und ob er nicht ein NPC ist.
  6126. {
  6127. if(GetPVarInt(playerid,"Eingeloggt") == 1) //Und hier ob er noch eingeloggt ist.
  6128. {
  6129. //Nun speichern wir die Daten in der Datenbank.
  6130. new wweapons[13][2];
  6131. for (new i = 0; i < 13; i++)
  6132. {
  6133. GetPlayerWeaponData(playerid, i, wweapons[i][0], wweapons[i][1]);
  6134. mysql_SetInt("accounts", "Slot1", wweapons[1][0], "Name", SpielerInfo[playerid][pName]);
  6135. mysql_SetInt("accounts", "Slot2", wweapons[2][0], "Name", SpielerInfo[playerid][pName]);
  6136. mysql_SetInt("accounts", "Slot3", wweapons[3][0], "Name", SpielerInfo[playerid][pName]);
  6137. mysql_SetInt("accounts", "Slot4", wweapons[4][0], "Name", SpielerInfo[playerid][pName]);
  6138. mysql_SetInt("accounts", "Slot5", wweapons[5][0], "Name", SpielerInfo[playerid][pName]);
  6139. mysql_SetInt("accounts", "Slot6", wweapons[6][0], "Name", SpielerInfo[playerid][pName]);
  6140. mysql_SetInt("accounts", "Slot7", wweapons[7][0], "Name", SpielerInfo[playerid][pName]);
  6141. mysql_SetInt("accounts", "Slot8", wweapons[8][0], "Name", SpielerInfo[playerid][pName]);
  6142. mysql_SetInt("accounts", "Slot9", wweapons[9][0], "Name", SpielerInfo[playerid][pName]);
  6143. mysql_SetInt("accounts", "Slot10", wweapons[10][0], "Name", SpielerInfo[playerid][pName]);
  6144. mysql_SetInt("accounts", "Slot11", wweapons[11][0], "Name", SpielerInfo[playerid][pName]);
  6145. mysql_SetInt("accounts", "Slot12", wweapons[12][0], "Name", SpielerInfo[playerid][pName]);
  6146. mysql_SetInt("accounts", "Slot0", wweapons[0][0], "Name", SpielerInfo[playerid][pName]);
  6147. mysql_SetInt("accounts", "Ammo1", wweapons[1][1], "Name", SpielerInfo[playerid][pName]);
  6148. mysql_SetInt("accounts", "Ammo2", wweapons[2][1], "Name", SpielerInfo[playerid][pName]);
  6149. mysql_SetInt("accounts", "Ammo3", wweapons[3][1], "Name", SpielerInfo[playerid][pName]);
  6150. mysql_SetInt("accounts", "Ammo4", wweapons[4][1], "Name", SpielerInfo[playerid][pName]);
  6151. mysql_SetInt("accounts", "Ammo5", wweapons[5][1], "Name", SpielerInfo[playerid][pName]);
  6152. mysql_SetInt("accounts", "Ammo6", wweapons[6][1], "Name", SpielerInfo[playerid][pName]);
  6153. mysql_SetInt("accounts", "Ammo7", wweapons[7][1], "Name", SpielerInfo[playerid][pName]);
  6154. mysql_SetInt("accounts", "Ammo8", wweapons[8][1], "Name", SpielerInfo[playerid][pName]);
  6155. mysql_SetInt("accounts", "Ammo9", wweapons[9][1], "Name", SpielerInfo[playerid][pName]);
  6156. mysql_SetInt("accounts", "Ammo10", wweapons[10][1], "Name", SpielerInfo[playerid][pName]);
  6157. mysql_SetInt("accounts", "Ammo11", wweapons[11][1], "Name", SpielerInfo[playerid][pName]);
  6158. mysql_SetInt("accounts", "Ammo12", wweapons[12][1], "Name", SpielerInfo[playerid][pName]);
  6159. mysql_SetInt("accounts", "Ammo0", wweapons[0][1], "Name", SpielerInfo[playerid][pName]);
  6160. }
  6161. SpielerInfo[playerid][pSkin] = GetPlayerSkin(playerid);
  6162. SpielerInfo[playerid][pUserLevel] = GetPlayerScore(playerid);
  6163. mysql_SetInt("accounts", "Job", SpielerInfo[playerid][pJob], "Name", SpielerInfo[playerid][pName]);
  6164. GetPlayerPos(playerid,SpielerInfo[playerid][pX], SpielerInfo[playerid][pY], SpielerInfo[playerid][pZ]);
  6165. mysql_SetFloat("accounts", "x", SpielerInfo[playerid][pX], "Name", SpielerInfo[playerid][pName]);
  6166. mysql_SetFloat("accounts", "y", SpielerInfo[playerid][pY], "Name", SpielerInfo[playerid][pName]);
  6167. mysql_SetFloat("accounts", "z", SpielerInfo[playerid][pZ], "Name", SpielerInfo[playerid][pName]);
  6168. mysql_SetInt("accounts", "Level", SpielerInfo[playerid][pLevel], "Name", SpielerInfo[playerid][pName]);
  6169. mysql_SetInt("accounts", "Geld", GetPlayerMoney(playerid), "Name", SpielerInfo[playerid][pName]);
  6170. mysql_SetInt("accounts", "Kills", SpielerInfo[playerid][pKills], "Name", SpielerInfo[playerid][pName]);
  6171. mysql_SetInt("accounts", "Tode", SpielerInfo[playerid][pTode], "Name", SpielerInfo[playerid][pName]);
  6172. mysql_SetInt("accounts", "Rang", SpielerInfo[playerid][pRang], "Name", SpielerInfo[playerid][pName]);
  6173. mysql_SetInt("accounts", "Member", SpielerInfo[playerid][pMember], "Name", SpielerInfo[playerid][pName]);
  6174. mysql_SetInt("accounts", "Leader", SpielerInfo[playerid][pLeader], "Name", SpielerInfo[playerid][pName]);
  6175. mysql_SetInt("accounts", "Bankgeld", SpielerInfo[playerid][pBank], "Name", SpielerInfo[playerid][pName]);
  6176. mysql_SetInt("accounts", "UserLevel", SpielerInfo[playerid][pUserLevel], "Name", SpielerInfo[playerid][pName]);
  6177. mysql_SetInt("accounts", "Pflanze", SpielerInfo[playerid][pDrugsP], "Name", SpielerInfo[playerid][pName]);
  6178. mysql_SetInt("accounts", "Drogen", SpielerInfo[playerid][pDrugs], "Name", SpielerInfo[playerid][pName]);
  6179. mysql_SetInt("accounts", "Wanted", SpielerInfo[playerid][pWanted], "Name", SpielerInfo[playerid][pName]);
  6180. mysql_SetInt("accounts", "Respekt", SpielerInfo[playerid][pRespekt], "Name", SpielerInfo[playerid][pName]);
  6181. mysql_SetInt("accounts", "Skin", GetPlayerSkin(playerid), "Name", SpielerInfo[playerid][pName]);
  6182. mysql_SetInt("accounts", "Tutorial", SpielerInfo[playerid][Firstlogin], "Name", SpielerInfo[playerid][pName]);
  6183. mysql_SetInt("accounts", "Age", SpielerInfo[playerid][pAge], "Name", SpielerInfo[playerid][pName]);
  6184. mysql_SetInt("accounts", "Geschlecht", SpielerInfo[playerid][pSex], "Name", SpielerInfo[playerid][pName]);
  6185. mysql_SetInt("accounts", "Gehalt", SpielerInfo[playerid][pGehalt], "Name", SpielerInfo[playerid][pName]);
  6186. mysql_SetInt("accounts", "Schein", SpielerInfo[playerid][pSchein], "Name", SpielerInfo[playerid][pName]);
  6187. mysql_SetInt("accounts", "Firmenlohn", SpielerInfo[playerid][pFirmenlohn], "Name", SpielerInfo[playerid][pName]);
  6188. mysql_SetInt("accounts", "Int", GetPlayerInterior(playerid), "Name", SpielerInfo[playerid][pName]);
  6189. }
  6190. }
  6191. return 1;
  6192. }
  6193. stock mysql_SetInt(Table[], Field[], To, Where[], Where2[])
  6194. {
  6195. new query[128];
  6196. mysql_real_escape_string(Table, Table);
  6197. mysql_real_escape_string(Field, Field);
  6198. mysql_real_escape_string(Where, Where);
  6199. mysql_real_escape_string(Where2, Where2);
  6200. format(query, 128, "UPDATE %s SET %s = '%d' WHERE %s = '%s'", Table, Field, To, Where, Where2);
  6201. mysql_query(query);
  6202. return true;
  6203. }
  6204. stock mysql_SetString(Table[], Field[], To[], Where[], Where2[])
  6205. {
  6206. new query[128];
  6207. mysql_real_escape_string(Table, Table);
  6208. mysql_real_escape_string(Field, Field);
  6209. mysql_real_escape_string(To, To);
  6210. mysql_real_escape_string(Where, Where);
  6211. mysql_real_escape_string(Where2, Where2);
  6212. format(query, 128, "UPDATE %s SET %s = '%s' WHERE %s = '%s'", Table, Field, To, Where, Where2);
  6213. mysql_query(query);
  6214. return true;
  6215. }
  6216. stock mysql_SetFloat(Table[], Field[], Float:To, Where[], Where2[])
  6217. {
  6218. new query[128];
  6219. mysql_real_escape_string(Table, Table);
  6220. mysql_real_escape_string(Field, Field);
  6221. mysql_real_escape_string(Where, Where);
  6222. mysql_real_escape_string(Where2, Where2);
  6223. format(query, 128, "UPDATE %s SET %s = '%.1f' WHERE %s = '%s'", Table, Field, To, Where, Where2);
  6224. mysql_query(query);
  6225. return true;
  6226. }
  6227. stock SendAdminMessageRang(farbe,level, string[]) { // Müsste klar sein, ist die Vorgehensweise (definiert)
  6228. for(new i = 0; i < MAX_PLAYERS; i++) { //eine Schleife zum Abfragen der Spieler :D
  6229. if (SpielerInfo[i][pLevel] >= level) {//Die meisten Selfmades Variablen, sendet Nachricht an den angegebenen Rang..
  6230. SendClientMessage(i, farbe, string); // Sendet String...
  6231. } }
  6232. return 1; }
  6233. stock SendBeamtenMessage(farbe,const string[]) {
  6234. for(new i = 0; i < MAX_PLAYERS; i++) {
  6235. if (istBeamter(i)) {
  6236. SendClientMessage(i, farbe, string);
  6237. } }
  6238. return 1; }
  6239. stock InFrak(pid, frak)
  6240. {
  6241. if(SpielerInfo[pid][pMember] == frak) return 0;
  6242. return 1;
  6243. }
  6244. /*
  6245. case 1: Fraktion = "Polizei";
  6246. case 2: Fraktion = "KriPo";
  6247. case 3: Fraktion = "Medic";
  6248. case 4: Fraktion = "O-Amt";
  6249. case 5: Fraktion = "Yakuza";
  6250. case 6: Fraktion = "La Cosa Nostra";
  6251. case 7: Fraktion = "Russische Mafia";
  6252. case 8: Fraktion = "CripZ";
  6253. case 9: Fraktion = "BloodZ";
  6254. case 10: Fraktion = "Vagos";
  6255. */
  6256. stock Frakspawn(pid)
  6257. {
  6258. switch(SpielerInfo[pid][pMember])
  6259. {
  6260. case 0: {SetPlayerPos(pid,2843.7693,1291.4260,11.3906); SetPlayerFacingAngle(pid,89.5873); SetPlayerSkin(pid, SpielerInfo[pid][pSkin]);}
  6261. case 1: {SetPlayerPos(pid, 233.5880,80.1211,1005.0391); SetPlayerInterior(pid, 6);SetPlayerSkin(pid, SpielerInfo[pid][pSkin]);}
  6262. case 2: {SetPlayerPos(pid, -79.2533,-1169.7797,2.1561); SetPlayerSkin(pid, SpielerInfo[pid][pSkin]);}
  6263. case 3: return 0;
  6264. case 4: {SetPlayerPos(pid, -79.2533,-1169.7797,2.1561); SetPlayerSkin(pid, SpielerInfo[pid][pSkin]);}
  6265. case 5: {SetPlayerSkin(pid, SpielerInfo[pid][pSkin]);}
  6266. case 6: return 0;
  6267. case 7: return 0;
  6268. case 8: return 0;
  6269. }
  6270. return 0;
  6271. }
  6272. stock RandScreen(playerid) {
  6273. new screen = random(10);
  6274. SetPlayerInterior(playerid, 0);
  6275. switch(screen) {
  6276. case 0: {
  6277. SetPlayerPos(playerid,-346.083618,1599.942139,164.472366);
  6278. SetPlayerCameraPos(playerid,-345.877228,1601.342896,164.518951);
  6279. SetPlayerCameraLookAt(playerid,-340.641968,1938.658447,83.722984); }
  6280. case 1: {
  6281. SetPlayerPos(playerid,1485.0194,-892.1475,74.4098);
  6282. SetPlayerCameraPos(playerid,1479.7717,-886.2401,73.9461);
  6283. SetPlayerCameraLookAt(playerid,1415.3817,-807.9097,85.0613); }
  6284. case 2: {
  6285. SetPlayerPos(playerid,589.1550,373.1002,15.7948);
  6286. SetPlayerCameraPos(playerid,543.9864,349.3647,14.9968);
  6287. SetPlayerCameraLookAt(playerid,422.1727,599.0107,19.1812); }
  6288. case 3: {
  6289. SetPlayerPos(playerid,2155.0137,1129.7897,18.6397);
  6290. SetPlayerCameraPos(playerid,2149.3992,1132.6051,24.3125);
  6291. SetPlayerCameraLookAt(playerid,2105.0222,1156.5306,11.6470); }
  6292. case 4: {
  6293. SetPlayerPos(playerid,-2818.1499,1144.0898,19.2409);
  6294. SetPlayerCameraPos(playerid,-2808.0366,1161.1864,20.3125);
  6295. SetPlayerCameraLookAt(playerid,-2817.9348,1143.5291,19.3762); }
  6296. case 5: {
  6297. SetPlayerPos(playerid,2144.2822,1279.8054,7.9840);
  6298. SetPlayerCameraPos(playerid,2154.24,1306.50,41.46);
  6299. SetPlayerCameraLookAt(playerid,2273.45,1262.09,33.78); }
  6300. case 6: {
  6301. SetPlayerPos(playerid,-1771.7858,-565.5638,-0.5834);
  6302. SetPlayerCameraPos(playerid,-1771.4641,-566.3715,16.4844);
  6303. SetPlayerCameraLookAt(playerid,2105.0222,1156.5306,11.6470); }
  6304. case 7: {
  6305. SetPlayerPos(playerid,-1254.7159,953.9262,139.2734);
  6306. SetPlayerCameraPos(playerid,-1256.6115,953.2058,139.2734);
  6307. SetPlayerCameraLookAt(playerid,-1529.6639,689.2731,45.3311); }
  6308. case 8: {
  6309. SetPlayerPos(playerid,-2295.7979,712.2764,69.7422);
  6310. SetPlayerCameraPos(playerid,-2265.6101,730.9575,49.2969);
  6311. SetPlayerCameraLookAt(playerid,-2243.5103,731.5889,62.7217); }
  6312. case 9: {
  6313. SetPlayerPos(playerid,50.0000,50.0000,70.0000);
  6314. SetPlayerCameraPos(playerid,50.0000,50.0000,70.2203);
  6315. SetPlayerCameraLookAt(playerid,499.8851,504.5435,7.6593); } } }
  6316. SL_CALL IstAdmin(pid)
  6317. {
  6318. if(SpielerInfo[pid][pLevel] > 4 || IsPlayerAdmin(pid)) return 1;
  6319. return 0;
  6320. }
  6321. stock IstFahrschule(pid)
  6322. {
  6323. if(SpielerInfo[pid][pFahrschule] > 0 || SpielerInfo[pid][pMember] == 11) return 1;
  6324. return 0;
  6325. }
  6326. SL_CALL IstGang(pid)
  6327. {
  6328. if(SpielerInfo[pid][pMember] == 5) return 1;
  6329. else if(SpielerInfo[pid][pMember] == 6) return 1;
  6330. else if(SpielerInfo[pid][pMember] == 7) return 1;
  6331. else if(SpielerInfo[pid][pMember] == 8) return 1;
  6332. else if(SpielerInfo[pid][pMember] == 9) return 1;
  6333. else if(SpielerInfo[pid][pMember] == 10) return 1;
  6334. return 0;
  6335. }
  6336. SL_CALL IstLeader(pid)
  6337. {
  6338. if(SpielerInfo[pid][pLeader] >= 1) return 1;
  6339. return 0;
  6340. }
  6341. SL_CALL IstMember(pid)
  6342. {
  6343. if(SpielerInfo[pid][pMember] >= 1) return 1;
  6344. return 0;
  6345. }
  6346. stock getName(playerid)
  6347. {
  6348. GetPlayerName(playerid,GetNamee,sizeof(GetNamee));
  6349. return GetNamee;
  6350. }
  6351. stock getNameSET(playerid)
  6352. {
  6353. new string[200];
  6354. format(string,sizeof(string),"sa-rpg.de/codes/%s.txt", getName(playerid));
  6355. return string;
  6356. }
  6357. stock GivePlayerHealth(playerid,Float:Health)
  6358. {
  6359. new Float:health;
  6360. GetPlayerHealth(playerid,health);
  6361. _AC_SetPlayerHealth(playerid,health+Health);
  6362. return 1;
  6363. }
  6364.  
  6365. stock GivePlayerArmour(playerid,Float:Armour)
  6366. {
  6367. new Float:armour;
  6368. GetPlayerArmour(playerid,armour);
  6369. SetPlayerArmour(playerid,armour+Armour);
  6370. return 1;
  6371. }
  6372. stock GetPlayerNameEx(id)
  6373. {
  6374. new name[25];
  6375. GetPlayerName(id, name, sizeof(name));
  6376. return name;
  6377. }
  6378. stock ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5)
  6379. {
  6380. if(IsPlayerConnected(playerid))
  6381. {
  6382. new Float:posx, Float:posy, Float:posz,Float:oldposx, Float:oldposy, Float:oldposz,Float:tempposx, Float:tempposy, Float:tempposz,i=0;
  6383. GetPlayerPos(playerid, oldposx, oldposy, oldposz);
  6384. for(; i<MAX_PLAYERS; i++)
  6385. {
  6386. if(IsPlayerConnected(i) && (GetPlayerVirtualWorld(playerid) == GetPlayerVirtualWorld(i))) {
  6387. GetPlayerPos(i, posx, posy, posz);
  6388. tempposx = (oldposx -posx);
  6389. tempposy = (oldposy -posy);
  6390. tempposz = (oldposz -posz);
  6391. if (((tempposx < radi/16) && (tempposx > -radi/16)) && ((tempposy < radi/16) && (tempposy > -radi/16)) && ((tempposz < radi/16) && (tempposz > -radi/16))) {
  6392. SendClientMessage(i, col1, string);
  6393. }
  6394. else if (((tempposx < radi/8) && (tempposx > -radi/8)) && ((tempposy < radi/8) && (tempposy > -radi/8)) && ((tempposz < radi/8) && (tempposz > -radi/8))) {
  6395. SendClientMessage(i, col2, string);
  6396. }
  6397. else if (((tempposx < radi/4) && (tempposx > -radi/4)) && ((tempposy < radi/4) && (tempposy > -radi/4)) && ((tempposz < radi/4) && (tempposz > -radi/4))) {
  6398. SendClientMessage(i, col3, string);
  6399. }
  6400. else if (((tempposx < radi/2) && (tempposx > -radi/2)) && ((tempposy < radi/2) && (tempposy > -radi/2)) && ((tempposz < radi/2) && (tempposz > -radi/2))) {
  6401. SendClientMessage(i, col4, string);
  6402. }
  6403. else if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi))) {
  6404. SendClientMessage(i, col5, string);
  6405. }
  6406. }
  6407. }
  6408. }
  6409. return 1;
  6410. }
  6411. strtok(const string[], &index)
  6412. {
  6413. new length = strlen(string);
  6414. while ((index < length) && (string[index] <= ' '))
  6415. {
  6416. index++;
  6417. }
  6418.  
  6419. new offset = index;
  6420. new result[20];
  6421. while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  6422. {
  6423. result[index - offset] = string[index];
  6424. index++;
  6425. }
  6426. result[index - offset] = EOS;
  6427. return result;
  6428. }
  6429. stock SetPlayerMoney(playerid, cash)
  6430. {
  6431. ResetPlayerMoney(playerid);
  6432. return GivePlayerMoney(playerid, cash);
  6433. }
  6434. stock strrest(const string[], &index)
  6435. {
  6436. new length = strlen(string);
  6437. while ((index < length) && (string[index] <= ' '))
  6438. {
  6439. index++;
  6440. }
  6441. new offset = index;
  6442. new result[128];
  6443. while ((index < length) && ((index - offset) < (sizeof(result) - 1)))
  6444. {
  6445. result[index - offset] = string[index];
  6446. index++;
  6447. }
  6448. result[index - offset] = EOS;
  6449. return result;
  6450. }
  6451. // DT_AC
  6452. forward _AC_ResetPlayerMoney(playerid);
  6453.  
  6454. SL_CALL SL_GivePlayerMoneyMinus(playerid, themoney){
  6455. if(themoney >= 0 && Staatskasse >= themoney)
  6456. {
  6457. DTAC_Player[playerid][apFreeTime] = FREETIME_MONEY;
  6458. DTAC_Player[playerid][apMoney] -= themoney;
  6459. GivePlayerMoney(playerid, -themoney);
  6460. SetStaatKasse(themoney);
  6461. return 1;
  6462. }
  6463. else
  6464. {
  6465. print("Statskasse ist leer!");
  6466. SendClientMessage(playerid, FARBE_FADE1, "Die Staatskasse ist leer!");
  6467. }
  6468. return 1;
  6469. }
  6470. stock SetStaatKasse(themoney){
  6471. Staatskasse += themoney;
  6472. return 1;
  6473. }
  6474. stock SetStaatKasseMinus(themoney){
  6475. Staatskasse -= themoney;
  6476. return 1;
  6477. }
  6478.  
  6479. public _AC_ResetPlayerMoney(playerid)
  6480. {
  6481. DTAC_Player[playerid][apFreeTime] = FREETIME_MONEY;
  6482. DTAC_Player[playerid][apMoney] = 0;
  6483. return true;
  6484. }
  6485.  
  6486. forward _AC_SetPlayerPos(playerid, Float:x, Float:y, Float:z);
  6487. forward _AC_SetPlayerPosFindZ(playerid, Float:x, Float:y, Float:z);
  6488. forward _AC_SetPlayerVelocity(playerid, Float:x, Float:y, Float:z);
  6489. forward _AC_SetVehicleVelocity(vehicleid, Float:x, Float:y, Float:z);
  6490. forward _AC_SetVehiclePos(vehicleid, Float:x, Float:y, Float:z);
  6491.  
  6492. public _AC_SetPlayerPos(playerid, Float:x, Float:y, Float:z)
  6493. {
  6494. DTAC_Player[playerid][apFreeTime] = FREETIME_TELEPORT;
  6495. DTAC_Player[playerid][apPosition][0] = x;
  6496. DTAC_Player[playerid][apPosition][1] = y;
  6497. DTAC_Player[playerid][apPosition][2] = z;
  6498. SetPlayerPos(playerid, x, y, z);
  6499. return true;
  6500. }
  6501.  
  6502. public _AC_SetPlayerPosFindZ(playerid, Float:x, Float:y, Float:z)
  6503. {
  6504. DTAC_Player[playerid][apFreeTime] = FREETIME_TELEPORT;
  6505. DTAC_Player[playerid][apPosition][0] = x;
  6506. DTAC_Player[playerid][apPosition][1] = y;
  6507. DTAC_Player[playerid][apPosition][2] = 0.0;
  6508. SetPlayerPosFindZ(playerid, x, y, z);
  6509. return true;
  6510. }
  6511.  
  6512. public _AC_SetPlayerVelocity(playerid, Float:x, Float:y, Float:z)
  6513. {
  6514. DTAC_Player[playerid][apFreeTime] = FREETIME_TELEPORT;
  6515. DTAC_Player[playerid][apPosition][0] += x;
  6516. DTAC_Player[playerid][apPosition][1] += y;
  6517. DTAC_Player[playerid][apPosition][2] += z;
  6518. SetPlayerVelocity(playerid, x, y, z);
  6519. return true;
  6520. }
  6521.  
  6522. public _AC_SetVehicleVelocity(vehicleid, Float:x, Float:y, Float:z)
  6523. {
  6524. for(new i = 0; i < MAX_PLAYERS; i++)
  6525. {
  6526. if(IsPlayerConnected(i) && IsPlayerInVehicle(i, vehicleid))
  6527. {
  6528. DTAC_Player[i][apFreeTime] = FREETIME_TELEPORT;
  6529. DTAC_Player[i][apPosition][0] += x;
  6530. DTAC_Player[i][apPosition][1] += y;
  6531. DTAC_Player[i][apPosition][2] += z;
  6532. }
  6533. }
  6534. SetVehicleVelocity(vehicleid, x, y, z);
  6535. return true;
  6536. }
  6537.  
  6538. public _AC_SetVehiclePos(vehicleid, Float:x, Float:y, Float:z)
  6539. {
  6540. for(new i = 0; i < MAX_PLAYERS; i++)
  6541. {
  6542. if(IsPlayerConnected(i) && IsPlayerInVehicle(i, vehicleid))
  6543. {
  6544. DTAC_Player[i][apFreeTime] = FREETIME_TELEPORT;
  6545. DTAC_Player[i][apPosition][0] = x;
  6546. DTAC_Player[i][apPosition][1] = y;
  6547. DTAC_Player[i][apPosition][2] = z;
  6548. }
  6549. }
  6550. SetVehiclePos(vehicleid, x, y, z);
  6551. return true;
  6552. }
  6553.  
  6554. forward _AC_SetPlayerHealth(playerid, Float:health);
  6555. forward _AC_SetPlayerArmour(playerid, Float:setarmour);
  6556.  
  6557. public _AC_SetPlayerHealth(playerid, Float:health)
  6558. {
  6559. DTAC_Player[playerid][apHealth] = health;
  6560. DTAC_Player[playerid][apFreeTime] = FREETIME_HEALTH;
  6561. SetPlayerHealth(playerid, health);
  6562.  
  6563.  
  6564. return true;
  6565. }
  6566.  
  6567. public _AC_SetPlayerArmour(playerid, Float:setarmour)
  6568. {
  6569. DTAC_Player[playerid][apArmour] = setarmour;
  6570. DTAC_Player[playerid][apFreeTime] = FREETIME_HEALTH;
  6571. SetPlayerArmour(playerid, setarmour);
  6572. return true;
  6573. }
  6574.  
  6575. forward _AC_GivePlayerWeapon(playerid, weaponid, ammo2);
  6576. forward _AC_ResetPlayerWeapons(playerid);
  6577.  
  6578. public _AC_GivePlayerWeapon(playerid, weaponid, ammo2)
  6579. {
  6580. new weaponslot = GetWeaponSlot(weaponid);
  6581. if(weaponslot < 0 || weaponslot > 12) return false;
  6582. DTAC_Player[playerid][apFreeTime] = FREETIME_WEAPON;
  6583. DTAC_Player[playerid][apWeapons][weaponslot] = weaponid;
  6584. if(DTAC_Player[playerid][apAmmo][weaponslot] == -1 || DTAC_Player[playerid][apAmmo][weaponslot] == 0)
  6585. DTAC_Player[playerid][apAmmo][weaponslot] = ammo2;
  6586. else
  6587. DTAC_Player[playerid][apAmmo][weaponslot] += ammo2;
  6588. GivePlayerWeapon(playerid, weaponid, ammo2);
  6589.  
  6590.  
  6591. return true;
  6592. }
  6593.  
  6594. public _AC_ResetPlayerWeapons(playerid)
  6595. {
  6596. ResetPlayerWeapons(playerid);
  6597. for(new i = 0; i < 13; i++)
  6598. {
  6599. DTAC_Player[playerid][apWeapons][i] = -1;
  6600. DTAC_Player[playerid][apAmmo][i] = -1;
  6601. }
  6602. return true;
  6603. }
  6604.  
  6605. forward _AC_AddPlayerClass(skin2, Float:SpawnX, Float:SpawnY, Float:SpawnZ, Float:SpawnA, weapon1, ammo1, weapon2, ammo2, weapon3, ammo3);
  6606. forward _AC_AddPlayerClassEx(teamid, skin2, Float:SpawnX, Float:SpawnY, Float:SpawnZ, Float:SpawnA, weapon1, ammo1, weapon2, ammo2, weapon3, ammo3);
  6607.  
  6608. public _AC_AddPlayerClass(skin2, Float:SpawnX, Float:SpawnY, Float:SpawnZ, Float:SpawnA, weapon1, ammo1, weapon2, ammo2, weapon3, ammo3)
  6609. {
  6610. new id = AddPlayerClass(skin2, SpawnX, SpawnY, SpawnZ, SpawnA, weapon1, ammo1, weapon2, ammo2, weapon3, ammo3);
  6611. SpawnClasses[id][team] = -1;
  6612. SpawnClasses[id][skin] = skin2;
  6613. SpawnClasses[id][spawnx] = SpawnX;
  6614. SpawnClasses[id][spawny] = SpawnY;
  6615. SpawnClasses[id][spawny] = SpawnZ;
  6616. SpawnClasses[id][spawna] = SpawnA;
  6617. SpawnClasses[id][weapons][0] = weapon1;
  6618. SpawnClasses[id][ammo][0] = ammo1;
  6619. SpawnClasses[id][weapons][1] = weapon2;
  6620. SpawnClasses[id][ammo][1] = ammo2;
  6621. SpawnClasses[id][weapons][2] = weapon3;
  6622. SpawnClasses[id][ammo][2] = ammo3;
  6623. return id;
  6624. }
  6625.  
  6626. public _AC_AddPlayerClassEx(teamid, skin2, Float:SpawnX, Float:SpawnY, Float:SpawnZ, Float:SpawnA, weapon1, ammo1, weapon2, ammo2, weapon3, ammo3)
  6627. {
  6628. new id = AddPlayerClassEx(teamid, skin2, SpawnX, SpawnY, SpawnZ, SpawnA, weapon1, ammo1, weapon2, ammo2, weapon3, ammo3);
  6629. SpawnClasses[id][team] = teamid;
  6630. SpawnClasses[id][skin] = skin2;
  6631. SpawnClasses[id][spawnx] = SpawnX;
  6632. SpawnClasses[id][spawny] = SpawnY;
  6633. SpawnClasses[id][spawny] = SpawnZ;
  6634. SpawnClasses[id][spawna] = SpawnA;
  6635. SpawnClasses[id][weapons][0] = weapon1;
  6636. SpawnClasses[id][ammo][0] = ammo1;
  6637. SpawnClasses[id][weapons][1] = weapon2;
  6638. SpawnClasses[id][ammo][1] = ammo2;
  6639. SpawnClasses[id][weapons][2] = weapon3;
  6640. SpawnClasses[id][ammo][2] = ammo3;
  6641. return id;
  6642. }
  6643.  
  6644. /********************************************************************************************/
  6645. /* THE CERNEL FUNCTION */
  6646. /********************************************************************************************/
  6647.  
  6648. forward OnAnticheatUpdate();
  6649. public OnAnticheatUpdate()
  6650. {
  6651. new Float:tmpx, Float:tmpy, Float:tmpz, Float:tmpa, Float: distance;
  6652. new Float:tmphp, Float:tmparmour;
  6653. new bool:tmplostmoney;
  6654. new string[128], name[32];
  6655. new vehicleid;
  6656. new keyleft, keyright, keys,tmpmoney;
  6657. for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
  6658. {
  6659. if(!IsPlayerConnected(playerid)) continue;
  6660. if(DTAC_Player[playerid][apFreeTime] >= 1)
  6661. {
  6662. DTAC_Player[playerid][apFreeTime]--;
  6663. // To prevent kick when running and beeing in "free mode"
  6664. GetPlayerPos(playerid, DTAC_Player[playerid][apPosition][0], DTAC_Player[playerid][apPosition][1], DTAC_Player[playerid][apPosition][2]);
  6665. continue;
  6666. }
  6667.  
  6668. if(DTAC_Player[playerid][apUnkillableTime] >= 1)
  6669. {
  6670. DTAC_Player[playerid][apUnkillableTime]--;
  6671. if(DTAC_Config[spawnkill] == CHEAT_STATUS_UNDO)
  6672. {
  6673. DTAC_Player[playerid][apHealth] = 65534.0;
  6674. SetPlayerHealth(playerid, 65534.0);
  6675. if(DTAC_Player[playerid][apUnkillableTime] == 0)
  6676. {
  6677. DTAC_Player[playerid][apHealth] = 100.0;
  6678. SetPlayerHealth(playerid, 100.0);
  6679. }
  6680. }
  6681. }
  6682.  
  6683. tmplostmoney = false;
  6684. GetPlayerPos(playerid, tmpx, tmpy, tmpz);
  6685. GetPlayerFacingAngle(playerid, tmpa);
  6686. GetPlayerHealth(playerid, tmphp);
  6687. GetPlayerArmour(playerid, tmparmour);
  6688. tmpmoney = GetPlayerMoney(playerid);
  6689. GetPlayerKeys(playerid, keys, keyleft, keyright);
  6690.  
  6691. new Float:distancex, Float:distancey, Float:distancez;
  6692. if(DTAC_Player[playerid][apPosition][0] > tmpx)
  6693. distancex = DTAC_Player[playerid][apPosition][0] - tmpx;
  6694. else
  6695. distancex = tmpx - DTAC_Player[playerid][apPosition][0];
  6696. if(DTAC_Player[playerid][apPosition][1] > tmpy)
  6697. distancey = DTAC_Player[playerid][apPosition][1] - tmpy;
  6698. else
  6699. distancey = tmpy - DTAC_Player[playerid][apPosition][1];
  6700. if(DTAC_Player[playerid][apPosition][2] > tmpz)
  6701. distancez = DTAC_Player[playerid][apPosition][2] - tmpz;
  6702. else
  6703. distancez = tmpz - DTAC_Player[playerid][apPosition][2];
  6704. distance = floatsqroot(distancex * distancex + distancey * distancey + distancez * distancez);
  6705.  
  6706. GetPlayerName(playerid, name, 32);
  6707.  
  6708. if(IsPlayerInAnyVehicle(playerid))
  6709. vehicleid = GetPlayerVehicleID(playerid);
  6710. else if(GetPlayerSurfingVehicleID(playerid) != INVALID_VEHICLE_ID)
  6711. vehicleid = GetPlayerSurfingVehicleID(playerid);
  6712. else
  6713. vehicleid = INVALID_VEHICLE_ID;
  6714. /* Money hack */
  6715. if(DTAC_Config[money] > CHEAT_STATUS_OFF)
  6716. {
  6717. if(DTAC_Player[playerid][apMoney] > tmpmoney)
  6718. {
  6719. // He lost Money :)
  6720. tmplostmoney = true;
  6721. DTAC_Player[playerid][apMoney] = tmpmoney;
  6722. ResetPlayerMoney(playerid);
  6723. GivePlayerMoney(playerid, tmpmoney);
  6724. }
  6725. else if(DTAC_Player[playerid][apMoney] < tmpmoney)
  6726. {
  6727. // Cheat Oo
  6728. format(string, 128, "%s tryes to cheat ( Money cheat )", name);
  6729. LogText(string);
  6730. switch(DTAC_Config[money])
  6731. {
  6732. case CHEAT_STATUS_UNDO:
  6733. {
  6734. ResetPlayerMoney(playerid);
  6735. GivePlayerMoney(playerid, DTAC_Player[playerid][apMoney]);
  6736. }
  6737. case CHEAT_STATUS_WARN:
  6738. {
  6739. WarnPlayer(playerid, 1, "Money cheat");
  6740. ResetPlayerMoney(playerid);
  6741. GivePlayerMoney(playerid, DTAC_Player[playerid][apMoney]);
  6742. }
  6743. case CHEAT_STATUS_KICK:
  6744. {
  6745. #if defined SILENT_MODE
  6746. CrashPlayer(playerid);
  6747. #else
  6748. format(string, 128, "%s has been kicked due cheating ( money cheat )", name);
  6749. SendClientMessageToAll(0xFF0000FF, string);
  6750. Kick(playerid);
  6751. #endif
  6752. }
  6753. case CHEAT_STATUS_BAN:
  6754. {
  6755. BanPlayer(playerid);
  6756. #if defined SILENT_MODE
  6757. CrashPlayer(playerid);
  6758. #else
  6759. format(string, 128, "%s has been banned due cheating ( money cheat )", name);
  6760. SendClientMessageToAll(0xFF0000FF, string);
  6761. Kick(playerid);
  6762. #endif
  6763. }
  6764. }
  6765. }
  6766. }
  6767. /* spam */
  6768. if(DTAC_Config[spam] > CHEAT_STATUS_OFF)
  6769. {
  6770. if(DTAC_Player[playerid][apMuted] >= 1) DTAC_Player[playerid][apMuted]--;
  6771. if(DTAC_Player[playerid][apSpamMessages] >= 3)
  6772. {
  6773. DTAC_Player[playerid][apSpamMessages] = 0;
  6774. DTAC_Player[playerid][apMuted] += DTAC_Player[playerid][apSpamMessages] * 20;
  6775. }
  6776. DTAC_Player[playerid][apSpamMessages]--;
  6777. }
  6778. /* health */
  6779. if(DTAC_Config[heal] > CHEAT_STATUS_OFF)
  6780. {
  6781. if(tmphp > DTAC_Player[playerid][apHealth])
  6782. {
  6783. if(tmplostmoney)
  6784. {
  6785. // Healed on a vending machine or a bs
  6786. SetPlayerHealth(playerid, tmphp);
  6787. }
  6788. else
  6789. {
  6790. // Cheater !
  6791. format(string, 128, "%s tryes to cheat ( health cheat / has %.1f, should have %.1f )", name, tmphp, DTAC_Player[playerid][apHealth]);
  6792. LogText(string);
  6793. switch(DTAC_Config[heal])
  6794. {
  6795. case CHEAT_STATUS_UNDO:
  6796. {
  6797. SetPlayerHealth(playerid, DTAC_Player[playerid][apHealth]);
  6798. }
  6799. case CHEAT_STATUS_WARN:
  6800. {
  6801. WarnPlayer(playerid, 1, "heal cheat");
  6802. SetPlayerHealth(playerid, DTAC_Player[playerid][apHealth]);
  6803. }
  6804. case CHEAT_STATUS_KICK:
  6805. {
  6806. #if defined SILENT_MODE
  6807. CrashPlayer(playerid);
  6808. #else
  6809. format(string, 128, "%s has been kicked due cheating ( heal cheat )", name);
  6810. SendClientMessageToAll(0xFF0000FF, string);
  6811. Kick(playerid);
  6812. #endif
  6813. }
  6814. case CHEAT_STATUS_BAN:
  6815. {
  6816. BanPlayer(playerid);
  6817. #if defined SILENT_MODE
  6818. CrashPlayer(playerid);
  6819. #else
  6820. format(string, 128, "%s has been banned due cheating ( heal cheat )", name);
  6821. SendClientMessageToAll(0xFF0000FF, string);
  6822. Kick(playerid);
  6823. #endif
  6824. }
  6825. }
  6826. }
  6827. }
  6828. else if(tmphp < DTAC_Player[playerid][apHealth])
  6829. {
  6830. DTAC_Player[playerid][apHealth] = tmphp;
  6831. }
  6832. }
  6833. /* armour */
  6834. if(DTAC_Config[armour] > CHEAT_STATUS_OFF)
  6835. {
  6836. if(tmparmour > DTAC_Player[playerid][apArmour])
  6837. {
  6838. if(tmplostmoney)
  6839. {
  6840. // Healed on a vending machine or a bs
  6841. SetPlayerArmour(playerid, tmparmour);
  6842. }
  6843. else
  6844. {
  6845. // Cheater !
  6846. format(string, 128, "%s tryes to cheat ( armour cheat )", name);
  6847. LogText(string);
  6848. switch(DTAC_Config[heal])
  6849. {
  6850. case CHEAT_STATUS_UNDO:
  6851. {
  6852. SetPlayerArmour(playerid, DTAC_Player[playerid][apArmour]);
  6853. }
  6854. case CHEAT_STATUS_WARN:
  6855. {
  6856. WarnPlayer(playerid, 1, "armour cheat");
  6857. SetPlayerArmour(playerid, DTAC_Player[playerid][apArmour]);
  6858. }
  6859. case CHEAT_STATUS_KICK:
  6860. {
  6861. #if defined SILENT_MODE
  6862. CrashPlayer(playerid);
  6863. #else
  6864. format(string, 128, "%s has been kicked due cheating ( armour cheat )", name);
  6865. SendClientMessageToAll(0xFF0000FF, string);
  6866. Kick(playerid);
  6867. #endif
  6868. }
  6869. case CHEAT_STATUS_BAN:
  6870. {
  6871. BanPlayer(playerid);
  6872. #if defined SILENT_MODE
  6873. CrashPlayer(playerid);
  6874. #else
  6875. format(string, 128, "%s has been banned due cheating ( armour cheat )", name);
  6876. SendClientMessageToAll(0xFF0000FF, string);
  6877. Kick(playerid);
  6878. #endif
  6879. }
  6880. }
  6881. }
  6882. }
  6883. else if(tmparmour < DTAC_Player[playerid][apArmour])
  6884. {
  6885. DTAC_Player[playerid][apArmour] = tmparmour;
  6886. }
  6887. }
  6888. /* Jetpack */
  6889. if(DTAC_Config[jetpack] > CHEAT_STATUS_OFF)
  6890. {
  6891. if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USEJETPACK)
  6892. {
  6893. format(string, 128, "%s tryes to cheat ( jetpack cheat )", name);
  6894. LogText(string);
  6895. switch(DTAC_Config[jetpack])
  6896. {
  6897. case CHEAT_STATUS_UNDO:
  6898. {
  6899. SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
  6900. }
  6901. case CHEAT_STATUS_WARN:
  6902. {
  6903. WarnPlayer(playerid, 1, "jetpack cheat");
  6904. SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
  6905. }
  6906. case CHEAT_STATUS_KICK:
  6907. {
  6908. #if defined SILENT_MODE
  6909. CrashPlayer(playerid);
  6910. #else
  6911. format(string, 128, "%s has been kicked due cheating ( jetpack cheat )", name);
  6912. SendClientMessageToAll(0xFF0000FF, string);
  6913. Kick(playerid);
  6914. #endif
  6915. }
  6916. case CHEAT_STATUS_BAN:
  6917. {
  6918. BanPlayer(playerid);
  6919. #if defined SILENT_MODE
  6920. CrashPlayer(playerid);
  6921. #else
  6922. format(string, 128, "%s has been banned due cheating ( armour cheat )", name);
  6923. SendClientMessageToAll(0xFF0000FF, string);
  6924. Kick(playerid);
  6925. #endif
  6926. }
  6927. }
  6928. }
  6929. }
  6930. /* Speed */
  6931. if(DTAC_Config[speed] > CHEAT_STATUS_OFF)
  6932. {
  6933. //new Float:tmpx, Float:tmpy, Float:tmpz;
  6934. if(vehicleid != INVALID_VEHICLE_ID)
  6935. {
  6936. if(IsAPlane(GetVehicleModel(vehicleid)) && distance >= 150)
  6937. {
  6938. format(string, 128, "%s trys to cheat ( speedhack, %.1f m/s )", name, distance);
  6939. SendAdminMessageRang(COLOR_CORNSILK,1339,string);
  6940. LogText(string);
  6941. switch(DTAC_Config[speed])
  6942. {
  6943. case CHEAT_STATUS_UNDO:
  6944. {
  6945. SetPlayerPos(playerid, DTAC_Player[playerid][apPosition][0], DTAC_Player[playerid][apPosition][1], DTAC_Player[playerid][apPosition][2]);
  6946. }
  6947. case CHEAT_STATUS_WARN:
  6948. {
  6949. WarnPlayer(playerid, 1, "airbreak / speedhack / flyhack cheat");
  6950. }
  6951. case CHEAT_STATUS_KICK:
  6952. {
  6953. #if defined SILENT_MODE
  6954. CrashPlayer(playerid);
  6955. #else
  6956. format(string, 128, "%s has been kicked due cheating ( airbreak / speedhack / flyhack cheat )", name);
  6957. SendClientMessageToAll(0xFF0000FF, string);
  6958. Kick(playerid);
  6959. #endif
  6960. }
  6961. case CHEAT_STATUS_BAN:
  6962. {
  6963. BanPlayer(playerid);
  6964. #if defined SILENT_MODE
  6965. CrashPlayer(playerid);
  6966. #else
  6967. format(string, 128, "%s has been banned due cheating ( airbreak / speedhack / flyhack cheat )", name);
  6968. SendClientMessageToAll(0xFF0000FF, string);
  6969. Kick(playerid);
  6970. #endif
  6971. }
  6972. }
  6973. }
  6974. else if(IsABike(GetVehicleModel(vehicleid)) && distance >= 120)
  6975. {
  6976. format(string, 128, "%s trys to cheat ( speedhack, %.1f m/s )", name, distance);
  6977. SendAdminMessageRang(COLOR_CORNSILK,1339,string);
  6978. LogText(string);
  6979. switch(DTAC_Config[speed])
  6980. {
  6981. case CHEAT_STATUS_UNDO:
  6982. {
  6983. SetPlayerPos(playerid, DTAC_Player[playerid][apPosition][0], DTAC_Player[playerid][apPosition][1], DTAC_Player[playerid][apPosition][2]);
  6984. }
  6985. case CHEAT_STATUS_WARN:
  6986. {
  6987. WarnPlayer(playerid, 1, "airbreak / speedhack / flyhack cheat");
  6988. }
  6989. case CHEAT_STATUS_KICK:
  6990. {
  6991. #if defined SILENT_MODE
  6992. CrashPlayer(playerid);
  6993. #else
  6994. format(string, 128, "%s has been kicked due cheating ( airbreak / speedhack / flyhack cheat )", name);
  6995. SendClientMessageToAll(0xFF0000FF, string);
  6996. Kick(playerid);
  6997. #endif
  6998. }
  6999. case CHEAT_STATUS_BAN:
  7000. {
  7001. BanPlayer(playerid);
  7002. #if defined SILENT_MODE
  7003. CrashPlayer(playerid);
  7004. #else
  7005. format(string, 128, "%s has been banned due cheating ( airbreak / speedhack / flyhack cheat )", name);
  7006. SendClientMessageToAll(0xFF0000FF, string);
  7007. Kick(playerid);
  7008. #endif
  7009. }
  7010. }
  7011. }
  7012. else if(IsATrain(GetVehicleModel(vehicleid)) && distance >= 120)
  7013. {
  7014. format(string, 128, "%s trys to cheat ( speedhack, %.1f m/s )", name, distance);
  7015. SendAdminMessageRang(COLOR_CORNSILK,1339,string);
  7016. LogText(string);
  7017. switch(DTAC_Config[speed])
  7018. {
  7019. case CHEAT_STATUS_UNDO:
  7020. {
  7021. SetPlayerPos(playerid, DTAC_Player[playerid][apPosition][0], DTAC_Player[playerid][apPosition][1], DTAC_Player[playerid][apPosition][2]);
  7022. }
  7023. case CHEAT_STATUS_WARN:
  7024. {
  7025. WarnPlayer(playerid, 1, "airbreak / speedhack / flyhack cheat");
  7026. }
  7027. case CHEAT_STATUS_KICK:
  7028. {
  7029. #if defined SILENT_MODE
  7030. CrashPlayer(playerid);
  7031. #else
  7032. format(string, 128, "%s has been kicked due cheating ( airbreak / speedhack / flyhack cheat )", name);
  7033. SendClientMessageToAll(0xFF0000FF, string);
  7034. Kick(playerid);
  7035. #endif
  7036. }
  7037. case CHEAT_STATUS_BAN:
  7038. {
  7039. BanPlayer(playerid);
  7040. #if defined SILENT_MODE
  7041. CrashPlayer(playerid);
  7042. #else
  7043. format(string, 128, "%s has been banned due cheating ( airbreak / speedhack / flyhack cheat )", name);
  7044. SendClientMessageToAll(0xFF0000FF, string);
  7045. Kick(playerid);
  7046. #endif
  7047. }
  7048. }
  7049. }
  7050. else if(distance >= 180)
  7051. {
  7052. format(string, 128, "%s trys to cheat ( speedhack, %.1f m/s )", name, distance);
  7053. SendAdminMessageRang(COLOR_CORNSILK,1339,string);
  7054. LogText(string);
  7055. switch(DTAC_Config[speed])
  7056. {
  7057. case CHEAT_STATUS_UNDO:
  7058. {
  7059. SetPlayerPos(playerid, DTAC_Player[playerid][apPosition][0], DTAC_Player[playerid][apPosition][1], DTAC_Player[playerid][apPosition][2]);
  7060. }
  7061. case CHEAT_STATUS_WARN:
  7062. {
  7063. WarnPlayer(playerid, 1, "airbreak / speedhack / flyhack cheat");
  7064. }
  7065. case CHEAT_STATUS_KICK:
  7066. {
  7067. #if defined SILENT_MODE
  7068. CrashPlayer(playerid);
  7069. #else
  7070. format(string, 128, "%s has been kicked due cheating ( airbreak / speedhack / flyhack cheat )", name);
  7071. SendClientMessageToAll(0xFF0000FF, string);
  7072. Kick(playerid);
  7073. #endif
  7074. }
  7075. case CHEAT_STATUS_BAN:
  7076. {
  7077. BanPlayer(playerid);
  7078. #if defined SILENT_MODE
  7079. CrashPlayer(playerid);
  7080. #else
  7081. format(string, 128, "%s has been banned due cheating ( airbreak / speedhack / flyhack cheat )", name);
  7082. SendClientMessageToAll(0xFF0000FF, string);
  7083. Kick(playerid);
  7084. #endif
  7085. }
  7086. }
  7087. }
  7088. }
  7089. else
  7090. {
  7091. if(distance >= 50)
  7092. {
  7093. format(string, 128, "%s trys to run ( airbreak, %.1f m/s )", name, distance);
  7094. LogText(string);
  7095. switch(DTAC_Config[speed])
  7096. {
  7097. case CHEAT_STATUS_UNDO:
  7098. {
  7099. //SetPlayerPos(playerid, DTAC_Player[playerid][apPosition][0], DTAC_Player[playerid][apPosition][1], DTAC_Player[playerid][apPosition][2]);
  7100. }
  7101. case CHEAT_STATUS_WARN:
  7102. {
  7103. WarnPlayer(playerid, 1, "airbreak / speedhack / flyhack cheat");
  7104. }
  7105. case CHEAT_STATUS_KICK:
  7106. {
  7107. #if defined SILENT_MODE
  7108. CrashPlayer(playerid);
  7109. #else
  7110. format(string, 128, "%s has been kicked due cheating ( airbreak / speedhack / flyhack cheat )", name);
  7111. SendClientMessageToAll(0xFF0000FF, string);
  7112. Kick(playerid);
  7113. #endif
  7114. }
  7115. case CHEAT_STATUS_BAN:
  7116. {
  7117. BanPlayer(playerid);
  7118. #if defined SILENT_MODE
  7119. CrashPlayer(playerid);
  7120. #else
  7121. format(string, 128, "%s has been banned due cheating ( airbreak / speedhack / flyhack cheat )", name);
  7122. SendClientMessageToAll(0xFF0000FF, string);
  7123. Kick(playerid);
  7124. #endif
  7125. }
  7126. }
  7127. }
  7128. }
  7129. }
  7130. /* Weapon */
  7131. if(DTAC_Config[weapon] > CHEAT_STATUS_OFF)
  7132. {
  7133. #if defined SAVE_RECOURCES
  7134. new weaponid = GetPlayerWeapon(playerid);
  7135. new weaponslot = GetWeaponSlot(weaponid);
  7136. if(weaponslot != 0 && weaponslot != -1 && weaponid != 0 && weaponid != -1)
  7137. {
  7138. if(weaponid != DTAC_Player[playerid][apWeapons][weaponslot] && weaponid != 46)
  7139. {
  7140. format(string, 128, "%s trys to cheat ( weapon: %d )", name, weaponid);
  7141. SendAdminMessageRang(COLOR_CORNSILK,1339,string);
  7142. LogText(string);
  7143. switch(DTAC_Config[weapon])
  7144. {
  7145. case CHEAT_STATUS_UNDO:
  7146. {
  7147. _AC_ResetPlayerWeapons(playerid);
  7148. }
  7149. case CHEAT_STATUS_WARN:
  7150. {
  7151. WarnPlayer(playerid, 1, "weapon cheat");
  7152. _AC_ResetPlayerWeapons(playerid);
  7153. }
  7154. case CHEAT_STATUS_KICK:
  7155. {
  7156. #if defined SILENT_MODE
  7157. CrashPlayer(playerid);
  7158. #else
  7159. format(string, 128, "%s has been kicked due cheating ( weapon cheat )", name);
  7160. SendClientMessageToAll(0xFF0000FF, string);
  7161. Kick(playerid);
  7162. #endif
  7163. }
  7164. case CHEAT_STATUS_BAN:
  7165. {
  7166. BanPlayer(playerid);
  7167. #if defined SILENT_MODE
  7168. CrashPlayer(playerid);
  7169. #else
  7170. format(string, 128, "%s has been banned due cheating ( weapon cheat )", name);
  7171. SendClientMessageToAll(0xFF0000FF, string);
  7172. Kick(playerid);
  7173. #endif
  7174. }
  7175. }
  7176. }
  7177. }
  7178. #else
  7179. new weaponid, ammoamount;
  7180. for(new i = 0; i < 13; i++)
  7181. {
  7182. GetPlayerWeaponData(playerid, i, weaponid, ammoamount);
  7183. if(weaponid == 0 && DTAC_Player[playerid][apWeapons][i] != 0)
  7184. {
  7185. DTAC_Player[playerid][apWeapons][i] = 0;
  7186. DTAC_Player[playerid][apAmmo][i] = 0;
  7187. }
  7188. else if(weaponid != 0 && DTAC_Player[playerid][apWeapons][i] == 0 || weaponid != 0 && DTAC_Player[playerid][apWeapons][i] == 1)
  7189. {
  7190. if(weaponid == 46)
  7191. {
  7192. DTAC_Player[playerid][apWeapons][i] = 46;
  7193. }
  7194. else
  7195. {
  7196. format(string, 128, "%s trys to cheat ( weapon: %d )", name, weaponid);
  7197. SendAdminMessageRang(COLOR_CORNSILK,1339,string);
  7198. LogText(string);
  7199. switch(DTAC_Config[weapon])
  7200. {
  7201. case CHEAT_STATUS_UNDO:
  7202. {
  7203. _AC_ResetPlayerWeapons(playerid);
  7204. }
  7205. case CHEAT_STATUS_WARN:
  7206. {
  7207. WarnPlayer(playerid, 1, "weapon cheat");
  7208. _AC_ResetPlayerWeapons(playerid);
  7209. }
  7210. case CHEAT_STATUS_KICK:
  7211. {
  7212. #if defined SILENT_MODE
  7213. CrashPlayer(playerid);
  7214. #else
  7215. format(string, 128, "%s has been kicked due cheating ( weapon cheat )", name);
  7216. SendClientMessageToAll(0xFF0000FF, string);
  7217. Kick(playerid);
  7218. #endif
  7219. }
  7220. case CHEAT_STATUS_BAN:
  7221. {
  7222. BanPlayer(playerid);
  7223. #if defined SILENT_MODE
  7224. CrashPlayer(playerid);
  7225. #else
  7226. format(string, 128, "%s has been banned due cheating ( weapon cheat )", name);
  7227. SendClientMessageToAll(0xFF0000FF, string);
  7228. Kick(playerid);
  7229. #endif
  7230. }
  7231. } // end switch
  7232. }
  7233. }
  7234. }
  7235. #endif
  7236. }
  7237. /* quickturn */
  7238. if(DTAC_Config[quickturn] > CHEAT_STATUS_OFF)
  7239. {
  7240. new Float:anglechange = DTAC_Player[playerid][apAngle] - tmpa;
  7241. if(anglechange < 0.0) anglechange += 360.0;
  7242. else if(anglechange > 360.0) anglechange -= 360.0;
  7243. format(string, 128, "%.1f, %.1f, %.1f", DTAC_Player[playerid][apAngle], tmpa, anglechange);
  7244. SendClientMessage(playerid, 0xFF0000FF, string);
  7245. }
  7246. /* joypad */
  7247. if(DTAC_Config[joypad] > CHEAT_STATUS_OFF)
  7248. {
  7249. if((keyleft != 128 && keyleft != 0 && keyleft != -128) || (keyright != 128 && keyright != 0 && keyright != -128))
  7250. {
  7251. switch(DTAC_Config[joypad])
  7252. {
  7253. case CHEAT_STATUS_UNDO:
  7254. {
  7255. SendClientMessage(playerid, 0xFF0000FF, "Please turn off your Joypad");
  7256. }
  7257. case CHEAT_STATUS_WARN:
  7258. {
  7259. WarnPlayer(playerid, 1, "joypad");
  7260. }
  7261. case CHEAT_STATUS_KICK:
  7262. {
  7263. #if defined SILENT_MODE
  7264. CrashPlayer(playerid);
  7265. #else
  7266. format(string, 128, "%s has been kicked due using joypad", name);
  7267. SendClientMessageToAll(0xFF0000FF, string);
  7268. Kick(playerid);
  7269. #endif
  7270. }
  7271. case CHEAT_STATUS_BAN:
  7272. {
  7273. BanPlayer(playerid);
  7274. #if defined SILENT_MODE
  7275. CrashPlayer(playerid);
  7276. #else
  7277. format(string, 128, "%s has been banned due using joypad", name);
  7278. SendClientMessageToAll(0xFF0000FF, string);
  7279. Kick(playerid);
  7280. #endif
  7281. }
  7282. }
  7283. }
  7284. }
  7285. GetPlayerPos(playerid, DTAC_Player[playerid][apPosition][0], DTAC_Player[playerid][apPosition][1], DTAC_Player[playerid][apPosition][2]);
  7286. GetPlayerFacingAngle(playerid, DTAC_Player[playerid][apAngle]);
  7287. }
  7288. return true;
  7289. }
  7290. // To read from the config-File
  7291. forward ParseCurrentSettings();
  7292. public ParseCurrentSettings()
  7293. {
  7294. LogText("Load configuration ...");
  7295. new File:configfile;
  7296. new line[128]; // TODO: Set higher if doesn't read config correct
  7297. new ini_key[64], ini_value[64];
  7298. new index;
  7299.  
  7300. ResetConfig();
  7301.  
  7302. configfile = fopen("DT_AntiCheat/config.ini", io_read);
  7303. if(!configfile) return false; // File does not exists
  7304.  
  7305. while(fread(configfile, line) != 0)
  7306. {
  7307. // First, remove the "\r\n"
  7308. line[strlen(line) - 2] = 0;
  7309. // Let's start parsing :)
  7310. index = str_find(line, sizeof(line), '=', 0);
  7311. if(line[0] == 0) continue; // Empty line
  7312. if((line[0] == '#') || (line[0] == '/' && line[1] == '/')) continue; // It's a commented line
  7313. if(index == 0 || index == -1) continue; // No "=" in the line, so that's an invalid line. Go to the next line.
  7314. sub_str(line, ini_key, 0, index);
  7315. sub_str(line, ini_value, index + 1, sizeof(line));
  7316. if(strcmp(ini_key, "money", true) == 0) { LogText(" Loading Money ..."); DTAC_Config[money] = strval(ini_value); }
  7317. if(strcmp(ini_key, "driveby", true) == 0) { LogText(" Loading DriveBy ..."); DTAC_Config[driveby] = strval(ini_value); }
  7318. if(strcmp(ini_key, "spam", true) == 0) { LogText(" Loading Spam ..."); DTAC_Config[spam] = strval(ini_value); }
  7319. if(strcmp(ini_key, "heal", true) == 0) { LogText(" Loading Heal ..."); DTAC_Config[heal] = strval(ini_value); }
  7320. if(strcmp(ini_key, "armour", true) == 0) { LogText(" Loading Armour ..."); DTAC_Config[armour] = strval(ini_value); }
  7321. if(strcmp(ini_key, "jetpack", true) == 0) { LogText(" Loading Jetpack ..."); DTAC_Config[jetpack] = strval(ini_value); }
  7322. if(strcmp(ini_key, "speedhack", true) == 0) { LogText(" Loading Speedhack ..."); DTAC_Config[speed] = strval(ini_value); }
  7323. if(strcmp(ini_key, "weapon", true) == 0) { LogText(" Loading Weapon ..."); DTAC_Config[weapon] = strval(ini_value); }
  7324. if(strcmp(ini_key, "teleport", true) == 0) { LogText(" Loading Teleport ..."); DTAC_Config[teleport] = strval(ini_value); }
  7325. if(strcmp(ini_key, "spawnkill", true) == 0) { LogText(" Loading Spawnkill ..."); DTAC_Config[spawnkill] = strval(ini_value); }
  7326. if(strcmp(ini_key, "quickturn", true) == 0) { LogText(" Loading 180° - Turn ..."); DTAC_Config[quickturn] = strval(ini_value); }
  7327. if(strcmp(ini_key, "maxwarns", true) == 0) { DTAC_Config[maxwarns] = strval(ini_value); }
  7328. if(strcmp(ini_key, "savewarns", true) == 0) { DTAC_Config[savewarns] = strval(ini_value) == 1; }
  7329. if(strcmp(ini_key, "protecttime", true) == 0) { DTAC_Config[spawnprotecttime] = strval(ini_value); }
  7330. }
  7331. fclose(configfile);
  7332. return true;
  7333. }
  7334.  
  7335. forward SaveCurrentSettings();
  7336. public SaveCurrentSettings()
  7337. {
  7338. LogText("Save configuration ...");
  7339. new File:configfile, string[128];
  7340. configfile = fopen("DT_AntiCheat/config.ini", io_write);
  7341. LogText(" Save Money ...");
  7342. format(string, 128, "money=%d\r\n", DTAC_Config[money]); fwrite(configfile, string);
  7343. LogText(" Save DriveBy ...");
  7344. format(string, 128, "driveby=%d\r\n", DTAC_Config[driveby]); fwrite(configfile, string);
  7345. LogText(" Save Spam ...");
  7346. format(string, 128, "spam=%d\r\n", DTAC_Config[spam]); fwrite(configfile, string);
  7347. LogText(" Save Heal ...");
  7348. format(string, 128, "heal=%d\r\n", DTAC_Config[heal]); fwrite(configfile, string);
  7349. LogText(" Save Armour ...");
  7350. format(string, 128, "armour=%d\r\n", DTAC_Config[armour]); fwrite(configfile, string);
  7351. LogText(" Save Jetpack ...");
  7352. format(string, 128, "jetpack=%d\r\n", DTAC_Config[jetpack]); fwrite(configfile, string);
  7353. LogText(" Save Speedhack ...");
  7354. format(string, 128, "speedhack=%d\r\n", DTAC_Config[speed]); fwrite(configfile, string);
  7355. LogText(" Save Weapon ...");
  7356. format(string, 128, "weapon=%d\r\n", DTAC_Config[weapon]); fwrite(configfile, string);
  7357. LogText(" Save Teleport ...");
  7358. format(string, 128, "teleport=%d\r\n", DTAC_Config[teleport]); fwrite(configfile, string);
  7359. LogText(" Save Spawnkill ...");
  7360. format(string, 128, "spawnkill=%d\r\n", DTAC_Config[spawnkill]); fwrite(configfile, string);
  7361. LogText(" Save 180° - Turn ...");
  7362. format(string, 128, "quickturn=%d\r\n", DTAC_Config[quickturn]); fwrite(configfile, string);
  7363.  
  7364. LogText(" Save extendet stuff ...");
  7365. format(string, 128, "maxwarns=%d\r\n", DTAC_Config[maxwarns]); fwrite(configfile, string);
  7366. format(string, 128, "savewarns=%d\r\n", DTAC_Config[savewarns] ? 1 : 0); fwrite(configfile, string);
  7367. format(string, 128, "protecttime=%d\r\n", DTAC_Config[spawnprotecttime]); fwrite(configfile, string);
  7368. fclose(configfile);
  7369. //
  7370. }
  7371.  
  7372. // To set the config to default
  7373. forward ResetConfig();
  7374. public ResetConfig()
  7375. {
  7376. DTAC_Config[money] = CHEAT_STATUS_UNDO;
  7377. DTAC_Config[driveby] = CHEAT_STATUS_WARN;
  7378. DTAC_Config[spam] = CHEAT_STATUS_WARN;
  7379. DTAC_Config[armour] = CHEAT_STATUS_UNDO;
  7380. DTAC_Config[heal] = CHEAT_STATUS_UNDO;
  7381. DTAC_Config[jetpack] = CHEAT_STATUS_KICK;
  7382. DTAC_Config[speed] = CHEAT_STATUS_KICK;
  7383. DTAC_Config[weapon] = CHEAT_STATUS_KICK;
  7384. DTAC_Config[teleport] = CHEAT_STATUS_WARN;
  7385. DTAC_Config[spawnkill] = CHEAT_STATUS_WARN;
  7386. DTAC_Config[quickturn] = CHEAT_STATUS_WARN;
  7387. DTAC_Config[joypad] = CHEAT_STATUS_OFF;
  7388.  
  7389. DTAC_Config[maxwarns] = 3;
  7390. DTAC_Config[savewarns] = false;
  7391. DTAC_Config[spawnprotecttime] = 5; // 5 seconds
  7392. return true;
  7393. }
  7394.  
  7395. // I miss this in SAMP, so hrer it is, "character" = The char to find, "count" = The first char (0) ? The second (1) ? The third (2) ?
  7396. forward str_find(string[], lenght, character, count);
  7397. public str_find(string[], lenght, character, count)
  7398. {
  7399. //return strfind(string, character, true);
  7400. new charcounter = 0;
  7401. for(new i = 0; i < lenght; i++)
  7402. {
  7403. if(string[i] == 0) break; // EOS
  7404. if(string[i] == character)
  7405. {
  7406. if(charcounter == count)
  7407. return i;
  7408. charcounter++;
  7409. }
  7410. }
  7411. return -1;
  7412. }
  7413.  
  7414. forward sub_str(string[], target[], from, to);
  7415. public sub_str(string[], target[], from, to)
  7416. {
  7417. /*new charcounter = 0;
  7418. for(new i = from; i <= to; i++)
  7419. {
  7420. target[charcounter] = string[i];
  7421. charcounter++;
  7422. }
  7423. target[charcounter] = 0;*/
  7424. strmid(target, string, from, to, (to - from) + 1);
  7425. return true;
  7426. }
  7427.  
  7428. // I took this from my last Anticheat
  7429. forward IsDrivebyVehicle(vehiclemodel);
  7430. public IsDrivebyVehicle(vehiclemodel)
  7431. {
  7432. if(vehiclemodel == 425) { return true; } // Hunter
  7433. if(vehiclemodel == 432) { return true; } // Rhino
  7434. if(vehiclemodel == 447) { return true; } // Seasparrow
  7435. if(vehiclemodel == 472) { return true; } // Not shure, I think Coastguard can shoot ?!?
  7436. if(vehiclemodel == 520) { return true; } // Hydra
  7437. return false;
  7438. }
  7439.  
  7440. forward IsAPlane(vehiclemodel);
  7441. public IsAPlane(vehiclemodel)
  7442. {
  7443. if(vehiclemodel == 460) { return true; }
  7444. if(vehiclemodel == 476) { return true; }
  7445. if(vehiclemodel == 511) { return true; }
  7446. if(vehiclemodel == 512) { return true; }
  7447. if(vehiclemodel == 513) { return true; }
  7448. if(vehiclemodel == 519) { return true; }
  7449. if(vehiclemodel == 520) { return true; }
  7450. if(vehiclemodel == 533) { return true; }
  7451. if(vehiclemodel == 553) { return true; }
  7452. if(vehiclemodel == 577) { return true; }
  7453. if(vehiclemodel == 592) { return true; }
  7454. if(vehiclemodel == 593) { return true; }
  7455. return false;
  7456. }
  7457.  
  7458. forward IsABike(vehiclemodel);
  7459. public IsABike(vehiclemodel)
  7460. {
  7461. if(vehiclemodel == 448) { return true; }
  7462. if(vehiclemodel == 461) { return true; }
  7463. if(vehiclemodel == 462) { return true; }
  7464. if(vehiclemodel == 463) { return true; }
  7465. if(vehiclemodel == 468) { return true; }
  7466. if(vehiclemodel == 471) { return true; }
  7467. if(vehiclemodel == 481) { return true; }
  7468. if(vehiclemodel == 509) { return true; }
  7469. if(vehiclemodel == 510) { return true; }
  7470. if(vehiclemodel == 521) { return true; }
  7471. if(vehiclemodel == 522) { return true; }
  7472. if(vehiclemodel == 523) { return true; }
  7473. if(vehiclemodel == 281) { return true; }
  7474. if(vehiclemodel == 586) { return true; }
  7475. return false;
  7476. }
  7477.  
  7478. forward IsATrain(vehiclemodel);
  7479. public IsATrain(vehiclemodel)
  7480. {
  7481. if(vehiclemodel == 537) { return true; }
  7482. if(vehiclemodel == 538) { return true; }
  7483.  
  7484. if(vehiclemodel == 569) { return true; }
  7485. if(vehiclemodel == 570) { return true; }
  7486. if(vehiclemodel == 590) { return true; }
  7487. return false;
  7488. }
  7489. SL_CALL Float:GetDistanceBetweenPlayers(p1,p2)
  7490. {
  7491. new Float:x1,Float:y1,Float:z1;
  7492. new Float:x2,Float:y2,Float:z2;
  7493. if(!IsPlayerConnected(p1) || !IsPlayerConnected(p2))
  7494. {
  7495. return -1.00;
  7496. }
  7497. GetPlayerPos(p1,x1,y1,z1);
  7498. GetPlayerPos(p2,x2,y2,z2);
  7499. return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
  7500. }
  7501. SL_CALL IsANoGasCar(carid)
  7502. {
  7503. new modell = GetVehicleModel(carid);
  7504. if (modell==510||modell==481||modell==509||modell==509)
  7505. {
  7506. return 1;
  7507. }
  7508. return 0;
  7509. }
  7510. forward LogText(text[]);
  7511. public LogText(text[])
  7512. {
  7513. new year, month, day, hour, minute, second, string[128];
  7514. getdate(year, month, day);
  7515. gettime(hour, minute, second);
  7516. format(string, 128, "<%d.%d.%d %d:%d> %s\r\n", day, month, year, hour, minute, text);
  7517. new File:logfile = fopen("DT_AntiCheat/log.txt", io_append);
  7518. fwrite(logfile, text);
  7519. fclose(logfile);
  7520. printf(text);
  7521. return true;
  7522. }
  7523.  
  7524. forward WarnPlayer(playerid, warns, reason[]);
  7525. public WarnPlayer(playerid, warns, reason[])
  7526. {
  7527. new string[128];
  7528. DTAC_Player[playerid][apWarns] += warns;
  7529. #if defined SILENT_MODE
  7530.  
  7531. #else
  7532. format(string, 128, "AC: You got a warning, reason: %s", reason);
  7533. SendClientMessage(playerid, 0xFFFF00, string);
  7534. #endif
  7535. return true;
  7536. }
  7537.  
  7538. forward CrashPlayer(playerid);
  7539. public CrashPlayer(playerid)
  7540. {
  7541. SendClientMessage(playerid, 0xFF0000FF, "DBG: CrashPlayer wurde aufgerufen");
  7542. return true;
  7543. }
  7544.  
  7545. forward BanPlayer(playerid);
  7546. public BanPlayer(playerid)
  7547. {
  7548. SendClientMessage(playerid, 0xFF0000FF, "DBG: BanPlayer wurde aufgerufen");
  7549. new string[128], name[32];
  7550. GetPlayerName(playerid, name, 32);
  7551. format(string, 128, "DT_Anticheat/%s.ban", name);
  7552. new File:file = fopen(string, io_write);
  7553. format(string, 128, "time=%d", GetTimestamp());
  7554. fwrite(file, string);
  7555. fclose(file);
  7556.  
  7557.  
  7558.  
  7559. return true;
  7560. }
  7561.  
  7562. forward GetWeaponSlot(weaponid);
  7563. public GetWeaponSlot(weaponid)
  7564. {
  7565. switch(weaponid)
  7566. {
  7567. case 0: return 0;
  7568. case 1: return 0;
  7569. case 2: return 1;
  7570. case 3: return 1;
  7571. case 4: return 1;
  7572. case 5: return 1;
  7573. case 6: return 1;
  7574. case 7: return 1;
  7575. case 8: return 1;
  7576. case 9: return 1;
  7577. case 10: return 10;
  7578. case 11: return 10;
  7579. case 12: return 10;
  7580. case 13: return 10;
  7581. case 14: return 10;
  7582. case 15: return 10;
  7583. case 16: return 8;
  7584. case 17: return 8;
  7585. case 18: return 8;
  7586. case 22: return 2;
  7587. case 23: return 2;
  7588. case 24: return 2;
  7589. case 25: return 3;
  7590. case 26: return 3;
  7591. case 27: return 3;
  7592. case 28: return 4;
  7593. case 29: return 4;
  7594. case 30: return 5;
  7595. case 31: return 5;
  7596. case 32: return 4;
  7597. case 33: return 6;
  7598. case 34: return 6;
  7599. case 35: return 7;
  7600. case 36: return 7;
  7601. case 37: return 7;
  7602. case 38: return 7;
  7603. case 39: return 8;
  7604. case 40: return 12;
  7605. case 41: return 9;
  7606. case 42: return 9;
  7607. case 43: return 9;
  7608. case 44: return 11;
  7609. case 45: return 11;
  7610. case 46: return 11;
  7611. default: return -1;
  7612. }
  7613. return -1; // to prevent a warning ^^
  7614. }
  7615.  
  7616. forward GetTimestamp();
  7617. public GetTimestamp()
  7618. {
  7619. new _sek, _min, _hour, _day, _month, _year, _timestamp;
  7620. getdate(_year, _month, _day);
  7621. gettime(_hour, _min, _sek);
  7622. _timestamp = _sek;
  7623. _timestamp += _min * 60;
  7624. _timestamp += _hour * 60 * 60;
  7625. _timestamp += _day * 60 * 60 * 24;
  7626. _timestamp += _month * 60 * 60 * 24 * 31;
  7627. _timestamp += (_year - 1980) * 60 * 60 * 24 * 31 * 12;
  7628. return _timestamp;
  7629. }
  7630.  
  7631. forward FormTimestamp(form[], timestamp, returnvar[], returnsize);
  7632. public FormTimestamp(form[], timestamp, returnvar[], returnsize)
  7633. {
  7634. new count = 0;
  7635. format(returnvar, returnsize, "");
  7636. new _year, _month, _day, _hour, _min, _sec;
  7637. while(timestamp >= 32140800) { _year++; timestamp -= 32140800; }
  7638. while(timestamp >= 2678400) { _month++; timestamp -= 2678400; }
  7639. while(timestamp >= 86400) { _day++; timestamp -= 86400; }
  7640. while(timestamp >= 3600) { _hour++; timestamp -= 3600; }
  7641. while(timestamp >= 60) { _min++; timestamp -= 60; }
  7642. _sec = timestamp;
  7643.  
  7644. while(form[count])
  7645. {
  7646. if(form[count] == 's')
  7647. {
  7648. format(returnvar, returnsize, "%s%d", returnvar, _sec);
  7649. }
  7650. else if(form[count] == 'S')
  7651. {
  7652. if(_sec < 10)
  7653. format(returnvar, returnsize, "%s0%d", returnvar, _sec);
  7654. else
  7655. format(returnvar, returnsize, "%s%d", returnvar, _sec);
  7656. }
  7657. else if(form[count] == 'm')
  7658. {
  7659. format(returnvar, returnsize, "%s%d", returnvar, _min);
  7660. }
  7661. else if(form[count] == 'M')
  7662. {
  7663. if(_min < 10)
  7664. format(returnvar, returnsize, "%s0%d", returnvar, _min);
  7665. else
  7666. format(returnvar, returnsize, "%s%d", returnvar, _min);
  7667. }
  7668. else if(form[count] == 'h')
  7669. {
  7670. format(returnvar, returnsize, "%s%d", returnvar, _hour);
  7671. }
  7672. else if(form[count] == 'H')
  7673. {
  7674. if(_hour < 10)
  7675. format(returnvar, returnsize, "%s0%d", returnvar, _hour);
  7676. else
  7677. format(returnvar, returnsize, "%s%d", returnvar, _hour);
  7678. }
  7679. else if(form[count] == 'd')
  7680. {
  7681. format(returnvar, returnsize, "%s%d", returnvar, _day);
  7682. }
  7683. else if(form[count] == 'D')
  7684. {
  7685. if(_day < 10)
  7686. format(returnvar, returnsize, "%s0%d", returnvar, _day);
  7687. else
  7688. format(returnvar, returnsize, "%s%d", returnvar, _day);
  7689. }
  7690. else if(form[count] == 'z')
  7691. {
  7692. format(returnvar, returnsize, "%s%d", returnvar, _month);
  7693. }
  7694. else if(form[count] == 'Z')
  7695. {
  7696. if(_month < 10)
  7697. format(returnvar, returnsize, "%s0%d", returnvar, _month);
  7698. else
  7699. format(returnvar, returnsize, "%s%d", returnvar, _month);
  7700. }
  7701. else if(form[count] == 'y')
  7702. {
  7703. format(returnvar, returnsize, "%s%d", returnvar, _year);
  7704. }
  7705. else if(form[count] == 'Y')
  7706. {
  7707. if(_year < 10)
  7708. format(returnvar, returnsize, "%s0%d", returnvar, _year);
  7709. else
  7710. format(returnvar, returnsize, "%s%d", returnvar, _year);
  7711. }
  7712. else
  7713. format(returnvar, returnsize, "%s%s", returnvar, form[count]);
  7714. count++;
  7715. }
  7716. return true;
  7717. }
  7718.  
  7719.  
  7720. /*SL_Bedürnis System*/
  7721.  
  7722.  
  7723.  
  7724.  
  7725. SL_CALL StartHunger(playerid)
  7726. {
  7727. new newtextwarn[10], newgeldanzeige[100], vers[100];
  7728. format(vers, sizeof(vers), "%s",Versionzahl);
  7729. TextDrawSetString(Version[playerid], vers);
  7730. format(newtextwarn, sizeof(newtextwarn), "%d", GetPVarInt(playerid,"warns"));
  7731. TextDrawSetString(VWPunkte[playerid], newtextwarn);
  7732. format(newgeldanzeige, sizeof(newgeldanzeige), "%d", GetPlayerMoney(playerid));
  7733. TextDrawColor(Geldtext[playerid], COLOR_GREEN);
  7734. TextDrawSetString(Geldtext[playerid], newgeldanzeige);
  7735. new Float:health;
  7736. GetPlayerHealth(playerid,health);
  7737. new newtexts[100],newtextl[100];
  7738. format(newtexts, sizeof(newtexts), "%d", SpielerInfo[playerid][pRespekt]);
  7739. TextDrawSetString(Spielpunktezahl[playerid], newtexts);
  7740. format(newtextl, sizeof(newtextl), "%d", GetPlayerScore(playerid));
  7741. TextDrawSetString(Levelzahl[playerid], newtextl);
  7742. if(health >= 90 && health <= 100)
  7743. {
  7744. new newtext[100];
  7745. format(newtext, sizeof(newtext), "%s", _100);
  7746. TextDrawSetString(hunger_i[playerid], newtext);
  7747. TextDrawSetString(durst_i[playerid], newtext);
  7748. TextDrawColor(hunger_i[playerid],COLOR_LIMEGREEN);
  7749. TextDrawColor(durst_i[playerid],COLOR_LIMEGREEN);
  7750. }
  7751. else if(health >= 80 && health <= 90)
  7752. {
  7753. new newtext[100];
  7754. format(newtext, sizeof(newtext), "%s", _uber90);
  7755. TextDrawSetString(hunger_i[playerid], newtext);
  7756. TextDrawSetString(durst_i[playerid], newtext);
  7757. TextDrawColor(hunger_i[playerid],COLOR_LIMEGREEN);
  7758. TextDrawColor(durst_i[playerid],COLOR_LIMEGREEN);
  7759. }
  7760. else if(health >= 70 && health <= 80)
  7761. {
  7762. new newtext[100];
  7763. format(newtext, sizeof(newtext), "%s", _uber80);
  7764. TextDrawSetString(hunger_i[playerid], newtext);
  7765. TextDrawSetString(durst_i[playerid], newtext);
  7766. TextDrawColor(hunger_i[playerid],COLOR_LIMEGREEN);
  7767. TextDrawColor(durst_i[playerid],COLOR_LIMEGREEN);
  7768. }
  7769. else if(health >= 60 && health <= 70)
  7770. {
  7771. new newtext[100];
  7772. format(newtext, sizeof(newtext), "%s", _uber70);
  7773. TextDrawSetString(hunger_i[playerid], newtext);
  7774. TextDrawSetString(durst_i[playerid], newtext);
  7775. TextDrawColor(hunger_i[playerid],COLOR_ORANGE);
  7776. TextDrawColor(durst_i[playerid],COLOR_ORANGE);
  7777. }
  7778. else if(health >= 40 && health <= 50)
  7779. {
  7780. new newtext[100];
  7781. format(newtext, sizeof(newtext), "%s", _uber50);
  7782. TextDrawSetString(hunger_i[playerid], newtext);
  7783. TextDrawSetString(durst_i[playerid], newtext);
  7784. TextDrawColor(hunger_i[playerid],COLOR_ORANGE);
  7785. TextDrawColor(durst_i[playerid],COLOR_ORANGE);
  7786. }
  7787. else if(health >= 30 && health <= 40)
  7788. {
  7789. new newtext[100];
  7790. format(newtext, sizeof(newtext), "%s", _uber40);
  7791. TextDrawSetString(hunger_i[playerid], newtext);
  7792. TextDrawSetString(durst_i[playerid], newtext);
  7793. TextDrawColor(hunger_i[playerid],COLOR_FIREBRICK);
  7794. TextDrawColor(durst_i[playerid],COLOR_FIREBRICK);
  7795. }
  7796. else if(health >= 20 && health <= 30)
  7797. {
  7798. new newtext[100];
  7799. format(newtext, sizeof(newtext), "%s", _uber30);
  7800. TextDrawSetString(hunger_i[playerid], newtext);
  7801. TextDrawSetString(durst_i[playerid], newtext);
  7802. TextDrawColor(hunger_i[playerid],COLOR_FIREBRICK);
  7803. TextDrawColor(durst_i[playerid],COLOR_FIREBRICK);
  7804. }
  7805. else if(health >= 10 && health <= 20)
  7806. {
  7807. new newtext[100];
  7808. format(newtext, sizeof(newtext), "%s", _uber20);
  7809. TextDrawSetString(hunger_i[playerid], newtext);
  7810. TextDrawSetString(durst_i[playerid], newtext);
  7811. TextDrawColor(hunger_i[playerid],COLOR_FIREBRICK);
  7812. TextDrawColor(durst_i[playerid],COLOR_FIREBRICK);
  7813. }
  7814. else if(health >= 5 && health <= 10)
  7815. {
  7816. new newtext[100];
  7817. format(newtext, sizeof(newtext), "%s", _uber10);
  7818. TextDrawSetString(hunger_i[playerid], newtext);
  7819. TextDrawSetString(durst_i[playerid], newtext);
  7820. TextDrawColor(hunger_i[playerid],COLOR_FIREBRICK);
  7821. TextDrawColor(durst_i[playerid],COLOR_FIREBRICK);
  7822. }
  7823. else if(health >= 0 && health <= 4)
  7824. {
  7825. new newtext[100];
  7826. format(newtext, sizeof(newtext), "%s", _u10);
  7827. TextDrawSetString(hunger_i[playerid], newtext);
  7828. TextDrawSetString(durst_i[playerid], newtext);
  7829. TextDrawColor(hunger_i[playerid],COLOR_FIREBRICK);
  7830. TextDrawColor(durst_i[playerid],COLOR_FIREBRICK);
  7831. }
  7832. }
  7833. SL_CALL Whitelist(playerid)
  7834. {
  7835. if (gdebug==1){printf("DEBUG Whitelist Check(%d) (%s)", playerid);}
  7836. new playername2[MAX_PLAYER_NAME];
  7837. GetPlayerName(playerid, playername2, sizeof(playername2));
  7838. new File: file = fopen("Whitelist.cfg", io_read);
  7839. if (file)
  7840. {
  7841. new valtmp[MAX_PLAYER_NAME];
  7842. while (fread(file, valtmp)) {
  7843. StripNewLine(valtmp);
  7844. if (!strcmp(valtmp, playername2, true, strlen(playername2))) {
  7845. fclose(file);
  7846. return 1;
  7847. }
  7848. }
  7849. }
  7850. fclose(file);
  7851. return 0;
  7852. }
  7853. stock IsNumeric(const string[]) //By Mike
  7854. {
  7855. for (new i = 0, j = strlen(string); i < j; i++)
  7856. {
  7857. if (string[i] > '9' || string[i] < '0') return 0;
  7858. }
  7859. return 1;
  7860. }
  7861.  
  7862. stock GetPlayerId(playername[]) //By Alex "Y_Less" Cole (Edited by Sacky)
  7863. {
  7864. new playername2[MAX_PLAYER_NAME];
  7865. for (new i = 0; i < MAX_PLAYERS; i++)
  7866. {
  7867. if (IsPlayerConnected(i))
  7868. {
  7869. GetPlayerName(i,playername2,sizeof(playername2));
  7870. if(strcmp(playername,playername2,true)==0)
  7871. {
  7872. return i;
  7873. }
  7874. }
  7875. }
  7876. return INVALID_PLAYER_ID;
  7877. }
  7878. stock GivePlayerBankCash(playerid, amount)
  7879. {
  7880. SpielerInfo[playerid][pBank] += amount;
  7881. return 1;
  7882. }
  7883.  
  7884. stock SetPlayerBankCash(playerid, amount)
  7885. {
  7886. SpielerInfo[playerid][pBank] = amount;
  7887. }
  7888.  
  7889. stock GetPlayerBankCash(playerid)
  7890. {
  7891. return SpielerInfo[playerid][pBank];
  7892. }
  7893. stock AdminLog(adminname[], action[])
  7894. {
  7895. new hour, minute, second, year, month, day, Query[200];
  7896. getdate(year, month, day);
  7897. gettime(hour, minute, second);
  7898. format(Query, sizeof(Query), "INSERT INTO `admin log` (`Admin Name`, `Action`, `Date`, `Time`) VALUES('%s', '%s', '%d/%d/%d', '%d:%d:%d')", adminname, action, month, day, year, hour, minute, second);
  7899. mysql_query(Query);
  7900. }
  7901. stock IsteseineCBUGWaffe(playerid)
  7902. {
  7903. new weaponID = GetPlayerWeapon(playerid);
  7904. if(weaponID == 22 || weaponID == 24 || weaponID == 21 || weaponID == 31)
  7905. {
  7906. return 1;
  7907. }
  7908. return 1;
  7909. }
  7910. AntiDeAMX()
  7911. {
  7912. new a[][] =
  7913. {
  7914. "Unarmed (Fist)",
  7915. "Brass K"
  7916. };
  7917. #pragma unused a
  7918. }
  7919. stock bigstrtok(const string[], &idx)
  7920. {
  7921. new length = strlen(string);
  7922. while ((idx < length) && (string[idx] <= ' '))
  7923. {
  7924. idx++;
  7925. }
  7926. new offset = idx;
  7927. new result[128];
  7928. while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  7929. {
  7930. result[idx - offset] = string[idx];
  7931. idx++;
  7932. }
  7933. result[idx - offset] = EOS;
  7934. return result;
  7935. }
  7936. stock IsPlayerBehindVehicle(playerid,veh)
  7937. {
  7938. new Float:vcoord[3]; GetVehiclePos(veh,vcoord[0],vcoord[1],vcoord[2]);
  7939. new Float:size[3]; GetVehicleModelInfo(GetVehicleMode(veh), VEHICLE_MODEL_INFO_SIZE, size[0],size[1],size[2]);
  7940. new Float:vangle; GetVehicleZAngle(veh,vangle);
  7941. vcoord[0] = floatadd(vcoord[0],(-size[0]* floatsin(-vangle,degrees)));
  7942. vcoord[1] = floatadd(vcoord[1],(-size[1]* floatcos(-vangle,degrees)));
  7943. if(IsPlayerInRangeOfPoint(playerid,3.0,vcoord[0],vcoord[1],vcoord[2])) return 1;
  7944. return 0;
  7945. }
  7946. stock AddPlayer(playerid)//Unter OnPlayerConnect: AddPlayer(playerid); hinmachen
  7947. {
  7948. if(ConnectedPlayers>=MAX_PLAYERS)
  7949. return 0;
  7950.  
  7951. ConnectedPlayerList[ConnectedPlayers++]=playerid;
  7952. return 1;
  7953. }
  7954.  
  7955. stock RemovePlayer(playerid)//Unter OnPlayerDisconnect RemovePlayer(playerid); hinmachen
  7956. {
  7957. for(new i=0;i<ConnectedPlayers;i++)
  7958. {
  7959. if(ConnectedPlayerList[i]==playerid)
  7960. {
  7961. ConnectedPlayers--;
  7962. ConnectedPlayerList[i]=ConnectedPlayerList[ConnectedPlayers];
  7963. return 1;
  7964. }
  7965. }
  7966. return 0;
  7967. }
  7968. stock MoveCamera(playerid, Float:dest_x, Float:dest_y, Float:dest_z, Float:lookat_x, Float:lookat_y, Float:lookat_z, Float:speedd) {
  7969. new Float:distance;
  7970.  
  7971. distance = GetDistanceBetweenPoints(gPlayerCameraPos[playerid][coord_x],
  7972. gPlayerCameraPos[playerid][coord_y],
  7973. gPlayerCameraPos[playerid][coord_z],
  7974. dest_x,
  7975. dest_y,
  7976. dest_z);
  7977.  
  7978. gPlayerCamMovement[playerid][steps] = floatround(distance / speedd);
  7979. gPlayerCamMovement[playerid][currentstep] = 0;
  7980.  
  7981. gPlayerCamMovement[playerid][amount_x] = (dest_x - gPlayerCameraPos[playerid][coord_x]) / gPlayerCamMovement[playerid][steps];
  7982. gPlayerCamMovement[playerid][amount_y] = (dest_y - gPlayerCameraPos[playerid][coord_y]) / gPlayerCamMovement[playerid][steps];
  7983. gPlayerCamMovement[playerid][amount_z] = (dest_z - gPlayerCameraPos[playerid][coord_z]) / gPlayerCamMovement[playerid][steps];
  7984. gPlayerCamMovement[playerid][look_x] = lookat_x;
  7985. gPlayerCamMovement[playerid][look_y] = lookat_y;
  7986. gPlayerCamMovement[playerid][look_z] = lookat_z;
  7987.  
  7988. gPlayerCamMovement[playerid][CameraMoveTimerID] = SetTimerEx("CameraMoveTimer", 50, 1, "i", playerid);
  7989. return 1;
  7990. }
  7991.  
  7992. //-------------------------------------------------------------------
  7993.  
  7994. stock SetPlayerCameraPosEx(playerid, Float:cam_x, Float:cam_y, Float:cam_z, Float:lookat_x, Float:lookat_y, Float:lookat_z) {
  7995. SetPlayerCameraPos(playerid, cam_x, cam_y, cam_z);
  7996. SetPlayerCameraLookAt(playerid, lookat_x, lookat_y, lookat_z);
  7997.  
  7998. gPlayerCameraPos[playerid][coord_x] = cam_x;
  7999. gPlayerCameraPos[playerid][coord_y] = cam_y;
  8000. gPlayerCameraPos[playerid][coord_z] = cam_z;
  8001.  
  8002. return 1;
  8003. }
  8004.  
  8005. //-------------------------------------------------------------------
  8006.  
  8007. stock Float:GetDistanceBetweenPoints(Float:x1, Float:y1, Float:z1, Float:x2, Float:y2, Float:z2) {
  8008. return floatsqroot(floatpower(x1 - x2, 2) + floatpower(y1 - y2, 2) + floatpower(z1 - z2, 2));
  8009. }
  8010.  
  8011. //-------------------------------------------------------------------
  8012. forward Timer1(playerid);
  8013. public Timer1(playerid)
  8014. {
  8015. //Uhr
  8016. new string[174],year,month,day,hours,minutes,seconds;
  8017. getdate(year, month, day), gettime(hours, minutes, seconds);
  8018. format(string, sizeof string, "%d/%s%d/%s%d", day, ((month < 10) ? ("0") : ("")), month, (year < 10) ? ("0") : (""), year);
  8019. TextDrawSetString(Datum, string);
  8020. format(string, sizeof string, "%s%d:%s%d:%s%d", (hours < 10) ? ("0") : (""), hours, (minutes < 10) ? ("0") : (""), minutes, (seconds < 10) ? ("0") : (""), seconds);
  8021. TextDrawSetString(Uhrzeit, string);
  8022. }
  8023. public CameraMoveTimer(playerid) {
  8024. if (gPlayerCamMovement[playerid][currentstep] <= gPlayerCamMovement[playerid][steps] - 1) {
  8025. gPlayerCameraPos[playerid][coord_x] = gPlayerCameraPos[playerid][coord_x] + gPlayerCamMovement[playerid][amount_x];
  8026. gPlayerCameraPos[playerid][coord_y] = gPlayerCameraPos[playerid][coord_y] + gPlayerCamMovement[playerid][amount_y];
  8027. gPlayerCameraPos[playerid][coord_z] = gPlayerCameraPos[playerid][coord_z] + gPlayerCamMovement[playerid][amount_z];
  8028.  
  8029. SetPlayerCameraPos(playerid, gPlayerCameraPos[playerid][coord_x], gPlayerCameraPos[playerid][coord_y], gPlayerCameraPos[playerid][coord_z]);
  8030. SetPlayerCameraLookAt(playerid, gPlayerCamMovement[playerid][look_x], gPlayerCamMovement[playerid][look_y], gPlayerCamMovement[playerid][look_z]);
  8031.  
  8032. gPlayerCamMovement[playerid][currentstep]++;
  8033. } else {
  8034. KillTimer(gPlayerCamMovement[playerid][CameraMoveTimerID]);
  8035. }
  8036.  
  8037. return 1;
  8038. }
  8039. forward MyHttpResponse(index, response_code, data[]);
  8040. public MyHttpResponse(index, response_code, data[])
  8041. {
  8042. // In this callback "index" would normally be called "playerid" ( if you didn't get it already :) )
  8043. new
  8044. buffer[ 128 ];
  8045. if(response_code == 200) //Did the request succeed?
  8046. {
  8047. //Yes!
  8048. format(buffer, sizeof(buffer), "Du hast die gta_sa.set runtergeladen (;", data);
  8049. SendClientMessage(index, 0xFFFFFFFF, buffer);
  8050. }
  8051. else
  8052. {
  8053. SendClientMessage(index, COLOR_RED, "Du hast die gta_sa.set nicht lad sie dir im Forum runter!");
  8054. format(buffer, sizeof(buffer), "The request failed! The response code was: %d", response_code);
  8055. SendClientMessage(index, 0xFFFFFFFF, buffer);
  8056. Kick(index);
  8057. }
  8058. }
  8059. stock IsVehACar(vehicleid)
  8060. {
  8061. new result;
  8062. new modell = GetVehicleModel(vehicleid);
  8063. switch(modell)
  8064. {
  8065. case 400,401,402,404,409,410,411,412,413,414,415,416,418,419,420,421,422,423,424,426,427,428,429,434,436,438,439,440,442,445,451,457,458,459,466,467,470,471,474,475,477,478,479,480,482,483,485,486,489,490,491,492,494,495,496,498,499,500,502,503,504: result= model;
  8066. default: result = 0;
  8067. }
  8068. return result;
  8069. }
  8070. stock IsVehACar2(vehicleid)
  8071. {
  8072. new result;
  8073. new modell = GetVehicleModel(vehicleid);
  8074. switch(modell)
  8075. {
  8076. case 505,507,508,516,517,518,525,526,527,528,529,530,531,533,534,535,536,539,540,541,542,543,545,546,547,549,550,551,552,554,555,558,559,560,561,562,565,566,567,568,571,572,573,574,575,576,579,580,582,583,585,587,588,589,596,597,598,599,600,601,602,603,604,605,609: result= model;
  8077. default: result = 0;
  8078. }
  8079. return result;
  8080. }
  8081. /*stock ShowPlayerLSLine1Dialog(playerid)
  8082. {
  8083. ShowPlayerDialog(playerid,DIALOG_LSLINE1,DIALOG_STYLE_MSGBOX,"{FF7700}LSLinie1 Haltestellen","1 LSPD\n2 LS Bank\n3 LS BSN\n4 LS Krankenhaus\n5 LS Television\n6 LS Pay n Spray Beach\n7 LS Beach\n8 LS Airport\n9 LS Pay n Spray / Haircutter\n10 LS PD Tankstelle\n11 LSPD","OK","OK");
  8084. }
  8085.  
  8086. stock ShowPlayerLSLine2Dialog(playerid)
  8087. {
  8088. ShowPlayerDialog(playerid,DIALOG_LSLINE2,DIALOG_STYLE_MSGBOX,"{FF7700}LSLinie2 Haltestellen","1 LS PD Tankstelle\n2 LS Airport\n3 LS East Beach\n4 LS Forum\n5 LS Grove Street / Cluckin Bell\n6 LS Bank\n7 LS Krankenhaus\n8 LS Fahrschule\n9 LSPD\n10 LS PD Tankstelle","OK","OK");
  8089. }
  8090.  
  8091. stock ShowPlayerLSLine3Dialog(playerid)
  8092. {
  8093. ShowPlayerDialog(playerid,DIALOG_LSLINE3,DIALOG_STYLE_MSGBOX,"{FF7700}LSLinie3 Haltestellen","1 LS Spawn\n2 LS Krankenhaus\n3 LS Television\n4 LS - Mount Chilliad Petrol Station\n5 Mount Chilliad 69 - LS\n6 LS Village\n7 LS BSN\n8 LS Bank\n9 LS Krankenhaus\n10 LS Spawn","OK","OK");
  8094. }
  8095.  
  8096. stock ShowPlayerLSLine4Dialog(playerid)
  8097. {
  8098. ShowPlayerDialog(playerid,DIALOG_LSLINE4,DIALOG_STYLE_MSGBOX,"{FF7700}LSLinie4 Haltestellen","1 LS Spawn\n2 LSPD Tankstelle\n3 LS TheWellStackedPizza\n4 LS Bank\n5 LS Spawn","OK","OK");
  8099. }
  8100.  
  8101. stock ShowPlayerLVLine5Dialog(playerid)
  8102. {
  8103. ShowPlayerDialog(playerid,DIALOG_LVLINE5,DIALOG_STYLE_MSGBOX,"{FF7700}LVLinie5 Haltestellen","1 LV Busstation\n2 LV VIP I\n3 LV VIP II\n4 LV International Airport\n5 LV Hotel - A\n6 LV Casino - B\n7 LV - PD\n8 LV Emerald Isle\n9 LV Spawn\n10 LV Ship\n11 LV Busstation","OK","OK");
  8104. }
  8105.  
  8106. stock ShowPlayerLVLine6Dialog(playerid)
  8107. {
  8108. ShowPlayerDialog(playerid,DIALOG_LVLINE6,DIALOG_STYLE_MSGBOX,"{FF7700}LVLinie6 Haltestellen","1 LV Busstation\n2 LV International Airport\n3 LV Casino - B\n4 LS Bank\n5 LS Krankenhaus\n6 LS PD Tankstelle\n7 LS International Airport\n8 LS Spawn\n9 LS Spawn II\n10 LS Bank\n11 LV Spawn\n12 LV Ship\n13 LV Hotel - A\n14 LV Four Dragons\n15 LV Hafen\n16 LV Busstation Tankstelle\n17 LV Busstation","OK","OK");
  8109. }
  8110.  
  8111. stock ShowPlayerLVLine7Dialog(playerid)
  8112. {
  8113. ShowPlayerDialog(playerid,DIALOG_LVLINE7,DIALOG_STYLE_MSGBOX,"{FF7700}LVLinie7 Haltestellen","1 LV Casino - B\n2 LV Spawn\n3 LV International Airport\n4 LV Busstation\n5 LV VIP I\n6 LV VIP II\n7 LV Casino - B","OK","OK");
  8114. }
  8115.  
  8116. stock ShowPlayerLVLine8Dialog(playerid)
  8117. {
  8118. ShowPlayerDialog(playerid,DIALOG_LVLINE8,DIALOG_STYLE_MSGBOX,"{FF7700}LVLinie8 Haltestellen","1 LV International Airport\n2 SF International Airport\n3 LS International Airport\n4 LS Bank\n5 LV International Airport","OK","OK");
  8119. }*/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement