Advertisement
Guest User

Untitled

a guest
May 24th, 2015
256
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. if(pInfo[playerid][alevel] == 1) // Sende folgendes mit Admin Stufe 1
  418. {
  419. SendClientMessage(playerid, COLOR_Red, "|___________Supporter___________|");
  420. SendClientMessage(playerid, COLOR_Red, "Du hast dich nun Als Supporter abgemeldet.");
  421. SendClientMessageToAll(COLOR_PINK, aoffd); // Sende die Nachricht an alle
  422. SetPlayerColor(playerid, COLOR_WHITE);
  423. return 1;
  424. }
  425. if(pInfo[playerid][alevel] >= 2) // Sende folgendes über admin stufe 2
  426. {
  427. SendClientMessage(playerid, COLOR_Red, "|___________Admin___________|");
  428. SendClientMessage(playerid, COLOR_Red, "Du hast dich nun als Admin abgemeldet.");
  429. SendClientMessageToAll(COLOR_PINK, aoffda); // Sende die Nachricht wieder an alle
  430. SetPlayerColor(playerid, COLOR_WHITE);
  431. return 1;
  432. }
  433. if(pInfo[playerid][alevel] >= 2) // Sende folgendes über admin stufe 2
  434. {
  435. SendClientMessage(playerid, COLOR_Red, "|___________High Admin___________|");
  436. SendClientMessage(playerid, COLOR_Red, "Du hast dich nun Als High Admin abgemeldet.");
  437. SendClientMessageToAll(COLOR_PINK, aoffd); // Sende die Nachricht an alle
  438. SetPlayerColor(playerid, COLOR_WHITE);
  439. return 1;
  440. }
  441. if(pInfo[playerid][alevel] >= 2) // Sende folgendes über admin stufe 2
  442. {
  443. SendClientMessage(playerid, COLOR_Red, "|___________Projektleiter___________|");
  444. SendClientMessage(playerid, COLOR_Red, "Du hast dich nun als Projektleiter abgemeldet.");
  445. SendClientMessageToAll(COLOR_PINK, aoffda); // Sende die Nachricht wieder an alle
  446. SetPlayerColor(playerid, COLOR_WHITE);
  447. return 1;
  448. }
  449.  
  450.  
  451. //--------------makeadmin-----------------------------------
  452. if(strcmp(cmdtext,"/makeadmin", true) == 0)
  453. {
  454. if(pInfo[playerid][alevel] == 3,4,5) // Wenn die pInfo vom Spieler level 6 ist
  455. {
  456. new ziel = strval(strget(cmdtext,1)); // Das gleiche wie bei teamid
  457. new level= strval(strget(cmdtext,2)); // level = die Levelzahl
  458. {
  459. if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeadmin [ID]");
  460. {
  461. if(!strlen(strget(cmdtext,2))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeadmin [ID]");
  462. {
  463. if(level==1) // wenn er /makeadmin 0 macht
  464. {
  465. GetPlayerName(ziel,gegner,sizeof(gegner));
  466. new save[45];
  467. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  468. pInfo[ziel][alevel] = 1; // Gebe dem ziel das Adminlevel (alevel) 0
  469. dini_IntSet(save,"Adminlevel",1); // Schreibe in seine Datei Adminlevel = 0
  470. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Supporter___________|");
  471. SendClientMessage(playerid, COLOR_GREY, "Du bist nun ein Supporter!");
  472. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 1");
  473. if(level==2) // wenn er /makeadmin 1 macht
  474. {
  475. GetPlayerName(ziel,gegner,sizeof(gegner));
  476. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  477. pInfo[ziel][alevel] = 2; // Gebe dem ziel das Adminlevel (alevel) 1
  478. dini_IntSet(save,"Adminlevel",2); // Schreibe in seine Datei Adminlevel = 1
  479. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Admin___________|");
  480. SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den rank: Admin gestuft.");
  481. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 2");
  482. }
  483. if(level==3) // wenn er /makeadmin 2 macht
  484. {
  485. GetPlayerName(ziel,gegner,sizeof(gegner));
  486. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  487. pInfo[ziel][alevel] = 3; // Gebe dem Ziel das Adminlevel 2
  488. dini_IntSet(save,"Adminlevel",3); // Schreibe in seine Datei Adminlevel 2
  489. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________High Admin___________|");
  490. SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den rank: High Admins gestuft.");
  491. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 3");
  492. }
  493. if(level==4) // wenn er 3 eintippt
  494. {
  495. GetPlayerName(ziel,gegner,sizeof(gegner));
  496. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  497. pInfo[ziel][alevel] = 4; // Gebe dem Ziel das Adminlevel 3
  498. dini_IntSet(save,"Adminlevel",4); //schreibe in seine Datei Adminlevel 3
  499. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Projektleiter___________|");
  500. SendClientMessage(playerid, COLOR_GREY, "Du wurdest zum Projektleiter gestuft.");
  501. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 3");
  502. }
  503. if(level==0) // wenn er 4 eintippt
  504. {
  505. GetPlayerName(ziel,gegner,sizeof(gegner));
  506. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  507. pInfo[ziel][alevel] = 0; // Gebe dem Ziel Adminlevel 4
  508. dini_IntSet(save,"Adminlevel",0); // schreibe in seine Datei Adminlevel 4
  509. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Zivi___________|");
  510. SendClientMessage(playerid, COLOR_GREY, "Du bist nun wieder ein Zivi.");
  511. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 0");
  512. }
  513. else
  514. {
  515. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|______KeinAdmin!______|");
  516. SendClientMessage(playerid, COLOR_GREY, "Du bist kein Admin!");
  517. SendClientMessage(playerid, COLOR_GREY, "Deine Admin Stufe ist 0");
  518. SendClientMessage(playerid, COLOR_GREY, "Und kannst somit keine Admin befehle ausführen!");
  519. }}}}
  520. return 1;
  521. }
  522.  
  523. //------------------invite------------------------------------
  524. if(strcmp(strget(cmdtext,0), "/invite", true) == 0)
  525. {
  526. if(pInfo[playerid][gLeader] == Groove || pInfo[playerid][gLeader] == Ballas || pInfo[playerid][gLeader] == Vagos) return SendClientMessage(playerid, COLOR_RED, "Du bist kein Leader einer Fraktion");
  527. {
  528. new ziel = strval(strget(cmdtext,1)), team = strval(strget(cmdtext,2)),save[45];
  529. {
  530. if(team==1){ pInfo[ziel][gTeam] = 1; SetPlayerSkin(ziel,106); dini_IntSet(save,"Fraktion",pInfo[ziel][gTeam]);}
  531. if(team==2){ pInfo[ziel][gTeam] = 2; SetPlayerSkin(ziel,104); dini_IntSet(save,"Fraktion",pInfo[ziel][gTeam]);}
  532. if(team==3){ pInfo[ziel][gTeam] = 3; SetPlayerSkin(ziel,108); dini_IntSet(save,"Fraktion",pInfo[ziel][gTeam]);}}}
  533. return 1;
  534. }
  535.  
  536. //----------------------ban--------------------------------
  537. new string[128], Grund[128], save[45];
  538. new ziel = strval(strget(cmdtext,1)); // Das gleiche wie bei teamid
  539. Grund = strget(cmdtext,2);
  540. GetPlayerName(ziel,gegner,sizeof(gegner));
  541. format(save,sizeof(save),"/Bans/%s.ini",gegner);//mache einen neuen Ornder Namens Ban und füge die ini Datei vom Spieler ein
  542. 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!
  543. if(strcmp(strget(cmdtext,0), "/ban", true) == 0)
  544. {
  545. if(pInfo[playerid][alevel] == 2) // wenn der spieler Adminlevel 2 ist
  546. {
  547. if(!strlen(strget(cmdtext,1))) // wenn der cmd falsch ist
  548. {
  549. SendClientMessage(playerid,COLOR_YELLOW,"Benutze: /ban [id] [Grund] "); return 1; // Nachricht senden
  550. }
  551. if(!strlen(strget(cmdtext,2)))// wenn der cmd falsch ist
  552. {
  553. SendClientMessage(playerid,COLOR_YELLOW,"Benutzung: /ban [id] [Grund] "); return 1;// Nachricht senden
  554. }
  555. Ban(ziel); // Ban ziel
  556. SendClientMessageToAll(COLOR_Red, string); // Sende Allen eine Nachricht
  557. }
  558. else
  559. {
  560. SendClientMessage(playerid, COLOR_RED, "Du bist kein Adminlevel 2 !");
  561. }
  562. return 1;
  563. }
  564.  
  565.  
  566. //jail
  567. if(!strcmp(strget(cmdtext,0),"/jail")) //Hier wird wieder beschrieben das wenn man den /jail befehl eingibt
  568. {
  569. new name[20], sstring[64]; // dernieren der Namen
  570. GetPlayerName(ziel, name, sizeof name);// Bekomme den Namen des Ziels
  571. format(string, sizeof(string), "%s wurde von %s eingebuchtet", name, Spielername(playerid)); // Satz bilden
  572. ziel = strval(strget(cmdtext,1)); // /jail [ziel]
  573. {
  574. if(IsPlayerConnected(playerid))// spieler muss online sein
  575. {
  576. if(IsPlayerConnected(ziel)) return SendClientMessage(playerid, COLOR_RED, "Spieler ist nicht online");// ziel muss online sein
  577. {
  578. if(IsPlayerInRangeOfPoint(playerid, 1.0, 0, 0, 0)) return SendClientMessage(playerid, COLOR_RED, "Du bist vor keiner Zelle");
  579. {
  580. SetPlayerPos(ziel,0,0,0); // Setze Spieler auf Kordinaten
  581. SendClientMessageToAll(COLOR_LIGHTBLUE, sstring);
  582. }}}}
  583. return 1;
  584. }
  585.  
  586. //----Makeleader Funktion-------------------
  587. if(!strcmp(strget(cmdtext,0),"/makeleader"))
  588. {
  589. new target = strval(strget(cmdtext,1)), fraktion = strval(strget(cmdtext,2)), saves[32], name[20];
  590. format(saves,sizeof(saves),"Spieler/%s.ini",name);
  591. GetPlayerName(target, name, sizeof(name));
  592. if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeleader [ID] [1-3]");
  593. {
  594. if(!strlen(strget(cmdtext,2))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeleader [ID] [1-3]");
  595. {
  596. if(fraktion == Groove)
  597. {
  598. SetPlayerSkin(target, 288);
  599. SendClientMessage(target, COLOR_WHITE, "Du wurdest zum Leader der Grove gemacht");
  600. pInfo[target][gLeader] = fraktion;
  601. dini_IntSet(save,"Fraktionsleader",pInfo[target][gLeader]);
  602. }
  603. if(fraktion == Ballas)
  604. {
  605. SetPlayerSkin(target, 275);
  606. SendClientMessage(target, COLOR_WHITE, "Du wurdest zum Ledader der Ballas ernannt");
  607. pInfo[target][gLeader] = fraktion;
  608. dini_IntSet(save,"Fraktionsleader",pInfo[target][gTeam]);
  609. dini_IntSet(save,"Skin",pInfo[target][skin]);
  610. }
  611. if(fraktion == Vagos)
  612. {
  613. SetPlayerSkin(target, 163);
  614. SendClientMessage(target, COLOR_WHITE, "Du wurdest zum Leader der Vagos ernannt");
  615. pInfo[target][gLeader] = fraktion;
  616. dini_IntSet(save,"Fraktionsleader",pInfo[target][gLeader]);
  617. dini_IntSet(save,"Skin",pInfo[target][skin]);
  618. }}}
  619. return 1;
  620. }
  621.  
  622. //--------waffen für ballas------------------
  623. if(strcmp(cmdtext, "/ausruesten", true) == 0) // wenn ( /waffenb eingegeben wird
  624. {
  625. if(pInfo[playerid][gTeam] == Ballas || pInfo[playerid][gLeader] == Ballas) // wenn der Spieler ein Teammitglieder oder Leader der Fraktion Ballas ist
  626. {
  627. GivePlayerWeapon(playerid, 1, 1); // Gib ihm die Waffe mit der ID 15
  628. GivePlayerWeapon(playerid, 24, 50); // Gib ihm die Waffe mit der ID 32 und 150 Munition
  629. GivePlayerWeapon(playerid, 25, 50); // Gib ihm die Waffe mit der ID 28 und 150 Munition
  630. }
  631. return 1; // Cmd zu Ende
  632. }
  633.  
  634. //---------waffen für groove----------------
  635. if (strcmp(cmdtext, "/ausruesten", true) == 0) // wenn ( /waffeng eingegeben wird
  636. {
  637. if(pInfo[playerid][gTeam] == Groove || pInfo[playerid][gLeader] == Groove)// wenn der Spieler ein Teammitglieder oder Leader der Fraktion Groove ist
  638. {
  639. GivePlayerWeapon(playerid, 1, 1); // Gib ihm die Waffe mit der ID 1
  640. GivePlayerWeapon(playerid, 24, 50);// Gib ihm die Waffe mit der ID 32 und 150 Munition
  641. GivePlayerWeapon(playerid, 25, 50); // Gib ihm die Waffe mit der ID 29 und 150 Munition
  642. }
  643. return 1; // Cmd zu Ende
  644. }
  645. //---------waffen für Vagos ----------------
  646. if (strcmp(cmdtext, "/ausruesten", true) == 0) // wenn ( /waffeng eingegeben wird
  647. {
  648. if(pInfo[playerid][gTeam] == Vagos || pInfo[playerid][gLeader] == Vagos)// wenn der Spieler ein Teammitglieder oder Leader der Fraktion Groove ist
  649. {
  650. GivePlayerWeapon(playerid, 1, 1); // Gib ihm die Waffe mit der ID 1
  651. GivePlayerWeapon(playerid, 24, 50);// Gib ihm die Waffe mit der ID 32 und 150 Munition
  652. GivePlayerWeapon(playerid, 25, 50); // Gib ihm die Waffe mit der ID 29 und 150 Munition
  653. }
  654. return 1; // Cmd zu Ende
  655. }
  656. return 0;
  657. }
  658.  
  659. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  660. {
  661. if(pInfo[playerid][autos] == 1)
  662. {
  663. SendClientMessage(playerid, COLOR_RED, " Du hast noch keinen Führerschein!");
  664. }
  665. else
  666. {
  667. return 1;
  668. }
  669. return 1;
  670. }
  671.  
  672.  
  673. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  674. {
  675. return 1;
  676. }
  677.  
  678. public OnPlayerExitVehicle(playerid, vehicleid)
  679. {
  680. return 1;
  681. }
  682.  
  683. public OnPlayerStateChange(playerid, newstate, oldstate)
  684. {
  685. return 1;
  686. }
  687.  
  688. public OnPlayerEnterCheckpoint(playerid)
  689. {
  690. return 1;
  691. }
  692.  
  693. public OnPlayerLeaveCheckpoint(playerid)
  694. {
  695. return 1;
  696. }
  697.  
  698. public OnPlayerEnterRaceCheckpoint(playerid)
  699. {
  700. return 1;
  701. }
  702.  
  703. public OnPlayerLeaveRaceCheckpoint(playerid)
  704. {
  705. return 1;
  706. }
  707.  
  708. public OnRconCommand(cmd[])
  709. {
  710. return 1;
  711. }
  712.  
  713. public OnObjectMoved(objectid)
  714. {
  715. return 1;
  716. }
  717.  
  718. public OnPlayerObjectMoved(playerid, objectid)
  719. {
  720. return 1;
  721. }
  722.  
  723. public OnPlayerPickUpPickup(playerid, pickupid) // Pickup Objektlisten findet ihr hier http://wiki.sa-mp.com/wiki/Pickup_help
  724. {
  725. if(pickupid == pickuptest) // Bedeutet wenn(das pickup == namens pickuptest aufgehoben wird)
  726. {
  727. SendClientMessage(playerid, COLOR_GREEN, "Hello World"); // Sendet einen Text an ( Spieler, mit der Farbe Grün, "und den Text Hello World");
  728. }
  729. if(pickupid == pickupeingangtest)
  730. {
  731. 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.
  732. 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.
  733. SetPlayerFacingAngle( playerid, 360.0 ); // Setzt die Schaurichtung des Spielers auf den Angel wert.
  734. 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
  735. }
  736. if(pickupid == jailpickup)
  737. {
  738. GameTextForPlayer(playerid, "~gib ein~/jail [Zeit][Kosten]", 4000, 3);
  739. }
  740. return 1;
  741. }
  742.  
  743. public OnPlayerSelectedMenuRow(playerid, row)
  744. {
  745. return 1;
  746. }
  747.  
  748. public OnPlayerExitedMenu(playerid)
  749. {
  750. return 1;
  751. }
  752.  
  753. public gesundheit()
  754. {
  755. return 1;
  756. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement