Advertisement
encrusted

Untitled

Nov 17th, 2013
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 36.99 KB | None | 0 0
  1. /********************************************************************************************************
  2. ||\\\\\\\\\\\|| ****** \\ // ***********************************************
  3. || || ******* \\ // ************************************************
  4. || || ******** \\ // *************************************************
  5. || || ********* \\ // **************************************************
  6. || // *********** \\ // ***************************************************
  7. || // ************* \\ //\\ // ****************************************************
  8. || // *************** \\ // \\ // *****************************************************
  9. || \\ **************** \\ // \\ // ******************************************************
  10. || \\ **************** \\ // \\ // *******************************************************
  11. || \\ **************** \\// \\// ********************************************************
  12. *********************************************************************************************************
  13. Realistic War by encrusted. */
  14.  
  15.  
  16. //*** Includes ***//
  17. #include <a_samp>
  18. #include <Dini>
  19. #include <ocmd>
  20. #include <sscanf2>
  21.  
  22.  
  23. //*** Farben ***//
  24. #define c_error 0xAF0000FF
  25. #define c_erfolg 0x19C500FF
  26. #define c_blau 0x007DFFFF
  27. #define c_turkis 0x00EBFFFF
  28.  
  29. //*** Dialoge ***//
  30. #define d_register 0
  31. #define d_login 1
  32. #define d_team 2
  33. #define d_USklasse 3
  34. #define d_IRklasse 4
  35. #define d_SturmsoldatUS 5
  36. #define d_MedicUS 6
  37. #define d_SniperUS 7
  38. #define d_SturmsoldatIRAN 8
  39. #define d_MedicIRAN 9
  40. #define d_SniperIRAN 10
  41. #define d_ausruestung 11
  42. #define d_ausruestungWAFFEN 12
  43. #define d_ausruestungSTURM 13
  44. #define d_ausruestungPISTOLEN 14
  45. #define d_ausruestungSCHROT 15
  46. #define d_ausruestungSMG 16
  47. #define d_ausruestungSNIPER 17
  48. #define d_ausruestungARMOR 18
  49. //*** Globale Variablen ***//
  50. // Textdraws
  51. new PlayerText:StatisticBoxLevel[MAX_PLAYERS];
  52. new PlayerText:StatisticBoxEXP[MAX_PLAYERS];
  53. new PlayerText:StatisticBoxTeam[MAX_PLAYERS];
  54. // US Klassen
  55. new SturmsoldatUS[MAX_PLAYERS],MedicUS[MAX_PLAYERS],SniperUS[MAX_PLAYERS];
  56. new SturmsoldatIRAN[MAX_PLAYERS],MedicIRAN[MAX_PLAYERS],SniperIRAN[MAX_PLAYERS];
  57. new us_ausruestung_pickup;
  58. new iran_ausruestung_pickup;
  59. new Float:USspawn[] [4] =
  60. {
  61. {1350.7214,1262.1129,10.8203,319.4940},
  62. {1319.3601,1254.6619,10.8203,2.4445},
  63. {1289.1802,1260.6355,10.8203,346.8011},
  64. {1286.5830,1309.6581,10.8203,189.8197}
  65. };
  66.  
  67. new Float:IRANspawn[] [4] =
  68. {
  69. {426.8432,2530.6665,16.6279,140.0019},
  70. {428.1369,2483.7805,16.4844,48.8211},
  71. {392.3676,2535.9497,16.5429,168.4921},
  72. {409.1434,2539.5359,16.5470,126.8184}
  73. };
  74. //*** Enums ***//
  75. // SpielerInfo [sInfo]
  76. enum SpielerInfo
  77. {
  78. Adminlevel,
  79. Erfolgspunkte,
  80. EXP,
  81. Level,
  82. Kills,
  83. Deaths,
  84. Spielzeit,
  85. Army,
  86. Iran
  87. }
  88. new sInfo[MAX_PLAYERS][SpielerInfo];
  89.  
  90. //*** Forwards ***//
  91. forward CheckAllScore();
  92. forward CheckExp();
  93. forward CheckTeam();
  94. //====================================================================================================================================
  95. main()
  96. {
  97. print("\n----------------------------------");
  98. print("RealisticWar");
  99. print("----------------------------------\n");
  100. }
  101. //====================================================================================================================================
  102. public OnGameModeInit()
  103. {
  104. // *** Timer ***//
  105. SetTimer("CheckAllScore",1000,1);
  106. SetTimer("CheckExp",1000,1);
  107. SetTimer("CheckTeam",1000,1);
  108. //*** Pickups ***//
  109. us_ausruestung_pickup = CreatePickup(1242,19,1329.2385,1256.1124,10.8203);
  110.  
  111. DisableInteriorEnterExits();
  112. UsePlayerPedAnims();
  113. SetGameModeText("RLW");
  114. AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
  115.  
  116. //*** United States Army Cars ***//
  117. AddStaticVehicle(470,1306.2329,1278.6576,10.8133,0.3572,5,5); // US Car 1
  118. AddStaticVehicle(470,1309.5809,1278.6254,10.8139,359.7663,5,5); // US Car 2
  119. AddStaticVehicle(470,1312.8429,1279.1724,10.8116,359.8516,5,5); // US Car 3
  120. AddStaticVehicle(470,1315.9105,1278.9070,10.8132,0.9487,5,5); // US Car 4
  121. AddStaticVehicle(433,1283.7732,1287.7565,11.2570,270.2493,5,5); // US Car 5
  122. AddStaticVehicle(433,1283.8198,1294.0565,11.2570,269.2635,5,5); // US Car 6
  123. AddStaticVehicle(433,1284.2693,1300.4781,11.2570,269.4011,5,5); // US Car 7
  124. AddStaticVehicle(433,1283.2150,1306.9670,11.2569,269.7215,5,5); // US Car 8
  125. AddStaticVehicle(548,1304.8131,1342.7390,12.4297,269.8737,5,5); // Heli US 1
  126. AddStaticVehicle(548,1362.3379,1264.6057,12.4610,359.8153,5,5); // Heli US 2
  127.  
  128. //*** Iransoldaten Cars ***//
  129. AddStaticVehicle(424,345.5729,2531.0403,16.5426,180.5746,44,44); // IRAN car 1
  130. AddStaticVehicle(424,352.2552,2530.2715,16.5098,180.1479,44,44); // IRAN car 2
  131. AddStaticVehicle(424,357.0654,2530.1772,16.4862,179.8859,44,44); // IRAN car 3
  132. AddStaticVehicle(424,362.0348,2530.1355,16.4615,179.3010,44,44); // IRAN car 4
  133. AddStaticVehicle(424,366.9853,2530.1746,16.4377,177.8856,44,44); // IRAN car 5
  134. AddStaticVehicle(424,372.2556,2530.5808,16.4121,181.6155,44,44); // IRAN car 6
  135. AddStaticVehicle(427,402.6794,2537.4419,16.6773,145.9531,44,44); // IRAN car 7
  136. AddStaticVehicle(427,395.3649,2545.3906,16.6694,150.6278,44,44); // IRAN car 8
  137. AddStaticVehicle(427,391.0582,2545.6250,16.6733,150.5417,44,44); // IRAN car 9
  138. AddStaticVehicle(427,385.3764,2546.6255,16.6706,139.0708,44,44); // IRAN car 10
  139. AddStaticVehicle(417,418.4680,2493.1711,16.5276,88.7496,44,44); // IRAN car 11
  140. AddStaticVehicle(417,421.1064,2516.6892,16.5754,87.4473,44,44); // IRAN car 12
  141.  
  142.  
  143. return 1;
  144. }
  145. //====================================================================================================================================
  146. public OnGameModeExit()
  147. {
  148. return 1;
  149. }
  150. //====================================================================================================================================
  151. public OnPlayerRequestClass(playerid, classid)
  152. {
  153. return 1;
  154. }
  155. //====================================================================================================================================
  156. public OnPlayerConnect(playerid)
  157. {
  158. // StatisticBox
  159. // "Team"
  160. StatisticBoxTeam[playerid] = CreatePlayerTextDraw(playerid,490.000000, 340.000000, "Team: --");
  161. PlayerTextDrawShow(playerid,StatisticBoxTeam[playerid]);
  162. PlayerTextDrawBackgroundColor(playerid,StatisticBoxTeam[playerid],255);
  163. PlayerTextDrawFont(playerid,StatisticBoxTeam[playerid],3);
  164. PlayerTextDrawLetterSize(playerid,StatisticBoxTeam[playerid],0.600000, 2.000000);
  165. PlayerTextDrawColor(playerid,StatisticBoxTeam[playerid],-1);
  166. PlayerTextDrawSetOutline(playerid,StatisticBoxTeam[playerid], 1);
  167. PlayerTextDrawSetSelectable(playerid,StatisticBoxTeam[playerid], 0);
  168. // "Level"
  169. StatisticBoxLevel[playerid] = CreatePlayerTextDraw(playerid,490.000000, 320.000000, "Level: --"); //Erstellt das Textdraw für den Spieler, GetPlayerScore macht in OnPlayerConnect wenig Sinn, daher der Timer.
  170. PlayerTextDrawShow(playerid,StatisticBoxLevel[playerid]);
  171. PlayerTextDrawBackgroundColor(playerid,StatisticBoxLevel[playerid], 255);
  172. PlayerTextDrawFont(playerid,StatisticBoxLevel[playerid], 3);
  173. PlayerTextDrawLetterSize(playerid,StatisticBoxLevel[playerid], 0.600000, 2.000000);
  174. PlayerTextDrawColor(playerid,StatisticBoxLevel[playerid], -1);
  175. PlayerTextDrawSetOutline(playerid,StatisticBoxLevel[playerid], 1);
  176. PlayerTextDrawSetProportional(playerid,StatisticBoxLevel[playerid], 1);
  177. PlayerTextDrawSetSelectable(playerid,StatisticBoxLevel[playerid], 0);
  178. // "EXP"
  179. StatisticBoxEXP[playerid] = CreatePlayerTextDraw(playerid,490.000000, 330.000000, "EXP: --");
  180. PlayerTextDrawShow(playerid,StatisticBoxEXP[playerid]);
  181. PlayerTextDrawBackgroundColor(playerid,StatisticBoxEXP[playerid], 255);
  182. PlayerTextDrawFont(playerid,StatisticBoxEXP[playerid], 3);
  183. PlayerTextDrawLetterSize(playerid,StatisticBoxEXP[playerid], 0.6000000, 2.000000);
  184. PlayerTextDrawColor(playerid,StatisticBoxEXP[playerid], -1);
  185. PlayerTextDrawSetOutline(playerid,StatisticBoxEXP[playerid], 1);
  186. PlayerTextDrawSetProportional(playerid,StatisticBoxEXP[playerid], 1);
  187. PlayerTextDrawSetSelectable(playerid,StatisticBoxEXP[playerid],0);
  188.  
  189. // Login/Register
  190. new SD[64],name[MAX_PLAYER_NAME];
  191. GetPlayerName(playerid,name,sizeof(name));
  192. format(SD,sizeof(SD),"/Userdaten/%s.txt",name);
  193. if(dini_Exists(SD))
  194. {
  195. //Login Dialog
  196. new nameL[MAX_PLAYER_NAME],str[200];
  197. GetPlayerName(playerid,nameL,sizeof(nameL));
  198. format(str,sizeof(str),"{FFFFFF}Willkommen zurück %s!\nGebe dein Passwort ein um dich einzuloggen.",nameL);
  199. ShowPlayerDialog(playerid,d_login,DIALOG_STYLE_PASSWORD,"{BD0016}[RLW] {FFFFFF}Login",str,"Login","Abbrechen");
  200. }
  201. else
  202. {
  203. // Register Dialog
  204. new nameR[MAX_PLAYER_NAME],str[200];
  205. GetPlayerName(playerid,nameR,sizeof(nameR));
  206. format(str,sizeof(str),"{FFFFFF}Willkommen %s!\nWillkommen auf {BD0016}Realistic War{FFFFFF}.\nDieser Server ist noch im Aufbau und daher noch nicht spielbar.",nameR);
  207. ShowPlayerDialog(playerid,d_register,DIALOG_STYLE_PASSWORD,"{BD0016}[RLW] {FFFFFF}Registrierung",str,"Weiter","Abbrechen");
  208. }
  209. return 1;
  210. }
  211. //====================================================================================================================================
  212. public OnPlayerDisconnect(playerid, reason)
  213. {
  214. SaveAcc(playerid);
  215. ResetVars(playerid);
  216. if(StatisticBoxLevel[playerid] || StatisticBoxEXP[playerid] || StatisticBoxTeam[playerid] != PlayerText:-1)
  217. {
  218. PlayerTextDrawDestroy(playerid, StatisticBoxLevel[playerid]);
  219. PlayerTextDrawDestroy(playerid, StatisticBoxEXP[playerid]);
  220. PlayerTextDrawDestroy(playerid, StatisticBoxTeam[playerid]);
  221. }
  222. StatisticBoxLevel[playerid] = PlayerText:-1;
  223. StatisticBoxTeam[playerid] = PlayerText:-1;
  224. StatisticBoxEXP[playerid] = PlayerText:-1;
  225. return 1;
  226. }
  227. //====================================================================================================================================
  228. public OnPlayerSpawn(playerid)
  229. {
  230.  
  231. ShowPlayerDialog(playerid,d_team,DIALOG_STYLE_LIST,"{BD0016}[RLW] {FFFFFF}Team","United States Army [U.S. Army]\nStreitkräfte des Iran [Iran Soldaten]","Weiter","Abbrechen");
  232. return 1;
  233. }
  234. //====================================================================================================================================
  235. public OnPlayerDeath(playerid, killerid, reason)
  236. {
  237. return 1;
  238. }
  239. //====================================================================================================================================
  240. public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
  241. {
  242. return 1;
  243. }
  244. //====================================================================================================================================
  245. public OnVehicleSpawn(vehicleid)
  246. {
  247. return 1;
  248. }
  249. //====================================================================================================================================
  250. public OnVehicleDeath(vehicleid, killerid)
  251. {
  252. return 1;
  253. }
  254. //====================================================================================================================================
  255. public OnPlayerText(playerid, text[])
  256. {
  257. return 1;
  258. }
  259. //====================================================================================================================================
  260. // *** US Befehle *** //
  261. ocmd:ausruestung(playerid,params[])
  262. {
  263. if(IsPlayerInRangeOfPoint(playerid,2.5,1329.2385,1256.1124,10.8203))
  264. {
  265. ShowPlayerDialog(playerid,d_ausruestung,DIALOG_STYLE_LIST,"U.S. Ausrüstung","Waffen\nArmor","Weiter","Abbrechen");
  266. return 1;
  267. }
  268. return 1;
  269. }
  270. // *** Medic Befehle *** //
  271.  
  272. /*
  273. ocmd:heal(playerid,params[]) {
  274. if(!MedicUS[playerid]) return scm(playerid,c_error,"Du bist kein Medic.");
  275. if(!params[0]) return scm(playerid,c_error,"Verwendung: /heal [spielerid]");
  276. new Float:Q[3],pID=strval(params);GetPlayerPos(playerid,Q[0],Q[1],Q[2]);
  277. if(!IsPlayerInRangeOfPoint(pID,2.5,Q[0],Q[1],Q[2])) return scm(playerid,c_error,"Du bist nicht in der Nähe eines Teampartners!");
  278. new string[128],name[MAX_PLAYER_NAME];
  279. GetPlayerName(playerid,name,sizeof(name));
  280. format(string,sizeof(string),"Du wurdest von Medic {00E6D7}%s {FFFFFF}geheilt!",name),scm(pID,-1,string);
  281. GetPlayerName(pID,name,sizeof(name));
  282. format(string,sizeof(string),"Du hast Soldat {00E6D7}%s {FFFFFF}geheilt!",name),scm(playerid,-1,str2);
  283. return SetPlayerHealth(pID,100);
  284. }
  285. */
  286. ocmd:heal(playerid,params[])
  287. {
  288. if(MedicUS[playerid] == 1)
  289. {
  290. new Float:x,Float:y,Float:z;
  291. new fID = sInfo[playerid][Army] = 1;
  292. if(IsPlayerInRangeOfPoint(fID,1.8,x,y,z))
  293. {
  294. //if(sscanf(params,"u",fID))return scm(playerid,c_error,"[NUTZUNG] /heal [ID]");
  295. new str[100],str2[100],name[MAX_PLAYER_NAME],name2[MAX_PLAYER_NAME];
  296. GetPlayerName(fID,name,sizeof(name));
  297. GetPlayerName(playerid,name2,sizeof(name2));
  298. format(str,sizeof(str),"Du wurdest von Medic {00E6D7}%s {FFFFFF}geheilt!",name2);
  299. format(str,sizeof(str2),"Du hast Soldat {00E6D7}%s {FFFFFF}geheilt!",name);
  300. scm(fID,-1,str);
  301. scm(playerid,-1,str2);
  302. SetPlayerHealth(fID,100);
  303. return 1;
  304. }
  305. else
  306. {
  307. return scm(playerid,c_error,"Du bist nicht in der Nähe eines Teampartners!");
  308. }
  309. }
  310. else
  311. {
  312. return scm(playerid,c_error,"Du bist kein Medic der U.S. Army!");
  313. }
  314. }
  315. // *** Admin Befehle *** //
  316. ocmd:heli(playerid,params[])
  317. {
  318. if(IPA(playerid,1))
  319. {
  320. new Float:x,Float:y,Float:z,veh;
  321. GetPlayerPos(playerid,x,y,z);
  322. veh = CreateVehicle(417,x,y,z,0,44,44,0);
  323. PutPlayerInVehicle(playerid,veh,0);
  324. return 1;
  325. }
  326. else
  327. {
  328. scm(playerid,c_error,"[CmdError]{FFFFFF} Du bist kein Admin.");
  329. return 1;
  330. }
  331. }
  332.  
  333. ocmd:spawn(playerid,params[])
  334. {
  335. if(IPA(playerid,1))
  336. {
  337. new Float:x,Float:y,Float:z,veh;
  338. GetPlayerPos(playerid,x,y,z);
  339. veh = CreateVehicle(424,x,y,z,0,44,44,0);
  340. PutPlayerInVehicle(playerid,veh,0);
  341. return 1;
  342. }
  343. else
  344. {
  345. scm(playerid,c_error,"[CmdError]{FFFFFF} Du bist kein Admin.");
  346. return 1;
  347. }
  348. }
  349.  
  350. //====================================================================================================================================
  351. public OnPlayerCommandText(playerid, cmdtext[])
  352. {
  353. if (strcmp("/credits", cmdtext, true, 10) == 0)
  354. {
  355. scm(playerid,-1,"Scripter:{0085F2} encrusted.");
  356. scm(playerid,-1,"Mapper:{0085F2} encrusted. ");
  357. scm(playerid,-1,"Projektleiter:{0085F2} encrusted.");
  358. return 1;
  359. }
  360. return 0;
  361. }
  362. //====================================================================================================================================
  363. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  364. {
  365. return 1;
  366. }
  367. //====================================================================================================================================
  368. public OnPlayerExitVehicle(playerid, vehicleid)
  369. {
  370. return 1;
  371. }
  372. //====================================================================================================================================
  373. public OnPlayerStateChange(playerid, newstate, oldstate)
  374. {
  375. return 1;
  376. }
  377. //====================================================================================================================================
  378. public OnPlayerEnterCheckpoint(playerid)
  379. {
  380. return 1;
  381. }
  382. //====================================================================================================================================
  383. public OnPlayerLeaveCheckpoint(playerid)
  384. {
  385. return 1;
  386. }
  387. //====================================================================================================================================
  388. public OnPlayerEnterRaceCheckpoint(playerid)
  389. {
  390. return 1;
  391. }
  392. //====================================================================================================================================
  393. public OnPlayerLeaveRaceCheckpoint(playerid)
  394. {
  395. return 1;
  396. }
  397. //====================================================================================================================================
  398. public OnRconCommand(cmd[])
  399. {
  400. return 1;
  401. }
  402. //====================================================================================================================================
  403. public OnPlayerRequestSpawn(playerid)
  404. {
  405. return 1;
  406. }
  407. //====================================================================================================================================
  408. public OnObjectMoved(objectid)
  409. {
  410. return 1;
  411. }
  412. //====================================================================================================================================
  413. public OnPlayerObjectMoved(playerid, objectid)
  414. {
  415. return 1;
  416. }
  417. //====================================================================================================================================
  418. public OnPlayerPickUpPickup(playerid, pickupid)
  419. {
  420. if(pickupid == us_ausruestung_pickup)return 1;
  421. if(pickupid == iran_ausruestung_pickup)return 1;
  422. return 1;
  423. }
  424. //====================================================================================================================================
  425. public OnVehicleMod(playerid, vehicleid, componentid)
  426. {
  427. return 1;
  428. }
  429. //====================================================================================================================================
  430. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  431. {
  432. return 1;
  433. }
  434. //====================================================================================================================================
  435. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  436. {
  437. return 1;
  438. }
  439. //====================================================================================================================================
  440. public OnPlayerSelectedMenuRow(playerid, row)
  441. {
  442. return 1;
  443. }
  444. //====================================================================================================================================
  445. public OnPlayerExitedMenu(playerid)
  446. {
  447. return 1;
  448. }
  449. //====================================================================================================================================
  450. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  451. {
  452. return 1;
  453. }
  454. //====================================================================================================================================
  455. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  456. {
  457. return 1;
  458. }
  459. //====================================================================================================================================
  460. public OnRconLoginAttempt(ip[], password[], success)
  461. {
  462. return 1;
  463. }
  464. //====================================================================================================================================
  465. public OnPlayerUpdate(playerid)
  466. {
  467. return 1;
  468. }
  469. //====================================================================================================================================
  470. public OnPlayerStreamIn(playerid, forplayerid)
  471. {
  472. return 1;
  473. }
  474. //====================================================================================================================================
  475. public OnPlayerStreamOut(playerid, forplayerid)
  476. {
  477. return 1;
  478. }
  479. //====================================================================================================================================
  480. public OnVehicleStreamIn(vehicleid, forplayerid)
  481. {
  482. return 1;
  483. }
  484. //====================================================================================================================================
  485. public OnVehicleStreamOut(vehicleid, forplayerid)
  486. {
  487. return 1;
  488. }
  489. //====================================================================================================================================
  490. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  491. {
  492. if(dialogid==d_ausruestungWAFFEN)
  493. {
  494. if(response==0)
  495. {
  496. return 1;
  497. }
  498. else
  499. {
  500. if(listitem==0)
  501. {
  502. ShowPlayerDialog(playerid,d_ausruestungPISTOLEN,DIALOG_STYLE_LIST,"Pistolen","9mm [Level 1]\n9mm Silenced [Level 1]\nDesert Eagle [Level 1]\nP99 [Level 3]\nM9 [Level 5]\nRevolver [Level 10]","OK","Zurück");
  503. }
  504. if(listitem==1)
  505. {
  506. if(SturmsoldatUS[playerid] == 1)
  507. {
  508. ShowPlayerDialog(playerid,d_ausruestungSTURM,DIALOG_STYLE_LIST,"Sturmgewehre","M4 [Level 1]\nM16 [Level 4]\nG36C [Level 5]\nFAMAS [Level 7]\nAN-94 [Level 10]","OK","Zurück");
  509. }
  510. else
  511. {
  512. scm(playerid,c_error,"Nur Sturmsoldaten können Sturmgewehre tragen!");
  513. return 1;
  514. }
  515. }
  516. if(listitem==2)
  517. {
  518. if(MedicUS[playerid] == 1)
  519. {
  520. ShowPlayerDialog(playerid,d_ausruestungSMG,DIALOG_STYLE_LIST,"Sub Machine Guns","MP5 [Level 1]\nMAC-11 [Level 2]\nPP-90 [Level 4]\nWalther MP [Level 5]\nUMP [Level 7]","OK","Zurück");
  521. }
  522. else
  523. {
  524. scm(playerid,c_error,"Nur Medics können SMG's tragen!");
  525. return 1;
  526. }
  527. }
  528. if(listitem==3)
  529. {
  530. if(MedicUS[playerid] == 1 || SniperUS[playerid] == 1)
  531. {
  532. ShowPlayerDialog(playerid,d_ausruestungSCHROT,DIALOG_STYLE_LIST,"Schrotflinten","Spas-12 [Level 1]\nWinchester [Level 1]\nBlack Rose [Level 2]\nBone Saw [Level 3]\nAA-12 [Level 6]","OK","Zurück");
  533. }
  534. else
  535. {
  536. scm(playerid,c_error,"Nur Medics und Scharfschützen können Schrotflinten tragen!");
  537. }
  538. }
  539. if(listitem==4)
  540. {
  541. if(SniperUS[playerid] == 1)
  542. {
  543. ShowPlayerDialog(playerid,d_ausruestungSNIPER,DIALOG_STYLE_LIST,"Sniper","L96 [Level 1]\nAshbury ASW [Level 2]\nSV-98 [Level 4]\nG96 [Level 5]\nAWP [Level 8]","OK","Zurück");
  544. }
  545. else
  546. {
  547. scm(playerid,c_error,"Nur Scharfschützen können eine Sniper tragen!");
  548. return 1;
  549. }
  550. }
  551. }
  552. }
  553. // Ausrüstung US
  554. if(dialogid==d_ausruestung)
  555. {
  556. if(response==0)
  557. {
  558. return 1;
  559. }
  560. else
  561. {
  562. if(listitem==0)
  563. {
  564. ShowPlayerDialog(playerid,d_ausruestungWAFFEN,DIALOG_STYLE_LIST,"Waffen","Pistolen\nSturmgewehre\nSMG's\nSchrotflinten\nSniper","OK","Abbrechen");
  565. }
  566. if(listitem==1)
  567. {
  568. ShowPlayerDialog(playerid,d_ausruestungARMOR,DIALOG_STYLE_LIST,"Armor","Schutzweste [750$]","OK","Abbrechen");
  569. }
  570. }
  571. }
  572. // Klassen Dialog
  573. if(dialogid==d_USklasse)
  574. {
  575. if(response==0)
  576. {
  577. scm(playerid,c_error,"Du musst eine Klasse auswählen.");
  578. ShowPlayerDialog(playerid,d_USklasse,DIALOG_STYLE_LIST,"{BD0016}[RLW] {FFFFFF}Klasse","Sturmsoldat\nMedic\nSniper","Weiter","Abbrechen");
  579. return 1;
  580. }
  581. else
  582. {
  583. if(listitem==0)
  584. {
  585. ShowPlayerDialog(playerid,d_SturmsoldatUS,DIALOG_STYLE_MSGBOX,"{BD0016}[RLW] {FFFFFF}Klasseninfo","{FFFFFF}Sturmsoldat Equipment\n\nPrimärwaffe: M4\nSekundärwaffe: Desert Eagle\nSpezialfähigkeit: Tragen 5 Granaten bei sich und haben Thermal Visier.","Wählen","Abbrechen");
  586. return 1;
  587. }
  588. if(listitem==1)
  589. {
  590. ShowPlayerDialog(playerid,d_MedicUS,DIALOG_STYLE_MSGBOX,"{BD0016}[RLW] {FFFFFF}Klasseninfo","{FFFFFF}Medic Equipment\n\nPrimärwaffe: Spas-12\nSekundärwaffe: MP5\nSpecialfähigkeit: Kann Teampartner heilen.","Wählen","Abbrechen");
  591. return 1;
  592. }
  593. if(listitem==2)
  594. {
  595. ShowPlayerDialog(playerid,d_SniperUS,DIALOG_STYLE_MSGBOX,"{BD0016}[RLW] {FFFFFF}Klasseninfo","{FFFFFF}Sniper Equipment\n\nPrimärwaffe: L96 Sniper Rifle\nSekundärwaffe: Schrotflinte und Desert Eagle","Wählen","Abbrechen");
  596. return 1;
  597. }
  598. }
  599. }
  600. if(dialogid==d_MedicUS)
  601. {
  602. if(response==0)
  603. {
  604. ShowPlayerDialog(playerid,d_USklasse,DIALOG_STYLE_LIST,"{BD0016}[RLW] {FFFFFF}Klasse","Sturmsoldat\nMedic\nSniper","Weiter","Abbrechen");
  605. return 1;
  606. }
  607. if(response==1)
  608. {
  609. new usrand = random(sizeof(USspawn));
  610. sInfo[playerid][Army] = 1;
  611. sInfo[playerid][Iran] = 0;
  612. SetPlayerPos(playerid,USspawn[usrand][0],USspawn[usrand][1],USspawn[usrand][2]);
  613. SetPlayerSkin(playerid,274);
  614. GivePlayerWeapon(playerid,24,50);
  615. GivePlayerWeapon(playerid,27,100);
  616. GivePlayerWeapon(playerid,29,150);
  617. SturmsoldatUS[playerid] = 0;
  618. MedicUS[playerid] = 1;
  619. SniperUS[playerid] = 0;
  620. scm(playerid,c_erfolg,"Du bist nun ein Medic bei der U.S. Army.");
  621. return 1;
  622. }
  623. }
  624. if(dialogid==d_SniperUS)
  625. {
  626. if(response==0)
  627. {
  628. ShowPlayerDialog(playerid,d_USklasse,DIALOG_STYLE_LIST,"{BD0016}[RLW] {FFFFFF}Klasse","Sturmsoldat\nMedic\nSniper","Weiter","Abbrechen");
  629. return 1;
  630. }
  631. if(response==1)
  632. {
  633. new usrand = random(sizeof(USspawn));
  634. sInfo[playerid][Army] = 1;
  635. sInfo[playerid][Iran] = 0;
  636. SetPlayerPos(playerid,USspawn[usrand][0],USspawn[usrand][1],USspawn[usrand][2]);
  637. SetPlayerSkin(playerid,166);
  638. GivePlayerWeapon(playerid,34,200);
  639. GivePlayerWeapon(playerid,25,75);
  640. GivePlayerWeapon(playerid,24,100);
  641. SturmsoldatUS[playerid] = 0;
  642. MedicUS[playerid] = 0;
  643. SniperUS[playerid] = 1;
  644. scm(playerid,c_erfolg,"Du bist nun ein Scharfschütze bei der U.S. Army.");
  645. return 1;
  646. }
  647. }
  648. if(dialogid==d_SturmsoldatUS)
  649. {
  650. if(response==0)
  651. {
  652. ShowPlayerDialog(playerid,d_USklasse,DIALOG_STYLE_LIST,"{BD0016}[RLW] {FFFFFF}Klasse","Sturmsoldat\nMedic\nSniper","Weiter","Abbrechen");
  653. return 1;
  654. }
  655. if(response==1)
  656. {
  657. new usrand = random(sizeof(USspawn));
  658. sInfo[playerid][Army] = 1;
  659. sInfo[playerid][Iran] = 0;
  660. SetPlayerPos(playerid,USspawn[usrand][0],USspawn[usrand][1],USspawn[usrand][2]);
  661. SetPlayerSkin(playerid,287);
  662. GivePlayerWeapon(playerid,24,75);
  663. GivePlayerWeapon(playerid,31,200);
  664. GivePlayerWeapon(playerid,45,0);
  665. GivePlayerWeapon(playerid,16,3);
  666. SturmsoldatUS[playerid] = 1;
  667. MedicUS[playerid] = 0;
  668. SniperUS[playerid] = 0;
  669. scm(playerid,c_erfolg,"Du bist nun ein Sturmsoldat bei der U.S. Army.");
  670. return 1;
  671. }
  672. }
  673. if(dialogid==d_IRklasse)
  674. {
  675. if(response==0)
  676. {
  677. scm(playerid,c_error,"Du musst eine Klasse auswählen.");
  678. ShowPlayerDialog(playerid,d_team,DIALOG_STYLE_LIST,"{BD0016}[RLW] {FFFFFF}Team","United States Army [U.S. Army]\nStreitkräfte des Iran [Iran Soldaten]","Weiter","Abbrechen");
  679. return 1;
  680. }
  681. else
  682. {
  683. if(listitem==0)
  684. {
  685. ShowPlayerDialog(playerid,d_SturmsoldatIRAN,DIALOG_STYLE_MSGBOX,"{BD0016}[RLW] {FFFFFF}Klasseninfo","{FFFFFF}Sturmsoldat Equipment\n\nPrimärwaffe: AK-47\nSekundärwaffe: Desert Eagle\nSpezialfähigkeit: 3 Granaten","Weiter","Abbrechen");
  686. }
  687. if(listitem==1)
  688. {
  689. ShowPlayerDialog(playerid,d_MedicIRAN,DIALOG_STYLE_MSGBOX,"{BD0016}[RLW] {FFFFFF}Klasseninfo","{FFFFFF}Medic Equipment\n\nPrimärwaffe: Spas-12\nSekundärwaffe: MP5\nSpezialfähigkeit: Kann Teampartner heilen","Weiter","Abbrechen");
  690. }
  691. if(listitem==2)
  692. {
  693. ShowPlayerDialog(playerid,d_SniperIRAN,DIALOG_STYLE_MSGBOX,"{BD0016}[RLW] {FFFFFF}Klasseninfo","{FFFFFF}Sniper Equipment\n\nPrimärwaffe: L96 Sniper Rifle\nSekundärwaffe: Desert Eagle\nSpezialfähigkeit: Bei einem Kopfschuss sofort kill.","Weiter","Abbrechen");
  694. }
  695. }
  696. }
  697. if(dialogid==d_SturmsoldatIRAN)
  698. {
  699. if(response==0)
  700. {
  701. ShowPlayerDialog(playerid,d_IRklasse,DIALOG_STYLE_LIST,"{BD0016}[RLW] {FFFFFF}Klasse","Sturmsoldat\nMedic\nSniper","Weiter","Abbrechen");
  702. }
  703. else
  704. {
  705. new irrand = random(sizeof(IRANspawn));
  706. sInfo[playerid][Army] = 0;
  707. sInfo[playerid][Iran] = 1;
  708. SetPlayerPos(playerid,IRANspawn[irrand][0],IRANspawn[irrand][1],IRANspawn[irrand][2]);
  709. SetPlayerSkin(playerid,222);
  710. GivePlayerWeapon(playerid,24,75);
  711. GivePlayerWeapon(playerid,30,200);
  712. GivePlayerWeapon(playerid,45,0);
  713. GivePlayerWeapon(playerid,16,3);
  714. SturmsoldatIRAN[playerid] = 1;
  715. MedicIRAN[playerid] = 0;
  716. SniperIRAN[playerid] = 0;
  717. scm(playerid,c_erfolg,"Du bist nun ein Sturmsoldat bei den Iransoldaten.");
  718. return 1;
  719. }
  720. }
  721. if(dialogid==d_MedicIRAN)
  722. {
  723. if(response==0)
  724. {
  725. ShowPlayerDialog(playerid,d_IRklasse,DIALOG_STYLE_LIST,"{BD0016}[RLW] {FFFFFF}Klasse","Sturmsoldat\nMedic\nSniper","Weiter","Abbrechen");
  726. }
  727. else
  728. {
  729. new irrand = random(sizeof(IRANspawn));
  730. sInfo[playerid][Army] = 0;
  731. sInfo[playerid][Iran] = 1;
  732. SetPlayerPos(playerid,IRANspawn[irrand][0],IRANspawn[irrand][1],IRANspawn[irrand][2]);
  733. SetPlayerSkin(playerid,221);
  734. GivePlayerWeapon(playerid,24,50);
  735. GivePlayerWeapon(playerid,27,100);
  736. GivePlayerWeapon(playerid,29,150);
  737. SturmsoldatIRAN[playerid] = 0;
  738. MedicIRAN[playerid] = 1;
  739. SniperIRAN[playerid] = 0;
  740. scm(playerid,c_erfolg,"Du bist nun ein Medic bei den Iransoldaten.");
  741. return 1;
  742. }
  743. }
  744. if(dialogid==d_SniperIRAN)
  745. {
  746. if(response==0)
  747. {
  748. ShowPlayerDialog(playerid,d_IRklasse,DIALOG_STYLE_LIST,"{BD0016}[RLW] {FFFFFF}Klasse","Sturmsoldat\nMedic\nSniper","Weiter","Abbrechen");
  749. }
  750. else
  751. {
  752. new irrand = random(sizeof(IRANspawn));
  753. sInfo[playerid][Army] = 0;
  754. sInfo[playerid][Iran] = 1;
  755. SetPlayerPos(playerid,IRANspawn[irrand][0],IRANspawn[irrand][1],IRANspawn[irrand][2]);
  756. SetPlayerSkin(playerid,220);
  757. GivePlayerWeapon(playerid,34,200);
  758. GivePlayerWeapon(playerid,25,75);
  759. GivePlayerWeapon(playerid,24,100);
  760. SturmsoldatIRAN[playerid] = 0;
  761. MedicIRAN[playerid] = 0;
  762. SniperIRAN[playerid] = 1;
  763. scm(playerid,c_erfolg,"Du bist nun ein Scharfschütze bei den Iransoldaten.");
  764. return 1;
  765. }
  766. }
  767. // Team Dialog
  768. if(dialogid==d_team)
  769. {
  770. if(response==0)
  771. {
  772. scm(playerid,c_error,"Du musst ein Team auswählen.");
  773. ShowPlayerDialog(playerid,d_team,DIALOG_STYLE_LIST,"{BD0016}[RLW] {FFFFFF}Team","United States Army [U.S. Army]\nStreitkräfte des Iran [Iran Soldaten]","Weiter","Abbrechen");
  774. return 1;
  775. }
  776. else
  777. {
  778. if(listitem==0)
  779. {
  780. SetPlayerSkin(playerid,287);
  781. ShowPlayerDialog(playerid,d_USklasse,DIALOG_STYLE_LIST,"{BD0016}[RLW] {FFFFFF}Klasse","Sturmsoldat\nMedic\nSniper","Weiter","Abbrechen");
  782. return 1;
  783. }
  784. if(listitem==1)
  785. {
  786. SetPlayerSkin(playerid,222);
  787. ShowPlayerDialog(playerid,d_IRklasse,DIALOG_STYLE_LIST,"{BD0016}[RLW] {FFFFFF}Klasse","Sturmsoldat\nMedic\nSniper","Weiter","Abbrechen");
  788. return 1;
  789. }
  790. }
  791. }
  792. // Login Dialog
  793. if(dialogid==d_login)
  794. {
  795. if(response==0)
  796. {
  797. scm(playerid,c_error,"Du wurdest gekickt, da du den Loginvorgang abgebrochen hast.");
  798. Kick(playerid);
  799. return 1;
  800. }
  801. else
  802. {
  803. if(!strlen(inputtext))
  804. {
  805. new name[MAX_PLAYER_NAME],str[200];
  806. GetPlayerName(playerid,name,sizeof(name));
  807. format(str,sizeof(str),"{FFFFFF}Willkommen zurück %s!\nGebe dein Passwort ein um dich einzuloggen.",name);
  808. ShowPlayerDialog(playerid,d_login,DIALOG_STYLE_PASSWORD,"{BD0016}[RLW] {FFFFFF}Login",str,"Login","Abbrechen");
  809. scm(playerid,c_error,"Du musst dein Passwort eingeben um dich Einloggen zu können.");
  810. return 1;
  811. }
  812. else
  813. {
  814. LOGIN(playerid,inputtext);
  815. return 1;
  816. }
  817. }
  818. }
  819. // Register Dialog
  820. if(dialogid==d_register)
  821. {
  822. if(response==0)
  823. {
  824. SendClientMessage(playerid,c_error,"Du wurdest gekickt, da du den Registrierungvorgang abgebrochen hast.");
  825. Kick(playerid);
  826. return 1;
  827. }
  828. else
  829. {
  830. if(!strlen(inputtext))
  831. {
  832. new name[MAX_PLAYER_NAME],str[200];
  833. GetPlayerName(playerid,name,sizeof(name));
  834. format(str,sizeof(str),"{FFFFFF}Willkommen %s!\nWillkommen auf {BD0016}Realistic War{FFFFFF}.\nDieser Server ist noch im Aufbau und daher noch nicht spielbar.",name);
  835. ShowPlayerDialog(playerid,d_register,DIALOG_STYLE_PASSWORD,"{BD0016}[RLW] {FFFFFF}Registrierung",str,"Weiter","Abbrechen");
  836. scm(playerid,c_error,"Du musst ein Passwort schreiben wenn du dich Registrieren möchtest.");
  837. return 1;
  838. }
  839. else
  840. {
  841. REGISTER(playerid,inputtext);
  842. return 1;
  843. }
  844. }
  845. }
  846. return 1;
  847. }
  848. //====================================================================================================================================
  849. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  850. {
  851. return 1;
  852. }
  853. //====================================================================================================================================
  854. public CheckTeam()
  855. {
  856. new str[64];
  857. for(new i=0; i<MAX_PLAYERS; i++)
  858. {
  859. if(IsPlayerConnected(i) && !IsPlayerNPC(i))
  860. {
  861. format(str,sizeof(str),"Team: %s",sInfo[i][Iran] || sInfo[i][Army]);
  862. PlayerTextDrawSetString(i,StatisticBoxTeam[i],str);
  863. }
  864. }
  865. return 1;
  866. }
  867. public CheckExp()
  868. {
  869. new str[64];
  870. for(new i=0; i<MAX_PLAYERS; i++)
  871. {
  872. if(IsPlayerConnected(i) && !IsPlayerNPC(i))
  873. {
  874. format(str,sizeof(str),"EXP: %i",sInfo[i][EXP]);
  875. PlayerTextDrawSetString(i,StatisticBoxEXP[i],str);
  876. }
  877. }
  878. return 1;
  879. }
  880. public CheckAllScore()
  881. {
  882. new str[64];
  883. for(new i=0; i<MAX_PLAYERS; i++)
  884. {
  885. if(IsPlayerConnected(i) && !IsPlayerNPC(i))
  886. {
  887. format(str,sizeof(str),"Level: %i",GetPlayerScore(i));
  888. PlayerTextDrawSetString(i,StatisticBoxLevel[i],str);
  889. }
  890. }
  891. return 1;
  892. }
  893. //====================================================================================================================================
  894. stock scm(playerid,color,text[])
  895. {
  896. SendClientMessage(playerid,color,text);
  897. return 1;
  898. }
  899.  
  900. stock REGISTER(playerid,key[])
  901. {
  902. new SD[64],name[MAX_PLAYER_NAME];
  903. GetPlayerName(playerid,name,sizeof(name));
  904. format(SD,sizeof(SD),"/Userdaten/%s.txt",name);
  905. dini_Create(SD);
  906. dini_Set(SD,"Passwort",key);
  907. SetPlayerScore(playerid,1);
  908. scm(playerid,c_blau,"Du hast dich erfolgreich auf dem Server registriert!");
  909. scm(playerid,c_blau,"Gebe /info oder /help ein um weitere Informationen zu erhalten.");
  910. return 1;
  911. }
  912.  
  913. stock LOGIN(playerid,key[])
  914. {
  915. new SD[64],name[MAX_PLAYER_NAME];
  916. GetPlayerName(playerid,name,sizeof(name));
  917. format(SD,sizeof(SD),"/Userdaten/%s.txt",name);
  918. if(!strcmp(key,dini_Get(SD,"Passwort"),false))
  919. {
  920. LoadAcc(playerid);
  921. scm(playerid,c_blau,"Du hast dich erfolgreich eingeloggt!");
  922. scm(playerid,c_blau,"Gebe /info oder /help ein um weitere Informationen zu erhalten.");
  923. return 1;
  924. }
  925. else
  926. {
  927. new name2[MAX_PLAYER_NAME],str[200];
  928. GetPlayerName(playerid,name2,sizeof(name2));
  929. format(str,sizeof(str),"{FFFFFF}Willkommen zurück %s!\nGebe dein Passwort ein um dich einzuloggen.",name2);
  930. ShowPlayerDialog(playerid,d_login,DIALOG_STYLE_PASSWORD,"{BD0016}[RLW] {FFFFFF}Login",str,"Login","Abbrechen");
  931. scm(playerid,c_error,"Du hast ein falsches Passwort eingegeben.");
  932. scm(playerid,c_error,"Wenn du dein Passwort vergessen hast, kannst du dich im Forum bei einem Admin oder Supporter melden.");
  933. return 1;
  934. }
  935. }
  936.  
  937. stock LoadAcc(playerid)
  938. {
  939. new SD[64],name[MAX_PLAYER_NAME];
  940. GetPlayerName(playerid,name,sizeof(name));
  941. format(SD,sizeof(SD),"/Userdaten/%s.txt",name);
  942. //Gespeichertes Zeugs
  943. SetPlayerScore(playerid,dini_Int(SD,"Level"));
  944. GivePlayerMoney(playerid,dini_Int(SD,"Money"));
  945. sInfo[playerid][Adminlevel]=dini_Int(SD,"Adminlevel");
  946. sInfo[playerid][Erfolgspunkte]=dini_Int(SD,"Erfolgspunkte");
  947. sInfo[playerid][EXP]=dini_Int(SD,"EXP");
  948. sInfo[playerid][Level]=dini_Int(SD,"Level");
  949. sInfo[playerid][Kills]=dini_Int(SD,"Kills");
  950. sInfo[playerid][Deaths]=dini_Int(SD,"Deaths");
  951. sInfo[playerid][Spielzeit]=dini_Int(SD,"Spielzeit");
  952. return 1;
  953. }
  954.  
  955. stock SaveAcc(playerid)
  956. {
  957. new SD[64],name[MAX_PLAYER_NAME];
  958. GetPlayerName(playerid,name,sizeof(name));
  959. format(SD,sizeof(SD),"/Userdaten/%s.txt",name);
  960. //Gespeichertes Zeugs
  961. dini_IntSet(SD,"Level",GetPlayerScore(playerid));
  962. dini_IntSet(SD,"Money",GetPlayerMoney(playerid));
  963. dini_IntSet(SD,"Adminlevel",sInfo[playerid][Adminlevel]);
  964. dini_IntSet(SD,"Erfolgspunkte",sInfo[playerid][Erfolgspunkte]);
  965. dini_IntSet(SD,"EXP",sInfo[playerid][EXP]);
  966. dini_IntSet(SD,"Level",sInfo[playerid][Level]);
  967. dini_IntSet(SD,"Kills",sInfo[playerid][Kills]);
  968. dini_IntSet(SD,"Deaths",sInfo[playerid][Deaths]);
  969. dini_IntSet(SD,"Spielzeit",sInfo[playerid][Spielzeit]);
  970. return 1;
  971. }
  972.  
  973.  
  974. stock ResetVars(playerid)
  975. {
  976. sInfo[playerid][Adminlevel]=0;
  977. sInfo[playerid][Erfolgspunkte]=0;
  978. sInfo[playerid][EXP]=0;
  979. sInfo[playerid][Level]=0;
  980. sInfo[playerid][Kills]=0;
  981. sInfo[playerid][Deaths]=0;
  982. sInfo[playerid][Spielzeit]=0;
  983. return 1;
  984. }
  985.  
  986.  
  987. stock IPA(playerid,rang)
  988. {
  989. if(sInfo[playerid][Adminlevel] >= rang)return 1;
  990. return 0;
  991. }
  992.  
  993. stock GivePlayerHealth(playerid,Float:health)
  994. {
  995. new Float:hp;
  996. GetPlayerHealth(playerid,hp);
  997. SetPlayerHealth(playerid,hp+health);
  998. return 1;
  999. }
  1000.  
  1001. stock GivePlayerExp(playerid,exp)
  1002. {
  1003. sInfo[playerid][EXP] += exp;
  1004. while(sInfo[playerid][EXP] >= (sInfo[playerid][Level]+1)*1000)
  1005. {
  1006. sInfo[playerid][Level]++;
  1007. sInfo[playerid][EXP] -= sInfo[playerid][Level]*1000;
  1008. }
  1009. return 1;
  1010. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement