Advertisement
Guest User

Untitled

a guest
Dec 20th, 2011
334
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 28.23 KB | None | 0 0
  1. /*.: Dieses Reallife Script wurde von Spikes geschrieben.
  2. Rechte für dieses Script bekommt Spikes!(Scripting)
  3.  
  4. other thanks to:
  5. -NekoStream(BSN Map)
  6.  
  7. Copyright © by Spikes 2011
  8.  
  9. :.
  10. _________________________________________________________________________________________________________________________________________________________________________________________________________
  11.  
  12. Changelog:
  13.  
  14. Version 1.0:
  15. -Register-/Login System
  16. -Administartor System
  17. -Server Narichten
  18. -Echtzeit Uhr
  19. -Befehle
  20. -Administrator Befehle
  21. -Premium System
  22. -Verwarnungs System
  23. -Mute System
  24. -Leader System
  25. -LSPD eingefügt
  26. -Help Command
  27. */
  28. #include <a_samp>
  29. #include <dini>
  30. #include <sscanf>
  31.  
  32. // Defines
  33. #define GELB 0xFFFF00FF
  34. #define BLAU 0x000FFFFF
  35. #define ROT 0xFF2800FF
  36. #define WEIS 0xFEFEFEFF
  37. #define GRÜN 0x00FF00FF
  38.  
  39. #define DIALOG_REGISTER 1
  40. #define DIALOG_LOGIN 2
  41. #define DIALOG_HELPADMIN 3
  42. #define DIALOG_HELPKADMIN 4
  43. #define DIALOG_PREMIUM 5
  44.  
  45. #define NARICHT SendClientMessage
  46. #define AFEHLER "Du bist kein Administrator, oder besitzt nicht das passende Admin Level!"
  47.  
  48. #define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
  49.  
  50.  
  51. // // // // // // // // // //
  52. #define GMVERSION "1.0" //
  53. #define FURL "www.DeineForumURL"//
  54. #define SNAME "ServerName" //
  55. // // // // // // // // // //
  56.  
  57. // Fraktionen
  58. #define Fraktion0 "Zivilist"
  59. #define Fraktion1 "LSPD"
  60. #define Fraktion2 "MS13"
  61.  
  62.  
  63.  
  64. //New's
  65.  
  66. new LSPDCARS[6];
  67. new FBICARS[2];
  68. new MS13CARS[2];
  69.  
  70. new muted[MAX_PLAYERS];
  71. new AFK[MAX_PLAYERS];
  72.  
  73. // Forwars
  74. forward clock();
  75. forward servermessage();
  76.  
  77. main()
  78. {
  79. print("\n----------------------------------");
  80. print(" Anfänger Selfmade by Spikes<3");
  81. print("----------------------------------\n");
  82. }
  83.  
  84. enum Spieler
  85. {
  86. Admin,
  87. Geloggt,
  88. Fraktion,
  89. Banned,
  90. Level,
  91. Skin,
  92. Team,
  93. Leader,
  94. Member,
  95. Verwarnungen,
  96. PPunkte
  97. };
  98.  
  99. new SpielerInfo[MAX_PLAYERS][Spieler];
  100.  
  101. public clock()
  102. {
  103. new Text:Clock;
  104. new hour,minute,second;
  105. new string[10];
  106. gettime(hour,minute,second);
  107. format(string, sizeof string, "%s%d:%s%d:%s%d", (hour < 10) ? ("0") : (""), hour, (minute < 10) ? ("0") : (""), minute, (second < 10) ? ("0") : (""), second);
  108. TextDrawHideForAll(Clock);
  109. Clock = TextDrawCreate(542.0, 24.0, string);
  110. TextDrawLetterSize(Clock, 0.6, 1.8);
  111. TextDrawFont(Clock, 3);
  112. TextDrawSetOutline(Clock, 2);
  113. TextDrawShowForAll(Clock);
  114. SetTimer("clock",1000,0);
  115. return 1;
  116. }
  117.  
  118. public servermessage()
  119. {
  120. new string[128];
  121. format(string,sizeof(string),"Besuche unser Forum: %s. Dort kannst du dich für Fraktion bewerben.",FURL);
  122. SendClientMessageToAll(GRÜN,string);
  123. SendClientMessageToAll(GRÜN,"Im Forum kannst du dich auch beschweren, über einen Spieler, der dich beleidigt hat");
  124. SendClientMessageToAll(GRÜN,"oder sinnloses Deathmatch gemacht hat!");
  125. return 1;
  126. }
  127.  
  128. public OnGameModeInit()
  129. {
  130. //Cars
  131. LSPDCARS[0] = AddStaticVehicle(596,1535.6764,-1678.5449,13.0999,0.3841,103,1); // LSPD Auto
  132. LSPDCARS[1] = AddStaticVehicle(596,1535.6096,-1668.5936,13.0570,0.3842,103,1); // LSPD Auto
  133. LSPDCARS[2] = AddStaticVehicle(596,1544.7377,-1684.3108,5.5676,91.0037,103,1); // LSPD Auto
  134. LSPDCARS[3] = AddStaticVehicle(596,1544.6064,-1676.0063,5.6114,90.6325,103,1); // LSPD Auto
  135. LSPDCARS[4] = AddStaticVehicle(596,1544.2965,-1668.0319,5.6118,90.4358,103,1); // LSPD Auto
  136. LSPDCARS[5] = AddStaticVehicle(599,1545.3058,-1658.8204,6.1045,91.0399,103,1); // LSPD Auto
  137.  
  138. //Pickups
  139. AddStaticPickup(1239,23,1552.8235,-1675.7645,16.1953,-1);
  140. AddStaticPickup(1239,23,247.1721,62.3580,1003.6406,-1);
  141.  
  142. //
  143. SpeicherAlleSpieler();
  144. LimitGlobalChatRadius(40);
  145. UsePlayerPedAnims();
  146. SetTimer("snaricht",300000,1);
  147. SetGameModeText("Selfmade by Spikes<3"); // Gamemode Text
  148. SendRconCommand("mapname Los Santos"); // Mapname, hier: Los Santos
  149. AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
  150.  
  151. //Maps
  152. //Bsn(by NekoStream):
  153. CreateObject(982, 1206.6419677734, -891.60028076172, 42.725288391113, 359.5, 0, 7.7449951171875);
  154. CreateObject(982, 1184.9440917969, -895.13653564453, 42.875297546387, 359.74462890625, 0, 7.2449645996094);
  155. CreateObject(984, 1189.6428222656, -881.48333740234, 42.731689453125, 359.25, 0, 278.75);
  156. CreateObject(983, 1201.7987060547, -879.49151611328, 42.657230377197, 0, 0, 280);
  157. CreateObject(1215, 1198.62890625, -880.21307373047, 42.563926696777, 0, 0, 0);
  158. CreateObject(1215, 1195.9830322266, -880.65093994141, 42.592090606689, 0, 0, 0);
  159. CreateObject(16281, 1197.2642822266, -880.24688720703, 44.837245941162, 0, 0, 189.5);
  160. CreateObject(2643, 1197.2630615234, -880.07501220703, 46.378894805908, 0, 0, 190);
  161. CreateObject(16281, 1197.263671875, -880.24609375, 45.687297821045, 0, 0, 189.49768066406);
  162. CreateObject(2642, 1200.2579345703, -879.693359375, 42.911933898926, 0, 0, 190);
  163. CreateObject(2642, 1194.2821044922, -880.70867919922, 42.9755859375, 0, 0, 188);
  164. CreateObject(1522, 1198.3050537109, -892.46600341797, 42.13346862793, 0, 0, 7);
  165. CreateObject(1432, 1194.4990234375, -885.20208740234, 42.046173095703, 0, 0, 30);
  166. CreateObject(1432, 1191.4255371094, -883.25665283203, 42.079345703125, 0, 0, 0);
  167. CreateObject(1432, 1191.8983154297, -888.22607421875, 42.079002380371, 0, 0, 0);
  168. CreateObject(2233, 1199.8813476563, -892.22436523438, 42.191547393799, 0, 0, 187);
  169. CreateObject(2233, 1197.5123291016, -892.63391113281, 42.172637939453, 0, 0, 187.24780273438);
  170. CreateObject(1432, 1188.9393310547, -886.12683105469, 42.108695983887, 0, 0, 85.75);
  171. CreateObject(1432, 1186.5745849609, -888.77947998047, 42.138626098633, 0, 0, 0);
  172. CreateObject(1432, 1185.8439941406, -884.13781738281, 42.138816833496, 0, 0, 0);
  173. CreateObject(2934, 1197.8187255859, -883.97918701172, 40.566478729248, 0, 0.5, 8.25);
  174. CreateObject(2934, 1198.5849609375, -889.19018554688, 40.591480255127, 359.25003051758, 0.49990844726563, 8.2518005371094);
  175. CreateObject(738, 1184.0400390625, -882.99859619141, 42.28161239624, 0, 0, 7);
  176. CreateObject(738, 1185.04296875, -890.50646972656, 42.331615447998, 0, 0, 7.248291015625);
  177. CreateObject(738, 1205.4498291016, -887.52429199219, 42.106601715088, 0, 0, 9.7454833984375);
  178. CreateObject(738, 1204.3903808594, -879.68218994141, 42.05659866333, 0, 0, 9.744873046875);
  179. CreateObject(2253, 1200.1912841797, -888.72045898438, 42.368240356445, 0, 0, 9);
  180. CreateObject(2253, 1196.9080810547, -889.17395019531, 42.401412963867, 0, 0, 8.997802734375);
  181. CreateObject(2253, 1200.3192138672, -889.58746337891, 42.368412017822, 0, 0, 8.997802734375);
  182. CreateObject(2253, 1200.4592285156, -890.46691894531, 42.368480682373, 0, 0, 8.997802734375);
  183. CreateObject(2253, 1200.6008300781, -891.42681884766, 42.368671417236, 0, 0, 8.997802734375);
  184. CreateObject(2253, 1197.0152587891, -889.97570800781, 42.401176452637, 0, 0, 8.997802734375);
  185. CreateObject(2253, 1197.1470947266, -890.87921142578, 42.400367736816, 0, 0, 8.997802734375);
  186. CreateObject(2253, 1197.2746582031, -891.79486083984, 42.399871826172, 0, 0, 8.997802734375);
  187. CreateObject(2898, 1202.8890380859, -884.00360107422, 41.983997344971, 0, 0, 8.75);
  188. CreateObject(2510, 1203.7810058594, -881.69122314453, 42.393859863281, 0, 0, 330.75);
  189. CreateObject(2469, 1203.9715576172, -882.86761474609, 42.01392364502, 0, 0, 280);
  190. CreateObject(2469, 1202.8901367188, -882.21429443359, 42.01392364502, 0, 0, 329.99755859375);
  191. CreateObject(1610, 1204.4206542969, -885.83526611328, 42.01392364502, 0, 0, 0);
  192. CreateObject(1611, 1203.9971923828, -886.41937255859, 42.01392364502, 0, 0, 138);
  193. CreateObject(1946, 1204.2210693359, -885.03546142578, 42.2197265625, 0, 0, 0);
  194. CreateObject(3496, 1205.1793212891, -884.02673339844, 41.738906860352, 0, 0, 99.5);
  195. CreateObject(1233, 1205.0675048828, -878.89440917969, 43.49031829834, 0, 0, 100);
  196. return 1;
  197. }
  198.  
  199. public OnGameModeExit()
  200. {
  201. SpeicherAlleSpieler();
  202. return 1;
  203. }
  204.  
  205. public OnPlayerRequestClass(playerid, classid)
  206. {
  207. SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
  208. SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
  209. SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
  210. return 1;
  211. }
  212.  
  213. public OnPlayerConnect(playerid)
  214. {
  215. SpielerInfo[playerid][Geloggt] = 1;
  216. if(SpielerInfo[playerid][Banned] == 1)
  217. {
  218. NARICHT(playerid,ROT,"");
  219. NARICHT(playerid,ROT,"");
  220. NARICHT(playerid,ROT," Du bist von dem Server gebannt. Melde dich im Fourm, falls dies zu unrecht passiert ist! Am besten ist ein Screen(F8).");
  221. NARICHT(playerid,ROT,"");
  222. Kick(playerid);
  223. }
  224. if(SpielerInfo[playerid][Admin] > 6)
  225. {
  226. NARICHT(playerid,ROT,"");
  227. NARICHT(playerid,ROT,"");
  228. NARICHT(playerid,ROT," Maximales Adminlevel ist 6!");
  229. NARICHT(playerid,ROT,"");
  230. Kick(playerid);
  231. }
  232. if(SpielerInfo[playerid][Verwarnungen] >= 5)
  233. {
  234. NARICHT(playerid,ROT,"");
  235. NARICHT(playerid,ROT,"");
  236. NARICHT(playerid,ROT," Du hast mehr als 5 Verwarnungen, deshalb wirst du von diesem Server verbannt.");
  237. NARICHT(playerid,ROT," Bei unrecht melde dies mit einem Screen (F8) im Forum!");
  238. Ban(playerid);
  239. SpielerInfo[playerid][Banned] = 1;
  240. }
  241. new User[64];
  242. new sname[MAX_PLAYER_NAME];
  243. GetPlayerName(playerid,sname,sizeof(sname));
  244. format(User,sizeof(User),"/Accounts/%s.ini",sname);
  245. if(dini_Exists(User))
  246. {
  247. NARICHT(playerid,BLAU,"Herzlich Willkommen.");
  248. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunde, logge dich bitte ein:","Login","Abbrechen");
  249. return 1;
  250. }
  251. else
  252. {
  253. NARICHT(playerid,BLAU,"Herzlich Willkommen.");
  254. ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Bitte wähle ein Passwort, um hier spielen zu können:","Registrieren","Abbrechen");
  255. return 1;
  256. }
  257. }
  258.  
  259. public OnPlayerDisconnect(playerid, reason)
  260. {
  261. SpeicherAccount(playerid);
  262. SpielerInfo[playerid][Geloggt] = 0;
  263. return 1;
  264. }
  265.  
  266. public OnPlayerSpawn(playerid)
  267. {
  268. //
  269. clock();
  270. //
  271. if(SpielerInfo[playerid][Fraktion] == 0)
  272. {
  273. SetPlayerPos(playerid,437.1229,-1796.8015,5.5469);
  274. }
  275. else if(SpielerInfo[playerid][Fraktion] == 1)
  276. {
  277. SetPlayerPos(playerid,238.3595,79.4003,1005.0391);
  278. }
  279. else if(SpielerInfo[playerid][Fraktion] == 2)
  280. {
  281. SetPlayerPos(playerid,111,111,111);
  282. }
  283. else if(SpielerInfo[playerid][Fraktion] == 3)
  284. {
  285. SetPlayerPos(playerid,111,111,111);
  286. }
  287. return 1;
  288. }
  289.  
  290. public OnPlayerDeath(playerid, killerid, reason)
  291. {
  292. return 1;
  293. }
  294.  
  295. public OnVehicleSpawn(vehicleid)
  296. {
  297. return 1;
  298. }
  299.  
  300. public OnVehicleDeath(vehicleid, killerid)
  301. {
  302. return 1;
  303. }
  304.  
  305. public OnPlayerText(playerid, text[])
  306. {
  307. if(muted[playerid] == 1)
  308. {
  309. NARICHT(playerid,ROT,"Du bist gemutet, du kannst nicht reden!");
  310. return 1;
  311. }
  312. return 1;
  313. }
  314.  
  315. public OnPlayerCommandText(playerid, cmdtext[])
  316. {
  317. //dcmd
  318. dcmd(kick,4,cmdtext);
  319. dcmd(ban,3,cmdtext);
  320. dcmd(warn,4,cmdtext);
  321. dcmd(mute,4,cmdtext);
  322. dcmd(makeleader,10,cmdtext);
  323. dcmd(willkommen,10,cmdtext);
  324. dcmd(leaderentzug,12,cmdtext);
  325. dcmd(makeadmin,9,cmdtext);
  326. dcmd(spawn,5,cmdtext);
  327. dcmd(coins,5,cmdtext);
  328. //
  329. if(strcmp(cmdtext,"/gmx",true)==0)
  330. {
  331. if(SpielerInfo[playerid][Admin] >= 5)
  332. {
  333. SpeicherAlleSpieler();
  334. SendRconCommand("gmx");
  335. }
  336. return 1;
  337. }
  338. if(strcmp(cmdtext, "/premium", true) == 0)
  339. {
  340. if(SpielerInfo[playerid][PPunkte] > 0)
  341. {
  342. ShowPlayerDialog(playerid, DIALOG_PREMIUM, DIALOG_STYLE_LIST, "Premium", "+ 100.000,00$\n+ 1 Level", "Weiter", "Abbrechen");
  343. return 1;
  344. }
  345. else NARICHT(playerid,WEIS,"Du hast keine Premium Punkte!");
  346. return 1;
  347. }
  348. if(strcmp(cmdtext,"/leben",true)==0)
  349. {
  350. if(SpielerInfo[playerid][Admin] >= 5)
  351. {
  352. new Float:Leben;
  353. GetPlayerHealth(playerid,Leben);
  354. SetPlayerHealth(playerid,Leben+25);
  355. }
  356. return 1;
  357. }
  358. if(strcmp(cmdtext,"/info",true)==0)
  359. {
  360. new string[256];
  361. format(string,sizeof(string),"Willkommen auf %s. Derzeit läuft auf unserem Server die Version %s. Forum URL: %s",SNAME,GMVERSION,FURL);
  362. NARICHT(playerid,WEIS,string);
  363. return 1;
  364. }
  365. if(strcmp(cmdtext,"/help",true)==0)
  366. {
  367. if(SpielerInfo[playerid][Admin] >=1)
  368. {
  369. ShowPlayerDialog(playerid,DIALOG_HELPADMIN,DIALOG_STYLE_MSGBOX,"Hilfe","/leben /gmx /willkommen /leaderentzug\n/spawn /ban /kick /mute\n/makeleader /makeadmin /warn /coins\n","Ok","");
  370. }
  371. else if(SpielerInfo[playerid][Admin] == 0)
  372. {
  373. ShowPlayerDialog(playerid,DIALOG_HELPKADMIN,DIALOG_STYLE_MSGBOX,"Hilfe","/info /afk /back","Ok","");
  374. }
  375. return 1;
  376. }
  377. if(strcmp(cmdtext,"/afk",true)==0)
  378. {
  379. if(AFK[playerid]==1) return NARICHT(playerid,WEIS,"Du bist bereits AFK!");
  380. if(AFK[playerid]==0)
  381. {
  382. new mess[128],sname[MAX_PLAYER_NAME];
  383. GetPlayerName(playerid,sname,sizeof(sname));
  384. format(mess,sizeof(mess),"* %s ist nun Abwesend.",sname);
  385. SendClientMessageToAll(GELB,mess);
  386. TogglePlayerControllable(playerid,0);
  387. GameTextForPlayer(playerid, "~r~ AFK! Nutze /back um in den~n~normalen Zustand zu kommen.", 5000, 3);
  388. AFK[playerid] = 1;
  389. return 1;
  390. }
  391. return 1;
  392. }
  393. if(strcmp(cmdtext,"/back",true)==0)
  394. {
  395. if(AFK[playerid]==0) return NARICHT(playerid,WEIS,"Du bist nicht AFK!");
  396. if(AFK[playerid]==1)
  397. {
  398. new mess[128],sname[MAX_PLAYER_NAME];
  399. GetPlayerName(playerid,sname,sizeof(sname));
  400. format(mess,sizeof(mess),"* %s ist nun wieder Anwesend.",sname);
  401. SendClientMessageToAll(GELB,mess);
  402. TogglePlayerControllable(playerid,0);
  403. GameTextForPlayer(playerid, "~r~ Willkommen zurück", 5000, 3);
  404. AFK[playerid] = 0;
  405. return 1;
  406. }
  407. }
  408. if(strcmp(cmdtext,"/kickall",true)==0)
  409. {
  410. if(SpielerInfo[playerid][Admin] == 6)
  411. for(new i=0;i<MAX_PLAYERS;i++)
  412. {
  413. if(IsPlayerConnected(i))
  414. {
  415. Kick(i);
  416. }
  417. }
  418. else NARICHT(playerid,ROT,AFEHLER);
  419. return 1;
  420. }
  421. return 0;
  422. }
  423.  
  424. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  425. {
  426. return 1;
  427. }
  428.  
  429. public OnPlayerExitVehicle(playerid, vehicleid)
  430. {
  431. return 1;
  432. }
  433.  
  434. public OnPlayerStateChange(playerid, newstate, oldstate)
  435. {
  436. return 1;
  437. }
  438.  
  439. public OnPlayerEnterCheckpoint(playerid)
  440. {
  441. return 1;
  442. }
  443.  
  444. public OnPlayerLeaveCheckpoint(playerid)
  445. {
  446. return 1;
  447. }
  448.  
  449. public OnPlayerEnterRaceCheckpoint(playerid)
  450. {
  451. return 1;
  452. }
  453.  
  454. public OnPlayerLeaveRaceCheckpoint(playerid)
  455. {
  456. return 1;
  457. }
  458.  
  459. public OnRconCommand(cmd[])
  460. {
  461. return 1;
  462. }
  463.  
  464. public OnPlayerRequestSpawn(playerid)
  465. {
  466. return 1;
  467. }
  468.  
  469. public OnObjectMoved(objectid)
  470. {
  471. return 1;
  472. }
  473.  
  474. public OnPlayerObjectMoved(playerid, objectid)
  475. {
  476. return 1;
  477. }
  478.  
  479. public OnPlayerPickUpPickup(playerid, pickupid)
  480. {
  481. return 1;
  482. }
  483.  
  484. public OnVehicleMod(playerid, vehicleid, componentid)
  485. {
  486. return 1;
  487. }
  488.  
  489. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  490. {
  491. return 1;
  492. }
  493.  
  494. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  495. {
  496. return 1;
  497. }
  498.  
  499. public OnPlayerSelectedMenuRow(playerid, row)
  500. {
  501. return 1;
  502. }
  503.  
  504. public OnPlayerExitedMenu(playerid)
  505. {
  506. return 1;
  507. }
  508.  
  509. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  510. {
  511. return 1;
  512. }
  513.  
  514. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  515. {
  516. return 1;
  517. }
  518.  
  519. public OnRconLoginAttempt(ip[], password[], success)
  520. {
  521. return 1;
  522. }
  523.  
  524. public OnPlayerUpdate(playerid)
  525. {
  526. return 1;
  527. }
  528.  
  529. public OnPlayerStreamIn(playerid, forplayerid)
  530. {
  531. return 1;
  532. }
  533.  
  534. public OnPlayerStreamOut(playerid, forplayerid)
  535. {
  536. return 1;
  537. }
  538.  
  539. public OnVehicleStreamIn(vehicleid, forplayerid)
  540. {
  541. return 1;
  542. }
  543.  
  544. public OnVehicleStreamOut(vehicleid, forplayerid)
  545. {
  546. return 1;
  547. }
  548. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  549. {
  550. if(dialogid == DIALOG_PREMIUM)
  551. {
  552. if(response == 0)
  553. {
  554. SendClientMessage(playerid,WEIS,"Premiumvergabe abgebrochen.");
  555. return 1;
  556. }
  557. if(response == 1)
  558. {
  559. if(listitem == 0)
  560. {
  561. GivePlayerMoney(playerid, 100000);
  562. NARICHT(playerid,WEIS,"Du hast dir 100.000,00$ als Premium Feature ausgesucht.");
  563. SpielerInfo[playerid][PPunkte] --;
  564. return 1;
  565. }
  566. if(listitem == 1)
  567. {
  568. SendClientMessage(playerid,WEIS,"Du hast bist nun 1 Level höher.");
  569. SpielerInfo[playerid][PPunkte] --;
  570. SetPlayerScore(playerid, GetPlayerScore(playerid)+1);
  571. return 1;
  572. }
  573. }
  574. }
  575. if(dialogid == DIALOG_LOGIN)
  576. {
  577. if(response == 0)
  578. {
  579. NARICHT(playerid,BLAU,"Abgeborchen. Du wurdest gekickt.");
  580. Kick(playerid);
  581. return 1;
  582. }
  583. if(response == 1)
  584. {
  585. Login(playerid,inputtext);
  586. return 1;
  587. }
  588. }
  589. if(dialogid == DIALOG_REGISTER)
  590. {
  591. if(response == 0)
  592. {
  593. NARICHT(playerid,BLAU,"Du hast den Vorgang abgebrochen");
  594. Kick(playerid);
  595. return 1;
  596. }
  597. if(response == 1)
  598. {
  599. if(!strlen(inputtext))
  600. {
  601. NARICHT(playerid,BLAU,"Bitte gebe ein Passwort in das Kästchen ein:");
  602. ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Bitte wähle ein Passwort, um hier spielen zu können:","Registrieren","Abbrechen");
  603. return 1;
  604. }
  605. Register(playerid,inputtext);
  606. return 1;
  607. }
  608. }
  609. return 1;
  610. }
  611.  
  612. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  613. {
  614. return 1;
  615. }
  616. // DCMD
  617. dcmd_kick(playerid,params[])
  618. {
  619. new pID, string[64];
  620. if(sscanf(params,"uz",pID,string)) return NARICHT(playerid,WEIS,"Benutze: /kick [playerid] [Grund]");
  621. if(!IsPlayerConnected(playerid)) return NARICHT(playerid,WEIS,"Der Spieler kann nicht gefunden werden!");
  622. if(SpielerInfo[playerid][Admin] >= 5)
  623. {
  624. new SpielerName[MAX_PLAYER_NAME], string2[64];
  625. GetPlayerName(pID,SpielerName,sizeof(SpielerName));
  626. format(string2,sizeof(string2),"AdmCmd: %s wurde vom Server gekickt! Grund: %s",SpielerName,string);
  627. SendClientMessageToAll(ROT,string2);
  628. Kick(pID);
  629. return 1;
  630. } else NARICHT(playerid,ROT,AFEHLER);
  631. return 1;
  632. }
  633.  
  634. dcmd_ban(playerid,params[])
  635. {
  636. new pID, grund[64];
  637. if(sscanf(params,"uz",pID,grund)) return NARICHT(playerid,WEIS,"Benutze: /ban [playerid] [Grund]");
  638. if(!IsPlayerConnected(playerid)) return NARICHT(playerid,WEIS,"Der Spieler kann nicht gefunden werden!");
  639. if(SpielerInfo[playerid][Admin] >= 5)
  640. {
  641. new SpielerName[MAX_PLAYER_NAME], string2[64];
  642. GetPlayerName(pID,SpielerName,sizeof(SpielerName));
  643. format(string2,sizeof(string2),"AdmCmd: %s wurde vom Server vebannt! Grund: %s",SpielerName,grund);
  644. SendClientMessageToAll(ROT,string2);
  645. SpielerInfo[playerid][Banned] = 1;
  646. Ban(pID);
  647. return 1;
  648. } else NARICHT(playerid,ROT,AFEHLER);
  649. return 1;
  650. }
  651.  
  652. dcmd_warn(playerid,params[])
  653. {
  654. new aname[MAX_PLAYER_NAME],string[64],pID,warns,grund[64];
  655. if(sscanf(params,"udz",pID,warns,grund))return NARICHT(playerid,WEIS,"Benutze: /warn [playerid] [anzahl der warns] [grund]");
  656. if(!IsPlayerConnected(pID)) return NARICHT(playerid,WEIS,"Dieser Spieler ist nicht mit dem Server verbunden");
  657. if(SpielerInfo[playerid][Admin] >= 1)
  658. {
  659. GetPlayerName(playerid,aname,sizeof(aname));
  660. format(string,sizeof(string),"AdmCmd: Du wurdest von %s mit %d verwarnt. Grund: %s",aname,warns,grund);
  661. NARICHT(pID,ROT,string);
  662. SpielerInfo[pID][Verwarnungen] = warns;
  663. return 1;
  664. } else NARICHT(playerid,ROT,AFEHLER);
  665. return 1;
  666. }
  667.  
  668. dcmd_mute(playerid,params[])
  669. {
  670. new pID, string[64],grund[64], name[MAX_PLAYER_NAME];
  671. if(!IsPlayerConnected(pID)) return NARICHT(playerid,WEIS,"Dieser Spieler ist nicht mit dem Server verbunden");
  672. if(sscanf(params,"uz",pID,grund)) return NARICHT(playerid,WEIS,"Benutze: /mute [playerid] [Grund]");
  673. if(SpielerInfo[playerid][Admin] >= 1)
  674. {
  675. if(muted[pID] == 0)
  676. {
  677. GetPlayerName(playerid,name,sizeof(name));
  678. format(string,sizeof(string),"AdmCmd: Du wurdest von %s gemuted! Grund: %s",name,grund);
  679. NARICHT(pID,ROT,string);
  680. muted[pID] = 1;
  681. return 1;
  682. }
  683. else if(muted[pID] == 1)
  684. {
  685. new fname[MAX_PLAYER_NAME];
  686. GetPlayerName(playerid,fname,sizeof(fname));
  687. format(string,sizeof(string),"AdmCmd: Du wurdest von %s entmuted!",fname);
  688. NARICHT(pID,ROT,string);
  689. muted[pID] = 0;
  690. return 1;
  691. }
  692. } else NARICHT(playerid,ROT,AFEHLER);
  693. return 1;
  694. }
  695.  
  696. dcmd_makeleader(playerid,params[])
  697. {
  698. new aname[MAX_PLAYER_NAME],sname[MAX_PLAYER_NAME],string[64],string2[64],pID,fid;
  699. if(!IsPlayerConnected(pID)) return NARICHT(playerid,WEIS,"Dieser Spieler ist nicht mit dem Server verbunden");
  700. if(sscanf(params,"ud",pID,fid)) return NARICHT(playerid,WEIS,"Benutze: /makeleader [playerid] [Fraktionszahl]");
  701. if(SpielerInfo[playerid][Admin] >= 5)
  702. {
  703. GetPlayerName(playerid,sname,sizeof(sname));
  704. GetPlayerName(playerid,aname,sizeof(aname));
  705. format(string,sizeof(string),"AdmCmd: Du wurdest von %s zum Leader der Fraktion %d gemacht.",aname,fid);
  706. format(string2,sizeof(string2),"AdmCmd: Du hast %s zum Leader der Fraktion %d gemacht.",sname,fid);
  707. NARICHT(pID,ROT,string);
  708. NARICHT(playerid,ROT,string2);
  709. SpielerInfo[pID][Fraktion] = fid;
  710. } else NARICHT(playerid,ROT,AFEHLER);
  711. return 1;
  712. }
  713. dcmd_willkommen(playerid,params[])
  714. {
  715. if(SpielerInfo[playerid][Admin] >= 5)
  716. {
  717. new id;
  718. new aname[MAX_PLAYER_NAME], sname[MAX_PLAYER_NAME];
  719. new string[128], str[128];
  720. GetPlayerName(id,sname,sizeof(sname));
  721. GetPlayerName(playerid,aname,sizeof(aname));
  722. if(sscanf(params,"u",id))return NARICHT(playerid,WEIS,"Benutze: /willkommen [playerid]");
  723. if(id == INVALID_PLAYER_ID)return NARICHT(playerid,WEIS,"Falsche SpielerID!");
  724. format(string,sizeof(string),"Du bekommst von Admin %s ein Willkommensgeschenk (1 Level und 20.000$).",aname);
  725. format(str,sizeof(str),"Du gibst %s ein Willkommensgeschenk (1 Level und 20.000$).",sname);
  726. SetPlayerScore(id,GetPlayerScore(playerid)+1);
  727. GivePlayerMoney(id,20000);
  728. NARICHT(playerid,ROT,str);
  729. NARICHT(id,ROT,string);
  730. return 1;
  731. }
  732. return 1;
  733. }
  734. dcmd_leaderentzug(playerid,params[])
  735. {
  736. new ID;
  737. new aname[MAX_PLAYER_NAME];
  738. new sname[MAX_PLAYER_NAME];
  739. new string[64], str[64];
  740. GetPlayerName(ID,sname,sizeof(sname));
  741. GetPlayerName(playerid,aname,sizeof(aname));
  742. if(SpielerInfo[playerid][Admin] >= 5)
  743. {
  744. if(sscanf(params,"u",ID))return NARICHT(playerid,WEIS,"Benutze: /leaderentzug [playerid]");
  745. if(ID == INVALID_PLAYER_ID)return NARICHT(playerid,WEIS,"Falsche SpielerID!");
  746. format(string,sizeof(string),"Admin %s hat dir deine Leaderrechte entzogen.",aname);
  747. format(str,sizeof(str),"Du hast %s seine Leaderrechte entzogen!",sname);
  748. NARICHT(playerid,ROT,str);
  749. NARICHT(ID,ROT,string);
  750. SpielerInfo[ID][Leader] = 0;
  751. SpielerInfo[ID][Member] = 0;
  752. SpielerInfo[ID][Team] = 0;
  753. SpielerInfo[ID][Fraktion] = 0;
  754. SpawnPlayer(ID);
  755. return 1;
  756. }
  757. return 1;
  758. }
  759.  
  760. dcmd_makeadmin(playerid,params[])
  761. {
  762. new ID,aname[MAX_PLAYER_NAME],sname[MAX_PLAYER_NAME],string[64],string2[64],level;
  763. if(sscanf(params,"ud",ID,level)) return NARICHT(playerid,WEIS,"Benutze: /makeadmin [playerid] [Adminlevel]");
  764. if(level > 6 || level <0) return NARICHT(playerid,WEIS,"Maximales Adminlevel ist 6, und das niedrigste ist 0!");
  765. if(SpielerInfo[playerid][Admin] >= 6)
  766. {
  767. GetPlayerName(playerid,aname,sizeof(aname));
  768. SpielerInfo[ID][Admin] = level;
  769. GetPlayerName(ID,sname,sizeof(sname));
  770. format(string,sizeof(string),"AdmCmd: Du wurdest von %s zum Admin gemacht. Rang: %d",aname,level);
  771. format(string2,sizeof(string2),"AdmCmd: Du hast %s zum Admin gemacht. Rang: %d",sname,level);
  772. NARICHT(playerid,ROT,string2);
  773. NARICHT(playerid,ROT,string);
  774. return 1;
  775. } else NARICHT(playerid,WEIS,AFEHLER);
  776. return 1;
  777. }
  778. dcmd_spawn(playerid,params[])
  779. {
  780. new pID,aname[MAX_PLAYER_NAME],sname[MAX_PLAYER_NAME],string[64],str[64];
  781. if(sscanf(params,"u",pID)) return NARICHT(playerid,WEIS,"Benutze: /spawn [playerid]");
  782. if(SpielerInfo[playerid][Admin] >= 3)
  783. {
  784. GetPlayerName(playerid,aname,sizeof(aname));
  785. format(string,sizeof(string),"AdmCmd: Du wurdest von %s gespawnt!",aname);
  786. GetPlayerName(pID,sname,sizeof(sname));
  787. format(str,sizeof(str),"AdmCmd: Du hast %s gespawnt!",sname);
  788. NARICHT(playerid,ROT,str);
  789. NARICHT(pID,ROT,string);
  790. SpawnPlayer(pID);
  791. } else NARICHT(playerid,WEIS,AFEHLER);
  792. return 1;
  793. }
  794. dcmd_coins(playerid,params[])
  795. {
  796. if(SpielerInfo[playerid][Admin] >= 4) return NARICHT(playerid,WEIS,AFEHLER);
  797. new pID,punkte;
  798. if(sscanf(params,"ud",pID,punkte)) return NARICHT(playerid,WEIS,"Benutze: /coins [playerid] [punkte]");
  799. if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,WEIS,"Falsche ID ist angegeben!");
  800. new string[128],string2[128],name[MAX_PLAYER_NAME];
  801. SpielerInfo[pID][PPunkte] = punkte;
  802. GetPlayerName(pID,name,sizeof(name));
  803. format(string,sizeof(string),"Du gibts %s %d Premium Punkte!",name,punkte);
  804. format(string2,sizeof(string2),"Du bekommst von dem Admin %s %d Premium Punkte!",name,punkte);
  805. NARICHT(playerid,ROT,string);
  806. NARICHT(pID,ROT,string2);
  807. return 1;
  808. }
  809. //Register
  810.  
  811. stock Register(playerid,pw[])
  812. {
  813. new User[64], sname[MAX_PLAYER_NAME];
  814. GetPlayerName(playerid,sname,sizeof(sname));
  815. format(User,sizeof(User),"/Accounts/%s.ini",sname);
  816. dini_Create(User);
  817. dini_Set(User,"Passwort",pw);
  818. dini_IntSet(User,"Fraktion",0);
  819. dini_IntSet(User,"Admin",0);
  820. dini_IntSet(User,"Team",0);
  821. dini_IntSet(User,"Skin",0);
  822. dini_IntSet(User,"Level",1);
  823. dini_IntSet(User,"Verwarnungen",0);
  824. dini_IntSet(User,"Leader",0);
  825. dini_IntSet(User,"Member",0);
  826. dini_IntSet(User,"PremiumPunkte",0);
  827. NARICHT(playerid,WEIS,"Du hast dich erfolgreich auf unserem Server registriert. Habe viel Spaß hier! :)");
  828. SpawnPlayer(playerid);
  829. return printf("Ein Account mit dem Namen %s wurde erstellt!",sname);
  830. }
  831. stock Login(playerid,pw[])
  832. {
  833. new User[64], sname[MAX_PLAYER_NAME];
  834. GetPlayerName(playerid,sname,sizeof(sname));
  835. format(User,sizeof(User),"/Accounts/%s.ini",sname);
  836. if(!strcmp(pw,dini_Get(User,"Passwort"),true))
  837. {
  838. NARICHT(playerid,WEIS,"Eingeloggt...");
  839. SpawnPlayer(playerid);
  840. LadeAccount(playerid);
  841. printf("%s hat sich soeben eingeloggt!",sname);
  842. }
  843. else
  844. {
  845. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunde, logge dich bitte ein:","Login","Abbrechen");
  846. NARICHT(playerid,WEIS,"Das von ihnen eingegeben Passwort ist inkorrekt!");
  847. return 1;
  848. }
  849. return 1;
  850. }
  851. stock LadeAccount(playerid)
  852. {
  853. new User[64], sname[MAX_PLAYER_NAME];
  854. GetPlayerName(playerid,sname,sizeof(sname));
  855. format(User,sizeof(User),"/Accounts/%s.ini",sname);
  856. if(dini_Exists(User))
  857. {
  858. SpielerInfo[playerid][Fraktion] = dini_Int(User,"Fraktion");
  859. SpielerInfo[playerid][Admin] = dini_Int(User,"Admin");
  860. SpielerInfo[playerid][Team] = dini_Int(User,"Team");
  861. SpielerInfo[playerid][Verwarnungen] = dini_Int(User,"Verwarnungen");
  862. SetPlayerScore(playerid,dini_Int(User,"Level"));
  863. SetPlayerSkin(playerid,dini_Int(User,"Skin"));
  864. SpielerInfo[playerid][Leader] = dini_Int(User,"Leader");
  865. SpielerInfo[playerid][Member] = dini_Int(User,"Member");
  866. SpielerInfo[playerid][PPunkte] = dini_Int(User,"PremiumPunkte");
  867. SpawnPlayer(playerid);
  868. }
  869. return 1;
  870. }
  871.  
  872. stock SpeicherAccount(playerid)
  873. {
  874. new User[64], sname[MAX_PLAYER_NAME];
  875. GetPlayerName(playerid,sname,sizeof(sname));
  876. format(User,sizeof(User),"/Accounts/%s.ini",sname);
  877. if(dini_Exists(User))
  878. {
  879. dini_IntSet(User,"Fraktion",SpielerInfo[playerid][Fraktion]);
  880. dini_IntSet(User,"Admin",SpielerInfo[playerid][Admin]);
  881. dini_IntSet(User,"Team",SpielerInfo[playerid][Team]);
  882. dini_IntSet(User,"Level",SpielerInfo[playerid][Level]);
  883. dini_IntSet(User,"Skin",SpielerInfo[playerid][Skin]);
  884. dini_IntSet(User,"Verwarnungen",SpielerInfo[playerid][Verwarnungen]);
  885. dini_IntSet(User,"Leader",SpielerInfo[playerid][Leader]);
  886. dini_IntSet(User,"Member",SpielerInfo[playerid][Member]);
  887. dini_IntSet(User,"PremiumPunkte",SpielerInfo[playerid][PPunkte]);
  888. }
  889. return 1;
  890. }
  891. stock SpeicherAlleSpieler()
  892. {
  893. for(new i=0; i>MAX_PLAYERS;i++)
  894. {
  895. if(IsPlayerConnected(i))
  896. {
  897. SpeicherAccount(i);
  898. print("Alle Accounts wurden gespeichert.");
  899. }
  900. }
  901. return 1;
  902. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement