Advertisement
Guest User

DM Mode by Merci

a guest
Feb 18th, 2012
219
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 14.25 KB | None | 0 0
  1. /* Gamemode Scriptet by Merci & SunRise
  2.  
  3. Credits gehen an: Merci (Haubtarbeit)
  4. SunRise (Mithelfer)*/
  5.  
  6.  
  7. /*DM Script by Merci*/
  8. // INCLUDES:
  9. #include <a_samp>
  10. #include <dini>
  11. #include <ocmd>
  12. #include <sscanf>
  13. // Farben:
  14. #define Weis 0xFFFFFFFF
  15. #define Schwarz 0x0000FFFF
  16. #define BLAU 0x0087FFFF
  17. #define ROT 0xE10000FF
  18.  
  19. //Dialoge
  20. #define DIALOG_REGISTER 1
  21. #define DIALOG_LOGIN 2
  22.  
  23. main()
  24. {
  25. print("\n----------------------------------");
  26. print(" DM SCRIPT BY MERCI/SunRise LOADED");
  27. print("----------------------------------\n");
  28. }
  29. //======================Vehicle Control==================================//
  30. ocmd:lights(playerid, params[])
  31. {
  32. new engine,lights,alarm,doors,bonnet,boot,objective, status[MAX_PLAYERS];
  33. if(IsPlayerInAnyVehicle(playerid))
  34. {
  35. new vid = GetPlayerVehicleID(playerid);
  36. if(status[playerid]==0)
  37. {
  38. GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
  39. SetVehicleParamsEx(vid,engine,VEHICLE_PARAMS_ON,alarm,doors,bonnet,boot,objective);
  40. SendClientMessage(playerid,0xFFFFFFFF,"Du hast das Licht angeschaltet!");
  41. status[playerid] = 1;
  42. }
  43. if(status[playerid]==1)
  44. {
  45. GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
  46. SetVehicleParamsEx(vid,engine,VEHICLE_PARAMS_OFF,alarm,doors,bonnet,boot,objective);
  47. SendClientMessage(playerid,0xFFFFFFFF,"Du hast das Licht ausgeschaltet!");
  48. status[playerid] = 0;
  49. }
  50. }
  51. return 1;
  52. }
  53. ocmd:engine(playerid,params[])
  54. {
  55. new status[MAX_PLAYERS];
  56. //if(sscanf(params,"s",status))return SendClientMessage(playerid,0xFF0000,"Info: /engine [on/off]");
  57. new engine,lights,alarm,doors,bonnet,boot,objective;
  58. if(IsPlayerInAnyVehicle(playerid))
  59. {
  60. new vid = GetPlayerVehicleID(playerid);
  61. if(status[playerid] == 0)
  62. {
  63. GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
  64. SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
  65. status[playerid] = 1;
  66. SendClientMessage(playerid,Weis,"Du hast den Motor gestartet!");
  67. }
  68. if(status[playerid] == 1)
  69. {
  70. GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
  71. SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
  72. status[playerid] = 0;
  73. SendClientMessage(playerid,Weis,"Du hast den Motor ausgeschaltet!");
  74. }
  75. }
  76. return 1;
  77. }
  78. ocmd:help(playerid, params[])
  79. {
  80. SendClientMessage(playerid, BLAU, "|=====Hilfe====|");
  81. SendClientMessage(playerid, Weis, "***/engine (Schaltet den Motor an und / oder aus), /lights (schaltet die Lichter an / aus), /gwaffen (Gibt dem Spieler Waffen");
  82. return 1;
  83. }
  84. public OnGameModeInit()
  85. {
  86. // Don't use these lines if it's a filterscript
  87. SetGameModeText("DM Script by Merci");
  88. //KLASSEN
  89. AddPlayerClass(28,1109.0325,-1795.9449,16.5938,48.8671,0,0,0,0,0,0);
  90.  
  91. Laden();
  92. return 1;
  93. }
  94.  
  95. public OnGameModeExit()
  96. {
  97. return 1;
  98. }
  99.  
  100. public OnPlayerRequestClass(playerid, classid)
  101. {
  102. SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
  103. SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
  104. SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
  105. return 1;
  106. }
  107.  
  108. public OnPlayerConnect( playerid )
  109. {
  110. new Name[ MAX_PLAYER_NAME ];
  111. GetPlayerName( playerid, Name, sizeof( Name ) );
  112. if( strfind( Name, "_", true ) == -1 )
  113. {
  114. SendClientMessage( playerid, 0xFF0000FF, "Es wurde kein '_' in deinem Namen gefunden." );
  115. Kick( playerid );
  116. }
  117. return 1;
  118. }
  119.  
  120. public OnPlayerDisconnect(playerid, reason)
  121. {
  122. if(GetPVarInt(playerid,"loggedin")==1)
  123. {
  124. SpielerSpeichern(playerid);
  125. }
  126. return 1;
  127. }
  128.  
  129. public OnPlayerSpawn(playerid)
  130. {
  131. SendClientMessage(playerid, 0xE10000FF, "Willkommen auf unserem Server! Schön das du hier Spielst!");
  132. SendClientMessage(playerid, 0xE10000FF, "Wenn du Waffen möchtest benutze /gwaffen.");
  133. return 1;
  134. }
  135. forward tot();
  136. public OnPlayerDeath(playerid, killerid, reason)
  137. {
  138. SendClientMessage(playerid, 0x0000FFFF, "Du bist Gestorben, der Notarzt bringt dich an deinen Spawn zurück.");
  139. SetPlayerPos(playerid, 0.0,0.0,0.0);
  140. SetPlayerCameraLookAt(playerid, 0.0,0.0,0.0);
  141. SetTimer("tot", 1000*10, false);
  142. return 1;
  143. }
  144. public tot()
  145. {
  146. auferstehen();
  147. return 1;
  148. }
  149. stock auferstehen(playerid)
  150. {
  151. SendClientMessage(playerid, 0x0000FFFF, "Willkommen zuhause! Deine Verletzungen sind geheilt, du bist wieder fit wie ein Turnschuh!");
  152. SetPlayerPos(playerid, 1109.0325,-1795.9449,16.5938);
  153. SetCameraBehindPlayer(playerid);
  154. return 1;
  155. }
  156. public OnVehicleSpawn(vehicleid)
  157. {
  158. return 1;
  159. }
  160.  
  161. public OnVehicleDeath(vehicleid, killerid)
  162. {
  163. return 1;
  164. }
  165.  
  166. public OnPlayerText(playerid, text[])
  167. {
  168. return 1;
  169. }
  170.  
  171. public OnPlayerCommandText(playerid, cmdtext[])
  172. {
  173. if (strcmp("/login", cmdtext, true, 10) == 0)
  174. {
  175. new Account[64];
  176. new name[MAX_PLAYER_NAME];
  177. GetPlayerName(playerid,name,sizeof(name));
  178. format(Account,sizeof(Account),"/Accounts/%s.ini",name);
  179. if(dini_Exists(Account))//Ob die Datei Exitiert, bzw. der Account
  180. {
  181. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,"Login","Dein Account wurde gefunden.\nGib bitte das Passwort ein.","Login","Abbrechen");
  182. }
  183. else
  184. {
  185. SendClientMessage(playerid, Weis, "Du hast noch keinen Account, bitte Registriere dich!");
  186. }
  187. return 1;
  188. }
  189.  
  190. if (strcmp("/register", cmdtext, true, 10) == 0)
  191. {
  192. new Account[64];
  193. new name[MAX_PLAYER_NAME];
  194. GetPlayerName(playerid,name,sizeof(name));
  195. format(Account,sizeof(Account),"/Accounts/%s.ini",name);
  196. if(dini_Exists(Account))//Ob die Datei Exitiert, bzw. der Account
  197. {
  198. SendClientMessage(playerid, Weis, "Du hast schon einen Account, bitte logge dich ein!");
  199. }
  200. else
  201. {
  202. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD,"Registration","Dein Account wurde nicht gefunden.\nGib bitte Registriere dich.","Registrieren","Abbrechen");
  203. }
  204. return 1;
  205. }
  206. if (strcmp( cmdtext, "/gwaffen", true )==0)
  207. {
  208. GivePlayerWeapon(playerid,24,120);
  209. GivePlayerWeapon(playerid,29,240);
  210. GivePlayerWeapon(playerid,31,900);
  211. GivePlayerWeapon(playerid,34,20);
  212. GivePlayerWeapon(playerid,16,2);
  213. GivePlayerWeapon(playerid,27,100);
  214. SetPlayerHealth(playerid,100.0);
  215. SetPlayerArmour(playerid,100.0);
  216. return 1;
  217.  
  218. }
  219. return 0;
  220. }
  221.  
  222.  
  223.  
  224. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  225. {
  226. SendClientMessage(playerid, Weis, "Gute Fahrt!");
  227. return 1;
  228. }
  229.  
  230. public OnPlayerExitVehicle(playerid, vehicleid)
  231. {
  232. return 1;
  233. }
  234.  
  235. public OnPlayerStateChange(playerid, newstate, oldstate)
  236. {
  237. return 1;
  238. }
  239.  
  240. public OnPlayerEnterCheckpoint(playerid)
  241. {
  242. return 1;
  243. }
  244.  
  245. public OnPlayerLeaveCheckpoint(playerid)
  246. {
  247. return 1;
  248. }
  249.  
  250. public OnPlayerEnterRaceCheckpoint(playerid)
  251. {
  252. return 1;
  253. }
  254.  
  255. public OnPlayerLeaveRaceCheckpoint(playerid)
  256. {
  257. return 1;
  258. }
  259.  
  260. public OnRconCommand(cmd[])
  261. {
  262. return 1;
  263. }
  264.  
  265. public OnPlayerRequestSpawn(playerid)
  266. {
  267. return 1;
  268. }
  269.  
  270. public OnObjectMoved(objectid)
  271. {
  272. return 1;
  273. }
  274.  
  275. public OnPlayerObjectMoved(playerid, objectid)
  276. {
  277. return 1;
  278. }
  279.  
  280. public OnPlayerPickUpPickup(playerid, pickupid)
  281. {
  282. return 1;
  283. }
  284.  
  285. public OnVehicleMod(playerid, vehicleid, componentid)
  286. {
  287. return 1;
  288. }
  289.  
  290. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  291. {
  292. return 1;
  293. }
  294.  
  295. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  296. {
  297. return 1;
  298. }
  299.  
  300. public OnPlayerSelectedMenuRow(playerid, row)
  301. {
  302. return 1;
  303. }
  304.  
  305. public OnPlayerExitedMenu(playerid)
  306. {
  307. return 1;
  308. }
  309.  
  310. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  311. {
  312. return 1;
  313. }
  314.  
  315. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  316. {
  317. return 1;
  318. }
  319.  
  320. public OnRconLoginAttempt(ip[], password[], success)
  321. {
  322. return 1;
  323. }
  324.  
  325. public OnPlayerUpdate(playerid)
  326. {
  327. return 1;
  328. }
  329.  
  330. public OnPlayerStreamIn(playerid, forplayerid)
  331. {
  332. return 1;
  333. }
  334.  
  335. public OnPlayerStreamOut(playerid, forplayerid)
  336. {
  337. return 1;
  338. }
  339.  
  340. public OnVehicleStreamIn(vehicleid, forplayerid)
  341. {
  342. return 1;
  343. }
  344.  
  345. public OnVehicleStreamOut(vehicleid, forplayerid)
  346. {
  347. return 1;
  348. }
  349.  
  350. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  351. {
  352. if(dialogid==DIALOG_LOGIN)
  353. {
  354. if(response==0)
  355. {
  356. SendClientMessage(playerid,BLAU,"Du hast den Vorgang abgebrochen.");
  357. Kick(playerid);
  358. return 1;
  359. }
  360. if(response==1)
  361. {
  362. if(!strlen(inputtext))
  363. {
  364. SendClientMessage(playerid,BLAU,"Das Passwort war nicht lang genug.");
  365. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein.","Login","Abbrechen");
  366. return 1;
  367. }
  368. else
  369. {
  370. Login(playerid,inputtext);
  371. return 1;
  372. }
  373. }
  374. }
  375. if(dialogid==DIALOG_REGISTER)
  376. {
  377. if(response==0)
  378. {
  379. SendClientMessage(playerid,BLAU,"Du hast den Vorgang abgebrochen.");
  380. Kick(playerid);
  381. return 1;
  382. }
  383. if(response==1)
  384. {
  385. if(!strlen(inputtext))
  386. {
  387. SendClientMessage(playerid,BLAU,"Das Passwort war nicht lang genug.");
  388. ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gib bitte das gewünschte Passwort ein:","Register","Abbrechen");
  389. return 1;
  390. }
  391. else
  392. {
  393. Register(playerid,inputtext);
  394. return 1;
  395. }
  396. }
  397. }
  398. return 1;
  399. }
  400.  
  401. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  402. {
  403. return 1;
  404. }
  405.  
  406. stock Register(playerid,key[])
  407. {
  408. new Account[64];
  409. new name[MAX_PLAYER_NAME];
  410. GetPlayerName(playerid,name,sizeof(name));
  411. format(Account,sizeof(Account),"/Accounts/%s.ini",name);
  412. dini_Create(Account);
  413. dini_Set(Account,"Passwort",key);
  414. SendClientMessage(playerid,BLAU,"Erfolgreich registriert.");
  415. SetPlayerScore(playerid,1);
  416. SetPVarInt(playerid,"loggedin",1);
  417. return 1;
  418. }
  419.  
  420. stock Login(playerid,key[])
  421. {
  422. new Account[64];
  423. new name[MAX_PLAYER_NAME];
  424. GetPlayerName(playerid,name,sizeof(name));
  425. format(Account,sizeof(Account),"/Accounts/%s.ini",name);
  426. if(!strcmp(key,dini_Get(Account,"Passwort"),false))
  427. {
  428. LoadAccount(playerid);
  429. SendClientMessage(playerid,BLAU,"Erfolgreich eingeloggt.");
  430. return 1;
  431. }
  432. else
  433. {
  434. SendClientMessage(playerid,BLAU,"Falsches Passwort.");
  435. ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein.","Login","Abbrechen");
  436. return 1;
  437. }
  438. }
  439.  
  440. stock LoadAccount(playerid)
  441. {
  442. new Account[64];
  443. new name[MAX_PLAYER_NAME];
  444. GetPlayerName(playerid,name,sizeof(name));
  445. format(Account,sizeof(Account),"/Accounts/%s.ini",name);
  446. SetPlayerScore(playerid,dini_Int(Account,"Level"));
  447. GivePlayerMoney(playerid,dini_Int(Account,"Geld"));
  448. SetPVarInt(playerid,"Adminlevel",dini_Int(Account,"Adminlevel"));
  449. SetPVarInt(playerid,"Fraktion",dini_Int(Account,"Fraktion"));
  450. SetPVarInt(playerid,"Baned",dini_Int(Account,"Banned"));
  451. if(GetPVarInt(playerid,"Baned")==1)
  452. {
  453. SendClientMessage(playerid,ROT,"Du bist vom Server gebannt.");
  454. Kick(playerid);
  455. }
  456. SetPVarInt(playerid,"loggedin",1);
  457. return 1;
  458. }
  459.  
  460. stock SpielerSpeichern(playerid)
  461. {
  462. if(GetPVarInt(playerid,"loggedin")==1)
  463. {
  464. new Account[64];
  465. new name[MAX_PLAYER_NAME];
  466. GetPlayerName(playerid,name,sizeof(name));
  467. format(Account,sizeof(Account),"/Accounts/%s.ini",name);
  468. dini_IntSet(Account,"Level",GetPlayerScore(playerid));
  469. dini_IntSet(Account,"Geld",GetPlayerMoney(playerid));
  470. dini_IntSet(Account,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
  471. dini_IntSet(Account,"Fraktion",GetPVarInt(playerid,"Fraktion"));
  472. dini_IntSet(Account,"Baned",GetPVarInt(playerid,"Baned"));
  473. }
  474. return 1;
  475. }
  476.  
  477. stock SpielerName(playerid)
  478. {
  479. new name[MAX_PLAYER_NAME];
  480. GetPlayerName(playerid,name,sizeof(name));
  481. return name;
  482. }
  483. stock Laden()
  484. {
  485. //==================Auto's===============//
  486. AddStaticVehicle(520,1063.9440,-1770.3687,14.0876,179.4655,0,0); // //hydra
  487. AddStaticVehicle(522,1077.2499,-1775.4808,12.9134,92.3338,7,79); // //nrg1
  488. AddStaticVehicle(522,1077.1918,-1772.0999,12.9126,88.2218,36,105); // //nrg2
  489. AddStaticVehicle(522,1076.9404,-1769.5868,12.9233,89.2645,39,106); // //nrg3
  490. AddStaticVehicle(522,1086.1377,-1769.7457,12.9142,270.8972,3,8); // //nrg4
  491. AddStaticVehicle(522,1085.7115,-1772.1973,12.9210,274.4779,8,82); // //nrg5
  492. AddStaticVehicle(522,1085.6306,-1775.2294,12.9030,266.1326,6,25); // //nrg6
  493. AddStaticVehicle(521,1098.0210,-1775.4619,12.9129,87.2104,75,13); // //fcr
  494. AddStaticVehicle(410,1098.7744,-1772.2993,12.9902,89.8656,25,1); // //car1
  495. AddStaticVehicle(410,1098.4333,-1766.9164,13.0023,92.5321,10,1); // //car2
  496. AddStaticVehicle(411,1085.1533,-1765.4523,13.0747,2.6979,116,1); // //inf1
  497. AddStaticVehicle(411,1077.3064,-1765.0634,13.0960,0.8005,123,1); // //inf2
  498. AddStaticVehicle(411,1081.0244,-1773.2412,13.0782,359.0045,64,1); // //inf3
  499. AddStaticVehicle(407,1080.3832,-1755.1376,13.6282,270.4172,3,1); // //fire
  500. AddStaticVehicle(409,1110.5593,-1746.3060,13.2812,268.8581,1,1); // //strech1
  501. AddStaticVehicle(409,1120.9919,-1746.1885,13.2803,271.4224,1,1); // //strech2
  502. AddStaticVehicle(426,1062.4009,-1737.1873,13.2234,271.2899,42,42); // //prem1
  503. AddStaticVehicle(428,1025.8613,-1745.1989,13.6734,179.4396,4,75); // sek1
  504. AddStaticVehicle(428,1061.8994,-1743.2926,13.5897,269.7630,4,75); // sek2
  505. AddStaticVehicle(474,1095.7485,-1735.5403,13.4247,271.1876,105,1); // //ho1
  506. AddStaticVehicle(474,1085.5634,-1735.3018,13.4039,273.4630,81,1); // //ho2
  507. print("|==========Vehicles succesfully loaded============|");
  508. return 1;
  509. }
  510.  
  511.  
  512.  
  513.  
  514. /* Dieses Script ist mit OCMD geschrieben also wird dies Benötigt */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement