SHARE
TWEET

Untitled

a guest Jun 15th, 2017 89 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // Terrastunt by TerraNova
  2.  
  3. #include <a_samp>
  4. #include <md5>
  5. #include <bfx_objects>
  6. #include <JunkBuster>
  7. //**COLORS*//
  8. #define DRIFT_MINKAT 10.0
  9. #define DRIFT_MAXKAT 90.0
  10. #define DRIFT_SPEED 30.0
  11. #define COLOR_Label 0xFFFFFFFF
  12. #define COLOR_LabelOut 0x00000040
  13. #define COLOR_ValueOut 0xFFFFFF40
  14. #define COLOR_Value 0x000000FF
  15. #define Label_X 500
  16. #define Value_X 500
  17. #define TD_Y 100
  18. #define RATIO 1.002
  19. #define COLOR_LIGHTBLUE 0x33CCFFAA
  20. #define COLOR_WHITE 0xFFFFFFAA
  21. #define COLOR_YELLOW 0xFFFF00AA
  22. #define LIGHT_BLUE 0x33CCFFAA
  23. #define GELTONA 0xFFFF00FF
  24. #define BALTA 0xFFFFFFFF
  25. #define COLOR_GREY 0xAFAFAFAA
  26. #define COLOR_ORANGE 0xFF9900AA
  27. #define ADMIN_RED   0xFB0000FF
  28. #define YELLOW      0xFFFF00FF
  29. #define ORANGE      0xF97804FF
  30. #define LIGHTRED    0xFF8080FF
  31. #define LIGHTBLUE   0x00C2ECFF
  32. #define PURPLE      0xB360FDFF
  33. #define BLUE        0x1229FAFF
  34. #define LIGHTGREEN  0x38FF06FF
  35. #define DARKPINK    0xE100E1FF
  36. #define DARKGREEN   0x008040FF
  37. #define AQUAGREEN   0x00CACAFB
  38. #define NICESKY     0x99FFFFAA
  39. #define GREY        0xCECECEFF
  40. #define WHITE       0xFFFFFFFF
  41. #define CreateObject b_CreateObject
  42. #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
  43. //**MISC**//
  44. //#define LOGIN_BEFORE_SPAWN      // If uncommented, players will have to login before spawning if their account exists. If commented, they can spawn without logging in.
  45. //#define ENABLE_AUTO_LOGIN       // LEAVE IT COMMENTED(BUGGED) -- Allows you to auto-login when you connect if you had the same IP as previous login.
  46.  
  47. #pragma tabsize 0
  48. //**VARIABLES**//
  49. enum Info
  50. {
  51.     AdminLevel,
  52.     Password[128],
  53.     Cash,
  54.     Warns,
  55.     Jail,
  56.     Logged,
  57.     Mute,
  58.     WarnReason1[128],
  59.     WarnReason2[128],
  60.     WarnReason3[128],
  61.     IP[20],
  62.     Level,
  63. };
  64. new ViewCommands[2][128] = // 2 = amount of commands to view
  65. {
  66.     {"/admins"},
  67.     {"/count"}
  68. };
  69. new VehNames[212][] = { // Vehicle Names - Betamaster
  70.     {"Landstalker"},
  71.     {"Bravura"},
  72.     {"Buffalo"},
  73.     {"Linerunner"},
  74.     {"Perrenial"},
  75.     {"Sentinel"},
  76.     {"Dumper"},
  77.     {"Firetruck"},
  78.     {"Trashmaster"},
  79.     {"Stretch"},
  80.     {"Manana"},
  81.     {"Infernus"},
  82.     {"Voodoo"},
  83.     {"Pony"},
  84.     {"Mule"},
  85.     {"Cheetah"},
  86.     {"Ambulance"},
  87.     {"Leviathan"},
  88.     {"Moonbeam"},
  89.     {"Esperanto"},
  90.     {"Taxi"},
  91.     {"Washington"},
  92.     {"Bobcat"},
  93.     {"Mr Whoopee"},
  94.     {"BF Injection"},
  95.     {"Hunter"},
  96.     {"Premier"},
  97.     {"Enforcer"},
  98.     {"Securicar"},
  99.     {"Banshee"},
  100.     {"Predator"},
  101.     {"Bus"},
  102.     {"Rhino"},
  103.     {"Barracks"},
  104.     {"Hotknife"},
  105.     {"Trailer 1"}, //artict1
  106.     {"Previon"},
  107.     {"Coach"},
  108.     {"Cabbie"},
  109.     {"Stallion"},
  110.     {"Rumpo"},
  111.     {"RC Bandit"},
  112.     {"Romero"},
  113.     {"Packer"},
  114.     {"Monster"},
  115.     {"Admiral"},
  116.     {"Squalo"},
  117.     {"Seasparrow"},
  118.     {"Pizzaboy"},
  119.     {"Tram"},
  120.     {"Trailer 2"}, //artict2
  121.     {"Turismo"},
  122.     {"Speeder"},
  123.     {"Reefer"},
  124.     {"Tropic"},
  125.     {"Flatbed"},
  126.     {"Yankee"},
  127.     {"Caddy"},
  128.     {"Solair"},
  129.     {"Berkley's RC Van"},
  130.     {"Skimmer"},
  131.     {"PCJ-600"},
  132.     {"Faggio"},
  133.     {"Freeway"},
  134.     {"RC Baron"},
  135.     {"RC Raider"},
  136.     {"Glendale"},
  137.     {"Oceanic"},
  138.     {"Sanchez"},
  139.     {"Sparrow"},
  140.     {"Patriot"},
  141.     {"Quad"},
  142.     {"Coastguard"},
  143.     {"Dinghy"},
  144.     {"Hermes"},
  145.     {"Sabre"},
  146.     {"Rustler"},
  147.     {"ZR-350"},
  148.     {"Walton"},
  149.     {"Regina"},
  150.     {"Comet"},
  151.     {"BMX"},
  152.     {"Burrito"},
  153.     {"Camper"},
  154.     {"Marquis"},
  155.     {"Baggage"},
  156.     {"Dozer"},
  157.     {"Maverick"},
  158.     {"News Chopper"},
  159.     {"Rancher"},
  160.     {"FBI Rancher"},
  161.     {"Virgo"},
  162.     {"GREENwood"},
  163.     {"Jetmax"},
  164.     {"Hotring"},
  165.     {"Sandking"},
  166.     {"Blista Compact"},
  167.     {"Police Maverick"},
  168.     {"Boxville"},
  169.     {"Benson"},
  170.     {"Mesa"},
  171.     {"RC Goblin"},
  172.     {"Hotring Racer A"}, //hotrina
  173.     {"Hotring Racer B"}, //hotrinb
  174.     {"Bloodring Banger"},
  175.     {"Rancher"},
  176.     {"Super GT"},
  177.     {"Elegant"},
  178.     {"Journey"},
  179.     {"Bike"},
  180.     {"Mountain Bike"},
  181.     {"Beagle"},
  182.     {"Cropdust"},
  183.     {"Stunt"},
  184.     {"Tanker"}, //petro
  185.     {"Roadtrain"},
  186.     {"Nebula"},
  187.     {"Majestic"},
  188.     {"Buccaneer"},
  189.     {"Shamal"},
  190.     {"Hydra"},
  191.     {"FCR-900"},
  192.     {"NRG-500"},
  193.     {"HPV1000"},
  194.     {"Cement Truck"},
  195.     {"Tow Truck"},
  196.     {"Fortune"},
  197.     {"Cadrona"},
  198.     {"FBI Truck"},
  199.     {"Willard"},
  200.     {"Forklift"},
  201.     {"Tractor"},
  202.     {"Combine"},
  203.     {"Feltzer"},
  204.     {"Remington"},
  205.     {"Slamvan"},
  206.     {"Blade"},
  207.     {"Freight"},
  208.     {"Streak"},
  209.     {"Vortex"},
  210.     {"Vincent"},
  211.     {"Bullet"},
  212.     {"Clover"},
  213.     {"Sadler"},
  214.     {"Firetruck LA"}, //firela
  215.     {"Hustler"},
  216.     {"Intruder"},
  217.     {"Primo"},
  218.     {"Cargobob"},
  219.     {"Tampa"},
  220.     {"Sunrise"},
  221.     {"Merit"},
  222.     {"Utility"},
  223.     {"Nevada"},
  224.     {"Yosemite"},
  225.     {"Windsor"},
  226.     {"Monster A"}, //monstera
  227.     {"Monster B"}, //monsterb
  228.     {"Uranus"},
  229.     {"Jester"},
  230.     {"Sultan"},
  231.     {"Stratum"},
  232.     {"Elegy"},
  233.     {"Raindance"},
  234.     {"RC Tiger"},
  235.     {"Flash"},
  236.     {"Tahoma"},
  237.     {"Savanna"},
  238.     {"Bandito"},
  239.     {"Freight Flat"}, //freiflat
  240.     {"Streak Carriage"}, //streakc
  241.     {"Kart"},
  242.     {"Mower"},
  243.     {"Duneride"},
  244.     {"Sweeper"},
  245.     {"Broadway"},
  246.     {"Tornado"},
  247.     {"AT-400"},
  248.     {"DFT-30"},
  249.     {"Huntley"},
  250.     {"Stafford"},
  251.     {"BF-400"},
  252.     {"Newsvan"},
  253.     {"Tug"},
  254.     {"Trailer 3"}, //petrotr
  255.     {"Emperor"},
  256.     {"Wayfarer"},
  257.     {"Euros"},
  258.     {"Hotdog"},
  259.     {"Club"},
  260.     {"Freight Carriage"}, //freibox
  261.     {"Trailer 3"}, //artict3
  262.     {"Andromada"},
  263.     {"Dodo"},
  264.     {"RC Cam"},
  265.     {"Launch"},
  266.     {"Police Car (LSPD)"},
  267.     {"Police Car (SFPD)"},
  268.     {"Police Car (LVPD)"},
  269.     {"Police Ranger"},
  270.     {"Picador"},
  271.     {"S.W.A.T. Van"},
  272.     {"Alpha"},
  273.     {"Phoenix"},
  274.     {"Glendale"},
  275.     {"Sadler"},
  276.     {"Luggage Trailer A"}, //bagboxa
  277.     {"Luggage Trailer B"}, //bagboxb
  278.     {"Stair Trailer"}, //tugstair
  279.     {"Boxville"},
  280.     {"Farm Plow"}, //farmtr1
  281.     {"Utility Trailer"} //utiltr1
  282. };
  283.  
  284. new WeapNames[][32] = {
  285.     {"Fäuste"}, // 0
  286.     {"Schlagring"}, // 1
  287.     {"Golfschläger"}, // 2
  288.     {"Night Stick"}, // 3
  289.     {"Messer"}, // 4
  290.     {"Baseball Schläger"}, // 5
  291.     {"Shovel"}, // 6
  292.     {"Pool Cue"}, // 7
  293.     {"Katana"}, // 8
  294.     {"Kettebsäge"}, // 9
  295.     {"Purple Dildo"}, // 10
  296.     {"Big White Vibrator"}, // 11
  297.     {"Medium White Vibrator"}, // 12
  298.     {"Small White Vibrator"}, // 13
  299.     {"Flowers"}, // 14
  300.     {"Cane"}, // 15
  301.     {"Grenade"}, // 16
  302.     {"Teargas"}, // 17
  303.     {"Molotov"}, // 18
  304.     {" "}, // 19
  305.     {" "}, // 20
  306.     {" "}, // 21
  307.     {"Colt 45"}, // 22
  308.     {"Colt 45(Silenced)"}, // 23
  309.     {"Deagle"}, // 24
  310.     {"Normal Shotgun"}, // 25
  311.     {"Sawnoff Shotgun"}, // 26
  312.     {"Combat Shotgun"}, // 27
  313.     {"Micro Uzi(Mac 10)"}, // 28
  314.     {"SMG(MP5)"}, // 29
  315.     {"AK47"}, // 30
  316.     {"M4"}, // 31
  317.     {"Tec9"}, // 32
  318.     {"Country Rifle"}, // 33
  319.     {"Sniper Rifle"}, // 34
  320.     {"Rocket Launcher"}, // 35
  321.     {"Heat-Seeking Rocket Launcher"}, // 36
  322.     {"Flamethrower"}, // 37
  323.     {"Minigun"}, // 38
  324.     {"Satchel Charge"}, // 39
  325.     {"Detonator"}, // 40
  326.     {"Spray Can"}, // 41
  327.     {"Fire Extinguisher"}, // 42
  328.     {"Camera"}, // 43
  329.     {"Night Vision Goggles"}, // 44
  330.     {"Infrared Vision Goggles"}, // 45
  331.     {"Parachute"}, // 46
  332.     {"Fake Pistol"} // 47
  333. };
  334. //Booleans
  335. new bool:TextDrawsShown[MAX_PLAYERS];
  336. new bool:LightRedHealthCreated[MAX_PLAYERS];
  337. new bool:LightYellowSpeedCreated[MAX_PLAYERS];
  338. new bool:VHSCreated[MAX_PLAYERS];
  339. new bool:ExclamationShown[MAX_PLAYERS];
  340. new CheckStatusTimer;
  341. new Text:Black0;
  342. new Text:White1;
  343. new Text:White2;
  344. new Text:BlackHealth;
  345. new Text:DarkRedHealth;
  346. new Text:BlackSpeed;
  347. new Text:DarkYellowSpeed;
  348. new Text:Marker;
  349. new Text:Exclamation;
  350. new burnout[MAX_PLAYERS],timer2;
  351. new Text:VHS[MAX_PLAYERS];
  352. new Text:LightRedHealth[MAX_PLAYERS];
  353. new Text:LightYellowSpeed[MAX_PLAYERS];
  354. new timer;
  355. new SpawnedVehicles[MAX_PLAYERS];
  356. new Tstring[12][2];
  357. new DelTime;
  358. new Text: LuxClock_Center;
  359. new Text: LuxClock[12];
  360. new Text: LText1;
  361. new Text: LText2;
  362. new Text: LText3;
  363. new Text: LText4;
  364. new Text: LText5;
  365. new Text: LText6;
  366. new Text: LText7;
  367. new Text: LHour;
  368. new Text: LInfo;
  369. new Text: LCategory;
  370. new Text: LMonat;
  371. new Text: LDay;
  372. new Text: LMsg;
  373. new DriftTimer[MAX_PLAYERS];
  374. new TimerA,TimerB,TimerC;
  375. new DriftPointsNow[MAX_PLAYERS];
  376. new PlayerDriftCancellation[MAX_PLAYERS];
  377. new Float:ppos[MAX_PLAYERS][3];
  378. enum Float:Pos{ Float:sX,Float:sY,Float:sZ };
  379. new Float:SavedPos[MAX_PLAYERS][Pos];
  380. new bool:DriftMode[MAX_PLAYERS]=false;
  381. new DriftBonus[MAX_PLAYERS]=1;
  382. new Float:HealthInit[MAX_PLAYERS]=1000.0;
  383. new bool:AutoFixBool[MAX_PLAYERS]=true;
  384. new Text:TDLabels[3];
  385. new Text:TDValueDrift[MAX_PLAYERS];
  386. new Text:TDValueBonus[MAX_PLAYERS];
  387. new Text:TDValueCash2[MAX_PLAYERS];
  388.  
  389. new Peds[217][1] = {
  390. {264},
  391. {288},//TEAM_ADMIN
  392. {286},{287},{228},{113},{120},{147},{294},{227},{61},{171},
  393. {247},//CIVILIANS DOWN HERE
  394. {248},{100},{256},{263},{262},{261},{260},{259},{258},{257},{256},{255},
  395. {253},{252},{251},{249},{246},{245},{244},{243},{242},{241},{240},{239},
  396. {238},{237},{236},{235},{234},{233},{232},{231},{230},{229},
  397. {226},{225},{173},{174},{175},{224},{223},{222},{221},{220},{219},{218},
  398. {217},{216},{215},{214},{213},{212},{211},{210},{209},
  399. {207},{206},{205},{204},{203},{202},{201},{200},{199},{198},{197},{196},
  400. {195},{194},{193},{192},{191},{190},{189},{185},{184},{183},
  401. {182},{181},{180},{179},{178},{176},{172},{170},{168},{167},{162},
  402. {161},{160},{159},{158},{157},{156},{155},{154},{153},{152},{151},
  403. {146},{145},{144},{143},{142},{141},{140},{139},{138},{137},{136},{135},
  404. {134},{133},{132},{131},{130},{129},{128},{254},{99},{97},{96},{95},{94},
  405. {92},{90},{89},{88},{87},{85},{84},{83},{82},{81},{80},{79},{78},{77},{76},
  406. {75},{73},{72},{69},{68},{67},{66},{64},{63},{62},{58},{57},{56},{55},
  407. {54},{53},{52},{51},{50},{49},{45},{44},{43},{41},{39},{38},{37},{36},{35},
  408. {34},{33},{32},{31},{30},{29},{28},{27},{26},{25},{24},{23},{22},{21},{20},
  409. {19},{18},{17},{16},{15},{14},{13},{12},{11},{10},{1},{2},
  410. {290},//ROSE
  411. {291},//PAUL
  412. {292},//CESAR
  413. {293},//OGLOC
  414. {187},
  415. {296},//JIZZY
  416. {297},//MADDOGG
  417. {298},//CAT
  418. {299}//ZERO
  419. };
  420.  
  421. new Float:OldX[MAX_PLAYERS];
  422. new Float:OldY[MAX_PLAYERS];
  423. new Float:OldZ[MAX_PLAYERS];
  424. new AccountInfo[MAX_PLAYERS][Info];
  425. new SuperPunch[MAX_PLAYERS];
  426. new ViewCmds[MAX_PLAYERS];
  427. new Count = 999;
  428. new Hide[MAX_PLAYERS];
  429. new Drugs[MAX_PLAYERS];
  430. new bool:PMBlock[MAX_PLAYERS];
  431. new Nuke[MAX_PLAYERS];
  432. new Missile[MAX_PLAYERS];
  433.  
  434. new PlayerDualWatching[MAX_PLAYERS];
  435. new InventationSent[MAX_PLAYERS];
  436. new Inventation[MAX_PLAYERS];
  437. new DualRoom1price;
  438. new DualRoom1;
  439. new DualRoom2price;
  440. new DualRoom2;
  441. new DualRoom3price;
  442. new DualRoom3;
  443. new DualRoom4price;
  444. new DualRoom4;
  445. new WeaponDualRoom1;
  446. new WeaponDualRoom2;
  447. new WeaponDualRoom3;
  448. new WeaponDualRoom4;
  449. new InDual[MAX_PLAYERS];
  450. new Inventationprice[MAX_PLAYERS];
  451.  
  452. new InDM1[MAX_PLAYERS];
  453.  
  454. //**FORWARDS**//
  455. forward SendClientMessageToAdmins(color,string[],alevel);
  456. forward OnPlayerRegister(playerid,password[]);
  457. forward OnPlayerLogin(playerid,password[]);
  458. forward OnPlayerUpdateAccount(playerid);
  459. forward BanLog(string[]);
  460. forward KickLog(string[]);
  461. forward VehicleLog(string[]);
  462. forward CountDown();
  463. forward DollahScoreUpdate();
  464. forward SyncUp();
  465. forward SyncTime();
  466. forward StoppedVehicle();
  467. forward Fillup(playerid);
  468. forward CheckStatus();
  469. forward VehicleOccupied(vehicleid);
  470. forward inventationremove(playerid);
  471. forward CountDown2(playerid, seconds);
  472. forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
  473. forward L_UpdateTime (playerid);
  474. forward L_UpdateClock();
  475. forward Drift();
  476. forward AngleUpdate();
  477. forward DriftExit(playerid);
  478. forward CheckPlayerState();
  479. forward AutoFix();
  480.  
  481. main()
  482. {
  483.  
  484. }
  485. /*x---------------------------------CallBacks-------------------------------------x*/
  486. stock strtok(const string[], &index,seperator=' ')
  487. {
  488.     new length = strlen(string);
  489.     new offset = index;
  490.     new result[128];
  491.     while ((index < length) && (string[index] != seperator) && ((index - offset) < (sizeof(result) - 1)))
  492.     {
  493.         result[index - offset] = string[index];
  494.         index++;
  495.     }
  496.  
  497.     result[index - offset] = EOS;
  498.     if ((index < length) && (string[index] == seperator))
  499.     {
  500.         index++;
  501.     }
  502.     return result;
  503. }
  504. stock IsNumeric(const string[])
  505. {
  506.     for (new i = 0, j = strlen(string); i < j; i++)
  507.     if (string[i] > '9' || string[i] < '0')
  508.     return 0;
  509.     return 1;
  510. }
  511.  
  512. ReturnUser(text[], playerid = INVALID_PLAYER_ID)
  513. {
  514.     new pos = 0;
  515.     while (text[pos] < 0x21)
  516.     {
  517.         if (text[pos] == 0) return INVALID_PLAYER_ID;
  518.         pos++;
  519.     }
  520.     new userid = INVALID_PLAYER_ID;
  521.     if (IsNumeric(text[pos]))
  522.     {
  523.         userid = strval(text[pos]);
  524.         if (userid >=0 && userid < MAX_PLAYERS)
  525.         {
  526.             if(!IsPlayerConnected(userid))
  527.                 userid = INVALID_PLAYER_ID;
  528.             else return userid;
  529.         }
  530.     }
  531.     new len = strlen(text[pos]);
  532.     new count = 0;
  533.     new pname[MAX_PLAYER_NAME];
  534.     for (new i = 0; i < MAX_PLAYERS; i++)
  535.     {
  536.         if (IsPlayerConnected(i))
  537.         {
  538.             GetPlayerName(i, pname, sizeof (pname));
  539.             if (strcmp(pname, text[pos], true, len) == 0)
  540.             {
  541.                 if (len == strlen(pname)) return i;
  542.                 else
  543.                 {
  544.                     count++;
  545.                     userid = i;
  546.                 }
  547.             }
  548.         }
  549.     }
  550.     if (count != 1)
  551.     {
  552.         if (playerid != INVALID_PLAYER_ID)
  553.         {
  554.             if (count) SendClientMessage(playerid, YELLOW, "Gebe den Ganzen Namen ein.");
  555.             else SendClientMessage(playerid, RED, "Spielername nicht gefunden.");
  556.         }
  557.         userid = INVALID_PLAYER_ID;
  558.     }
  559.     return userid;
  560. }
  561. stock GetFileString(string[])
  562. {
  563.     new result[128];
  564.     result[0] = 0;
  565.     if (strfind(string, ":", true) == -1) return result;
  566.     new id = strfind(string, ":", true);
  567.     strmid(result, string, 0, id, 128);
  568.     return result;
  569. }
  570.  
  571. stock GetFileValue(string[])
  572. {
  573.     new val[128];
  574.     val[0] = 0;
  575.     if (strfind(string , ":", true) == -1) return val;
  576.     new id = strfind(string, ":", true);
  577.     strmid(val, string, id+2, strlen(string), 128);
  578.     return val;
  579. }
  580. public VehicleLog(string[])
  581. {
  582.     new entry[128];
  583.     format(entry, sizeof(entry), "%s\r\n",string);
  584.     new File:hFile;
  585.     hFile = fopen("vehiclespawn.log", io_append);
  586.     if (hFile)
  587.     {
  588.         fwrite(hFile, entry);
  589.         fclose(hFile);
  590.     }
  591. }
  592.  
  593. public KickLog(string[])
  594. {
  595.     new entry[128];
  596.     format(entry, sizeof(entry), "%s\r\n",string);
  597.     new File:hFile;
  598.     hFile = fopen("kick.log", io_append);
  599.     if (hFile)
  600.     {
  601.         fwrite(hFile, entry);
  602.         fclose(hFile);
  603.     }
  604. }
  605.  
  606. public BanLog(string[])
  607. {
  608.     new entry[128];
  609.     format(entry, sizeof(entry), "%s\r\n",string);
  610.     new File:hFile;
  611.     hFile = fopen("ban.log", io_append);
  612.     if (hFile)
  613.     {
  614.         fwrite(hFile, entry);
  615.         fclose(hFile);
  616.     }
  617. }
  618. public SendClientMessageToAdmins(color,string[],alevel)
  619. {
  620.     for(new i = 0; i < MAX_PLAYERS; i++)
  621.     {
  622.         if(IsPlayerConnected(i))
  623.         {
  624.             if (AccountInfo[i][AdminLevel] >= alevel)
  625.             {
  626.                 SendClientMessage(i, color, string);
  627.                 printf("%s", string);
  628.             }
  629.         }
  630.     }
  631.     return 1;
  632. }
  633. public OnPlayerRegister(playerid, password[])
  634. {
  635.     if(IsPlayerConnected(playerid))
  636.     {
  637.         new name[MAX_PLAYER_NAME], str[128], ip[15];
  638.         GetPlayerName(playerid, name, sizeof name);
  639.         GetPlayerIp(playerid, ip, sizeof ip);
  640.         format(str, sizeof str, "/sAccounts/%s.seifadmin", name);
  641.         new File:account = fopen(str, io_write);
  642.         if (account)
  643.         {
  644.             strmid(AccountInfo[playerid][Password], password, 0, strlen(password), 255);
  645.             AccountInfo[playerid][Cash] = GetPlayerMoney(playerid);
  646.             new file[128];
  647.             {
  648.                 format(file, sizeof file, "Password: %s\n\r", AccountInfo[playerid][Password]);
  649.                 {   fwrite(account, file); }
  650.                 format(file, sizeof file, "AdminLevel: %d\n\r", 0);
  651.                 {   fwrite(account, file); AccountInfo[playerid][AdminLevel] = 0; }
  652.                 format(file, sizeof file, "Cash: %d\n\r", AccountInfo[playerid][Cash]);
  653.                 {   fwrite(account, file); }
  654.                 format(file, sizeof file, "Warnings: %d\n\r",AccountInfo[playerid][Warns]);
  655.                 {   fwrite(account, file); }
  656.                 format(file, sizeof file, "WarnReason1: %s\n\r",AccountInfo[playerid][WarnReason1]);
  657.                 {   fwrite(account, file); }
  658.                 format(file, sizeof file, "WarnReason2: %s\n\r",AccountInfo[playerid][WarnReason2]);
  659.                 {   fwrite(account, file); }
  660.                 format(file, sizeof file, "WarnReason3: %s\n\r",AccountInfo[playerid][WarnReason3]);
  661.                 {   fwrite(account, file); }
  662.                 format(file, sizeof file, "IPAddress: %s\n\r",ip);
  663.                 {   fwrite(account, file); }
  664.                 format(file, sizeof file, "Level: %s\n\r",AccountInfo[playerid][Level]);
  665.                 {   fwrite(account, file); }
  666.             }
  667.             fclose(account);
  668.             SendClientMessage(playerid, GREEN, "|- Account registriert. Du kannst dich nun einloggen. ( /login [password] ) -|");
  669.         }
  670.     }
  671.     return 1;
  672. }
  673.  
  674. public OnPlayerUpdateAccount(playerid)
  675. {
  676.     if(IsPlayerConnected(playerid))
  677.     {
  678.         if(AccountInfo[playerid][Logged] == 1)
  679.         {
  680.             new name[MAX_PLAYER_NAME], str[128];
  681.             GetPlayerName(playerid, name, sizeof name);
  682.             format(str, sizeof str, "/sAccounts/%s.seifadmin", name);
  683.             new File:account = fopen(str, io_write);
  684.             if (account)
  685.             {
  686.                 AccountInfo[playerid][Cash] = GetPlayerMoney(playerid);
  687.                 new file[128];
  688.                 {
  689.                     format(file, sizeof file, "Password: %s\n\r", AccountInfo[playerid][Password]);
  690.                     {   fwrite(account, file); }
  691.                     format(file, sizeof file, "AdminLevel: %d\n\r",AccountInfo[playerid][AdminLevel]);
  692.                     {   fwrite(account, file); }
  693.                     format(file, sizeof file, "Cash: %d\n\r", AccountInfo[playerid][Cash]);
  694.                     {   fwrite(account, file); }
  695.                     format(file, sizeof file, "Warnings: %d\n\r",AccountInfo[playerid][Warns]);
  696.                     {   fwrite(account, file); }
  697.                     format(file, sizeof file, "WarnReason1: %s\n\r",AccountInfo[playerid][WarnReason1]);
  698.                     {   fwrite(account, file); }
  699.                     format(file, sizeof file, "WarnReason2: %s\n\r",AccountInfo[playerid][WarnReason2]);
  700.                     {   fwrite(account, file); }
  701.                     format(file, sizeof file, "WarnReason3: %s\n\r",AccountInfo[playerid][WarnReason3]);
  702.                     {   fwrite(account, file); }
  703.                     format(file, sizeof file, "IPAddress: %s\n\r",AccountInfo[playerid][IP]);
  704.                     {   fwrite(account, file); }
  705.                     format(file, sizeof file, "Level: %s\n\r",AccountInfo[playerid][Level]);
  706.                     {   fwrite(account, file); }
  707.                 }
  708.                 fclose(account);
  709.             }
  710.         }
  711.     }
  712.     return 1;
  713. }
  714.  
  715. public OnPlayerLogin(playerid, password[])
  716. {
  717.     new name[MAX_PLAYER_NAME], str[128];
  718.     GetPlayerName(playerid, name, sizeof name);
  719.     format(str, sizeof str, "/sAccounts/%s.seifadmin", name);
  720.     new File:account = fopen(str, io_read);
  721.     if (account)
  722.     {
  723.         new pass[256];
  724.         new passres[128], value[128];
  725.         fread(account, pass, sizeof pass);
  726.         passres = GetFileString(pass);
  727.         if (!strcmp("Password", passres))
  728.         {
  729.             value = GetFileValue(pass);
  730.             strmid(AccountInfo[playerid][Password], value, 0, strlen(value)-1, 128);
  731.         }
  732.         if (!strcmp(AccountInfo[playerid][Password], password, true))
  733.         {
  734.             while (fread(account, pass, 256))
  735.             {
  736.                 passres = GetFileString(pass);
  737.                 if (strfind(passres, "AdminLevel") != -1)
  738.                 {
  739.                     value = GetFileValue(pass);
  740.                     AccountInfo[playerid][AdminLevel] = strval(value);
  741.                 }
  742.                 if (strfind(passres, "Cash") != -1)
  743.                 {
  744.                     value = GetFileValue(pass);
  745.                     AccountInfo[playerid][Cash] = strval(value);
  746.                 }
  747.                 if (strfind(passres, "Warnings") != -1)
  748.                 {
  749.                     value = GetFileValue(pass);
  750.                     AccountInfo[playerid][Warns] = strval(value);
  751.                 }
  752.                 if (strfind(passres, "WarnReason1") != -1)
  753.                 {
  754.                     value = GetFileValue(pass);
  755.                     strmid(AccountInfo[playerid][WarnReason1], value, 0, strlen(value)-1, 128);
  756.                 }
  757.                 if (strfind(passres, "WarnReason2") != -1)
  758.                 {
  759.                     value = GetFileValue(pass);
  760.                     strmid(AccountInfo[playerid][WarnReason2], value, 0, strlen(value)-1, 128);
  761.                 }
  762.                 if (strfind(passres, "WarnReason3") != -1)
  763.                 {
  764.                     value = GetFileValue(pass);
  765.                     strmid(AccountInfo[playerid][WarnReason3], value, 0, strlen(value)-1, 128);
  766.                 }
  767.                 if (strfind(passres, "Level") != -1)
  768.                 {
  769.                     value = GetFileValue(pass);
  770.                     strmid(AccountInfo[playerid][Level], value, 0, strlen(value)-1, 128);
  771.                 }
  772.             }
  773.             fclose(account);
  774.             AccountInfo[playerid][Logged] = 1;
  775.         }
  776.         else
  777.         {
  778.             SendClientMessage(playerid, RED, "Falsches Passwort.");
  779.             fclose(account);
  780.             return 1;
  781.         }
  782.         GivePlayerMoney(playerid, AccountInfo[playerid][Cash]);
  783.         format(str, sizeof str, "|- Du bist als %s eingeloggt. -|", name);
  784.         SendClientMessage(playerid, GREEN, str);
  785.         printf("%s has logged in", name);
  786.         if (AccountInfo[playerid][AdminLevel] > 0)
  787.         {
  788.             format(str, sizeof str, "|» Du bist als ein Admin Leve %d eingeloggt. «|", AccountInfo[playerid][AdminLevel]);
  789.             SendClientMessage(playerid, LIGHTGREEN, str);
  790.             ViewCmds[playerid] = 0;
  791.         }
  792.     }
  793.     return 1;
  794. }
  795.  
  796.  
  797. public OnGameModeInit()
  798. {
  799.     LoadTextDraws();
  800.     TimerA=SetTimer("AngleUpdate", 200, true);
  801.     TimerB=SetTimer("AutoFix", 500, true);
  802.     TimerC=SetTimer("CheckPlayerState", 100, true);
  803.     SetGameModeText("Stunt");
  804.     EnableZoneNames(1);
  805.     bStartEngine();
  806.     timer2 = SetTimer("BOtimer2",150,true);
  807.     timer = SetTimer("BOtimer",150,true);
  808.     for(new i = 0; i <= sizeof(Peds)-1; i++)
  809.     {
  810.         AddPlayerClass(Peds[i][0],1551.5664,-1239.6757,277.8824,269.6888,0,0,0,0,0,0);
  811.     }
  812.  
  813. AddStaticVehicle(495,2142.7544,-2593.6438,13.8957,69.8288,25,61); // lsaairport
  814. AddStaticVehicle(495,2141.0032,-2598.4119,13.8994,69.8288,25,61); // lsaairport
  815. AddStaticVehicle(495,2143.7986,-2589.3955,13.9015,69.8288,25,61); // lsaairport
  816. AddStaticVehicle(495,2144.4727,-2585.0291,13.9147,69.8288,25,61); // lsaairport
  817. AddStaticVehicle(411,2144.2839,-2582.9275,13.2656,102.4332,79,102); // lsaairport
  818. AddStaticVehicle(411,2143.8689,-2578.7144,13.2504,102.4332,79,102); // lsaairport
  819. AddStaticVehicle(411,2144.8838,-2574.0913,13.2318,102.4332,79,102); // lsaairport
  820. AddStaticVehicle(411,2145.2639,-2570.8027,13.2191,102.4332,79,102); // lsaairport
  821. AddStaticVehicle(415,2145.0974,-2566.1470,13.2854,94.0034,13,20); // lsaairport
  822. AddStaticVehicle(415,2144.9541,-2564.1030,13.2852,94.0034,13,20); // lsaairport
  823. AddStaticVehicle(415,2145.9243,-2562.1294,13.2764,94.0034,13,20); // lsaairport
  824. AddStaticVehicle(451,2145.3784,-2559.3606,13.1408,91.3213,29,53); // lsaairport
  825. AddStaticVehicle(451,2145.3120,-2556.4619,13.0708,91.3213,29,53); // lsaairport
  826. AddStaticVehicle(451,2145.2334,-2553.0083,12.9873,91.3213,29,53); // lsaairport
  827.  
  828. AddStaticVehicle(411,938.5372,-2598.5793,785.1863,269.6017,7,10); // jump1car
  829. AddStaticVehicle(411,938.5605,-2595.2368,785.1863,269.6017,7,10); // jump1car
  830. AddStaticVehicle(411,938.5812,-2592.2778,785.1863,269.6017,7,10); // jump1car
  831. AddStaticVehicle(411,938.5987,-2589.7568,785.1863,269.6017,7,10); // jump1car
  832. AddStaticVehicle(411,938.6223,-2586.3804,785.1863,269.6017,7,10); // jump1car
  833. AddStaticVehicle(495,938.4722,-2583.4656,785.6698,269.6006,95,115); // jump1car
  834. AddStaticVehicle(495,938.4893,-2581.0071,785.6725,269.6006,95,115); // jump1car
  835. AddStaticVehicle(495,941.7696,-2574.5562,785.8190,180.4162,95,115); // jump1car
  836. AddStaticVehicle(495,945.0861,-2574.5347,785.7235,180.4162,95,115); // jump1car
  837. AddStaticVehicle(415,951.5654,-2574.5161,785.2411,180.4180,125,14); // jump1car
  838. AddStaticVehicle(415,954.4664,-2574.4949,785.2413,180.4180,125,14); // jump1car
  839. AddStaticVehicle(415,957.5585,-2574.4722,785.2415,180.4180,125,14); // jump1car
  840. AddStaticVehicle(415,961.3008,-2574.4448,785.2417,180.4180,125,14); // jump1car
  841. AddStaticVehicle(415,963.7728,-2574.4221,785.7151,180.4180,125,14); // jump1car
  842. AddStaticVehicle(451,948.5028,-2604.8567,785.3026,357.8945,3,80); // jump1car
  843. AddStaticVehicle(451,951.7133,-2604.9749,785.3226,357.8945,3,80); // jump1car
  844. AddStaticVehicle(451,954.5135,-2605.0776,785.3400,357.8945,3,80); // jump1car
  845. AddStaticVehicle(451,957.5828,-2605.1902,785.3591,357.8945,3,80); // jump1car
  846. AddStaticVehicle(451,960.9577,-2605.3140,785.3801,357.8945,3,80); // jump1car
  847.  
  848. AddStaticVehicle(411,1573.5343,-1216.0530,277.6271,180.1809,64,1); // nnopspawncar
  849. AddStaticVehicle(411,1576.3760,-1216.0439,277.6271,180.1809,64,1); // nnopspawncar
  850. AddStaticVehicle(415,1579.3156,-1215.9315,277.6708,180.4433,25,1); // nnopspawncar
  851. AddStaticVehicle(415,1581.9401,-1215.9110,277.6606,180.4433,25,1); // nnopspawncar
  852. AddStaticVehicle(451,1584.8580,-1216.1497,277.6235,177.7382,125,125); // nnopspawncar
  853. AddStaticVehicle(451,1587.4639,-1216.2526,277.6229,177.7382,125,125); // nnopspawncar
  854. AddStaticVehicle(603,1590.6920,-1216.5846,277.7297,173.4030,69,1); // nnopspawncar
  855.  
  856. AddStaticVehicle(411,-314.7111,1516.0812,75.0678,0.0000,1,1); // drift1car
  857. AddStaticVehicle(411,-317.8004,1516.0812,75.0667,0.0000,1,1); // drift1car
  858. AddStaticVehicle(411,-320.9597,1516.0812,75.0656,0.0000,1,1); // drift1car
  859. AddStaticVehicle(415,-324.1865,1515.0656,75.1312,0.4903,118,65); // drift1car
  860. AddStaticVehicle(415,-327.1357,1515.0404,75.1313,0.4903,118,65); // drift1car
  861. AddStaticVehicle(415,-330.0593,1515.0154,75.1313,0.4903,118,65); // drift1car
  862. AddStaticVehicle(451,-333.5477,1515.6310,75.0663,359.4274,51,67); // drift1car
  863. AddStaticVehicle(451,-336.7237,1515.6628,75.0662,359.4274,51,67); // drift1car
  864. AddStaticVehicle(451,-339.7912,1515.4736,75.0680,359.4274,51,67); // drift1car
  865. AddStaticVehicle(503,-339.6707,1515.5872,75.2583,359.5967,81,30); // drift1car
  866. AddStaticVehicle(503,-342.8233,1515.6095,75.2618,359.5967,81,30); // drift1car
  867. AddStaticVehicle(503,-345.9712,1515.6316,75.2653,359.5967,81,30); // drift1car
  868. AddStaticVehicle(603,-264.8180,1543.1873,75.1974,137.0105,109,63); // drift1car
  869. AddStaticVehicle(603,-267.4561,1545.6467,75.1969,137.0105,109,63); // drift1car
  870. AddStaticVehicle(603,-269.7946,1547.8265,75.1965,137.0105,109,63); // drift1car
  871. AddStaticVehicle(522,-272.0240,1550.5203,74.9452,137.6523,14,25); // drift1car
  872. AddStaticVehicle(522,-274.6394,1552.9066,74.9087,137.6523,14,25); // drift1car
  873. AddStaticVehicle(522,-276.9312,1554.9978,74.8767,137.6523,14,25); // drift1car
  874.  
  875. AddStaticVehicle(495,1745.7902,-2004.9438,2722.0066,90.9729,1,1); // /j2 car
  876. AddStaticVehicle(495,1745.8423,-2008.0132,2722.0103,90.9729,1,1); // /j2 car
  877. AddStaticVehicle(495,1745.8917,-2010.9369,2722.0142,90.9729,1,1); // /j2 car
  878. AddStaticVehicle(495,1745.7394,-2001.9620,2722.0024,90.9729,1,1); // /j2 car
  879. AddStaticVehicle(495,1745.6814,-1998.5541,2721.9978,90.9729,1,1); // /j2 car
  880. AddStaticVehicle(495,1745.6222,-1995.0750,2721.9932,90.9729,1,1); // /j2 car
  881. AddStaticVehicle(411,1745.6776,-2011.0018,2721.3818,90.3808,28,43); // /j2 car
  882. AddStaticVehicle(411,1745.7018,-2014.6326,2721.3879,90.3808,28,43); // /j2 car
  883. AddStaticVehicle(411,1745.7185,-2017.1447,2721.3923,90.3808,28,43); // /j2 car
  884. AddStaticVehicle(411,1745.7411,-2020.5558,2721.3979,90.3808,28,43); // /j2 car
  885. AddStaticVehicle(411,1745.7638,-2023.9641,2721.4038,90.3808,28,43); // /j2 car
  886. AddStaticVehicle(411,1745.7865,-2027.3958,2721.4097,90.3808,28,43); // /j2 car
  887. AddStaticVehicle(503,1739.0063,-2036.1112,2721.5464,359.0114,30,125); // /j2 car
  888. AddStaticVehicle(503,1736.0236,-2036.0597,2721.5388,359.0114,30,125); // /j2 car
  889. AddStaticVehicle(503,1733.0846,-2036.0090,2721.5317,359.0114,30,125); // /j2 car
  890. AddStaticVehicle(503,1730.2367,-2035.9598,2721.5249,359.0114,30,125); // /j2 car
  891. AddStaticVehicle(503,1727.1077,-2035.9056,2721.5173,359.0114,30,125); // /j2 car
  892. AddStaticVehicle(503,1724.0466,-2035.8528,2721.5100,359.0114,30,125); // /j2 car
  893. AddStaticVehicle(503,1721.4406,-2035.8079,2721.5037,359.0114,30,125); // /j2 car
  894. AddStaticVehicle(451,1715.8564,-2030.3954,2721.3452,266.2034,71,71); // /j2 car
  895. AddStaticVehicle(451,1716.0800,-2027.0283,2721.3452,266.2034,71,71); // /j2 car
  896. AddStaticVehicle(451,1716.3059,-2023.6244,2721.3452,266.2034,71,71); // /j2 car
  897. AddStaticVehicle(451,1716.2664,-2020.8989,2721.3452,266.2034,71,71); // /j2 car
  898. AddStaticVehicle(451,1716.4843,-2017.6155,2721.3452,266.2034,71,71); // /j2 car
  899. AddStaticVehicle(451,1715.6144,-2014.4208,2721.3452,266.2034,71,71); // /j2 car
  900. AddStaticVehicle(451,1715.7924,-2011.7351,2721.3452,266.2034,71,71); // /j2 car
  901. AddStaticVehicle(415,1715.5421,-2004.9674,2721.3425,266.2034,72,113); // /j2 car
  902. AddStaticVehicle(415,1715.7478,-2001.8678,2721.3425,266.2034,72,113); // /j2 car
  903. AddStaticVehicle(415,1715.9524,-1998.7853,2721.3425,266.2034,72,113); // /j2 car
  904. AddStaticVehicle(415,1716.1761,-1995.4131,2721.3425,266.2034,72,113); // /j2 car
  905. AddStaticVehicle(415,1716.4055,-1991.9586,2721.3425,266.2034,72,113); // /j2 car
  906. //objecte
  907.  
  908. //stuntstreet
  909. CreateObject(8040, 1883.873779, -1256.226440, 680.512817, 0.000000, 0.000000, 0.000000); //
  910. CreateObject(17310, 1928.336304, -1255.065308, 678.576416, -180.482049241, 0.000000, 89.999981276); //
  911. CreateObject(17310, 1939.829834, -1254.987549, 678.628052, -180.482049241, 0.000000, 89.999981276); //
  912. CreateObject(17310, 1951.664063, -1255.040039, 678.696777, -180.482049241, 0.000000, 89.999981276); //
  913. CreateObject(17310, 1963.027588, -1241.228638, 681.910767, -180.482049241, 25.7831007809, 89.999981276); //
  914. CreateObject(17310, 1971.911743, -1233.434448, 687.269836, -180.482049241, 42.9718346348, 89.999981276); //
  915. CreateObject(17310, 1982.672119, -1227.340210, 695.693237, -182.200979922, 61.8793845783, 87.4216711979); //
  916. CreateObject(17310, 1994.489380, -1227.800659, 696.215210, -182.200979922, 61.8793845783, 87.4216711979); //
  917. CreateObject(17310, 2004.144531, -1230.242554, 696.755920, -182.200979922, 61.8793845783, 65.0763171878); //
  918. CreateObject(17310, 2013.093506, -1235.797729, 697.254456, -182.200979922, 61.8793845783, 48.7470773224); //
  919. CreateObject(17310, 2018.324463, -1243.295532, 27.159401, -182.200979922, 61.8793845783, 16.0884829999); //
  920. CreateObject(17310, 2018.691040, -1243.951904, 697.754211, -182.200979922, 61.8793845783, 23.8234132342); //
  921. CreateObject(17310, 2020.926636, -1254.004028, 698.268433, -182.200979922, 61.8793845783, 3.19693260949); //
  922. CreateObject(17310, 2018.717529, -1263.295776, 698.759460, -182.200979922, 61.8793845783, -26.0239149422); //
  923. CreateObject(17310, 2012.776367, -1271.544312, 699.244507, -182.200979922, 61.8793845783, -43.2125915003); //
  924. CreateObject(17310, 2002.796509, -1278.314819, 695.488953, -182.200979922, 52.4255809587, -43.2125915003); //
  925. CreateObject(17310, 1992.505615, -1284.801392, 692.602112, -182.200979922, 43.8312713275, -43.2125915003); //
  926. CreateObject(17310, 1978.033081, -1286.116455, 686.633057, -182.200979922, 22.3453540101, -43.2125915003); //
  927. CreateObject(17310, 1964.935059, -1289.304443, 57.501297, -182.200979922, 6.87549354157, -43.2125915003); //
  928. CreateObject(17310, 1964.950928, -1289.428345, 685.028076, -182.200979922, 8.59436692696, -43.2125915003); //
  929. CreateObject(17310, 1956.909912, -1298.123169, 685.590637, -183.060416615, 8.59436692696, -43.2125915003); //
  930. CreateObject(17310, 1941.628174, -1297.252686, 686.569275, -183.060416615, -12.8915503904, -43.2125915003); //
  931. CreateObject(17310, 1926.249512, -1298.000610, 691.827881, -183.060416615, -34.3774677078, -43.2125915003); //
  932. CreateObject(17310, 1914.223999, -1300.588989, 698.802734, -183.060416615, -51.566144266, -43.2125915003); //
  933. CreateObject(17310, 1908.672485, -1308.927979, 699.271790, -183.060416615, -51.566144266, -26.8833516349); //
  934. CreateObject(17310, 1906.085449, -1317.962036, 699.723267, -183.060416615, -51.566144266, -8.83518108826); //
  935. CreateObject(17310, 1906.509766, -1327.111206, 700.309265, -183.060416615, -51.566144266, 18.666793078); //
  936. CreateObject(17310, 1910.906006, -1333.868164, 700.763184, -183.060416615, -51.566144266, 41.0121470881); //
  937. CreateObject(17310, 1917.883423, -1338.902466, 701.282532, -183.060416615, -51.566144266, 63.3574438024); //
  938. CreateObject(17310, 1931.840820, -1336.782715, 694.619507, -183.060416615, -31.7991576298, 63.3574438024); //
  939. CreateObject(17310, 1944.649536, -1333.627808, 691.476013, -183.060416615, -14.6104237758, 63.3574438024); //
  940. CreateObject(17310, 1958.028687, -1331.434692, 690.772949, -180.482049241, 0.000000, 63.3574438024); //
  941. CreateObject(17310, 1967.708496, -1336.268311, 692.222168, -195.092587608, -0.859436692696, 63.3574438024); //
  942. CreateObject(17310, 1977.561523, -1341.226685, 696.023621, -203.687011831, -0.859436692696, 63.3574438024); //
  943. CreateObject(17310, 1985.637695, -1345.100220, 701.887451, -220.875860277, -0.859436692696, 63.3574438024); //
  944. CreateObject(17310, 1992.708008, -1348.496582, 709.869202, -230.329721192, -0.859436692696, 63.3574438024); //
  945. CreateObject(17310, 1997.459839, -1350.807739, 716.207703, -230.329721192, -0.859436692696, 63.3574438024); //
  946. CreateObject(17310, 2002.557861, -1353.253540, 722.970093, -230.329721192, -0.859436692696, 63.3574438024); //
  947. CreateObject(17310, 2008.239868, -1356.017212, 730.560364, -230.329721192, -0.859436692696, 63.3574438024); //
  948. CreateObject(17310, 2016.850464, -1360.250732, 734.655151, -186.498163386, 0.000000, 63.3574438024); //
  949. CreateObject(17310, 2027.243164, -1365.355591, 735.955627, -186.498163386, 0.000000, 63.3574438024); //
  950. CreateObject(17310, 2054.353760, -1361.622925, 742.549744, -186.498163386, 29.2208475517, 63.3574438024); //
  951. CreateObject(17310, 2037.774658, -1370.556519, 737.292236, -186.498163386, 0.000000, 63.3574438024); //
  952. CreateObject(17310, 2065.837158, -1360.377563, 748.199463, -186.498163386, 42.9718346348, 63.3574438024); //
  953. CreateObject(17310, 2077.134033, -1360.672485, 754.964905, -186.498163386, 55.8633277295, 63.3574438024); //
  954. CreateObject(17310, 2085.709473, -1366.639771, 756.119141, -186.498163386, 55.8633277295, 47.8875833339); //
  955. CreateObject(17310, 2090.455322, -1373.699097, 756.928589, -186.498163386, 55.8633277295, 27.261160005); //
  956. CreateObject(17310, 2091.539307, -1379.792358, 757.762817, -186.498163386, 55.8633277295, 4.76116468598); //
  957. CreateObject(17310, 2089.883789, -1389.425781, 758.581665, -186.498163386, 55.8633277295, -17.738830633); //
  958. CreateObject(17310, 2086.469727, -1395.321289, 758.832031, -186.498163386, 55.8633277295, -40.238825952); //
  959. CreateObject(17310, 2079.238770, -1401.005249, 759.920654, -186.498163386, 55.8633277295, -57.427559806); //
  960. CreateObject(17310, 2070.989990, -1404.193481, 760.839722, -186.498163386, 55.8633277295, -74.6162936599); //
  961. CreateObject(17310, 2063.188721, -1405.409302, 761.676636, -186.498163386, 55.8633277295, -87.5078440503); //
  962. CreateObject(17310, 2053.530273, -1404.960938, 762.962341, -186.498163386, 55.8633277295, -104.696520608); //
  963. CreateObject(17310, 2044.987793, -1401.425049, 764.160339, -186.498163386, 56.7227644222, -116.728634306); //
  964. CreateObject(17310, 2038.000732, -1396.605225, 765.366638, -186.498163386, 57.5822011149, -130.479735981); //
  965. CreateObject(17310, 2030.900024, -1390.570313, 766.457947, -186.498163386, 57.5822011149, -130.479735981); //
  966. CreateObject(17310, 2023.800537, -1384.586670, 767.567749, -186.498163386, 57.5822011149, -130.479735981); //
  967. CreateObject(17310, 2016.426758, -1378.337891, 768.726440, -186.498163386, 57.5822011149, -130.479735981); //
  968. CreateObject(17310, 2008.905518, -1371.929199, 769.875610, -186.498163386, 57.5822011149, -130.479735981); //
  969. CreateObject(17310, 2004.731567, -1359.781616, 763.683411, -186.498163386, 39.534087864, -130.479735981); //
  970. CreateObject(17310, 2005.764404, -1344.801514, 758.499146, -186.498163386, 14.6104237758, -130.479735981); //
  971. CreateObject(17310, 2002.401855, -1332.766235, 758.693054, -186.498163386, 1.71887338539, -130.479735981); //
  972. CreateObject(17310, 2000.674194, -1317.530762, 761.367371, -186.498163386, -17.1887338539, -132.198609366); //
  973. CreateObject(17310, 2000.068970, -1304.258545, 767.096680, -186.498163386, -36.0963410932, -133.917482752); //
  974. CreateObject(17310, 1996.394287, -1294.825928, 771.851440, -186.498163386, -46.4095241098, -133.917482752); //
  975. CreateObject(17310, 1992.602417, -1284.664795, 779.377869, -186.498163386, -61.0199478857, -133.917482752); //
  976. CreateObject(17310, 1986.075073, -1280.973022, 780.359253, -186.498163386, -61.0199478857, -110.712577457); //
  977. CreateObject(17310, 1978.410645, -1280.271851, 781.363586, -186.498163386, -61.0199478857, -88.2125821383); //
  978. CreateObject(17310, 1967.277710, -1283.866943, 777.832336, -186.498163386, -50.7067075733, -88.2125821383); //
  979. CreateObject(17310, 1955.754761, -1289.557129, 773.990356, -186.498163386, -36.9557777859, -88.2125821383); //
  980. CreateObject(17310, 1945.614380, -1301.118408, 769.679993, -186.498163386, -14.6104237758, -88.2125821383); //
  981. CreateObject(17310, 1934.038330, -1301.379272, 769.139343, -170.168751633, -13.7509870831, -93.3692022945); //
  982. CreateObject(17310, 1923.287842, -1300.797974, 766.338379, -163.293200795, -13.7509870831, -94.2286389872); //
  983. CreateObject(17310, 1883.556274, -1301.556030, 689.954224, -180.482049241, 0.000000, 89.999981276); //
  984. CreateObject(17310, 1871.790771, -1301.649658, 689.860657, -180.482049241, 0.000000, 89.999981276); //
  985. CreateObject(17310, 1860.519775, -1301.737305, 689.758301, -180.482049241, 0.000000, 89.999981276); //
  986. CreateObject(17310, 1849.587769, -1301.802246, 689.662109, -180.482049241, 0.000000, 89.999981276); //
  987. CreateObject(17310, 1837.892578, -1301.880249, 689.582703, -180.482049241, 0.000000, 89.999981276); //
  988. CreateObject(17310, 1826.293335, -1301.954590, 689.512878, -180.482049241, 0.000000, 89.999981276); //
  989. CreateObject(17310, 1814.823975, -1302.024780, 689.410095, -180.482049241, 0.000000, 89.999981276); //
  990. CreateObject(17310, 1803.853760, -1316.308716, 692.700500, -180.482049241, -26.6425374736, 89.999981276); //
  991. CreateObject(17310, 1792.343384, -1323.815063, 697.798523, -180.482049241, -42.9718346348, 89.999981276); //
  992. CreateObject(17310, 1781.457764, -1328.250610, 702.528931, -183.060359319, -55.0038910368, 89.999981276); //
  993. CreateObject(17310, 1776.854492, -1324.799683, 34.055984, -183.060359319, -55.0038910368, 77.9678675783); //
  994. CreateObject(17310, 1772.876831, -1327.015747, 701.973938, -183.060359319, -55.0038910368, 67.499985957); //
  995. CreateObject(17310, 1764.333252, -1322.591187, 701.509521, -183.060359319, -55.0038910368, 51.1706887958); //
  996. CreateObject(17310, 1757.913696, -1316.611084, 701.061829, -183.060359319, -55.0038910368, 40.8574484834); //
  997. CreateObject(17310, 1752.722046, -1309.125488, 700.531006, -183.060359319, -55.0038910368, 25.3876453107); //
  998. CreateObject(17310, 1749.695557, -1300.308105, 699.958862, -183.060359319, -55.0038910368, 10.7772215349); //
  999. CreateObject(17310, 1749.300415, -1291.377808, 699.527527, -183.060359319, -55.0038910368, -8.13038570447); //
  1000. CreateObject(17310, 1750.935181, -1282.097046, 699.182434, -183.060359319, -55.0038910368, -13.2870058606); //
  1001. CreateObject(17310, 1753.606567, -1272.643921, 698.697144, -183.060359319, -55.0038910368, -18.4436260168); //
  1002. CreateObject(17310, 1757.488403, -1262.700806, 698.099792, -183.060359319, -55.0038910368, -26.1785562511); //
  1003. CreateObject(17310, 1762.432617, -1253.387085, 697.565552, -183.060359319, -55.0038910368, -30.4757397146); //
  1004. CreateObject(17310, 1767.633545, -1245.305298, 697.128296, -183.060359319, -55.0038910368, -37.3512332561); //
  1005. CreateObject(17310, 1773.681030, -1238.093262, 696.577026, -183.060359319, -55.0038910368, -43.367290105); //
  1006. CreateObject(17310, 1780.823975, -1231.440063, 695.719238, -183.060359319, -55.0038910368, -51.961657032); //
  1007. CreateObject(17310, 1789.469360, -1225.440674, 695.835449, -183.060359319, -55.0038910368, -63.9937134339); //
  1008. CreateObject(17310, 1798.698486, -1221.050293, 695.417419, -183.060359319, -55.0038910368, -65.7125868193); //
  1009. CreateObject(17310, 1806.127319, -1217.682861, 695.020691, -183.060359319, -55.0038910368, -65.7125868193); //
  1010. CreateObject(17310, 1816.066040, -1213.459351, 694.496033, -183.060359319, -55.0038910368, -69.1503335901); //
  1011. CreateObject(17310, 1822.671387, -1211.182739, 694.227905, -183.060359319, -55.0038910368, -72.5880803609); //
  1012. CreateObject(17310, 1831.283936, -1208.982422, 693.953552, -183.060359319, -55.0038910368, -80.3230105952); //
  1013. CreateObject(17310, 1837.626099, -1208.581177, 693.665771, -183.060359319, -55.0038910368, -90.6362509075); //
  1014. CreateObject(17310, 1846.781494, -1209.536865, 693.161255, -183.060359319, -55.0038910368, -100.94949122); //
  1015. CreateObject(17310, 1851.245850, -1211.300293, 692.723267, -183.060359319, -55.0038910368, -112.981604918); //
  1016. CreateObject(17310, 1860.702515, -1215.780762, 692.445740, -183.060359319, -55.0038910368, -119.857098459); //
  1017. CreateObject(17310, 1870.889771, -1221.653442, 691.786377, -183.060359319, -55.0038910368, -119.857098459); //
  1018. //stuntstreet
  1019. //jump2
  1020. CreateObject(6235, 1734.069336, -1959.200684, 2720.376709, -73.9114982761, -180.482049241, 4.29718346348); //
  1021. CreateObject(6235, 1732.815796, -1941.226685, 2657.322998, -73.9114982761, -180.482049241, 4.29718346348); //
  1022. CreateObject(6235, 1731.146851, -1923.879028, 2596.265381, -73.9114982761, -180.482049241, 4.29718346348); //
  1023. CreateObject(6235, 1728.929565, -1904.438599, 2527.562988, -73.9114982761, -180.482049241, 2.57831007809); //
  1024. CreateObject(6235, 1728.325073, -1885.009277, 2459.842529, -73.9114982761, -180.482049241, 2.57831007809); //
  1025. CreateObject(6235, 1727.470337, -1864.623901, 2389.055908, -73.9114982761, -180.482049241, 6.01605684887); //
  1026. CreateObject(6235, 1725.295410, -1844.960571, 2320.286621, -73.9114982761, -180.482049241, 2.57831007809); //
  1027. CreateObject(6235, 1724.464355, -1825.663086, 2252.862061, -73.9114982761, -180.482049241, 2.57831007809); //
  1028. CreateObject(6235, 1723.368408, -1806.937622, 2187.136475, -73.9114982761, -180.482049241, 2.57831007809); //
  1029. CreateObject(6235, 1722.364746, -1789.065308, 2124.469971, -73.9114982761, -180.482049241, 2.57831007809); //
  1030. CreateObject(6235, 1721.017334, -1771.251709, 2061.851074, -73.9114982761, -180.482049241, 2.57831007809); //
  1031. CreateObject(6235, 1719.967896, -1751.957275, 1994.258057, -73.9114982761, -180.482049241, 2.57831007809); //
  1032. CreateObject(6235, 1719.000610, -1732.280396, 1925.828735, -73.9114982761, -180.482049241, 2.57831007809); //
  1033. CreateObject(6235, 1717.862427, -1713.118652, 1857.563721, -73.9114982761, -180.482049241, 2.57831007809); //
  1034. CreateObject(6235, 1717.788208, -1693.863403, 1789.338135, -73.9114982761, -180.482049241, 5.15662015618); //
  1035. CreateObject(8040, 1730.393555, -2000.245728, 2721.421143, 0.000000, 0.000000, 89.999981276); //
  1036. CreateObject(6235, 1716.385132, -1674.885254, 1722.610718, -73.9114982761, -180.482049241, 5.15662015618); //
  1037. CreateObject(6235, 1714.451172, -1656.272461, 1657.348511, -73.9114982761, -180.482049241, 5.15662015618); //
  1038. CreateObject(6235, 1712.744019, -1636.659302, 1588.778320, -73.9114982761, -180.482049241, 5.15662015618); //
  1039. CreateObject(6235, 1711.277588, -1616.836914, 1519.694458, -73.9114982761, -180.482049241, 7.73493023427); //
  1040. CreateObject(6235, 1708.696289, -1598.027100, 1452.966553, -73.9114982761, -180.482049241, 7.73493023427); //
  1041. CreateObject(6235, 1706.319458, -1579.703003, 1387.828979, -73.9114982761, -180.482049241, 7.73493023427); //
  1042. CreateObject(6235, 1703.988892, -1560.796631, 1320.516724, -73.9114982761, -180.482049241, 7.73493023427); //
  1043. CreateObject(6235, 1701.601807, -1542.333984, 1255.506714, -73.9114982761, -180.482049241, 7.73493023427); //
  1044. CreateObject(6235, 1698.847900, -1523.327026, 1188.301636, -73.9114982761, -180.482049241, 7.73493023427); //
  1045. CreateObject(6235, 1695.966675, -1505.050293, 1122.865356, -73.9114982761, -180.482049241, 7.73493023427); //
  1046. CreateObject(6235, 1693.267700, -1486.785156, 1058.125366, -73.9114982761, -180.482049241, 7.73493023427); //
  1047. CreateObject(6235, 1690.560669, -1469.199585, 995.460815, -73.9114982761, -180.482049241, 7.73493023427); //
  1048. CreateObject(6235, 1688.080200, -1450.315552, 928.666504, -73.9114982761, -180.482049241, 7.73493023427); //
  1049. CreateObject(6235, 1685.320923, -1431.345581, 861.280945, -73.9114982761, -180.482049241, 7.73493023427); //
  1050. CreateObject(6235, 1682.628052, -1411.740601, 792.284668, -73.9114982761, -180.482049241, 7.73493023427); //
  1051. CreateObject(6235, 1679.282349, -1391.894653, 721.636536, -73.9114982761, -180.482049241, 7.73493023427); //
  1052. CreateObject(6235, 1677.189697, -1374.466309, 661.321533, -73.9114982761, -180.482049241, 7.73493023427); //
  1053. CreateObject(6235, 1674.146240, -1354.881592, 592.529663, -73.9114982761, -180.482049241, 7.73493023427); //
  1054. CreateObject(6235, 1671.309570, -1335.986084, 526.487061, -73.9114982761, -180.482049241, 7.73493023427); //
  1055. CreateObject(6235, 1668.144165, -1316.721191, 459.256348, -73.9114982761, -180.482049241, 6.09340615122); //
  1056. CreateObject(6235, 1665.708862, -1298.212891, 395.030487, -73.9114982761, -180.482049241, 6.01605684887); //
  1057. CreateObject(6235, 1664.092407, -1283.373169, 338.508881, -63.5982579637, -180.482049241, 6.01605684887); //
  1058. CreateObject(6235, 1663.875854, -1280.541260, 330.633270, -52.4255809587, -180.482049241, 6.01605684887); //
  1059. CreateObject(6235, 1663.806519, -1279.843384, 327.178497, -40.3935245567, -180.482049241, 6.01605684887); //
  1060. CreateObject(6235, 1663.430542, -1275.953979, 322.348206, -17.1887338539, -180.482049241, 6.01605684887); //
  1061. CreateObject(6235, 1667.607544, -1301.024902, 319.501953, 0.859436692696, -180.482049241, 6.01605684887); //
  1062. CreateObject(6235, 1732.730713, -1935.515381, 2721.749268, -103.99178252, -178.763175855, 178.763175855); //
  1063.  
  1064. //jump2
  1065.  
  1066. //race1
  1067. CreateObject(18449, 2459.237793, -1661.648438, 74.122879, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1068. CreateObject(18449, 2379.638428, -1661.641235, 74.109825, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1069. CreateObject(18449, 2301.374268, -1661.653564, 74.096786, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1070. CreateObject(18449, 2234.271729, -1661.636597, 76.083733, 0.000000, 3.43774677078, 0.000000 ,-1,300); //
  1071. CreateObject(18449, 2156.606201, -1661.633301, 86.703506, 0.000000, 12.0321136977, 0.000000 ,-1,300); //
  1072. CreateObject(18449, 2097.087402, -1661.583374, 103.647522, 0.000000, 21.4859173174, 0.000000 ,-1,300); //
  1073. CreateObject(18449, 1993.144287, -1661.595093, 100.942215, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1074. CreateObject(18449, 1914.164673, -1661.629639, 100.929192, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1075. CreateObject(1632, 1875.257202, -1667.169556, 102.573051, 0.000000, 0.000000, 89.999981276 ,-1,300); //
  1076. CreateObject(1632, 1875.255249, -1663.047485, 102.573051, 0.000000, 0.000000, 89.999981276 ,-1,300); //
  1077. CreateObject(1632, 1875.268188, -1659.065063, 102.548050, 0.000000, 0.000000, 89.999981276 ,-1,300); //
  1078. CreateObject(1632, 1875.259766, -1655.185791, 102.575035, 0.000000, 0.000000, 89.999981276 ,-1,300); //
  1079. CreateObject(18449, 1816.408447, -1661.640381, 100.941154, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1080. CreateObject(18449, 1816.598389, -1671.036499, 104.278076, -39.534087864, 0.000000, 0.000000 ,-1,300); //
  1081. CreateObject(18449, 1736.934326, -1671.033081, 104.257835, -39.534087864, 0.000000, 0.000000 ,-1,300); //
  1082. CreateObject(1290, 1778.171753, -1655.001343, 107.510323, 0.000000, 0.000000, 56.2500169454 ,-1,300); //
  1083. CreateObject(1290, 1777.453369, -1663.844360, 107.308327, 0.000000, 0.000000, 44.999990638 ,-1,300); //
  1084. CreateObject(18449, 1669.341919, -1666.890747, 104.375595, -39.534087864, 0.000000, -8.59436692696 ,-1,300); //
  1085. CreateObject(18449, 1601.646118, -1654.968750, 104.351265, -39.534087864, 0.000000, -11.1726770051 ,-1,300); //
  1086. CreateObject(18449, 1506.865723, -1633.810181, 96.949844, 0.000000, 0.000000, -14.6877730782 ,-1,300); //
  1087. CreateObject(18449, 1437.944458, -1614.525635, 96.911789, 0.000000, 0.000000, -17.2660258605 ,-1,300); //
  1088. CreateObject(18449, 1367.016113, -1592.512939, 96.898735, 0.000000, 0.000000, -17.2660258605 ,-1,300); //
  1089. CreateObject(18449, 1360.310303, -1590.369873, 92.785736, 0.859436692696, 17.1887338539, -17.2660258605 ,-1,300); //
  1090. CreateObject(18449, 1282.027100, -1566.138550, 94.866150, 0.000000, -12.8915503904, -17.2660258605 ,-1,300); //
  1091. CreateObject(18449, 1216.997559, -1545.963989, 79.260422, 0.000000, -12.8915503904, -17.2660258605 ,-1,300); //
  1092. CreateObject(1634, 1181.552002, -1540.438965, 72.788010, 0.000000, 0.000000, 67.499985957 ,-1,300); //
  1093. CreateObject(1634, 1183.035767, -1536.853271, 72.784424, 0.000000, 0.000000, 67.499985957 ,-1,300); //
  1094. CreateObject(1634, 1184.665405, -1533.023926, 72.752556, 0.000000, 0.000000, 67.499985957 ,-1,300); //
  1095. CreateObject(1634, 1186.017944, -1529.695190, 72.764046, 0.000000, 0.000000, 67.499985957 ,-1,300); //
  1096. CreateObject(18449, 1123.434570, -1509.476440, 68.406944, 0.000000, 0.000000, -29.3754888606 ,-1,300); //
  1097. CreateObject(3991, 1032.276245, -1459.301270, 68.608849, 0.000000, 0.000000, 56.2500169454 ,-1,300); //
  1098. CreateObject(3991, 920.771362, -1387.471558, 70.025002, 0.000000, 0.000000, 47.6556500184 ,-1,300); //
  1099. CreateObject(18450, 833.811707, -1317.817993, 71.310921, 0.000000, 0.000000, -41.5622438672 ,-1,300); //
  1100. CreateObject(980, 799.841797, -1287.273315, 71.728050, -90.2407954373, 0.859436692696, -41.5622438672 ,-1,300); //
  1101. CreateObject(1225, 809.166565, -1287.245972, 72.262428, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1102. CreateObject(1225, 799.681580, -1296.539551, 72.262421, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1103. CreateObject(1225, 854.970886, -1354.141968, 71.970078, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1104. CreateObject(1225, 871.545166, -1334.572998, 71.976128, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1105. CreateObject(980, 791.826355, -1279.943726, 71.716843, -88.5219220519, 0.859436692696, -41.5622438672 ,-1,300); //
  1106. CreateObject(7666, 801.478516, -1295.206177, 73.885468, 0.000000, 0.000000, -11.2500263074 ,-1,300); //
  1107. CreateObject(7666, 808.109375, -1287.645752, 73.885468, 0.000000, 0.000000, -11.2500263074 ,-1,300); //
  1108. CreateObject(980, 797.948975, -1289.282227, 74.546745, 0.000000, 0.000000, -42.4216805599 ,-1,300); //
  1109. CreateObject(980, 801.705078, -1285.269287, 74.537193, 0.000000, 0.000000, -42.4216805599 ,-1,300); //
  1110. CreateObject(980, 793.222900, -1277.518677, 74.553452, 0.000000, 0.000000, -42.4216805599 ,-1,300); //
  1111. CreateObject(980, 789.430908, -1281.470703, 74.502350, 0.000000, 0.000000, -42.4216805599 ,-1,300); //
  1112. CreateObject(980, 783.302673, -1272.145020, 71.742508, -88.5219220519, 0.859436692696, -41.5622438672 ,-1,300); //
  1113. CreateObject(980, 785.200684, -1270.193237, 74.596565, 0.000000, 0.000000, -42.4216805599 ,-1,300); //
  1114. CreateObject(980, 780.975098, -1273.696533, 74.524185, 0.000000, 0.000000, -42.4216805599 ,-1,300); //
  1115. CreateObject(980, 776.108765, -1264.017944, 71.727020, -88.5219220519, 0.859436692696, -55.3132309504 ,-1,300); //
  1116. CreateObject(980, 774.005920, -1265.728516, 74.518646, 0.000000, 0.000000, -56.1726676431 ,-1,300); //
  1117. CreateObject(980, 777.746338, -1261.503540, 74.592659, 0.000000, 0.000000, -56.1726676431 ,-1,300); //
  1118. CreateObject(980, 769.740784, -1254.489502, 71.750320, -88.5219220519, 0.859436692696, -55.3132309504 ,-1,300); //
  1119. CreateObject(980, 772.018494, -1252.945190, 74.594170, 0.000000, 0.000000, -56.1726676431 ,-1,300); //
  1120. CreateObject(980, 767.486084, -1256.022827, 74.514565, 0.000000, 0.000000, -56.1726676431 ,-1,300); //
  1121. CreateObject(980, 765.080872, -1245.567383, 71.719368, -88.5219220519, 0.859436692696, -69.0642180335 ,-1,300); //
  1122. CreateObject(980, 765.254578, -1241.782593, 71.663643, -88.5219220519, 0.859436692696, -78.5179643574 ,-1,300); //
  1123. CreateObject(980, 765.236023, -1235.913208, 71.660843, -88.5219220519, 0.859436692696, -104.301065138 ,-1,300); //
  1124. CreateObject(980, 763.331848, -1245.681641, 74.523796, 0.000000, 0.000000, -80.2368377428 ,-1,300); //
  1125. CreateObject(980, 768.204285, -1243.084473, 74.591278, 0.000000, 0.000000, -80.2368377428 ,-1,300); //
  1126. CreateObject(980, 763.270020, -1234.464111, 74.442734, 0.000000, 0.000000, -99.1444449821 ,-1,300); //
  1127. CreateObject(980, 768.948975, -1231.828003, 74.499008, 0.000000, 0.000000, -106.019938524 ,-1,300); //
  1128. CreateObject(980, 768.093384, -1224.795654, 71.638046, -88.5219220519, 0.859436692696, -104.301065138 ,-1,300); //
  1129. CreateObject(980, 770.813782, -1225.354004, 74.488792, 0.000000, 0.000000, -106.019938524 ,-1,300); //
  1130. CreateObject(980, 765.466064, -1224.025635, 74.420753, 0.000000, 0.000000, -105.160501831 ,-1,300); //
  1131. CreateObject(1634, 770.017822, -1218.135010, 73.928482, 131.493813983, 0.000000, -11.2500263074 ,-1,300); //
  1132. CreateObject(980, 768.260620, -1213.828491, 74.388794, 0.000000, 0.000000, -105.160501831 ,-1,300); //
  1133. CreateObject(980, 773.785400, -1214.657837, 74.519966, 0.000000, 0.000000, -105.160501831 ,-1,300); //
  1134. CreateObject(1634, 770.533813, -1216.713135, 68.706581, 0.000000, 0.000000, -197.266103004 ,-1,300); //
  1135. CreateObject(980, 773.255554, -1207.133911, 67.713844, -88.5219220519, 0.859436692696, -104.301065138 ,-1,300); //
  1136. CreateObject(980, 767.420349, -1217.285767, 70.476273, 0.000000, -1.71887338539, -106.879375216 ,-1,300); //
  1137. CreateObject(980, 772.917725, -1218.815430, 70.572906, 0.000000, 0.000000, -105.160501831 ,-1,300); //
  1138. CreateObject(980, 775.935303, -1207.837646, 70.582222, 0.000000, 0.000000, -106.019938524 ,-1,300); //
  1139. CreateObject(980, 770.615356, -1206.437500, 70.476608, 0.000000, 0.000000, -105.160501831 ,-1,300); //
  1140. CreateObject(13593, 773.214783, -1202.425537, 68.467628, 0.000000, 0.000000, -17.3433751628 ,-1,300); //
  1141. CreateObject(13593, 775.831299, -1203.160889, 68.457069, 0.000000, 0.000000, -17.3433751628 ,-1,300); //
  1142. CreateObject(980, 799.844910, -1287.243530, 77.291451, -90.2407954373, 0.859436692696, -41.5622438672 ,-1,300); //
  1143. CreateObject(980, 791.432312, -1279.592285, 77.330002, -90.2407954373, 0.859436692696, -41.5622438672 ,-1,300); //
  1144. CreateObject(980, 782.906738, -1271.775146, 77.344246, -90.2407954373, 0.859436692696, -41.5622438672 ,-1,300); //
  1145. CreateObject(980, 776.267090, -1264.218506, 77.381561, -88.5219220519, 0.859436692696, -55.3132309504 ,-1,300); //
  1146. CreateObject(980, 769.752014, -1254.499390, 77.373077, -88.5219220519, 0.859436692696, -55.3132309504 ,-1,300); //
  1147. CreateObject(1985, 770.103821, -1214.000244, 71.454773, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1148. CreateObject(1985, 770.838806, -1214.112305, 71.435577, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1149. CreateObject(1985, 772.006714, -1213.603760, 14.975613, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1150. CreateObject(1985, 771.566345, -1214.282227, 71.426186, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1151. CreateObject(1985, 772.294922, -1214.439819, 71.364571, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1152. CreateObject(3515, 775.018066, -1201.113525, 66.568962, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1153. CreateObject(3461, 772.458496, -1200.283691, 67.521378, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1154. CreateObject(3461, 777.607727, -1201.760376, 67.523331, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1155. //race1
  1156.  
  1157.  
  1158. //deathrace
  1159. AddStaticVehicle(541,299.0206,244.1482,1.0958,347.8402,0,0); // car
  1160. AddStaticVehicle(541,302.1102,243.1162,1.0994,350.6374,0,0); // car
  1161. AddStaticVehicle(541,305.1835,241.6211,1.0999,348.4543,0,0); // car
  1162. AddStaticVehicle(541,308.3059,241.9771,1.1045,350.0160,0,0); // car
  1163. AddStaticVehicle(541,306.7751,232.6003,1.1054,168.4529,0,0); // car
  1164. AddStaticVehicle(541,303.7698,233.6571,1.1015,170.3120,0,0); // car
  1165. AddStaticVehicle(541,300.4976,234.5350,1.0902,170.2258,0,0); // car
  1166. AddStaticVehicle(541,287.7547,240.8723,1.2643,79.0279,0,0); // car
  1167. CreateObject(18450, 228.1110534668, 251.62782287598, 0, 0, 0, 350.07507324219);
  1168. CreateObject(18450, 149.75318908691, 265.34927368164, 0, 0, 0, 350.07385253906);
  1169. CreateObject(18450, 71.898361206055, 278.92727661133, 0, 0, 0, 350.07385253906);
  1170. CreateObject(18450, 69.439353942871, 270.40731811523, 1.75, 336.18005371094, 0, 350.07385253906);
  1171. CreateObject(18450, -8.5594825744629, 284.00588989258, 1.75, 336.17614746094, 0, 350.07385253906);
  1172. CreateObject(18450, -6.6637954711914, 292.61654663086, 0, 0, 0, 350.07385253906);
  1173. CreateObject(18450, -84.562660217285, 306.15255737305, 0, 0, 0, 350.07385253906);
  1174. CreateObject(18450, -124.23265838623, 313.10287475586, -0.12499997764826, 0, 0, 350.07385253906);
  1175. CreateObject(18450, -228.6573638916, 331.61215209961, 1.625, 0, 0, 350.07385253906);
  1176. CreateObject(1634, -133.6376953125, 316.72744750977, 1.5160677433014, 0, 0, 77.414489746094);
  1177. CreateObject(1634, -140.76634216309, 318.29080200195, 6.5160675048828, 17.864990234375, 0, 77.40966796875);
  1178. CreateObject(18450, -229.98023986816, 325.30938720703, 3.2249989509583, 334.05999755859, 0, 350.07385253906);
  1179. CreateObject(18450, -228.35174560547, 340.93020629883, 3.7250003814697, 27.790008544922, 359.73498535156, 350.07385253906);
  1180. CreateObject(18450, -307.38879394531, 345.47262573242, 1.625, 0, 0, 350.07385253906);
  1181. CreateObject(4030, -388.44158935547, 360.2890625, 5.4999980926514, 0, 0, 1.9849853515625);
  1182. CreateObject(5420, -556.27520751953, 397.82620239258, 6.8062858581543, 0, 0, 180.63439941406);
  1183. CreateObject(4030, -466.07153320313, 376.70736694336, 5.2749972343445, 0, 0, 181.34924316406);
  1184. CreateObject(5419, -685.16748046875, 418.35711669922, 6.997917175293, 0, 0, 170.75048828125);
  1185. CreateObject(8661, -689.57135009766, 420.27395629883, 9.9983406066895, 178.68005371094, 0, 81.384521484375);
  1186. CreateObject(18450, -841.55346679688, 450.62286376953, 0, 0, 0, 348.09008789063);
  1187. CreateObject(1225, 78.330467224121, 274.67642211914, 0.74950504302979, 0, 0, 0);
  1188. CreateObject(1225, 78.540771484375, 276.66455078125, 0.74950504302979, 0, 0, 0);
  1189. CreateObject(1225, 78.777069091797, 278.90142822266, 0.74950504302979, 0, 0, 0);
  1190. CreateObject(1225, 79.039733886719, 281.38732910156, 0.74950504302979, 0, 0, 0);
  1191. CreateObject(1225, 74.066833496094, 281.91345214844, 0.74950504302979, 0, 0, 0);
  1192. CreateObject(1225, 73.829376220703, 279.67572021484, 0.74950504302979, 0, 0, 0);
  1193. CreateObject(1225, 73.592071533203, 277.43743896484, 0.74950504302979, 0, 0, 0);
  1194. CreateObject(1225, 73.381103515625, 275.44775390625, 0.74950504302979, 0, 0, 0);
  1195. CreateObject(1225, 66.916961669922, 276.13201904297, 0.74950504302979, 0, 0, 0);
  1196. CreateObject(1225, 67.205718994141, 278.86639404297, 0.74950504302979, 0, 0, 0);
  1197. CreateObject(1225, 67.442108154297, 281.10357666016, 0.74950504302979, 0, 0, 0);
  1198. CreateObject(1225, 67.678436279297, 283.34088134766, 0.74950504302979, 0, 0, 0);
  1199. CreateObject(1225, 4.1850109100342, 278.24389648438, 4.0995063781738, 336.17999267578, 0, 0);
  1200. CreateObject(1225, 4.4281611442566, 280.13153076172, 3.0995063781738, 336.17614746094, 0, 0);
  1201. CreateObject(1225, 4.8435516357422, 282.32800292969, 2.3495063781738, 336.17614746094, 0, 0);
  1202. CreateObject(1225, 4.8427734375, 282.3271484375, 2.3495063781738, 336.17614746094, 0, 0);
  1203. CreateObject(1225, 5.1825346946716, 283.74462890625, 1.3495063781738, 336.17614746094, 0, 0);
  1204. CreateObject(1225, -175.22972106934, 321.81295776367, 11.48388004303, 0, 0, 0);
  1205. CreateObject(1225, -174.91821289063, 324.29296875, 11.48388004303, 0, 0, 0);
  1206. CreateObject(1225, -175.9400177002, 326.18493652344, 11.48388004303, 0, 0, 0);
  1207. CreateObject(1225, -178.99221801758, 324.07049560547, 11.48388004303, 0, 0, 0);
  1208. CreateObject(1225, -179.07119750977, 325.31713867188, 11.48388004303, 0, 0, 0);
  1209. CreateObject(1225, -178.69641113281, 328.29296875, 11.48388004303, 0, 0, 0);
  1210. CreateObject(1225, -177.30130004883, 327.36206054688, 11.48388004303, 0, 0, 0);
  1211. CreateObject(1225, -181.51783752441, 327.89050292969, 11.48388004303, 0, 0, 0);
  1212. CreateObject(1225, -180.04949951172, 324.35321044922, 11.48388004303, 0, 0, 0);
  1213. CreateObject(1225, -179.78765869141, 322.87850952148, 11.48388004303, 0, 0, 0);
  1214. CreateObject(1225, -181.98341369629, 320.13562011719, 11.48388004303, 0, 0, 0);
  1215. CreateObject(1225, -184.02919006348, 321.90319824219, 11.48388004303, 0, 0, 0);
  1216. CreateObject(1225, -183.68591308594, 324.630859375, 11.48388004303, 0, 0, 0);
  1217. CreateObject(1225, -183.34313964844, 327.359375, 11.48388004303, 0, 0, 0);
  1218. CreateObject(1225, -179.28167724609, 319.54150390625, 11.48388004303, 0, 0, 0);
  1219. CreateObject(1225, -177.2652130127, 320.07321166992, 11.48388004303, 0, 0, 0);
  1220. CreateObject(1225, -841.03643798828, 446.85995483398, 0.74950504302979, 0, 0, 0);
  1221. CreateObject(1225, -839.90905761719, 450.49652099609, 0.74950504302979, 0, 0, 0);
  1222. CreateObject(1225, -840.19488525391, 453.23098754883, 0.74950504302979, 0, 0, 0);
  1223. CreateObject(1225, -842.36602783203, 454.76235961914, 0.74950504302979, 0, 0, 0);
  1224. CreateObject(1225, -844.39465332031, 452.53814697266, 0.74950504302979, 0, 0, 0);
  1225. CreateObject(1225, -844.15997314453, 450.30044555664, 0.74950504302979, 0, 0, 0);
  1226. CreateObject(1225, -843.92462158203, 448.06216430664, 0.74950504302979, 0, 0, 0);
  1227. CreateObject(1225, -845.66442871094, 447.87908935547, 0.74950504302979, 0, 0, 0);
  1228. CreateObject(1225, -845.82043457031, 449.37066650391, 0.74950504302979, 0, 0, 0);
  1229. CreateObject(1225, -845.84637451172, 449.61874389648, 0.74950504302979, 0, 0, 0);
  1230. CreateObject(1225, -846.13238525391, 452.35305786133, 0.74950504302979, 0, 0, 0);
  1231. CreateObject(1225, -846.39245605469, 454.83880615234, 0.74950504302979, 0, 0, 0);
  1232. CreateObject(1225, -810.19439697266, 447.86639404297, 0.74950504302979, 0, 0, 0);
  1233. CreateObject(1225, -810.78375244141, 445.69476318359, 0.74950504302979, 0, 0, 0);
  1234. CreateObject(1225, -811.43811035156, 443.28161621094, 0.74950504302979, 0, 0, 0);
  1235. CreateObject(1225, -811.89593505859, 441.59234619141, 0.74950504302979, 0, 0, 0);
  1236. CreateObject(1225, -812.35394287109, 439.90289306641, 0.74950504302979, 0, 0, 0);
  1237. CreateObject(1225, -803.21160888672, 436.89736938477, 0.74950504302979, 0, 0, 0);
  1238. CreateObject(1225, -803.19616699219, 439.646484375, 0.74950504302979, 0, 0, 0);
  1239. CreateObject(1225, -801.42919921875, 442.63708496094, 0.74950504302979, 0, 0, 0);
  1240. CreateObject(1225, -801.41394042969, 445.38671875, 0.74950504302979, 0, 0, 0);
  1241. CreateObject(1225, -801.39697265625, 448.38671875, 0.74950504302979, 0, 0, 0);
  1242. CreateObject(1225, -801.396484375, 448.38671875, 0.74950504302979, 0, 0, 0);
  1243. CreateObject(1225, -520.99877929688, 385.23645019531, 2.5502071380615, 0, 0, 0);
  1244. CreateObject(1225, -520.48168945313, 387.42617797852, 2.5502071380615, 0, 0, 0);
  1245. CreateObject(1225, -520.76831054688, 386.20919799805, 2.5502071380615, 0, 0, 0);
  1246. CreateObject(1225, -521.2265625, 384.26245117188, 2.5502071380615, 0, 0, 0);
  1247. CreateObject(1225, -521.51342773438, 383.04513549805, 2.5502071380615, 0, 0, 0);
  1248. CreateObject(17034, -356.59002685547, 370.42272949219, -0.5, 0, 0, 354.04504394531);
  1249. CreateObject(17034, -352.37683105469, 337.80438232422, -0.5, 0, 0, 177.3759765625);
  1250. CreateObject(17034, -356.63031005859, 346.30731201172, 8.5, 0, 0, 86.064697265625);
  1251. CreateObject(3037, -435.98498535156, 373.65072631836, 6.1876440048218, 0, 0, 296.48046875);
  1252. CreateObject(8040, 306.27700805664, 237.49909973145, 1.2000002861023, 0, 0.045013427734375, 169.44140625);
  1253. CreateObject(1634, -134.71896362305, 312.84332275391, 1.5160677433014, 0, 0, 77.40966796875);
  1254. CreateObject(1634, -135.51605224609, 309.17016601563, 1.5160677433014, 0, 0, 77.40966796875);
  1255. CreateObject(1634, -132.87641906738, 320.1510925293, 1.5160677433014, 0, 0, 77.40966796875);
  1256. CreateObject(1634, -141.8962097168, 314.42095947266, 6.5160675048828, 17.86376953125, 0, 77.40966796875);
  1257. CreateObject(1634, -143.0260925293, 310.55181884766, 6.5160675048828, 17.86376953125, 0, 77.40966796875);
  1258. CreateObject(1634, -139.96006774902, 321.70523071289, 6.5160675048828, 17.86376953125, 0, 77.40966796875);
  1259. CreateObject(1634, -770.15045166016, 431.03295898438, 3.5139849185944, 0, 0, 81.384521484375);
  1260. CreateObject(1634, -769.51794433594, 434.80374145508, 3.5139849185944, 0, 0, 81.381225585938);
  1261. CreateObject(1634, -768.87731933594, 438.32534790039, 3.5139849185944, 0, 0, 81.381225585938);
  1262. CreateObject(1634, -768.36126708984, 441.84271240234, 3.5139849185944, 0, 0, 81.381225585938);
  1263. CreateObject(1634, -770.70629882813, 427.2619934082, 3.5139849185944, 0, 0, 81.381225585938);
  1264. CreateObject(8661, -689.5712890625, 420.2734375, 10.998344421387, 1.3104248046875, 0, 81.381225585938);
  1265. CreateObject(1634, -665.98327636719, 419.62084960938, 3.2389857769012, 0.75, 0.2349853515625, 82.631225585938);
  1266. CreateObject(1225, -662.23724365234, 416.76300048828, 2.6290688514709, 0, 0, 0);
  1267. CreateObject(1225, -696.87475585938, 417.68826293945, 2.6290688514709, 0, 0, 0);
  1268. CreateObject(1225, -662.57952880859, 413.53033447266, 2.6290688514709, 0, 0, 0);
  1269. CreateObject(1225, -662.76409912109, 411.79010009766, 2.6290688514709, 0, 0, 0);
  1270. CreateObject(1225, -661.65368652344, 422.23107910156, 2.6290688514709, 0, 0, 0);
  1271. CreateObject(1225, -661.49475097656, 423.72204589844, 2.6290688514709, 0, 0, 0);
  1272. CreateObject(1225, -661.36199951172, 424.96466064453, 2.6290688514709, 0, 0, 0);
  1273. CreateObject(1225, -661.361328125, 424.9638671875, 2.6290688514709, 0, 0, 0);
  1274. CreateObject(972, -37.373443603516, 283.03570556641, 0.66638660430908, 0, 0, 59.549621582031);
  1275. CreateObject(972, 99.233291625977, 259.92138671875, 0.66638660430908, 0, 0, 99.245819091797);
  1276. CreateObject(1225, -696.73669433594, 420.18383789063, 2.6290688514709, 0, 0, 0);
  1277. CreateObject(1225, -696.57153320313, 423.17919921875, 2.6290688514709, 0, 0, 0);
  1278. CreateObject(1225, -696.40649414063, 426.17431640625, 2.6290688514709, 0, 0, 0);
  1279. CreateObject(1225, -696.25518798828, 428.91979980469, 2.6290688514709, 0, 0, 0);
  1280. CreateObject(1225, -696.32354736328, 427.67077636719, 2.6290688514709, 0, 0, 0);
  1281. CreateObject(1225, -696.47430419922, 424.92395019531, 2.6290688514709, 0, 0, 0);
  1282. CreateObject(1225, -696.65216064453, 421.67858886719, 2.6290688514709, 0, 0, 0);
  1283. CreateObject(1225, -696.80242919922, 418.93176269531, 2.6290688514709, 0, 0, 0);
  1284. CreateObject(1225, -696.18377685547, 430.16516113281, 2.6290688514709, 0, 0, 0);
  1285. CreateObject(1225, -696.18359375, 430.1650390625, 2.6290688514709, 0, 0, 0);
  1286. CreateObject(974, -879.29632568359, 460.25173950195, 3.1214904785156, 0, 0, 81.384490966797);
  1287. CreateObject(974, -880.72259521484, 454.35293579102, 3.1214904785156, 0, 0, 73.443542480469);
  1288. CreateObject(974, -879.29632568359, 460.25173950195, 3.1214904785156, 0, 0, 81.384490966797);
  1289. //deathrace
  1290.  
  1291. //haydm
  1292. CreateObject(3374, 2490.299316, -1665.000732, 451.462708, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1293. CreateObject(3374, 2490.295410, -1660.979370, 451.463074, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1294. CreateObject(3374, 2486.303711, -1661.056030, 451.462646, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1295. CreateObject(3374, 2486.331055, -1664.995117, 451.428467, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1296. CreateObject(3374, 2490.370605, -1668.995483, 451.428528, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1297. CreateObject(3374, 2486.327148, -1668.973633, 451.428467, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1298. CreateObject(3374, 2482.459473, -1668.966675, 451.433655, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1299. CreateObject(3374, 2482.468262, -1664.936157, 451.444489, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1300. CreateObject(3374, 2482.490723, -1661.000610, 451.478302, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1301. CreateObject(3374, 2493.978027, -1668.996582, 451.828918, 0.000000, -11.1726770051, 0.000000 ,-1,300); //
  1302. CreateObject(3374, 2493.948242, -1664.979980, 451.845551, 0.000000, -11.1726770051, 0.000000 ,-1,300); //
  1303. CreateObject(3374, 2493.900146, -1660.988525, 451.853546, 0.000000, -11.1726770051, 0.000000 ,-1,300); //
  1304. CreateObject(3374, 2497.897705, -1661.004395, 453.319946, 0.000000, -27.5019741663, 0.000000 ,-1,300); //
  1305. CreateObject(3374, 2497.948242, -1664.973267, 453.307678, 0.000000, -27.5019741663, 0.000000 ,-1,300); //
  1306. CreateObject(3374, 2497.915283, -1668.992798, 453.330444, 0.000000, -27.5019741663, 0.000000 ,-1,300); //
  1307. CreateObject(3374, 2486.376221, -1672.842529, 452.128662, -23.2047907028, 0.859436692696, 0.000000 ,-1,300); //
  1308. CreateObject(3374, 2486.388184, -1676.142212, 453.608551, -23.2047907028, 0.859436692696, 0.000000 ,-1,300); //
  1309. CreateObject(3374, 2486.399902, -1679.770630, 455.221191, -23.2047907028, 0.859436692696, 0.000000 ,-1,300); //
  1310. CreateObject(3374, 2486.390381, -1683.209473, 456.807648, -23.2047907028, 0.859436692696, 0.000000 ,-1,300); //
  1311. CreateObject(3374, 2486.385254, -1686.613159, 458.265411, -23.2047907028, 0.859436692696, 0.000000 ,-1,300); //
  1312. CreateObject(3374, 2486.393066, -1689.888550, 458.873993, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1313. CreateObject(3374, 2490.253662, -1689.879761, 458.873993, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1314. CreateObject(3374, 2494.125000, -1689.892700, 458.924103, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1315. CreateObject(3374, 2497.950195, -1689.891357, 458.949219, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1316. CreateObject(3374, 2501.739258, -1689.899658, 458.949280, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1317. CreateObject(3374, 2505.519775, -1689.883179, 458.949280, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1318. CreateObject(3374, 2509.376221, -1689.907471, 458.949158, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1319. CreateObject(3374, 2511.431152, -1687.807983, 458.949341, 0.000000, 0.000000, -50.7067075733 ,-1,300); //
  1320. CreateObject(3374, 2513.277100, -1689.841919, 458.924347, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1321. CreateObject(3374, 2513.290283, -1685.918701, 458.974335, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1322. CreateObject(3374, 2513.266357, -1682.169312, 459.049377, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1323. CreateObject(3374, 2513.277588, -1678.282349, 459.049500, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1324. CreateObject(3374, 2513.280518, -1674.259521, 459.049561, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1325. CreateObject(3374, 2513.283691, -1670.367798, 459.099670, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1326. CreateObject(3374, 2513.312500, -1666.468994, 459.099854, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1327. CreateObject(3374, 2513.321289, -1662.613281, 459.099915, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1328. CreateObject(3374, 2513.322021, -1658.673462, 459.174896, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1329. CreateObject(3374, 2513.421631, -1654.773804, 459.324921, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1330. CreateObject(3374, 2513.434570, -1650.818970, 459.250183, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1331. CreateObject(3374, 2516.298828, -1650.817627, 458.350525, 0.000000, 32.6585943225, 0.000000 ,-1,300); //
  1332. CreateObject(3374, 2519.558105, -1650.807251, 456.187469, 0.000000, 32.6585943225, 0.000000 ,-1,300); //
  1333. CreateObject(3374, 2522.886719, -1650.821899, 454.055084, 0.000000, 32.6585943225, 0.000000 ,-1,300); //
  1334. CreateObject(3374, 2526.280762, -1650.866821, 451.942108, 0.000000, 32.6585943225, 0.000000 ,-1,300); //
  1335. CreateObject(3374, 2530.469238, -1650.873535, 450.603333, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1336. CreateObject(3374, 2534.269043, -1650.874268, 450.603210, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1337. CreateObject(3374, 2534.265625, -1654.754517, 450.628448, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1338. CreateObject(3374, 2534.262695, -1658.691406, 450.653809, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1339. CreateObject(3374, 2534.252930, -1662.596558, 450.703674, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1340. CreateObject(3374, 2534.268311, -1666.623169, 450.704102, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1341. CreateObject(3374, 2534.321045, -1668.992554, 450.676300, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1342. CreateObject(3374, 2530.401123, -1668.954590, 450.667206, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1343. CreateObject(3374, 2530.427734, -1664.987793, 450.692261, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1344. CreateObject(3374, 2530.435791, -1660.973999, 450.692505, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1345. CreateObject(3374, 2526.722168, -1660.984985, 450.692566, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1346. CreateObject(3374, 2526.693115, -1665.025879, 450.692261, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1347. CreateObject(3374, 2526.647461, -1669.065796, 450.692261, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1348. CreateObject(3374, 2522.747070, -1660.994629, 450.667389, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1349. CreateObject(3374, 2522.799072, -1664.971558, 450.817474, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1350. CreateObject(3374, 2522.943359, -1668.920410, 450.917389, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1351. CreateObject(3374, 2519.081299, -1668.879517, 450.992615, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1352. CreateObject(3374, 2519.052490, -1664.871216, 450.917816, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1353. CreateObject(3374, 2519.022217, -1661.032471, 450.892822, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1354. CreateObject(3374, 2510.994873, -1661.044067, 451.942810, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1355. CreateObject(3374, 2511.177246, -1664.992798, 452.075439, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1356. CreateObject(3374, 2511.343018, -1668.921753, 452.167572, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1357. CreateObject(3374, 2515.151367, -1668.885376, 451.042786, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1358. CreateObject(3374, 2515.145752, -1664.804565, 451.092834, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1359. CreateObject(3374, 2515.033203, -1660.999146, 450.917938, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1360. CreateObject(3374, 2517.168945, -1668.332764, 459.025299, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1361. CreateObject(3374, 2517.131104, -1664.343506, 459.050415, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1362. CreateObject(3374, 2517.107910, -1660.319702, 459.075653, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1363. CreateObject(3374, 2478.615967, -1660.994141, 451.578461, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1364. CreateObject(3374, 2478.612061, -1664.994507, 451.678558, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1365. CreateObject(3374, 2478.559570, -1668.923706, 451.478790, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1366. CreateObject(3374, 2482.494873, -1672.888184, 451.558868, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1367. CreateObject(3374, 2478.614258, -1672.903809, 451.573486, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1368. CreateObject(3374, 2490.398926, -1672.951416, 451.503693, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1369. CreateObject(3374, 2534.261475, -1672.978882, 450.876556, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1370. CreateObject(3374, 2538.164551, -1672.915771, 450.951782, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1371. CreateObject(3374, 2542.019043, -1672.911377, 451.051697, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1372. CreateObject(3374, 2520.980225, -1662.410645, 459.150635, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1373. CreateObject(3374, 2520.955322, -1666.337280, 459.150635, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1374. CreateObject(3374, 2524.803955, -1666.383545, 459.300781, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1375. CreateObject(3374, 2524.932129, -1662.373657, 459.225861, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1376. CreateObject(3374, 2528.552490, -1666.351318, 459.350952, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1377. CreateObject(3374, 2528.800293, -1662.360596, 459.226227, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1378. CreateObject(3374, 2532.426514, -1666.361450, 459.401184, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1379. CreateObject(3374, 2532.587158, -1662.411865, 459.326141, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1380. CreateObject(3374, 2535.676514, -1666.356934, 458.740601, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1381. CreateObject(3374, 2535.669922, -1662.437988, 458.748108, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1382. CreateObject(3374, 2539.284424, -1666.366211, 456.955627, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1383. CreateObject(3374, 2539.166992, -1662.416138, 456.899414, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1384. CreateObject(3374, 2542.678223, -1666.367676, 455.289032, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1385. CreateObject(3374, 2542.705078, -1662.346680, 455.264252, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1386. CreateObject(3374, 2546.254883, -1666.376953, 453.667908, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1387. CreateObject(3374, 2546.384766, -1662.410156, 453.892242, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1388. CreateObject(3374, 2545.875488, -1672.891357, 451.057648, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1389. CreateObject(3374, 2549.811768, -1672.930176, 451.057648, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1390. CreateObject(3374, 2553.794922, -1672.974609, 451.107574, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1391. CreateObject(3374, 2553.810547, -1669.169067, 451.157745, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1392. CreateObject(3374, 2553.799072, -1665.212524, 451.158051, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1393. CreateObject(3374, 2553.907715, -1661.384521, 451.258331, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1394. CreateObject(3374, 2549.541748, -1666.395508, 452.065216, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1395. CreateObject(3374, 2549.494873, -1662.386108, 452.159698, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1396. CreateObject(3374, 2557.536377, -1661.408936, 451.358429, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1397. CreateObject(3374, 2557.646240, -1665.371948, 451.283142, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1398. CreateObject(3374, 2557.598877, -1669.345093, 451.307892, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1399. CreateObject(3374, 2557.635986, -1672.893188, 451.233032, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1400. CreateObject(3374, 2549.770996, -1668.888672, 451.057770, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1401. CreateObject(3374, 2549.893555, -1658.950439, 454.558258, 92.8191055154, -2.57831007809, 2.57831007809 ,-1,300); //
  1402. CreateObject(3374, 2553.941895, -1658.206299, 454.258331, 91.9596688227, 2.57831007809, 0.000000 ,-1,300); //
  1403. CreateObject(3374, 2557.781494, -1657.769653, 454.358429, 91.10023213, 0.859436692696, 1.71887338539 ,-1,300); //
  1404. CreateObject(3374, 2560.785400, -1660.878540, 454.358429, 90.2407954373, 0.859436692696, -85.9436119738 ,-1,300); //
  1405. CreateObject(3374, 2560.882324, -1664.970215, 454.283142, 90.2407954373, 0.859436692696, -89.3813587446 ,-1,300); //
  1406. CreateObject(3374, 2561.009033, -1668.660522, 454.307892, 90.2407954373, 0.859436692696, -89.3813587446 ,-1,300); //
  1407. CreateObject(3374, 2560.934570, -1672.504639, 454.307892, 90.2407954373, 0.859436692696, -89.3813587446 ,-1,300); //
  1408. CreateObject(3374, 2557.650146, -1675.955322, 454.233032, 91.10023213, 0.859436692696, 1.71887338539 ,-1,300); //
  1409. CreateObject(3374, 2560.738281, -1657.750366, 454.373444, 91.10023213, 0.859436692696, -44.6906507244 ,-1,300); //
  1410. CreateObject(3374, 2560.790527, -1675.648315, 454.260071, 90.2407954373, 0.859436692696, -142.666605579 ,-1,300); //
  1411. CreateObject(3374, 2539.130371, -1658.441162, 456.899567, 0.000000, 25.7831007809, 0.000000 ,-1,300); //
  1412. CreateObject(3374, 2546.096680, -1658.909668, 454.586090, 91.10023213, 0.859436692696, -2.57831007809 ,-1,300); //
  1413. CreateObject(3374, 2542.378418, -1658.387451, 455.609070, 0.000000, 13.7509870831, 0.000000 ,-1,300); //
  1414. CreateObject(3374, 2554.263916, -1676.606445, 454.182556, 0.000000, -20.6264806247, 0.000000 ,-1,300); //
  1415. CreateObject(3374, 2550.553467, -1676.533081, 452.882935, 0.000000, -20.6264806247, 0.000000 ,-1,300); //
  1416. CreateObject(3374, 2546.809570, -1676.511230, 451.632690, 0.000000, -20.6264806247, 0.000000 ,-1,300); //
  1417. CreateObject(3374, 2543.435303, -1676.483398, 11.519611, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1418. CreateObject(3374, 2543.126221, -1676.470459, 451.151794, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1419. //haydm
  1420.  
  1421. // spawn
  1422. CreateObject(18450, 1629.365234, -1252.558716, 252.548096, 0.000000, 36.9557777859, 0.000000 ,-1,300); //
  1423. CreateObject(18450, 1714.647949, -1252.647949, 239.568100, 0.000000, -11.1726770051, 0.000000 ,-1,300); //
  1424. CreateObject(1633, 1678.107788, -1243.352295, 233.675293, 0.000000, 0.000000, -67.499985957 ,-1,300); //
  1425. CreateObject(1633, 1677.226318, -1262.055664, 233.675293, 0.000000, 0.000000, -112.499976595 ,-1,300); //
  1426. CreateObject(974, 1657.906982, -1243.248291, 235.152740, 0.000000, 0.000000, 11.2500263074 ,-1,300); //
  1427. CreateObject(974, 1664.448242, -1241.947632, 235.152740, 0.000000, 0.000000, 11.2500263074 ,-1,300); //
  1428. CreateObject(974, 1670.996338, -1240.597168, 235.152740, 0.000000, 0.000000, 11.2500263074 ,-1,300); //
  1429. CreateObject(974, 1677.339722, -1238.706299, 235.152740, 0.000000, 0.000000, 22.499995319 ,-1,300); //
  1430. CreateObject(974, 1660.379761, -1261.576538, 235.152740, 0.000000, 0.000000, -11.2500263074 ,-1,300); //
  1431. CreateObject(974, 1666.904175, -1262.821045, 235.148163, 0.000000, 0.000000, -11.2500263074 ,-1,300); //
  1432. CreateObject(974, 1673.181519, -1264.728394, 235.152740, 0.000000, 0.000000, -22.499995319 ,-1,300); //
  1433. CreateObject(18450, 1813.909424, -1252.171143, 249.375977, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1434. CreateObject(18450, 1881.235718, -1252.153931, 220.512863, 0.000000, 46.4095241098, 0.000000 ,-1,300); //
  1435. CreateObject(18450, 1936.179810, -1252.171387, 162.786346, 0.000000, 46.4095241098, 0.000000 ,-1,300); //
  1436. CreateObject(18450, 1961.005981, -1252.460693, 139.774323, 0.000000, 37.8152144786, -1.71887338539 ,-1,300); //
  1437. CreateObject(1655, 1992.010742, -1250.090210, 117.512611, -31.7991576298, 0.000000, -89.999981276 ,-1,300); //
  1438. CreateObject(1655, 1991.994263, -1256.522949, 117.515503, -31.7991576298, 0.000000, -89.999981276 ,-1,300); //
  1439. CreateObject(1655, 2000.305786, -1249.853271, 118.949806, 2.57831007809, 0.000000, -89.999981276 ,-1,300); //
  1440. CreateObject(1655, 2000.306519, -1256.512817, 118.956192, 2.57831007809, 0.000000, -89.999981276 ,-1,300); //
  1441. CreateObject(1483, 1591.628662, -1270.424561, 275.410095, 0.000000, 40.3935245567, -89.999981276 ,-1,300); //
  1442. CreateObject(971, 1590.656982, -1276.173828, 275.042419, 90.2407954373, 0.000000, 0.000000 ,-1,300); //
  1443. CreateObject(971, 1583.127319, -1273.240845, 273.041412, 90.2407954373, 0.000000, 0.000000 ,-1,300); //
  1444. CreateObject(971, 1593.137207, -1273.197266, 270.324371, 90.2407954373, 0.000000, 0.000000 ,-1,300); //
  1445. CreateObject(971, 1582.836914, -1273.254272, 266.523773, 90.2407954373, 0.000000, 0.000000 ,-1,300); //
  1446. CreateObject(971, 1593.189087, -1273.348755, 262.643188, 90.2407954373, 0.000000, 0.000000 ,-1,300); //
  1447. CreateObject(971, 1575.069092, -1273.734375, 264.150940, 0.000000, 0.000000, 89.999981276 ,-1,300); //
  1448. CreateObject(971, 1575.930664, -1274.476563, 272.167816, 0.000000, 0.000000, 89.999981276 ,-1,300); //
  1449. CreateObject(3399, 1598.866089, -1265.079834, 260.438019, 0.000000, 0.000000, -89.999981276 ,-1,300); //
  1450. CreateObject(3399, 1598.891846, -1253.495117, 255.820740, 0.000000, 0.000000, -89.999981276 ,-1,300); //
  1451. CreateObject(5301, 1604.140625, -1221.926025, 252.023499, 0.000000, 0.000000, -180.000019848 ,-1,300); //
  1452. CreateObject(8572, 1598.775146, -1218.028564, 255.858429, 0.000000, 0.000000, 89.999981276 ,-1,300); //
  1453. CreateObject(8613, 1594.098022, -1212.157471, 261.139984, 0.000000, 0.000000, -270.000001124 ,-1,300); //
  1454. CreateObject(16644, 1580.414551, -1208.577026, 264.516785, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1455. CreateObject(16644, 1562.442627, -1208.387939, 263.976837, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1456. CreateObject(16640, 1547.902710, -1203.164063, 263.341553, 0.000000, 0.000000, -179.999962552 ,-1,300); //
  1457. CreateObject(16640, 1562.507202, -1203.083374, 259.300507, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1458. CreateObject(16782, 1553.913818, -1208.484619, 256.045166, 0.000000, -90.2407954373, -180.000019848 ,-1,300); //
  1459. CreateObject(16782, 1550.614990, -1210.870850, 255.296326, 0.000000, -90.2407954373, -180.000019848 ,-1,300); //
  1460. CreateObject(16782, 1548.321655, -1211.042847, 255.171326, 0.000000, -90.2407954373, -180.000019848 ,-1,300); //
  1461. CreateObject(16782, 1545.298340, -1211.562744, 255.198212, 0.000000, -90.2407954373, -180.000019848 ,-1,300); //
  1462. CreateObject(7073, 1542.837769, -1214.164063, 34.692131, 0.000000, 92.8191055154, 0.000000 ,-1,300); //
  1463. CreateObject(6965, 1536.016113, -1215.275879, 256.365601, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1464. CreateObject(3743, 1539.444458, -1230.166870, 250.590378, 0.000000, 0.000000, -168.74999354 ,-1,300); //
  1465. CreateObject(971, 1574.967163, -1275.372925, 254.226166, 0.000000, 0.000000, 89.999981276 ,-1,300); //
  1466. CreateObject(18253, 1544.622314, -1279.785522, 246.829956, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1467. CreateObject(18253, 1537.099365, -1295.513550, 246.848846, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1468. CreateObject(18253, 1552.380249, -1294.921509, 246.585678, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1469. CreateObject(18253, 1543.899414, -1306.179321, 246.842926, 0.000000, 0.000000, -89.999981276 ,-1,300); //
  1470. CreateObject(18251, 1545.817627, -1315.672485, 250.872131, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1471. CreateObject(3689, 1576.280762, -1340.265259, 259.855316, 0.000000, -26.6425374736, -38.0471477941 ,-1,300); //
  1472. CreateObject(5309, 1570.420044, -1376.217529, 295.826416, 0.000000, 18.0481705466, 0.000000 ,-1,300); //
  1473. CreateObject(3170, 1533.481689, -1380.953979, 310.788422, 30.0802842444, 1.71887338539, 79.4547503524 ,-1,300); //
  1474. CreateObject(3169, 1528.602539, -1373.417969, 314.653107, -12.0321136977, -24.9236640882, -167.590441555 ,-1,300); //
  1475. CreateObject(967, 1527.915894, -1370.031494, 318.496246, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1476. CreateObject(967, 1527.878174, -1368.432007, 320.416199, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1477. CreateObject(967, 1526.513428, -1368.562378, 322.741058, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1478. CreateObject(967, 1525.135010, -1368.583130, 324.942169, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1479. CreateObject(967, 1525.140381, -1367.354370, 327.274231, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1480. CreateObject(1684, 1529.093140, -1362.709961, 326.867065, 0.000000, 0.000000, 44.999990638 ,-1,300); //
  1481. CreateObject(16021, 1543.302979, -1234.969360, 276.680756, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1482. CreateObject(16146, 1552.138062, -1268.675293, 280.011414, 0.000000, 0.000000, -123.749945607 ,-1,300); //
  1483. CreateObject(17523, 1562.008789, -1206.477417, 279.504059, 0.000000, 0.000000, 89.999981276 ,-1,300); //
  1484. CreateObject(18282, 1583.365356, -1206.386963, 277.099121, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1485. CreateObject(3578, 1596.826904, -1208.134399, 277.878448, 0.000000, 0.000000, 89.999981276 ,-1,300); //
  1486. CreateObject(3578, 1596.901489, -1218.300049, 277.675079, 0.000000, 0.000000, 89.999981276 ,-1,300); //
  1487. CreateObject(3578, 1596.856567, -1228.566650, 277.651642, 0.000000, 0.000000, -89.999981276 ,-1,300); //
  1488. CreateObject(3578, 1596.769043, -1238.613037, 277.654083, 0.000000, 0.000000, -89.999981276 ,-1,300); //
  1489. CreateObject(3578, 1564.904541, -1269.114258, 277.660858, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1490. CreateObject(3578, 1573.610962, -1269.109863, 277.660858, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1491. CreateObject(3578, 1596.966797, -1264.546021, 277.660431, 0.000000, 0.000000, -89.999981276 ,-1,300); //
  1492. CreateObject(625, 1567.715820, -1265.531616, 277.938507, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1493. CreateObject(626, 1577.244507, -1266.244385, 278.931396, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1494. CreateObject(18014, 1570.946045, -1267.761475, 277.315002, 0.000000, 0.000000, -89.999981276 ,-1,300); //
  1495. CreateObject(632, 1550.934326, -1235.420288, 277.329590, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1496. CreateObject(633, 1554.059692, -1221.435425, 277.875732, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1497. CreateObject(630, 1572.294312, -1212.247925, 278.125549, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1498. CreateObject(644, 1550.296387, -1245.151978, 277.391785, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1499. CreateObject(646, 1570.750732, -1221.018799, 278.294281, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1500. CreateObject(1360, 1595.461426, -1261.682007, 277.653687, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1501. CreateObject(1360, 1594.839844, -1225.855591, 277.644958, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1502. CreateObject(1364, 1549.944214, -1239.958374, 277.666931, 0.000000, 0.000000, 89.999981276 ,-1,300); //
  1503. CreateObject(1364, 1561.090454, -1262.263672, 277.666931, 0.000000, 0.000000, -213.749984178 ,-1,300); //
  1504. CreateObject(1597, 1602.920776, -1252.213257, 276.004242, -36.9557777859, 0.000000, -93.4377280468 ,-1,300); //
  1505. CreateObject(2001, 1592.267944, -1212.046387, 277.100403, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1506. CreateObject(2011, 1594.674927, -1267.147949, 277.883148, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1507. CreateObject(3439, 1595.293335, -1259.644775, 280.994507, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1508. CreateObject(3439, 1595.622192, -1243.111328, 280.990479, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1509. CreateObject(3439, 1595.486206, -1211.279297, 281.213745, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1510. CreateObject(3439, 1578.370972, -1211.861328, 281.213745, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1511. CreateObject(3439, 1571.575684, -1218.988403, 280.990906, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1512. CreateObject(3439, 1554.449707, -1233.370605, 280.995056, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1513. CreateObject(3439, 1551.285156, -1254.492432, 280.993256, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1514. CreateObject(3439, 1540.663452, -1247.870117, 281.997223, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1515. CreateObject(3439, 1576.925537, -1272.586792, 264.707092, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1516. CreateObject(3439, 1601.158569, -1221.241699, 257.754028, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1517. CreateObject(3439, 1601.325317, -1224.978760, 257.754028, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1518. CreateObject(3439, 1554.163696, -1208.056519, 270.806458, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1519. CreateObject(3439, 1534.902100, -1208.060547, 256.841675, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1520. CreateObject(972, 1544.560303, -1212.581909, 249.278351, 0.000000, -90.2407954373, -2.57831007809 ,-1,300); //
  1521. CreateObject(972, 1537.428467, -1215.401733, 249.260788, 0.000000, -90.2407954373, -2.57831007809 ,-1,300); //
  1522. CreateObject(8550, 1573.607178, -1240.197266, 281.124512, 0.000000, 0.000000, -44.999990638 ,-1,300); //
  1523. CreateObject(14467, 1595.756470, -1268.798950, 279.617218, 0.000000, 0.000000, 0.000000 ,-1,300); //
  1524. CreateObject(14826, 1594.103394, -1217.798950, 277.662018, 0.000000, 0.000000, 89.999981276 ,-1,300); //
  1525.  
  1526.  
  1527. //duell
  1528.     DualRoom1 = -1;
  1529.     DualRoom2 = -1;
  1530.     DualRoom3 = -1;
  1531.     DualRoom4 = -1;
  1532.     CreateObject(3095, 1745.2294921875, -2835.8447265625, 5, 0, 0, 0,-1,300);
  1533.     CreateObject(3095, 1736.2451171875, -2835.8447265625, 5, 0, 0, 0,-1,300);
  1534.     CreateObject(3095, 1745.2294921875, -2844.833984375, 5, 0, 0, 0,-1,300);
  1535.     CreateObject(3095, 1736.2451171875, -2844.833984375, 5, 0, 0, 0,-1,300);
  1536.     CreateObject(3095, 1745.2294921875, -2853.8239746094, 5, 0, 0, 0,-1,300);
  1537.     CreateObject(3095, 1736.2451171875, -2853.8239746094, 5, 0, 0, 0,-1,300);
  1538.     CreateObject(3095, 1727.2551269531, -2835.8447265625, 5, 0, 0, 0,-1,300);
  1539.     CreateObject(3095, 1727.2551269531, -2844.833984375, 5, 0, 0, 0,-1,300);
  1540.     CreateObject(3095, 1727.2551269531, -2853.8232421875, 5, 0, 0, 0,-1,300);
  1541.     CreateObject(3095, 1745.2294921875, -2862.8132324219, 5, 0, 0, 0,-1,300);
  1542.     CreateObject(3095, 1736.2451171875, -2862.8132324219, 5, 0, 0, 0,-1,300);
  1543.     CreateObject(3095, 1727.2548828125, -2862.8132324219, 5, 0, 0, 0,-1,300);
  1544.     CreateObject(3095, 1718.2648925781, -2835.8447265625, 5, 0, 0, 0,-1,300);
  1545.     CreateObject(3095, 1718.2648925781, -2844.833984375, 5, 0, 0, 0,-1,300);
  1546.     CreateObject(3095, 1718.2648925781, -2853.8232421875, 5, 0, 0, 0,-1,300);
  1547.     CreateObject(3095, 1718.2648925781, -2862.8125, 5, 0, 0, 0,-1,300);
  1548.     CreateObject(3401, 1742.7684326172, -2859.9912109375, 7.9004049301147, 0, 0, 0,-1,300);
  1549.     CreateObject(994, 1742.6313476563, -2852.4506835938, 5.5881395339966, 0, 0, 0,-1,300);
  1550.     CreateObject(994, 1736.0305175781, -2852.4506835938, 5.5881395339966, 0, 0, 0,-1,300);
  1551.     CreateObject(3095, 1749.6668701172, -2835.8447265625, 9.5, 0, 90, 0,-1,300);
  1552.     CreateObject(3095, 1749.666015625, -2862.8134765625, 9.5, 0, 90, 0,-1,300);
  1553.     CreateObject(3095, 1749.666015625, -2853.8232421875, 9.5, 0, 90, 0,-1,300);
  1554.     CreateObject(3095, 1749.666015625, -2844.833984375, 9.5, 0, 90, 0,-1,300);
  1555.     CreateObject(994, 1734.8913574219, -2866.2641601563, 5.555365562439, 0, 0, 90,-1,300);
  1556.     CreateObject(994, 1734.890625, -2859.5632324219, 5.555365562439, 0, 0, 90,-1,300);
  1557.     CreateObject(3401, 1742.7684326172, -2838.2465820313, 7.9004049301147, 0, 0, 0,-1,300);
  1558.     CreateObject(994, 1742.630859375, -2845.4501953125, 5.5881395339966, 0, 0, 0,-1,300);
  1559.     CreateObject(994, 1736.0302734375, -2845.4501953125, 5.5881395339966, 0, 0, 0,-1,300);
  1560.     CreateObject(994, 1734.890625, -2838.0625, 5.555365562439, 0, 0, 90,-1,300);
  1561.     CreateObject(994, 1734.890625, -2844.8625488281, 5.555365562439, 0, 0, 90,-1,300);
  1562.     CreateObject(3095, 1745.2294921875, -2830.8447265625, 9.5, 0, 90, 270,-1,300);
  1563.     CreateObject(3095, 1736.2451171875, -2830.8447265625, 9.5, 0, 90, 270,-1,300);
  1564.     CreateObject(3095, 1718.2648925781, -2830.8447265625, 9.5, 0, 90, 270,-1,300);
  1565.     CreateObject(3095, 1727.2551269531, -2830.8447265625, 9.5, 0, 90, 270,-1,300);
  1566.     CreateObject(3095, 1713.2648925781, -2862.8125, 9.5, 0, 90, 0,-1,300);
  1567.     CreateObject(3095, 1713.2646484375, -2835.8447265625, 9.5, 0, 90, 0,-1,300);
  1568.     CreateObject(3095, 1713.2646484375, -2844.833984375, 9.5, 0, 90, 0,-1,300);
  1569.     CreateObject(3095, 1713.2646484375, -2853.8232421875, 9.5, 0, 90, 0,-1,300);
  1570.     CreateObject(3095, 1718.2648925781, -2866.8125, 9.5, 0, 90, 270,-1,300);
  1571.     CreateObject(3095, 1727.2548828125, -2866.8125, 9.5, 0, 90, 270,-1,300);
  1572.     CreateObject(3095, 1736.2451171875, -2866.8125, 9.5, 0, 90, 270,-1,300);
  1573.     CreateObject(3095, 1745.2294921875, -2866.8125, 9.5, 0, 90, 270,-1,300);
  1574.     CreateObject(3095, 1745.2294921875, -2835.8447265625, 10.199999809265, 0, 0, 0,-1,300);
  1575.     CreateObject(3095, 1736.2451171875, -2835.8447265625, 10.199999809265, 0, 0, 0,-1,300);
  1576.     CreateObject(3095, 1745.2294921875, -2844.833984375, 10.199999809265, 0, 0, 0,-1,300);
  1577.     CreateObject(3095, 1736.2451171875, -2844.833984375, 10.199999809265, 0, 0, 0,-1,300);
  1578.     CreateObject(3095, 1745.2294921875, -2853.8232421875, 10.199999809265, 0, 0, 0,-1,300);
  1579.     CreateObject(3095, 1745.2294921875, -2862.8125, 10.199999809265, 0, 0, 0,-1,300);
  1580.     CreateObject(3095, 1736.2451171875, -2853.8232421875, 10.199999809265, 0, 0, 0,-1,300);
  1581.     CreateObject(3095, 1736.2451171875, -2862.8125, 10.199999809265, 0, 0, 0,-1,300);
  1582.     CreateObject(3401, 1720.767578125, -2838.24609375, 7.9004049301147, 0, 0, 0,-1,300);
  1583.     CreateObject(994, 1728.2906494141, -2838.0625, 5.555365562439, 0, 0, 90,-1,300);
  1584.     CreateObject(994, 1728.2906494141, -2844.8623046875, 5.555365562439, 0, 0, 90,-1,300);
  1585.     CreateObject(994, 1714.0302734375, -2845.4501953125, 5.5881395339966, 0, 0, 0,-1,300);
  1586.     CreateObject(994, 1720.7302246094, -2845.4501953125, 5.5881395339966, 0, 0, 0,-1,300);
  1587.     CreateObject(3401, 1720.767578125, -2859.9912109375, 7.9004049301147, 0, 0, 0,-1,300);
  1588.     CreateObject(994, 1728.2906494141, -2866.263671875, 5.555365562439, 0, 0, 90,-1,300);
  1589.     CreateObject(994, 1728.2906494141, -2859.5625, 5.555365562439, 0, 0, 90,-1,300);
  1590.     CreateObject(994, 1714.0302734375, -2852.4501953125, 5.5881395339966, 0, 0, 0,-1,300);
  1591.     CreateObject(994, 1720.7294921875, -2852.4501953125, 5.5881395339966, 0, 0, 0,-1,300);
  1592.     CreateObject(3095, 1727.2548828125, -2862.8125, 10.199999809265, 0, 0, 0,-1,300);
  1593.     CreateObject(3095, 1718.2646484375, -2862.8125, 10.199999809265, 0, 0, 0,-1,300);
  1594.     CreateObject(3095, 1727.2548828125, -2853.8232421875, 10.199999809265, 0, 0, 0,-1,300);
  1595.     CreateObject(3095, 1718.2646484375, -2853.8232421875, 10.199999809265, 0, 0, 0,-1,300);
  1596.     CreateObject(3095, 1727.2548828125, -2844.833984375, 10.199999809265, 0, 0, 0,-1,300);
  1597.     CreateObject(3095, 1718.2646484375, -2844.833984375, 10.199999809265, 0, 0, 0,-1,300);
  1598.     CreateObject(3095, 1727.2548828125, -2835.8447265625, 10.199999809265, 0, 0, 0,-1,300);
  1599.     CreateObject(3095, 1718.2646484375, -2835.8447265625, 10.199999809265, 0, 0, 0,-1,300);
  1600. //duell
  1601.  
  1602. //lsa
  1603. CreateObject(12956, 1927.948975, -2634.562012, 16.375114, 0.000000, 0.000000, 0.000000,-1,300); //
  1604. CreateObject(13590, 1960.701660, -2649.610107, 14.922718, 0.000000, 0.000000, -89.999981276,-1,300); //
  1605. CreateObject(13604, 1976.382568, -2629.351807, 14.254894, 0.000000, 0.000000, 0.000000,-1,300); //
  1606. CreateObject(13636, 2008.612549, -2627.005127, 14.827267, 0.000000, 0.000000, 0.000000,-1,300); //
  1607. CreateObject(13639, 2020.925049, -2644.032471, 12.515141, 0.000000, 0.000000, -89.999981276,-1,300); //
  1608. CreateObject(13640, 2032.367188, -2632.515381, 13.567144, 0.000000, 0.000000, 0.000000,-1,300); //
  1609. CreateObject(13640, 2052.855469, -2635.955078, 13.567144, 0.000000, 0.000000, -22.499995319,-1,300); //
  1610. CreateObject(13640, 2076.090576, -2637.576660, 13.567144, 0.000000, 0.000000, 11.2500263074,-1,300); //
  1611. CreateObject(13641, 2004.257935, -2644.778809, 14.266119, 0.000000, 0.000000, -180.000019848,-1,300); //
  1612. CreateObject(13643, 2032.876953, -2621.290527, 13.842892, 0.000000, 0.000000, 0.000000,-1,300); //
  1613. CreateObject(13647, 2093.293213, -2640.283203, 12.542847, 0.000000, 0.000000, 33.7500216264,-1,300); //
  1614. CreateObject(13648, 2092.521973, -2639.135498, 12.517847, 0.000000, 0.000000, -56.2500169454,-1,300); //
  1615. CreateObject(16367, 2121.540039, -2601.677002, 14.305763, 0.000000, 0.000000, -180.000019848,-1,300); //
  1616. CreateObject(18367, 1977.354858, -2385.879395, 10.478827, -21.4859173174, -0.859436692696, 87.4216711979,-1,300); //
  1617. CreateObject(8355, 2030.532471, -2448.553467, 45.323799, -26.6425374736, 0.000000, 0.000000,-1,300); //
  1618. CreateObject(8355, 2048.522949, -2577.083008, 71.917747, 0.000000, -85.0841752811, -0.859436692696,-1,300); //
  1619. CreateObject(8355, 2047.672119, -2577.026367, 62.407944, 0.000000, -60.160511193, -0.859436692696,-1,300); //
  1620. CreateObject(8355, 2040.502319, -2576.885254, 49.195602, 0.000000, -17.1887338539, -0.859436692696,-1,300); //
  1621. CreateObject(8355, 2014.366455, -2577.443848, 44.913322, 0.000000, -1.71887338539, -1.71887338539,-1,300); //
  1622. CreateObject(8355, 1995.262817, -2576.978271, 44.561260, 0.000000, 33.5180310152, -2.57831007809,-1,300); //
  1623. CreateObject(8355, 1985.437866, -2576.449219, 48.640259, 0.000000, 54.1445116399, -2.57831007809,-1,300); //
  1624. CreateObject(8355, 1976.298950, -2575.764404, 60.898403, 0.000000, 73.0520615834, -2.57831007809,-1,300); //
  1625. CreateObject(8171, 2070.230957, -2576.975830, 91.541702, 0.000000, 0.000000, -0.859436692696,-1,300); //
  1626. CreateObject(8171, 1950.484863, -2575.344727, 79.811752, 0.000000, 0.000000, -2.57831007809,-1,300); //
  1627. CreateObject(8355, 2030.741699, -2507.851074, 7.007572, 91.9596688227, 0.000000, 0.000000,-1,300); //
  1628. CreateObject(8355, 1990.917358, -2507.864258, 7.148798, 91.9596688227, 0.000000, 0.000000,-1,300); //
  1629. CreateObject(18450, 1710.601807, -2589.956543, 149.084015, 0.000000, 30.9397209371, 0.000000,-1,300); //
  1630. CreateObject(1634, 1747.428955, -2595.398926, 131.358948, 0.000000, 0.000000, -89.999981276,-1,300); //
  1631. CreateObject(1634, 1747.432251, -2591.261230, 131.349365, 0.000000, 0.000000, -89.999981276,-1,300); //
  1632. CreateObject(1634, 1747.426880, -2587.187012, 131.340866, 0.000000, 0.000000, -89.999981276,-1,300); //
  1633. CreateObject(1634, 1747.431274, -2583.233887, 131.329880, 0.000000, 0.000000, -89.999981276,-1,300); //
  1634. CreateObject(1634, 1742.307739, -2583.213379, 130.540909, -29.2208475517, 0.000000, -90.8594179687,-1,300); //
  1635. CreateObject(1634, 1742.931396, -2587.357666, 130.516083, -27.5019741663, 0.000000, -90.8594179687,-1,300); //
  1636. CreateObject(1634, 1743.518066, -2591.484863, 130.517105, -26.6425374736, 0.000000, -90.8594179687,-1,300); //
  1637. CreateObject(1634, 1742.449463, -2595.584717, 130.556671, -28.361410859, 0.000000, -90.8594179687,-1,300); //
  1638. CreateObject(18450, 1643.587402, -2589.959961, 189.291153, 0.000000, 30.9397209371, 0.000000,-1,300); //
  1639. CreateObject(18450, 1576.150635, -2589.945068, 229.714645, 0.000000, 30.9397209371, 0.000000,-1,300); //
  1640. CreateObject(18450, 1509.338135, -2589.936768, 269.768127, 0.000000, 30.9397209371, 0.000000,-1,300); //
  1641. CreateObject(18450, 1443.709351, -2589.927002, 309.132263, 0.000000, 30.9397209371, 0.000000,-1,300); //
  1642. CreateObject(18450, 1378.838745, -2589.939209, 348.055023, 0.000000, 30.9397209371, 0.000000,-1,300); //
  1643. CreateObject(18450, 1310.712769, -2589.937744, 388.894928, 0.000000, 30.9397209371, 0.000000,-1,300); //
  1644. CreateObject(18450, 1246.376221, -2589.934326, 432.288147, 0.000000, 36.9557777859, 0.000000,-1,300); //
  1645. CreateObject(18450, 1190.280273, -2589.952881, 484.692993, 0.000000, 48.9878341879, 0.000000,-1,300); //
  1646. CreateObject(18450, 1144.915894, -2589.948486, 549.444397, 0.000000, 61.0199478857, 0.000000,-1,300); //
  1647. CreateObject(18450, 1109.689209, -2589.952637, 613.064575, 0.000000, 61.0199478857, 0.000000,-1,300); //
  1648. CreateObject(18450, 1072.733398, -2589.946777, 679.827454, 0.000000, 61.0199478857, 0.000000,-1,300); //
  1649. CreateObject(18450, 1034.263062, -2589.959229, 749.313477, 0.000000, 61.0199478857, 0.000000,-1,300); //
  1650. CreateObject(1634, 1164.161255, -2595.371338, 514.260803, 29.2208475517, 0.000000, 89.999981276,-1,300); //
  1651. CreateObject(1634, 1164.737305, -2591.216309, 513.497009, 27.5019741663, 0.000000, 89.999981276,-1,300); //
  1652. CreateObject(1634, 1164.512207, -2587.047119, 513.840454, 27.5019741663, 0.000000, 89.999981276,-1,300); //
  1653. CreateObject(1634, 1164.640259, -2582.877930, 513.726379, 26.6425374736, 0.000000, 89.999981276,-1,300); //
  1654. CreateObject(1634, 1214.949341, -2595.306885, 455.839233, 19.767043932, 0.000000, 89.999981276,-1,300); //
  1655. CreateObject(1634, 1214.951294, -2591.131592, 455.854523, 19.767043932, 0.000000, 89.999981276,-1,300); //
  1656. CreateObject(1634, 1214.971924, -2586.956299, 455.844482, 19.767043932, 0.000000, 89.999981276,-1,300); //
  1657. CreateObject(1634, 1215.005981, -2582.798584, 455.840790, 19.767043932, 0.000000, 89.999981276,-1,300); //
  1658. CreateObject(8040, 975.191956, -2590.018799, 785.224854, 0.000000, 0.000000, 0.000000,-1,300); //
  1659. CreateObject(8171, 1910.887695, -2573.568359, 79.813736, 0.000000, 0.000000, -2.57831007809,-1,300); //
  1660. CreateObject(8171, 2090.830078, -2577.237793, 95.593643, 0.000000, -62.738821271, 0.000000,-1,300); //
  1661. CreateObject(8171, 2101.205322, -2577.245605, 130.762970, 0.000000, -84.2247385885, 0.000000,-1,300); //
  1662. CreateObject(18367, 1977.232788, -2388.782471, 10.517622, -21.4859173174, -0.859436692696, 87.4216711979,-1,300); //
  1663. CreateObject(13648, 2092.892334, -2639.730957, 12.542847, 0.000000, 0.000000, -56.2500169454,-1,300); //
  1664. CreateObject(13648, 2093.606934, -2640.902100, 12.542849, 0.000000, 0.000000, -56.2500169454,-1,300); //
  1665. CreateObject(13648, 2094.002441, -2641.462158, 12.542848, 0.000000, 0.000000, -56.2500169454,-1,300); //
  1666. CreateObject(1215, 1740.825562, -2597.587158, 132.867126, 0.000000, 0.000000, 0.000000,-1,300); //
  1667. CreateObject(1215, 1740.308472, -2582.458008, 132.567490, 0.000000, 0.000000, 0.000000,-1,300); //
  1668. CreateObject(1215, 1014.629395, -2598.527100, 785.023560, 0.000000, 0.000000, 0.000000,-1,300); //
  1669. CreateObject(1215, 1014.832642, -2581.829346, 785.031189, 0.000000, 0.000000, 0.000000,-1,300); //
  1670. CreateObject(1225, 1743.054688, -2581.703369, 131.664627, 0.000000, 0.000000, 0.000000,-1,300); //
  1671. CreateObject(1225, 1744.457153, -2596.910400, 131.679108, 0.000000, 0.000000, 0.000000,-1,300); //
  1672. CreateObject(18450, 1009.104553, -2589.863281, 807.027405, 0.000000, -36.0963410932, 0.000000,-1,300); //
  1673. CreateObject(18450, 1073.276733, -2589.797119, 806.904297, 0.000000, -36.0963410932, -179.922727841,-1,300); //
  1674. CreateObject(18450, 1122.730591, -2589.712646, 747.375854, 0.000000, -64.4576946564, -179.922727841,-1,300); //
  1675. CreateObject(18450, 1152.144165, -2589.730957, 673.204041, 0.000000, -72.1926248907, -179.922727841,-1,300); //
  1676. CreateObject(18450, 1255.548218, -2588.342529, 442.736237, 0.000000, 36.9557777859, 0.000000,-1,300); //
  1677. CreateObject(18450, 1318.075439, -2588.296143, 400.384644, 0.000000, 30.9397209371, 0.000000,-1,300); //
  1678. CreateObject(18450, 1397.145508, -2587.925293, 350.845154, 0.000000, 30.9397209371, 0.000000,-1,300); //
  1679. CreateObject(18450, 1477.618652, -2589.475342, 299.796600, 0.000000, 30.9397209371, 0.000000,-1,300); //
  1680. CreateObject(18450, 1551.895996, -2589.501465, 252.908417, 0.000000, 30.9397209371, 0.000000,-1,300); //
  1681. CreateObject(18450, 1625.556519, -2589.950928, 207.106644, 0.000000, 30.9397209371, 0.000000,-1,300); //
  1682.  
  1683. //lsa
  1684.  
  1685. //objecte ende
  1686.  
  1687.  
  1688.     UsePlayerPedAnims();
  1689.     Black0 = TextDrawCreate(481.000000,353.000000,"_");
  1690.     TextDrawUseBox(Black0,1);
  1691.     TextDrawBoxColor(Black0,0x00000044);
  1692.     TextDrawTextSize(Black0,596.000000,0.000000);
  1693.     TextDrawAlignment(Black0,0);
  1694.     TextDrawBackgroundColor(Black0,0x000000ff);
  1695.     TextDrawFont(Black0,3);
  1696.     TextDrawLetterSize(Black0,3.599999,7.599996);
  1697.     TextDrawColor(Black0,0xffffffff);
  1698.     TextDrawSetOutline(Black0,1);
  1699.     TextDrawSetProportional(Black0,1);
  1700.     TextDrawSetShadow(Black0,1);
  1701.  
  1702.     White1 = TextDrawCreate(482.000000,354.000000,"_");
  1703.     TextDrawUseBox(White1,1);
  1704.     TextDrawBoxColor(White1,0xffffff11);
  1705.     TextDrawTextSize(White1,595.000000,-2.000000);
  1706.     TextDrawAlignment(White1,0);
  1707.     TextDrawBackgroundColor(White1,0x000000ff);
  1708.     TextDrawFont(White1,1);
  1709.     TextDrawLetterSize(White1,1.700000,7.399997);
  1710.     TextDrawColor(White1,0xffffffff);
  1711.     TextDrawSetOutline(White1,1);
  1712.     TextDrawSetProportional(White1,1);
  1713.     TextDrawSetShadow(White1,1);
  1714.  
  1715.     White2 = TextDrawCreate(483.000000,355.000000,"_");
  1716.     TextDrawUseBox(White2,1);
  1717.     TextDrawBoxColor(White2,0xffffff22);
  1718.     TextDrawTextSize(White2,594.000000,0.000000);
  1719.     TextDrawAlignment(White2,0);
  1720.     TextDrawBackgroundColor(White2,0x000000ff);
  1721.     TextDrawFont(White2,1);
  1722.     TextDrawLetterSize(White2,0.299999,7.199996);
  1723.     TextDrawColor(White2,0xffffffff);
  1724.     TextDrawSetOutline(White2,1);
  1725.     TextDrawSetProportional(White2,1);
  1726.     TextDrawSetShadow(White2,1);
  1727.  
  1728.     BlackHealth = TextDrawCreate(487.000000,385.000000,"_");
  1729.     TextDrawUseBox(BlackHealth,1);
  1730.     TextDrawBoxColor(BlackHealth,0x00000099);
  1731.     TextDrawTextSize(BlackHealth,590.000000,-11.000000);
  1732.     TextDrawAlignment(BlackHealth,0);
  1733.     TextDrawBackgroundColor(BlackHealth,0x000000ff);
  1734.     TextDrawFont(BlackHealth,3);
  1735.     TextDrawLetterSize(BlackHealth,1.000000,0.399999);
  1736.     TextDrawColor(BlackHealth,0xffffffff);
  1737.     TextDrawSetOutline(BlackHealth,1);
  1738.     TextDrawSetProportional(BlackHealth,1);
  1739.     TextDrawSetShadow(BlackHealth,1);
  1740.  
  1741.     DarkRedHealth = TextDrawCreate(488.000000,386.000000,"_");
  1742.     TextDrawUseBox(DarkRedHealth,1);
  1743.     TextDrawBoxColor(DarkRedHealth,0xff000066);
  1744.     TextDrawTextSize(DarkRedHealth,589.000000,0.000000);
  1745.     TextDrawAlignment(DarkRedHealth,0);
  1746.     TextDrawBackgroundColor(DarkRedHealth,0x000000ff);
  1747.     TextDrawFont(DarkRedHealth,3);
  1748.     TextDrawLetterSize(DarkRedHealth,1.000000,0.199999);
  1749.     TextDrawColor(DarkRedHealth,0xffffffff);
  1750.     TextDrawSetOutline(DarkRedHealth,1);
  1751.     TextDrawSetProportional(DarkRedHealth,1);
  1752.     TextDrawSetShadow(DarkRedHealth,1);
  1753.  
  1754.     BlackSpeed = TextDrawCreate(536.000000,403.000000,"_");
  1755.     TextDrawUseBox(BlackSpeed,1);
  1756.     TextDrawBoxColor(BlackSpeed,0x00000099);
  1757.     TextDrawTextSize(BlackSpeed,590.000000,0.000000);
  1758.     TextDrawAlignment(BlackSpeed,0);
  1759.     TextDrawBackgroundColor(BlackSpeed,0x000000ff);
  1760.     TextDrawFont(BlackSpeed,3);
  1761.     TextDrawLetterSize(BlackSpeed,1.000000,1.400000);
  1762.     TextDrawColor(BlackSpeed,0xffffffff);
  1763.     TextDrawSetOutline(BlackSpeed,1);
  1764.     TextDrawSetShadow(BlackSpeed,1);
  1765.     TextDrawSetProportional(BlackSpeed,1);
  1766.  
  1767.     DarkYellowSpeed = TextDrawCreate(537.000000,404.000000,"_");
  1768.     TextDrawUseBox(DarkYellowSpeed,1);
  1769.     TextDrawBoxColor(DarkYellowSpeed,0xffff0033);
  1770.     TextDrawTextSize(DarkYellowSpeed,589.000000,0.000000);
  1771.     TextDrawAlignment(DarkYellowSpeed,0);
  1772.     TextDrawBackgroundColor(DarkYellowSpeed,0x000000ff);
  1773.     TextDrawFont(DarkYellowSpeed,3);
  1774.     TextDrawLetterSize(DarkYellowSpeed,1.000000,1.200000);
  1775.     TextDrawColor(DarkYellowSpeed,0xffffffff);
  1776.     TextDrawSetOutline(DarkYellowSpeed,1);
  1777.     TextDrawSetProportional(DarkYellowSpeed,1);
  1778.     TextDrawSetShadow(DarkYellowSpeed,1);
  1779.  
  1780.     Marker = TextDrawCreate(511.000000,382.000000,"l");
  1781.     TextDrawAlignment(Marker,0);
  1782.     TextDrawBackgroundColor(Marker,0x000000ff);
  1783.     TextDrawFont(Marker,1);
  1784.     TextDrawLetterSize(Marker,0.099999,1.000000);
  1785.     TextDrawColor(Marker,0xffffffff);
  1786.     TextDrawSetOutline(Marker,1);
  1787.     TextDrawSetProportional(Marker,1);
  1788.     TextDrawSetShadow(Marker,1);
  1789.  
  1790.     Exclamation = TextDrawCreate(579.000000,351.000000,"~r~!");
  1791.     TextDrawAlignment(Exclamation,0);
  1792.     TextDrawBackgroundColor(Exclamation,0x000000ff);
  1793.     TextDrawFont(Exclamation,2);
  1794.     TextDrawLetterSize(Exclamation,1.200000,3.399999);
  1795.     TextDrawColor(Exclamation,0xffffffff);
  1796.     TextDrawSetOutline(Exclamation,1);
  1797.     TextDrawSetProportional(Exclamation,1);
  1798.     TextDrawSetShadow(Exclamation,1);
  1799.  
  1800.  
  1801.  
  1802. LHour = TextDrawCreate(493.000000,411.000000,"  ");
  1803. TextDrawAlignment(LHour,0);
  1804. TextDrawBackgroundColor(LHour,0x000000ff);
  1805. TextDrawFont(LHour,1);
  1806. TextDrawLetterSize(LHour,0.399999,1.000000);
  1807. TextDrawColor(LHour,0xffffffff);
  1808. TextDrawSetOutline(LHour,1);
  1809. TextDrawSetProportional(LHour,1);
  1810. TextDrawSetShadow(LHour,1);
  1811.  
  1812. LInfo = TextDrawCreate(555.000000,357.000000,"Digitale Uhr");
  1813. TextDrawAlignment(LInfo,0);
  1814. TextDrawBackgroundColor(LInfo,0x000000ff);
  1815. TextDrawFont(LInfo,1);
  1816. TextDrawLetterSize(LInfo,0.299999,1.000000);
  1817. TextDrawColor(LInfo,0xffffff66);
  1818. TextDrawSetOutline(LInfo,1);
  1819. TextDrawSetProportional(LInfo,1);
  1820. TextDrawSetShadow(LInfo,1);
  1821.  
  1822. LCategory = TextDrawCreate(567.000000,369.000000,"Information");
  1823. TextDrawAlignment(LCategory,0);
  1824. TextDrawBackgroundColor(LCategory,0x000000ff);
  1825. TextDrawFont(LCategory,1);
  1826. TextDrawLetterSize(LCategory,0.199999,0.899999);
  1827. TextDrawColor(LCategory,0xffffffff);
  1828. TextDrawSetOutline(LCategory,1);
  1829. TextDrawSetProportional(LCategory,1);
  1830. TextDrawSetShadow(LCategory,1);
  1831.  
  1832. LMonat = TextDrawCreate(550.000000,385.000000,"  ");
  1833. TextDrawAlignment(LMonat,0);
  1834. TextDrawBackgroundColor(LMonat,0x000000ff);
  1835. TextDrawFont(LMonat,1);
  1836. TextDrawLetterSize(LMonat,0.199999,0.899999);
  1837. TextDrawColor(LMonat,0xffffffff);
  1838. TextDrawSetOutline(LMonat,1);
  1839. TextDrawSetProportional(LMonat,1);
  1840. TextDrawSetShadow(LMonat,1);
  1841.  
  1842. LDay = TextDrawCreate(551.000000,396.000000,"  ");
  1843. TextDrawAlignment(LDay,0);
  1844. TextDrawBackgroundColor(LDay,0x000000ff);
  1845. TextDrawFont(LDay,1);
  1846. TextDrawLetterSize(LDay,0.199999,1.000000);
  1847. TextDrawColor(LDay,0xffffffff);
  1848. TextDrawSetOutline(LDay,1);
  1849. TextDrawSetProportional(LDay,1);
  1850. TextDrawSetShadow(LDay,1);
  1851.  
  1852. LMsg = TextDrawCreate(552.000000,413.000000," ");
  1853. TextDrawAlignment(LMsg,0);
  1854. TextDrawBackgroundColor(LMsg,0x000000ff);
  1855. TextDrawFont(LMsg,1);
  1856. TextDrawLetterSize(LMsg,0.199999,0.899999);
  1857. TextDrawColor(LMsg,0xffffffff);
  1858. TextDrawSetOutline(LMsg,1);
  1859. TextDrawSetProportional(LMsg,1);
  1860. TextDrawSetShadow(LMsg,1);
  1861.  
  1862. //::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  1863. // -> Background Desing <-
  1864. //::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  1865.  
  1866. LText1 = TextDrawCreate(635.000000,352.000000,"TB");
  1867. LText2 = TextDrawCreate(485.000000,352.000000,"L");
  1868. LText3 = TextDrawCreate(632.000000,352.000000,"T");
  1869. LText4 = TextDrawCreate(633.000000,428.000000,"T");
  1870. LText5 = TextDrawCreate(546.000000,356.000000,"T2");
  1871. LText6 = TextDrawCreate(546.000000,410.000000,"T2");
  1872. LText7 = TextDrawCreate(631.000000,356.000000,"TB");
  1873.  
  1874. TextDrawUseBox(   LText1,1);
  1875. TextDrawBoxColor(LText1,0x00000099);
  1876. TextDrawTextSize(LText1,625.000000,0.000000);
  1877.  
  1878. TextDrawUseBox(   LText2,1);
  1879. TextDrawBoxColor( LText2,0x00000099);
  1880. TextDrawTextSize( LText2,475.000000,0.000000);
  1881.  
  1882. TextDrawUseBox(   LText3,1);
  1883. TextDrawBoxColor( LText3,0x00000099);
  1884. TextDrawTextSize( LText3,479.000000,0.000000);
  1885.  
  1886. TextDrawUseBox(   LText4,1);
  1887. TextDrawBoxColor( LText4,0x00000099);
  1888. TextDrawTextSize( LText4,478.000000,0.000000);
  1889.  
  1890. TextDrawUseBox(   LText5,1);
  1891. TextDrawBoxColor( LText5,0x00000066);
  1892. TextDrawTextSize( LText5,480.000000,0.000000);
  1893.  
  1894. TextDrawUseBox(   LText6,1);
  1895. TextDrawBoxColor( LText6,0x00000066);
  1896. TextDrawTextSize( LText6,480.000000,0.000000);
  1897.  
  1898. TextDrawUseBox(   LText7,1);
  1899. TextDrawBoxColor( LText7,0x00000066);
  1900. TextDrawTextSize( LText7,541.000000,0.000000);
  1901.  
  1902. TextDrawAlignment( LText1,0);
  1903. TextDrawAlignment( LText2,0);
  1904. TextDrawAlignment( LText3,0);
  1905. TextDrawAlignment( LText4,0);
  1906. TextDrawAlignment( LText5,0);
  1907. TextDrawAlignment( LText6,0);
  1908. TextDrawAlignment( LText7,0);
  1909.  
  1910. TextDrawBackgroundColor( LText1,0x000000ff);
  1911. TextDrawBackgroundColor( LText2,0x000000ff);
  1912. TextDrawBackgroundColor( LText3,0x000000ff);
  1913. TextDrawBackgroundColor( LText4,0x000000ff);
  1914. TextDrawBackgroundColor( LText5,0x000000ff);
  1915. TextDrawBackgroundColor( LText6,0x000000ff);
  1916. TextDrawBackgroundColor( LText7,0x000000ff);
  1917.  
  1918. TextDrawFont(LText1,3);
  1919. TextDrawLetterSize(LText1,-0.000000,8.199998);
  1920. TextDrawFont(LText2,3);
  1921. TextDrawLetterSize(LText2,-0.000000,8.200001);
  1922. TextDrawFont(LText3,3);
  1923. TextDrawLetterSize(LText3,-0.000000,-0.300000);
  1924. TextDrawFont(LText4,3);
  1925. TextDrawLetterSize(LText4,-0.000000,-0.200000);
  1926. TextDrawFont(LText5,3);
  1927. TextDrawLetterSize(LText5,-0.000000,5.300001);
  1928. TextDrawFont(LText6,3);
  1929. TextDrawLetterSize(LText6,-0.000000,1.300000);
  1930. TextDrawFont(LText7,3);
  1931. TextDrawLetterSize(LText7,-0.000000,7.299998);
  1932.  
  1933. TextDrawColor( LText1,0xffffffff);
  1934. TextDrawColor( LText2,0xffffffff);
  1935. TextDrawColor( LText3,0xffffffff);
  1936. TextDrawColor( LText4,0xffffffff);
  1937. TextDrawColor( LText5,0xffffffff);
  1938. TextDrawColor( LText6,0xffffffff);
  1939. TextDrawColor( LText7,0xffffffff);
  1940.  
  1941. TextDrawSetOutline( LText1,1);
  1942. TextDrawSetOutline( LText2,1);
  1943. TextDrawSetOutline( LText3,1);
  1944. TextDrawSetOutline( LText4,1);
  1945. TextDrawSetOutline( LText5,1);
  1946. TextDrawSetOutline( LText6,1);
  1947. TextDrawSetOutline( LText7,1);
  1948.  
  1949. TextDrawSetProportional( LText1,1);
  1950. TextDrawSetProportional( LText2,1);
  1951. TextDrawSetProportional( LText3,1);
  1952. TextDrawSetProportional( LText4,1);
  1953. TextDrawSetProportional( LText5,1);
  1954. TextDrawSetProportional( LText6,1);
  1955. TextDrawSetProportional( LText7,1);
  1956.  
  1957. TextDrawSetShadow( LText1,1);
  1958. TextDrawSetShadow( LText2,1);
  1959. TextDrawSetShadow( LText3,1);
  1960. TextDrawSetShadow( LText4,1);
  1961. TextDrawSetShadow( LText5,1);
  1962. TextDrawSetShadow( LText6,1);
  1963. TextDrawSetShadow( LText7,1);
  1964.  
  1965. //::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  1966. // -> Hours Desing <-
  1967. //::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  1968.  
  1969. LuxClock_Center = TextDrawCreate(510.000000,373.000000,"o");
  1970. TextDrawAlignment(LuxClock_Center,0);
  1971. TextDrawFont(LuxClock_Center,1);
  1972. TextDrawLetterSize(LuxClock_Center,0.399999,1.200000);
  1973. TextDrawColor(LuxClock_Center,0xffffff66);
  1974. TextDrawSetOutline(LuxClock_Center,1);
  1975. TextDrawSetProportional(LuxClock_Center,1);
  1976. TextDrawSetShadow(LuxClock_Center,1);
  1977. TextDrawSetShadow(LuxClock_Center,1);
  1978.  
  1979. LuxClock[0] = TextDrawCreate(521.000000,359.000000,"~w~1");
  1980. TextDrawAlignment(LuxClock[0],0);
  1981. TextDrawBackgroundColor(LuxClock[0],0x000000ff);
  1982. TextDrawFont(LuxClock[0],1);
  1983. TextDrawLetterSize(LuxClock[0],0.399999,1.000000);
  1984. TextDrawColor(LuxClock[0],0xffffffff);
  1985. TextDrawSetOutline(LuxClock[0],1);
  1986. TextDrawSetProportional(LuxClock[0],1);
  1987. TextDrawSetShadow(LuxClock[0],1);
  1988.  
  1989. LuxClock[1] = TextDrawCreate(528.000000,368.000000,"~w~2");
  1990. TextDrawAlignment(LuxClock[1],0);
  1991. TextDrawBackgroundColor(LuxClock[1],0x000000ff);
  1992. TextDrawFont(LuxClock[1],1);
  1993. TextDrawLetterSize(LuxClock[1],0.299999,0.899999);
  1994. TextDrawColor(LuxClock[1],0xffffffff);
  1995. TextDrawSetOutline(LuxClock[1],1);
  1996. TextDrawSetProportional(LuxClock[1],1);
  1997. TextDrawSetShadow(LuxClock[1],1);
  1998.  
  1999. LuxClock[2] = TextDrawCreate(532.000000,377.000000,"~w~3");
  2000. TextDrawAlignment(LuxClock[2],0);
  2001. TextDrawBackgroundColor(LuxClock[2],0x000000ff);
  2002. TextDrawFont(LuxClock[2],1);
  2003. TextDrawLetterSize(LuxClock[2],0.299999,0.899999);
  2004. TextDrawColor(LuxClock[2],0xffffffff);
  2005. TextDrawSetOutline(LuxClock[2],1);
  2006. TextDrawSetProportional(LuxClock[2],1);
  2007. TextDrawSetShadow(LuxClock[2],1);
  2008.  
  2009. LuxClock[3] = TextDrawCreate(529.000000,386.000000,"~w~4");
  2010. TextDrawAlignment(LuxClock[3],0);
  2011. TextDrawBackgroundColor(LuxClock[3],0x000000ff);
  2012. TextDrawFont(LuxClock[3],1);
  2013. TextDrawLetterSize(LuxClock[3],0.299999,0.899999);
  2014. TextDrawColor(LuxClock[3],0xffffffff);
  2015. TextDrawSetOutline(LuxClock[3],1);
  2016. TextDrawSetProportional(LuxClock[3],1);
  2017. TextDrawSetShadow(LuxClock[3],1);
  2018.  
  2019. LuxClock[4] = TextDrawCreate(523.000000,394.000000,"~w~5");
  2020. TextDrawAlignment(LuxClock[4],0);
  2021. TextDrawBackgroundColor(LuxClock[4],0x000000ff);
  2022. TextDrawFont(LuxClock[4],1);
  2023. TextDrawLetterSize(LuxClock[4],0.299999,0.899999);
  2024. TextDrawColor(LuxClock[4],0xffffffff);
  2025. TextDrawSetOutline(LuxClock[4],1);
  2026. TextDrawSetProportional(LuxClock[4],1);
  2027. TextDrawSetShadow(LuxClock[4],1);
  2028.  
  2029. LuxClock[5] = TextDrawCreate(511.000000,397.000000,"~w~6");
  2030. TextDrawAlignment(LuxClock[5],0);
  2031. TextDrawBackgroundColor(LuxClock[5],0x000000ff);
  2032. TextDrawFont(LuxClock[5],1);
  2033. TextDrawLetterSize(LuxClock[5],0.299999,0.899999);
  2034. TextDrawColor(LuxClock[5],0xffffffff);
  2035. TextDrawSetOutline(LuxClock[5],1);
  2036. TextDrawSetProportional(LuxClock[5],1);
  2037. TextDrawSetShadow(LuxClock[5],1);
  2038.  
  2039. LuxClock[6] = TextDrawCreate(503.000000,394.000000,"~w~7");
  2040. TextDrawAlignment(LuxClock[6],0);
  2041. TextDrawBackgroundColor(LuxClock[6],0x000000ff);
  2042. TextDrawFont(LuxClock[6],1);
  2043. TextDrawLetterSize(LuxClock[6],0.199999,0.899999);
  2044. TextDrawColor(LuxClock[6],0xffffffff);
  2045. TextDrawSetOutline(LuxClock[6],1);
  2046. TextDrawSetProportional(LuxClock[6],1);
  2047. TextDrawSetShadow(LuxClock[6],1);
  2048.  
  2049. LuxClock[7] = TextDrawCreate(494.000000,387.000000,"~w~8");
  2050. TextDrawAlignment(LuxClock[7],0);
  2051. TextDrawBackgroundColor(LuxClock[7],0x000000ff);
  2052. TextDrawFont(LuxClock[7],1);
  2053. TextDrawLetterSize(LuxClock[7],0.299999,0.899999);
  2054. TextDrawColor(LuxClock[7],0xffffffff);
  2055. TextDrawSetOutline(LuxClock[7],1);
  2056. TextDrawSetProportional(LuxClock[7],1);
  2057. TextDrawSetShadow(LuxClock[7],1);
  2058.  
  2059. LuxClock[8] = TextDrawCreate(489.000000,378.000000,"~w~9");
  2060. TextDrawAlignment(LuxClock[8],0);
  2061. TextDrawBackgroundColor(LuxClock[8],0x000000ff);
  2062. TextDrawFont(LuxClock[8],1);
  2063. TextDrawLetterSize(LuxClock[8],0.199999,0.899999);
  2064. TextDrawColor(LuxClock[8],0xffffffff);
  2065. TextDrawSetOutline(LuxClock[8],1);
  2066. TextDrawSetProportional(LuxClock[8],1);
  2067. TextDrawSetShadow(LuxClock[8],1);
  2068.  
  2069. LuxClock[9] = TextDrawCreate(490.000000,368.000000,"~w~10");
  2070. TextDrawAlignment(LuxClock[9],0);
  2071. TextDrawBackgroundColor(LuxClock[9],0x000000ff);
  2072. TextDrawFont(LuxClock[9],1);
  2073. TextDrawLetterSize(LuxClock[9],0.199999,0.899999);
  2074. TextDrawColor(LuxClock[9],0xffffffff);
  2075. TextDrawSetOutline(LuxClock[9],1);
  2076. TextDrawSetProportional(LuxClock[9],1);
  2077. TextDrawSetShadow(LuxClock[9],1);
  2078.  
  2079. LuxClock[10] = TextDrawCreate(498.000000,359.000000,"~w~11");
  2080. TextDrawAlignment(LuxClock[10],0);
  2081. TextDrawBackgroundColor(LuxClock[10],0x000000ff);
  2082. TextDrawFont(LuxClock[10],1);
  2083. TextDrawLetterSize(LuxClock[10],0.199999,0.899999);
  2084. TextDrawColor(LuxClock[10],0xffffffff);
  2085. TextDrawSetOutline(LuxClock[10],1);
  2086. TextDrawSetProportional(LuxClock[10],1);
  2087. TextDrawSetShadow(LuxClock[10],1);
  2088.  
  2089. LuxClock[11] = TextDrawCreate(508.000000,356.000000,"~w~12");
  2090. TextDrawAlignment(LuxClock[11],0);
  2091. TextDrawBackgroundColor(LuxClock[11],0x000000ff);
  2092. TextDrawFont(LuxClock[11],1);
  2093. TextDrawLetterSize(LuxClock[11],0.299999,0.899999);
  2094. TextDrawColor(LuxClock[11],0xffffffff);
  2095. TextDrawSetOutline(LuxClock[11],1);
  2096. TextDrawSetProportional(LuxClock[11],1);
  2097. TextDrawSetShadow(LuxClock[11],1);
  2098.  
  2099. for(new t; t < 12; t++) format(Tstring[t], sizeof Tstring, "%d", t+1);
  2100.  
  2101. new Hour, Min, Second;
  2102.  
  2103. gettime(Hour, Min, Second);
  2104.  
  2105. if (Hour > 12) Hour -= 12;
  2106. if (Hour == 0) Hour = 12;
  2107.  
  2108. DelTime = Hour-1;
  2109.  
  2110. L_UpdateClock();
  2111.  
  2112. SetTimer("L_UpdateClock",60000,1);
  2113. SetTimer("L_UpdateTime" ,1000, 1);
  2114.  
  2115.     return 1;
  2116. }
  2117.  
  2118. public SyncUp()
  2119. {
  2120.     SyncTime();
  2121.     DollahScoreUpdate();
  2122. }
  2123.  
  2124. public SyncTime()
  2125. {
  2126. /*  new string[64];
  2127.     new tmphour;
  2128.     new tmpminute;
  2129.     new tmpsecond;
  2130.     gettime(tmphour, tmpminute, tmpsecond);
  2131.     FixHour(tmphour);
  2132.     tmphour = shifthour;
  2133.     if ((tmphour > ghour) || (tmphour == 0 && ghour == 23))
  2134.     {
  2135.         format(string, sizeof(string), "Es ist jetzt %d:00 Uhr",tmphour);
  2136.         BroadCast(WHITE,string);
  2137.         ghour = tmphour;
  2138.         PayDay();
  2139.         if (realtime)
  2140.         {
  2141.             SetWorldTime(tmphour);
  2142.         }
  2143.     }*/
  2144.     return 1;
  2145. }
  2146.  
  2147. public OnGameModeExit()
  2148. {
  2149.     TextDrawDestroy(LuxClock_Center);
  2150.     TextDrawDestroy(LText1);
  2151.     TextDrawDestroy(LText2);
  2152.     TextDrawDestroy(LText3);
  2153.     TextDrawDestroy(LText4);
  2154.     TextDrawDestroy(LText5);
  2155.     TextDrawDestroy(LText6);
  2156.     TextDrawDestroy(LText7);
  2157.     TextDrawDestroy(LHour);
  2158.     TextDrawDestroy(LDay);
  2159.     TextDrawDestroy(LMonat);
  2160.     TextDrawDestroy(LInfo);
  2161.     TextDrawDestroy(LCategory);
  2162.     TextDrawDestroy(LMsg);
  2163.     for(new t; t < 12; t++) TextDrawDestroy(LuxClock[t]);
  2164.     bStopEngine();
  2165.     KillTimer(TimerA);
  2166.     KillTimer(TimerB);
  2167.     KillTimer(TimerC);
  2168.     KillTimer(CheckStatusTimer);
  2169.     KillTimer(timer);
  2170.     KillTimer(timer2);
  2171.     TextDrawDestroy(Text:Black0);
  2172.     TextDrawDestroy(Text:White1);
  2173.     TextDrawDestroy(Text:White2);
  2174.     TextDrawDestroy(Text:BlackHealth);
  2175.     TextDrawDestroy(Text:DarkRedHealth);
  2176.     TextDrawDestroy(Text:BlackSpeed);
  2177.     TextDrawDestroy(Text:DarkYellowSpeed);
  2178.     TextDrawDestroy(Text:Marker);
  2179.     TextDrawDestroy(Text:Exclamation);
  2180.     for(new i=0; i<MAX_PLAYERS; i++)
  2181.     {
  2182.         TextDrawDestroy(Text:VHS[i]);
  2183.         TextDrawDestroy(Text:LightRedHealth[i]);
  2184.         TextDrawDestroy(Text:LightYellowSpeed[i]);
  2185.     }
  2186.     return 1;
  2187. }
  2188.  
  2189. public OnPlayerRequestClass(playerid, classid)
  2190. {
  2191.     SetPlayerPos(playerid, 1475.4022,-1379.9110,62.4375);
  2192.     SetPlayerFacingAngle(playerid,181.7220);
  2193.     SetPlayerCameraPos(playerid, 1475.5061,-1386.7610,63.6715);
  2194.     SetPlayerCameraLookAt(playerid, 1475.4022,-1379.9110,62.4375);
  2195.     return 1;
  2196. }
  2197.  
  2198. public OnPlayerConnect(playerid)
  2199. {
  2200.  
  2201.     burnout[playerid]=0;
  2202.     PlayerDualWatching[playerid] = 0;
  2203.     InventationSent[playerid] = -1;
  2204.     Inventation[playerid] = -1;
  2205.     InDual[playerid] = 0;
  2206.     Inventationprice[playerid] = 0;
  2207.     Drugs[playerid] = 0;
  2208.     Hide[playerid] = 0;
  2209.     SuperPunch[playerid] = 0;
  2210.     ViewCmds[playerid] = 0;
  2211.  
  2212.     TextDrawsShown[playerid] = false;
  2213.     VHSCreated[playerid] = false;
  2214.     LightRedHealthCreated[playerid] = false;
  2215.     LightYellowSpeedCreated[playerid] = false;
  2216.     AccountInfo[playerid][Jail] = 0;
  2217.     AccountInfo[playerid][AdminLevel] = 0;
  2218.     AccountInfo[playerid][Warns] = 0;
  2219.     AccountInfo[playerid][Logged] = 0;
  2220.     AccountInfo[playerid][Mute] = 0;
  2221.     AccountInfo[playerid][Level] = 0;
  2222.     format(AccountInfo[playerid][Password], 128, " ");
  2223.     format(AccountInfo[playerid][WarnReason1], 128, "NONE");
  2224.     format(AccountInfo[playerid][WarnReason2], 128, "NONE");
  2225.     format(AccountInfo[playerid][WarnReason3], 128, "NONE");
  2226.     PMBlock[playerid] = false;
  2227.     new string[128];
  2228.     new ip[20];
  2229.     new sendername[MAX_PLAYER_NAME];
  2230.     GetPlayerName(playerid, sendername, sizeof(sendername));
  2231.     GetPlayerIp(playerid, ip, sizeof ip);
  2232.     strmid(AccountInfo[playerid][IP], ip, 0, strlen(ip), 128);
  2233.     format(string, sizeof(string), "/sAccounts/%s.seifadmin", sendername);
  2234.     if (!fexist(string)) return SendClientMessage(playerid,WHITE,"SERVER: Dein Account ist nicht registriert. Bitte benutze /register [passwort]");
  2235.     #if defined ENABLE_AUTO_LOGIN
  2236.     {
  2237.         new File:user = fopen(string, io_read);
  2238.         if (user)
  2239.         {
  2240.             new pass[128];
  2241.             new passres[128], value[128];
  2242.             new loop = 1;
  2243.             WHILE:
  2244.             while (fread(user, pass))
  2245.             {
  2246.                 printf("line: %s", pass);
  2247.                 strmid(passres, GetFileString(pass), 0, strlen(GetFileString(pass)), 128);
  2248.                 if (loop == 1)
  2249.                 {
  2250.                     if (!strcmp("IPAddress", passres)) printf("IP; %s", GetFileValue(pass));
  2251.                     if (!strcmp("Password", passres))
  2252.                     {
  2253.                         value = GetFileValue(pass);
  2254.                         strmid(AccountInfo[playerid][Password], value, 0, strlen(value)-1, 128);
  2255.                         loop = 2;
  2256.                         goto WHILE;
  2257.                     }
  2258.                 }
  2259.                 else if (loop == 2)
  2260.                 {
  2261.                     if (!strcmp("IPAddress", passres))
  2262.                     {
  2263.                         printf("%s", passres);
  2264.                         strmid(passres, value, 0, strlen(value)-1, 20);
  2265.                         printf("file-ip: %s | player-ip: %s", GetFileValue(pass), AccountInfo[playerid][IP]);
  2266.                         if (!strcmp(AccountInfo[playerid][IP], passres, true))
  2267.                         {
  2268.                             SendClientMessage(playerid, YELLOW, "|- Auto Login -|");
  2269.                             fclose(user);
  2270.                             OnPlayerLogin(playerid, AccountInfo[playerid][Password]);
  2271.                             return 1;
  2272.                         }
  2273.                         else
  2274.                         {
  2275.                             if (fexist(string))
  2276.                             {
  2277.                                 SendClientMessage(playerid, WHITE, "SERVER: Dieser Account ist Registriert.");
  2278.                                 SendClientMessage(playerid, ORANGE, "Bitte Logge dich ein. ( /login [passwort] )");
  2279.                             }
  2280.                             fclose(user);
  2281.                         }
  2282.                     }
  2283.                 }
  2284.             }
  2285.             fclose(user);
  2286.         }
  2287.     }
  2288.     #else
  2289.     {
  2290.         if (fexist(string))
  2291.         {
  2292.             SendClientMessage(playerid, WHITE, "SERVER: Dieser Account ist Registriert.");
  2293.             SendClientMessage(playerid, ORANGE, "Bitte Logge dich ein. ( /login [passwort] )");
  2294.         }
  2295.     }
  2296.     #endif
  2297.     return 1;
  2298. }
  2299.  
  2300. public OnPlayerDisconnect(playerid, reason)
  2301. {
  2302.     b_PlayerDisconnect(playerid);
  2303.     PlayerDualWatching[playerid] = 0;
  2304.     InventationSent[playerid] = -1;
  2305.     Inventation[playerid] = -1;
  2306.     InDual[playerid] = 0;
  2307.     Inventationprice[playerid] = 0;
  2308.     OnPlayerUpdateAccount(playerid);
  2309.     AccountInfo[playerid][Jail] = 0;
  2310.     AccountInfo[playerid][AdminLevel] = 0;
  2311.     AccountInfo[playerid][Warns] = 0;
  2312.     AccountInfo[playerid][Logged] = 0;
  2313.     AccountInfo[playerid][Mute] = 0;
  2314.     AccountInfo[playerid][Level] = 0;
  2315.     Drugs[playerid] = 0;
  2316.     Hide[playerid] = 0;
  2317.     SuperPunch[playerid] = 0;
  2318.     ViewCmds[playerid] = 0;
  2319.     strmid(AccountInfo[playerid][IP], " ", 0, strlen(" "), 20);
  2320.     DestroyVehicle(SpawnedVehicles[playerid]);
  2321.     SpawnedVehicles[playerid] = 0;
  2322.     return 1;
  2323. }
  2324.  
  2325.  
  2326. public OnPlayerSpawn(playerid)
  2327. {
  2328.     L_UpdateClock();
  2329.     new string[128];
  2330.     new sendername[MAX_PLAYER_NAME];
  2331.     GetPlayerName(playerid,sendername,24);
  2332.     format(string,128,"/sAccounts/%s.seifadmin",sendername);
  2333.     if (fexist(string) && AccountInfo[playerid][Logged] == 0)
  2334.     {
  2335.         SendClientMessage(playerid,RED,"Du musst duch einloggen!");
  2336.         Kick(playerid);
  2337.         return 0;
  2338.     }
  2339.  
  2340.     if(InDM1[playerid] == 1)
  2341.     {
  2342.         SetPlayerPos(playerid,2557.0781,-1661.2155,453.4312);
  2343.         return 0;
  2344.     }
  2345.  
  2346.  
  2347.  
  2348.     if(!IsPlayerNPC(playerid)) return 1; // We only deal with NPC players in this script
  2349.  
  2350.     new playername[64];
  2351.     GetPlayerName(playerid,playername,64);
  2352.     if(!strcmp(playername,"lvracer",true)) {
  2353.         //PutPlayerInVehicle(playerid, Bus1, 0);
  2354.         SetPlayerSkin(playerid, 30);
  2355.     }
  2356.  
  2357.     return 1;
  2358. }
  2359.  
  2360. public OnPlayerDeath(playerid, killerid, reason)
  2361. {
  2362.     if(InDual[playerid] == 1)
  2363.     {
  2364.         SetPlayerScore(killerid,GetPlayerScore(killerid) + 1);
  2365.  
  2366.         new string[256];
  2367.         new killername[MAX_PLAYER_NAME];
  2368.         new playername[MAX_PLAYER_NAME];
  2369.         GetPlayerName(killerid, killername, sizeof(killername));
  2370.         GetPlayerName(playerid, playername, sizeof(playername));
  2371.         if(DualRoom1 == playerid || DualRoom1 == killerid)
  2372.         {
  2373.             Inventation[playerid] = -1;
  2374.             InventationSent[playerid] = -1;
  2375.             Inventation[killerid] = -1;
  2376.             InventationSent[killerid] = -1;
  2377.             InDual[playerid] = 0;
  2378.             InDual[killerid] = 0;
  2379.             format(string, sizeof(string), "%s hat gegen %s in einem Duell gewonnen und hat $%d bekommen", killername, playername, DualRoom1price);
  2380.             SendClientMessageToAll(GREEN, string);
  2381.             GivePlayerMoney(killerid, (DualRoom1price*2));
  2382.             SpawnPlayer(killerid);
  2383.             SendDeathMessage(killerid, playerid, reason);
  2384.             DualRoom1 = -1;
  2385.             return 1;
  2386.         }
  2387.         if(DualRoom2 == playerid || DualRoom2 == killerid)
  2388.         {
  2389.             Inventation[playerid] = -1;
  2390.             InventationSent[playerid] = -1;
  2391.             Inventation[killerid] = -1;
  2392.             InventationSent[killerid] = -1;
  2393.             InDual[playerid] = 0;
  2394.             InDual[killerid] = 0;
  2395.             format(string, sizeof(string), "%s hat gegen %s in einem Duell gewonnen und hat $%d bekommen", killername, playername, DualRoom2price);
  2396.             SendClientMessageToAll(GREEN, string);
  2397.             GivePlayerMoney(killerid, (DualRoom2price*2));
  2398.             SpawnPlayer(killerid);
  2399.             SendDeathMessage(killerid, playerid, reason);
  2400.             DualRoom2 = -1;
  2401.             return 1;
  2402.         }
  2403.         if(DualRoom3 == playerid || DualRoom3 == killerid)
  2404.         {
  2405.             Inventation[playerid] = -1;
  2406.             InventationSent[playerid] = -1;
  2407.             Inventation[killerid] = -1;
  2408.             InventationSent[killerid] = -1;
  2409.             InDual[playerid] = 0;
  2410.             InDual[killerid] = 0;
  2411.             format(string, sizeof(string), "%s hat gegen %s in einem Duell gewonnen und hat $%d bekommen", killername, playername, DualRoom3price);
  2412.             SendClientMessageToAll(GREEN, string);
  2413.             GivePlayerMoney(killerid, (DualRoom3price*2));
  2414.             SpawnPlayer(killerid);
  2415.             SendDeathMessage(killerid, playerid, reason);
  2416.             DualRoom3 = -1;
  2417.             return 1;
  2418.         }
  2419.         if(DualRoom4 == playerid || DualRoom4 == killerid)
  2420.         {
  2421.             Inventation[playerid] = -1;
  2422.             InventationSent[playerid] = -1;
  2423.             Inventation[killerid] = -1;
  2424.             InventationSent[killerid] = -1;
  2425.             InDual[playerid] = 0;
  2426.             InDual[killerid] = 0;
  2427.             format(string, sizeof(string), "%s hat gegen %s in einem Duell gewonnen und hat $%d bekommen", killername, playername, DualRoom4price);
  2428.             SendClientMessageToAll(GREEN, string);
  2429.             GivePlayerMoney(killerid, (DualRoom4price*2));
  2430.             SpawnPlayer(killerid);
  2431.             SendDeathMessage(killerid, playerid, reason);
  2432.             DualRoom4 = -1;
  2433.             return 1;
  2434.         }
  2435.         return 1;
  2436.     }
  2437.     return 1;
  2438. }
  2439.  
  2440. public OnVehicleSpawn(vehicleid)
  2441. {
  2442.     return 1;
  2443. }
  2444.  
  2445. public OnVehicleDeath(vehicleid, killerid)
  2446. {
  2447.     return 1;
  2448. }
  2449.  
  2450. public OnPlayerText(playerid, text[])
  2451. {
  2452.     if (AccountInfo[playerid][Mute] == 1)
  2453.     {
  2454.         SendClientMessage(playerid, RED, "Du bist Gemutet! Du kannst nicht Reden.");
  2455.         return 0;
  2456.     }
  2457.     return 1;
  2458. }
  2459. ////////////////////////////////////////////////////////////////////////////////
  2460. // -------------------------------------------------------------------------- //
  2461. // COMMANDS                                                                   //
  2462. // -------------------------------------------------------------------------- //
  2463. ////////////////////////////////////////////////////////////////////////////////
  2464. //Spawn car command
  2465.  
  2466. dcmd_v(playerid, params[])
  2467. {
  2468.         new Index;
  2469.         new tmp[256];  tmp  = strtok(params,Index);
  2470.         new tmp2[256]; tmp2 = strtok(params,Index);
  2471.         new tmp3[256]; tmp3 = strtok(params,Index);
  2472.         if(!strlen(tmp)) return
  2473.         SendClientMessage(playerid, COLOR_ORANGE, "Usage: /v [modelid/carname] [color1] [color2]");
  2474.         new car;
  2475.         new string[128];
  2476.         new colour1, colour2;
  2477.         if(!IsNumeric(tmp))
  2478.         car = GetVehicleModelIDFromName(tmp);
  2479.         else car = strval(tmp);
  2480.         if(car < 400 || car > 611) return  SendClientMessage(playerid, BALTA, "ERROR: Invalid modelid/carname!");
  2481.         if(!strlen(tmp2)) colour1 = random(126); else colour1 = strval(tmp2);
  2482.         if(!strlen(tmp3)) colour2 = random(126); else colour2 = strval(tmp3);
  2483.  
  2484.         if(SpawnedVehicles[playerid] != 0) DestroyVehicle(SpawnedVehicles[playerid]);
  2485.         new Float:X,Float:Y,Float:Z;
  2486.         new Float:Angle,int1;
  2487.         new LVehicleID = GetPlayerVehicleID(playerid);
  2488.         GetPlayerPos(playerid, X,Y,Z);
  2489.         GetPlayerFacingAngle(playerid,Angle);
  2490.         int1 = GetPlayerInterior(playerid);
  2491.         SpawnedVehicles[playerid] = CreateVehicle(car, X+3,Y,Z, Angle, colour1, colour2, -1);
  2492.         LinkVehicleToInterior(LVehicleID,int1);
  2493.         PlayerPlaySound(playerid,1085,0,0,0);
  2494.         PutPlayerInVehicle(playerid,SpawnedVehicles[playerid],0);
  2495.         format(string, sizeof(string), "~g~You Spawned a %s ~b~(Model ID: %d) ~w~with colours: %d,%d", VehNames[car-400], car, colour1, colour2);
  2496.         return GameTextForPlayer(playerid,string,7500,1);
  2497. }
  2498. //Car respawn command
  2499. dcmd_respawncars(playerid,params[])
  2500. {
  2501.     #pragma unused params
  2502.     SendClientMessage(playerid, COLOR_GREY, "Vehicles respawned.");
  2503.     GameTextForAll("~n~~n~~n~~n~~n~~n~~r~Vehicles ~g~respawned by Admin.", 3000,3);
  2504.     for(new cars=0; cars<MAX_VEHICLES; cars++)
  2505.     {
  2506.         if(!VehicleOccupied(cars))
  2507.         {
  2508.             SetVehicleToRespawn(cars);
  2509.         }
  2510.     }
  2511.     return 1;
  2512. }
  2513.  
  2514. public OnPlayerCommandText(playerid, cmdtext[])
  2515. {
  2516.     new cmd[128];
  2517.     new tmp[128];
  2518.     new idx;
  2519.     new giveplayername[MAX_PLAYER_NAME];
  2520.     new sendername[MAX_PLAYER_NAME];
  2521.     new string[128];
  2522.     cmd = strtok(cmdtext,idx);
  2523.  
  2524. ////////////////////////////////////////////////////////////////////////////////
  2525. // -------------------------------------------------------------------------- //
  2526. // DCMDS                                                                      //
  2527. // -------------------------------------------------------------------------- //
  2528. ////////////////////////////////////////////////////////////////////////////////
  2529.     //Car spawn
  2530.     dcmd(v,1,cmdtext);
  2531.     dcmd(respawncars,11,cmdtext);
  2532.     //duel system commands
  2533.     dcmd(watchduels,10,cmdtext);
  2534.     dcmd(leavewatch,10,cmdtext);
  2535.     dcmd(duell,4,cmdtext);
  2536.     dcmd(acceptduel,10,cmdtext);
  2537.     dcmd(duellablehnen,11,cmdtext);
  2538.  
  2539.     for(new i = 0; i < GetMaxPlayers(); i++)
  2540.     {
  2541.         if (IsPlayerConnected(i))
  2542.         {
  2543.             if (AccountInfo[i][AdminLevel] > 0 && ViewCmds[i] == 1)
  2544.             {
  2545.                 for(new v = 0; v < sizeof(ViewCommands); v++) if (!strcmp(cmdtext, ViewCommands[v], true))
  2546.                 {
  2547.                     GetPlayerName(playerid, sendername, sizeof sendername);
  2548.                     format(tmp, 128, "[VIEWCMDS] [%d]%s: %s", playerid, sendername, cmdtext);
  2549.                     SendClientMessage(i, PURPLE, tmp);
  2550.                 }
  2551.             }
  2552.         }
  2553.     }
  2554.  
  2555.  
  2556.     if(strcmp(cmd, "/help", true) == 0)
  2557.     {
  2558.         SendClientMessage(playerid, ORANGE, "_________ Terrastunt Help _________");
  2559.         SendClientMessage(playerid, GREEN, " /stunts /dm /duellhelp /drifts  /v (Carspawner)");
  2560.     }
  2561.     if(strcmp(cmd, "/duellhelp", true) == 0)
  2562.     {
  2563.         SendClientMessage(playerid, ORANGE, "_________ Terrastunt Duellhilfe _________");
  2564.         SendClientMessage(playerid, GREEN, " /acceptduel /declineduel /watchduels /stopwatch");
  2565.         SendClientMessage(playerid, GREEN, " /duel [id] [weapon] [price]    weapons: deagle, mp5, chainsaw, silpist, combatsg, shotgun");
  2566.     }
  2567.  
  2568.     if(strcmp(cmd, "/stunts", true) == 0)
  2569.     {
  2570.         SendClientMessage(playerid, ORANGE, "_________ Terrastunt Stunts _________");
  2571.         SendClientMessage(playerid, GREEN, " /dr /race1 /lsa /j1 /j2 /ss");
  2572.     }
  2573.  
  2574.     if(strcmp(cmd, "/dm", true) == 0)
  2575.     {
  2576.         SendClientMessage(playerid, ORANGE, "_________ Terrastunt DM _________");
  2577.         SendClientMessage(playerid, GREEN, " /1dm");
  2578.     }
  2579.  
  2580.     if(strcmp(cmd, "/drifts", true) == 0)
  2581.     {
  2582.         SendClientMessage(playerid, ORANGE, "_________ Terrastunt Drifts _________");
  2583.         SendClientMessage(playerid, GREEN, " /parad");
  2584.     }
  2585.  
  2586.     if(strcmp(cmdtext, "/race1", true) == 0)
  2587.     {
  2588.         new auto5 = GetPlayerVehicleID(playerid);
  2589.         SetPlayerPos(playerid,2495.6150,-1661.7157,75.1937);
  2590.         SetVehiclePos(auto5,2495.6150,-1661.7157,75.1937);
  2591.         PutPlayerInVehicle(playerid,auto5,0);
  2592.  
  2593.         SendClientMessage(playerid, ORANGE, "Willkommen beim Race 1.");
  2594.         GetPlayerName(playerid, sendername, sizeof(sendername));
  2595.         format(string, sizeof(string), "%s ist bei /race1 (Rennen 1).", sendername);
  2596.         SendClientMessage(playerid, LIGHTBLUE, string);
  2597.         return 1;
  2598.     }
  2599.     if(strcmp(cmdtext, "/ss", true) == 0)
  2600.     {
  2601.         new auto5 = GetPlayerVehicleID(playerid);
  2602.         SetPlayerPos(playerid,1883.873779,-1256.226440,680.512817);
  2603.         SetVehiclePos(auto5,1883.873779,-1256.226440,680.512817);
  2604.         PutPlayerInVehicle(playerid,auto5,0);
  2605.         SendClientMessage(playerid, ORANGE, "Willkommen bei der Stuntstreet.");
  2606.         GetPlayerName(playerid, sendername, sizeof(sendername));
  2607.         format(string, sizeof(string), "%s ist bei /ss (Stuntstreet).", sendername);
  2608.         SendClientMessage(playerid, LIGHTBLUE, string);
  2609.         return 1;
  2610.     }
  2611.     if(strcmp(cmdtext, "/j1", true) == 0)
  2612.     {
  2613.         new auto5 = GetPlayerVehicleID(playerid);
  2614.         SetPlayerPos(playerid,945.9643,-2590.4438,785.4592);
  2615.         SetVehiclePos(auto5,945.9643,-2590.4438,785.4592);
  2616.         SetVehicleZAngle(auto5,285.9792);
  2617.         PutPlayerInVehicle(playerid,auto5,0);
  2618.  
  2619.         SendClientMessage(playerid, ORANGE, "Willkommen beim Jump 1");
  2620.         GetPlayerName(playerid, sendername, sizeof(sendername));
  2621.         format(string, sizeof(string), "%s ist bei /j1 (Jump 1).", sendername);
  2622.         SendClientMessage(playerid, LIGHTBLUE, string);
  2623.         return 1;
  2624.     }
  2625.     if(strcmp(cmdtext, "/j2", true) == 0)
  2626.     {
  2627.         new auto5 = GetPlayerVehicleID(playerid);
  2628.         SetPlayerPos(playerid,1730.393555, -2000.245728, 2721.421143);
  2629.         SetVehiclePos(auto5,1730.393555, -2000.245728, 2721.421143);
  2630.         PutPlayerInVehicle(playerid,auto5,0);
  2631.  
  2632.         SendClientMessage(playerid, ORANGE, "Willkommen beim Jump 2");
  2633.         GetPlayerName(playerid, sendername, sizeof(sendername));
  2634.         format(string, sizeof(string), "%s ist bei /j2 (Jump 2).", sendername);
  2635.         SendClientMessage(playerid, LIGHTBLUE, string);
  2636.         return 1;
  2637.     }
  2638.     if(strcmp(cmdtext, "/lsa", true) == 0)
  2639.     {
  2640.         new auto5 = GetPlayerVehicleID(playerid);
  2641.         SetPlayerPos(playerid,2134.0620,-2556.7974,13.2740);
  2642.         SetVehiclePos(auto5,2134.0620,-2556.7974,13.2740);
  2643.         PutPlayerInVehicle(playerid,auto5,0);
  2644.  
  2645.         SendClientMessage(playerid, ORANGE, "Willkommen beim Los Santos Airport.");
  2646.         GetPlayerName(playerid, sendername, sizeof(sendername));
  2647.         format(string, sizeof(string), "%s ist bei /lsa (Los Santos Airport).", sendername);
  2648.         SendClientMessage(playerid, LIGHTBLUE, string);
  2649.         return 1;
  2650.     }
  2651.  
  2652.     if(strcmp(cmd, "/parad", true) == 0)
  2653.     {
  2654.  
  2655.         SendClientMessage(playerid, ORANGE, "Willkommen beim Paradrift");
  2656.  
  2657.         GetPlayerName(playerid, sendername, sizeof(sendername));
  2658.         format(string, sizeof(string), "%s ist bei /parad (Paradrift).", sendername);
  2659.         SendClientMessage(playerid, LIGHTBLUE, string);
  2660.  
  2661.         SetPlayerPos(playerid,-315.8511,1508.5010,75.5625);
  2662.     }
  2663.  
  2664.     if(strcmp(cmd, "/1dm", true) == 0)
  2665.     {
  2666.  
  2667.         SendClientMessage(playerid, ORANGE, "Willkommen beim Heudm");
  2668.         SendClientMessage(playerid, ORANGE, "Um das DM zu verlassen gebe /exitdm ein.");
  2669.         GivePlayerWeapon(playerid,26,900);
  2670.         GivePlayerWeapon(playerid,28,900);
  2671.         GivePlayerWeapon(playerid,24,900);
  2672.         GivePlayerWeapon(playerid,33,900);
  2673.         GetPlayerName(playerid, sendername, sizeof(sendername));
  2674.         format(string, sizeof(string), "%s ist bei /1dm (Heudm).", sendername);
  2675.         SendClientMessage(playerid, LIGHTBLUE, string);
  2676.  
  2677.         SetPlayerPos(playerid,2557.0781,-1661.2155,453.4312);
  2678.         InDM1[playerid] = 1;
  2679.     }
  2680.     if(strcmp(cmd, "/exitdm", true) == 0)
  2681.     {
  2682.         if(InDM1[playerid] == 1)
  2683.         {
  2684.             SendClientMessage(playerid, LIGHTBLUE,"Beim nächsten Tod spawnst du nicht mehr im Dm.");
  2685.             InDM1[playerid] = 0;
  2686.         }
  2687.         return 1;
  2688.     }
  2689.     if(strcmp(cmd, "/dr", true) == 0)
  2690.     {
  2691.         SendClientMessage(playerid, ORANGE, "Willkommen beim Deadrace");
  2692.         GetPlayerName(playerid, sendername, sizeof(sendername));
  2693.         format(string, sizeof(string), "%s ist bei /dr (Deadrace).", sendername);
  2694.         SendClientMessage(playerid, LIGHTBLUE, string);
  2695.         SetPlayerPos(playerid,320.0227,234.9067,1.6172);
  2696.     }
  2697.     /*»»»»»»»»»»»»»»»»»»»»»»»»»»»» [ADMINS] «««««««««««««««««««««««««««*/
  2698.  
  2699.     if(strcmp(cmd, "/makeadmin", true) == 0) // Make player an admin
  2700.     {
  2701.         if (AccountInfo[playerid][AdminLevel] >= 5 || IsPlayerAdmin(playerid))
  2702.         {
  2703.             tmp = strtok(cmdtext, idx);
  2704.             if(!strlen(tmp))
  2705.             {
  2706.                 SendClientMessage(playerid, ORANGE, "Benutze: /makeadmin [playerid] [level 1-5]");
  2707.                 SendClientMessage(playerid, ORANGE, "Funktion: Spieler wird ein Admin auf dem angegebenen Level.");
  2708.                 return 1;
  2709.             }
  2710.             new giveplayerid = ReturnUser(tmp, playerid);
  2711.             tmp = strtok(cmdtext, idx);
  2712.             new level = strval(tmp);
  2713.             if(giveplayerid != INVALID_PLAYER_ID)
  2714.             {
  2715.                 if (level >= 0)
  2716.                 {
  2717.                     GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  2718.                     GetPlayerName(playerid, sendername, sizeof(sendername));
  2719.                     printf("ADMIN: %s macht %s ein Level %d Admin.", sendername, giveplayername, level);
  2720.                     format(string, sizeof(string), "Du bist nun ein Administrator Level %d danke an %s.", level, sendername);
  2721.                     SendClientMessage(giveplayerid, LIGHTBLUE, string);
  2722.                     format(string, sizeof(string), "|- Administrator %s hat %s ein Admin Level gegeben. [Level: %d] -|", sendername,giveplayername,level);
  2723.                     SendClientMessageToAdmins(ADMIN_RED, string, 1);
  2724.                     AccountInfo[giveplayerid][AdminLevel] = level;
  2725.                     format(string, sizeof(string), "Du hast %s das Level %d Admin gegeben.", giveplayername,AccountInfo[giveplayerid][AdminLevel]);
  2726.                     SendClientMessage(playerid, LIGHTBLUE, string);
  2727.                 }
  2728.                 else return SendClientMessage(playerid, RED, "Es kann nicht unter 0 sein!");
  2729.             }
  2730.             else if(giveplayerid == INVALID_PLAYER_ID)
  2731.             {
  2732.                 format(string, sizeof(string), "%i ist kein Aktiver Spieler..", giveplayerid);
  2733.                 SendClientMessage(playerid, RED, string);
  2734.             }
  2735.         }
  2736.         else SendClientMessage(playerid, RED, "Du bist kein Lead Admin!");
  2737.         return 1;
  2738.     }
  2739.  
  2740.     if(strcmp(cmd, "/gmx", true) == 0) // Reboot the server
  2741.     {
  2742.         if (AccountInfo[playerid][AdminLevel] >= 5 || IsPlayerAdmin(playerid)) return GameModeExit();
  2743.         else return SendClientMessage(playerid, RED, "Du bist kein Lead Admin!");
  2744.     }
  2745.  
  2746.     if(strcmp(cmd, "/kickall", true) == 0) // Kick everyone except the one who does this
  2747.     {
  2748.         new reason[128];
  2749.         if (AccountInfo[playerid][AdminLevel] >= 5 || IsPlayerAdmin(playerid))
  2750.         {
  2751.             GetPlayerName(playerid, sendername, sizeof(sendername));
  2752.             reason = bigstrtok(cmdtext, idx);
  2753.             if(!strlen(reason))
  2754.             {
  2755.                 SendClientMessage(playerid, ORANGE, "Benutze: /kickall [grund]");
  2756.                 SendClientMessage(playerid, ORANGE, "Funktion: Kickt alle Spieler.");
  2757.                 return 1;
  2758.             }
  2759.             printf("ADMIN: Admin %s hat alle gekickt. Grund: %s", sendername, reason);
  2760.             format(string, sizeof(string), "-| Administrator %s hat jeden gekickt. [Grund: %s ] |-", sendername,reason);
  2761.             SendClientMessageToAll(ADMIN_RED, string);
  2762.             for(new i = 0; i < MAX_PLAYERS; i++)
  2763.             {
  2764.                 if (i != playerid)
  2765.                 {
  2766.                     Kick(i);
  2767.                     KickLog(string);
  2768.                 }
  2769.             }
  2770.         }
  2771.         else SendClientMessage(playerid, RED, "Du bist kein Lead Admin!");
  2772.         return 1;
  2773.     }
  2774.     if(strcmp(cmd, "/nuke", true) == 0) // Nuke a player (explode)
  2775.     {
  2776.         if (AccountInfo[playerid][AdminLevel] >= 3)
  2777.         {
  2778.             tmp = strtok(cmdtext, idx);
  2779.             if(!strlen(tmp))
  2780.             {
  2781.                 SendClientMessage(playerid, ORANGE, "Benutze: /nuke [playerid]");
  2782.                 SendClientMessage(playerid, ORANGE, "Funktion: Spieler explodiert.");
  2783.                 return 1;
  2784.             }
  2785.             new Float:X,Float:Y,Float:Z;
  2786.             new giveplayerid = ReturnUser(tmp, playerid);
  2787.             if(IsPlayerConnected(giveplayerid))
  2788.             {
  2789.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  2790.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  2791.                 GetPlayerPos(giveplayerid, X,Y,Z);
  2792.                 CreateExplosion(X,Y,Z,2,3.0);
  2793.                 SetPlayerHealth(giveplayerid, 0.0);
  2794.                 format(string, sizeof(string), "-| Administrator %s explodiert %s |-",sendername,giveplayername);
  2795.                 SendClientMessageToAdmins(ADMIN_RED, string,1);
  2796.             }
  2797.             else if (!IsPlayerConnected(giveplayerid))
  2798.             {
  2799.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  2800.                 SendClientMessage(playerid, RED, string);
  2801.             }
  2802.         }
  2803.         else SendClientMessage(playerid, RED, "Dein Adminlevel ist nicht hoch genug.");
  2804.         return 1;
  2805.     }
  2806.  
  2807.     if(strcmp(cmd, "/setscore", true) == 0) // Set player a score
  2808.     {
  2809.         if (IsPlayerAdmin(playerid) || AccountInfo[playerid][AdminLevel] >= 1)
  2810.         {
  2811.             tmp = strtok(cmdtext, idx);
  2812.             if(!strlen(tmp))
  2813.             {
  2814.                 SendClientMessage(playerid, ORANGE, "Benutze: /setscore [playerid] [score]");
  2815.                 SendClientMessage(playerid, ORANGE, "Funktion: Ändert das Spielerlevel");
  2816.                 return 1;
  2817.             }
  2818.             new giveplayerid = ReturnUser(tmp);
  2819.             tmp = strtok(cmdtext, idx);
  2820.             if(!strlen(tmp))
  2821.             {
  2822.                 SendClientMessage(playerid, ORANGE, "Benutze: /score [playerid] [score]");
  2823.                 SendClientMessage(playerid, ORANGE, "Funktion: Ändert das Spielerlevel");
  2824.                 return 1;
  2825.             }
  2826.             new score = strval(tmp);
  2827.             if(IsPlayerConnected(giveplayerid))
  2828.             {
  2829.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  2830.                 GetPlayerScore(giveplayerid);
  2831.                 SetPlayerScore(giveplayerid, score);
  2832.                 format(string, sizeof(string), "You have changed %s's score number to %d.",giveplayername, score);
  2833.                 SendClientMessage(playerid, GREEN, string);
  2834.             }
  2835.             else if (!IsPlayerConnected(giveplayerid))
  2836.             {
  2837.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  2838.                 SendClientMessage(playerid, RED, string);
  2839.             }
  2840.         }
  2841.         else SendClientMessage(playerid, RED, "You're not an admin with the required level.");
  2842.         return 1;
  2843.     }
  2844.  
  2845.     if(strcmp(cmd, "/angle", true) == 0) // Shows your current angle + sets it
  2846.     {
  2847.         if (IsPlayerAdmin(playerid) || AccountInfo[playerid][AdminLevel] >= 1)
  2848.         {
  2849.             new Float:angle;
  2850.             tmp = strtok(cmdtext, idx);
  2851.             if(!strlen(tmp))
  2852.             {
  2853.                 SendClientMessage(playerid, ORANGE, "Benutze: /angle [angle degree]");
  2854.                 SendClientMessage(playerid, ORANGE, "Funktion: Will change your current angle.");
  2855.                 GetPlayerFacingAngle(playerid,angle);
  2856.                 format(string, sizeof(string), "HELP: Your current angle is %f", angle);
  2857.                 SendClientMessage(playerid, ORANGE, string);
  2858.                 return 1;
  2859.             }
  2860.             angle = floatstr(tmp);
  2861.             if (GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  2862.             {
  2863.                 SetVehicleZAngle(GetPlayerVehicleID(playerid), angle);
  2864.                 format(string, sizeof(string), "You have changed your angle degree to %f" ,angle);
  2865.                 SendClientMessage(playerid, GREEN, string);
  2866.             }
  2867.             else
  2868.             {
  2869.                 SetPlayerFacingAngle(playerid,angle);
  2870.                 format(string, sizeof(string), "You have changed your angle degree to %f",angle);
  2871.                 SendClientMessage(playerid, GREEN, string);
  2872.             }
  2873.         }
  2874.         else SendClientMessage(playerid, RED, "You're not an admin with the required level.");
  2875.         return 1;
  2876.     }
  2877.  
  2878.     if(strcmp(cmd, "/rangeban", true) == 0) // Range-bans a player with the amount of ranges entered.
  2879.     {
  2880.         if (AccountInfo[playerid][AdminLevel] >= 4)
  2881.         {
  2882.             tmp = strtok(cmdtext,idx);
  2883.             if (!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /rangeban [playername/id] [ranges(2 max)]");
  2884.             new ip[20],ban[128];
  2885.             new giveplayerid = ReturnUser(tmp);
  2886.             if (IsPlayerConnected(giveplayerid))
  2887.             {
  2888.                 tmp = strtok(cmdtext,idx);
  2889.                 if (!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /rangeban [playername/id] [RANGES(2 max)]");
  2890.                 new ranges = strval(tmp);
  2891.                 if (ranges < 0 || ranges > 2) return SendClientMessage(playerid, RED, "Minimum ranges: 0 | Maximum ranges: 2");
  2892.                 if (ranges == 0)
  2893.                 {
  2894.                     Ban(giveplayerid);
  2895.                 }
  2896.                 GetPlayerName(giveplayerid, giveplayername, sizeof giveplayername);
  2897.                 GetPlayerIp(giveplayerid, ip, sizeof ip);
  2898.                 new count = 1;
  2899.                 for(new i = strlen(ip); i > 0; i--)
  2900.                 {
  2901.                     if (ip[i] == '.')
  2902.                     {
  2903.                         if (count == ranges)
  2904.                         {
  2905.                             format(ban, sizeof ban, "banip %s", ip);
  2906.                             SendRconCommand(ban);
  2907.                             break;
  2908.                         }
  2909.                         else count++;
  2910.                     }
  2911.                     else ip[i] = '*';
  2912.                 }
  2913.                 format(ban, sizeof ban, "%s has been banned with the ip '%s'", giveplayername, ip);
  2914.                 SendClientMessage(playerid, GREEN, ban);
  2915.             }
  2916.             else
  2917.             {
  2918.                 format(string, sizeof(string), "%i ist kein Aktiver Spieler..", giveplayerid);
  2919.                 SendClientMessage(playerid, RED, string);
  2920.             }
  2921.         }
  2922.         else SendClientMessage(playerid, RED, "You're not a lead admin !");
  2923.         return 1;
  2924.     }
  2925.  
  2926.     if(strcmp(cmd, "/ip", true) == 0) // Look at the player's IP address
  2927.     {
  2928.         if (AccountInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid))
  2929.         {
  2930.             tmp = strtok(cmdtext, idx);
  2931.             if(!strlen(tmp))
  2932.             {
  2933.                 SendClientMessage(playerid, ORANGE, "Benutze: /ip [playername/id]");
  2934.                 SendClientMessage(playerid, ORANGE, "Funktion: View a player's IP.");
  2935.                 return 1;
  2936.             }
  2937.  
  2938.             new giveplayerid = ReturnUser(tmp);
  2939.             if(IsPlayerConnected(giveplayerid))
  2940.             {
  2941.                 new sstring[256];
  2942.                 new ip[20];
  2943.                 GetPlayerIp(giveplayerid, ip, sizeof ip);
  2944.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  2945.                 format(sstring, sizeof(sstring), "-| %s's IP: %s |-", giveplayername,ip);
  2946.                 SendClientMessage(playerid,LIGHTBLUE, sstring);
  2947.             }
  2948.             else
  2949.             {
  2950.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  2951.                 SendClientMessage(playerid, RED, string);
  2952.             }
  2953.         }
  2954.         else SendClientMessage(playerid, RED, "You are not an admin.");
  2955.         return 1;
  2956.     }
  2957.  
  2958.     if(strcmp(cmd, "/ban", true) == 0) // Bans a player from the server
  2959.     {
  2960.         new reason[128];
  2961.         if (AccountInfo[playerid][AdminLevel] >= 2 || IsPlayerAdmin(playerid))
  2962.         {
  2963.             tmp = strtok(cmdtext, idx);
  2964.             if(!strlen(tmp))
  2965.             {
  2966.                 SendClientMessage(playerid, ORANGE, "Benutze: /ban [playername/id] [reason]");
  2967.                 SendClientMessage(playerid, ORANGE, "Funktion: Will BAN the specified player.");
  2968.                 return 1;
  2969.             }
  2970.  
  2971.             new giveplayerid = ReturnUser(tmp);
  2972.  
  2973.             if (AccountInfo[giveplayerid][AdminLevel] > AccountInfo[playerid][AdminLevel])
  2974.             {
  2975.                 format(string, sizeof(string), "-| [%i]%s tried to ban you! |-",playerid,sendername);
  2976.                 SendClientMessage(giveplayerid, ADMIN_RED,string);
  2977.                 SendClientMessage(playerid, ADMIN_RED, "You are not allowed to ban an admin with a higher level than you!");
  2978.             }
  2979.  
  2980.             else if (giveplayerid != INVALID_PLAYER_ID)
  2981.             {
  2982.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  2983.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  2984.                 reason = bigstrtok(cmdtext, idx);
  2985.                 if(!strlen(reason)) return SendClientMessage(playerid, ORANGE, "Benutze: /ban [playername/id] [reason]");
  2986.                 new ip[20];
  2987.                 printf("ADMIN: Admin %s banned %s. Reason: %s", sendername, giveplayername, reason);
  2988.                 format(string, sizeof(string), "-| Administrator %s banned %s. [Reason: %s ] |-", sendername, giveplayername, reason);
  2989.                 SendClientMessageToAll(ADMIN_RED, string);
  2990.                 GetPlayerIp(giveplayerid, ip, sizeof ip);
  2991.                 format(string, sizeof(string), "-| Banned Player's IP: %s |-", ip);
  2992.                 SendClientMessageToAdmins(ADMIN_RED, string, 1);
  2993.                 AccountInfo[giveplayerid][AdminLevel] = 0; // Resets the banned player's admin level for security reasons
  2994.                 format(reason, sizeof reason, "[%s]%s", sendername, reason);
  2995.                 BanEx(giveplayerid, reason);
  2996.             }
  2997.             else if(giveplayerid == INVALID_PLAYER_ID)
  2998.             {
  2999.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3000.                 SendClientMessage(playerid, RED, string);
  3001.             }
  3002.         }
  3003.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3004.         return 1;
  3005.     }
  3006.  
  3007.     if(strcmp(cmd, "/kick", true) == 0) // Kicks the player from the server
  3008.     {
  3009.         new reason[128];
  3010.         if (AccountInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid))
  3011.         {
  3012.             tmp = strtok(cmdtext, idx);
  3013.             if(!strlen(tmp))
  3014.             {
  3015.                 SendClientMessage(playerid, ORANGE, "Benutze: /kick [playername/id] [reason]");
  3016.                 SendClientMessage(playerid, ORANGE, "Funktion: Will kick the specified player.");
  3017.                 return 1;
  3018.             }
  3019.  
  3020.             new giveplayerid = ReturnUser(tmp);
  3021.             if(giveplayerid != INVALID_PLAYER_ID)
  3022.             {
  3023.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  3024.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  3025.                 reason = bigstrtok(cmdtext, idx);
  3026.                 if(!strlen(reason)) return SendClientMessage(playerid, ORANGE, "Benutze: /kick [playername/id] [reason]");
  3027.                 printf("ADMIN: Admin %s kicked %s. Reason: %s", sendername, giveplayername, reason);
  3028.                 format(string, sizeof(string), "-| Administrator %s kicked %s. [Reason: %s ] |-", sendername, giveplayername, reason);
  3029.                 SendClientMessageToAll(ADMIN_RED, string);
  3030.                 Kick(giveplayerid);
  3031.                 KickLog(string);
  3032.             }
  3033.             else if(giveplayerid == INVALID_PLAYER_ID)
  3034.             {
  3035.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3036.                 SendClientMessage(playerid, RED, string);
  3037.             }
  3038.         }
  3039.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3040.         return 1;
  3041.     }
  3042.  
  3043.     if(strcmp(cmd, "/mute", true) == 0) // Mutes the player from talking in the chat box
  3044.     {
  3045.         new reason[128];
  3046.         if (AccountInfo[playerid][AdminLevel] >= 2 || IsPlayerAdmin(playerid))
  3047.         {
  3048.             tmp = strtok(cmdtext, idx);
  3049.             if(!strlen(tmp))
  3050.             {
  3051.                 SendClientMessage(playerid, ORANGE, "Benutze: /mute [playername/id] [reason]");
  3052.                 SendClientMessage(playerid, ORANGE, "Funktion: Will mute the specified player.");
  3053.                 return 1;
  3054.             }
  3055.  
  3056.             new giveplayerid = ReturnUser(tmp);
  3057.  
  3058.             if(giveplayerid != INVALID_PLAYER_ID)
  3059.             {
  3060.                 if (AccountInfo[giveplayerid][Mute] == 0)
  3061.                 {
  3062.                     GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  3063.                     GetPlayerName(playerid, sendername, sizeof(sendername));
  3064.                     reason = bigstrtok(cmdtext, idx);
  3065.                     if(!strlen(reason)) return SendClientMessage(playerid, ORANGE, "Benutze: /mute [playername/id] [reason]");
  3066.                     printf("ADMIN: Admin %s muted %s. Reason: %s", sendername, giveplayername, reason);
  3067.                     format(string, sizeof(string), "-| Administrator %s muted %s. [Reason: %s ]|-", sendername,giveplayername,reason);
  3068.                     SendClientMessageToAll(ADMIN_RED, string);
  3069.                     AccountInfo[giveplayerid][Mute] = 1;
  3070.                 }
  3071.                 else if (AccountInfo[giveplayerid][Mute] == 1) SendClientMessage(playerid, RED, "Player is already muted!");
  3072.             }
  3073.  
  3074.             else if(giveplayerid == INVALID_PLAYER_ID)
  3075.             {
  3076.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3077.                 SendClientMessage(playerid, RED, string);
  3078.             }
  3079.         }
  3080.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3081.         return 1;
  3082.     }
  3083.  
  3084.     if(strcmp(cmd, "/unmute", true) == 0) // Unmutes a muted player
  3085.     {
  3086.         if (AccountInfo[playerid][AdminLevel] >= 2 || IsPlayerAdmin(playerid))
  3087.         {
  3088.             tmp = strtok(cmdtext, idx);
  3089.             if(!strlen(tmp))
  3090.             {
  3091.                 SendClientMessage(playerid, ORANGE, "Benutze: /unmute [playername/id]");
  3092.                 SendClientMessage(playerid, ORANGE, "Funktion: Will unmute the specified player.");
  3093.                 return 1;
  3094.             }
  3095.  
  3096.             new giveplayerid = ReturnUser(tmp);
  3097.  
  3098.             if(giveplayerid != INVALID_PLAYER_ID)
  3099.             {
  3100.                 if (AccountInfo[giveplayerid][Mute] == 1)
  3101.                 {
  3102.                     GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  3103.                     GetPlayerName(playerid, sendername, sizeof(sendername));
  3104.                     format(string, sizeof(string), "-| Administrator %s unmuted %s |-", sendername,giveplayername);
  3105.                     SendClientMessageToAll(ADMIN_RED, string);
  3106.                     AccountInfo[giveplayerid][Mute] = 0;
  3107.                 }
  3108.                 else if (AccountInfo[giveplayerid][Mute] == 0) SendClientMessage(playerid, RED, "Player isn't muted.");
  3109.             }
  3110.  
  3111.             else if(giveplayerid == INVALID_PLAYER_ID)
  3112.             {
  3113.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3114.                 SendClientMessage(playerid, RED, string);
  3115.             }
  3116.         }
  3117.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3118.         return 1;
  3119.     }
  3120.  
  3121.     if(strcmp(cmd, "/drugs", true) == 0) // Will make the player invinsible until death
  3122.     {
  3123.         if (AccountInfo[playerid][AdminLevel] > 1 || IsPlayerAdmin(playerid))
  3124.         {
  3125.             SetPlayerHealth(playerid,999999999); // max HP
  3126.             Drugs[playerid] = 1;
  3127.             SendClientMessage(playerid, GREEN, "You are now high on drugs...");
  3128.         }
  3129.         else SendClientMessage(playerid, RED, "Drugs are bad for you!");
  3130.         return 1;
  3131.     }
  3132.  
  3133.     if(strcmp(cmd, "/freeze", true) == 0) // Freezes the player. Prevents him from moving
  3134.     {
  3135.         new reason[128];
  3136.         if (AccountInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid))
  3137.         {
  3138.             tmp = strtok(cmdtext, idx);
  3139.             if(!strlen(tmp))
  3140.             {
  3141.                 SendClientMessage(playerid, ORANGE, "Benutze: /freeze [playername/id] [reason]");
  3142.                 SendClientMessage(playerid, ORANGE, "Funktion: Will freeze the specified player.");
  3143.                 return 1;
  3144.             }
  3145.  
  3146.             new giveplayerid = ReturnUser(tmp);
  3147.             if(giveplayerid != INVALID_PLAYER_ID)
  3148.             {
  3149.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  3150.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  3151.                 reason = bigstrtok(cmdtext, idx);
  3152.                 if(!strlen(reason)) return SendClientMessage(playerid, ORANGE, "Benutze: /freeze [playername/id] [reason]");
  3153.                 format(string, sizeof(string), "-| Administrator %s froze %s. [Reason: %s ] |-", sendername, giveplayername, reason);
  3154.                 SendClientMessageToAdmins(ADMIN_RED, string, 1);
  3155.                 TogglePlayerControllable(giveplayerid, false);
  3156.             }
  3157.             else if(giveplayerid == INVALID_PLAYER_ID)
  3158.             {
  3159.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3160.                 SendClientMessage(playerid, RED, string);
  3161.             }
  3162.         }
  3163.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3164.         return 1;
  3165.     }
  3166.     if(strcmp(cmd, "/unfreeze", true) == 0) // Unfreezes the player
  3167.     {
  3168.         if (AccountInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid))
  3169.         {
  3170.             tmp = strtok(cmdtext, idx);
  3171.             if(!strlen(tmp))
  3172.             {
  3173.                 SendClientMessage(playerid, ORANGE, "Benutze: /unfreeze [playername/id]");
  3174.                 SendClientMessage(playerid, ORANGE, "Funktion: Will unfreeze the specified player.");
  3175.                 return 1;
  3176.             }
  3177.  
  3178.             new giveplayerid = ReturnUser(tmp);
  3179.             if(giveplayerid != INVALID_PLAYER_ID)
  3180.             {
  3181.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  3182.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  3183.                 format(string, sizeof(string), "-| Administrator %s unfroze %s |-", sendername,giveplayername);
  3184.                 SendClientMessageToAdmins(ADMIN_RED, string, 1);
  3185.                 TogglePlayerControllable(giveplayerid, true);
  3186.             }
  3187.             else if(giveplayerid == INVALID_PLAYER_ID)
  3188.             {
  3189.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3190.                 SendClientMessage(playerid, RED, string);
  3191.             }
  3192.         }
  3193.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3194.         return 1;
  3195.     }
  3196.  
  3197.     if(strcmp(cmd, "/setname", true) == 0) // Changes a player's name
  3198.     {
  3199.         if (AccountInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid))
  3200.         {
  3201.             tmp = strtok(cmdtext, idx);
  3202.             if(!strlen(tmp))
  3203.             {
  3204.                 SendClientMessage(playerid, ORANGE, "Benutze: /setname [playername/id] [newname]");
  3205.                 SendClientMessage(playerid, ORANGE, "Funktion: Will change the player's current name. ");
  3206.                 return 1;
  3207.             }
  3208.  
  3209.             new giveplayerid = ReturnUser(tmp);
  3210.             if(giveplayerid != INVALID_PLAYER_ID)
  3211.             {
  3212.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  3213.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  3214.                 tmp = strtok(cmdtext, idx);
  3215.                 if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /setname [playername/id] [newname]");
  3216.                 format(string, sizeof(string), "-| Administrator %s renamed %s. [New Name: %s ] |-", sendername, giveplayername, tmp);
  3217.                 SendClientMessageToAdmins(ADMIN_RED, string, 1);
  3218.                 SetPlayerName(giveplayerid, tmp);
  3219.             }
  3220.             else if(giveplayerid == INVALID_PLAYER_ID)
  3221.             {
  3222.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3223.                 SendClientMessage(playerid, RED, string);
  3224.             }
  3225.         }
  3226.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3227.         return 1;
  3228.     }
  3229.  
  3230.     if(strcmp(cmd, "/givecash", true) == 0) // Gives some cash to the player
  3231.     {
  3232.         if (AccountInfo[playerid][AdminLevel] >= 2 || IsPlayerAdmin(playerid))
  3233.         {
  3234.             tmp = strtok(cmdtext, idx);
  3235.             if(!strlen(tmp))
  3236.             {
  3237.                 SendClientMessage(playerid, ORANGE, "Benutze: /givecash [playername/id] [cash]");
  3238.                 SendClientMessage(playerid, ORANGE, "Funktion: Will give the player some cash. ");
  3239.                 return 1;
  3240.             }
  3241.  
  3242.             new giveplayerid = ReturnUser(tmp);
  3243.             if(giveplayerid != INVALID_PLAYER_ID)
  3244.             {
  3245.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  3246.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  3247.                 tmp = strtok(cmdtext, idx);
  3248.                 new cash = strval(tmp);
  3249.                 if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /givecash [playername/id] [cash]");
  3250.                 format(string, sizeof(string), "-| Administrator %s gave %s $%d |-", sendername,giveplayername,cash);
  3251.                 SendClientMessageToAdmins(ADMIN_RED, string, 1);
  3252.                 GivePlayerMoney(giveplayerid, cash);
  3253.             }
  3254.             else if(giveplayerid == INVALID_PLAYER_ID)
  3255.             {
  3256.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3257.                 SendClientMessage(playerid, RED, string);
  3258.             }
  3259.         }
  3260.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3261.         return 1;
  3262.     }
  3263.  
  3264.     if(strcmp(cmd, "/kill", true) == 0) // If an admin, it kills the player you want. If not, suicide.
  3265.     {
  3266.         if (AccountInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid))
  3267.         {
  3268.             tmp = strtok(cmdtext, idx);
  3269.             if(!strlen(tmp))
  3270.             {
  3271.                 SendClientMessage(playerid, ORANGE, "Benutze: /kill [playername/id]");
  3272.                 SendClientMessage(playerid, ORANGE, "Funktion: Will kill the specified player.");
  3273.                 return 1;
  3274.             }
  3275.  
  3276.             new giveplayerid = ReturnUser(tmp);
  3277.             if(giveplayerid != INVALID_PLAYER_ID)
  3278.             {
  3279.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  3280.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  3281.                 format(string, sizeof(string), "-| Administrator %s killed %s |-", sendername,giveplayername);
  3282.                 SendClientMessageToAdmins(ADMIN_RED, string, 1);
  3283.                 SetPlayerHealth(giveplayerid, 0.0);
  3284.             }
  3285.             else if(giveplayerid == INVALID_PLAYER_ID)
  3286.             {
  3287.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3288.                 SendClientMessage(playerid, RED, string);
  3289.             }
  3290.         }
  3291.         else
  3292.         {
  3293.             SendClientMessage(playerid, RED, "You have committed suicide.");
  3294.             SetPlayerHealth(playerid,0.0);
  3295.         }
  3296.         return 1;
  3297.     }
  3298.  
  3299.     if(strcmp(cmd, "/goto", true) == 0) // Teleports to a player
  3300.     {
  3301.         new Float:pX,Float:pY,Float:pZ;
  3302.         if (AccountInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid))
  3303.         {
  3304.             tmp = strtok(cmdtext, idx);
  3305.             if(!strlen(tmp))
  3306.             {
  3307.                 SendClientMessage(playerid, ORANGE, "Benutze: /goto [playername/id]");
  3308.                 SendClientMessage(playerid, ORANGE, "Funktion: Will teleport to the specified player.");
  3309.                 return 1;
  3310.             }
  3311.             new giveplayerid = ReturnUser(tmp);
  3312.             if(giveplayerid != INVALID_PLAYER_ID)
  3313.             {
  3314.                 if (GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  3315.                 {
  3316.                     GetPlayerPos(giveplayerid,pX,pY,pZ);
  3317.                     SetVehiclePos(GetPlayerVehicleID(playerid),pX,pY,pZ+2);
  3318.                 }
  3319.                 else
  3320.                 {
  3321.                     GetPlayerPos(giveplayerid,pX,pY,pZ);
  3322.                     SetPlayerPos(playerid,pX,pY,pZ+2);
  3323.                 }
  3324.                 SetPlayerInterior(playerid,GetPlayerInterior(giveplayerid));
  3325.             }
  3326.             else if(giveplayerid == INVALID_PLAYER_ID)
  3327.             {
  3328.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3329.                 SendClientMessage(playerid, RED, string);
  3330.             }
  3331.         }
  3332.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3333.         return 1;
  3334.     }
  3335.  
  3336.     if(strcmp(cmd, "/get", true) == 0) // Teleports the player to your position
  3337.     {
  3338.         new Float:pX,Float:pY,Float:pZ;
  3339.         if (AccountInfo[playerid][AdminLevel] >= 2 || IsPlayerAdmin(playerid))
  3340.         {
  3341.             tmp = strtok(cmdtext, idx);
  3342.             if(!strlen(tmp))
  3343.             {
  3344.                 SendClientMessage(playerid, ORANGE, "Benutze: /get [playername/id]");
  3345.                 SendClientMessage(playerid, ORANGE, "Funktion: Will teleport the specified player to you.");
  3346.                 return 1;
  3347.             }
  3348.             new giveplayerid = ReturnUser(tmp);
  3349.             if(giveplayerid != INVALID_PLAYER_ID)
  3350.             {
  3351.                 if (GetPlayerState(giveplayerid) == PLAYER_STATE_DRIVER)
  3352.                 {
  3353.                     GetPlayerPos(playerid,pX,pY,pZ);
  3354.                     SetVehiclePos(GetPlayerVehicleID(giveplayerid),pX,pY,pZ+2);
  3355.                 }
  3356.                 else
  3357.                 {
  3358.                     GetPlayerPos(playerid,pX,pY,pZ);
  3359.                     SetPlayerPos(giveplayerid,pX,pY,pZ+2);
  3360.                 }
  3361.                 SetPlayerInterior(giveplayerid,GetPlayerInterior(playerid));
  3362.             }
  3363.             else if(giveplayerid == INVALID_PLAYER_ID)
  3364.             {
  3365.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3366.                 SendClientMessage(playerid, RED, string);
  3367.             }
  3368.         }
  3369.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3370.         return 1;
  3371.     }
  3372.  
  3373.     if(strcmp(cmd, "/teleport", true) == 0) // Teleports the player to the other player
  3374.     {
  3375.         if (AccountInfo[playerid][AdminLevel] >= 4 || IsPlayerAdmin(playerid))
  3376.         {
  3377.             tmp = strtok(cmdtext, idx);
  3378.             if(!strlen(tmp))
  3379.             {
  3380.                 SendClientMessage(playerid, ORANGE, "Benutze: /teleport [playername/id] [targetname/id]");
  3381.                 SendClientMessage(playerid, ORANGE, "Funktion: Will teleport the player to the target.");
  3382.                 return 1;
  3383.             }
  3384.             new giveplayerid = ReturnUser(tmp);
  3385.             if(giveplayerid != INVALID_PLAYER_ID)
  3386.             {
  3387.                 tmp = strtok(cmdtext, idx);
  3388.                 if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /teleport [playername/id] [targetname/id]");
  3389.                 new targetid = ReturnUser(tmp, playerid);
  3390.                 if (targetid == INVALID_PLAYER_ID) return 1;
  3391.                 new Float:tX,Float:tY,Float:tZ;
  3392.                 if (GetPlayerState(giveplayerid) == PLAYER_STATE_DRIVER)
  3393.                 {
  3394.                     GetPlayerPos(targetid,tX,tY,tZ);
  3395.                     SetVehiclePos(GetPlayerVehicleID(giveplayerid),tX,tY,tZ+2);
  3396.                 }
  3397.                 else
  3398.                 {
  3399.                     GetPlayerPos(targetid,tX,tY,tZ);
  3400.                     SetPlayerPos(giveplayerid,tX,tY,tZ+2);
  3401.                 }
  3402.                 SetPlayerInterior(giveplayerid,GetPlayerInterior(targetid));
  3403.             }
  3404.             else if(giveplayerid == INVALID_PLAYER_ID)
  3405.             {
  3406.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3407.                 SendClientMessage(playerid, RED, string);
  3408.             }
  3409.         }
  3410.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3411.         return 1;
  3412.     }
  3413.  
  3414.     if(!strcmp(cmdtext, "//", true, 2)) // Admin chat
  3415.     {
  3416.         if (AccountInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid))
  3417.         {
  3418.             if(!strlen(cmdtext[2])) return SendClientMessage(playerid, ORANGE, "Benutze: //<text>"), SendClientMessage(playerid, ORANGE, "HELP: Example: //Hi");
  3419.             GetPlayerName(playerid, sendername, sizeof(sendername));
  3420.             format(string, sizeof(string), "Admin [%i]%s: %s" ,playerid,sendername, cmdtext[2]);
  3421.             SendClientMessageToAdmins(DARKPINK, string, 1);
  3422.             return 1;
  3423.         }
  3424.         else return SendClientMessage(playerid, RED, "You are not an admin!");
  3425.     }
  3426.  
  3427.     if(strcmp(cmd, "/slap", true) == 0) // Slap a player
  3428.     {
  3429.         new Float:pX,Float:pY,Float:pZ;
  3430.         if (AccountInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid))
  3431.         {
  3432.             tmp = strtok(cmdtext, idx);
  3433.             if(!strlen(tmp))
  3434.             {
  3435.                 SendClientMessage(playerid, ORANGE, "Benutze: /slap [playername/id]");
  3436.                 SendClientMessage(playerid, ORANGE, "Funktion: Will slap the specified player");
  3437.                 return 1;
  3438.             }
  3439.  
  3440.             new giveplayerid = ReturnUser(tmp);
  3441.             if(giveplayerid != INVALID_PLAYER_ID)
  3442.             {
  3443.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  3444.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  3445.                 GetPlayerPos(giveplayerid,pX,pY,pZ);
  3446.                 SetPlayerPos(giveplayerid,pX,pY,pZ+5);
  3447.                 format(string, sizeof(string), "-| Administrator %s slapped %s |-",sendername, giveplayername);
  3448.                 SendClientMessageToAdmins(ADMIN_RED, string, 1);
  3449.             }
  3450.             else if(giveplayerid == INVALID_PLAYER_ID)
  3451.             {
  3452.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3453.                 SendClientMessage(playerid, RED, string);
  3454.             }
  3455.         }
  3456.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3457.         return 1;
  3458.     }
  3459.  
  3460.     if(strcmp(cmd, "/bslap", true) == 0) // Slap a player 2 times higher than /slap
  3461.     {
  3462.         new Float:pX,Float:pY,Float:pZ;
  3463.         if (AccountInfo[playerid][AdminLevel] >= 2 || IsPlayerAdmin(playerid))
  3464.         {
  3465.             tmp = strtok(cmdtext, idx);
  3466.             if(!strlen(tmp))
  3467.             {
  3468.                 SendClientMessage(playerid, ORANGE, "Benutze: /bslap [playername/id]");
  3469.                 SendClientMessage(playerid, ORANGE, "Funktion: Will double slap the specified player");
  3470.                 return 1;
  3471.             }
  3472.  
  3473.             new giveplayerid = ReturnUser(tmp);
  3474.             if(giveplayerid != INVALID_PLAYER_ID)
  3475.             {
  3476.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  3477.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  3478.                 GetPlayerPos(giveplayerid,pX,pY,pZ);
  3479.                 SetPlayerPos(giveplayerid,pX,pY,pZ+10);
  3480.                 format(string, sizeof(string), "-| Administrator %s bitch slapped %s |-",sendername, giveplayername);
  3481.                 SendClientMessageToAdmins(ADMIN_RED, string, 1);
  3482.             }
  3483.             else if(giveplayerid == INVALID_PLAYER_ID)
  3484.             {
  3485.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3486.                 SendClientMessage(playerid, RED, string);
  3487.             }
  3488.         }
  3489.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3490.         return 1;
  3491.     }
  3492.  
  3493.     if(strcmp(cmd, "/disarm", true) == 0) // Reset the player's weapons
  3494.     {
  3495.         if (AccountInfo[playerid][AdminLevel] >= 3 || IsPlayerAdmin(playerid))
  3496.         {
  3497.             tmp = strtok(cmdtext, idx);
  3498.             if(!strlen(tmp))
  3499.             {
  3500.                 SendClientMessage(playerid, ORANGE, "Benutze: /disarm [playername/id]");
  3501.                 SendClientMessage(playerid, ORANGE, "Funktion: Will disarm the player.");
  3502.                 return 1;
  3503.             }
  3504.  
  3505.             new giveplayerid = ReturnUser(tmp);
  3506.             if(giveplayerid != INVALID_PLAYER_ID)
  3507.             {
  3508.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  3509.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  3510.                 ResetPlayerWeapons(giveplayerid);
  3511.                 format(string, sizeof(string), "-| Administrator %s disarmed %s |-",sendername, giveplayername);
  3512.                 SendClientMessageToAdmins(ADMIN_RED,string,1);
  3513.             }
  3514.             else if(giveplayerid == INVALID_PLAYER_ID)
  3515.             {
  3516.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3517.                 SendClientMessage(playerid, RED, string);
  3518.             }
  3519.         }
  3520.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3521.         return 1;
  3522.     }
  3523.  
  3524.     if(strcmp(cmd, "/say", true) == 0) // Publicly says an admin message. Exact same as RCON's 'say' but in a red color.
  3525.     {
  3526.         if (AccountInfo[playerid][AdminLevel] >= 3 || IsPlayerAdmin(playerid))
  3527.         {
  3528.             GetPlayerName(playerid, sendername, sizeof(sendername));
  3529.             new result[128];
  3530.             result = bigstrtok(cmdtext, idx);
  3531.             if(!strlen(result))
  3532.             {
  3533.                 SendClientMessage(playerid, ORANGE, "Benutze: /say [message]");
  3534.                 SendClientMessage(playerid, ORANGE, "Funktion: Will broadcast an admin message.");
  3535.                 return 1;
  3536.             }
  3537.             format(string, sizeof(string), "* Admin: %s", result);
  3538.             SendClientMessageToAll(LIGHTRED, string);
  3539.             printf("%s", string);
  3540.         }
  3541.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3542.         return 1;
  3543.     }
  3544.  
  3545.     if(strcmp(cmd, "/bc", true) == 0 || strcmp(cmd, "/broadcast", true) == 0) // Displays a screen message
  3546.     {
  3547.         if (AccountInfo[playerid][AdminLevel] >= 3 || IsPlayerAdmin(playerid))
  3548.         {
  3549.             GetPlayerName(playerid, sendername, sizeof(sendername));
  3550.             new result[128];
  3551.             result = bigstrtok(cmdtext, idx);
  3552.             if(!strlen(result))
  3553.             {
  3554.                 SendClientMessage(playerid, ORANGE, "Benutze: /bc [message] [time in seconds(if non entered, 5 seconds will be the time by default)]");
  3555.                 SendClientMessage(playerid, ORANGE, "Funktion: Will broadcast a screen message");
  3556.                 return 1;
  3557.             }
  3558.             new time;
  3559.             tmp = strtok(cmdtext, idx);
  3560.             if (!strlen(tmp)) time = 5;
  3561.             else time = strval(tmp);
  3562.             format(string, sizeof(string), "~w~%s", result);
  3563.             GameTextForAll(string, time*1000, 4);
  3564.             printf("%s", string);
  3565.         }
  3566.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3567.         return 1;
  3568.     }
  3569.  
  3570.     if(strcmp(cmd, "/veh", true) == 0) // Spawn a vehicle. Name supported too.
  3571.     {
  3572.         if (AccountInfo[playerid][AdminLevel] >= 2 || IsPlayerAdmin(playerid))
  3573.         {
  3574.             tmp = strtok(cmdtext, idx);
  3575.             if(!strlen(tmp))
  3576.             {
  3577.                 SendClientMessage(playerid, ORANGE, "Benutze: /veh [modelname/id] [color1] [color2]");
  3578.                 return 1;
  3579.             }
  3580.             new car = GetVehicleModelIDFromName(tmp);
  3581.             if (car == -1)
  3582.             {
  3583.                 car = strval(tmp);
  3584.                 if(car < 400 || car > 611) return SendClientMessage(playerid, RED, "Vehicle ID can't be below 400 nor above 611 !");
  3585.             }
  3586.  
  3587.             tmp = strtok(cmdtext, idx);
  3588.             if(!strlen(tmp))
  3589.             {
  3590.                 SendClientMessage(playerid, ORANGE, "Benutze: /veh [modelname/id] [color1] [color2]");
  3591.                 return 1;
  3592.             }
  3593.             new color1 = strval(tmp);
  3594.  
  3595.             tmp = strtok(cmdtext, idx);
  3596.             if(!strlen(tmp))
  3597.             {
  3598.                 SendClientMessage(playerid, ORANGE, "Benutze: /veh [modelname/id] [color1] [color2]");
  3599.                 return 1;
  3600.             }
  3601.             new color2 = strval(tmp);
  3602.  
  3603.             new Float:X,Float:Y,Float:Z,Float:A;
  3604.             GetPlayerPos(playerid, X,Y,Z);
  3605.             GetPlayerFacingAngle(playerid, A);
  3606.             X += (5 * floatsin(-A, degrees));
  3607.             Y += (5 * floatcos(-A, degrees));
  3608.             new carid = CreateVehicle(car, X,Y,Z, 0.0, color1, color2, 600000000);
  3609.             format(string, sizeof(string), "Vehicle %s(%d) spawned.", VehNames[GetVehicleModel(carid)-400], carid);
  3610.             SendClientMessage(playerid, GREEN, string);
  3611.             GetPlayerName(playerid,sendername,sizeof(sendername));
  3612.             format(string, sizeof(string), "-| Administrator %s spawned a vehicle(%d) [ Model: %s ] |-", sendername, carid, VehNames[GetVehicleModel(carid)-400]);
  3613.             SendClientMessageToAdmins(ADMIN_RED, string, 1);
  3614.         }
  3615.         else SendClientMessage(playerid, RED, "You're not an admin with the required level.");
  3616.         return 1;
  3617.     }
  3618.  
  3619.     if(strcmp(cmd, "/pweapons", true) == 0) // Checks a player's weapons
  3620.     {
  3621.         if(IsPlayerAdmin(playerid) || AccountInfo[playerid][AdminLevel] >= 1)
  3622.         {
  3623.             tmp = strtok(cmdtext, idx);
  3624.             if(!strlen(tmp))
  3625.             {
  3626.                 SendClientMessage(playerid, ORANGE, "Benutze: /pweapons [playerid/name]");
  3627.                 return 1;
  3628.             }
  3629.             new giveplayerid = ReturnUser(tmp);
  3630.             if (giveplayerid != INVALID_PLAYER_ID)
  3631.             {
  3632.                 new bullets[12];
  3633.                 new weapons[12];
  3634.                 new weapname[12][20];
  3635.                 for(new i = 0; i < 12; i++)
  3636.                 {
  3637.                     GetPlayerWeaponData(giveplayerid, i+1, weapons[i], bullets[i]);
  3638.                     GetWeaponName(weapons[i], weapname[i], 20);
  3639.                 }
  3640.                 GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  3641.                 format(string,sizeof(string),"        |-        %s's Weapons        -|",giveplayername);
  3642.                 SendClientMessage(playerid,LIGHTGREEN,string);
  3643.                 format(string, sizeof(string),"%s(0) - %s(%d) - %s(%d) - %s(%d) - %s(%d) - %s(%d)",weapname[0],weapname[1],bullets[1],weapname[2],bullets[2],weapname[3],bullets[3],weapname[4],bullets[4],weapname[5],bullets[5]);
  3644.                 SendClientMessage(playerid,YELLOW,string);
  3645.                 format(string,sizeof(string),"%s(%d) - %s(%d) - %s(%d) - %s(0) - %s(0) - %s(0)",weapname[6],bullets[6],weapname[7],bullets[7],weapname[8],bullets[8],weapname[9],weapname[10],weapname[11]);
  3646.                 SendClientMessage(playerid,YELLOW,string);
  3647.             }
  3648.             else SendClientMessage(playerid, RED, "Player is not active.");
  3649.         }
  3650.         else SendClientMessage(playerid, RED, "You're not an admin with the required level.");
  3651.         return 1;
  3652.     }
  3653.  
  3654.     if(strcmp(cmd, "/sethp", true) == 0) // Sets a player's health
  3655.     {
  3656.         if(IsPlayerAdmin(playerid) || AccountInfo[playerid][AdminLevel] >= 3)
  3657.         {
  3658.             tmp = strtok(cmdtext, idx);
  3659.             if(!strlen(tmp))
  3660.             {
  3661.                 SendClientMessage(playerid, ORANGE, "Benutze: /sethp [playerid/name] [health]");
  3662.                 return 1;
  3663.             }
  3664.             new targetid = ReturnUser(tmp);
  3665.             tmp = strtok(cmdtext, idx);
  3666.             new Float:hp = floatstr(tmp);
  3667.             if (targetid != INVALID_PLAYER_ID)
  3668.             {
  3669.                 if (!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /sethp [playerid/name] [health]");
  3670.                 SetPlayerHealth(targetid,hp);
  3671.                 if (hp < 1) Drugs[targetid] = 0;
  3672.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  3673.                 GetPlayerName(targetid, giveplayername, sizeof(giveplayername));
  3674.                 format(string,sizeof(string),"|- Administrator %s has changed %s's HP. [HP: %.2f] -|",sendername,giveplayername,hp);
  3675.                 SendClientMessageToAdmins(ADMIN_RED, string, 1);
  3676.             }
  3677.             else SendClientMessage(playerid, RED, "Player is not active.");
  3678.         }
  3679.         else SendClientMessage(playerid, RED, "You're not an admin with the required level.");
  3680.         return 1;
  3681.     }
  3682.  
  3683.     if (strcmp(cmd, "/logout", true) == 0) // Logs off the admin
  3684.     {
  3685.         if(AccountInfo[playerid][Logged] == 1)
  3686.         {
  3687.             if(AccountInfo[playerid][AdminLevel] >= 1)
  3688.             {
  3689.                 OnPlayerUpdateAccount(playerid);
  3690.                 AccountInfo[playerid][Logged] = 0;
  3691.                 AccountInfo[playerid][AdminLevel] = 0;
  3692.                 SendClientMessage(playerid, GREEN, "You have successfuly logged out.");
  3693.             }
  3694.             else SendClientMessage(playerid, RED, "You're not an admin with the required level.");
  3695.         }
  3696.         else return SendClientMessage(playerid, RED, "You're not logged in! ( /login [password] )");
  3697.         return 1;
  3698.     }
  3699.  
  3700.     if(strcmp(cmd, "/warn", true) == 0) // Warns a player. 3 warnings = auto-ban
  3701.     {
  3702.         if (AccountInfo[playerid][AdminLevel] >= 3)
  3703.         {
  3704.             tmp = strtok(cmdtext, idx);
  3705.             if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /warn [playername/id] [reason]");
  3706.             new targetid = ReturnUser(tmp);
  3707.             if(IsPlayerConnected(targetid))
  3708.             {
  3709.                 if(targetid != INVALID_PLAYER_ID)
  3710.                 {
  3711.                     new reason[128];
  3712.                     reason = bigstrtok(cmdtext, idx);
  3713.                     if(!strlen(reason)) return SendClientMessage(playerid, ORANGE, "Benutze: /warn [playername/id] [reason]");
  3714.                     new sstring[128];
  3715.                     GetPlayerName(targetid, giveplayername, sizeof(giveplayername));
  3716.                     GetPlayerName(playerid, sendername, sizeof(sendername));
  3717.                     AccountInfo[targetid][Warns] += 1;
  3718.                     format(string, sizeof(string), "You got warned by Admin %s. Reason: %s", sendername, reason);
  3719.                     SendClientMessage(targetid, ADMIN_RED, string);
  3720.                     format(string, sizeof(string), "-| Administrator %s warned %s. [Reason: %s ] |-", sendername,giveplayername, reason);
  3721.                     SendClientMessageToAdmins(ADMIN_RED,string,1);
  3722.                     format(string, sizeof(string), "-| %s's warnings: %d |-",giveplayername, AccountInfo[targetid][Warns]);
  3723.                     SendClientMessageToAdmins(ADMIN_RED,string,1);
  3724.                     if (AccountInfo[targetid][Warns] == 1) strmid(AccountInfo[targetid][WarnReason1], reason, 0, strlen(reason), 128);
  3725.                     else if (AccountInfo[targetid][Warns] == 2) strmid(AccountInfo[targetid][WarnReason2], reason, 0, strlen(reason), 128);
  3726.                     else if (AccountInfo[targetid][Warns] == 3) strmid(AccountInfo[targetid][WarnReason3], reason, 0, strlen(reason), 128);
  3727.                     SendClientMessage(targetid, RED, "3 Warnings = Auto-Ban!");
  3728.                     if(AccountInfo[targetid][Warns] >= 3)
  3729.                     {
  3730.                         new ip[128];
  3731.                         format(string, sizeof(string), "-| Administrator %s banned %s. [Reason: 3 Warnings...] |-", sendername,giveplayername);
  3732.                         BanLog(string);
  3733.                         SendClientMessageToAll(ADMIN_RED, string);
  3734.                         for(new i = 0; i < 3; i++)
  3735.                         {
  3736.                             if (i == 0) format(string, sizeof (string), "-| Reason #%d: %s |-", i+1, AccountInfo[targetid][WarnReason1]);
  3737.                             else if (i == 1) format(string, sizeof (string), "-| Reason #%d: %s |-", i+1, AccountInfo[targetid][WarnReason2]);
  3738.                             else if (i == 2) format(string, sizeof (string), "-| Reason #%d: %s |-", i+1, AccountInfo[targetid][WarnReason3]);
  3739.                             SendClientMessageToAll(ADMIN_RED, string);
  3740.                         }
  3741.                         GetPlayerIp(targetid,ip,128);
  3742.                         format(sstring, sizeof(sstring), "-| Banned Player's IP: %s |-", ip);
  3743.                         SendClientMessageToAdmins(ADMIN_RED, sstring,1);
  3744.                         AccountInfo[targetid][AdminLevel]= 0;
  3745.                         AccountInfo[targetid][Warns] = 0;
  3746.                         format(AccountInfo[targetid][WarnReason1], 128, "NONE");
  3747.                         format(AccountInfo[targetid][WarnReason2], 128, "NONE");
  3748.                         format(AccountInfo[targetid][WarnReason3], 128, "NONE");
  3749.                         Ban(giveplayerid);
  3750.                         return 1;
  3751.                     }
  3752.                 }
  3753.                 else
  3754.                 {
  3755.                     format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3756.                     SendClientMessage(playerid, RED, string);
  3757.                 }
  3758.             }
  3759.             else
  3760.             {
  3761.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3762.                 SendClientMessage(playerid, RED, string);
  3763.             }
  3764.         }
  3765.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3766.         return 1;
  3767.     }
  3768.  
  3769.     if(strcmp(cmd, "/pstats", true) == 0) // Views the player's stats
  3770.     {
  3771.         if(IsPlayerAdmin(playerid) || AccountInfo[playerid][AdminLevel] >= 1)
  3772.         {
  3773.             tmp = strtok(cmdtext, idx);
  3774.             if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /pstats [playername/id]");
  3775.             new targetid = ReturnUser(tmp);
  3776.             if (targetid != INVALID_PLAYER_ID)
  3777.             {
  3778.                 new Float:health,Float:armor;
  3779.                 GetPlayerHealth(targetid,health);
  3780.                 GetPlayerArmour(targetid,armor);
  3781.                 GetPlayerName(targetid, giveplayername, sizeof(giveplayername));
  3782.                 format(string, sizeof(string), "Stats of %s: Health: '%.2f' - Cash: '$%d' - Warnings: '%d' - Armor: '%.2f'",giveplayername, health,GetPlayerMoney(targetid),AccountInfo[targetid][Warns],armor);
  3783.                 SendClientMessage(playerid,PURPLE,string);
  3784.                 if(AccountInfo[giveplayerid][Logged] == 1) SendClientMessage(playerid, PURPLE, "Logged In: Yes");
  3785.                 else if(AccountInfo[giveplayerid][Logged] == 0) SendClientMessage(playerid, PURPLE, "Logged In: No");
  3786.                 SendClientMessage(playerid,YELLOW,"Type /pweapons [playername/id] to check the player's weapons");
  3787.             }
  3788.             else SendClientMessage(playerid, RED, "Player is not active.");
  3789.         }
  3790.         else SendClientMessage(playerid, RED, "You're not an admin with the required level.");
  3791.         return 1;
  3792.     }
  3793.  
  3794.     if(strcmp(cmd, "/fuck", true) == 0) // Sends a player in the air and explodes
  3795.     {
  3796.         new Float:pX,Float:pY,Float:pZ;
  3797.         new Float:X,Float:Y,Float:Z;
  3798.         if (AccountInfo[playerid][AdminLevel] >= 4 || IsPlayerAdmin(playerid))
  3799.         {
  3800.             tmp = strtok(cmdtext, idx);
  3801.             if(!strlen(tmp))
  3802.             {
  3803.                 SendClientMessage(playerid, ORANGE, "Benutze: /fuck [playerid]");
  3804.                 SendClientMessage(playerid, ORANGE, "Funktion: Will fuck up a player.");
  3805.                 return 1;
  3806.             }
  3807.  
  3808.             new targetid = ReturnUser(tmp);
  3809.             if(targetid != INVALID_PLAYER_ID)
  3810.             {
  3811.                 GetPlayerName(targetid, giveplayername, sizeof(giveplayername));
  3812.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  3813.                 GetPlayerPos(targetid,pX,pY,pZ);
  3814.                 CreateExplosion(X,Y,Z+50,2,5.0);
  3815.                 SetPlayerPos(targetid,pX,pY,pZ+50);
  3816.                 format(string, sizeof(string), "-| Administrator %s fucked %s up |-",sendername, giveplayername);
  3817.                 SendClientMessageToAdmins(ADMIN_RED,string,1);
  3818.                 SendClientMessage(targetid, RED, "You've been fucked up by an admin.");
  3819.             }
  3820.             else if(giveplayerid == INVALID_PLAYER_ID)
  3821.             {
  3822.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3823.                 SendClientMessage(playerid, RED, string);
  3824.             }
  3825.         }
  3826.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3827.         return 1;
  3828.     }
  3829.  
  3830.     if(strcmp(cmd, "/giveweapon", true) == 0) // Gives a weapon to a player
  3831.     {
  3832.         if (AccountInfo[playerid][AdminLevel] >= 3 || IsPlayerAdmin(playerid))
  3833.         {
  3834.             tmp = strtok(cmdtext, idx);
  3835.             if(!strlen(tmp))
  3836.             {
  3837.                 SendClientMessage(playerid, ORANGE, "Benutze: /giveweapon [playername/id] [weaponid] [ammo]");
  3838.                 return 1;
  3839.             }
  3840.             new gun;
  3841.             new ammo;
  3842.             new targetid = ReturnUser(tmp);
  3843.             tmp = strtok(cmdtext, idx);
  3844.             gun = strval(tmp);
  3845.             if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /giveweapon [playername/id] [weaponid] [ammo]");
  3846.             tmp = strtok(cmdtext, idx);
  3847.             ammo = strval(tmp);
  3848.             if(targetid != INVALID_PLAYER_ID)
  3849.             {
  3850.                 new weap[50];
  3851.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  3852.                 GetPlayerName(targetid, giveplayername, sizeof(giveplayername));
  3853.                 GivePlayerWeapon(targetid, gun, ammo);
  3854.                 GetWeaponName(gun, weap, sizeof weap);
  3855.                 format(string, sizeof(string), "-| Administrator %s gave a weapon(%s) to %s |-",sendername, weap, giveplayername);
  3856.                 SendClientMessageToAdmins(ADMIN_RED,string,1);
  3857.             }
  3858.             else if(targetid == INVALID_PLAYER_ID)
  3859.             {
  3860.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", targetid);
  3861.                 SendClientMessage(playerid, RED, string);
  3862.             }
  3863.         }
  3864.         else SendClientMessage(playerid, RED, "You are not an admin with the required level!");
  3865.         return 1;
  3866.     }
  3867.     if(strcmp(cmd, "/crash", true) == 0) // Crashes a player's client
  3868.     {
  3869.         if (AccountInfo[playerid][AdminLevel] >= 5 || IsPlayerAdmin(playerid))
  3870.         {
  3871.             tmp = strtok(cmdtext, idx);
  3872.             if(!strlen(tmp))
  3873.             {
  3874.                 SendClientMessage(playerid, ORANGE, "Benutze: /crash [playername/id]");
  3875.                 SendClientMessage(playerid, ORANGE, "Funktion: Will crash a player.");
  3876.                 return 1;
  3877.             }
  3878.             new Float:X,Float:Y,Float:Z;
  3879.             new targetid = ReturnUser(tmp);
  3880.             if(IsPlayerConnected(targetid))
  3881.             {
  3882.                 GetPlayerPos(giveplayerid,X,Y,Z);
  3883.                 new objectcrash = CreatePlayerObject(targetid,666666,X,Y,Z,0,0,0); // double-devil has spoken
  3884.                 SendClientMessage(playerid,GREEN, "Player successfuly crashed.");
  3885.                 DestroyPlayerObject(targetid, objectcrash);
  3886.             }
  3887.             else if (!IsPlayerConnected(giveplayerid))
  3888.             {
  3889.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", targetid);
  3890.                 SendClientMessage(playerid, RED, string);
  3891.             }
  3892.         }
  3893.         else SendClientMessage(playerid, RED, "You're not a lead admin.");
  3894.         return 1;
  3895.     }
  3896.  
  3897.     if(strcmp(cmd, "/setwarn", true) == 0) // Sets the player's warnings
  3898.     {
  3899.         if (AccountInfo[playerid][AdminLevel] >= 4 || IsPlayerAdmin(playerid))
  3900.         {
  3901.             tmp = strtok(cmdtext, idx);
  3902.             if(!strlen(tmp))
  3903.             {
  3904.                 SendClientMessage(playerid, ORANGE, "Benutze: /setwarn [playername/id] [warning]");
  3905.                 SendClientMessage(playerid, ORANGE, "Funktion: Will set a certain player's warning.");
  3906.                 return 1;
  3907.             }
  3908.             new targetid = ReturnUser(tmp);
  3909.             if(targetid != INVALID_PLAYER_ID)
  3910.             {
  3911.                 GetPlayerName(targetid, giveplayername, sizeof(giveplayername));
  3912.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  3913.                 tmp = strtok(cmdtext, idx);
  3914.                 new warnings = strval(tmp);
  3915.                 if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /setwarn [playername/id] [warning]");
  3916.                 AccountInfo[targetid][Warns] = warnings;
  3917.                 format(string, sizeof(string), "Admin %s changed your warnings to %d", sendername, warnings);
  3918.                 SendClientMessage(targetid, GREEN, string);
  3919.                 SendClientMessage(targetid, RED, "3 Warnings = Auto-Ban! Ask an admin to check how many warnings you have");
  3920.                 format(string, sizeof(string), "-| Administrator %s changed %s's warnings. [Warnings: %d ] |-",sendername,giveplayername, AccountInfo[giveplayerid][Warns]);
  3921.                 SendClientMessageToAdmins(ADMIN_RED,string,1);
  3922.             }
  3923.             else if(giveplayerid == INVALID_PLAYER_ID)
  3924.             {
  3925.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  3926.                 SendClientMessage(playerid, RED, string);
  3927.             }
  3928.         }
  3929.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3930.         return 1;
  3931.     }
  3932.  
  3933.     if(strcmp(cmd, "/an", true) == 0 || strcmp(cmd, "/announce", true) == 0) // Broadcasts an 'announcement' message.
  3934.     {
  3935.         if (AccountInfo[playerid][AdminLevel] >= 4 || IsPlayerAdmin(playerid))
  3936.         {
  3937.             GetPlayerName(playerid, sendername, sizeof(sendername));
  3938.             new result[128];
  3939.             result = bigstrtok(cmdtext, idx);
  3940.             if(!strlen(result))
  3941.             {
  3942.                 SendClientMessage(playerid, ORANGE, "Benutze: /(an)nounce [message]");
  3943.                 SendClientMessage(playerid, ORANGE, "Funktion: Will broadcast an announcement.");
  3944.                 return 1;
  3945.             }
  3946.             format(string, sizeof(string), "%s", result);
  3947.             SendClientMessageToAll(AQUAGREEN, string);
  3948.             printf("Announcement by %s: %s", sendername, string);
  3949.         }
  3950.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3951.         return 1;
  3952.     }
  3953.  
  3954.     if(strcmp(cmd, "/superpunch", true) == 0) // Triggers an explosion when you use the punch key
  3955.     {
  3956.         if (AccountInfo[playerid][AdminLevel] >= 4 || IsPlayerAdmin(playerid))
  3957.         {
  3958.             tmp = strtok(cmdtext,idx);
  3959.             if(!strlen(tmp))
  3960.             {
  3961.                 SendClientMessage(playerid, ORANGE, "Benutze: /superpunch [on/off]");
  3962.                 SendClientMessage(playerid, ORANGE, "Funktion: Will give you the power of Super Punch. When pressing 'PUNCH' button, you will explode but will live.");
  3963.             }
  3964.             else if(strcmp(tmp,"on",true) == 0)
  3965.             {
  3966.                 SuperPunch[playerid] = 1;
  3967.                 SendClientMessage(playerid,GREEN,"You are now blessed with SUPER PUNCH! Go knock someone out.");
  3968.             }
  3969.             else if(strcmp(tmp,"off",true) == 0)
  3970.             {
  3971.                 SuperPunch[playerid] = 0;
  3972.                 SendClientMessage(playerid,GREEN,"Your super punch is now disabled.");
  3973.             }
  3974.         }
  3975.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  3976.         return 1;
  3977.     }
  3978.  
  3979.     if (strcmp(cmd, "/superpunchp", true) == 0) // Gives the Super Punch ability to a player
  3980.     {
  3981.         new tmp2[128];
  3982.         if (AccountInfo[playerid][AdminLevel] > 4 || IsPlayerAdmin(playerid))
  3983.         {
  3984.             tmp = strtok(cmdtext,idx);
  3985.             if(!strlen(tmp))
  3986.             {
  3987.                 SendClientMessage(playerid,ORANGE,"Benutze: /superpunchp [playername/id] [on/off]");
  3988.                 SendClientMessage(playerid,ORANGE,"Funktion: Will give the player the power of SuperPunch.");
  3989.             }
  3990.             new targetid = ReturnUser(tmp);
  3991.             if(targetid != INVALID_PLAYER_ID)
  3992.             {
  3993.                 tmp2 = strtok(cmdtext,idx);
  3994.                 if(strcmp(tmp2,"on",true) == 0)
  3995.                 {
  3996.                     GetPlayerName(playerid, sendername, sizeof(sendername));
  3997.                     GetPlayerName(targetid, giveplayername, sizeof(giveplayername));
  3998.                     SuperPunch[targetid] = 1;
  3999.                     format(string, sizeof(string), "Admin %s blessed you with the power of Super Punch !", sendername);
  4000.                     SendClientMessage(targetid,GREEN,string);
  4001.                     format(string, sizeof(string), "-| Administrator %s blessed %s with the power of Super Punch |-", sendername,giveplayername);
  4002.                     SendClientMessageToAdmins(ADMIN_RED,string,1);
  4003.                 }
  4004.                 else if(strcmp(tmp2,"off",true) == 0)
  4005.                 {
  4006.                     format(string, sizeof(string), "Admin %s removed your Super Punch power.", sendername);
  4007.                     SendClientMessage(targetid,RED,string);
  4008.                     SuperPunch[targetid] = 0;
  4009.                 }
  4010.             }
  4011.             else if(giveplayerid == INVALID_PLAYER_ID)
  4012.             {
  4013.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  4014.                 SendClientMessage(playerid,RED,string);
  4015.             }
  4016.         }
  4017.         else SendClientMessage(playerid,RED,"You are not an admin with the required level.");
  4018.         return 1;
  4019.     }
  4020.  
  4021.     if(strcmp(cmd, "/viewcmds", true) == 0) // Views unknown commands and commands mentioned in 'ViewCommands' variable entered by players
  4022.     {
  4023.         if (AccountInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid))
  4024.         {
  4025.             tmp = strtok(cmdtext,idx);
  4026.             if(!strlen(tmp))
  4027.             {
  4028.                 SendClientMessage(playerid, ORANGE, "Benutze: /viewcmds [on/off]");
  4029.                 SendClientMessage(playerid, ORANGE, "Funktion: Will see the players typing some commands and wrong commands.");
  4030.             }
  4031.             else if(strcmp(tmp,"on",true) == 0)
  4032.             {
  4033.                 ViewCmds[playerid] = 1;
  4034.                 SendClientMessage(playerid,GREEN,"You can know view players typing some commands and wrong commands.");
  4035.             }
  4036.             else if(strcmp(tmp,"off",true) == 0)
  4037.             {
  4038.                 ViewCmds[playerid] = 0;
  4039.                 SendClientMessage(playerid,GREEN,"You can no longer view players typing some commands and wrong commands.");
  4040.             }
  4041.         }
  4042.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  4043.         return 1;
  4044.     }
  4045.  
  4046.     if(strcmp(cmd, "/jail", true) == 0) // Jails a player
  4047.     {
  4048.         if (AccountInfo[playerid][AdminLevel] >= 2)
  4049.         {
  4050.             tmp = strtok(cmdtext, idx);
  4051.             if(!strlen(tmp))
  4052.             {
  4053.                 SendClientMessage(playerid, ORANGE, "Benutze: /jail [playername/id] [reason]");
  4054.                 return 1;
  4055.             }
  4056.             new targetid = ReturnUser(tmp);
  4057.             if(IsPlayerConnected(targetid))
  4058.             {
  4059.                 if(targetid != INVALID_PLAYER_ID)
  4060.                 {
  4061.                     if(AccountInfo[giveplayerid][Jail] == 0)
  4062.                     {
  4063.                         GetPlayerName(targetid, giveplayername, sizeof(giveplayername));
  4064.                         GetPlayerName(playerid, sendername, sizeof(sendername));
  4065.                         new reason[128];
  4066.                         reason = bigstrtok(cmdtext, idx);
  4067.                         if(!strlen(reason)) return SendClientMessage(playerid, ORANGE, "Benutze: /jail [playername/id] [reason]");
  4068.                         format(string, sizeof(string), "You got jailed by Admin %s. Reason: %s", sendername, reason);
  4069.                         SendClientMessage(targetid, ADMIN_RED, string);
  4070.                         format(string, sizeof(string), "-| Administrator %s jailed %s. [ Reason: %s ] |-",sendername,giveplayername, reason);
  4071.                         SendClientMessageToAll(ADMIN_RED,string);
  4072.                         AccountInfo[targetid][Jail] = 1;
  4073.                         OnPlayerJailed(targetid);
  4074.                         return 1;
  4075.                     }
  4076.                     else SendClientMessage(playerid, RED, "Player is already jailed!");
  4077.                 }
  4078.                 else
  4079.                 {
  4080.                     format(string, sizeof(string), "%d ist kein Aktiver Spieler..", targetid);
  4081.                     SendClientMessage(playerid, RED, string);
  4082.                 }
  4083.             }
  4084.             else
  4085.             {
  4086.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", targetid);
  4087.                 SendClientMessage(playerid, RED, string);
  4088.             }
  4089.         }
  4090.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  4091.         return 1;
  4092.     }
  4093.  
  4094.     if(strcmp(cmd, "/unjail", true) == 0) // Unjails a player
  4095.     {
  4096.         if (AccountInfo[playerid][AdminLevel] >= 2 || IsPlayerAdmin(playerid))
  4097.         {
  4098.             tmp = strtok(cmdtext, idx);
  4099.             if(!strlen(tmp))
  4100.             {
  4101.                 SendClientMessage(playerid, ORANGE, "Benutze: /unjail [playername/id]");
  4102.                 return 1;
  4103.             }
  4104.  
  4105.             new targetid = ReturnUser(tmp);
  4106.             if(targetid != INVALID_PLAYER_ID)
  4107.             {
  4108.                 if(AccountInfo[giveplayerid][Jail] == 1)
  4109.                 {
  4110.                     GetPlayerName(targetid, giveplayername, sizeof(giveplayername));
  4111.                     GetPlayerName(playerid, sendername, sizeof(sendername));
  4112.                     format(string, sizeof(string), "-| Administrator %s unjailed %s |-",sendername, giveplayername);
  4113.                     SendClientMessageToAll(ADMIN_RED,string);
  4114.                     AccountInfo[targetid][Jail] = 0;
  4115.                     OnPlayerUnjailed(targetid);
  4116.                 }
  4117.                 else SendClientMessage(playerid, RED, "Player is not jailed!");
  4118.             }
  4119.             else
  4120.             {
  4121.                 format(string, sizeof(string), "%d ist kein Aktiver Spieler..", targetid);
  4122.                 SendClientMessage(playerid, RED, string);
  4123.             }
  4124.         }
  4125.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  4126.         return 1;
  4127.     }
  4128.  
  4129.     if(strcmp(cmd, "/gotoveh", true) == 0) // Teleports to a vehicle's position
  4130.     {
  4131.         tmp = strtok(cmdtext, idx);
  4132.         if(!strlen(tmp))
  4133.         {
  4134.             SendClientMessage(playerid, ORANGE, "Benutze: /gotoveh [vehicleid]");
  4135.             return 1;
  4136.         }
  4137.         new car = strval(tmp);
  4138.         if (AccountInfo[playerid][AdminLevel] >= 3)
  4139.         {
  4140.             new Float:vx,Float:vy,Float:vz;
  4141.             GetVehiclePos(car,vx,vy,vz);
  4142.             if (GetPlayerState(playerid) == 2)
  4143.                 SetVehiclePos(GetPlayerVehicleID(playerid),vx,vy+2,vz);
  4144.             else
  4145.                 SetPlayerPos(playerid,vx,vy,vz+1);
  4146.             SetPlayerInterior(playerid,0);
  4147.             format(string,256,"You have teleported to vehicle id %d(%s)",car, VehNames[GetVehicleModel(car)-400]);
  4148.             SendClientMessage(playerid,GREEN,string);
  4149.         }
  4150.         else SendClientMessage(playerid,RED,"You're not an admin with the required level");
  4151.         return 1;
  4152.     }
  4153.     if(!strcmp(cmdtext, "/aclearchat", true)) // Clears the chatbox for everyone
  4154.     {
  4155.         if(AccountInfo[playerid][AdminLevel] >= 3 || IsPlayerAdmin(playerid))
  4156.         {
  4157.             for(new chat = 0; chat <= 50; chat++) SendClientMessageToAll(GREEN, " ");
  4158.             GetPlayerName(playerid, sendername, 20);
  4159.             format(string, 256, "-| Administrator %s cleared the chat |-", sendername);
  4160.             SendClientMessageToAll(ADMIN_RED, string);
  4161.             return 1;
  4162.         }
  4163.         else SendClientMessage(playerid, RED, "You are not an admin with the required level.");
  4164.         return 1;
  4165.     }
  4166.     if(strcmp(cmd, "/hide", true) == 0) // Hides you from the admin list
  4167.     {
  4168.         if (AccountInfo[playerid][AdminLevel] >= 4)
  4169.         {
  4170.            Hide[playerid] = 1;
  4171.            SendClientMessage(playerid,GREEN,"|- You're now hidden from the admin list -|");
  4172.         }
  4173.         return 1;
  4174.     }
  4175.     if(strcmp(cmd, "/unhide", true) == 0)
  4176.     {
  4177.         if (AccountInfo[playerid][AdminLevel] >= 4) // Unhides you from the admin list
  4178.         {
  4179.             if (Hide[playerid] != 1) return SendClientMessage(playerid,RED,"You're not hidden in the admin list!");
  4180.             Hide[playerid] = 0;
  4181.             SendClientMessage(playerid,GREEN,"|- You're now visible in the admin list -|");
  4182.         }
  4183.         return 1;
  4184.     }
  4185.  
  4186.     if(strcmp(cmd, "/virtual", true) == 0) // Sets the player's virtual world
  4187.     {
  4188.         if(IsPlayerAdmin(playerid) || AccountInfo[playerid][AdminLevel] >= 2)
  4189.         {
  4190.             tmp = strtok(cmdtext, idx);
  4191.             if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /virtual [playerid/name] [virtual world (0-255)]");
  4192.             new targetid = ReturnUser(tmp);
  4193.             tmp = strtok(cmdtext, idx);
  4194.             new v = strval(tmp);
  4195.             if (targetid != INVALID_PLAYER_ID)
  4196.             {
  4197.                 if (!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /virtual [playerid/name] [virtual world (0-255)]");
  4198.                 SetPlayerVirtualWorld(targetid,v);
  4199.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  4200.                 GetPlayerName(targetid, giveplayername, sizeof(giveplayername));
  4201.                 format(string,sizeof(string),"|- Administrator %s has changed %s's Virtual World. [World: %d] -|",sendername,giveplayername,v);
  4202.                 SendClientMessageToAdmins(ADMIN_RED,string,1);
  4203.             }
  4204.             else SendClientMessage(playerid, RED, "Player is not active.");
  4205.         }
  4206.         else SendClientMessage(playerid, RED, "You're not an admin with the required level.");
  4207.         return 1;
  4208.     }
  4209.  
  4210.     if(strcmp(cmd,"/count", true) == 0) // Starts a count down
  4211.     {
  4212.         tmp = strtok(cmdtext, idx);
  4213.         new count = strval(tmp);
  4214.         if (!strlen(tmp)) count = 5;
  4215.         if (AccountInfo[playerid][AdminLevel] < 1) return SendClientMessage(playerid,RED,"You're not an admin");
  4216.         if (Count > 0) return SendClientMessage(playerid, RED, "Countdown is already in progress.");
  4217.         GetPlayerName(playerid, sendername, sizeof(sendername));
  4218.         format(string,sizeof(string),"|- Administrator %s started a countdown from %d -|", sendername, count);
  4219.         SendClientMessageToAll(LIGHTGREEN, string);
  4220.         Count = count;
  4221.         CountDown();
  4222.         return 1;
  4223.     }
  4224.  
  4225.     if(strcmp(cmd, "/view", true) == 0) // Spectates a player
  4226.     {
  4227.         if (AccountInfo[playerid][AdminLevel] < 1) return SendClientMessage(playerid,RED,"You're not an admin !");
  4228.         tmp = strtok(cmdtext, idx);
  4229.         if(!strlen(tmp))
  4230.         {
  4231.             SendClientMessage(playerid, ORANGE, "|__________________________________|");
  4232.             SendClientMessage(playerid, ORANGE, "Benutze: /view [playerid]");
  4233.             SendClientMessage(playerid, ORANGE, "Funktion: Will spectate a player.");
  4234.             SendClientMessage(playerid, ORANGE, "HELP: /view off to stop spectating");
  4235.             SendClientMessage(playerid, ORANGE, "|__________________________________|");
  4236.             return 1;
  4237.         }
  4238.         new targetid = ReturnUser(tmp);
  4239.         if (giveplayerid != INVALID_PLAYER_ID)
  4240.         {
  4241.             if (AccountInfo[playerid][AdminLevel] < 1) return SendClientMessage(playerid,RED,"You're not an admin !");
  4242.             TogglePlayerSpectating(playerid, 1);
  4243.             SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(targetid));
  4244.             SetPlayerInterior(playerid,GetPlayerInterior(targetid));
  4245.             if (IsPlayerInAnyVehicle(targetid)) PlayerSpectateVehicle(playerid, GetPlayerVehicleID(targetid));
  4246.             else PlayerSpectatePlayer(playerid, targetid);
  4247.             SendClientMessage(playerid, ORANGE, "HELP: '/view off' to stop spectating");
  4248.         }
  4249.         else if(strcmp(tmp, "off", true) == 0)
  4250.         {
  4251.             TogglePlayerSpectating(playerid, 0);
  4252.             SetPlayerVirtualWorld(playerid,0);
  4253.         }
  4254.         else
  4255.         {
  4256.             format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  4257.             SendClientMessage(playerid, RED, string);
  4258.         }
  4259.         return 1;
  4260.     }
  4261.  
  4262.     if(strcmp(cmd, "/blockpm", true) == 0) // Blocks PMs
  4263.     {
  4264.         if (AccountInfo[playerid][AdminLevel] >= 5)
  4265.         {
  4266.             if (PMBlock[playerid] == true)
  4267.             {
  4268.                 PMBlock[playerid] = false;
  4269.                 SendClientMessage(playerid, GREEN, "|- Private messages BLOCKED -|");
  4270.                 return 1;
  4271.             }
  4272.             if (PMBlock[playerid] == false)
  4273.             {
  4274.                 PMBlock[playerid] = true;
  4275.                 SendClientMessage(playerid, GREEN, "|- Private messages UNBLOCKED -|");
  4276.                 return 1;
  4277.             }
  4278.         }
  4279.         else return SendClientMessage(playerid, RED, "You're not a lead admin!");
  4280.     }
  4281.  
  4282.     if(!strcmp(cmd, "/seifocalypse", true)) // Launches explosion(s) in front of the player(it follow the previous explosion so it goes straight) as many times has he wants
  4283.     {
  4284.         if (AccountInfo[playerid][AdminLevel] >= 5 || IsPlayerAdmin(playerid))
  4285.         {
  4286.             tmp = strtok(cmdtext, idx);
  4287.             if (!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /seifocalypse [explosions]");
  4288.             new Float:X,Float:Y,Float:Z,Float:A;
  4289.             GetPlayerPos(playerid, X,Y,Z);
  4290.             GetPlayerFacingAngle(playerid, A);
  4291.             Nuke[playerid] = 1;
  4292.             SetTimerEx("NukeBlast", 200, 0, "ddffff",playerid, strval(tmp), X, Y, Z, A);
  4293.         }
  4294.         else return SendClientMessage(playerid, RED, "You're not a lead admin!");
  4295.         return 1;
  4296.     }
  4297.  
  4298.     if(!strcmp(cmd, "/missile", true)) // Spawns a missile 50 Z higher than player's and drops it to the ground, toggling a huge explosion
  4299.     {
  4300.         if (AccountInfo[playerid][AdminLevel] >= 5 || IsPlayerAdmin(playerid))
  4301.         {
  4302.             if (IsValidObject(Missile[playerid])) return SendClientMessage(playerid, RED, "You already dropped a missile that's currently in progress of exploding");
  4303.             new Float:X,Float:Y,Float:Z;
  4304.             GetPlayerPos(playerid, X,Y,Z);
  4305.             Missile[playerid] = CreateObject(3786, X, Y, Z+50, 357.6293, 272.3375, 6.8755);
  4306.             MoveObject(Missile[playerid], X, Y, Z, 20.0);
  4307.         }
  4308.         else return SendClientMessage(playerid, RED, "You're not a lead admin!");
  4309.         return 1;
  4310.     }
  4311.  
  4312.     if (!strcmp(cmd, "/push", true)) // Pushes a player back. Player gets pushed back in motions
  4313.     {
  4314.         if(IsPlayerAdmin(playerid) || AccountInfo[playerid][AdminLevel] >= 3)
  4315.         {
  4316.             tmp = strtok(cmdtext, idx);
  4317.             if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /push [playername/id]");
  4318.             new targetid = ReturnUser(tmp);
  4319.             if (targetid != INVALID_PLAYER_ID)
  4320.             {
  4321.                 PushPlayer(targetid, 20, true);
  4322.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  4323.                 GetPlayerName(targetid, giveplayername, sizeof(giveplayername));
  4324.                 format(string,sizeof(string),"|- Administrator %s has pushed %s -|", sendername, giveplayername);
  4325.                 SendClientMessageToAdmins(ADMIN_RED, string, 1);
  4326.             }
  4327.             else SendClientMessage(playerid, RED, "Player is not active.");
  4328.         }
  4329.         else SendClientMessage(playerid, RED, "You're not an admin with the required level.");
  4330.         return 1;
  4331.     }
  4332.  
  4333.     if (!strcmp(cmd, "/setgravity", true)) // Changes gravity
  4334.     {
  4335.         if(IsPlayerAdmin(playerid) || AccountInfo[playerid][AdminLevel] >= 4)
  4336.         {
  4337.             tmp = strtok(cmdtext, idx);
  4338.             if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /pussetgravity [gravity float]");
  4339.             new Float:gravity = floatstr(tmp);
  4340.             SetGravity(gravity);
  4341.             GetPlayerName(playerid, sendername, sizeof(sendername));
  4342.             format(string,sizeof(string),"|- Administrator %s has changed gravity [ Gravity: %.4f ] -|", sendername, gravity);
  4343.             SendClientMessageToAll(ADMIN_RED, string);
  4344.         }
  4345.         else SendClientMessage(playerid, RED, "You're not an admin with the required level.");
  4346.         return 1;
  4347.     }
  4348.  
  4349.     if (!strcmp(cmd, "/settime", true)) // Changes time
  4350.     {
  4351.         if(IsPlayerAdmin(playerid) || AccountInfo[playerid][AdminLevel] >= 3)
  4352.         {
  4353.             tmp = strtok(cmdtext, idx);
  4354.             if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /settime [time(0-23)]");
  4355.             new time = strval(tmp);
  4356.             if (time < 0 || time > 23) return SendClientMessage(playerid, RED, "Time can only be from 0 to 23!");
  4357.             SetWorldTime(time);
  4358.             GetPlayerName(playerid, sendername, sizeof(sendername));
  4359.             format(string,sizeof(string),"|- Administrator %s has changed time [ Hour: %d ] -|", sendername, time);
  4360.             SendClientMessageToAll(ADMIN_RED, string);
  4361.         }
  4362.         else SendClientMessage(playerid, RED, "You're not an admin with the required level.");
  4363.         return 1;
  4364.     }
  4365.  
  4366.     if (!strcmp(cmd, "/setweather", true)) // Changes time
  4367.     {
  4368.         if(IsPlayerAdmin(playerid) || AccountInfo[playerid][AdminLevel] >= 4)
  4369.         {
  4370.             tmp = strtok(cmdtext, idx);
  4371.             if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /setweather [weather id]");
  4372.             new weather = strval(tmp);
  4373.             SetWeather(weather);
  4374.             GetPlayerName(playerid, sendername, sizeof(sendername));
  4375.             format(string,sizeof(string),"|- Administrator %s has changed weather [ Weather: %d ] -|", sendername, weather);
  4376.             SendClientMessageToAdmins(ADMIN_RED, string, 1);
  4377.         }
  4378.         else SendClientMessage(playerid, RED, "You're not an admin with the required level.");
  4379.         return 1;
  4380.     }
  4381.  
  4382.     if(strcmp(cmd, "/report", true) == 0) // Available for everyone: reports a player to the admins
  4383.     {
  4384.         tmp = strtok(cmdtext, idx);
  4385.         if(!strlen(tmp))
  4386.         {
  4387.             SendClientMessage(playerid, ORANGE, "Benutze: /report [playername/id] [Grund]");
  4388.             SendClientMessage(playerid, ORANGE, "Funktion: Reporter einen Spieler an die Online Admins.");
  4389.             return 1;
  4390.         }
  4391.         new targetid = ReturnUser(tmp);
  4392.         if(targetid != INVALID_PLAYER_ID)
  4393.         {
  4394.             GetPlayerName(targetid, giveplayername, sizeof(giveplayername));
  4395.             GetPlayerName(playerid, sendername, sizeof(sendername));
  4396.             new reason[128];
  4397.             reason = bigstrtok(cmdtext, idx);
  4398.             if(!strlen(reason)) return SendClientMessage(playerid, ORANGE, "Benutze: /report [playerid] [Grund]");
  4399.             format(string, sizeof(string), "|- %s reportet %s [ Grund: %s ]", sendername,giveplayername,reason);
  4400.             SendClientMessageToAdmins(ADMIN_RED, string,1);
  4401.             format(string, sizeof(string), "Du Reportest '%s' .", giveplayername);
  4402.             SendClientMessage(playerid, GREEN, string);
  4403.         }
  4404.  
  4405.         else if(giveplayerid == INVALID_PLAYER_ID)
  4406.         {
  4407.             format(string, sizeof(string), "%d ist kein Aktiver Spieler..", giveplayerid);
  4408.             SendClientMessage(playerid, RED, string);
  4409.         }
  4410.         return 1;
  4411.     }
  4412.  
  4413.     if(strcmp(cmd, "/ah", true) == 0 || strcmp(cmd, "/ahelp", true) == 0 || strcmp(cmd, "/acommands", true) == 0) // List of admin commands
  4414.     {
  4415.         if (AccountInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid))
  4416.         {
  4417.             SendClientMessage(playerid, YELLOW, "             |- Server Admin Commands -|");
  4418.             SendClientMessage(playerid, ORANGE, "LEAD(5): /gmx /makeadmin /kickall /crash /blockpm /seifocalypse /missile /respawncars");
  4419.             SendClientMessage(playerid, ORANGE, "LEVEL 1+: /(un)freeze /setscore /angle /kick /setname /kill /goto /ip /pweapons /view /changepassword");
  4420.             SendClientMessage(playerid, ORANGE, "LEVEL 2+: /(un)mute /givecash /get /pstats /warn /viewcmds /logout /demolish /virtual");
  4421.             SendClientMessage(playerid, ORANGE, "LEVEL 3+: /nuke /ban /disarm /say /giveweapon /slap /gotoveh /(un)jail /sethp /push /settime");
  4422.             SendClientMessage(playerid, ORANGE, "LEVEL 4+: /fuck /bc /setwarn /announce /aclearchat /bslap /(un)hide /rangeban /teleport /setgravity /setweather /fuelcars");
  4423.             SendClientMessage(playerid, ORANGE, "ADMIN CHAT: //   Example: //hello");
  4424.         }
  4425.         else SendClientMessage(playerid, RED, "You are not an admin!");
  4426.         return 1;
  4427.     }
  4428.  
  4429.  
  4430.     if (strcmp(cmd, "/admins", true) == 0) // Admin list if they're online
  4431.     {
  4432.         new count = 0;
  4433.         SendClientMessage(playerid, GREEN, "                            [Online Admins]");
  4434.         for(new i = 0; i < MAX_PLAYERS; i++)
  4435.         {
  4436.             if (IsPlayerConnected(i))
  4437.             {
  4438.                 if(AccountInfo[i][AdminLevel] >= 1 && AccountInfo[i][AdminLevel] <= 5 && Hide[i] == 0)
  4439.                 {
  4440.                     GetPlayerName(i, sendername, sizeof(sendername));
  4441.                     format(string, 128, "Level %d [%i]%s", AccountInfo[i][AdminLevel],i,sendername);
  4442.                     SendClientMessage(playerid, LIGHTGREEN, string);
  4443.                     count++;
  4444.                 }
  4445.             }
  4446.         }
  4447.         if (count == 0) SendClientMessage(playerid,RED,"Kein Admin Online.");
  4448.         SendClientMessage(playerid, GREEN, "[____________________________________]");
  4449.         return 1;
  4450.     }
  4451.     if (strcmp(cmd, "/register", true) == 0) // Registers an account
  4452.     {
  4453.         if(IsPlayerConnected(playerid))
  4454.         {
  4455.             if(AccountInfo[playerid][Logged] == 1)
  4456.             {
  4457.                 SendClientMessage(playerid, RED, "Du bist schon eingeloggt.");
  4458.                 return 1;
  4459.             }
  4460.             GetPlayerName(playerid, sendername, sizeof(sendername));
  4461.             format(string, sizeof(string), "/sAccounts/%s.seifadmin", sendername);
  4462.             new File: hFile = fopen(string, io_read);
  4463.             if (hFile)
  4464.             {
  4465.                 SendClientMessage(playerid, RED, "Dieser Name existiert schon, such dir bitte einen anderen aus.");
  4466.                 fclose(hFile);
  4467.                 return 1;
  4468.             }
  4469.             new tmppass[128];
  4470.             tmp = strtok(cmdtext, idx);
  4471.             if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /register [passwort]");
  4472.             strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
  4473.             OnPlayerRegister(playerid, MD5_Hash(tmppass));
  4474.         }
  4475.         return 1;
  4476.     }
  4477.  
  4478.     if (strcmp(cmd, "/login", true) == 0) // Logins
  4479.     {
  4480.         new tmppass[128];
  4481.         if(AccountInfo[playerid][Logged] == 1) return SendClientMessage(playerid, RED, "Du bist schon eingeloggt.");
  4482.         tmp = strtok(cmdtext, idx);
  4483.         if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /login [passwort]");
  4484.         new plname[MAX_PLAYER_NAME];
  4485.         GetPlayerName(playerid, plname, sizeof(plname));
  4486.         format(string, sizeof(string), "/sAccounts/%s.seifadmin", plname);
  4487.         if(!fexist(string)) return SendClientMessage(playerid, RED, "Dieser Account ist nicht registriert! Benutze /register [passwort]");
  4488.         strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
  4489.         OnPlayerLogin(playerid, MD5_Hash(tmppass));
  4490.         return 1;
  4491.     }
  4492.  
  4493.     if (!strcmp(cmd, "/changepassword", true)) // Changes your password
  4494.     {
  4495.         if (!AccountInfo[playerid][Logged]) return SendClientMessage(playerid, RED, "Du bist nicht eingeloggt.");
  4496.         if (AccountInfo[playerid][AdminLevel] >= 1)
  4497.         {
  4498.             new oldpass[128];
  4499.             oldpass = strtok(cmdtext, idx);
  4500.             if(!strlen(oldpass)) return SendClientMessage(playerid, ORANGE, "Benutze: /changepassword [CURRENT PASSWORD] [new password]");
  4501.             if (strcmp(MD5_Hash(oldpass), AccountInfo[playerid][Password], true)) return SendClientMessage(playerid, RED, "Invalid password.");
  4502.             tmp = strtok(cmdtext, idx);
  4503.             if(!strlen(tmp)) return SendClientMessage(playerid, ORANGE, "Benutze: /changepassword [current password] [NEW PASSWORD]");
  4504.             format(oldpass, 128, "|- You've changed your password to '%s' -|", tmp);
  4505.             SendClientMessage(playerid, LIGHTGREEN, oldpass);
  4506.             strmid(AccountInfo[playerid][Password], MD5_Hash(tmp), 0, strlen(MD5_Hash(tmp)), 128);
  4507.         }
  4508.         return 1;
  4509.    }
  4510.  
  4511.  /*»»»»»»»»»»»»»»»»»»»»»»»»»»»» [WRONG COMMAND] «««««««««««««««««««««««««««*/
  4512.     else
  4513.     {
  4514.         for(new i = 0; i < GetMaxPlayers(); i++)
  4515.         {
  4516.             if (IsPlayerConnected(i))
  4517.             {
  4518.                 if (AccountInfo[i][AdminLevel] > 0 && ViewCmds[i] == 1)
  4519.                 {
  4520.                     GetPlayerName(playerid, sendername, sizeof sendername);
  4521.                     format(tmp, 128, "[VIEWCMDS] [%d]%s: %s", playerid, sendername, cmdtext);
  4522.                     SendClientMessage(i, PURPLE, tmp);
  4523.                 }
  4524.             }
  4525.         }
  4526.         return 0;
  4527.     }
  4528. }
  4529.  
  4530.  
  4531. public IsPlayerAdminCall(playerid)
  4532. {
  4533.     if(AccountInfo[playerid][AdminLevel] >= 1)
  4534.     return 1;
  4535.     else
  4536.     return 0;
  4537. }
  4538.  
  4539.  
  4540. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  4541. {
  4542.     return 1;
  4543. }
  4544.  
  4545. public OnPlayerExitVehicle(playerid, vehicleid)
  4546. {
  4547.     return 1;
  4548. }
  4549.  
  4550. public OnPlayerStateChange(playerid, newstate, oldstate)
  4551. {
  4552.     return 1;
  4553. }
  4554.  
  4555. public OnPlayerEnterCheckpoint(playerid)
  4556. {
  4557.     return 1;
  4558. }
  4559.  
  4560. public OnPlayerLeaveCheckpoint(playerid)
  4561. {
  4562.     return 1;
  4563. }
  4564.  
  4565. public OnPlayerEnterRaceCheckpoint(playerid)
  4566. {
  4567.     return 1;
  4568. }
  4569.  
  4570. public OnPlayerLeaveRaceCheckpoint(playerid)
  4571. {
  4572.     return 1;
  4573. }
  4574.  
  4575. public OnRconCommand(cmd[])
  4576. {
  4577.     return 1;
  4578. }
  4579.  
  4580. public OnPlayerRequestSpawn(playerid)
  4581. {
  4582.     #if defined LOGIN_BEFORE_SPAWN
  4583.         new string[128];
  4584.         new sendername[MAX_PLAYER_NAME];
  4585.         GetPlayerName(playerid,sendername,24);
  4586.         format(string,128,"/sAccounts/%s.seifadmin",sendername);
  4587.         if (fexist(string) && AccountInfo[playerid][Logged] == 0)
  4588.         {
  4589.             SendClientMessage(playerid,RED,"Du bist registriert. Bitte logge dich ein.");
  4590.             return 0;
  4591.         }
  4592.     #endif
  4593.     return 1;
  4594. }
  4595.  
  4596.  
  4597. public OnObjectMoved(objectid)
  4598. {
  4599.     for(new i; i < MAX_PLAYERS; i++) if (objectid == Missile[i])
  4600.     {
  4601.         new Float:X,Float:Y,Float:Z,Float:x,Float:y,Float:z;
  4602.         GetObjectPos(objectid, X, Y, Z);
  4603.         GetObjectPos(objectid, x, y, z);
  4604.         DestroyObject(objectid);
  4605.         CreateExplosion(X, Y, Z, 7, 5);
  4606.         //front
  4607.         X += (5.0 * floatsin(0, degrees));
  4608.         Y += (5.0 * floatcos(0, degrees));
  4609.         CreateExplosion(X, Y, Z, 7, 5);
  4610.         X += (3.0 * floatsin(0+45, degrees));
  4611.         Y += (3.0 * floatcos(0+45, degrees));
  4612.         CreateExplosion(X, Y, Z, 7, 5);
  4613.         X += (3.0 * floatsin(0-45, degrees));
  4614.         Y += (3.0 * floatcos(0-45, degrees));
  4615.         CreateExplosion(X, Y, Z, 7, 5);
  4616.         //right-left
  4617.         X += (5.0 * floatcos(0, degrees));
  4618.         Y += (5.0 * floatsin(0, degrees));
  4619.         CreateExplosion(X, Y, Z, 7, 5);
  4620.         //back
  4621.         X -= (5.0 * floatcos(0, degrees));
  4622.         Y -= (5.0 * floatsin(0, degrees));
  4623.         CreateExplosion(X, Y, Z, 7, 5);
  4624.         X -= (5.0 * floatsin(0, degrees));
  4625.         Y -= (5.0 * floatcos(0, degrees));
  4626.         CreateExplosion(X, Y, Z, 7, 5);
  4627.         X -= (3.0 * floatsin(0+45, degrees));
  4628.         Y -= (3.0 * floatcos(0+45, degrees));
  4629.         CreateExplosion(X, Y, Z, 7, 5);
  4630.         X -= (3.0 * floatsin(0-45, degrees));
  4631.         Y -= (3.0 * floatcos(0-45, degrees));
  4632.         CreateExplosion(X, Y, Z, 7, 5);
  4633.         SetTimerEx("MissileExplosion", 700, 0, "fffd", x, y, z, 3);
  4634.         break;
  4635.     }
  4636. }
  4637.  
  4638. public OnPlayerObjectMoved(playerid, objectid)
  4639. {
  4640.     return 1;
  4641. }
  4642.  
  4643. public OnPlayerPickUpPickup(playerid, pickupid)
  4644. {
  4645.     return 1;
  4646. }
  4647.  
  4648. public OnVehicleMod(playerid, vehicleid, componentid)
  4649. {
  4650.     return 1;
  4651. }
  4652.  
  4653. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  4654. {
  4655.     return 1;
  4656. }
  4657.  
  4658. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  4659. {
  4660.     return 1;
  4661. }
  4662.  
  4663. public OnPlayerSelectedMenuRow(playerid, row)
  4664. {
  4665.     return 1;
  4666. }
  4667.  
  4668. public OnPlayerExitedMenu(playerid)
  4669. {
  4670.     return 1;
  4671. }
  4672.  
  4673. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  4674. {
  4675.     return 1;
  4676. }
  4677. CheckNitro(vid)
  4678. {
  4679.     new NoNitro[] = { 522,481,441,468,448,446,513,521,510,430,520,476,463 }; // unknown
  4680.     for(new e = 0; e < sizeof(NoNitro); e++) if(GetVehicleModel(vid) == NoNitro[e]) return false;
  4681.     return true;
  4682. }
  4683. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  4684. {
  4685.     if (SuperPunch[playerid] == 1)
  4686.     {
  4687.         if (GetPlayerState(playerid) != 2)
  4688.         {
  4689.             if (newkeys & KEY_FIRE && Drugs[playerid] == 0)
  4690.             {
  4691.                 new Float:X,Float:Y,Float:Z,Float:Health;
  4692.                 GetPlayerHealth(playerid,Health);
  4693.                 if (GetPlayerWeapon(playerid) == 0)
  4694.                 {
  4695.                     GetPlayerPos(playerid,X,Y,Z);
  4696.                     CreateExplosion(X,Y,Z,7,7.0);
  4697.                     SetPlayerHealth(playerid,Health);
  4698.                }
  4699.             }
  4700.             else if (newkeys & KEY_FIRE && Drugs[playerid] == 1)
  4701.             {
  4702.                 new Float:X,Float:Y,Float:Z;
  4703.                 if (GetPlayerWeapon(playerid) == 0)
  4704.                 {
  4705.                     SetPlayerHealth(playerid,999999999);
  4706.                     GetPlayerPos(playerid,X,Y,Z);
  4707.                     CreateExplosion(X,Y,Z,7,7.0);
  4708.                     SetPlayerHealth(playerid,999999999);
  4709.                }
  4710.             }
  4711.         }
  4712.     }
  4713.     if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER || !CheckNitro(GetPlayerVehicleID(playerid))) return false; else if ((((newkeys & (4)) == (4)) && ((oldkeys & (4)) != (4)))) AddVehicleComponent(GetPlayerVehicleID(playerid), 1010); else if ((((newkeys & (4)) != (4)) && ((oldkeys & (4)) == (4)))) RemoveVehicleComponent(GetPlayerVehicleID(playerid), 1010);
  4714.     return 1;
  4715. }
  4716.  
  4717. public OnRconLoginAttempt(ip[], password[], success)
  4718. {
  4719.     return 1;
  4720. }
  4721.  
  4722. public OnPlayerUpdate(playerid)
  4723. {
  4724.     return 1;
  4725. }
  4726.  
  4727. public OnPlayerStreamIn(playerid, forplayerid)
  4728. {
  4729.     return 1;
  4730. }
  4731.  
  4732. public OnPlayerStreamOut(playerid, forplayerid)
  4733. {
  4734.     return 1;
  4735. }
  4736.  
  4737. public OnVehicleStreamIn(vehicleid, forplayerid)
  4738. {
  4739.     return 1;
  4740. }
  4741.  
  4742. public OnVehicleStreamOut(vehicleid, forplayerid)
  4743. {
  4744.     return 1;
  4745. }
  4746.  
  4747. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  4748. {
  4749.     return 1;
  4750. }
  4751.  
  4752. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  4753. {
  4754.     return 1;
  4755. }
  4756.  
  4757. public DollahScoreUpdate()
  4758. {
  4759.     new LevScore;
  4760.     for(new i=0; i<MAX_PLAYERS; i++)
  4761.     {
  4762.         if(IsPlayerConnected(i))
  4763.         {
  4764.             LevScore = AccountInfo[i][Level];
  4765.             SetPlayerScore(i, LevScore);
  4766.         }
  4767.     }
  4768.     return 1;
  4769. }
  4770.  
  4771. OnPlayerJailed(playerid)
  4772. {
  4773.     SetPlayerInterior(playerid, 6);
  4774.     SetPlayerPos(playerid, 264.3700,77.5700,1001.0391);
  4775.     SetPlayerFacingAngle(playerid, 272.6900);
  4776.     TogglePlayerControllable(playerid, 0);
  4777.     return 1;
  4778. }
  4779.  
  4780. OnPlayerUnjailed(playerid)
  4781. {
  4782.     SetPlayerInterior(playerid, 6);
  4783.     SetPlayerPos(playerid,  266.9272,78.6098,1001.0391);
  4784.     SetPlayerFacingAngle(playerid, 266.9169);
  4785.     TogglePlayerControllable(playerid, 1);
  4786.     return 1;
  4787. }
  4788.  
  4789. public CountDown()
  4790. {
  4791.     if (Count > 0)
  4792.     {
  4793.         new str[5];
  4794.         format(str, sizeof str, "~w~%d", Count);
  4795.         GameTextForAll(str,2500,3);
  4796.         Count--;
  4797.         SetTimer("CountDown",1000,0);
  4798.     }
  4799.     else
  4800.     {
  4801.         GameTextForAll("~g~~h~Go ~w~!!",2500,3);
  4802.         Count = 999;
  4803.     }
  4804.     return 1;
  4805. }
  4806.  
  4807.  
  4808. forward NukeBlast(playerid, times, Float:X,Float:Y,Float:Z,Float:A);
  4809. public  NukeBlast(playerid, times, Float:X,Float:Y,Float:Z,Float:A)
  4810. {
  4811.     if (Nuke[playerid] == times+1) return 1;
  4812.     //printf("Nukeblast %d",Nuke[playerid]);
  4813.     new Float:x,Float:y;
  4814.     x = X + ((10*Nuke[playerid]) * floatsin(-A+5, degrees));
  4815.     y = Y + ((10*Nuke[playerid]) * floatcos(-A+5, degrees));
  4816.     CreateExplosion(x, y, Z, 3, 3.0);
  4817.     Nuke[playerid]++;
  4818.     SetTimerEx("NukeBlast", 200, 0, "ddffff",playerid, times, X, Y, Z, A);
  4819.     return 1;
  4820. }
  4821.  
  4822.  
  4823. forward MissileExplosion(Float:X, Float:Y, Float:Z, times);
  4824. public  MissileExplosion(Float:X, Float:Y, Float:Z, times)
  4825. {
  4826.     new Float:x = X;
  4827.     new Float:y = Y;
  4828.     new Float:z = Z;
  4829.     if (times == 3)
  4830.     {
  4831.         //front
  4832.         X += (10.0 * floatsin(0, degrees));
  4833.         Y += (10.0 * floatcos(0, degrees));
  4834.         CreateExplosion(X, Y, Z, 7, 5);
  4835.         X += (6.0 * floatsin(0+45, degrees));
  4836.         Y += (6.0 * floatcos(0+45, degrees));
  4837.         CreateExplosion(X, Y, Z, 7, 5);
  4838.         X += (6.0 * floatsin(0-45, degrees));
  4839.         Y += (6.0 * floatcos(0-45, degrees));
  4840.         CreateExplosion(X, Y, Z, 7, 5);
  4841.         //right-left
  4842.         X += (10.0 * floatcos(0, degrees));
  4843.         Y += (10.0 * floatsin(0, degrees));
  4844.         CreateExplosion(X, Y, Z, 7, 5);
  4845.         //back
  4846.         X -= (10.0 * floatcos(0, degrees));
  4847.         Y -= (10.0 * floatsin(0, degrees));
  4848.         CreateExplosion(X, Y, Z, 7, 5);
  4849.         X -= (10.0 * floatsin(0, degrees));
  4850.         Y -= (10.0 * floatcos(0, degrees));
  4851.         CreateExplosion(X, Y, Z, 7, 5);
  4852.         X -= (6.0 * floatsin(0+45, degrees));
  4853.         Y -= (6.0 * floatcos(0+45, degrees));
  4854.         CreateExplosion(X, Y, Z, 7, 5);
  4855.         X -= (6.0 * floatsin(0-45, degrees));
  4856.         Y -= (6.0 * floatcos(0-45, degrees));
  4857.         CreateExplosion(X, Y, Z, 7, 5);
  4858.     }
  4859.     else if (times == 2)
  4860.     {
  4861.         //front
  4862.         X += (15.0 * floatsin(0, degrees));
  4863.         Y += (15.0 * floatcos(0, degrees));
  4864.         CreateExplosion(X, Y, Z, 7, 5);
  4865.         X += (9.0 * floatsin(0+45, degrees));
  4866.         Y += (9.0 * floatcos(0+45, degrees));
  4867.         CreateExplosion(X, Y, Z, 7, 5);
  4868.         X += (9.0 * floatsin(0-45, degrees));
  4869.         Y += (9.0 * floatcos(0-45, degrees));
  4870.         CreateExplosion(X, Y, Z, 7, 5);
  4871.         //right-left
  4872.         X += (15.0 * floatcos(0, degrees));
  4873.         Y += (15.0 * floatsin(0, degrees));
  4874.         CreateExplosion(X, Y, Z, 7, 5);
  4875.         //back
  4876.         X -= (15.0 * floatcos(0, degrees));
  4877.         Y -= (15.0 * floatsin(0, degrees));
  4878.         CreateExplosion(X, Y, Z, 7, 5);
  4879.         X -= (15.0 * floatsin(0, degrees));
  4880.         Y -= (15.0 * floatcos(0, degrees));
  4881.         CreateExplosion(X, Y, Z, 7, 5);
  4882.         X -= (9.0 * floatsin(0+45, degrees));
  4883.         Y -= (9.0 * floatcos(0+45, degrees));
  4884.         CreateExplosion(X, Y, Z, 7, 5);
  4885.         X -= (9.0 * floatsin(0-45, degrees));
  4886.         Y -= (9.0 * floatcos(0-45, degrees));
  4887.         CreateExplosion(X, Y, Z, 7, 5);
  4888.     }
  4889.     else if (times == 1)
  4890.     {
  4891.         //front
  4892.         X += (20.0 * floatsin(0, degrees));
  4893.         Y += (20.0 * floatcos(0, degrees));
  4894.         CreateExplosion(X, Y, Z, 7, 5);
  4895.         X += (12.0 * floatsin(0+45, degrees));
  4896.         Y += (12.0 * floatcos(0+45, degrees));
  4897.         CreateExplosion(X, Y, Z, 7, 5);
  4898.         X += (12.0 * floatsin(0-45, degrees));
  4899.         Y += (12.0 * floatcos(0-45, degrees));
  4900.         CreateExplosion(X, Y, Z, 7, 5);
  4901.         //right-left
  4902.         X += (20.0 * floatcos(0, degrees));
  4903.         Y += (20.0 * floatsin(0, degrees));
  4904.         CreateExplosion(X, Y, Z, 7, 5);
  4905.         //back
  4906.         X -= (20.0 * floatcos(0, degrees));
  4907.         Y -= (20.0 * floatsin(0, degrees));
  4908.         CreateExplosion(X, Y, Z, 7, 5);
  4909.         X -= (20.0 * floatsin(0, degrees));
  4910.         Y -= (20.0 * floatcos(0, degrees));
  4911.         CreateExplosion(X, Y, Z, 7, 5);
  4912.         X -= (12.0 * floatsin(0+45, degrees));
  4913.         Y -= (12.0 * floatcos(0+45, degrees));
  4914.         CreateExplosion(X, Y, Z, 7, 5);
  4915.         X -= (12.0 * floatsin(0-45, degrees));
  4916.         Y -= (12.0 * floatcos(0-45, degrees));
  4917.         CreateExplosion(X, Y, Z, 7, 5);
  4918.     }
  4919.  
  4920.     if (times > 0) SetTimerEx("MissileExplosion", 700, 0, "fffd", x, y, z, times-1);
  4921. }
  4922.  
  4923. forward PushPlayer(playerid, distance, zup);
  4924. public  PushPlayer(playerid, distance, zup)
  4925. {
  4926.     new Float:X,Float:Y,Float:Z,Float:A;
  4927.     GetPlayerPos(playerid, X, Y, Z);
  4928.     GetPlayerFacingAngle(playerid, A);
  4929.     if (zup == 1) SetPlayerPos(playerid, X, Y, Z+5);
  4930.     GetPlayerPos(playerid, X, Y, Z);
  4931.     X -= (2.0 * floatsin(-A, degrees));
  4932.     Y -= (2.0 * floatcos(-A, degrees));
  4933.     SetPlayerPos(playerid, X, Y, Z);
  4934.     if (distance > 0) SetTimerEx("PushPlayer", 100, 0, "ddd", playerid, distance-1, 0);
  4935. }
  4936.  
  4937. stock GetVehicleModelIDFromName(vehname[])
  4938. {
  4939.     for(new i = 0; i < 211; i++)
  4940.     {
  4941.         if (strfind(VehNames[i], vehname, true) != -1) return i + 400;
  4942.     }
  4943.     return -1;
  4944. }
  4945.  
  4946. stock GetWeaponModelIDFromName(weapname[])
  4947. {
  4948.     for(new i = 0; i < 48; i++)
  4949.     {
  4950.         if (i == 19 || i == 20 || i == 21) continue;
  4951.         if (strfind(WeapNames[i], weapname, true) != -1) return i;
  4952.     }
  4953.     return -1;
  4954. }
  4955.  
  4956. stock bigstrtok(const string[], &idx)
  4957. {
  4958.     new length = strlen(string);
  4959.     while ((idx < length) && (string[idx] <= ' '))
  4960.     {
  4961.         idx++;
  4962.     }
  4963.     new offset = idx;
  4964.     new result[128];
  4965.     while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
  4966.     {
  4967.         result[idx - offset] = string[idx];
  4968.         idx++;
  4969.     }
  4970.     result[idx - offset] = EOS;
  4971.     return result;
  4972. }
  4973.  
  4974.  
  4975.  
  4976.  
  4977.  
  4978. public CheckStatus()
  4979. {
  4980.     for(new i=0; i<MAX_PLAYERS; i++)
  4981.     {
  4982.         if(IsPlayerConnected(i))
  4983.         {
  4984.             if(IsPlayerInAnyVehicle(i))
  4985.             {
  4986.  
  4987. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  4988.  
  4989.                 if(TextDrawsShown[i] == false)
  4990.                 {
  4991.                     TextDrawShowForPlayer(i, Text:Black0);
  4992.                     TextDrawShowForPlayer(i, Text:White1);
  4993.                     TextDrawShowForPlayer(i, Text:White2);
  4994.                     TextDrawShowForPlayer(i, Text:BlackHealth);
  4995.                     TextDrawShowForPlayer(i, Text:DarkRedHealth);
  4996.                     TextDrawShowForPlayer(i, Text:BlackSpeed);
  4997.                     TextDrawShowForPlayer(i, Text:DarkYellowSpeed);
  4998.                     TextDrawShowForPlayer(i, Text:Marker);
  4999.                     TextDrawsShown[i] = true;
  5000.                 }
  5001.  
  5002. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5003.  
  5004.                 new String[128];
  5005.                 new Float:X, Float:Y, Float:Z, Float:Distance;
  5006.                 GetPlayerPos(i, X, Y, Z);
  5007.                 Distance = floatsqroot(floatadd(floatadd(floatpower(floatsub(X, OldX[i]), 2), floatpower(floatsub(Y, OldY[i]), 2)), floatpower(floatsub(Z, OldZ[i]), 2)));
  5008.                 new PlayerVehicleModelID = GetVehicleModel(GetPlayerVehicleID(i));
  5009.                 PlayerVehicleModelID -= 400;
  5010.                 format(String,sizeof(String),"~b~Auto:~n~ %i~n~~b~Autoenergie:~n~~n~Geschwindigkeit:~n~~w~%im/h~n~%ikm/h", VehNames[PlayerVehicleModelID], floatround(floatmul(floatdiv(Distance, 1.609344), 2.0), floatround_floor), floatround(floatmul(Distance, 2.0), floatround_floor));
  5011.                 if(VHSCreated[i] == true)
  5012.                 {
  5013.                     TextDrawDestroy(VHS[i]);
  5014.                 }
  5015.                 VHS[i] = TextDrawCreate(485.000000,355.000000,String);
  5016.                 TextDrawAlignment(VHS[i],0);
  5017.                 TextDrawBackgroundColor(VHS[i],0x000000ff);
  5018.                 TextDrawFont(VHS[i],1);
  5019.                 TextDrawLetterSize(VHS[i],0.299999,1.000000);
  5020.                 TextDrawColor(VHS[i],0xffffffff);
  5021.                 TextDrawSetOutline(VHS[i],1);
  5022.                 TextDrawSetProportional(VHS[i],1);
  5023.                 TextDrawSetShadow(VHS[i],1);
  5024.                 TextDrawShowForPlayer(i, VHS[i]);
  5025.                 VHSCreated[i] = true;
  5026.  
  5027. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5028.  
  5029.                 new Float:CarHealth;
  5030.                 GetVehicleHealth(GetPlayerVehicleID(i), CarHealth);
  5031.                 if(LightRedHealthCreated[i] == true)
  5032.                 {
  5033.                     TextDrawDestroy(LightRedHealth[i]);
  5034.                 }
  5035.                 LightRedHealth[i] = TextDrawCreate(488.000000,386.000000,"_");
  5036.                 TextDrawUseBox(LightRedHealth[i],1);
  5037.                 TextDrawBoxColor(LightRedHealth[i],0xff000099);
  5038.                 TextDrawTextSize(LightRedHealth[i], floatadd(484.0, floatdiv(CarHealth, 9.5238095238)),0.000000);
  5039.                 TextDrawAlignment(LightRedHealth[i],0);
  5040.                 TextDrawBackgroundColor(LightRedHealth[i],0x000000ff);
  5041.                 TextDrawFont(LightRedHealth[i],3);
  5042.                 TextDrawLetterSize(LightRedHealth[i],1.000000,0.199999);
  5043.                 TextDrawColor(LightRedHealth[i],0xffffffff);
  5044.                 TextDrawSetOutline(LightRedHealth[i],1);
  5045.                 TextDrawSetProportional(LightRedHealth[i],1);
  5046.                 TextDrawSetShadow(LightRedHealth[i],1);
  5047.                 TextDrawShowForPlayer(i, LightRedHealth[i]);
  5048.                 LightRedHealthCreated[i] = true;
  5049.                 if(CarHealth < 250)
  5050.                 {
  5051.                     if(ExclamationShown[i] == true)
  5052.                     {
  5053.                         TextDrawHideForPlayer(i, Text:Exclamation);
  5054.                         ExclamationShown[i] = false;
  5055.                     }
  5056.                     else
  5057.                     {
  5058.                         TextDrawShowForPlayer(i, Text:Exclamation);
  5059.                         ExclamationShown[i] = true;
  5060.                     }
  5061.                 }
  5062.                 else if(CarHealth > 250)
  5063.                 {
  5064.                     if(ExclamationShown[i] == true)
  5065.                     {
  5066.                         TextDrawHideForPlayer(i, Text:Exclamation);
  5067.                         ExclamationShown[i] = false;
  5068.                     }
  5069.                 }
  5070.  
  5071. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5072.  
  5073.                 if(LightYellowSpeedCreated[i] == true)
  5074.                 {
  5075.                     TextDrawDestroy(LightYellowSpeed[i]);
  5076.                 }
  5077.                 LightYellowSpeed[i] = TextDrawCreate(537.000000,404.000000,"_");
  5078.                 TextDrawUseBox(LightYellowSpeed[i],1);
  5079.                 TextDrawBoxColor(LightYellowSpeed[i],0xffff0066);
  5080.                 if(Distance >= 75)
  5081.                 {
  5082.                     TextDrawTextSize(LightYellowSpeed[i],589.000000,0.000000);
  5083.                 }
  5084.                 else
  5085.                 {
  5086.                     TextDrawTextSize(LightYellowSpeed[i], floatadd(533.0, floatdiv(Distance, 1.33928571428)),0.000000);
  5087.                 }
  5088.                 TextDrawAlignment(LightYellowSpeed[i],0);
  5089.                 TextDrawBackgroundColor(LightYellowSpeed[i],0x000000ff);
  5090.                 TextDrawFont(LightYellowSpeed[i],3);
  5091.                 TextDrawLetterSize(LightYellowSpeed[i],1.000000,1.200000);
  5092.                 TextDrawColor(LightYellowSpeed[i],0xffffffff);
  5093.                 TextDrawSetOutline(LightYellowSpeed[i],1);
  5094.                 TextDrawSetProportional(LightYellowSpeed[i],1);
  5095.                 TextDrawSetShadow(LightYellowSpeed[i],1);
  5096.                 TextDrawShowForPlayer(i, LightYellowSpeed[i]);
  5097.                 LightYellowSpeedCreated[i] = true;
  5098.  
  5099. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5100.  
  5101.                 OldX[i] = X; OldY[i] = Y; OldZ[i] = Z;
  5102.  
  5103. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5104.  
  5105.             }
  5106.             else
  5107.             {
  5108.                 if(TextDrawsShown[i] == true)
  5109.                 {
  5110.                     TextDrawHideForPlayer(i, Text:Black0);
  5111.                     TextDrawHideForPlayer(i, Text:White1);
  5112.                     TextDrawHideForPlayer(i, Text:White2);
  5113.                     TextDrawHideForPlayer(i, Text:BlackHealth);
  5114.                     TextDrawHideForPlayer(i, Text:DarkRedHealth);
  5115.                     TextDrawHideForPlayer(i, Text:BlackSpeed);
  5116.                     TextDrawHideForPlayer(i, Text:DarkYellowSpeed);
  5117.                     TextDrawHideForPlayer(i, Text:Marker);
  5118.                     TextDrawHideForPlayer(i, Text:Exclamation);
  5119.                     TextDrawsShown[i] = false;
  5120.                 }
  5121.                 TextDrawHideForPlayer(i, Text:VHS[i]);
  5122.                 TextDrawHideForPlayer(i, Text:LightRedHealth[i]);
  5123.                 TextDrawHideForPlayer(i, Text:LightYellowSpeed[i]);
  5124.             }
  5125.         }
  5126.     }
  5127. }
  5128.  
  5129.  
  5130.  
  5131. ////////////////////////////////////////////////////////////////////////////////
  5132.  
  5133. ////////////////////////////////////////////////////////////////////////////////
  5134.  
  5135.  
  5136.  
  5137. ////////////////////////////////////////////////////////////////////////////////
  5138. public VehicleOccupied(vehicleid)
  5139. {
  5140.     for(new i=0;i<MAX_PLAYERS;i++)
  5141.     {
  5142.         if(IsPlayerInVehicle(i,vehicleid)) return 1;
  5143.     }
  5144.     return 0;
  5145. }
  5146. ////////////////////////////////////////////////////////////////////////////////
  5147.  
  5148. public CountDown2(playerid, seconds)
  5149. {
  5150.     new string[256];
  5151.     if(seconds > 0)
  5152.     {
  5153.         new Float:X, Float:Y, Float:Z;
  5154.         GetPlayerPos(playerid, X, Y, Z);
  5155.         PlayerPlaySound(playerid, 1056, X, Y, Z);
  5156.         format(string, sizeof(string), "~R~%d", seconds);
  5157.         GameTextForPlayer(playerid, string, 1000, 3);
  5158.         seconds = seconds -1;
  5159.         SetTimerEx("CountDown2", 1000, 0, "ii", playerid, seconds);
  5160.         return 1;
  5161.     }
  5162.     if(seconds == 0)
  5163.     {
  5164.         new Float:X, Float:Y, Float:Z;
  5165.         GetPlayerPos(playerid, X, Y, Z);
  5166.         PlayerPlaySound(playerid, 1057, X, Y, Z);
  5167.         GameTextForPlayer(playerid, "~G~Start!!!", 1000, 3);
  5168.         TogglePlayerControllable(playerid, 1);
  5169.         return 1;
  5170.     }
  5171.     return 1;
  5172. }
  5173.  
  5174. public inventationremove(playerid)
  5175. {
  5176.     if(InDual[playerid] == 0)
  5177.     {
  5178.         SendClientMessage(playerid, RED, "30 Sekunden sind vergangen ohne eine Antwort auf das Duell");
  5179.         SendClientMessage(InventationSent[playerid], RED, "30 Sekunden sind vergangen ohne das du das Duell angenommen hast.");
  5180.         Inventation[InventationSent[playerid]] = -1;
  5181.         InventationSent[playerid] = -1;
  5182.         if(DualRoom1 == playerid)
  5183.         {
  5184.             DualRoom1 = -1;
  5185.         }
  5186.         if(DualRoom2 == playerid)
  5187.         {
  5188.             DualRoom2 = -1;
  5189.         }
  5190.         if(DualRoom3 == playerid)
  5191.         {
  5192.             DualRoom3 = -1;
  5193.         }
  5194.         if(DualRoom3 == playerid)
  5195.         {
  5196.             DualRoom4 = -1;
  5197.         }
  5198.         return 1;
  5199.     }
  5200.     return 1;
  5201. }
  5202.  
  5203.  
  5204. dcmd_watchduels(playerid, params[])
  5205. {
  5206.     #pragma unused params
  5207.     if(PlayerDualWatching[playerid] == 0)
  5208.     {
  5209.         SetPlayerPos(playerid, 1731.8315,-2864.7705,6.5554);
  5210.         SetPlayerFacingAngle(playerid, 1.8901);
  5211.         ResetPlayerWeapons(playerid);
  5212.         SetPlayerHealth(playerid, 1000000000);
  5213.         PlayerDualWatching[playerid] = 1;
  5214.         SendClientMessage(playerid, COLOR_YELLOW, "Du schaust nun einem Duell zu,, Death Match ist hier NICHT erlaubt, /leavewatch um aufzuhöhren.");
  5215.         return 1;
  5216.     }
  5217.     else return SendClientMessage(playerid, RED, "Du schaust schon einem Duell zu, /leavewatch um zu gehen.");
  5218. }
  5219.  
  5220. dcmd_leavewatch(playerid, params[])
  5221. {
  5222.     #pragma unused params
  5223.     if(PlayerDualWatching[playerid] == 1)
  5224.     {
  5225.         SetPlayerHealth(playerid, 100);
  5226.         SpawnPlayer(playerid);
  5227.         SendClientMessage(playerid, COLOR_YELLOW, "Du hast aufgehöhrt, dem Duell zuzusehen.");
  5228.         PlayerDualWatching[playerid] = 0;
  5229.         return 1;
  5230.     }
  5231.     else return SendClientMessage(playerid, RED, "Du schaust kein Duell an, /watchduels um eines Anzusehen.");
  5232. }
  5233.  
  5234. dcmd_duell(playerid, params[])
  5235. {
  5236.     new
  5237.         giveplayerid,
  5238.         weapon[128],
  5239.         price;
  5240.     new string[256];
  5241.     new sendername[MAX_PLAYER_NAME];
  5242.     new giveplayername[MAX_PLAYER_NAME];
  5243.     if (sscanf(params, "isi", giveplayerid,weapon,price))
  5244.     {
  5245.         SendClientMessage(playerid, COLOR_YELLOW, "Benutze: /duell [playerid] [waffe] [Preis]");
  5246.         SendClientMessage(playerid, COLOR_YELLOW, "Duel Waffen: deagle, mp5, chainsaw, silpist, combatsg, shotgun");
  5247.         return 1;
  5248.     }
  5249.     else
  5250.     {
  5251.         if(playerid != giveplayerid)
  5252.         {
  5253.             GetPlayerName(playerid, sendername, sizeof(sendername));
  5254.             GetPlayerName(giveplayerid, giveplayername, sizeof(giveplayername));
  5255.             if(strcmp("deagle", weapon, true, 6) == 0)
  5256.             {
  5257.                 if(GetPlayerMoney(playerid) >= price)
  5258.                 {
  5259.                     if(Inventation[giveplayerid] == -1)
  5260.                     {
  5261.                         if(InventationSent[playerid] == -1)
  5262.                         {
  5263.                             if(InDual[playerid] == 0)
  5264.                             {
  5265.                                 if(InDual[giveplayerid] == 0)
  5266.                                 {
  5267.                                     if(DualRoom1 == -1)
  5268.                                     {
  5269.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5270.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit Desert Eagle angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5271.                                         SendClientMessage(giveplayerid, GREEN, string);
  5272.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Desert Eagle mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5273.                                         SendClientMessage(playerid, GREEN, string);
  5274.                                         InventationSent[playerid] = giveplayerid;
  5275.                                         Inventation[giveplayerid] = playerid;
  5276.                                         Inventationprice[giveplayerid] = price;
  5277.                                         DualRoom1price = price;
  5278.                                         DualRoom1 = playerid;
  5279.                                         WeaponDualRoom1 = 24;
  5280.                                         return 1;
  5281.                                     }
  5282.                                     else if(DualRoom2 == -1)
  5283.                                     {
  5284.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5285.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit Desert Eagle angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5286.                                         SendClientMessage(giveplayerid, GREEN, string);
  5287.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Desert Eagle mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5288.                                         SendClientMessage(playerid, GREEN, string);
  5289.                                         InventationSent[playerid] = giveplayerid;
  5290.                                         Inventation[giveplayerid] = playerid;
  5291.                                         DualRoom2price = price;
  5292.                                         DualRoom2 = playerid;
  5293.                                         WeaponDualRoom2 = 24;
  5294.                                         return 1;
  5295.                                     }
  5296.                                     else if(DualRoom3 == -1)
  5297.                                     {
  5298.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5299.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit Desert Eagle angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5300.                                         SendClientMessage(giveplayerid, GREEN, string);
  5301.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Desert Eagle mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5302.                                         SendClientMessage(playerid, GREEN, string);
  5303.                                         InventationSent[playerid] = giveplayerid;
  5304.                                         Inventation[giveplayerid] = playerid;
  5305.                                         DualRoom3price = price;
  5306.                                         DualRoom3 = playerid;
  5307.                                         WeaponDualRoom3 = 24;
  5308.                                         return 1;
  5309.                                     }
  5310.                                     else if(DualRoom4 == -1)
  5311.                                     {
  5312.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5313.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit Desert Eagle angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5314.                                         SendClientMessage(giveplayerid, GREEN, string);
  5315.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Desert Eagle mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5316.                                         SendClientMessage(playerid, GREEN, string);
  5317.                                         InventationSent[playerid] = giveplayerid;
  5318.                                         Inventation[giveplayerid] = playerid;
  5319.                                         DualRoom4price = price;
  5320.                                         DualRoom4 = playerid;
  5321.                                         WeaponDualRoom4 = 24;
  5322.                                         return 1;
  5323.                                     }
  5324.                                     else return SendClientMessage(playerid, RED, "Es sind keine Duellräume frei.");
  5325.                                 }
  5326.                                 else return SendClientMessage(playerid, RED, "Dieser Spieler ist scon in einem Duell!");
  5327.                             }
  5328.                             else return SendClientMessage(playerid, RED, "Du bist schon in einem Duell.");
  5329.                         }
  5330.                         else return SendClientMessage(playerid, RED, "Du hast schon eine Einladung geschickt, warte 30 Sekunden");
  5331.                     }
  5332.                     else return SendClientMessage(playerid, RED, "Dieser Spieler hat schon eine Einladung bekommen.");
  5333.                 }
  5334.                 else return SendClientMessage(playerid, RED, "Du kannst nicht soviel Zahlen.");
  5335.             }
  5336.             if(strcmp("mp5", weapon, true, 3) == 0)
  5337.             {
  5338.                 if(GetPlayerMoney(playerid) >= price)
  5339.                 {
  5340.                     if(Inventation[giveplayerid] == -1)
  5341.                     {
  5342.                         if(InventationSent[playerid] == -1)
  5343.                         {
  5344.                             if(InDual[playerid] == 0)
  5345.                             {
  5346.                                 if(InDual[giveplayerid] == 0)
  5347.                                 {
  5348.                                     if(DualRoom1 == -1)
  5349.                                     {
  5350.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5351.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer MP5 angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5352.                                         SendClientMessage(giveplayerid, GREEN, string);
  5353.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer MP5 mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5354.                                         SendClientMessage(playerid, GREEN, string);
  5355.                                         InventationSent[playerid] = giveplayerid;
  5356.                                         Inventation[giveplayerid] = playerid;
  5357.                                         Inventationprice[giveplayerid] = price;
  5358.                                         DualRoom1price = price;
  5359.                                         DualRoom1 = playerid;
  5360.                                         WeaponDualRoom1 = 29;
  5361.                                         return 1;
  5362.                                     }
  5363.                                     else if(DualRoom2 == -1)
  5364.                                     {
  5365.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5366.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer MP5 angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5367.                                         SendClientMessage(giveplayerid, GREEN, string);
  5368.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer MP5 mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5369.                                         SendClientMessage(playerid, GREEN, string);
  5370.                                         InventationSent[playerid] = giveplayerid;
  5371.                                         Inventation[giveplayerid] = playerid;
  5372.                                         DualRoom2price = price;
  5373.                                         DualRoom2 = playerid;
  5374.                                         WeaponDualRoom2 = 29;
  5375.                                         return 1;
  5376.                                     }
  5377.                                     else if(DualRoom3 == -1)
  5378.                                     {
  5379.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5380.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer MP5 angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5381.                                         SendClientMessage(giveplayerid, GREEN, string);
  5382.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer MP5 mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5383.                                         SendClientMessage(playerid, GREEN, string);
  5384.                                         InventationSent[playerid] = giveplayerid;
  5385.                                         Inventation[giveplayerid] = playerid;
  5386.                                         DualRoom3price = price;
  5387.                                         DualRoom3 = playerid;
  5388.                                         WeaponDualRoom3 = 29;
  5389.                                         return 1;
  5390.                                     }
  5391.                                     else if(DualRoom4 == -1)
  5392.                                     {
  5393.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5394.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer MP5 angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5395.                                         SendClientMessage(giveplayerid, GREEN, string);
  5396.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer MP5 mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5397.                                         SendClientMessage(playerid, GREEN, string);
  5398.                                         InventationSent[playerid] = giveplayerid;
  5399.                                         Inventation[giveplayerid] = playerid;
  5400.                                         DualRoom4price = price;
  5401.                                         DualRoom4 = playerid;
  5402.                                         WeaponDualRoom4 = 29;
  5403.                                         return 1;
  5404.                                     }
  5405.                                     else return SendClientMessage(playerid, RED, "Es sind keine Duellräume frei.");
  5406.                                 }
  5407.                                 else return SendClientMessage(playerid, RED, "Dieser Spieler ist scon in einem Duell!");
  5408.                             }
  5409.                             else return SendClientMessage(playerid, RED, "Du bist schon in einem Duell.");
  5410.                         }
  5411.                         else return SendClientMessage(playerid, RED, "Du hast schon eine Einladung geschickt, warte 30 Sekunden");
  5412.                     }
  5413.                     else return SendClientMessage(playerid, RED, "Dieser Spieler hat schon eine Einladung bekommen.");
  5414.                 }
  5415.                 else return SendClientMessage(playerid, RED, "Du kannst nicht soviel Zahlen.");
  5416.             }
  5417.             if(strcmp("chainsaw", weapon, true, 8) == 0)
  5418.             {
  5419.                 if(GetPlayerMoney(playerid) >= price)
  5420.                 {
  5421.                     if(Inventation[giveplayerid] == -1)
  5422.                     {
  5423.                         if(InventationSent[playerid] == -1)
  5424.                         {
  5425.                             if(InDual[playerid] == 0)
  5426.                             {
  5427.                                 if(InDual[giveplayerid] == 0)
  5428.                                 {
  5429.                                     if(DualRoom1 == -1)
  5430.                                     {
  5431.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5432.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Kettensäge angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5433.                                         SendClientMessage(giveplayerid, GREEN, string);
  5434.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Kettensäge mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5435.                                         SendClientMessage(playerid, GREEN, string);
  5436.                                         InventationSent[playerid] = giveplayerid;
  5437.                                         Inventation[giveplayerid] = playerid;
  5438.                                         Inventationprice[giveplayerid] = price;
  5439.                                         DualRoom1price = price;
  5440.                                         DualRoom1 = playerid;
  5441.                                         WeaponDualRoom1 = 9;
  5442.                                         return 1;
  5443.                                     }
  5444.                                     else if(DualRoom2 == -1)
  5445.                                     {
  5446.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5447.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Kettensäge angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5448.                                         SendClientMessage(giveplayerid, GREEN, string);
  5449.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Kettensäge mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5450.                                         SendClientMessage(playerid, GREEN, string);
  5451.                                         InventationSent[playerid] = giveplayerid;
  5452.                                         Inventation[giveplayerid] = playerid;
  5453.                                         DualRoom2price = price;
  5454.                                         DualRoom2 = playerid;
  5455.                                         WeaponDualRoom2 = 9;
  5456.                                         return 1;
  5457.                                     }
  5458.                                     else if(DualRoom3 == -1)
  5459.                                     {
  5460.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5461.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Kettensäge angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5462.                                         SendClientMessage(giveplayerid, GREEN, string);
  5463.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Kettensäge mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5464.                                         SendClientMessage(playerid, GREEN, string);
  5465.                                         InventationSent[playerid] = giveplayerid;
  5466.                                         Inventation[giveplayerid] = playerid;
  5467.                                         DualRoom3price = price;
  5468.                                         DualRoom3 = playerid;
  5469.                                         WeaponDualRoom3 = 9;
  5470.                                         return 1;
  5471.                                     }
  5472.                                     else if(DualRoom4 == -1)
  5473.                                     {
  5474.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5475.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Kettensäge angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5476.                                         SendClientMessage(giveplayerid, GREEN, string);
  5477.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Kettensäge mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5478.                                         SendClientMessage(playerid, GREEN, string);
  5479.                                         InventationSent[playerid] = giveplayerid;
  5480.                                         Inventation[giveplayerid] = playerid;
  5481.                                         DualRoom4price = price;
  5482.                                         DualRoom4 = playerid;
  5483.                                         WeaponDualRoom4 = 9;
  5484.                                         return 1;
  5485.                                     }
  5486.                                     else return SendClientMessage(playerid, RED, "Es sind keine Duellräume frei.");
  5487.                                 }
  5488.                                 else return SendClientMessage(playerid, RED, "Dieser Spieler ist scon in einem Duell!");
  5489.                             }
  5490.                             else return SendClientMessage(playerid, RED, "Du bist schon in einem Duell.");
  5491.                         }
  5492.                         else return SendClientMessage(playerid, RED, "Du hast schon eine Einladung geschickt, warte 30 Sekunden");
  5493.                     }
  5494.                     else return SendClientMessage(playerid, RED, "Dieser Spieler hat schon eine Einladung bekommen.");
  5495.                 }
  5496.                 else return SendClientMessage(playerid, RED, "Du kannst nicht soviel Zahlen.");
  5497.             }
  5498.             if(strcmp("silpist", weapon, true, 7) == 0)
  5499.             {
  5500.                 if(GetPlayerMoney(playerid) >= price)
  5501.                 {
  5502.                     if(Inventation[giveplayerid] == -1)
  5503.                     {
  5504.                         if(InventationSent[playerid] == -1)
  5505.                         {
  5506.                             if(InDual[playerid] == 0)
  5507.                             {
  5508.                                 if(InDual[giveplayerid] == 0)
  5509.                                 {
  5510.                                     SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5511.                                     if(DualRoom1 == -1)
  5512.                                     {
  5513.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5514.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Pistole angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5515.                                         SendClientMessage(giveplayerid, GREEN, string);
  5516.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Pistole mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5517.                                         SendClientMessage(playerid, GREEN, string);
  5518.                                         InventationSent[playerid] = giveplayerid;
  5519.                                         Inventation[giveplayerid] = playerid;
  5520.                                         Inventationprice[giveplayerid] = price;
  5521.                                         DualRoom1price = price;
  5522.                                         DualRoom1 = playerid;
  5523.                                         WeaponDualRoom1 = 23;
  5524.                                         return 1;
  5525.                                     }
  5526.                                     else if(DualRoom2 == -1)
  5527.                                     {
  5528.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5529.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Pistole angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5530.                                         SendClientMessage(giveplayerid, GREEN, string);
  5531.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Pistole mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5532.                                         SendClientMessage(playerid, GREEN, string);
  5533.                                         InventationSent[playerid] = giveplayerid;
  5534.                                         Inventation[giveplayerid] = playerid;
  5535.                                         DualRoom2price = price;
  5536.                                         DualRoom2 = playerid;
  5537.                                         WeaponDualRoom2 = 23;
  5538.                                         return 1;
  5539.                                     }
  5540.                                     else if(DualRoom3 == -1)
  5541.                                     {
  5542.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5543.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Pistole angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5544.                                         SendClientMessage(giveplayerid, GREEN, string);
  5545.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Pistole mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5546.                                         SendClientMessage(playerid, GREEN, string);
  5547.                                         InventationSent[playerid] = giveplayerid;
  5548.                                         Inventation[giveplayerid] = playerid;
  5549.                                         DualRoom3price = price;
  5550.                                         DualRoom3 = playerid;
  5551.                                         WeaponDualRoom3 = 23;
  5552.                                         return 1;
  5553.                                     }
  5554.                                     else if(DualRoom4 == -1)
  5555.                                     {
  5556.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5557.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Pistole angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5558.                                         SendClientMessage(giveplayerid, GREEN, string);
  5559.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Pistole mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5560.                                         SendClientMessage(playerid, GREEN, string);
  5561.                                         InventationSent[playerid] = giveplayerid;
  5562.                                         Inventation[giveplayerid] = playerid;
  5563.                                         DualRoom4price = price;
  5564.                                         DualRoom4 = playerid;
  5565.                                         WeaponDualRoom4 = 23;
  5566.                                         return 1;
  5567.                                     }
  5568.                                     else return SendClientMessage(playerid, RED, "Es sind keine Duellräume frei.");
  5569.                                 }
  5570.                                 else return SendClientMessage(playerid, RED, "Dieser Spieler ist scon in einem Duell!");
  5571.                             }
  5572.                             else return SendClientMessage(playerid, RED, "Du bist schon in einem Duell.");
  5573.                         }
  5574.                         else return SendClientMessage(playerid, RED, "Du hast schon eine Einladung geschickt, warte 30 Sekunden");
  5575.                     }
  5576.                     else return SendClientMessage(playerid, RED, "Dieser Spieler hat schon eine Einladung bekommen.");
  5577.                 }
  5578.                 else return SendClientMessage(playerid, RED, "Du kannst nicht soviel Zahlen.");
  5579.             }
  5580.             if(strcmp("combatsg", weapon, true, 8) == 0)
  5581.             {
  5582.                 if(GetPlayerMoney(playerid) >= price)
  5583.                 {
  5584.                     if(Inventation[giveplayerid] == -1)
  5585.                     {
  5586.                         if(InventationSent[playerid] == -1)
  5587.                         {
  5588.                             if(InDual[playerid] == 0)
  5589.                             {
  5590.                                 if(InDual[giveplayerid] == 0)
  5591.                                 {
  5592.                                     if(DualRoom1 == -1)
  5593.                                     {
  5594.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5595.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Combatshotgun angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5596.                                         SendClientMessage(giveplayerid, GREEN, string);
  5597.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Combatshotgun mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5598.                                         SendClientMessage(playerid, GREEN, string);
  5599.                                         InventationSent[playerid] = giveplayerid;
  5600.                                         Inventation[giveplayerid] = playerid;
  5601.                                         Inventationprice[giveplayerid] = price;
  5602.                                         DualRoom1price = price;
  5603.                                         DualRoom1 = playerid;
  5604.                                         WeaponDualRoom1 = 27;
  5605.                                         return 1;
  5606.                                     }
  5607.                                     else if(DualRoom2 == -1)
  5608.                                     {
  5609.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5610.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Combatshotgun angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5611.                                         SendClientMessage(giveplayerid, GREEN, string);
  5612.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Combatshotgun mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5613.                                         SendClientMessage(playerid, GREEN, string);
  5614.                                         InventationSent[playerid] = giveplayerid;
  5615.                                         Inventation[giveplayerid] = playerid;
  5616.                                         DualRoom2price = price;
  5617.                                         DualRoom2 = playerid;
  5618.                                         WeaponDualRoom2 = 27;
  5619.                                         return 1;
  5620.                                     }
  5621.                                     else if(DualRoom3 == -1)
  5622.                                     {
  5623.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5624.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Combatshotgun angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5625.                                         SendClientMessage(giveplayerid, GREEN, string);
  5626.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Combatshotgun mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5627.                                         SendClientMessage(playerid, GREEN, string);
  5628.                                         InventationSent[playerid] = giveplayerid;
  5629.                                         Inventation[giveplayerid] = playerid;
  5630.                                         DualRoom3price = price;
  5631.                                         DualRoom3 = playerid;
  5632.                                         WeaponDualRoom3 = 27;
  5633.                                         return 1;
  5634.                                     }
  5635.                                     else if(DualRoom4 == -1)
  5636.                                     {
  5637.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5638.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Combatshotgun angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5639.                                         SendClientMessage(giveplayerid, GREEN, string);
  5640.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Combatshotgun mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5641.                                         SendClientMessage(playerid, GREEN, string);
  5642.                                         InventationSent[playerid] = giveplayerid;
  5643.                                         Inventation[giveplayerid] = playerid;
  5644.                                         DualRoom4price = price;
  5645.                                         DualRoom4 = playerid;
  5646.                                         WeaponDualRoom4 = 27;
  5647.                                         return 1;
  5648.                                     }
  5649.                                     else return SendClientMessage(playerid, RED, "Es sind keine Duellräume frei.");
  5650.                                 }
  5651.                                 else return SendClientMessage(playerid, RED, "Dieser Spieler ist scon in einem Duell!");
  5652.                             }
  5653.                             else return SendClientMessage(playerid, RED, "Du bist schon in einem Duell.");
  5654.                         }
  5655.                         else return SendClientMessage(playerid, RED, "Du hast schon eine Einladung geschickt, warte 30 Sekunden");
  5656.                     }
  5657.                     else return SendClientMessage(playerid, RED, "Dieser Spieler hat schon eine Einladung bekommen.");
  5658.                 }
  5659.                 else return SendClientMessage(playerid, RED, "Du kannst nicht soviel Zahlen.");
  5660.             }
  5661.             if(strcmp("shotgun", weapon, true, 7) == 0)
  5662.             {
  5663.                 if(GetPlayerMoney(playerid) >= price)
  5664.                 {
  5665.                     if(Inventation[giveplayerid] == -1)
  5666.                     {
  5667.                         if(InventationSent[playerid] == -1)
  5668.                         {
  5669.                             if(InDual[playerid] == 0)
  5670.                             {
  5671.                                 if(InDual[giveplayerid] == 0)
  5672.                                 {
  5673.                                     if(DualRoom1 == -1)
  5674.                                     {
  5675.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5676.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Schrottflinte angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5677.                                         SendClientMessage(giveplayerid, GREEN, string);
  5678.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Schrottflinte mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5679.                                         SendClientMessage(playerid, GREEN, string);
  5680.                                         InventationSent[playerid] = giveplayerid;
  5681.                                         Inventation[giveplayerid] = playerid;
  5682.                                         Inventationprice[giveplayerid] = price;
  5683.                                         DualRoom1price = price;
  5684.                                         DualRoom1 = playerid;
  5685.                                         WeaponDualRoom1 = 25;
  5686.                                         return 1;
  5687.                                     }
  5688.                                     else if(DualRoom2 == -1)
  5689.                                     {
  5690.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5691.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Schrottflinte angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5692.                                         SendClientMessage(giveplayerid, GREEN, string);
  5693.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Schrottflinte mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5694.                                         SendClientMessage(playerid, GREEN, string);
  5695.                                         InventationSent[playerid] = giveplayerid;
  5696.                                         Inventation[giveplayerid] = playerid;
  5697.                                         DualRoom2price = price;
  5698.                                         DualRoom2 = playerid;
  5699.                                         WeaponDualRoom2 = 25;
  5700.                                         return 1;
  5701.                                     }
  5702.                                     else if(DualRoom3 == -1)
  5703.                                     {
  5704.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5705.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Schrottflinte angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5706.                                         SendClientMessage(giveplayerid, GREEN, string);
  5707.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Schrottflinte mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5708.                                         SendClientMessage(playerid, GREEN, string);
  5709.                                         InventationSent[playerid] = giveplayerid;
  5710.                                         Inventation[giveplayerid] = playerid;
  5711.                                         DualRoom3price = price;
  5712.                                         DualRoom3 = playerid;
  5713.                                         WeaponDualRoom3 = 25;
  5714.                                         return 1;
  5715.                                     }
  5716.                                     else if(DualRoom4 == -1)
  5717.                                     {
  5718.                                         SetTimerEx("inventationremove", 30000, 0, "i", playerid);
  5719.                                         format(string, sizeof(string), "%s hat dir ein 1 gegen 1 Duell mit einer Schrottflinte angeboten, Preis: $%d, /acceptduel or /duellablehnen", sendername, price);
  5720.                                         SendClientMessage(giveplayerid, GREEN, string);
  5721.                                         format(string, sizeof(string), "Du hast %s ein 1 gegen 1 Duell mit einer Schrottflinte mit dem Preisgeld von $%d angeboten.", giveplayername, price);
  5722.                                         SendClientMessage(playerid, GREEN, string);
  5723.                                         InventationSent[playerid] = giveplayerid;
  5724.                                         Inventation[giveplayerid] = playerid;
  5725.                                         DualRoom4price = price;
  5726.                                         DualRoom4 = playerid;
  5727.                                         WeaponDualRoom4 = 25;
  5728.                                         return 1;
  5729.                                     }
  5730.                                     else return SendClientMessage(playerid, RED, "Es sind keine Duellräume frei.");
  5731.                                 }
  5732.                                 else return SendClientMessage(playerid, RED, "Dieser Spieler ist scon in einem Duell!");
  5733.                             }
  5734.                             else return SendClientMessage(playerid, RED, "Du bist schon in einem Duell.");
  5735.                         }
  5736.                         else return SendClientMessage(playerid, RED, "Du hast schon eine Einladung geschickt, warte 30 Sekunden");
  5737.                     }
  5738.                     else return SendClientMessage(playerid, RED, "Dieser Spieler hat schon eine Einladung bekommen.");
  5739.                 }
  5740.                 else return SendClientMessage(playerid, RED, "Du kannst nicht soviel Zahlen.");
  5741.             }
  5742.             else return SendClientMessage(playerid, COLOR_YELLOW, "Richtige Benutzung: /duell [playerid] [waffe] [preisgeld]");
  5743.         }
  5744.         else return SendClientMessage(playerid, RED, "Du kannst dich nicht selbst Duelieren.");
  5745.     }
  5746. }
  5747.  
  5748. dcmd_acceptduel(playerid, params[])
  5749. {
  5750.     #pragma unused params
  5751.     if(Inventation[playerid] >= 0)
  5752.     {
  5753.         if(GetPlayerMoney(playerid) >= Inventationprice[playerid])
  5754.         {
  5755.             if(DualRoom1 == Inventation[playerid])
  5756.             {
  5757.                 SetPlayerTeam(playerid, 1);
  5758.                 SetPlayerTeam(Inventation[playerid], 2);
  5759.                 InDual[Inventation[playerid]] = 1;
  5760.                 InDual[playerid] = 1;
  5761.                 ResetPlayerWeapons(playerid);
  5762.                 ResetPlayerWeapons(Inventation[playerid]);
  5763.                 GivePlayerWeapon(playerid, WeaponDualRoom1, 500);
  5764.                 GivePlayerWeapon(Inventation[playerid], WeaponDualRoom1, 500);
  5765.                 SetPlayerPos(playerid, 1715.5034,-2865.0405,6.5554);
  5766.                 SetPlayerFacingAngle(playerid,317.1064);
  5767.                 SetPlayerPos(Inventation[playerid], 1723.2203,-2856.0315,6.5554);
  5768.                 SetPlayerFacingAngle(Inventation[playerid],140.0715);
  5769.                 SetPlayerHealth(playerid, 100);
  5770.                 SetPlayerArmour(playerid, 100);
  5771.                 SetPlayerHealth(Inventation[playerid], 100);
  5772.                 SetPlayerArmour(Inventation[playerid], 100);
  5773.                 GivePlayerMoney(playerid, -DualRoom1price);
  5774.                 GivePlayerMoney(Inventation[playerid], -DualRoom1price);
  5775.                 SendClientMessage(playerid, GREEN, "Lass die Schlacht beginnen!");
  5776.                 SendClientMessage(Inventation[playerid], GREEN, "Lass die Schlacht beginnen!");
  5777.                 TogglePlayerControllable(playerid, 0);
  5778.                 TogglePlayerControllable(Inventation[playerid], 0);
  5779.                 CountDown2(playerid, 3);
  5780.                 CountDown2(Inventation[playerid], 3);
  5781.             }
  5782.             if(DualRoom2 == Inventation[playerid])
  5783.             {
  5784.                 SetPlayerTeam(playerid, 1);
  5785.                 SetPlayerTeam(Inventation[playerid], 2);
  5786.                 InDual[Inventation[playerid]] = 1;
  5787.                 InDual[playerid] = 1;
  5788.                 ResetPlayerWeapons(playerid);
  5789.                 ResetPlayerWeapons(Inventation[playerid]);
  5790.                 GivePlayerWeapon(playerid, WeaponDualRoom2, 500);
  5791.                 GivePlayerWeapon(Inventation[playerid], WeaponDualRoom2, 500);
  5792.                 SetPlayerPos(playerid, 1747.7878,-2864.6843,6.5554);
  5793.                 SetPlayerFacingAngle(playerid,47.0340);
  5794.                 SetPlayerPos(Inventation[playerid], 1740.1650,-2858.3879,6.5554);
  5795.                 SetPlayerFacingAngle(Inventation[playerid],228.1190);
  5796.                 SetPlayerHealth(playerid, 100);
  5797.                 SetPlayerArmour(playerid, 100);
  5798.                 SetPlayerHealth(Inventation[playerid], 100);
  5799.                 SetPlayerArmour(Inventation[playerid], 100);
  5800.                 GivePlayerMoney(playerid, -DualRoom2price);
  5801.                 GivePlayerMoney(Inventation[playerid], -DualRoom2price);
  5802.                 SendClientMessage(playerid, GREEN, "Lass die Schlacht beginnen!");
  5803.                 SendClientMessage(Inventation[playerid], GREEN, "Lass die Schlacht beginnen!");
  5804.                 TogglePlayerControllable(playerid, 0);
  5805.                 TogglePlayerControllable(Inventation[playerid], 0);
  5806.                 CountDown2(playerid, 3);
  5807.                 CountDown2(Inventation[playerid], 3);
  5808.                 return 1;
  5809.             }
  5810.             if(DualRoom3 == Inventation[playerid])
  5811.             {
  5812.                 SetPlayerTeam(playerid, 1);
  5813.                 SetPlayerTeam(Inventation[playerid], 2);
  5814.                 InDual[Inventation[playerid]] = 1;
  5815.                 InDual[playerid] = 1;
  5816.                 ResetPlayerWeapons(playerid);
  5817.                 ResetPlayerWeapons(Inventation[playerid]);
  5818.                 GivePlayerWeapon(playerid, WeaponDualRoom3, 500);
  5819.                 GivePlayerWeapon(Inventation[playerid], WeaponDualRoom3, 500);
  5820.                 SetPlayerPos(playerid, 1748.3942,-2832.6250,6.5554);
  5821.                 SetPlayerFacingAngle(playerid,141.3482);
  5822.                 SetPlayerPos(Inventation[playerid], 1741.1982,-2839.9243,6.5554);
  5823.                 SetPlayerFacingAngle(Inventation[playerid],315.8531);
  5824.                 SetPlayerHealth(playerid, 100);
  5825.                 SetPlayerArmour(playerid, 100);
  5826.                 SetPlayerHealth(Inventation[playerid], 100);
  5827.                 SetPlayerArmour(Inventation[playerid], 100);
  5828.                 GivePlayerMoney(playerid, -DualRoom3price);
  5829.                 GivePlayerMoney(Inventation[playerid], -DualRoom3price);
  5830.                 SendClientMessage(playerid, GREEN, "Lass die Schlacht beginnen!");
  5831.                 SendClientMessage(Inventation[playerid], GREEN, "Lass die Schlacht beginnen!");
  5832.                 TogglePlayerControllable(playerid, 0);
  5833.                 TogglePlayerControllable(Inventation[playerid], 0);
  5834.                 CountDown2(playerid, 3);
  5835.                 CountDown2(Inventation[playerid], 3);
  5836.                 return 1;
  5837.             }
  5838.             if(DualRoom4 == Inventation[playerid])
  5839.             {
  5840.                 SetPlayerTeam(playerid, 1);
  5841.                 SetPlayerTeam(Inventation[playerid], 2);
  5842.                 InDual[Inventation[playerid]] = 1;
  5843.                 InDual[playerid] = 1;
  5844.                 ResetPlayerWeapons(playerid);
  5845.                 ResetPlayerWeapons(Inventation[playerid]);
  5846.                 GivePlayerWeapon(playerid, WeaponDualRoom4, 500);
  5847.                 GivePlayerWeapon(Inventation[playerid], WeaponDualRoom4, 500);
  5848.                 SetPlayerPos(playerid, 1716.7450,-2832.7969,6.5554);
  5849.                 SetPlayerFacingAngle(playerid,229.7091);
  5850.                 SetPlayerPos(Inventation[playerid], 1722.3630,-2840.2034,6.5554);
  5851.                 SetPlayerFacingAngle(Inventation[playerid],45.7807);
  5852.                 SetPlayerHealth(playerid, 100);
  5853.                 SetPlayerArmour(playerid, 100);
  5854.                 SetPlayerHealth(Inventation[playerid], 100);
  5855.                 SetPlayerArmour(Inventation[playerid], 100);
  5856.                 GivePlayerMoney(playerid, -DualRoom4price);
  5857.                 GivePlayerMoney(Inventation[playerid], -DualRoom4price);
  5858.                 SendClientMessage(playerid, GREEN, "Lass die Schlacht beginnen!");
  5859.                 SendClientMessage(Inventation[playerid], GREEN, "Lass die Schlacht beginnen!");
  5860.                 TogglePlayerControllable(playerid, 0);
  5861.                 TogglePlayerControllable(Inventation[playerid], 0);
  5862.                 CountDown2(playerid, 3);
  5863.                 CountDown2(Inventation[playerid], 3);
  5864.                 return 1;
  5865.             }
  5866.             return 1;
  5867.         }
  5868.         else return SendClientMessage(playerid, RED, "Du hast nicht genug Geld, bitte benutze /duellablehnen .");
  5869.     }
  5870.     else return SendClientMessage(playerid, RED, "Du hast keine Duelleinladung bekommen.");
  5871. }
  5872.  
  5873. dcmd_duellablehnen(playerid, params[])
  5874. {
  5875.     #pragma unused params
  5876.     SendClientMessage(playerid, RED, "Du hast die Duelleinladung abgelehnt.");
  5877.     SendClientMessage(Inventation[playerid], RED, "Deine Duelleinladung wurde abgelehnt.");
  5878.     Inventation[InventationSent[playerid]] = -1;
  5879.     InventationSent[playerid] = -1;
  5880.     if(DualRoom1 == playerid)
  5881.     {
  5882.         DualRoom1 = -1;
  5883.     }
  5884.     if(DualRoom2 == playerid)
  5885.     {
  5886.         DualRoom2 = -1;
  5887.     }
  5888.     if(DualRoom3 == playerid)
  5889.     {
  5890.         DualRoom3 = -1;
  5891.     }
  5892.     if(DualRoom3 == playerid)
  5893.     {
  5894.         DualRoom4 = -1;
  5895.     }
  5896.     return 1;
  5897. }
  5898.  
  5899. stock sscanf(string[], format[], {Float,_}:...)
  5900. {
  5901.     #if defined isnull
  5902.         if (isnull(string))
  5903.     #else
  5904.         if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
  5905.     #endif
  5906.         {
  5907.             return format[0];
  5908.         }
  5909.     #pragma tabsize 4
  5910.     new
  5911.         formatPos = 0,
  5912.         stringPos = 0,
  5913.         paramPos = 2,
  5914.         paramCount = numargs(),
  5915.         delim = ' ';
  5916.     while (string[stringPos] && string[stringPos] <= ' ')
  5917.     {
  5918.         stringPos++;
  5919.     }
  5920.     while (paramPos < paramCount && string[stringPos])
  5921.     {
  5922.         switch (format[formatPos++])
  5923.         {
  5924.             case '\0':
  5925.             {
  5926.                 return 0;
  5927.             }
  5928.             case 'i', 'd':
  5929.             {
  5930.                 new
  5931.                     neg = 1,
  5932.                     num = 0,
  5933.                     ch = string[stringPos];
  5934.                 if (ch == '-')
  5935.                 {
  5936.                     neg = -1;
  5937.                     ch = string[++stringPos];
  5938.                 }
  5939.                 do
  5940.                 {
  5941.                     stringPos++;
  5942.                     if ('0' <= ch <= '9')
  5943.                     {
  5944.                         num = (num * 10) + (ch - '0');
  5945.                     }
  5946.                     else
  5947.                     {
  5948.                         return -1;
  5949.                     }
  5950.                 }
  5951.                 while ((ch = string[stringPos]) > ' ' && ch != delim);
  5952.                 setarg(paramPos, 0, num * neg);
  5953.             }
  5954.             case 'h', 'x':
  5955.             {
  5956.                 new
  5957.                     num = 0,
  5958.                     ch = string[stringPos];
  5959.                 do
  5960.                 {
  5961.                     stringPos++;
  5962.                     switch (ch)
  5963.                     {
  5964.                         case 'x', 'X':
  5965.                         {
  5966.                             num = 0;
  5967.                             continue;
  5968.                         }
  5969.                         case '0' .. '9':
  5970.                         {
  5971.                             num = (num << 4) | (ch - '0');
  5972.                         }
  5973.                         case 'a' .. 'f':
  5974.                         {
  5975.                             num = (num << 4) | (ch - ('a' - 10));
  5976.                         }
  5977.                         case 'A' .. 'F':
  5978.                         {
  5979.                             num = (num << 4) | (ch - ('A' - 10));
  5980.                         }
  5981.                         default:
  5982.                         {
  5983.                             return -1;
  5984.                         }
  5985.                     }
  5986.                 }
  5987.                 while ((ch = string[stringPos]) > ' ' && ch != delim);
  5988.                 setarg(paramPos, 0, num);
  5989.             }
  5990.             case 'c':
  5991.             {
  5992.                 setarg(paramPos, 0, string[stringPos++]);
  5993.             }
  5994.             case 'f':
  5995.             {
  5996.                 setarg(paramPos, 0, _:floatstr(string[stringPos]));
  5997.             }
  5998.             case 'p':
  5999.             {
  6000.                 delim = format[formatPos++];
  6001.                 continue;
  6002.             }
  6003.             case '\'':
  6004.             {
  6005.                 new
  6006.                     end = formatPos - 1,
  6007.                     ch;
  6008.                 while ((ch = format[++end]) && ch != '\'') {}
  6009.                 if (!ch)
  6010.                 {
  6011.                     return -1;
  6012.                 }
  6013.                 format[end] = '\0';
  6014.                 if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
  6015.                 {
  6016.                     if (format[end + 1])
  6017.                     {
  6018.                         return -1;
  6019.                     }
  6020.                     return 0;
  6021.                 }
  6022.                 format[end] = '\'';
  6023.                 stringPos = ch + (end - formatPos);
  6024.                 formatPos = end + 1;
  6025.             }
  6026.             case 'u':
  6027.             {
  6028.                 new
  6029.                     end = stringPos - 1,
  6030.                     id = 0,
  6031.                     bool:num = true,
  6032.                     ch;
  6033.                 while ((ch = string[++end]) && ch != delim)
  6034.                 {
  6035.                     if (num)
  6036.                     {
  6037.                         if ('0' <= ch <= '9')
  6038.                         {
  6039.                             id = (id * 10) + (ch - '0');
  6040.                         }
  6041.                         else
  6042.                         {
  6043.                             num = false;
  6044.                         }
  6045.                     }
  6046.                 }
  6047.                 if (num && IsPlayerConnected(id))
  6048.                 {
  6049.                     setarg(paramPos, 0, id);
  6050.                 }
  6051.                 else
  6052.                 {
  6053.                     #if !defined foreach
  6054.                         #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
  6055.                         #define __SSCANF_FOREACH__
  6056.                     #endif
  6057.                     string[end] = '\0';
  6058.                     num = false;
  6059.                     new
  6060.                         name[MAX_PLAYER_NAME];
  6061.                     id = end - stringPos;
  6062.                     foreach (Player, playerid)
  6063.                     {
  6064.                         GetPlayerName(playerid, name, sizeof (name));
  6065.                         if (!strcmp(name, string[stringPos], true, id))
  6066.                         {
  6067.                             setarg(paramPos, 0, playerid);
  6068.                             num = true;
  6069.                             break;
  6070.                         }
  6071.                     }
  6072.                     if (!num)
  6073.                     {
  6074.                         setarg(paramPos, 0, INVALID_PLAYER_ID);
  6075.                     }
  6076.                     string[end] = ch;
  6077.                     #if defined __SSCANF_FOREACH__
  6078.                         #undef foreach
  6079.                         #undef __SSCANF_FOREACH__
  6080.                     #endif
  6081.                 }
  6082.                 stringPos = end;
  6083.             }
  6084.             case 's', 'z':
  6085.             {
  6086.                 new
  6087.                     i = 0,
  6088.                     ch;
  6089.                 if (format[formatPos])
  6090.                 {
  6091.                     while ((ch = string[stringPos++]) && ch != delim)
  6092.                     {
  6093.                         setarg(paramPos, i++, ch);
  6094.                     }
  6095.                     if (!i)
  6096.                     {
  6097.                         return -1;
  6098.                     }
  6099.                 }
  6100.                 else
  6101.                 {
  6102.                     while ((ch = string[stringPos++]))
  6103.                     {
  6104.                         setarg(paramPos, i++, ch);
  6105.                     }
  6106.                 }
  6107.                 stringPos--;
  6108.                 setarg(paramPos, i, '\0');
  6109.             }
  6110.             default:
  6111.             {
  6112.                 continue;
  6113.             }
  6114.         }
  6115.         while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
  6116.         {
  6117.             stringPos++;
  6118.         }
  6119.         while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
  6120.         {
  6121.             stringPos++;
  6122.         }
  6123.         paramPos++;
  6124.     }
  6125.     do
  6126.     {
  6127.         if ((delim = format[formatPos++]) > ' ')
  6128.         {
  6129.             if (delim == '\'')
  6130.             {
  6131.                 while ((delim = format[formatPos++]) && delim != '\'') {}
  6132.             }
  6133.             else if (delim != 'z')
  6134.             {
  6135.                 return delim;
  6136.             }
  6137.         }
  6138.     }
  6139.     while (delim > ' ');
  6140.     return 0;
  6141. }
  6142.  
  6143. public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
  6144. {
  6145.     new Float:oldposx, Float:oldposy, Float:oldposz;
  6146.     new Float:tempposx, Float:tempposy, Float:tempposz;
  6147.     GetPlayerPos(playerid, oldposx, oldposy, oldposz);
  6148.     tempposx = (oldposx -x);
  6149.     tempposy = (oldposy -y);
  6150.     tempposz = (oldposz -z);
  6151.     if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
  6152.     {
  6153.         return 1;
  6154.     }
  6155.     return 0;
  6156. }
  6157.  
  6158.  
  6159.  
  6160. forward BOtimer();
  6161. public BOtimer()
  6162. {
  6163.     for(new playerid=0; playerid<MAX_PLAYERS; playerid++)
  6164.     {
  6165.         if(IsPlayerConnected(playerid) && GetPlayerState(playerid)==PLAYER_STATE_DRIVER)
  6166.         {
  6167.             new Float:speed[3],vehicleid=GetPlayerVehicleID(playerid);
  6168.             GetVehicleVelocity(vehicleid,speed[0],speed[1],speed[2]);
  6169.             SetVehicleVelocity(vehicleid,speed[0]*RATIO,speed[1]*RATIO,speed[2]*RATIO);
  6170.         }
  6171.     }
  6172. }
  6173.  
  6174. forward BOtimer2();
  6175. public BOtimer2()
  6176. {
  6177.     for(new playerid=0; playerid<MAX_PLAYERS; playerid++)
  6178.     {
  6179.         if(IsPlayerConnected(playerid) && GetPlayerState(playerid)==PLAYER_STATE_DRIVER)
  6180.         {
  6181.             new keys,leftright,updown;
  6182.             GetPlayerKeys(playerid,keys,updown,leftright);
  6183.             if(keys == 40)
  6184.             {
  6185.                 burnout[playerid]++;
  6186.             }else if(burnout[playerid]>10 && keys == 8){
  6187.                 if(burnout[playerid]>35) burnout[playerid]=35;
  6188.                 new Float:speed[2],vehicleid=GetPlayerVehicleID(playerid);
  6189.                 GetXYInFrontOfVehicle(vehicleid,speed[0],speed[1],0.007*burnout[playerid]);
  6190.                 AccelerateTowardsAPoint(vehicleid,speed[0],speed[1]);
  6191.                 burnout[playerid]=0;
  6192.             }
  6193.         }
  6194.     }
  6195. }
  6196.  
  6197. stock GetXYInFrontOfVehicle(vehicleid, &Float:x, &Float:y, Float:distance)
  6198. {       // Created by Y_Less
  6199.  
  6200.         new Float:a;
  6201.         GetVehiclePos(vehicleid, x, y, a);
  6202.         GetVehicleZAngle(vehicleid, a);
  6203.  
  6204.         x += (distance * floatsin(-a, degrees));
  6205.         y += (distance * floatcos(-a, degrees));
  6206. }
  6207.  
  6208. stock AccelerateTowardsAPoint(vehicleid,Float:x,Float:y)
  6209. {
  6210.     new Float:pos[6];
  6211.     GetVehicleVelocity(vehicleid,pos[4],pos[5],pos[2]);
  6212.     GetVehiclePos(vehicleid,pos[0],pos[1],pos[3]);
  6213.     if(GivesSpeed(pos[4],pos[5],pos[2],x-pos[0],y-pos[1],pos[2]))
  6214.         SetVehicleVelocity(vehicleid,x-pos[0],y-pos[1],pos[2]);
  6215. }
  6216.  
  6217. stock GivesSpeed(Float:x,Float:y,Float:z,Float:newx,Float:newy,Float:newz) // Checks if one velocity is bigger than another.
  6218. {
  6219.     if(floatsqroot(floatpower(floatabs(x),2)+floatpower(floatabs(y),2)+floatpower(floatabs(z),2))<floatsqroot(floatpower(floatabs(newx),2)+floatpower(floatabs(newy),2)+floatpower(floatabs(newz),2))) return true;
  6220.     return false;
  6221. }
  6222.  
  6223.  
  6224. //::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  6225. // -> Update Clock Functions <-
  6226. //::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  6227. public L_UpdateTime(playerid)
  6228. {
  6229.     new string[256];
  6230.     new Hour, Minute, Second;
  6231.     new Year, Monat, Day;
  6232.     gettime(Hour,Minute,Second);
  6233.     getdate(Year, Monat, Day);
  6234.     format(string, sizeof(string), "%02d:%02d", Hour,Minute);
  6235.     TextDrawSetString(LHour, string);
  6236.     format(string, sizeof(string), "Tag: %02d (%02d/%d/%d)", Day,Day, Monat, Year);
  6237.     TextDrawSetString(LDay, string);
  6238.  
  6239.     if(Monat == 1){
  6240.     format(string, sizeof(string), "Monat: Januar");
  6241.     TextDrawSetString(LMonat, string);
  6242.     }
  6243.     else if(Monat == 2)
  6244.     {
  6245.     format(string, sizeof(string), "Monat: Februar");
  6246.     TextDrawSetString(LMonat, string);
  6247.     }
  6248.     else if(Monat == 3){
  6249.     format(string, sizeof(string), "Monat: März");
  6250.     TextDrawSetString(LMonat, string);
  6251.     }
  6252.     else if(Monat == 4){
  6253.     format(string, sizeof(string), "Monat: April");
  6254.     TextDrawSetString(LMonat, string);
  6255.     }
  6256.     else if(Monat == 5){
  6257.     format(string, sizeof(string), "Monat: Mai");
  6258.     TextDrawSetString(LMonat, string);
  6259.     }
  6260.     else if(Monat == 6){
  6261.     format(string, sizeof(string), "Monat: Juni");
  6262.     TextDrawSetString(LMonat, string);
  6263.     }
  6264.     else if(Monat == 7){
  6265.     format(string, sizeof(string), "Monat: Juli");
  6266.     TextDrawSetString(LMonat, string);
  6267.     }
  6268.     else if(Monat == 8){
  6269.     format(string, sizeof(string), "Monat: August");
  6270.     TextDrawSetString(LMonat, string);
  6271.     }
  6272.     else if(Monat == 9){
  6273.     format(string, sizeof(string), "Monat: September");
  6274.     TextDrawSetString(LMonat, string);
  6275.     }
  6276.     else if(Monat == 10){
  6277.     format(string, sizeof(string), "Monat: Oktober");
  6278.     TextDrawSetString(LMonat, string);
  6279.     }
  6280.     else if(Monat == 11){
  6281.     format(string, sizeof(string), "Monat: November");
  6282.     TextDrawSetString(LMonat, string);
  6283.     }
  6284.     else if(Monat == 12){
  6285.     format(string, sizeof(string), "Monat: Dezember");
  6286.     TextDrawSetString(LMonat, string);
  6287.     }
  6288.     switch(Hour){
  6289.     case 0..5:{
  6290.     format(string, sizeof(string), "~y~Guten Morgen!");
  6291.     TextDrawSetString(LMsg, string);
  6292.     }
  6293.     case 6..11:{
  6294.     format(string, sizeof(string), "~y~Guten Morgen!");
  6295.     TextDrawSetString(LMsg, string);
  6296.     }
  6297.     case 12..17:{
  6298.     format(string, sizeof(string), "~g~Guten Tag!");
  6299.     TextDrawSetString(LMsg, string);
  6300.     }
  6301.     case 18..23:{
  6302.     format(string, sizeof(string), "~b~Guten Abend!");
  6303.     TextDrawSetString(LMsg, string);
  6304.     }
  6305.     }
  6306.     return 1;
  6307. }
  6308.  
  6309. //::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  6310. // -> Update Clock Hours <-
  6311. //::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  6312. public L_UpdateClock()
  6313. {
  6314.     new Year,Monat;
  6315.     new Day,Hour;
  6316.     new Min,Second;
  6317.     new nstring[5];
  6318.     getdate(Year, Monat, Day);
  6319.     gettime(Hour, Min, Second);
  6320.     TextDrawShowForAll(LHour);
  6321.     TextDrawShowForAll(LDay);
  6322.     TextDrawShowForAll(LMonat);
  6323.     TextDrawShowForAll(LInfo);
  6324.     TextDrawShowForAll(LCategory);
  6325.     TextDrawShowForAll(LMsg);
  6326.     TextDrawShowForAll(LText1);
  6327.     TextDrawShowForAll(LText2);
  6328.     TextDrawShowForAll(LText3);
  6329.     TextDrawShowForAll(LText4);
  6330.     TextDrawShowForAll(LText5);
  6331.     TextDrawShowForAll(LText6);
  6332.     TextDrawShowForAll(LText7);
  6333.     TextDrawShowForAll(LuxClock_Center);
  6334.  
  6335.     for(new l; l < 12; l++) TextDrawShowForAll(LuxClock[l]);
  6336.     if (Hour > 12) Hour -= 12;
  6337.     if (Hour == 0) Hour = 12;
  6338.     for(new l; l < 12; l++){
  6339.     if (Hour-1 == l){
  6340.     format(nstring, sizeof nstring, "~w~%s", Tstring[DelTime]);
  6341.     TextDrawSetString(LuxClock[DelTime], nstring);
  6342.     TextDrawShowForAll(LuxClock[DelTime]);
  6343.     //SetWorldTime(Hour);
  6344.     format(nstring, sizeof nstring, "~r~%d", l+1);
  6345.     TextDrawSetString(LuxClock[l], nstring);
  6346.     TextDrawShowForAll(LuxClock[l]); DelTime = l;
  6347.     break;
  6348.     }
  6349.     }
  6350.     }
  6351.  
  6352.  
  6353.  
  6354. Float:GetPlayerTheoreticAngle(i)
  6355. {
  6356.         new Float:sin;
  6357.         new Float:dis;
  6358.         new Float:angle2;
  6359.         new Float:x,Float:y,Float:z;
  6360.         new Float:tmp3;
  6361.         new Float:tmp4;
  6362.         new Float:MindAngle;
  6363.  
  6364.         if(IsPlayerConnected(i)){
  6365.  
  6366.                 GetPlayerPos(i,x,y,z);
  6367.  
  6368.                 dis = floatsqroot(floatpower(floatabs(floatsub(x,ppos[i][0])),2)+floatpower(floatabs(floatsub(y,ppos[i][1])),2));
  6369.  
  6370.                 if(IsPlayerInAnyVehicle(i)){GetVehicleZAngle(GetPlayerVehicleID(i), angle2);}else{GetPlayerFacingAngle(i, angle2);}
  6371.  
  6372.                 if(x>ppos[i][0]){tmp3=x-ppos[i][0];}else{tmp3=ppos[i][0]-x;}
  6373.                 if(y>ppos[i][1]){tmp4=y-ppos[i][1];}else{tmp4=ppos[i][1]-y;}
  6374.  
  6375.                 if(ppos[i][1]>y && ppos[i][0]>x){
  6376.                     sin = asin(tmp3/dis);
  6377.                     MindAngle = floatsub(floatsub(floatadd(sin, 90), floatmul(sin, 2)), -90.0);
  6378.                 }
  6379.  
  6380.                 if(ppos[i][1]<y && ppos[i][0]>x){
  6381.                     sin = asin(tmp3/dis);
  6382.                     MindAngle = floatsub(floatadd(sin, 180), 180.0);
  6383.                 }
  6384.  
  6385.                 if(ppos[i][1]<y && ppos[i][0]<x){
  6386.                     sin = acos(tmp4/dis);
  6387.                     MindAngle = floatsub(floatadd(sin, 360), floatmul(sin, 2));
  6388.                 }
  6389.  
  6390.                 if(ppos[i][1]>y && ppos[i][0]<x){
  6391.                     sin = asin(tmp3/dis);
  6392.                     MindAngle = floatadd(sin, 180);
  6393.                 }
  6394.         }
  6395.  
  6396.         if(MindAngle == 0.0){return angle2;}else{return MindAngle;}
  6397. }
  6398.  
  6399. public DriftExit(playerid){
  6400.         PlayerDriftCancellation[playerid] = 0;
  6401.  
  6402.         new Float:h;
  6403.         GetVehicleHealth(GetPlayerVehicleID(playerid),h);
  6404.         if(DriftPointsNow[playerid]>70 && DriftPointsNow[playerid]<10000 && h==HealthInit[playerid]) GivePlayerMoney(playerid,DriftPointsNow[playerid]*DriftBonus[playerid]);
  6405.         TextDrawHideForPlayer(playerid,TDLabels[0]);
  6406.         TextDrawHideForPlayer(playerid,TDLabels[1]);
  6407.         TextDrawHideForPlayer(playerid,TDLabels[2]);
  6408.         TextDrawHideForPlayer(playerid,TDValueDrift[playerid]);
  6409.         TextDrawHideForPlayer(playerid,TDValueBonus[playerid]);
  6410.         TextDrawHideForPlayer(playerid,TDValueCash2[playerid]);
  6411.         DriftBonus[playerid]=1;
  6412.         AutoFixBool[playerid]=true;
  6413.         SetVehicleHealth(GetPlayerVehicleID(playerid),HealthInit[playerid]);
  6414.         DriftPointsNow[playerid] = 0;
  6415. }
  6416.  
  6417. Float:ReturnPlayerAngle(playerid){
  6418.         new Float:Ang;
  6419.         if(IsPlayerInAnyVehicle(playerid))GetVehicleZAngle(GetPlayerVehicleID(playerid), Ang); else GetPlayerFacingAngle(playerid, Ang);
  6420.         return Ang;
  6421. }
  6422.  
  6423. public Drift(){
  6424.         new Float:Angle1, Float:Angle2, Float:BySpeed;
  6425.         new Float:Z;
  6426.         new Float:X;
  6427.         new Float:Y;
  6428.         new Float:SpeedX;
  6429.         for(new g=0;g<200;g++){
  6430.                 GetPlayerPos(g, X, Y, Z);
  6431.                 SpeedX = floatsqroot(floatadd(floatadd(floatpower(floatabs(floatsub(X,SavedPos[ g ][ sX ])),2),floatpower(floatabs(floatsub(Y,SavedPos[ g ][ sY ])),2)),floatpower(floatabs(floatsub(Z,SavedPos[ g ][ sZ ])),2)));
  6432.                 Angle1 = ReturnPlayerAngle(g);
  6433.                 Angle2 = GetPlayerTheoreticAngle(g);
  6434.                 BySpeed = floatmul(SpeedX, 12);
  6435.                 if(IsPlayerInAnyVehicle(g) && GetVType(GetPlayerVehicleID(g)) && floatabs(floatsub(Angle1, Angle2)) > DRIFT_MINKAT && floatabs(floatsub(Angle1, Angle2)) < DRIFT_MAXKAT && BySpeed > DRIFT_SPEED){
  6436.                         if(PlayerDriftCancellation[g] > 0)KillTimer(PlayerDriftCancellation[g]);
  6437.                         PlayerDriftCancellation[g] = 0;
  6438.                         DriftPointsNow[g] += floatval( floatabs(floatsub(Angle1, Angle2)) * 3 * (BySpeed*0.1) )/10;
  6439.                         PlayerDriftCancellation[g] = SetTimerEx("DriftExit", 3000, 0, "d", g);
  6440.                 }
  6441.  
  6442.                 if(DriftPointsNow[g] > 70 && DriftPointsNow[g]<10000){
  6443.                     if(DriftPointsNow[g]<200){
  6444.                         DriftBonus[g]=1;
  6445.                     }
  6446.                     if(DriftPointsNow[g]>=200 && DriftPointsNow[g]<500){
  6447.                         DriftBonus[g]=2;
  6448.                     }
  6449.                     if(DriftPointsNow[g]>=500 && DriftPointsNow[g]<1000){
  6450.                         DriftBonus[g]=3;
  6451.                     }
  6452.                     if(DriftPointsNow[g]>=1000 && DriftPointsNow[g]<1500){
  6453.                         DriftBonus[g]=4;
  6454.                     }
  6455.                     if(DriftPointsNow[g]>=1500){
  6456.                         DriftBonus[g]=5;
  6457.                     }
  6458.  
  6459.                     TextDrawShowForPlayer(g,TDLabels[0]);
  6460.                     TextDrawShowForPlayer(g,TDLabels[1]);
  6461.                     TextDrawShowForPlayer(g,TDLabels[2]);
  6462.  
  6463.                     TextDrawShowForPlayer(g,TDValueDrift[g]);
  6464.                     TextDrawShowForPlayer(g,TDValueBonus[g]);
  6465.                     TextDrawShowForPlayer(g,TDValueCash2[g]);
  6466.  
  6467.                     new DPs[128],DBn[128],Cash2[128],csh;
  6468.  
  6469.                     valstr(DPs,DriftPointsNow[g],false);
  6470.                     format(DBn,sizeof(DBn),"X%i",DriftBonus[g]);
  6471.                     csh=DriftPointsNow[g]*DriftBonus[g];
  6472.                     format(Cash2,sizeof(Cash2),"$%i",csh);
  6473.  
  6474.                     TextDrawSetString(TDValueDrift[g],DPs);
  6475.                     TextDrawSetString(TDValueBonus[g],DBn);
  6476.                     TextDrawSetString(TDValueCash2[g],Cash2);
  6477.                 }
  6478.                 SavedPos[ g ][ sX ] = X;
  6479.                 SavedPos[ g ][ sY ] = Y;
  6480.                 SavedPos[ g ][ sZ ] = Z;
  6481.         }
  6482. }
  6483.  
  6484. public AngleUpdate(){
  6485.         for(new g=0;g<=MAX_PLAYERS;g++){
  6486.                 new Float:x, Float:y, Float:z;
  6487.                 if(IsPlayerInAnyVehicle(g))GetVehiclePos(GetPlayerVehicleID(g), x, y, z); else GetPlayerPos(g, x, y, z);
  6488.                 ppos[g][0] = x;
  6489.                 ppos[g][1] = y;
  6490.                 ppos[g][2] = z;
  6491.         }
  6492. }
  6493.  
  6494. floatval(Float:val){
  6495.         new str[256];
  6496.         format(str, 256, "%.0f", val);
  6497.         return todec(str);
  6498. }
  6499.  
  6500. todec(str[]){
  6501.         return strval(str);
  6502. }
  6503.  
  6504. LoadTextDraws(){
  6505.     TDLabels[0]=TextDrawCreate(Label_X,TD_Y,"Drift Points");
  6506.     TextDrawColor(TDLabels[0],COLOR_Label);
  6507.     TextDrawSetShadow(TDLabels[0],0);
  6508.     TextDrawSetOutline(TDLabels[0],1);
  6509.     TextDrawLetterSize(TDLabels[0],0.5,2);
  6510.     TextDrawBackgroundColor(TDLabels[0],COLOR_LabelOut);
  6511.     TextDrawFont(TDLabels[0],1);
  6512.  
  6513.     TDLabels[1]=TextDrawCreate(Label_X,TD_Y+50,"Drift Bonus");
  6514.     TextDrawColor(TDLabels[1],COLOR_Label);
  6515.     TextDrawSetShadow(TDLabels[1],0);
  6516.     TextDrawSetOutline(TDLabels[1],1);
  6517.     TextDrawLetterSize(TDLabels[1],0.5,2);
  6518.     TextDrawBackgroundColor(TDLabels[1],COLOR_LabelOut);
  6519.     TextDrawFont(TDLabels[1],1);
  6520.  
  6521.     TDLabels[2]=TextDrawCreate(Label_X,TD_Y+100,"Drift Cash");
  6522.     TextDrawColor(TDLabels[2],COLOR_Label);
  6523.     TextDrawSetShadow(TDLabels[2],0);
  6524.     TextDrawSetOutline(TDLabels[2],1);
  6525.     TextDrawLetterSize(TDLabels[2],0.5,2);
  6526.     TextDrawBackgroundColor(TDLabels[2],COLOR_LabelOut);
  6527.     TextDrawFont(TDLabels[2],1);
  6528.  
  6529.     new i;
  6530.     for(i=0;i<=MAX_PLAYERS;i++){
  6531.         TDValueDrift[i]=TextDrawCreate(Value_X,TD_Y+20,"0");
  6532.         TextDrawColor(TDValueDrift[i],COLOR_Value);
  6533.         TextDrawSetShadow(TDValueDrift[i],0);
  6534.         TextDrawSetOutline(TDValueDrift[i],1);
  6535.         TextDrawLetterSize(TDValueDrift[i],0.5,2);
  6536.         TextDrawBackgroundColor(TDValueDrift[i],COLOR_ValueOut);
  6537.         TextDrawFont(TDValueDrift[i],3);
  6538.  
  6539.         TDValueBonus[i]=TextDrawCreate(Value_X,TD_Y+70,"X1");
  6540.         TextDrawColor(TDValueBonus[i],COLOR_Value);
  6541.         TextDrawSetShadow(TDValueBonus[i],0);
  6542.         TextDrawSetOutline(TDValueBonus[i],1);
  6543.         TextDrawLetterSize(TDValueBonus[i],0.5,2);
  6544.         TextDrawBackgroundColor(TDValueBonus[i],COLOR_ValueOut);
  6545.         TextDrawFont(TDValueBonus[i],3);
  6546.  
  6547.         TDValueCash2[i]=TextDrawCreate(Value_X,TD_Y+120,"$0");
  6548.         TextDrawColor(TDValueCash2[i],COLOR_Value);
  6549.         TextDrawSetShadow(TDValueCash2[i],0);
  6550.         TextDrawSetOutline(TDValueCash2[i],1);
  6551.         TextDrawLetterSize(TDValueCash2[i],0.5,2);
  6552.         TextDrawBackgroundColor(TDValueCash2[i],COLOR_ValueOut);
  6553.         TextDrawFont(TDValueCash2[i],3);
  6554.     }
  6555.  
  6556.     return 1;
  6557. }
  6558.  
  6559. public CheckPlayerState(){
  6560.     new i,cs;
  6561.  
  6562.     for(i=0;i<=MAX_PLAYERS;i++){
  6563.         cs=GetPlayerState(i);
  6564.         if(DriftMode[i] && cs==PLAYER_STATE_DRIVER && DriftPointsNow[i]>70){
  6565.             new Float:h;
  6566.             GetVehicleHealth(GetPlayerVehicleID(i),h);
  6567.             if(h<HealthInit[i]){
  6568.                 KillTimer(DriftTimer[i]);
  6569.                 DriftExit(i);
  6570.                 GameTextForPlayer(i,"~n~~n~~n~~n~~n~~n~~n~~r~Boom",800,5);
  6571.                 DriftMode[i]=false;
  6572.             }
  6573.         }
  6574.         if(cs==PLAYER_STATE_DRIVER && DriftMode[i]==false){
  6575.             if(GetVType(GetPlayerVehicleID(i))){
  6576.                 DriftMode[i]=true;
  6577.                 GetVehicleHealth(GetPlayerVehicleID(i),HealthInit[i]);
  6578.                 AutoFixBool[i]=false;
  6579.                 DriftTimer[i]=SetTimerEx("Drift", 200, true, "i", i);
  6580.             }
  6581.         }
  6582.         else if(cs!=PLAYER_STATE_DRIVER && DriftMode[i]==true){
  6583.             KillTimer(DriftTimer[i]);
  6584.             DriftMode[i]=false;
  6585.             AutoFixBool[i]=true;
  6586.         }
  6587.         else{}
  6588.     }
  6589.     return 1;
  6590. }
  6591.  
  6592. public AutoFix(){
  6593.     new i;
  6594.     for(i=0;i<=MAX_PLAYERS;i++){
  6595.         if(AutoFixBool[i] && IsPlayerInAnyVehicle(i)){
  6596.             SetVehicleHealth(GetPlayerVehicleID(i),HealthInit[i]);
  6597.         }
  6598.     }
  6599. }
  6600.  
  6601. GetVType(vid){
  6602.  
  6603.     new Convertibles[4]={480, 533, 439, 555};
  6604.     new Industrial[26]={499, 422, 482, 498, 609, 524, 578, 455, 403, 414, 582, 443, 514, 413, 515, 440, 543, 605, 459, 531, 408, 552, 478, 456, 554};
  6605.     new LowRider[8]={536, 575, 534, 567, 535, 566, 576, 412};
  6606.     new OffRoad[13]={568, 424, 573, 579, 400, 500, 444, 556, 557, 470, 489, 505, 595};
  6607.     new Service[19]={416, 433, 431, 438, 437, 523, 427, 490, 528, 407, 544, 596, 596, 597, 598, 599, 432, 601, 420};
  6608.     new Saloon[35]={445, 504, 401, 518, 527, 542, 507, 562, 585, 419, 526, 604, 466, 492, 474, 546, 517, 410, 551, 516, 467, 600, 426, 436, 547, 405, 580, 560, 550, 549, 540, 491, 529, 421};
  6609.     new Sports[20]={602, 429, 496, 402, 541, 415, 589, 587, 565, 494, 502, 503, 411, 559, 603, 475, 506, 451, 558, 477};
  6610.     new Wagons[5]={418, 404, 479, 458, 561};
  6611.  
  6612.     new modelid=GetVehicleModel(vid);
  6613.     new i;
  6614.     for(i=0;i<3;i++){
  6615.             if(Convertibles[i]==modelid) return 1;
  6616.     }
  6617.     for(i=0;i<25;i++){
  6618.             if(Industrial[i]==modelid) return 1;
  6619.     }
  6620.     for(i=0;i<7;i++){
  6621.             if(LowRider[i]==modelid) return 1;
  6622.     }
  6623.     for(i=0;i<12;i++){
  6624.             if(OffRoad[i]==modelid) return 1;
  6625.     }
  6626.     for(i=0;i<19;i++){
  6627.             if(Service[i]==modelid) return 1;
  6628.     }
  6629.     for(i=0;i<35;i++){
  6630.             if(Saloon[i]==modelid) return 1;
  6631.     }
  6632.     for(i=0;i<20;i++){
  6633.             if(Sports[i]==modelid) return 1;
  6634.     }
  6635.     for(i=0;i<5;i++){
  6636.             if(Wagons[i]==modelid) return 1;
  6637.     }
  6638.     return 0;
  6639. }
RAW Paste Data