Guest User

Untitled

a guest
May 24th, 2015
211
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 30.15 KB | None | 0 0
  1. //----------------Gamemode für Anfänger by Oktabius-----------------------------
  2.  
  3. #include <a_samp>
  4. #include <dini>
  5. #include <Dudb>
  6. #include <sscanf2>
  7. #include <ocmd>
  8.  
  9. //Farben
  10. #define COLOR_GREY 0xAFAFAFAA // mache eine Farbe namens COLOR_GREY der Farbcode ist 0xAFAFAFAA
  11. #define COLOR_GREEN 0x33AA33AA
  12. #define COLOR_RED 0xAA3333AA
  13. #define COLOR_YELLOW 0xFFFF00AA
  14. #define COLOR_WHITE 0xFFFFFFAA
  15. #define COLOR_DARKRED 0x660000AA
  16. #define COLOR_BLUE 0x0000BBAA
  17. #define COLOR_ORANGE 0xFF9900AA
  18. #define COLOR_PINK 0xFF66FFAA
  19. #define COLOR_LIGHTBLUE 0x33CCFFAA
  20. #define COLOR_CYAN 0x00BFF3AA
  21. #define COLOR_BLACK 0x000000AA
  22. #define COLOR_BROWN 0XA52A2AAA
  23. #define COLOR_GOLD 0xB8860BAA
  24. #define COLOR_INDIGO 0x4B00B0AA
  25. #define COLOR_LAWNGREEN 0x7CFC00AA
  26. #define COLOR_LIMEGREEN 0x32CD32AA
  27. #define COLOR_OLIVE 0x808000AA
  28. #define COLOR_SEAGREEN 0x2E8B57AA
  29. #define COLOR_TOMATO 0xFF6347AA
  30. #define COLOR_YELLOWGREEN 0x9ACD32AA
  31. #define COLOR_MEDIUMAQUA 0x83BFBFAA
  32. #define COLOR_FLBLUE 0x6495EDAA
  33. #define COLOR_MAGENTA 0xFF00FFFF
  34. #define COLOR_PURPLE 0x800080AA
  35. #define COLOR_GRELLRED 0xFF000000
  36. #define COLOR_LIGHTGREEN 0x86FF59FF
  37. #define COLOR_LIGHTBLUE 0x33CCFFAA
  38.  
  39. #pragma unused ret_memcpy
  40. #pragma tabsize 0
  41.  
  42. #define ausruesten 1 // #Definiere [Name] [Zahl] Namen könnt ihr euch ausdenken und Zahl ist die ID, des GUI, das nächste wäre dann 2
  43. #define stats 2
  44.  
  45. enum Info
  46. {
  47. passwort[128],
  48. alevel,
  49. autos,
  50. motorrad,
  51. boot,
  52. flug,
  53. fRank,
  54. gTeam,
  55. gLeader,
  56. skin,
  57. pmoney,
  58. };
  59.  
  60. //neues
  61. new bool:loggedin[MAX_PLAYERS];
  62.  
  63. //Gangzones
  64.  
  65. //Fraktionen
  66. new pInfo[MAX_PLAYERS][Info];
  67. // wenn ihr es so wie ich es oben gemacht habe aufstappelt, sparrt dies viele Ressourcen, wodurch euer Server eine geringere Chance hat
  68. // Laggs zu verursachen.
  69.  
  70. #define Groove 1 //Die Zahlen hinter den Namen mache ich nur so als Gedächnisstütze
  71. #define Ballas 2 // Mache eine Fraktion Namens Ballas
  72. #define Vagos 3 // Mache eine Fraktion Names Fahrlehrer
  73. #definde Lspd 4
  74.  
  75. //Pickups
  76. new pickuptest, pickupeingangtest, jailpickup;
  77.  
  78. main()
  79. {
  80. print("----------------------------------");
  81. print(" By Dark_Morales ");
  82. print("----------------------------------");
  83. }
  84.  
  85.  
  86. public OnGameModeInit() // Skins sind hier zu finden http://wiki.sa-mp.com/wiki/Skins
  87. {
  88. EnableStuntBonusForAll(0); // Hier wird gesagt, das wenn man einen Stunt gemacht hat (EnableStuntBonusForAll), kein Geld bekommt (0)
  89. UsePlayerPedAnims(1); // Hier wird gesagt, dass der Spieler normal laufen soll und nicht so komisch
  90. ShowPlayerMarkers(0); // ZeigeSpielerMarkierung(0) hier wird angegeben, dass man keinen Spieler auf der Karte durch ein Farbpickment sieht.
  91. DisableInteriorEnterExits(0); // Hier wird gesagt, dass die Interioreingänge weggemacht werden sollen, damit wir unsere eigenen Biz´s erstellen können
  92. SetGameModeText("Real-Shit"); // Der Name des Gamemodes
  93. AddPlayerClass(101,1193.2167,-1266.1366,23.6099,2.9239,0,0,0,0,0,0); // Füge eine Charakterauswahl hinzu( mit dem Skin 101, auf die Kordinaten x, y, z, angle, waffe 1, waffe 1 munition, waffe 2, waffe 2 munition, waffe 3, waffe munition 3=;
  94.  
  95. AddStaticVehicle(560,-452.5457,412.5452,4.1573,273.4572,1,2); //Füge ein Auto hinzu(Auto Nummer 522, auf die Kordinaten x, y, z, Farbe 1, Farbe 2);
  96.  
  97.  
  98. // Credits goes to SNM
  99. // MaxY
  100. // ____________________________
  101. // | |
  102. // | |
  103. // | |
  104. // MinX | Ganggebiet | MaxX
  105. // | |
  106. // | |
  107. // | |
  108. // | |
  109. // |___________________________|
  110. // MinY
  111.  
  112.  
  113. pickuptest = CreatePickup(1239, 23, 0,0,0);// 1318 = Pickupzeichen i ; 23 = bedeutet das das Pickup für immer bleibt ; 0,0,0 = Kordinten x,y,z
  114. pickupeingangtest = CreatePickup(1318, 23, 0,0,0); // die 3 Nullen auf x, y, z Kordinaten umschreiben
  115. jailpickup = CreatePickup(1239, 23, 0, 0, 0); // ""
  116. return 1;
  117. }
  118.  
  119. public OnGameModeExit()
  120. {
  121. return 1;
  122. }
  123.  
  124. public OnPlayerRequestClass(playerid, classid)
  125. {
  126. SetPlayerPos(playerid, 1193.2167,-1266.1366,23.6099); // Setz die Positon( Vom Spieler auf, x, y, z);
  127. SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746); // Richte die Kamera( Vom Spieler auf, x, y,z);
  128. SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746); // Setze die Blickrichtung der Kamera( des Spielers auf, x, y, z);
  129. return 1;
  130. }
  131.  
  132. public OnPlayerRequestSpawn(playerid)
  133. {
  134. return 1;
  135. }
  136.  
  137. if(!strcmp(cmdtext, "/restart", true)) return SendRconCommand("gmx");
  138.  
  139. public OnPlayerConnect(playerid)
  140. {
  141. if(dini_Exists(Datei(playerid)))
  142. {
  143. SendClientMessage(playerid, COLOR_YELLOW, "*** Willkommen Zurück, Logge dich mit /login [Passwort] ein");
  144. }
  145. if(!dini_Exists(Datei(playerid)))
  146. {
  147. SendClientMessage(playerid, COLOR_LIGHTBLUE, "~Ich sehe du bist neu, bitte regestriere dich mit /register [Passwort]~");
  148. }
  149.  
  150. { // ID BEIM EINLOGGEN //
  151. new nachricht [128];
  152. format(nachricht,sizeof(nachricht),"Du bist mit der ID %i verbunden.",playerid);
  153. SendClientMessage(playerid,COLOR_RED,nachricht);
  154.  
  155. if(dini_Exists(Datei(playerid)))
  156. {
  157. SendClientMessage(playerid, COLOR_YELLOW, "*** Willkommen Zurück, Logge dich mit /login [Passwort] ein");
  158. }
  159. if(!dini_Exists(Datei(playerid)))
  160. {
  161. SendClientMessage(playerid, COLOR_LIGHTBLUE, "~Ich sehe du bist neu, bitte registriere dich mit /register [Passwort]");
  162. }
  163. }
  164. return 1;
  165. }
  166.  
  167. public OnPlayerDisconnect(playerid, reason)
  168. {
  169. if(dini_Exists(Datei(playerid))) // steht
  170. {
  171. dini_IntSet(Datei(playerid),"Geld",GetPlayerMoney(playerid));
  172. dini_IntSet(Datei(playerid),"Wanteds",GetPlayerWantedLevel(playerid));
  173. dini_IntSet(Datei(playerid),"Skin",GetPlayerSkin(playerid));
  174. dini_IntSet(Datei(playerid),"Autoführerschein",pInfo[playerid][autos]);
  175. dini_IntSet(Datei(playerid),"Flugführerschein",pInfo[playerid][flug]);
  176. dini_IntSet(Datei(playerid),"Motorradführerschein",pInfo[playerid][motorrad]);
  177. dini_IntSet(Datei(playerid),"Bootsführerschein",pInfo[playerid][boot]);
  178. dini_IntSet(Datei(playerid),"Adminlevel",pInfo[playerid][alevel]);
  179. dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[playerid][fRank]);
  180.  
  181. }
  182. return 1;
  183. }
  184.  
  185. public OnPlayerSpawn(playerid)
  186. {
  187. if(loggedin[playerid] == false)
  188. {
  189. Kick(playerid);
  190. }
  191. return 1;
  192. }
  193.  
  194. public OnPlayerDeath(playerid, killerid, reason)
  195. {
  196. SetPlayerPos(playerid,1176.5500,-1323.9135,14.0268); // Setz die Positon( Vom Spieler auf, x, y, z);
  197. SendClientMessage(playerid,COLOR_RED,"Dein Arztbesuch kostet dich 700$"); // Sende eine Nachricht( An Spieler, mit der Farbe Rot, "und dem Text");
  198. SetPlayerHealth(playerid, 100.0);
  199. gebespielergeld(playerid,-700); // Ziehe dem (Spieler, 200 $ ab
  200. return 1;
  201. }
  202.  
  203. public OnVehicleSpawn(vehicleid)
  204. {
  205. return 1;
  206. }
  207.  
  208. public OnVehicleDeath(vehicleid, killerid)
  209. {
  210. return 1;
  211. }
  212.  
  213. public OnPlayerText(playerid, text[])
  214. {
  215. return 1;
  216. }
  217.  
  218.  
  219. public OnPlayerCommandText(playerid, cmdtext[])
  220. {
  221. new spieler[MAX_PLAYER_NAME]; // Den Begriff "spieler" können wir jetzt immer benutzen, wenn wir den Namen des Spielers bzw. playerid brauchen
  222. new gegner[MAX_PLAYER_NAME]; // Den Begriff "gegner" können wir jetzt immer benutzen, wenn wir den Namen des Gegners bzw. ziel brauchen
  223.  
  224. //----------------register---------------------------------
  225.  
  226. if(strcmp(strget(cmdtext,0), "/register", true) == 0)
  227. {
  228. if(!dini_Exists(Datei(playerid))) // wenn der Spieler sich regestriert und es noch keine .ini Datei mit seinem Namen gibt
  229. {
  230. dini_Create(Datei(playerid)); // Erstelle eine Neue .ini Datei
  231. dini_IntSet(Datei(playerid),"passwort",udb_hash(strget(cmdtext,1))); // Setze in die .ini Datei(save,"dass passwort", welches er eingegebne hat)
  232. SendClientMessage(playerid, COLOR_GREEN, "***Dein Account wurde erfolgreich registriert***");
  233. SendClientMessage(playerid, COLOR_GREEN, "***Nutze /login [Passwort] um dich einzuloggen***");
  234. }
  235. else
  236. {
  237. if(dini_Exists(Datei(playerid))) // Wenn beim regestrieren die Datei schon besteht
  238. {
  239. SendClientMessage(playerid, COLOR_RED, "Der Account ist bereits registriert");
  240. return 1;
  241. }
  242. }
  243. }
  244.  
  245. if(strcmp(strget(cmdtext,0), "/stats", true) == 0) // wenn man /perso eingibt
  246. {
  247. new string[100], string2[50], geld = GetPlayerMoney(playerid); // definiere
  248. format(string, sizeof(string), "Stats: %s\nBargeld: %d", Spielername(playerid), geld); // setzt dem String "Name: (des Spielers) Bargeld(des Spielers)
  249. //format(string,sizeof(string), das /n steht für einen Zeilenbruch sprich Enter ;) %s nimmt man wenn man Buchstaben herrausfinden will, %d für Zahlen
  250. format(string2, sizeof(string2), "statistiken von %s", Spielername(playerid));
  251. ShowPlayerDialog(playerid, stats, DIALOG_STYLE_MSGBOX, string2 , string, "Verlassen", "");
  252. return 1;
  253. }
  254.  
  255. if(strcmp(strget(cmdtext,0), "/login", true) == 0)
  256. {
  257. new s2[256];
  258. if(dini_Exists(Datei(playerid)))
  259. {
  260. s2=dini_Get(Datei(playerid),"passwort");
  261. if(strval(s2)==udb_hash(strget(cmdtext,1))) // wenn die Eingabe nach /login mit dem Passwort übereinstimmt
  262. {
  263. loggedin[playerid] = true;
  264. SendClientMessage(playerid, COLOR_LIGHTBLUE, "***Du hast dich erfolgreich eingeloggt***");
  265. gebespielergeld(playerid,dini_Int(Datei(playerid),"Geld"));
  266. SetPlayerWantedLevel(playerid,dini_Int(Datei(playerid),"Wanteds"));
  267. SetPlayerSkin(playerid,dini_Int(Datei(playerid),"Skin"));
  268. pInfo[playerid][autos] =dini_Int(Datei(playerid),"Führerschein");
  269. pInfo[playerid][flug] =dini_Int(Datei(playerid),"Flugschein");
  270. pInfo[playerid][motorrad] =dini_Int(Datei(playerid),"Motorradschein");
  271. pInfo[playerid][boot] =dini_Int(Datei(playerid),"Bootsschein");
  272. pInfo[playerid][alevel] =dini_Int(Datei(playerid),"Adminlevel");
  273. pInfo[playerid][fRank] =dini_Int(Datei(playerid),"Fraktionsrank");
  274. }
  275. else
  276. {
  277. SendClientMessage(playerid, COLOR_RED, "Passwort Falsch!");
  278. }}
  279. return 1;
  280. }
  281. //-------Autoschein vergabe----------------
  282. if(strcmp(strget(cmdtext,0), "/autoschein", true) == 0)
  283. {
  284. new ziel = strval(strget(cmdtext,1)); // Das gleiche wie bei teamid
  285. {
  286. if(IsPlayerConnected(ziel)) return SendClientMessage(playerid, COLOR_RED, "Ziel ist nicht Online");
  287. {
  288. if(IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_RED, "Du musst Online sein");
  289. {
  290. pInfo[ziel][autos] = 1;
  291. dini_IntSet(Datei(playerid),"Autoführerschein",1); // Speichere das Passwort in der .ini Datei unter passwort
  292. gebespielergeld(ziel, -1000); // entziehe dem Ziel 1000 €
  293. gebespielergeld(playerid, 1000); // gebe dem Fahrleher 1000 €
  294. SendClientMessage(ziel, COLOR_GREEN, "TEXT"); // Sende dem Ziel den Text, das er einen Autsoschein bekommen hat
  295. SendClientMessage(playerid, COLOR_GREEN, "TEXT"); // Sende dem Fahrleher den Text, das er einen Autoschein verkauft hat
  296. }
  297. else
  298. {
  299. SendClientMessage(playerid, COLOR_RED, "TEXT!"); // Wenn jemand einer anderen Fraktion außer Fahrlehrer diesen befehl eingibt, sende ihm die Nachricht...
  300. }}}}
  301. return 1;
  302. }
  303.  
  304.  
  305.  
  306. //----------------Fraktions Ränge vergeben------------------
  307. if(strcmp(strget(cmdtext,0), "/rank", true) == 0)
  308. {
  309. if(pInfo[playerid][gLeader] == Groove || pInfo[playerid][gLeader] == Ballas || pInfo[playerid][gLeader] == Vagos) return SendClientMessage(playerid, COLOR_RED, "Du bist kein Leader einer Fraktion");
  310. {
  311. new ziel = strval(strget(cmdtext,1)); // Das gleiche wie bei teamid
  312. new rank= strval(strget(cmdtext,2)); // rank = das Ranklevel
  313. {
  314. if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /rank [ID] [Rank]");
  315. {
  316. if(!strlen(strget(cmdtext,2))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /rank [ID] [Rank]");
  317. {
  318. if(rank==1){ pInfo[ziel][fRank] = 1; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du hast soeben den Fraktions Rank (Amateur) bekommen");} // wenn rank 1 ) Gebe dem ziel rank 1 ) Speichere das Level ) Sende nachricht
  319. if(rank==2){ pInfo[ziel][fRank] = 2; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du hast soeben den Fraktions Rank (Fortgeschrittener) bekommen");}
  320. if(rank==4){ pInfo[ziel][fRank] = 3; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du hast soeben den Fraktions Rank (Profi) bekommen");}
  321. if(rank==5){ pInfo[ziel][fRank] = 4; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du bist nun der Co Leader dieser Fraktion");}
  322. if(rank==6){ pInfo[ziel][fRank] = 5; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du bist nun der Leader dieser Fraktion");}}}}
  323. return 1;
  324. }
  325.  
  326. if(strcmp(cmdtext,"/f",true,2) == 0)
  327. {
  328. new string[128],name[24]; // "string" und "name" definieren
  329. GetPlayerName(playerid,name,sizeof name); // Bekomme den Spieler name(spieler, "name", größe von "name")
  330. format(string,sizeof string,"[Fraktion]%s: %s",name,cmdtext[3]); // Hier bilden wir einen satz, wo wir den Namen und das,was der spieler eingegeben hat zusammengefügt wird.
  331. return 1;
  332. }
  333. for(new i=0 ; i <GetMaxPlayers() ; i++) // definiere alle Spieler
  334. {
  335. if(pInfo[i][gTeam] == pInfo[playerid][gTeam] || pInfo[i][gLeader] == pInfo[playerid][gLeader]) // wenn spieler i in der selben fraktion ist wie playerid, sende ihm die Nachricht
  336. {
  337. SendClientMessage(i,COLOR_LIGHTBLUE,string);
  338. }}
  339. return 1;
  340. }
  341.  
  342. if(strcmp(cmdtext,"/o",true,2) == 0 || strcmp(cmdtext,"/occ",true,2) == 0)
  343. {
  344. new string[128],name[24]; // "string" und "name" definieren
  345. GetPlayerName(playerid,name,sizeof name); // Bekomme den Spieler name(spieler, "name", größe von "name")
  346. format(string,sizeof string,"[OCC]%s: %s",name,cmdtext[3]); // Satz bilden
  347. if(!strlen(cmdtext[2])) //wenn der cmd /f falsch eingegeben wird
  348. {
  349. return 1;
  350. }
  351. if(pInfo[playerid][alevel] >= 1)
  352. {
  353. SendClientMessageToAll(COLOR_WHITE,string);
  354. }
  355. return 1;
  356. }
  357.  
  358.  
  359. // Aond
  360. new aond[128], aonda[128];
  361. format(aond, sizeof(aond), "%s hat sich als Supporter angemeldet.", Spielername(playerid)); // Supporter Xy anmeldung
  362. format(aonda, sizeof(aonda), "%s hat sich als Admin angemeldet.", Spielername(playerid)); // Admin Xy anmeldung
  363. if (strcmp(cmdtext, "/aduty", true) == 0) // Befehl um Admin on Duty zu gehen!
  364. {
  365. if(pInfo[playerid][alevel] == 1) // Sende folgendes mit Admin Stufe 1
  366. {
  367. SendClientMessage(playerid, COLOR_Red, "|___________Supporter___________|");
  368. SendClientMessage(playerid, COLOR_Red, "Du hast dich nun Als Supporter angemeldet.");
  369. SendClientMessage(playerid, COLOR_Red, "Achtung! Missbrauch des befehles wird bestraft!");
  370. SendClientMessageToAll(COLOR_Red, aond); // Sende die Nachricht an alle
  371. SetPlayerAmmo(playerid,3,1000);
  372. SetPlayerColor(playerid, COLOR_PINK);
  373. return 1;
  374. }
  375. if(pInfo[playerid][alevel] >= 2) // Sende folgendes über admin stufe 2
  376. {
  377. SendClientMessage(playerid, COLOR_Red, "|___________Admin___________|");
  378. SendClientMessage(playerid, COLOR_Red, "Du hast dich nun als Admin angemeldet.");
  379. SendClientMessageToAll(COLOR_PINK, aonda); // Sende die Nachricht wieder an alle
  380. SetPlayerColor(playerid, COLOR_Red);
  381. return 1;
  382. }
  383. if(pInfo[playerid][alevel] >= 3) // Sende folgendes über admin stufe 2
  384. {
  385. SendClientMessage(playerid, COLOR_Red, "|___________High Admin___________|");
  386. SendClientMessage(playerid, COLOR_Red, "Du hast dich nun als High Admin angemeldet.");
  387. SendClientMessageToAll(COLOR_PINK, aonda); // Sende die Nachricht wieder an alle
  388. SetPlayerColor(playerid, COLOR_Red);
  389. return 1;
  390. }
  391. if(pInfo[playerid][alevel] >= 2) // Sende folgendes über admin stufe 2
  392. {
  393. SendClientMessage(playerid, COLOR_Red, "|___________Projektleiter___________|");
  394. SendClientMessage(playerid, COLOR_Red, "Du hast dich nun als Admin angemeldet.");
  395. SendClientMessageToAll(COLOR_PINK, aonda); // Sende die Nachricht wieder an alle
  396. SetPlayerColor(playerid, COLOR_Red);
  397. return 1;
  398. }
  399. else
  400. { // Sende folgendes wenn er admin lvl 0 ist (Zivilist)
  401. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|______KeinAdmin!______|");
  402. SendClientMessage(playerid, COLOR_GREY, "Du bist kein Admin!");
  403. SendClientMessage(playerid, COLOR_GREY, "Deine Admin Stufe ist 0");
  404. SendClientMessage(playerid, COLOR_GREY, "Und kannst somit keine Admin befehle ausführen!");
  405. }
  406. return 1; // Cmd zu Ende
  407. }
  408.  
  409. // Aoffd
  410. new aoffd[128], aoffda[128];
  411. format(aoffd, sizeof(aoffd), "%s hat sich als Supporter abgemeldet.", spieler); // Befehl um Sup off Duty zu gehen!
  412. format(aoffda, sizeof(aoffda), "%s hat sich als Admin abgemeldet.", spieler); // Befehl um Admin off Duty zu gehen!
  413. format(aoffda, sizeof(aoffda), "%s hat sich als High Admin abgemeldet.", spieler); // Befehl um Admin off Duty zu gehen!
  414. format(aoffda, sizeof(aoffda), "%s hat sich als Projektleiter abgemeldet.", spieler); // Befehl um Admin off Duty zu gehen!
  415. if (strcmp(cmdtext, "/aoffduty", true) == 0)
  416. {
  417. }
  418. if(pInfo[playerid][alevel] == 1) // Sende folgendes mit Admin Stufe 1
  419. {
  420. SendClientMessage(playerid, COLOR_Red, "|___________Supporter___________|");
  421. SendClientMessage(playerid, COLOR_Red, "Du hast dich nun Als Supporter abgemeldet.");
  422. SendClientMessageToAll(COLOR_PINK, aoffd); // Sende die Nachricht an alle
  423. SetPlayerColor(playerid, COLOR_WHITE);
  424. return 1;
  425. }
  426. if(pInfo[playerid][alevel] >= 2) // Sende folgendes über admin stufe 2
  427. {
  428. SendClientMessage(playerid, COLOR_Red, "|___________Admin___________|");
  429. SendClientMessage(playerid, COLOR_Red, "Du hast dich nun als Admin abgemeldet.");
  430. SendClientMessageToAll(COLOR_PINK, aoffda); // Sende die Nachricht wieder an alle
  431. SetPlayerColor(playerid, COLOR_WHITE);
  432. return 1;
  433. }
  434. if(pInfo[playerid][alevel] >= 2) // Sende folgendes über admin stufe 2
  435. {
  436. SendClientMessage(playerid, COLOR_Red, "|___________High Admin___________|");
  437. SendClientMessage(playerid, COLOR_Red, "Du hast dich nun Als High Admin abgemeldet.");
  438. SendClientMessageToAll(COLOR_PINK, aoffd); // Sende die Nachricht an alle
  439. SetPlayerColor(playerid, COLOR_WHITE);
  440. return 1;
  441. }
  442. if(pInfo[playerid][alevel] >= 2) // Sende folgendes über admin stufe 2
  443. {
  444. SendClientMessage(playerid, COLOR_Red, "|___________Projektleiter___________|");
  445. SendClientMessage(playerid, COLOR_Red, "Du hast dich nun als Projektleiter abgemeldet.");
  446. SendClientMessageToAll(COLOR_PINK, aoffda); // Sende die Nachricht wieder an alle
  447. SetPlayerColor(playerid, COLOR_WHITE);
  448. return 1;
  449. }
  450.  
  451.  
  452. //--------------makeadmin-----------------------------------
  453. if(strcmp(cmdtext,"/makeadmin", true) == 0)
  454. {
  455. if(pInfo[playerid][alevel] == 3,4,5) // Wenn die pInfo vom Spieler level 6 ist
  456. {
  457. new ziel = strval(strget(cmdtext,1)); // Das gleiche wie bei teamid
  458. new level= strval(strget(cmdtext,2)); // level = die Levelzahl
  459. {
  460. if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeadmin [ID]");
  461. {
  462. if(!strlen(strget(cmdtext,2))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeadmin [ID]");
  463. {
  464. if(level==1) // wenn er /makeadmin 0 macht
  465. {
  466. GetPlayerName(ziel,gegner,sizeof(gegner));
  467. new save[45];
  468. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  469. pInfo[ziel][alevel] = 1; // Gebe dem ziel das Adminlevel (alevel) 0
  470. dini_IntSet(save,"Adminlevel",1); // Schreibe in seine Datei Adminlevel = 0
  471. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Supporter___________|");
  472. SendClientMessage(playerid, COLOR_GREY, "Du bist nun ein Supporter!");
  473. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 1");
  474. if(level==2) // wenn er /makeadmin 1 macht
  475. {
  476. GetPlayerName(ziel,gegner,sizeof(gegner));
  477. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  478. pInfo[ziel][alevel] = 2; // Gebe dem ziel das Adminlevel (alevel) 1
  479. dini_IntSet(save,"Adminlevel",2); // Schreibe in seine Datei Adminlevel = 1
  480. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Admin___________|");
  481. SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den rank: Admin gestuft.");
  482. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 2");
  483. }
  484. if(level==3) // wenn er /makeadmin 2 macht
  485. {
  486. GetPlayerName(ziel,gegner,sizeof(gegner));
  487. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  488. pInfo[ziel][alevel] = 3; // Gebe dem Ziel das Adminlevel 2
  489. dini_IntSet(save,"Adminlevel",3); // Schreibe in seine Datei Adminlevel 2
  490. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________High Admin___________|");
  491. SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den rank: High Admins gestuft.");
  492. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 3");
  493. }
  494. if(level==4) // wenn er 3 eintippt
  495. {
  496. GetPlayerName(ziel,gegner,sizeof(gegner));
  497. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  498. pInfo[ziel][alevel] = 4; // Gebe dem Ziel das Adminlevel 3
  499. dini_IntSet(save,"Adminlevel",4); //schreibe in seine Datei Adminlevel 3
  500. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Projektleiter___________|");
  501. SendClientMessage(playerid, COLOR_GREY, "Du wurdest zum Projektleiter gestuft.");
  502. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 3");
  503. }
  504. if(level==0) // wenn er 4 eintippt
  505. {
  506. GetPlayerName(ziel,gegner,sizeof(gegner));
  507. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  508. pInfo[ziel][alevel] = 0; // Gebe dem Ziel Adminlevel 4
  509. dini_IntSet(save,"Adminlevel",0); // schreibe in seine Datei Adminlevel 4
  510. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Zivi___________|");
  511. SendClientMessage(playerid, COLOR_GREY, "Du bist nun wieder ein Zivi.");
  512. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 0");
  513. }
  514. else
  515. {
  516. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|______KeinAdmin!______|");
  517. SendClientMessage(playerid, COLOR_GREY, "Du bist kein Admin!");
  518. SendClientMessage(playerid, COLOR_GREY, "Deine Admin Stufe ist 0");
  519. SendClientMessage(playerid, COLOR_GREY, "Und kannst somit keine Admin befehle ausführen!");
  520. }}}}
  521. return 1;
  522. }
  523. }
  524.  
  525. //------------------invite------------------------------------
  526. if(strcmp(strget(cmdtext,0), "/invite", true) == 0)
  527. {
  528. if(pInfo[playerid][gLeader] == Groove || pInfo[playerid][gLeader] == Ballas || pInfo[playerid][gLeader] == Vagos) return SendClientMessage(playerid, COLOR_RED, "Du bist kein Leader einer Fraktion");
  529. {
  530. new ziel = strval(strget(cmdtext,1)), team = strval(strget(cmdtext,2)),save[45];
  531. {
  532. if(team==1){ pInfo[ziel][gTeam] = 1; SetPlayerSkin(ziel,106); dini_IntSet(save,"Fraktion",pInfo[ziel][gTeam]);}
  533. if(team==2){ pInfo[ziel][gTeam] = 2; SetPlayerSkin(ziel,104); dini_IntSet(save,"Fraktion",pInfo[ziel][gTeam]);}
  534. if(team==3){ pInfo[ziel][gTeam] = 3; SetPlayerSkin(ziel,108); dini_IntSet(save,"Fraktion",pInfo[ziel][gTeam]);}}}
  535. return 1;
  536. }
  537.  
  538. //----------------------ban--------------------------------
  539. new string[128], Grund[128], save[45];
  540. new ziel = strval(strget(cmdtext,1)); // Das gleiche wie bei teamid
  541. Grund = strget(cmdtext,2);
  542. GetPlayerName(ziel,gegner,sizeof(gegner));
  543. format(save,sizeof(save),"/Bans/%s.ini",gegner);//mache einen neuen Ornder Namens Ban und füge die ini Datei vom Spieler ein
  544. format(string, sizeof(string), "*** %s wurde von %s gebannt. Grund:%s ***", gegner, Spielername(playerid), Grund); //Mache ein String. In einem String mit Namen etc. muss man %s schreiben und hinter der Nachricht wo für das %s stehen soll. Muss in exakter reihenfolge sein!
  545. if(strcmp(strget(cmdtext,0), "/ban", true) == 0)
  546. {
  547. if(pInfo[playerid][alevel] == 2) // wenn der spieler Adminlevel 2 ist
  548. {
  549. if(!strlen(strget(cmdtext,1))) // wenn der cmd falsch ist
  550. {
  551. SendClientMessage(playerid,COLOR_YELLOW,"Benutze: /ban [id] [Grund] "); return 1; // Nachricht senden
  552. }
  553. if(!strlen(strget(cmdtext,2)))// wenn der cmd falsch ist
  554. {
  555. SendClientMessage(playerid,COLOR_YELLOW,"Benutzung: /ban [id] [Grund] "); return 1;// Nachricht senden
  556. }
  557. Ban(ziel); // Ban ziel
  558. SendClientMessageToAll(COLOR_Red, string); // Sende Allen eine Nachricht
  559. }
  560. else
  561. {
  562. SendClientMessage(playerid, COLOR_RED, "Du bist kein Adminlevel 2 !");
  563. }
  564. return 1;
  565. }
  566.  
  567.  
  568. //jail
  569. if(!strcmp(strget(cmdtext,0),"/jail")) //Hier wird wieder beschrieben das wenn man den /jail befehl eingibt
  570. {
  571. new name[20], sstring[64]; // dernieren der Namen
  572. GetPlayerName(ziel, name, sizeof name);// Bekomme den Namen des Ziels
  573. format(string, sizeof(string), "%s wurde von %s eingebuchtet", name, Spielername(playerid)); // Satz bilden
  574. ziel = strval(strget(cmdtext,1)); // /jail [ziel]
  575. {
  576. if(IsPlayerConnected(playerid))// spieler muss online sein
  577. {
  578. if(IsPlayerConnected(ziel)) return SendClientMessage(playerid, COLOR_RED, "Spieler ist nicht online");// ziel muss online sein
  579. {
  580. if(IsPlayerInRangeOfPoint(playerid, 1.0, 0, 0, 0)) return SendClientMessage(playerid, COLOR_RED, "Du bist vor keiner Zelle");
  581. {
  582. SetPlayerPos(ziel,0,0,0); // Setze Spieler auf Kordinaten
  583. SendClientMessageToAll(COLOR_LIGHTBLUE, sstring);
  584. }}}}
  585. return 1;
  586. }
  587.  
  588. //----Makeleader Funktion-------------------
  589. if(!strcmp(strget(cmdtext,0),"/makeleader"))
  590. {
  591. new target = strval(strget(cmdtext,1)), fraktion = strval(strget(cmdtext,2)), saves[32], name[20];
  592. format(saves,sizeof(saves),"Spieler/%s.ini",name);
  593. GetPlayerName(target, name, sizeof(name));
  594. if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeleader [ID] [1-3]");
  595. {
  596. if(!strlen(strget(cmdtext,2))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeleader [ID] [1-3]");
  597. {
  598. if(fraktion == Groove)
  599. {
  600. SetPlayerSkin(target, 288);
  601. SendClientMessage(target, COLOR_WHITE, "Du wurdest zum Leader der Grove gemacht");
  602. pInfo[target][gLeader] = fraktion;
  603. dini_IntSet(save,"Fraktionsleader",pInfo[target][gLeader]);
  604. }
  605. if(fraktion == Ballas)
  606. {
  607. SetPlayerSkin(target, 275);
  608. SendClientMessage(target, COLOR_WHITE, "Du wurdest zum Ledader der Ballas ernannt");
  609. pInfo[target][gLeader] = fraktion;
  610. dini_IntSet(save,"Fraktionsleader",pInfo[target][gTeam]);
  611. dini_IntSet(save,"Skin",pInfo[target][skin]);
  612. }
  613. if(fraktion == Vagos)
  614. {
  615. SetPlayerSkin(target, 163);
  616. SendClientMessage(target, COLOR_WHITE, "Du wurdest zum Leader der Vagos ernannt");
  617. pInfo[target][gLeader] = fraktion;
  618. dini_IntSet(save,"Fraktionsleader",pInfo[target][gLeader]);
  619. dini_IntSet(save,"Skin",pInfo[target][skin]);
  620. }}}
  621. return 1;
  622. }
  623.  
  624. //--------waffen für ballas------------------
  625. if(strcmp(cmdtext, "/ausruesten", true) == 0) // wenn ( /waffenb eingegeben wird
  626. {
  627. if(pInfo[playerid][gTeam] == Ballas || pInfo[playerid][gLeader] == Ballas) // wenn der Spieler ein Teammitglieder oder Leader der Fraktion Ballas ist
  628. {
  629. GivePlayerWeapon(playerid, 1, 1); // Gib ihm die Waffe mit der ID 15
  630. GivePlayerWeapon(playerid, 24, 50); // Gib ihm die Waffe mit der ID 32 und 150 Munition
  631. GivePlayerWeapon(playerid, 25, 50); // Gib ihm die Waffe mit der ID 28 und 150 Munition
  632. }
  633. return 1; // Cmd zu Ende
  634. }
  635.  
  636. //---------waffen für groove----------------
  637. if (strcmp(cmdtext, "/ausruesten", true) == 0) // wenn ( /waffeng eingegeben wird
  638. {
  639. if(pInfo[playerid][gTeam] == Groove || pInfo[playerid][gLeader] == Groove)// wenn der Spieler ein Teammitglieder oder Leader der Fraktion Groove ist
  640. {
  641. GivePlayerWeapon(playerid, 1, 1); // Gib ihm die Waffe mit der ID 1
  642. GivePlayerWeapon(playerid, 24, 50);// Gib ihm die Waffe mit der ID 32 und 150 Munition
  643. GivePlayerWeapon(playerid, 25, 50); // Gib ihm die Waffe mit der ID 29 und 150 Munition
  644. }
  645. return 1; // Cmd zu Ende
  646. }
  647. //---------waffen für Vagos ----------------
  648. if (strcmp(cmdtext, "/ausruesten", true) == 0) // wenn ( /waffeng eingegeben wird
  649. {
  650. if(pInfo[playerid][gTeam] == Vagos || pInfo[playerid][gLeader] == Vagos)// wenn der Spieler ein Teammitglieder oder Leader der Fraktion Groove ist
  651. {
  652. GivePlayerWeapon(playerid, 1, 1); // Gib ihm die Waffe mit der ID 1
  653. GivePlayerWeapon(playerid, 24, 50);// Gib ihm die Waffe mit der ID 32 und 150 Munition
  654. GivePlayerWeapon(playerid, 25, 50); // Gib ihm die Waffe mit der ID 29 und 150 Munition
  655. }
  656. return 1; // Cmd zu Ende
  657. }
  658. return 0;
  659. }
  660.  
  661. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  662. {
  663. if(pInfo[playerid][autos] == 1)
  664. {
  665. SendClientMessage(playerid, COLOR_RED, " Du hast noch keinen Führerschein!");
  666. }
  667. else
  668. {
  669. return 1;
  670. }
  671. return 1;
  672. }
  673.  
  674.  
  675. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  676. {
  677. return 1;
  678. }
  679.  
  680. public OnPlayerExitVehicle(playerid, vehicleid)
  681. {
  682. return 1;
  683. }
  684.  
  685. public OnPlayerStateChange(playerid, newstate, oldstate)
  686. {
  687. return 1;
  688. }
  689.  
  690. public OnPlayerEnterCheckpoint(playerid)
  691. {
  692. return 1;
  693. }
  694.  
  695. public OnPlayerLeaveCheckpoint(playerid)
  696. {
  697. return 1;
  698. }
  699.  
  700. public OnPlayerEnterRaceCheckpoint(playerid)
  701. {
  702. return 1;
  703. }
  704.  
  705. public OnPlayerLeaveRaceCheckpoint(playerid)
  706. {
  707. return 1;
  708. }
  709.  
  710. public OnRconCommand(cmd[])
  711. {
  712. return 1;
  713. }
  714.  
  715. public OnObjectMoved(objectid)
  716. {
  717. return 1;
  718. }
  719.  
  720. public OnPlayerObjectMoved(playerid, objectid)
  721. {
  722. return 1;
  723. }
  724.  
  725. public OnPlayerPickUpPickup(playerid, pickupid) // Pickup Objektlisten findet ihr hier http://wiki.sa-mp.com/wiki/Pickup_help
  726. {
  727. if(pickupid == pickuptest) // Bedeutet wenn(das pickup == namens pickuptest aufgehoben wird)
  728. {
  729. SendClientMessage(playerid, COLOR_GREEN, "Hello World"); // Sendet einen Text an ( Spieler, mit der Farbe Grün, "und den Text Hello World");
  730. }
  731. if(pickupid == pickupeingangtest)
  732. {
  733. SetPlayerInterior(playerid, 3); // Hier geben wir den Innenraum an (Interior = Innenraum). Die 3 gibt den Innenraum an, die Id´s findet ihr hier http://wiki.sa-mp.com/wiki/Interior oder wenn ihr in einen Raum geht und /interior eingebt. Wird in Savedposition.txt in eurem GTA verzeichnis gespeichert.
  734. SetPlayerPos(playerid, 0, 0,0); // Hier wird angegeben wo der Spieler hinkommt wenn er in den Pickup geht. Geht auf einem Gf server oder Debug Modus und geht in ein Haus und gibt /save ein. Kordinaten wie bei interior zu finden.
  735. SetPlayerFacingAngle( playerid, 360.0 ); // Setzt die Schaurichtung des Spielers auf den Angel wert.
  736. GameTextForPlayer(playerid, "~w~Wilk~n~~r~ommen", 3000, 3); // Wenn jemand jetzt in dem Gebäude ist wird ein Text über ihm erscheinen. ~w~ sagt es soll eine weiße Shrift sein und ~r~ soll rot sein. http://wiki.sa-mp.com/wiki/Colors_List
  737. }
  738. if(pickupid == jailpickup)
  739. {
  740. GameTextForPlayer(playerid, "~gib ein~/jail [Zeit][Kosten]", 4000, 3);
  741. }
  742. return 1;
  743. }
  744.  
  745. public OnPlayerSelectedMenuRow(playerid, row)
  746. {
  747. return 1;
  748. }
  749.  
  750. public OnPlayerExitedMenu(playerid)
  751. {
  752. return 1;
  753. }
  754.  
  755. public gesundheit()
  756. {
  757. return 1;
  758. }
Advertisement
Add Comment
Please, Sign In to add comment