Advertisement
Guest User

Untitled

a guest
Jul 3rd, 2012
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.67 KB | None | 0 0
  1.  
  2. #include <a_samp>
  3. #include <dini>
  4. #include <ocmd>
  5.  
  6. #define ROT 0xFF1E00FF
  7. #define BLAU 0x0019FFFF
  8. #define GRÜN 0x05FF00FF
  9. #define LILA 0xE600FFFF
  10. #define TÜRKIS 0x00FFFAFF
  11. #define GELB 0xEBFF00FF
  12. #define WEISS 0xFEFEFEFF
  13.  
  14. #define DIALOG_REGISTER 1
  15. #define DIALOG_LOGIN 2
  16. #define stats 3
  17. #define DIALOG_WILKOMMEN 4
  18.  
  19. //Fraktionsnamen
  20. #define frakname1 "Zivilist"
  21. #define frakname2 "Ballas"
  22. #define frakname3 "Groove Street"
  23. #define frakname4 "Los Santos Police Department"
  24.  
  25. // Spawn
  26.  
  27. #define zivispawn 1795.0411,-1937.5710,13.5469
  28. #define ballasspawn 1999.4473,-1122.8528,26.6537
  29. #define gsspawn 2497.3140,-1684.2803,13.3921
  30. #define lspdspawn 1587.9088,-1688.3746,6.2252
  31.  
  32.  
  33.  
  34.  
  35. new spawnskins[20] = {26,2,7,18,19,20,21,22,23,24,25,30,47,48,50,51,52,66,67,73};//Spawnskins kann umbenannt werden ! Die Zahl in den eckigen klammern MUSS mit der Anzahl aller Skins übereinstimmten !
  36.  
  37. main()
  38. {
  39. print("\n----------------------------------");
  40. print(" Sascha");
  41. print("----------------------------------\n");
  42. }
  43.  
  44.  
  45. public OnGameModeInit()
  46. {
  47. UsePlayerPedAnims();
  48. AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
  49. return 1;
  50. }
  51.  
  52. public OnGameModeExit()
  53. {
  54. return 1;
  55. }
  56.  
  57. public OnPlayerRequestClass(playerid, classid)
  58. {
  59. SetSpawnInfo(playerid,0,spawnskins[random(sizeof(spawnskins))],1958.3783,1343.1572,15.3746,0,29,999,343,23,0,0);
  60. SpawnPlayer(playerid);
  61. SetPlayerPos(playerid,1777.8466,-1934.3872,13.3855);
  62. SetPlayerFacingAngle(playerid,356.6157);
  63. ShowPlayerDialog(playerid,DIALOG_WILKOMMEN,DIALOG_STYLE_MSGBOX,"Willkommen","Willkommen auf dem Server, falls Sie Hilfe oder fragen haben drücken sie /hilfe oder fragen sie einen Admin.","Okay","Abbrechen");
  64. return 1;
  65. }
  66.  
  67. public OnPlayerConnect(playerid)
  68. {
  69. new Spielerdatei[64];
  70. new name[MAX_PLAYER_NAME];
  71. GetPlayerName(playerid,name,sizeof(name));
  72. format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  73. if(dini_Exists(Spielerdatei))
  74. {
  75. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden, gib bitte das Passwort ein","Einloggen","Abbrechen");
  76.  
  77. }
  78. else
  79. {
  80. ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gib bitte das gewünschte Passwort ein:","Registrieren","Abbrechen");
  81. }
  82. return 1;
  83. }
  84.  
  85. public OnPlayerDisconnect(playerid, reason)
  86. {
  87. if(GetPVarInt(playerid,"loggedin")==1)
  88. {
  89. SpielerSpeichern(playerid);
  90. }
  91. return 1;
  92. }
  93.  
  94. public OnPlayerSpawn(playerid)
  95. {
  96. switch(GetPVarInt(playerid,"Fraktion"))
  97. {
  98. case 0: {SetPlayerPos(playerid,zivispawn);GivePlayerWeapon(playerid,24,100);}
  99. case 1: {SetPlayerPos(playerid,ballasspawn);SetPlayerColor(playerid,LILA);GivePlayerWeapon(playerid,24,100);}
  100. case 2: {SetPlayerPos(playerid,gsspawn);SetPlayerColor(playerid,GRÜN);GivePlayerWeapon(playerid,24,100);}
  101. case 3: {SetPlayerPos(playerid,lspdspawn);SetPlayerColor(playerid,BLAU);GivePlayerWeapon(playerid,24,100);SetPlayerSkin(playerid,285);}
  102.  
  103. }
  104. return 1;
  105. }
  106.  
  107. public OnPlayerDeath(playerid, killerid, reason)
  108. {
  109. return 1;
  110. }
  111.  
  112. public OnVehicleSpawn(vehicleid)
  113. {
  114. return 1;
  115. }
  116.  
  117. public OnVehicleDeath(vehicleid, killerid)
  118. {
  119. return 1;
  120. }
  121.  
  122. public OnPlayerText(playerid, text[])
  123. {
  124. return 1;
  125. }
  126.  
  127. public OnPlayerCommandText(playerid, cmdtext[])
  128. {
  129. if(strcmp(cmdtext,"/restart",true)==0)
  130. {
  131. if(isPlayerAnAdmin(playerid,6))
  132. {
  133. SendRconCommand("gmx");
  134. SendClientMessageToAll(GRÜN,"Der Server wird neu gestartet ... Bitte warten.");
  135. return 1;
  136. }
  137. SendClientMessage(playerid,ROT,"Du bist kein Admin!");
  138. return 1;
  139. }
  140. if(strcmp(cmdtext,"/stats",true)==0)
  141. {
  142. new frakname[64];
  143. new name[MAX_PLAYERS],string[256];
  144. switch(GetPVarInt(playerid,"Fraktion"))
  145. {
  146. case 0:{frakname="Zivilist";}
  147. case 1:{frakname="Ballas";}
  148. case 2:{frakname="Groove Street";}
  149. case 3:{frakname="Los Santos Police Department";}
  150. }
  151. GetPlayerName(playerid,name,128);
  152. format(string,128,"Name: %s\nVermögen: %i\nScore: %d\nAdminlevel: %i\nFraktion: %s\nHandynummer: %i",name,GetPlayerMoney(playerid),GetPlayerScore(playerid),GetPVarInt(playerid,"Adminlevel"),frakname,GetPVarInt(playerid,"Fraktion"));
  153. ShowPlayerDialog(playerid,stats,DIALOG_STYLE_MSGBOX,"Dein Erreichtes",string,"Okay","Abbrechen");
  154. return 1;
  155. }
  156.  
  157. return 0;
  158.  
  159. }
  160.  
  161. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  162. {
  163. return 1;
  164. }
  165.  
  166. public OnPlayerExitVehicle(playerid, vehicleid)
  167. {
  168. return 1;
  169. }
  170.  
  171. public OnPlayerStateChange(playerid, newstate, oldstate)
  172. {
  173. return 1;
  174. }
  175.  
  176. public OnPlayerEnterCheckpoint(playerid)
  177. {
  178. return 1;
  179. }
  180.  
  181. public OnPlayerLeaveCheckpoint(playerid)
  182. {
  183. return 1;
  184. }
  185.  
  186. public OnPlayerEnterRaceCheckpoint(playerid)
  187. {
  188. return 1;
  189. }
  190.  
  191. public OnPlayerLeaveRaceCheckpoint(playerid)
  192. {
  193. return 1;
  194. }
  195.  
  196. public OnRconCommand(cmd[])
  197. {
  198. return 1;
  199. }
  200.  
  201. public OnPlayerRequestSpawn(playerid)
  202. {
  203. return 1;
  204. }
  205.  
  206. public OnObjectMoved(objectid)
  207. {
  208. return 1;
  209. }
  210.  
  211. public OnPlayerObjectMoved(playerid, objectid)
  212. {
  213. return 1;
  214. }
  215.  
  216. public OnPlayerPickUpPickup(playerid, pickupid)
  217. {
  218. return 1;
  219. }
  220.  
  221. public OnVehicleMod(playerid, vehicleid, componentid)
  222. {
  223. return 1;
  224. }
  225.  
  226. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  227. {
  228. return 1;
  229. }
  230.  
  231. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  232. {
  233. return 1;
  234. }
  235.  
  236. public OnPlayerSelectedMenuRow(playerid, row)
  237. {
  238. return 1;
  239. }
  240.  
  241. public OnPlayerExitedMenu(playerid)
  242. {
  243. return 1;
  244. }
  245.  
  246. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  247. {
  248. return 1;
  249. }
  250.  
  251. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  252. {
  253. return 1;
  254. }
  255.  
  256. public OnRconLoginAttempt(ip[], password[], success)
  257. {
  258. return 1;
  259. }
  260.  
  261. public OnPlayerUpdate(playerid)
  262. {
  263. return 1;
  264. }
  265.  
  266. public OnPlayerStreamIn(playerid, forplayerid)
  267. {
  268. return 1;
  269. }
  270.  
  271. public OnPlayerStreamOut(playerid, forplayerid)
  272. {
  273. return 1;
  274. }
  275.  
  276. public OnVehicleStreamIn(vehicleid, forplayerid)
  277. {
  278. return 1;
  279. }
  280.  
  281. public OnVehicleStreamOut(vehicleid, forplayerid)
  282. {
  283. return 1;
  284. }
  285.  
  286. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  287. {
  288. if(dialogid==DIALOG_LOGIN)
  289. {
  290. if(response==0)
  291. {
  292. SendClientMessage(playerid,ROT,"Du hast das Einloggen abgebrochen.");
  293. Kick(playerid);
  294. return 1;
  295. }
  296. if(response==1)
  297. {
  298. if(!strlen(inputtext))
  299. {
  300. SendClientMessage(playerid,ROT,"Das Passwort war nicht lang genug");
  301. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden, gib bitte das Passwort ein","Einloggen","Abbrechen");
  302. return 1;
  303. }
  304. else
  305. {
  306.  
  307. Login(playerid,inputtext);
  308. return 1;
  309. }
  310. }
  311.  
  312. }
  313. if(dialogid==DIALOG_REGISTER)
  314. {
  315. if(response==0)
  316. {
  317. SendClientMessage(playerid,ROT,"Du hast die Registrierung abgebrochen.");
  318. Kick(playerid);
  319. return 1;
  320. }
  321. if(response==1)
  322. {
  323. if(!strlen(inputtext))
  324. {
  325. SendClientMessage(playerid,ROT,"Das Passwort war nicht lang genug");
  326. ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gib bitte das gewünschte Passwort ein:","Registrieren","Abbrechen");
  327. return 1;
  328. }
  329. else
  330. {
  331.  
  332. Register(playerid,inputtext);
  333. return 1;
  334. }
  335. }
  336.  
  337. }
  338.  
  339. return 1;
  340. }
  341.  
  342. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  343. {
  344. return 1;
  345. }
  346.  
  347. stock Register(playerid,key[])
  348. {
  349. new Spielerdatei[64];
  350. new name[MAX_PLAYER_NAME];
  351. GetPlayerName(playerid,name,sizeof(name));
  352. format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  353. dini_Create(Spielerdatei);
  354. dini_Set(Spielerdatei,"Passwort",key);
  355. SendClientMessage(playerid,GRÜN,"Dein Account wurde erfolgreich angelegt.");
  356. SetPlayerScore(playerid,0);
  357. SetPVarInt(playerid,"loggedin",1);
  358. return 1;
  359. }
  360.  
  361. stock Login(playerid,key[])
  362. {
  363. new Spielerdatei[64];
  364. new name[MAX_PLAYER_NAME];
  365. GetPlayerName(playerid,name,sizeof(name));
  366. format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  367. if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
  368. {
  369. AccountLaden(playerid);
  370. SendClientMessage(playerid,GRÜN,"Du hast dich erfolgreich eingeloggt.");
  371. return 1;
  372.  
  373. }
  374. else
  375. {
  376. SendClientMessage(playerid,ROT,"Das Passwort war falsch!");
  377. Kick(playerid);
  378. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden, gib bitte das Passwort ein","Einloggen","Abbrechen");
  379. return 1;
  380. }
  381.  
  382. }
  383.  
  384. stock AccountLaden(playerid)
  385. {
  386. new Spielerdatei[64];
  387. new name[MAX_PLAYER_NAME];
  388. GetPlayerName(playerid,name,sizeof(name));
  389. format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  390. SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
  391. GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
  392. SetPVarInt(playerid,"Skin",dini_Int(Spielerdatei,"Skin"));
  393. SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
  394. SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
  395. SetPVarInt(playerid,"Rang",dini_Int(Spielerdatei,"Rang"));
  396. SetPVarInt(playerid,"Leader",dini_Int(Spielerdatei,"Leader"));
  397. SetPVarInt(playerid,"Banned",dini_Int(Spielerdatei,"Banned"));
  398. if(GetPVarInt(playerid,"Banned")==1)
  399. {
  400. SendClientMessage(playerid,ROT,"Du bist vom Server gebannt!");
  401. Kick(playerid);
  402. }
  403. if(GetPVarInt(playerid,"Banned")==1)
  404. {
  405. Kick(playerid);
  406. SendClientMessage(playerid,ROT,"Du bist vom Server gebannt!");
  407. }
  408. SetPVarInt(playerid,"loggedin",1);
  409. return 1;
  410.  
  411. }
  412.  
  413. stock SpielerSpeichern(playerid)
  414. {
  415. if(GetPVarInt(playerid,"loggedin")==1)
  416. {
  417. new Spielerdatei[64];
  418. new name[MAX_PLAYER_NAME];
  419. GetPlayerName(playerid,name,sizeof(name));
  420. format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
  421. dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
  422. dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
  423. dini_IntSet(Spielerdatei,"Skin",GetPVarInt(playerid,"Skin"));
  424. dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
  425. dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
  426. dini_IntSet(Spielerdatei,"Banned",GetPVarInt(playerid,"Banned"));
  427. dini_IntSet(Spielerdatei,"Rang",GetPVarInt(playerid,"Rang"));
  428. dini_IntSet(Spielerdatei,"Leader",GetPVarInt(playerid,"Leader"));
  429. }
  430. return 1;
  431. }
  432.  
  433. stock isPlayerAnAdmin(playerid,rang)
  434. {
  435. if(GetPVarInt(playerid,"Adminlevel")>=rang) return 1;
  436. return 0;
  437. }
  438.  
  439. stock isPlayerInFrakt(playerid,fraktid)
  440. {
  441. if(GetPVarInt(playerid,"Fraktion")==fraktid)return 1;
  442. return 0;
  443. }
  444.  
  445. stock Spielername(playerid)
  446. {
  447. new name[MAX_PLAYER_NAME];
  448. GetPlayerName(playerid,name,sizeof(name));
  449. return name;
  450. }
  451.  
  452.  
  453. stock sscanf(sstring[], format[], {Float,_}:...)
  454. {
  455. #if defined isnull
  456. if (isnull(sstring))
  457. #else
  458. if (sstring[0] == 0 || (sstring[0] == 1 && sstring[1] == 0))
  459. #endif
  460. {
  461. return format[0];
  462. }
  463. #pragma tabsize 4
  464. new
  465. formatPos = 0,
  466. sstringPos = 0,
  467. paramPos = 2,
  468. paramCount = numargs(),
  469. delim = ' ';
  470. while (sstring[sstringPos] && sstring[sstringPos] <= ' ')
  471. {
  472. sstringPos++;
  473. }
  474. while (paramPos < paramCount && sstring[sstringPos])
  475. {
  476. switch (format[formatPos++])
  477. {
  478. case '\0':
  479. {
  480. return 0;
  481. }
  482. case 'i', 'd':
  483. {
  484. new
  485. neg = 1,
  486. num = 0,
  487. ch = sstring[sstringPos];
  488. if (ch == '-')
  489. {
  490. neg = -1;
  491. ch = sstring[++sstringPos];
  492. }
  493. do
  494. {
  495. sstringPos++;
  496. if ('0' <= ch <= '9')
  497. {
  498. num = (num * 10) + (ch - '0');
  499. }
  500. else
  501. {
  502. return -1;
  503. }
  504. }
  505. while ((ch = sstring[sstringPos]) > ' ' && ch != delim);
  506. setarg(paramPos, 0, num * neg);
  507. }
  508. case 'h', 'x':
  509. {
  510. new
  511. num = 0,
  512. ch = sstring[sstringPos];
  513. do
  514. {
  515. sstringPos++;
  516. switch (ch)
  517. {
  518. case 'x', 'X':
  519. {
  520. num = 0;
  521. continue;
  522. }
  523. case '0' .. '9':
  524. {
  525. num = (num << 4) | (ch - '0');
  526. }
  527. case 'a' .. 'f':
  528. {
  529. num = (num << 4) | (ch - ('a' - 10));
  530. }
  531. case 'A' .. 'F':
  532. {
  533. num = (num << 4) | (ch - ('A' - 10));
  534. }
  535. default:
  536. {
  537. return -1;
  538. }
  539. }
  540. }
  541. while ((ch = sstring[sstringPos]) > ' ' && ch != delim);
  542. setarg(paramPos, 0, num);
  543. }
  544. case 'c':
  545. {
  546. setarg(paramPos, 0, sstring[sstringPos++]);
  547. }
  548. case 'f':
  549. {
  550.  
  551. new changestr[16], changepos = 0, strpos = sstringPos;
  552. while(changepos < 16 && sstring[strpos] && sstring[strpos] != delim)
  553. {
  554. changestr[changepos++] = sstring[strpos++];
  555. }
  556. changestr[changepos] = '\0';
  557. setarg(paramPos,0,_:floatstr(changestr));
  558. }
  559. case 'p':
  560. {
  561. delim = format[formatPos++];
  562. continue;
  563. }
  564. case '\'':
  565. {
  566. new
  567. end = formatPos - 1,
  568. ch;
  569. while ((ch = format[++end]) && ch != '\'') {}
  570. if (!ch)
  571. {
  572. return -1;
  573. }
  574. format[end] = '\0';
  575. if ((ch = strfind(sstring, format[formatPos], false, sstringPos)) == -1)
  576. {
  577. if (format[end + 1])
  578. {
  579. return -1;
  580. }
  581. return 0;
  582. }
  583. format[end] = '\'';
  584. sstringPos = ch + (end - formatPos);
  585. formatPos = end + 1;
  586. }
  587. case 'u':
  588. {
  589. new
  590. end = sstringPos - 1,
  591. id = 0,
  592. bool:num = true,
  593. ch;
  594. while ((ch = sstring[++end]) && ch != delim)
  595. {
  596. if (num)
  597. {
  598. if ('0' <= ch <= '9')
  599. {
  600. id = (id * 10) + (ch - '0');
  601. }
  602. else
  603. {
  604. num = false;
  605. }
  606. }
  607. }
  608. if (num && IsPlayerConnected(id))
  609. {
  610. setarg(paramPos, 0, id);
  611. }
  612. else
  613. {
  614. #if !defined foreach
  615. #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
  616. #define __SSCANF_FOREACH__
  617. #endif
  618. sstring[end] = '\0';
  619. num = false;
  620. new
  621. name[MAX_PLAYER_NAME];
  622. id = end - sstringPos;
  623. foreach (Player, playerid)
  624. {
  625. GetPlayerName(playerid, name, sizeof (name));
  626. if (!strcmp(name, sstring[sstringPos], true, id))
  627. {
  628. setarg(paramPos, 0, playerid);
  629. num = true;
  630. break;
  631. }
  632. }
  633. if (!num)
  634. {
  635. setarg(paramPos, 0, INVALID_PLAYER_ID);
  636. }
  637. sstring[end] = ch;
  638. #if defined __SSCANF_FOREACH__
  639. #undef foreach
  640. #undef __SSCANF_FOREACH__
  641. #endif
  642. }
  643. sstringPos = end;
  644. }
  645. case 's', 'z':
  646. {
  647. new
  648. i = 0,
  649. ch;
  650. if (format[formatPos])
  651. {
  652. while ((ch = sstring[sstringPos++]) && ch != delim)
  653. {
  654. setarg(paramPos, i++, ch);
  655. }
  656. if (!i)
  657. {
  658. return -1;
  659. }
  660. }
  661. else
  662. {
  663. while ((ch = sstring[sstringPos++]))
  664. {
  665. setarg(paramPos, i++, ch);
  666. }
  667. }
  668. sstringPos--;
  669. setarg(paramPos, i, '\0');
  670. }
  671. default:
  672. {
  673. continue;
  674. }
  675. }
  676. while (sstring[sstringPos] && sstring[sstringPos] != delim && sstring[sstringPos] > ' ')
  677. {
  678. sstringPos++;
  679. }
  680. while (sstring[sstringPos] && (sstring[sstringPos] == delim || sstring[sstringPos] <= ' '))
  681. {
  682. sstringPos++;
  683. }
  684. paramPos++;
  685. }
  686. do
  687. {
  688. if ((delim = format[formatPos++]) > ' ')
  689. {
  690. if (delim == '\'')
  691. {
  692. while ((delim = format[formatPos++]) && delim != '\'') {}
  693. }
  694. else if (delim != 'z')
  695. {
  696. return delim;
  697. }
  698. }
  699. }
  700. while (delim > ' ');
  701. return 0;
  702. }
  703.  
  704. ocmd:kick(playerid,params[])
  705. {
  706. if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,ROT,"Du bist kein Admin!");
  707. new pID,reason[128],string[128];
  708. if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,ROT,"/kick [ID/Teil des Namens] [GRUND]");
  709. format(string,sizeof(string),"Admin %s hat %s vom Server gekickt. Grund: %s",Spielername(pID),Spielername(playerid),reason);
  710. SendClientMessageToAll(ROT,string);
  711. Kick(pID);
  712. return 1;
  713. }
  714.  
  715. ocmd:ban(playerid,params[])
  716. {
  717. if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,ROT,"Du bist kein Admin!");
  718. new pID,reason[128],string[128];
  719. if(sscanf(params,"us",pID,reason)) return SendClientMessage(playerid,ROT,"/kick [ID/Teil des Namens] [GRUND]");
  720. format(string,sizeof(string),"Admin %s hat %s vom Server gekickt. Grund: %s",Spielername(pID),Spielername(playerid),reason);
  721. SendClientMessageToAll(ROT,string);
  722. SetPVarInt(pID,"Banned",1);
  723. Kick(pID);
  724. return 1;
  725. }
  726.  
  727. ocmd:adminmachen(playerid,params[])
  728. {
  729. if(!isPlayerAnAdmin(playerid,5)) return SendClientMessage(playerid,ROT,"Dein Admin Rang ist nicht hoch genug.");
  730. new string[128],pID, rank;
  731. if(sscanf(params,"ui",pID,rank)) return SendClientMessage(playerid,ROT,"/adminmachen [ID/Teil des Namens] [Adminrang]");
  732.  
  733. if(rank<1||rank>6) return SendClientMessage(playerid,ROT,"Gib einen gültigen Rang ein.");
  734. SendClientMessage(playerid,ROT,string);
  735. SetPVarInt(pID,"Adminlevel",rank);
  736. SpielerSpeichern(pID);
  737. SendClientMessageToAll(BLAU,"%s hat %s zum Admin gemacht.");
  738. return 1;
  739.  
  740.  
  741. }
  742.  
  743. ocmd:car(playerid,params[])
  744. {
  745.  
  746. if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,ROT,"Du bist kein Admin!");
  747. new vehicleid,car;
  748. new Float:X,Float:Y,Float:Z,Float:ZA;
  749. if(sscanf(params,"i",vehicleid)) return SendClientMessage(playerid,ROT,"Benutze /car [ID]");
  750. GetPlayerPos(playerid,X,Y,Z);
  751. GetPlayerFacingAngle(playerid,ZA);
  752. car= CreateVehicle(vehicleid,X,Y,Z,ZA,1,1,-1);
  753. PutPlayerInVehicle(playerid,car,0);
  754. SendClientMessage(playerid,GRÜN,"Du hast dir ein Auto gespawnt, Viel Spaß damit.");
  755. return 1;
  756. }
  757.  
  758. ocmd:f(playerid,params[])
  759. {
  760. new text[128];
  761. if(sscanf(params,"s",text))return SendClientMessage(playerid,WEISS,"Benutze /f [TEXT]");
  762. format(text,sizeof(text),"Member %s: %s",Spielername(playerid),text);
  763. for(new i=0; i<GetMaxPlayers(); i++)
  764. {
  765. if(IsPlayerConnected(i))
  766. {
  767. if(isPlayerInFrakt(i,GetPVarInt(playerid,"Fraktion")))
  768. {
  769. SendClientMessage(i,GRÜN,text);
  770. }
  771. }
  772. }
  773. return 1;
  774. }
  775.  
  776. ocmd:leadermachen(playerid,params[])
  777. {
  778. if(isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,ROT,"Dein Adminrang ist zu niedrig!");
  779. new pID,fID;
  780. if(sscanf(params,"ui",pID,fID))return SendClientMessage(playerid,TÜRKIS,"/leadermachen [ID/Teil des Namens] [Fraktion]");
  781. SetPVarInt(pID,"Fraktion",fID);
  782. SendClientMessage(playerid,TÜRKIS,"Du wurdest von %s als Fraktionsleader der Fraktion %i gemacht, behandel Sie gut!");
  783. return 1;
  784. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement