Advertisement
Guest User

Untitled

a guest
Feb 2nd, 2015
190
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 35.54 KB | None | 0 0
  1. //----------------Gamemode für Anfänger by Oktabius-----------------------------
  2.  
  3. #include <a_samp>
  4. #include <dini>
  5. #include <Dudb>
  6.  
  7. //Farben
  8. #define COLOR_GREY 0xAFAFAFAA // mache eine Farbe namens COLOR_GREY der Farbcode ist 0xAFAFAFAA
  9. #define COLOR_GREEN 0x33AA33AA
  10. #define COLOR_RED 0xAA3333AA
  11. #define COLOR_YELLOW 0xFFFF00AA
  12. #define COLOR_WHITE 0xFFFFFFAA
  13. #define COLOR_DARKRED 0x660000AA
  14. #define COLOR_BLUE 0x0000BBAA
  15. #define COLOR_ORANGE 0xFF9900AA
  16. #define COLOR_PINK 0xFF66FFAA
  17. #define COLOR_LIGHTBLUE 0x33CCFFAA
  18. #define COLOR_CYAN 0x00BFF3AA
  19. #define COLOR_BLACK 0x000000AA
  20. #define COLOR_BROWN 0XA52A2AAA
  21. #define COLOR_GOLD 0xB8860BAA
  22. #define COLOR_INDIGO 0x4B00B0AA
  23. #define COLOR_LAWNGREEN 0x7CFC00AA
  24. #define COLOR_LIMEGREEN 0x32CD32AA
  25. #define COLOR_OLIVE 0x808000AA
  26. #define COLOR_SEAGREEN 0x2E8B57AA
  27. #define COLOR_TOMATO 0xFF6347AA
  28. #define COLOR_YELLOWGREEN 0x9ACD32AA
  29. #define COLOR_MEDIUMAQUA 0x83BFBFAA
  30. #define COLOR_FLBLUE 0x6495EDAA
  31. #define COLOR_MAGENTA 0xFF00FFFF
  32. #define COLOR_PURPLE 0x800080AA
  33. #define COLOR_GRELLRED 0xFF000000
  34. #define COLOR_LIGHTGREEN 0x86FF59FF
  35. #define COLOR_LIGHTBLUE 0x33CCFFAA
  36.  
  37. #pragma unused ret_memcpy
  38. #pragma tabsize 0
  39.  
  40. #define WAFFENMENU 1 // #Definiere [Name] [Zahl] Namen könnt ihr euch ausdenken und Zahl ist die ID, des GUI, das nächste wäre dann 2
  41. #define persomenu 2
  42.  
  43. enum Info
  44. {
  45. passwort[128],
  46. alevel,
  47. autos,
  48. motorrad,
  49. boot,
  50. kfz,
  51. flug,
  52. mofa,
  53. fRank,
  54. gTeam,
  55. gLeader,
  56. skin,
  57. pmoney,
  58. Fraktion,
  59. Member,
  60. Leader
  61. };
  62.  
  63. //neues
  64. new bool:loggedin[MAX_PLAYERS];
  65.  
  66. //Gangzones
  67. new groovezone;
  68.  
  69. //Fraktionen
  70. new pInfo[MAX_PLAYERS][Info];
  71. // wenn ihr es so wie ich es oben gemacht habe aufstappelt, sparrt dies viele Ressourcen, wodurch euer Server eine geringere Chance hat
  72. // Laggs zu verursachen.
  73.  
  74. #define Groove 1 //Die Zahlen hinter den Namen mache ich nur so als Gedächnisstütze
  75. #define Ballas 2 // Mache eine Fraktion Namens Ballas
  76. #define LSPD 3 // Mache eine Fraktion Names Fahrlehrer
  77. #define Vagos 4
  78. #define Fahrlehrer 5
  79.  
  80. //Pickups
  81. new pickuptest, pickupeingangtest, jailpickup;
  82.  
  83. main()
  84. {
  85. print("----------------------------------");
  86. print(" BY Dark_Morakes ");
  87. print("----------------------------------");
  88. }
  89.  
  90. forward gesundheit(); // Erstelle ein Forward für unser Public gesundheit()
  91. forward hartz4();
  92.  
  93. public OnGameModeInit() // Skins sind hier zu finden http://wiki.sa-mp.com/wiki/Skins
  94. {
  95. EnableStuntBonusForAll(0); // Hier wird gesagt, das wenn man einen Stunt gemacht hat (EnableStuntBonusForAll), kein Geld bekommt (0)
  96. UsePlayerPedAnims(); // Hier wird gesagt, dass der Spieler normal laufen soll und nicht so komisch
  97. ShowPlayerMarkers(0); // ZeigeSpielerMarkierung(0) hier wird angegeben, dass man keinen Spieler auf der Karte durch ein Farbpickment sieht.
  98. DisableInteriorEnterExits(); // Hier wird gesagt, dass die Interioreingänge weggemacht werden sollen, damit wir unsere eigenen Biz´s erstellen können
  99. SetGameModeText("Name eures Gamemodes"); // Der Name des Gamemodes
  100. 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=;
  101.  
  102. 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);
  103.  
  104. SetTimer("gesundheit",301521,1); // Setze einen Timer für unseren Public "gesundheit", 301521 bedeutet er soll nach 5 Minuten etwas machen, man rechnet 1000 millisekunden x gewünschte zeit (1000 Millisekunden entsprechen 1 sek), die 1 bedeutet, der Timer soll sich wiederholen.
  105.  
  106. // Credits goes to SNM
  107. // MaxY
  108. // ____________________________
  109. // | |
  110. // | |
  111. // | |
  112. // MinX | Ganggebiet | MaxX
  113. // | |
  114. // | |
  115. // | |
  116. // | |
  117. // |___________________________|
  118. // MinY
  119.  
  120. groovezone = GangZoneCreate(2347.863, -1718.401, 2539.837, -1626.875); // Name der Zone = Erstelle eine Gangzone(Float:minx, Float:miny, Float:maxx, Float:maxy)
  121.  
  122. 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
  123. pickupeingangtest = CreatePickup(1318, 23, 0,0,0); // die 3 Nullen auf x, y, z Kordinaten umschreiben
  124. jailpickup = CreatePickup(1239, 23, 0, 0, 0); // ""
  125. return 1;
  126. }
  127.  
  128. public OnGameModeExit()
  129. {
  130. return 1;
  131. }
  132.  
  133. public OnPlayerRequestClass(playerid, classid)
  134. {
  135. SetPlayerPos(playerid, 1193.2167,-1266.1366,23.6099); // Setz die Positon( Vom Spieler auf, x, y, z);
  136. SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746); // Richte die Kamera( Vom Spieler auf, x, y,z);
  137. SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746); // Setze die Blickrichtung der Kamera( des Spielers auf, x, y, z);
  138. return 1;
  139. }
  140.  
  141. public OnPlayerRequestSpawn(playerid)
  142. {
  143. return 1;
  144. }
  145.  
  146. public OnPlayerConnect(playerid)
  147. {
  148. if(dini_Exists(Datei(playerid)))
  149. {
  150. SendClientMessage(playerid, COLOR_YELLOW, "*** Willkommen Zurück, Logge dich mit /login [Passwort] ein");
  151. }
  152. if(!dini_Exists(Datei(playerid)))
  153. {
  154. SendClientMessage(playerid, COLOR_LIGHTBLUE, "~Ich sehe du bist neu, bitte registriere dich mit /register [Passwort]~");
  155. }
  156. return 1;
  157. }
  158.  
  159. public OnPlayerDisconnect(playerid, reason)
  160. {
  161. if(dini_Exists(Datei(playerid))) // steht
  162. {
  163. dini_IntSet(Datei(playerid),"Geld",GetPlayerMoney(playerid));
  164. dini_IntSet(Datei(playerid),"Wanteds",GetPlayerWantedLevel(playerid));
  165. dini_IntSet(Datei(playerid),"Skin",GetPlayerSkin(playerid));
  166. dini_IntSet(Datei(playerid),"Autoführerschein",pInfo[playerid][autos]);
  167. dini_IntSet(Datei(playerid),"Flugführerschein",pInfo[playerid][flug]);
  168. dini_IntSet(Datei(playerid),"Mofaführerschein",pInfo[playerid][mofa]);
  169. dini_IntSet(Datei(playerid),"Lkwführerschein",pInfo[playerid][kfz]);
  170. dini_IntSet(Datei(playerid),"Motorradführerschein",pInfo[playerid][motorrad]);
  171. dini_IntSet(Datei(playerid),"Bootsführerschein",pInfo[playerid][boot]);
  172. dini_IntSet(Datei(playerid),"Adminlevel",pInfo[playerid][alevel]);
  173. dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[playerid][fRank]);
  174. }
  175. GangZoneHideForPlayer(playerid,groovezone);
  176. return 1;
  177. }
  178.  
  179. public OnPlayerSpawn(playerid)
  180. {
  181. if(loggedin[playerid] == false)
  182. {
  183. Kick(playerid);
  184. }
  185. GangZoneShowForPlayer(playerid, groovezone, COLOR_LIGHTGREEN);
  186. //Zeige die Gangzone(dem Spieler playerid, der oben definierte Name, Farbe);
  187. SetPlayerSkin(playerid,dini_Int(Datei(playerid),"Skin"));
  188. return 1;
  189. }
  190.  
  191. public OnPlayerDeath(playerid, killerid, reason)
  192. {
  193. SetPlayerPos(playerid,1176.5500,-1323.9135,14.0268); // Setz die Positon( Vom Spieler auf, x, y, z);
  194. SendClientMessage(playerid,COLOR_RED,"Dein Arztbesuch kostet dich $700"); // Sende eine Nachricht( An Spieler, mit der Farbe Rot, "und dem Text");
  195. SetPlayerHealth(playerid, 100.0);
  196. gebespielergeld(playerid,-700); // Ziehe dem (Spieler, 200 $ ab
  197. return 1;
  198. }
  199.  
  200. public OnVehicleSpawn(vehicleid)
  201. {
  202. return 1;
  203. }
  204.  
  205. public OnVehicleDeath(vehicleid, killerid)
  206. {
  207. return 1;
  208. }
  209.  
  210. public OnPlayerText(playerid, text[])
  211. {
  212. return 1;
  213. }
  214.  
  215. public OnPlayerCommandText(playerid, cmdtext[])
  216. {
  217. new spieler[MAX_PLAYER_NAME]; // Den Begriff "spieler" können wir jetzt immer benutzen, wenn wir den Namen des Spielers bzw. playerid brauchen
  218. new gegner[MAX_PLAYER_NAME]; // Den Begriff "gegner" können wir jetzt immer benutzen, wenn wir den Namen des Gegners bzw. ziel brauchen
  219.  
  220. //----------------register---------------------------------
  221.  
  222. if(strcmp(strget(cmdtext,0), "/register", true) == 0)
  223. {
  224. if(!dini_Exists(Datei(playerid))) // wenn der Spieler sich regestriert und es noch keine .ini Datei mit seinem Namen gibt
  225. {
  226. dini_Create(Datei(playerid)); // Erstelle eine Neue .ini Datei
  227. dini_IntSet(Datei(playerid),"passwort",udb_hash(strget(cmdtext,1))); // Setze in die .ini Datei(save,"dass passwort", welches er eingegebne hat)
  228. SendClientMessage(playerid, COLOR_GREEN, "***Dein Account wurde erfolgreich registriert***");
  229. SendClientMessage(playerid, COLOR_GREEN, "***Nutze /login [Passwort] um dich einzuloggen***");
  230. }
  231. else
  232. {
  233. if(dini_Exists(Datei(playerid))) // Wenn beim regestrieren die Datei schon besteht
  234. {
  235. SendClientMessage(playerid, COLOR_RED, "Der Account ist bereits registriert");
  236. Kick(playerid); // Kick den Spieler
  237. }}
  238. return 1;
  239. }
  240.  
  241. if(strcmp(strget(cmdtext,0), "/stats", true) == 0) // wenn man /stats eingibt
  242. {
  243. new string[100], string2[50], geld = GetPlayerMoney(playerid); // definiere
  244. format(string, sizeof(string), "Name: %s\nBargeld: %d", Spielername(playerid), geld); // setzt dem String "Name: (des Spielers) Bargeld(des Spielers)
  245. //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
  246. format(string2, sizeof(string2), "Personalausweis von %s", Spielername(playerid));
  247. ShowPlayerDialog(playerid, persomenu, DIALOG_STYLE_MSGBOX, string2 , string, "Ok", "Verlassen");
  248. return 1;
  249. }
  250.  
  251. if(strcmp(strget(cmdtext,0), "/login", true) == 0)
  252. {
  253. new s2[256];
  254. if(dini_Exists(Datei(playerid)))
  255. {
  256. s2=dini_Get(Datei(playerid),"passwort");
  257. if(strval(s2)==udb_hash(strget(cmdtext,1))) // wenn die Eingabe nach /login mit dem Passwort übereinstimmt
  258. {
  259. loggedin[playerid] = true;
  260. SendClientMessage(playerid, COLOR_LIGHTBLUE, "***Du hast dich erfolgreich eingeloggt***");
  261. gebespielergeld(playerid,dini_Int(Datei(playerid),"Geld"));
  262. SetPlayerWantedLevel(playerid,dini_Int(Datei(playerid),"Wanteds"));
  263. SetPlayerSkin(playerid,dini_Int(Datei(playerid),"Skin"));
  264. pInfo[playerid][autos] =dini_Int(Datei(playerid),"Autoführerschein");
  265. pInfo[playerid][flug] =dini_Int(Datei(playerid),"Flugführerschein");
  266. pInfo[playerid][mofa] =dini_Int(Datei(playerid),"Mofaführerschein");
  267. pInfo[playerid][kfz] =dini_Int(Datei(playerid),"Lkwführerschein");
  268. pInfo[playerid][motorrad] =dini_Int(Datei(playerid),"Motorradführerschein");
  269. pInfo[playerid][boot] =dini_Int(Datei(playerid),"Bootsführerschein");
  270. pInfo[playerid][alevel] =dini_Int(Datei(playerid),"Adminlevel");
  271. pInfo[playerid][fRank] =dini_Int(Datei(playerid),"Fraktionsrank");
  272. }
  273. else
  274. {
  275. SendClientMessage(playerid, COLOR_RED, "Falsches PW! Versuch es nocheinmal!");
  276. }}
  277. return 1;
  278. }
  279. //-------Autoschein vergabe----------------
  280. if(strcmp(strget(cmdtext,0), "/autoschein", true) == 0)
  281. {
  282. new ziel = strval(strget(cmdtext,1)); // Das gleiche wie bei teamid
  283. {
  284. if(IsPlayerConnected(ziel)) return SendClientMessage(playerid, COLOR_RED, "Ziel ist nicht Online");
  285. {
  286. if(IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_RED, "Du musst Online sein");
  287. {
  288. if(pInfo[playerid][gTeam] == Fahrlehrer || pInfo[playerid][gLeader] == Fahrlehrer) // wenn der Fahrlehrer der Leader oder im Team der Fahrschule ist
  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, -3500); // entziehe dem Ziel 3500 €
  293. gebespielergeld(playerid, 3500); // gebe dem Fahrleher 3500 €
  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] == Fahrlehrer) 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 (Neuling) 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 (Amateur) bekommen");}
  320. if(rank==3){ pInfo[ziel][fRank] = 3; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du hast soeben den Fraktions Rank (Fortgeschrittener) bekommen");}
  321. if(rank==4){ pInfo[ziel][fRank] = 4; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du hast soeben den Fraktions Rank (Profi) bekommen");}
  322. if(rank==5){ pInfo[ziel][fRank] = 5; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du bist nun der Co Leader dieser Fraktion");}
  323. if(rank==6){ pInfo[ziel][fRank] = 6; dini_IntSet(Datei(playerid),"Fraktionsrank",pInfo[ziel][fRank]); SendClientMessage(ziel, COLOR_YELLOW, "Du bist nun der Leader dieser Fraktion");}}}}}
  324. return 1;
  325. }
  326.  
  327. if(strcmp(cmdtext,"/f",true,2) == 0)
  328. {
  329. new string[128],name[24]; // "string" und "name" definieren
  330. GetPlayerName(playerid,name,sizeof name); // Bekomme den Spieler name(spieler, "name", größe von "name")
  331. 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.
  332. if(!strlen(cmdtext[2])) //wenn der cmd /f falsch eingegeben wird
  333. {
  334. SendClientMessage(playerid,COLOR_RED,"Benutze: /f [Text]");
  335. return 1;
  336. }
  337. for(new i=0 ; i <GetMaxPlayers() ; i++) // definiere alle Spieler
  338. {
  339. 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
  340. {
  341. SendClientMessage(i,COLOR_LIGHTBLUE,string);
  342. }}
  343. return 1;
  344. }
  345.  
  346. if(strcmp(cmdtext,"/o",true,2) == 0 || strcmp(cmdtext,"/occ",true,2) == 0)
  347. {
  348. new string[128],name[24]; // "string" und "name" definieren
  349. GetPlayerName(playerid,name,sizeof name); // Bekomme den Spieler name(spieler, "name", größe von "name")
  350. format(string,sizeof string,"[OCC]%s: %s",name,cmdtext[3]); // Satz bilden
  351. if(!strlen(cmdtext[2])) //wenn der cmd /f falsch eingegeben wird
  352. {
  353. SendClientMessage(playerid,COLOR_RED,"Benutze: /o [Text] oder /occ [Text]");
  354. return 1;
  355. }
  356. if(pInfo[playerid][alevel] >= 1)
  357. {
  358. SendClientMessageToAll(COLOR_WHITE,string);
  359. }
  360. return 1;
  361. }
  362.  
  363.  
  364. // Aond
  365. new aond[128], aonda[128];
  366. format(aond, sizeof(aond), "%s hat sich als Supporter angemeldet.", Spielername(playerid)); // Supporter Xy anmeldung
  367. format(aonda, sizeof(aonda), "%s hat sich als Admin angemeldet.", Spielername(playerid)); // Admin Xy anmeldung
  368. if (strcmp(cmdtext, "/aonduty", true) == 0) // Befehl um Admin on Duty zu gehen!
  369. {
  370. if(pInfo[playerid][alevel] == 1) // Sende folgendes mit Admin Stufe 1
  371. {
  372. SendClientMessage(playerid, COLOR_PINK, "|___________Supporter___________|");
  373. SendClientMessage(playerid, COLOR_PINK, "Du hast dich nun Als Supporter angemeldet.");
  374. SendClientMessage(playerid, COLOR_PINK, "Achtung! Missbrauch des befehles wird bestraft!");
  375. SendClientMessageToAll(COLOR_PINK, aond); // Sende die Nachricht an alle
  376. SetPlayerAmmo(playerid,3,1000);
  377. SetPlayerColor(playerid, COLOR_PINK);
  378. return 1;
  379. }
  380. if(pInfo[playerid][alevel] >= 2) // Sende folgendes über admin stufe 2
  381. {
  382. SendClientMessage(playerid, COLOR_PINK, "|___________Admin___________|");
  383. SendClientMessage(playerid, COLOR_PINK, "Du hast dich nun als Admin angemeldet.");
  384. SendClientMessageToAll(COLOR_PINK, aonda); // Sende die Nachricht wieder an alle
  385. SetPlayerColor(playerid, COLOR_PINK);
  386. return 1;
  387. }
  388. else
  389. { // Sende folgendes wenn er admin lvl 0 ist (Zivilist)
  390. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|______KeinAdmin!______|");
  391. SendClientMessage(playerid, COLOR_GREY, "Du bist kein Admin!");
  392. SendClientMessage(playerid, COLOR_GREY, "Deine Admin Stufe ist 0");
  393. SendClientMessage(playerid, COLOR_GREY, "Und kannst somit keine Admin befehle ausführen!");
  394. }
  395. return 1; // Cmd zu Ende
  396. }
  397.  
  398. // Aoffd
  399. new aoffd[128], aoffda[128];
  400. format(aoffd, sizeof(aoffd), "%s hat sich als Supporter abgemeldet.", spieler); // Befehl um Sup off Duty zu gehen!
  401. format(aoffda, sizeof(aoffda), "%s hat sich als Admin abgemeldet.", spieler); // Befehl um Admin off Duty zu gehen!
  402. if (strcmp(cmdtext, "/aoffduty", true) == 0)
  403. {
  404. if(pInfo[playerid][alevel] == 1) // Sende folgendes mit Admin Stufe 1
  405. {
  406. SendClientMessage(playerid, COLOR_PINK, "|___________Supporter___________|");
  407. SendClientMessage(playerid, COLOR_PINK, "Du hast dich nun Als Supporter angemeldet.");
  408. SendClientMessage(playerid, COLOR_PINK, "Achtung! Missbrauch des befehles wird bestraft!");
  409. SendClientMessageToAll(COLOR_PINK, aoffd); // Sende die Nachricht an alle
  410. SetPlayerColor(playerid, COLOR_WHITE);
  411. return 1;
  412. }
  413. if(pInfo[playerid][alevel] >= 2) // Sende folgendes über admin stufe 2
  414. {
  415. SendClientMessage(playerid, COLOR_PINK, "|___________Admin___________|");
  416. SendClientMessage(playerid, COLOR_PINK, "Du hast dich nun als Admin abgemeldet.");
  417. SendClientMessage(playerid, COLOR_PINK, "Achtung! Du hast nun wieder Normale HP");
  418. SendClientMessageToAll(COLOR_PINK, aoffda); // Sende die Nachricht wieder an alle
  419. SetPlayerColor(playerid, COLOR_WHITE);
  420. return 1;
  421. }
  422. else
  423. { // Sende folgendes wenn er admin lvl 0 ist (Zivilist)
  424. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|______KeinAdmin!______|");
  425. SendClientMessage(playerid, COLOR_GREY, "Du bist kein Admin!");
  426. SendClientMessage(playerid, COLOR_GREY, "Deine Admin Stufe ist 0");
  427. SendClientMessage(playerid, COLOR_GREY, "Und kannst somit keine Admin befehle ausführen!");
  428. }
  429. return 1; // Cmd zu Ende
  430. }
  431.  
  432.  
  433. //--------------makeadmin-----------------------------------
  434. if(strcmp(cmdtext,"/makeadmin", true) == 0)
  435. {
  436. if(pInfo[playerid][alevel] == 6) // Wenn die pInfo vom Spieler level 6 ist
  437. {
  438. new ziel = strval(strget(cmdtext,1)); // Das gleiche wie bei teamid
  439. new level= strval(strget(cmdtext,2)); // level = die Levelzahl
  440. {
  441. if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeadmin [ID] [Fraktion]");
  442. {
  443. if(!strlen(strget(cmdtext,2))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeadmin [ID] [Fraktion]");
  444. {
  445. if(level==0) // wenn er /makeadmin 1 macht
  446. {
  447. GetPlayerName(ziel,gegner,sizeof(gegner));
  448. new save[45];
  449. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  450. pInfo[ziel][alevel] = 0; // Gebe dem ziel das Adminlevel (alevel) 0
  451. dini_IntSet(save,"Adminlevel",0); // Schreibe in seine Datei Adminlevel = 0
  452. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Zivi___________|");
  453. SendClientMessage(playerid, COLOR_GREY, "Du bist nun wieder Zivilist!");
  454. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 0");
  455. if(level==1) // wenn er /makeadmin 1 macht
  456. {
  457. GetPlayerName(ziel,gegner,sizeof(gegner));
  458. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  459. pInfo[ziel][alevel] = 1; // Gebe dem ziel das Adminlevel (alevel) 1
  460. dini_IntSet(save,"Adminlevel",1); // Schreibe in seine Datei Adminlevel = 1
  461. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Supporter___________|");
  462. SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den Supportern gestuft/gekickt.");
  463. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 1");
  464. }
  465. if(level==2) // wenn er /makeadmin 2 macht
  466. {
  467. GetPlayerName(ziel,gegner,sizeof(gegner));
  468. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  469. pInfo[ziel][alevel] = 2; // Gebe dem Ziel das Adminlevel 2
  470. dini_IntSet(save,"Adminlevel",2); // Schreibe in seine Datei Adminlevel 2
  471. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Moderator___________|");
  472. SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den Moderatoren gestuft/gekickt.");
  473. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 2");
  474. }
  475. if(level==3) // wenn er 3 eintippt
  476. {
  477. GetPlayerName(ziel,gegner,sizeof(gegner));
  478. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  479. pInfo[ziel][alevel] = 3; // Gebe dem Ziel das Adminlevel 3
  480. dini_IntSet(save,"Adminlevel",3); //schreibe in seine Datei Adminlevel 3
  481. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________A-Admin___________|");
  482. SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den Azubi Admins gestuft/gekickt.");
  483. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 3");
  484. }
  485. if(level==4) // wenn er 4 eintippt
  486. {
  487. GetPlayerName(ziel,gegner,sizeof(gegner));
  488. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  489. pInfo[ziel][alevel] = 4; // Gebe dem Ziel Adminlevel 4
  490. dini_IntSet(save,"Adminlevel",4); // schreibe in seine Datei Adminlevel 4
  491. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________Admin___________|");
  492. SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den Admin's gestuft/gekickt.");
  493. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 4");
  494. }
  495. if(level==5) // wenn er 5 eintippt
  496. {
  497. GetPlayerName(ziel,gegner,sizeof(gegner));
  498. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  499. pInfo[ziel][alevel] = 5; // Gebe dem Ziel Adminlevel 5
  500. dini_IntSet(save,"Adminlevel",5); // schreibe in seine Datei Adminlevel 5
  501. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|___________FAdmin___________|");
  502. SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den Full-Admins gestuft/gekickt.");
  503. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 5");
  504. }
  505. if(level==6) // wenn er 6 eintippt
  506. {
  507. GetPlayerName(ziel,gegner,sizeof(gegner));
  508. format(save,sizeof(save),"/Spieler/%s.ini",gegner);
  509. pInfo[ziel][alevel] = 6; // Gebe dem Ziel Adminlevel 6
  510. dini_IntSet(save,"Adminlevel",6); // schreibe in seine Datei Adminlevel 6
  511. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|______HAdmin/Scripter______|");
  512. SendClientMessage(playerid, COLOR_GREY, "Du wurdest zu den Head-Admins/Scriptern gestuft/gekickt.");
  513. SendClientMessage(playerid, COLOR_GREY, "Admin Level: 6");
  514. }
  515. else
  516. {
  517. SendClientMessage(playerid, COLOR_LIGHTBLUE, "|______KeinAdmin!______|");
  518. SendClientMessage(playerid, COLOR_GREY, "Du bist kein Admin!");
  519. SendClientMessage(playerid, COLOR_GREY, "Deine Admin Stufe ist 0");
  520. SendClientMessage(playerid, COLOR_GREY, "Und kannst somit keine Admin befehle ausführen!");
  521. }}}}}}
  522. return 1;
  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] == Fahrlehrer) 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,107); 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,50); 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), "/adminban", 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_ORANGE, 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 nich 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. //jail
  589. if(!strcmp(strget(cmdtext,0),"/unjail")) //Hier wird wieder beschrieben das wenn man den /unjail befehl eingibt
  590. {
  591. new Float:x, Float: y, Float:z, name[20], jstring[80]; // definieren der Cords und der namen
  592. GetPlayerName(ziel, name, sizeof name); // Bekomme den Namen des Ziels
  593. format(string, sizeof(string), "%s wurde von %s aus dem Gefängnis entlassen", name, Spielername(playerid)); // Satz bilden
  594. ziel = strval(strget(cmdtext,1)); // /unjail [ziel]
  595. GetPlayerPos(playerid, x, y, z); // Spieler Pos heraus bekommen
  596. {
  597. if(IsPlayerConnected(playerid))// spieler muss online sein
  598. {
  599. if(IsPlayerConnected(ziel)) return SendClientMessage(playerid, COLOR_RED, "Spieler ist nich Online");// ziel muss online sein
  600. {
  601. if(IsPlayerInRangeOfPoint(playerid, 1.0, 0, 0, 0)) return SendClientMessage(playerid, COLOR_RED, "Du bist vor keiner Zelle");
  602. {
  603. SetPlayerPos(ziel,x,y,z); // Setze Spieler auf Kordinaten
  604. SendClientMessageToAll(COLOR_LIGHTBLUE, jstring);
  605. }}}}
  606. return 1;
  607. }
  608.  
  609. //----Makeleader Funktion-------------------
  610. if(!strcmp(strget(cmdtext,0),"/makeleader"))
  611. {
  612. new target = strval(strget(cmdtext,1)), fraktion = strval(strget(cmdtext,2)), saves[32], name[20];
  613. format(saves,sizeof(saves),"Spieler/%s.ini",name);
  614. GetPlayerName(target, name, sizeof(name));
  615. if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeleader [ID] [1-8]");
  616. {
  617. if(!strlen(strget(cmdtext,2))) return SendClientMessage(playerid, COLOR_RED, "Benutzte: /makeleader [ID] [1-8]");
  618. {
  619. if(fraktion == Groove)
  620. {
  621. SetPlayerSkin(target, 288);
  622. SendClientMessage(target, COLOR_WHITE, "Du wurdest zum Leader der Polizei gemacht");
  623. pInfo[target][gLeader] = fraktion;
  624. dini_IntSet(save,"Fraktionsleader",pInfo[target][gLeader]);
  625. }
  626. if(fraktion == Ballas)
  627. {
  628. SetPlayerSkin(target, 275);
  629. SendClientMessage(target, COLOR_WHITE, "Du wurdest zum Ledader der Ärzte ernannt");
  630. pInfo[target][gLeader] = fraktion;
  631. dini_IntSet(save,"Fraktionsleader",pInfo[target][gTeam]);
  632. dini_IntSet(save,"Skin",pInfo[target][skin]);
  633. }
  634. if(fraktion == Fahrlehrer)
  635. {
  636. SetPlayerSkin(target, 163);
  637. SendClientMessage(target, COLOR_WHITE, "Du wurdest zum Leader der Swateinheit ernannt");
  638. pInfo[target][gLeader] = fraktion;
  639. dini_IntSet(save,"Fraktionsleader",pInfo[target][gLeader]);
  640. dini_IntSet(save,"Skin",pInfo[target][skin]);
  641. }}}
  642. return 1;
  643. }
  644.  
  645. if(strcmp(cmdtext, "/waffenkaufen", true) == 0) // wenn /waffenkaufen eingegeben wird
  646. {
  647. ShowPlayerDialog(playerid, WAFFENMENU, DIALOG_STYLE_LIST, "Waffenshop", "M4: 4000$\nDesert_Eagle: 1500$\nAk47: 3500$\nShotgun: 2000$", "kaufen", "schließen");
  648. // Zeige Dialog ( spieler, unser Menu, der Style (http://wiki.sa-mp.com/wiki/Dialog_Styles), der oben stehende Text, dann gebt ihr die erste Zeile ein, die nächste
  649. // Zeile müsst ihr \n eingeben und den Namen dahinter z.B. \nM4, Linker Button, Rechter Button
  650. return 1;
  651. }
  652.  
  653. //--------waffen für ballas------------------
  654. if(strcmp(cmdtext, "/ausruesten", true) == 0) // wenn ( /waffenb eingegeben wird
  655. {
  656. if(pInfo[playerid][gTeam] == Ballas || pInfo[playerid][gLeader] == Ballas) // wenn der Spieler ein Teammitglieder oder Leader der Fraktion Ballas ist
  657. {
  658. GivePlayerWeapon(playerid, 1, 1); // Gib ihm die Waffe mit der ID 15
  659. GivePlayerWeapon(playerid, 24, 50); // Gib ihm die Waffe mit der ID 32 und 150 Munition
  660. GivePlayerWeapon(playerid, 25, 50); // Gib ihm die Waffe mit der ID 28 und 150 Munition
  661. }
  662. return 1; // Cmd zu Ende
  663. }
  664.  
  665. //---------waffen für groove----------------
  666. if (strcmp(cmdtext, "/ausruesten", true) == 0) // wenn ( /waffeng eingegeben wird
  667. {
  668. if(pInfo[playerid][gTeam] == Groove || pInfo[playerid][gLeader] == Groove)// wenn der Spieler ein Teammitglieder oder Leader der Fraktion Groove ist
  669. {
  670. GivePlayerWeapon(playerid, 1, 1); // Gib ihm die Waffe mit der ID 1
  671. GivePlayerWeapon(playerid, 24, 50);// Gib ihm die Waffe mit der ID 32 und 150 Munition
  672. GivePlayerWeapon(playerid, 25, 50); // Gib ihm die Waffe mit der ID 29 und 150 Munition
  673. }
  674. return 1; // Cmd zu Ende
  675. }
  676.  
  677. //---------waffen für Vagos----------------
  678. if (strcmp(cmdtext, "/ausruesten", true) == 0) // wenn ( /waffeng eingegeben wird
  679. {
  680. if(pInfo[playerid][gTeam] == Vagos || pInfo[playerid][gLeader] == Vagos)// wenn der Spieler ein Teammitglieder oder Leader der Fraktion Groove ist
  681. {
  682. GivePlayerWeapon(playerid, 1, 1); // Gib ihm die Waffe mit der ID 1
  683. GivePlayerWeapon(playerid, 24, 50);// Gib ihm die Waffe mit der ID 32 und 150 Munition
  684. GivePlayerWeapon(playerid, 25, 50); // Gib ihm die Waffe mit der ID 29 und 150 Munition
  685. }
  686. return 1; // Cmd zu Ende
  687. }
  688.  
  689. return 0;
  690. }
  691.  
  692. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  693. {
  694. if(pInfo[playerid][autos] == 0)
  695. {
  696. SendClientMessage(playerid, COLOR_RED, " Du hast noch keinen Führerschein! Vorsicht vor der Polizei!");
  697. }
  698. else
  699. {
  700. return 1;
  701. }
  702. return 1;
  703. }
  704.  
  705.  
  706. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  707. {
  708. new money = GetPlayerMoney(playerid); // hier beschreibe ich das Wort "money" soll dafür stehen, das Geld des Spielers herauszubekommen
  709. if(dialogid == WAFFENMENU) // wenn der Spieler den Dialog WAFFENMENU aufruft
  710. {
  711. if(response)
  712. {
  713. if(listitem == 0) // Die Erste Zeile
  714. {
  715. if(money <= 1500) // wenn sein Geld unter 1500 ist,
  716. {
  717. SendClientMessage(playerid, COLOR_RED, "Du hast nicht genug Geld"); // Sende ihm eine Nachricht, dass er zu wenig Geld hat
  718. return 1;
  719. }
  720. GivePlayerWeapon(playerid, 24, 50); // Gebe ihm die Waffe(spieler, Waffe, Munition
  721. gebespielergeld(playerid, -1500); // Ziehe ihm 1500 $ ab
  722. SendClientMessage(playerid, COLOR_LIGHTGREEN, "Du hast eine Deagle gekauft"); // Sende eine Nachricht, was er getan hat
  723. }
  724. if(listitem == 1) // Die zweite Zeile
  725. {
  726. if(money <= 3500) // wenn sein Geld unter 3500 ist,
  727. {
  728. SendClientMessage(playerid, COLOR_RED, "Du hast nicht genug Geld"); // Sende ihm eine Nachricht, dass er zu wenig Geld hat
  729. return 1;
  730. }
  731. GivePlayerWeapon(playerid, 25, 50); // Gebe ihm die Waffe(spieler, Waffe, Munition
  732. gebespielergeld(playerid, -2000); // Ziehe ihm 2000 $ ab
  733. SendClientMessage(playerid, COLOR_LIGHTGREEN, "Du hast eine Shotgun gekauft"); // Sende eine Nachricht, was er getan hat
  734. }}}
  735. return 1;
  736. }
  737.  
  738. public OnPlayerExitVehicle(playerid, vehicleid)
  739. {
  740. return 1;
  741. }
  742.  
  743. public OnPlayerStateChange(playerid, newstate, oldstate)
  744. {
  745. return 1;
  746. }
  747.  
  748. public OnPlayerEnterCheckpoint(playerid)
  749. {
  750. return 1;
  751. }
  752.  
  753. public OnPlayerLeaveCheckpoint(playerid)
  754. {
  755. return 1;
  756. }
  757.  
  758. public OnPlayerEnterRaceCheckpoint(playerid)
  759. {
  760. return 1;
  761. }
  762.  
  763. public OnPlayerLeaveRaceCheckpoint(playerid)
  764. {
  765. return 1;
  766. }
  767.  
  768. public OnRconCommand(cmd[])
  769. {
  770. return 1;
  771. }
  772.  
  773. public OnObjectMoved(objectid)
  774. {
  775. return 1;
  776. }
  777.  
  778. public OnPlayerObjectMoved(playerid, objectid)
  779. {
  780. return 1;
  781. }
  782.  
  783. public OnPlayerPickUpPickup(playerid, pickupid) // Pickup Objektlisten findet ihr hier http://wiki.sa-mp.com/wiki/Pickup_help
  784. {
  785. if(pickupid == pickuptest) // Bedeutet wenn(das pickup == namens pickuptest aufgehoben wird)
  786. {
  787. SendClientMessage(playerid, COLOR_GREEN, "Hello World"); // Sendet einen Text an ( Spieler, mit der Farbe Grün, "und den Text Hello World");
  788. }
  789. if(pickupid == pickupeingangtest)
  790. {
  791. 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.
  792. SetPlayerPos(playerid, 235.508994,1189.169897,1080.339966); // 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.
  793. SetPlayerFacingAngle( playerid, 360.0 ); // Setzt die Schaurichtung des Spielers auf den Angel wert.
  794. GameTextForPlayer(playerid, "~w~Text1~n~~r~text2", 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
  795. }
  796. if(pickupid == jailpickup)
  797. {
  798. GameTextForPlayer(playerid, "~w~/jail [Zeit][Kosten]", 4000, 3);
  799. }
  800. return 1;
  801. }
  802.  
  803. public OnPlayerSelectedMenuRow(playerid, row)
  804. {
  805. return 1;
  806. }
  807.  
  808. public OnPlayerExitedMenu(playerid)
  809. {
  810. return 1;
  811. }
  812.  
  813. public gesundheit()
  814. {
  815. for(new i=0 ; i <GetMaxPlayers() ; i++) // für( neue definition 1, 1 ist = 0, i ist kleiner als die Online spielenden, i++)
  816. {
  817. new Float:health; // einer neuer Float: health
  818. GetPlayerHealth(i,health); // bekomme die Gesundheit vom Spieler( i, health) hier kommt unser i in den Einsatz, i bedeutet jeder Spieler nach unserer Definition
  819. SetPlayerHealth(i, health-0); // Wenn unser Timer nun Nach 5 Minuten wieder anfängt zu ticken, ziehe dem Spieler 1 hp ab.
  820. }
  821. return 1;
  822. }
  823.  
  824. public hartz4()
  825. {
  826. for(new i=0 ; i <GetMaxPlayers() ; i++) // für( neue definition 1, 1 ist = 0, i ist kleiner als die Online spielenden, i++)
  827. {
  828. //#define Groove 1
  829. //#define Ballas 2
  830. //#define Fahrlehrer 3
  831. if(pInfo[i][gTeam] == Groove || pInfo[i][gLeader] == Groove) // wenn jemand im Team Groove ist
  832. {
  833. gebespielergeld(i, 2400);
  834. GameTextForPlayer(i, "~w~Pay~g~day", 3000, 2); // zeige einen Gametext "Payday" ~w~ bedeutet die Farbe weiß, ~g~ die farbe grün ;)
  835. }
  836. if(pInfo[i][gTeam] == Ballas || pInfo[i][gLeader] == Ballas)
  837. {
  838. gebespielergeld(i, 2400);
  839. GameTextForPlayer(i, "~w~Pay~g~day", 3000, 2);
  840. }
  841. if(pInfo[i][gTeam] == Fahrlehrer || pInfo[i][gLeader] == Fahrlehrer)
  842. {
  843. gebespielergeld(i, 2400);
  844. GameTextForPlayer(i, "~w~Pay~g~day", 3000, 2);
  845. }}
  846. return 1;
  847. }
  848.  
  849. stock gebespielergeld(playerid,summe) // erstelle ein stock
  850. {
  851. pInfo[playerid][pmoney] = pInfo[playerid][pmoney] +summe; // das Geld = geld + die summe
  852. dini_IntSet(Datei(playerid),"Geld",pInfo[playerid][pmoney]); //schreibe in seine Datei das neue Geld
  853. return 1;
  854. }
  855.  
  856. stock Datei(playerid)
  857. {
  858. new Save[128];
  859. format(Save, sizeof(Save), "/Spieler/%s.ini", Spielername(playerid));
  860. return Save;
  861. }
  862.  
  863. stock Spielername(playerid)
  864. {
  865. new name[MAX_PLAYER_NAME];
  866. GetPlayerName(playerid, name, sizeof(name));
  867. return name;
  868. }
  869.  
  870. stock strget(strx[], pos, search = ' ') {
  871. new arg, ret[128], idxx;
  872. for (new i = 0; i < strlen(strx); i++) {
  873. if(strx[i] == search || i == strlen(strx) || strx[i + 1] == 10) {
  874. arg++;
  875. if (arg == pos + 1){
  876. ret[i-idxx] = EOS;
  877. return ret;
  878. } else if (arg == pos)
  879. idxx= i+1;
  880. }
  881. else if (arg == pos)
  882. ret[i - idxx] = strx[i];
  883. }
  884. return ret;
  885. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement