Advertisement
Guest User

Untitled

a guest
Dec 9th, 2015
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.10 KB | None | 0 0
  1. #include <a_samp>
  2. #include <kolory>
  3. #include <dini>
  4. #include <md5>
  5. #include <zcmd>
  6. #include <sscanf2>
  7. #include <foreach>
  8.  
  9.  
  10.  
  11. #undef MAX_PLAYERS // MAX GRACZY
  12. #define MAX_PLAYERS 32 //ZMIEŃ TO NA TWOJĄ ILOŚĆ LUB JAK JUŻ TO MASZ TO NIE MUSISZ TEGO DODAWAĆ
  13.  
  14. new String[128], Float:SpecX[MAX_PLAYERS], Float:SpecY[MAX_PLAYERS], Float:SpecZ[MAX_PLAYERS], vWorld[MAX_PLAYERS], Interior[MAX_PLAYERS];
  15. new PodgladID[MAX_PLAYERS], Name[MAX_PLAYER_NAME], AdminSpecuje[MAX_PLAYERS],SpecID[MAX_PLAYERS];
  16.  
  17. #define CmdC 0x00C3FFFF
  18. #define AdminC 0x9B0000
  19. #define Zielony 0x22FF00
  20. #define Bialy 0xFFFFFF
  21. #define Czerwony 0xFC0000
  22. #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
  23.  
  24. new Kasa[MAX_PLAYERS];
  25.  
  26. new PrzypText[][] =
  27. {
  28. "{9B0000}*P* Poruszaj sie szybciej za pomoc motocykla! {C3FFFF}/nrg",
  29. "{9B0000}*P* Jezdzij czesto do ammu nation po bronie ktorych nie masz na spawnie!",
  30. "{9B0000}*P* Zaprzyjaznij sie z innymi graczami i tworzcie razem {C3FFFF}klany.{9B0000} Razem bedziecie mocniejsi!"
  31. };
  32.  
  33. ////ARENY
  34. new ARENA1;
  35. new ARENA2;
  36. new Arena3;
  37.  
  38. new Text:tArena1;
  39. new Text:tArena2;
  40. new Text:tArena3;
  41.  
  42. new g1;
  43. new g2;
  44. new g3;
  45. new g4;
  46. new g5;
  47. new g6;
  48. new g7;
  49.  
  50.  
  51. #define LOGIN 1
  52. #define REJESTRACJA 2
  53. #define KLASY 3
  54. #define NAZWASERWERA "Grand Theft Auto Classic [PL/EU]"
  55. main
  56. ()
  57. {}
  58. public OnGameModeInit()
  59. {
  60. SetGameModeText("GTAC|EU|PL|BETA0.1");
  61. print(" ");
  62. print("ELO");
  63. print(" ");
  64. UsePlayerPedAnims();
  65.  
  66. AddPlayerClass(170,1270.2549,303.4475,19.5614,278.9236,24,100,25,100,29,100);
  67. AddPlayerClass(170,-81.1193,-12.7428,3.1094,134.5299,25,100,28,500,34,100);
  68. AddPlayerClass(170,-1618.0288,741.9972,-5.2422,100.8750,24,100,27,500,30,1000); //
  69.  
  70. AddStaticVehicle(415, -1612.4702,732.6931,-5.2422,358.9179, 1, 1);
  71.  
  72. tArena1 = TextDrawCreate(240.000000, 170.000000, "Spawn1");
  73. TextDrawBackgroundColor(tArena1, -16776961);
  74. TextDrawFont(tArena1, 2);
  75. TextDrawLetterSize(tArena1, 1.000000, 9.000000);
  76. TextDrawColor(tArena1, 255);
  77. TextDrawSetOutline(tArena1, 1);
  78. TextDrawSetProportional(tArena1, 1);
  79. TextDrawUseBox(tArena1, 1);
  80. TextDrawBoxColor(tArena1, 255);
  81. TextDrawTextSize(tArena1, 400.000000, 70.000000);
  82. TextDrawSetSelectable(tArena1, 0);
  83.  
  84. tArena2 = TextDrawCreate(240.000000, 170.000000, "Spawn2");
  85. TextDrawBackgroundColor(tArena2, -16776961);
  86. TextDrawFont(tArena2, 2);
  87. TextDrawLetterSize(tArena2, 1.000000, 9.000000);
  88. TextDrawColor(tArena2, 255);
  89. TextDrawSetOutline(tArena2, 1);
  90. TextDrawSetProportional(tArena2, 1);
  91. TextDrawUseBox(tArena2, 1);
  92. TextDrawBoxColor(tArena2, 255);
  93. TextDrawTextSize(tArena2, 424.000000, 70.000000);
  94. TextDrawSetSelectable(tArena2, 0);
  95.  
  96. tArena3 = TextDrawCreate(240.000000, 170.000000, "Spawn3");
  97. TextDrawBackgroundColor(tArena3, -16776961);
  98. TextDrawFont(tArena3, 2);
  99. TextDrawLetterSize(tArena3, 1.000000, 9.000000);
  100. TextDrawColor(tArena3, 255);
  101. TextDrawSetOutline(tArena3, 1);
  102. TextDrawSetProportional(tArena3, 1);
  103. TextDrawUseBox(tArena3, 1);
  104. TextDrawBoxColor(tArena3, 255);
  105. TextDrawTextSize(tArena3, 424.000000, 70.000000);
  106. TextDrawSetSelectable(tArena3, 0);
  107.  
  108. ARENA1 = GangZoneCreate(1167.788, 140.1345, 1436.379, 420.4035);
  109. ARENA2 = GangZoneCreate(-186.846, -186.846, 58.38938, 198.5239);
  110. Arena3 = GangZoneCreate(-1703.262, 665.0712, -1564.205, 747.9154);
  111.  
  112. SetTimer("PrzypTexty", 180000, true);
  113.  
  114. g1 = CreatePickup(1279, 2, -1702.3627,872.9183,24.8906, 0);
  115. g2 = CreatePickup(1279, 2, -1895.5419,749.4696,45.2969, 0);
  116. g3 = CreatePickup(1279, 2, -1819.1626,548.7381,35.1641, 0);
  117. g4 = CreatePickup(1279, 2, -1833.6510,381.6755,17.0156, 0);
  118. g5 = CreatePickup(1279, 2, -1829.2283,162.4855,15.1172, 0);
  119. g5 = CreatePickup(1279, 2, -1691.3219,695.5069,30.6016, 0);
  120. g5 = CreatePickup(1279, 2, -1632.6978,938.9255,13.3072, 0);
  121. return 1;
  122. }
  123.  
  124. public OnPlayerRequestClass(playerid, classid)
  125. {
  126.  
  127. switch(classid) {
  128. case 0: {
  129. SetPlayerCameraPos(playerid, 1270.2549,303.4475,19.5614);
  130. SetPlayerCameraLookAt(playerid, 1270.2549,303.4475,19.5614);
  131. TextDrawShowForPlayer(playerid, tArena1);
  132. TextDrawHideForPlayer(playerid, tArena2);
  133. TextDrawHideForPlayer(playerid, tArena3);
  134. } case 1: {
  135. SetPlayerCameraPos(playerid, -72.9756,14.9168,5.7840);
  136. SetPlayerCameraLookAt(playerid, -72.9756,14.9168,5.7840);
  137. TextDrawShowForPlayer(playerid, tArena2);
  138. TextDrawHideForPlayer(playerid, tArena1);
  139. TextDrawHideForPlayer(playerid, tArena3);
  140. } case 2: {
  141. SetPlayerCameraPos(playerid, -1644.8082,646.5906,32.5194);
  142. SetPlayerCameraLookAt(playerid, -1618.2971,673.1496,7.1875);
  143. TextDrawShowForPlayer(playerid, tArena3);
  144. TextDrawHideForPlayer(playerid, tArena2);
  145. TextDrawHideForPlayer(playerid, tArena1);
  146. }
  147. }
  148.  
  149. return 1;
  150. }
  151.  
  152. public OnPlayerRequestSpawn(playerid)
  153. {
  154. TextDrawHideForPlayer(playerid, tArena2);
  155. TextDrawHideForPlayer(playerid, tArena1);
  156. TextDrawHideForPlayer(playerid, tArena3);
  157.  
  158. return 1;
  159. }
  160.  
  161. public OnPlayerSpawn(playerid)
  162. {
  163. GangZoneShowForPlayer(playerid, ARENA1, 0xFF00005E);
  164. GangZoneShowForPlayer(playerid, ARENA2, 0xFF00005E);
  165. GangZoneShowForPlayer(playerid, Arena3, 0xFF00005E);
  166.  
  167. if(PodgladID[playerid] == 1)
  168. {
  169. SetPlayerPos(playerid,SpecX[playerid],SpecY[playerid],SpecZ[playerid]);
  170. SetPlayerInterior(playerid,Interior[playerid]);
  171. SetPlayerVirtualWorld(playerid,vWorld[playerid]);
  172. PodgladID[playerid] = 0;
  173. AdminSpecuje[SpecID[playerid]] = 0;
  174. }
  175. return 1;
  176. }
  177.  
  178. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  179. {
  180. if(dialogid == REJESTRACJA)
  181. {
  182. if(response == 0)
  183. {
  184. SendClientMessage(playerid, Czerwony,"Zanulowales/as Rejestracje, zostaniesz wyrzucony z Serwera");
  185. Kick(playerid);
  186. }
  187. if(response == 1)
  188. {
  189. if(!strlen(inputtext))
  190. {
  191. ShowPlayerDialog(playerid, REJESTRACJA, DIALOG_STYLE_PASSWORD,"Rejestracja","Nie podales/as Hasla \nWybierz Haslo aby sie zarejestrowac","Zarejestruj","Anuluj");
  192. }
  193. else
  194. {
  195. Rejestruj(playerid,MD5_Hash(inputtext));
  196. SendClientMessage(playerid, Zielony,"Konto pomyslnie stworzono. Milej Gry :)");
  197. }
  198. }
  199. }
  200. if(dialogid == LOGIN)
  201. {
  202. if(response == 0)
  203. {
  204. SendClientMessage(playerid, Czerwony,"Zanulowales/as Rejestracje, zostaniesz wyrzucony z Serwera");
  205. Kick(playerid);
  206. return 1;
  207. }
  208. if(response == 1)
  209. {
  210. Login(playerid,MD5_Hash(inputtext));
  211. }
  212. }
  213. return 1;
  214. }
  215. public OnPlayerConnect(playerid)
  216. {
  217. SetPlayerMapIcon(playerid, 1, -1702.3627,872.9183,24.8906, 6, 0xFFFFFFFF, 0);
  218. SetPlayerMapIcon(playerid, 2, -1895.5419,749.4696,45.2969, 6, 0xFFFFFFFF, 0);
  219. SetPlayerMapIcon(playerid, 3, -1819.1626,548.7381,35.1641, 6, 0xFFFFFFFF, 0);
  220. SetPlayerMapIcon(playerid, 4, -1833.6510,381.6755,17.0156, 6, 0xFFFFFFFF, 0);
  221. SetPlayerMapIcon(playerid, 5, -1829.2283,162.4855,15.1172, 6, 0xFFFFFFFF, 0);
  222. SetPlayerMapIcon(playerid, 6, -1691.3219,695.5069,30.6016, 6, 0xFFFFFFFF, 0);
  223. SetPlayerMapIcon(playerid, 7, -1632.6978,938.9255,13.3072, 6, 0xFFFFFFFF, 0);
  224. SetTimerEx("kasa", 300000, true, "i", playerid);
  225.  
  226. new nazwa[MAX_PLAYER_NAME]; //Nazwa gracza
  227. new string[256]; //Wiadomosc
  228. GetPlayerName(playerid,nazwa,sizeof(nazwa));
  229. format(string,sizeof(string),"Gracz {FFC800}%s {FFFFFF}wbil na serwer !, witamy serdecznie :)",nazwa);
  230. SendClientMessageToAll(Bialy,string);
  231. new Gracz [64];
  232. new Gname[MAX_PLAYER_NAME];
  233. GetPlayerName(playerid,Gname,sizeof(Gname));
  234. format(Gracz,sizeof(Gracz),"/Gracze/%s.txt",Gname);
  235. if(dini_Exists(Gracz))
  236. {
  237. ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD,"Login","Witaj na serwerze.\nKonto zostalo znalezione\nProsze podaj haslo aby sie zalogowac. :)","Login","Anuluj");
  238. }
  239. else
  240. {
  241. ShowPlayerDialog(playerid, REJESTRACJA, DIALOG_STYLE_PASSWORD,"Rejestracja","Widac ze nie masz konta !. Prosze wybierz Haslo aby sie zarejestrowac","Zarejestruj","Anuluj");
  242. }
  243. return 1;
  244. }
  245. public OnPlayerDisconnect(playerid, reason)
  246. {
  247. ZapisGracza(playerid);
  248.  
  249. new string[256];
  250. switch(reason)
  251. {
  252. case 0: format(string, sizeof(string), "Gracz : %s rozłączył się. (połączenie zerwane)", PlayerName(playerid)); //Jeżeli gracz stracił połączenie z serwem
  253. case 1: format(string, sizeof(string), "Gracz : %s rozłączył się. (wyszedł)", PlayerName(playerid));//Jeżeli gracz wyszedł
  254. case 2: format(string, sizeof(string), "Gracz : %s rozłączył się. (kick/ban)", PlayerName(playerid)); //Jeżeli gracz dostał bana albo kicka
  255. default: format(string, sizeof(string), "Gracz: %s rozłączył się. (nieznany powód)", PlayerName(playerid)); //Jeżeli gracz dostał CRASHA
  256. }
  257. if(AdminSpecuje[playerid] == 1)
  258. {
  259. foreach (new i : Player)
  260. {
  261. if(SpecID[i] == playerid)
  262. {
  263. TogglePlayerSpectating(i,false);
  264. }
  265. }
  266. }
  267. return 1;
  268. }
  269.  
  270. public OnPlayerDeath(playerid, killerid, reason)
  271. {
  272. SendDeathMessage(killerid,playerid,reason);
  273. if(AdminSpecuje[playerid] == 1)
  274. {
  275. foreach (new i : Player)
  276. {
  277. if(SpecID[i] == playerid)
  278. {
  279. TogglePlayerSpectating(i,false);
  280. }
  281. }
  282. }
  283. return 1;
  284. }
  285.  
  286. public OnPlayerPickUpPickup(playerid, pickupid)
  287. {
  288. if(pickupid == g1) {
  289. GivePlayerWeapon(playerid, 34, 50);
  290. GivePlayerWeapon(playerid, 26, 50);
  291. }
  292. if(pickupid == g2)
  293. {
  294. GivePlayerWeapon(playerid, 24, 50);
  295. GivePlayerWeapon(playerid, 25, 50);
  296. GivePlayerWeapon(playerid, 29, 150);
  297. }
  298. if(pickupid == g3)
  299. {
  300. GivePlayerWeapon(playerid, 30, 500);
  301. GivePlayerWeapon(playerid, 29, 150);
  302. }
  303. if(pickupid == g4)
  304. {
  305. GivePlayerWeapon(playerid, 22, 150);
  306. GivePlayerWeapon(playerid, 16, 5);
  307. }
  308. if(pickupid == g5)
  309. {
  310. GivePlayerWeapon(playerid, 24, 20);
  311. GivePlayerWeapon(playerid, 26, 50);
  312. GivePlayerWeapon(playerid, 29, 150);
  313. }
  314. if(pickupid == g6)
  315. {
  316. GivePlayerWeapon(playerid, 24, 50);
  317. GivePlayerWeapon(playerid, 25, 50);
  318. GivePlayerWeapon(playerid, 27, 30);
  319. }
  320. if(pickupid == g7)
  321. {
  322. GivePlayerWeapon(playerid, 24, 50);
  323. GivePlayerWeapon(playerid, 25, 50);
  324. GivePlayerWeapon(playerid, 29, 150);
  325. }
  326. return 1;
  327. }
  328.  
  329. public OnPlayerText(playerid, text[])
  330. {
  331. return 1;
  332. }
  333.  
  334. public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid, bodypart)
  335. {
  336. if(issuerid != INVALID_PLAYER_ID) // If not self-inflicted
  337. {
  338. new
  339. infoString[128],
  340. weaponName[24],
  341. victimName[MAX_PLAYER_NAME],
  342. attackerName[MAX_PLAYER_NAME];
  343.  
  344. GetPlayerName(playerid, victimName, sizeof (victimName));
  345. GetPlayerName(issuerid, attackerName, sizeof (attackerName));
  346.  
  347. GetWeaponName(weaponid, weaponName, sizeof (weaponName));
  348.  
  349. format(infoString, sizeof(infoString), "%s has made %.0f damage to %s, weapon: %s", attackerName, amount, victimName, weaponName);
  350. SendClientMessageToAll(-1, infoString);
  351. }
  352. return 1;
  353. }
  354.  
  355. public OnPlayerUpdate(playerid)
  356. {
  357. new str[64];
  358. if(GetPlayerWeapon(playerid) == 35 || GetPlayerWeapon(playerid) == 36 || GetPlayerWeapon(playerid) == 37 || GetPlayerWeapon(playerid) == 38)
  359. {
  360. Ban(playerid);
  361. format(str, 64, "%s został zabanowany! Powód: Weapon Hack!", PlayerName(playerid));
  362. SendClientMessageToAll(0xFF0000AA, str);
  363. }
  364. return 1;
  365. }
  366.  
  367. stock Register(playerid,haslo[])
  368. {
  369. new string[500];
  370. new Gname[MAX_PLAYER_NAME];
  371. GetPlayerName(playerid, Gname, sizeof(Gname));
  372. format(string, sizeof(string), "/Gracze/%s.ini",Gname);
  373. dini_Create(string);
  374. //
  375. dini_Set(string, "Haslo",haslo);
  376.  
  377. //
  378. SendClientMessage(playerid, COLOR_CYAN, "Konto zostalo pomyslnie zalozone !");
  379. return 1;
  380. }
  381.  
  382.  
  383. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  384. {
  385. if(newkeys & KEY_FIRE && oldkeys & KEY_CROUCH && IsCbugWeapon(playerid))
  386. {
  387. CallLocalFunction("OnPlayerMakeCBug", "i", playerid);
  388. }
  389.  
  390. return 1;
  391. }
  392.  
  393. public OnPlayerMakeCBug(playerid)
  394. {
  395. new name[15], string[60];
  396. GetPlayerName(playerid, name, 15);
  397. format(string, sizeof(string), "%s [%d] Nie rob C-Buga!", name, playerid);
  398. SendClientMessage(playerid, -1, string);
  399. new Float:x, Float:y, Float:z;
  400. GetPlayerVelocity(playerid,x,y,z);
  401. SetPlayerVelocity(playerid,x,y,0.1);
  402. TogglePlayerControllable(playerid, false);
  403. SetTimerEx("cbug", 2000, false, "i", playerid);
  404.  
  405. return 1;
  406. }
  407.  
  408. stock PlayerName(playerid)
  409. {
  410. new name[MAX_PLAYER_NAME];
  411. GetPlayerName(playerid,name,sizeof(name));
  412. return name;
  413. }
  414. stock GivePlayerCash(playerid, ilosc)
  415. {
  416. GivePlayerMoney(playerid, ilosc);
  417. Kasa[playerid] += ilosc;
  418. return 1;
  419. }
  420. stock Rejestruj(playerid,key[])
  421. {
  422. new Gracz [64];
  423. new Gname[MAX_PLAYER_NAME];
  424. GetPlayerName(playerid,Gname,sizeof(Gname));
  425. format(Gracz,sizeof(Gracz),"/Gracze/%s.txt",Gname);
  426. dini_Create(Gracz);
  427. dini_Set(Gracz,"Haslo",key);
  428. dini_IntSet(Gracz,"Kasa",0);
  429. dini_IntSet(Gracz,"Punkty",0);
  430. return 1;
  431. }
  432. stock Login(playerid, key[])
  433. {
  434. new Gracz [64];
  435. new Gname[MAX_PLAYER_NAME];
  436. GetPlayerName(playerid,Gname,sizeof(Gname));
  437. format(Gracz,sizeof(Gracz),"/Gracze/%s.txt",Gname);
  438. if(!strcmp(key,dini_Get(Gracz,"Haslo"), false))
  439. {
  440. WczytajGracza(playerid);
  441. }
  442. else
  443. {
  444. ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD,"Login","Zle Haslo !.\nPodaj haslo aby sie zalogowac.","Login","Anuluj");
  445. }
  446. return 1;
  447. }
  448. stock WczytajGracza(playerid)
  449. {
  450. new Gracz [64];
  451. new Gname[MAX_PLAYER_NAME];
  452. GetPlayerName(playerid,Gname,sizeof(Gname));
  453. format(Gracz,sizeof(Gracz),"/Gracze/%s.txt",Gname);
  454. if(dini_Exists(Gracz))
  455. {
  456. GivePlayerMoney(playerid, dini_Int(Gracz,"Kasa"));
  457. SetPlayerScore(playerid, dini_Int(Gracz,"Punkty"));
  458. SendClientMessage(playerid, Zielony, "Wszystkie dane zostaly wczytane ! Milej gry.");
  459. }
  460. return 1;
  461. }
  462. stock ZapisGracza(playerid)
  463. {
  464. new Gracz [64];
  465. new Gname[MAX_PLAYER_NAME];
  466. GetPlayerName(playerid,Gname,sizeof(Gname));
  467. format(Gracz,sizeof(Gracz),"/Gracze/%s.txt",Gname);
  468. if(dini_Exists(Gracz))
  469. {
  470. dini_IntSet(Gracz,"Kasa",GetPlayerMoney(playerid));
  471. dini_IntSet(Gracz,"Punkty",GetPlayerScore(playerid));
  472. dini_IntSet(Gracz,"Kasa",GetPlayerMoney(playerid));
  473. }
  474. }
  475.  
  476. forward OnPlayerMakeCBug(playerid);
  477.  
  478. stock IsCbugWeapon(playerid)
  479. {
  480. new weaponID = GetPlayerWeapon(playerid);
  481. if(weaponID == 22 || weaponID == 24 || weaponID == 25 || weaponID == 27)
  482. {
  483. return 1;
  484. }
  485. return 0;
  486. }
  487.  
  488. forward cbug(playerid);
  489. public cbug(playerid)
  490. {
  491. TogglePlayerControllable(playerid, true);
  492. return 1;
  493. }
  494.  
  495. forward kasa(playerid);
  496. public kasa(playerid)
  497. {
  498. GivePlayerMoney(playerid, 3);
  499. SendClientMessage(playerid, AdminC, "Dostales 3$ za gre na serwerze {FFFFFF} GTA Classic");
  500. return 1;
  501. }
  502.  
  503. forward PrzypTexty(playerid);
  504. public PrzypTexty(playerid)
  505. {
  506. SendClientMessageToAll(AdminC, PrzypText[random(sizeof(PrzypText))]);
  507. return 1;
  508. }
  509.  
  510. CMD:kasa(playerid, params[])
  511. {
  512. GivePlayerCash(playerid, 500);
  513. return 1;
  514. }
  515.  
  516. CMD:pogoda(playerid, params[])
  517. {
  518.  
  519. if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, AdminC, "Nie jestes administratorem.");
  520.  
  521. new liczba;
  522. if(sscanf(params, "d", liczba)) // tutaj zostawiamy zwykłe params, gdyż ono przechowuje tylko tekst wpisany po komendzie
  523. SendClientMessage(playerid, 0xff0000ff, "Uzyj /pogoda [liczba]"); // wysyłamy wiadomość o nie spełnionym warunku
  524. else // albo jeżeli go spełnimy...
  525. {
  526. SetWeather(liczba); // zmieniamy pogodę na tą podaną w koemdzie
  527. }
  528. return 1; // zwracamy 1
  529. }
  530.  
  531. CMD:spec(playerid, params[])
  532. {
  533. new ID;
  534. if(sscanf(params,"u", ID))return SendClientMessage(playerid, -1, "Uzyj /spec [ID GRACZA]");
  535. if(ID == playerid)return SendClientMessage(playerid,-1,"» Nie mozesz sie sam specowac!.");
  536. if(ID == INVALID_PLAYER_ID)return SendClientMessage(playerid, -1, "» Ten gracz nie jest podlaczony!");
  537. if(PodgladID[playerid] == 1)return SendClientMessage(playerid,-1,"» Juz kogos specujesz!.");
  538. GetPlayerPos(playerid,SpecX[playerid],SpecY[playerid],SpecZ[playerid]);
  539. Interior[playerid] = GetPlayerInterior(playerid);
  540. vWorld[playerid] = GetPlayerVirtualWorld(playerid);
  541. TogglePlayerSpectating(playerid, true);
  542. if(IsPlayerInAnyVehicle(ID))
  543. {
  544. if(GetPlayerInterior(ID) > 0)
  545. {
  546. SetPlayerInterior(playerid,GetPlayerInterior(ID));
  547. }
  548. if(GetPlayerVirtualWorld(ID) > 0)
  549. {
  550. SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(ID));
  551. }
  552. PlayerSpectateVehicle(playerid,GetPlayerVehicleID(ID));
  553. }
  554. else
  555. {
  556. if(GetPlayerInterior(ID) > 0)
  557. {
  558. SetPlayerInterior(playerid,GetPlayerInterior(ID));
  559. }
  560. if(GetPlayerVirtualWorld(ID) > 0)
  561. {
  562. SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(ID));
  563. }
  564. PlayerSpectatePlayer(playerid,ID);
  565. }
  566. GetPlayerName(ID, Name, sizeof(Name));
  567. format(String, sizeof(String),"» Specujesz gracza: %s.",Name);
  568. SendClientMessage(playerid,0x0080C0FF,String);
  569. PodgladID[playerid] = 1;
  570. AdminSpecuje[ID] = 1;
  571. SpecID[playerid] = ID;
  572. return 1;
  573. }
  574. CMD:specoff(playerid, params[])
  575. {
  576. if(PodgladID[playerid] == 0)return SendClientMessage(playerid,-1,"» Nie specujesz nikogo!.");
  577. TogglePlayerSpectating(playerid, 0);
  578. return 1;
  579. }
  580.  
  581. CMD:nrg(playerid, params[])
  582. {
  583.  
  584. new Float:x, Float:y, Float:z;
  585. if(GetPlayerMoney(playerid) > 1)
  586. GivePlayerMoney(playerid, -1);
  587. GetPlayerPos(playerid,x,y,z);
  588. if(GetPlayerMoney(playerid) > 1)
  589. CreateVehicle(522, x+1, y+1, z+1, 80, 222, 222, 10);
  590.  
  591. return 1;
  592. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement