Advertisement
CreativityLacker

Untitled

May 15th, 2013
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 112.31 KB | None | 0 0
  1. //----------- INCLUDES ---------------
  2. #include <a_samp>
  3. #include <zcmd>
  4. #include <sscanf2>
  5. #include <YSI\y_ini>
  6. #include <foreach>
  7. #include <streamer>
  8.  
  9. #define MAX_OBJ 1001
  10. //----------- DEFINES ---------------
  11. #define DIALOG_REGISTER 1
  12. #define DIALOG_LOGIN 2
  13. #define DIALOG_SUCCESS_1 3
  14. #define DIALOG_SUCCESS_2 4
  15. #define PATH "/Users/%s.ini"
  16. #define PATH1 "/Users/Banned/%s.ini"
  17.  
  18. #define MAX_WARNS 4
  19. #define MAX_ADMIN_LEVEL 7
  20. #define MAX_DONOR_LEVEL 3
  21.  
  22. #define MAX_DISTANCE_TO_PROP 1.5
  23. #define MAX_HOUSE 1000
  24.  
  25. #define TEAM_COPS 1
  26. #define TEAM_RESCUE 2
  27.  
  28. #define POLICE 3
  29. #define FBI 4
  30. #define SWAT 5
  31. #define MEDIC 6
  32. #define FIREMAN 7
  33. #define ROBBER 8
  34.  
  35. #define MAX_HOUSES 50
  36. #define HOUSE__PATH "Houses"
  37.  
  38. #define VERY_SMALL 0
  39. #define SMALL 1
  40. #define MEDIUM 2
  41. #define BIG 3
  42. #define VERY_BIG 4
  43. #define LARGE 5
  44. #define EXTRA_LARGE 6
  45. //----------- NEW ---------------
  46. new Text:Textdraw10;
  47. new Text:Textdraw11;
  48. new Text:Textdraw12;
  49. new Text:Textdraw13;
  50. new Text:Textdraw14;
  51. new Text:Textdraw15;
  52. new Text:Textdraw16;
  53. new Text:Textdraw17;
  54. new Text:CnR1;
  55. new Text:CnR2;
  56. new Text:PD;
  57. new Text:CV;
  58. new Text:FD;
  59. new Text:CT;
  60.  
  61. new bool:ownshouse[MAX_PLAYERS];
  62. new bool:onDuty[MAX_PLAYERS];
  63. new bool:Siren[MAX_VEHICLES];
  64. new bool:TeamChoosen[MAX_PLAYERS];
  65. new bool:FSpawn[MAX_PLAYERS];
  66. new bool:gateopen;
  67.  
  68. new PWarns[MAX_PLAYERS];
  69. new pMoneyy[MAX_PLAYERS];
  70. new SirenObject[MAX_VEHICLES];
  71. new gate;
  72. new gate2;
  73.  
  74. new SetPlayerClasS[MAX_PLAYERS];
  75. new oEdit[MAX_PLAYERS];
  76. new oEditID[MAX_PLAYERS];
  77. new Float:oPos[MAX_PLAYERS][3];
  78. new Float:oRot[MAX_PLAYERS][3];
  79. new oldoID;
  80. new Float:oldodX, Float:oldodY, Float:oldodZ, Float:oldodRX, Float:oldodRY, Float:oldodRZ;
  81.  
  82. new VehicleNames[212][] = {
  83. {"Landstalker"},{"Bravura"},{"Buffalo"},{"Linerunner"},{"Perrenial"},{"Sentinel"},{"Dumper"},
  84. {"Firetruck"},{"Trashmaster"},{"Stretch"},{"Manana"},{"Infernus"},{"Voodoo"},{"Pony"},{"Mule"},
  85. {"Cheetah"},{"Ambulance"},{"Leviathan"},{"Moonbeam"},{"Esperanto"},{"Taxi"},{"Washington"},
  86. {"Bobcat"},{"Mr Whoopee"},{"BF Injection"},{"Hunter"},{"Premier"},{"Enforcer"},{"Securicar"},
  87. {"Banshee"},{"Predator"},{"Bus"},{"Rhino"},{"Barracks"},{"Hotknife"},{"Trailer 1"},{"Previon"},
  88. {"Coach"},{"Cabbie"},{"Stallion"},{"Rumpo"},{"RC Bandit"},{"Romero"},{"Packer"},{"Monster"},
  89. {"Admiral"},{"Squalo"},{"Seasparrow"},{"Pizzaboy"},{"Tram"},{"Trailer 2"},{"Turismo"},
  90. {"Speeder"},{"Reefer"},{"Tropic"},{"Flatbed"},{"Yankee"},{"Caddy"},{"Solair"},{"Berkley's RC Van"},
  91. {"Skimmer"},{"PCJ-600"},{"Faggio"},{"Freeway"},{"RC Baron"},{"RC Raider"},{"Glendale"},{"Oceanic"},
  92. {"Sanchez"},{"Sparrow"},{"Patriot"},{"Quad"},{"Coastguard"},{"Dinghy"},{"Hermes"},{"Sabre"},
  93. {"Rustler"},{"ZR-350"},{"Walton"},{"Regina"},{"Comet"},{"BMX"},{"Burrito"},{"Camper"},{"Marquis"},
  94. {"Baggage"},{"Dozer"},{"Maverick"},{"News Chopper"},{"Rancher"},{"FBI Rancher"},{"Virgo"},{"Greenwood"},
  95. {"Jetmax"},{"Hotring"},{"Sandking"},{"Blista Compact"},{"Police Maverick"},{"Boxville"},{"Benson"},
  96. {"Mesa"},{"RC Goblin"},{"Hotring Racer A"},{"Hotring Racer B"},{"Bloodring Banger"},{"Rancher"},
  97. {"Super GT"},{"Elegant"},{"Journey"},{"Bike"},{"Mountain Bike"},{"Beagle"},{"Cropdust"},{"Stunt"},
  98. {"Tanker"}, {"Roadtrain"},{"Nebula"},{"Majestic"},{"Buccaneer"},{"Shamal"},{"Hydra"},{"FCR-900"},
  99. {"NRG-500"},{"HPV1000"},{"Cement Truck"},{"Tow Truck"},{"Fortune"},{"Cadrona"},{"FBI Truck"},
  100. {"Willard"},{"Forklift"},{"Tractor"},{"Combine"},{"Feltzer"},{"Remington"},{"Slamvan"},
  101. {"Blade"},{"Freight"},{"Streak"},{"Vortex"},{"Vincent"},{"Bullet"},{"Clover"},{"Sadler"},
  102. {"Firetruck LA"},{"Hustler"},{"Intruder"},{"Primo"},{"Cargobob"},{"Tampa"},{"Sunrise"},{"Merit"},
  103. {"Utility"},{"Nevada"},{"Yosemite"},{"Windsor"},{"Monster A"},{"Monster B"},{"Uranus"},{"Jester"},
  104. {"Sultan"},{"Stratum"},{"Elegy"},{"Raindance"},{"RC Tiger"},{"Flash"},{"Tahoma"},{"Savanna"},
  105. {"Bandito"},{"Freight Flat"},{"Streak Carriage"},{"Kart"},{"Mower"},{"Duneride"},{"Sweeper"},
  106. {"Broadway"},{"Tornado"},{"AT-400"},{"DFT-30"},{"Huntley"},{"Stafford"},{"BF-400"},{"Newsvan"},
  107. {"Tug"},{"Trailer 3"},{"Emperor"},{"Wayfarer"},{"Euros"},{"Hotdog"},{"Club"},{"Freight Carriage"},
  108. {"Trailer 3"},{"Andromada"},{"Dodo"},{"RC Cam"},{"Launch"},{"Police Car (LSPD)"},{"Police Car (SFPD)"},
  109. {"Police Car (LVPD)"},{"Police Ranger"},{"Picador"},{"S.W.A.T. Van"},{"Alpha"},{"Phoenix"},{"Glendale"},
  110. {"Sadler"},{"Luggage Trailer A"},{"Luggage Trailer B"},{"Stair Trailer"},{"Boxville"},{"Farm Plow"},
  111. {"Utility Trailer"}
  112. }, vehicle = -1;
  113. //----------- ENUMS ---------------
  114. enum houseinfo
  115. {
  116. Owner[24],
  117. Name[80],
  118. Float:Entry[3],
  119. Type,
  120. Value,
  121. bool:Locked,
  122. H_Pickup,
  123. Text3D:H_Info
  124. }
  125. new H[MAX_HOUSES][houseinfo],
  126. house_count,
  127. inside[MAX_PLAYERS];
  128.  
  129. enum pInfo
  130. {
  131. pRegistered,
  132. pLogged,
  133. pAdmin,
  134. pScore,
  135. pMoney,
  136. pDonor,
  137. pMuted,
  138. pPass,
  139. pJailed,
  140. pFrozen,
  141. pSkin,
  142. pBanned,
  143. pKills,
  144. pDeaths,
  145. pData
  146. }
  147. new PlayerInfo[MAX_PLAYERS][pData];
  148.  
  149. enum objInfo
  150. {
  151. obj,
  152. Text3D:oText,
  153. oModel,
  154. Float:oX,
  155. Float:oY,
  156. Float:oZ,
  157. Float:oRX,
  158. Float:oRY,
  159. Float:oRZ,
  160. }
  161. new ObjInfo[MAX_OBJ][objInfo];
  162. //----------- STOCKS ---------------
  163. stock GiveClassWeapons(playerid)
  164. {
  165. new team = GetPlayerTeam(playerid);
  166. if(team == TEAM_COPS)
  167. {
  168. if(SetPlayerClasS[playerid] == POLICE)
  169. {
  170. ResetPlayerWeapons(playerid);
  171. GivePlayerWeapon(playerid, 24, 500);
  172. GivePlayerWeapon(playerid, 3, 5);
  173. GivePlayerWeapon(playerid, 41, 500);
  174. GivePlayerWeapon(playerid, 25, 500);
  175. SetPlayerArmour(playerid, 20);
  176. }
  177. else if(SetPlayerClasS[playerid] == FBI)
  178. {
  179. ResetPlayerWeapons(playerid);
  180. GivePlayerWeapon(playerid, 24, 500);
  181. GivePlayerWeapon(playerid, 3, 5);
  182. GivePlayerWeapon(playerid, 29, 500);
  183. GivePlayerWeapon(playerid, 41, 500);
  184. GivePlayerWeapon(playerid, 27, 100);
  185. SetPlayerArmour(playerid, 50);
  186. }
  187. else if(SetPlayerClasS[playerid] == SWAT)
  188. {
  189. ResetPlayerWeapons(playerid);
  190. GivePlayerWeapon(playerid, 24, 500);
  191. GivePlayerWeapon(playerid, 3, 5);
  192. GivePlayerWeapon(playerid, 29, 500);
  193. GivePlayerWeapon(playerid, 41, 500);
  194. GivePlayerWeapon(playerid, 27, 200);
  195. GivePlayerWeapon(playerid, 31, 300);
  196. SetPlayerArmour(playerid, 100);
  197. }
  198. }
  199. else if(team == TEAM_RESCUE)
  200. {
  201. if(SetPlayerClasS[playerid] == MEDIC)
  202. {
  203. ResetPlayerWeapons(playerid);
  204. GivePlayerWeapon(playerid, 4, 1);
  205. }
  206. else if(SetPlayerClasS[playerid] == FIREMAN)
  207. {
  208. ResetPlayerWeapons(playerid);
  209. GivePlayerWeapon(playerid, 42, 500);
  210. }
  211. }
  212. return 1;
  213. }
  214. stock HousePath(id)
  215. {
  216. new str[40];
  217. format(str, 40, "%s/%d", HOUSE__PATH, id);
  218. return str;
  219. }
  220.  
  221. stock GetPickupModel(houseid)
  222. {
  223. if(strcmp(H[houseid][Owner], "Unowned", false) == 0) return 1273;
  224. else return 1272;
  225. }
  226. stock GetTypeName(hid)
  227. {
  228. new htype[80];
  229. new type = H[hid][Type];
  230. switch(type)
  231. {
  232. case VERY_SMALL: htype = "Very small";
  233. case SMALL: htype = "Small";
  234. case MEDIUM: htype = "Medium";
  235. case BIG: htype = "Big";
  236. case VERY_BIG: htype = "Very big";
  237. case LARGE: htype = "Large";
  238. case EXTRA_LARGE: htype = "Extra large";
  239. }
  240. return htype;
  241. }
  242.  
  243. stock GetHouseExit(hid, &Float:X, &Float:Y, &Float:Z, &interior)
  244. {
  245. new type = H[hid][Type];
  246. switch(type)
  247. {
  248. case VERY_SMALL:
  249. {
  250. X= 302.180999;
  251. Y = 300.722991;
  252. Z = 999.148437;
  253. interior = 4;
  254. }
  255. case SMALL:
  256. {
  257. X = 1527.229980;
  258. Y = -11.574499;
  259. Z = 1002.097106;
  260. interior = 1;
  261. }
  262. case MEDIUM:
  263. {
  264. X = 2350.339843;
  265. Y = -1181.649902;
  266. Z = 1027.976562;
  267. interior = 5;
  268. }
  269. case BIG:
  270. {
  271. X = 964.106994;
  272. Y = -53.205497;
  273. Z = 1001.124572;
  274. interior = 3;
  275. }
  276. case VERY_BIG:
  277. {
  278. X = 2496.049804;
  279. Y = -1695.238159;
  280. Z = 1014.742187;
  281. interior = 3;
  282. }
  283. case LARGE:
  284. {
  285. X = 2324.419921;
  286. Y = -1145.568359;
  287. Z = 1050.710083;
  288. interior = 12;
  289. }
  290. case EXTRA_LARGE:
  291. {
  292. X = 1267.663208;
  293. Y = -781.323242;
  294. Z = 1091.906250;
  295. interior = 5;
  296. }
  297. }
  298. return 1;
  299. }
  300.  
  301. stock LoadHouse(hid)
  302. {
  303. if(!fexist(HousePath(hid))) return 0;
  304.  
  305. INI_ParseFile(HousePath(hid), "LoadHouse_%d", .bExtra = true, .extra = hid);
  306. new str[80];
  307. format(str, 80, "%s[%d]\nOwned by %s\nValue $%d\nHouse type: %s",
  308. H[hid][Name], hid, H[hid][Owner], H[hid][Value], GetTypeName(hid) );
  309. H[hid][H_Info] = Create3DTextLabel(str, 0xADD8E6FF, H[hid][Entry][0], H[hid][Entry][1], H[hid][Entry][2], 50.0, 0, 1);
  310. H[hid][H_Pickup] = CreatePickup( GetPickupModel(hid), 1, H[hid][Entry][0], H[hid][Entry][1], H[hid][Entry][2], -1);
  311. house_count++;
  312. return 1;
  313. }
  314. stock CreateHouse(Float:X, Float:Y, Float:Z, house_type, value)
  315. {
  316. new hid = house_count;
  317. DestroyPickup(H[hid][H_Pickup]);
  318. Delete3DTextLabel(H[hid][H_Info]);
  319.  
  320. if(hid > MAX_HOUSES) return printf("error house not created as it exceeds limit! %d", MAX_HOUSES);
  321. format(H[hid][Owner], 24, "Unowned");
  322. format(H[hid][Name], 80, "For sale");
  323. H[hid][Entry][0] = X;
  324. H[hid][Entry][1] = Y;
  325. H[hid][Entry][2] = Z;
  326. H[hid][Type] = house_type;
  327. H[hid][Value] = value;
  328. H[hid][Locked] = false;
  329. H[hid][H_Pickup] = CreatePickup(GetPickupModel(hid), 1, X, Y, Z, -1);
  330. new str[80];
  331. format(str, 80, "%s[%d]\nOwned by %s\nValue $%d\nHouse type: %s", H[hid][Name], hid, H[hid][Owner], H[hid][Value], GetTypeName(hid) );
  332. H[hid][H_Info] = Create3DTextLabel(str, 0xADD8E6FF, X, Y, Z, 50.0, 0, 1);
  333.  
  334. new INI:ho = INI_Open(HousePath(hid));
  335. INI_SetTag(ho, "data");
  336. INI_WriteString(ho, "Owner", H[hid][Owner]);
  337. INI_WriteString(ho, "Name", H[hid][Name] );
  338. INI_WriteFloat(ho, "eX", H[hid][Entry][0]);
  339. INI_WriteFloat(ho, "eY", H[hid][Entry][1]);
  340. INI_WriteFloat(ho, "eZ", H[hid][Entry][2]);
  341. INI_WriteInt(ho, "Value", H[hid][Value]);
  342. INI_WriteInt(ho, "Type", H[hid][Type]);
  343. INI_WriteBool(ho, "Locked", H[hid][Locked]);
  344. INI_Close(ho);
  345. house_count++;
  346. return 1;
  347. }
  348.  
  349. stock SaveHouse(hid)
  350. {
  351. DestroyPickup(H[hid][H_Pickup]);
  352. Delete3DTextLabel(H[hid][H_Info]);
  353. new INI:ho = INI_Open(HousePath(hid));
  354. INI_SetTag(ho, "data");
  355. INI_WriteString(ho, "Owner", H[hid][Owner]);
  356. INI_WriteString(ho, "Name", H[hid][Name] );
  357. INI_WriteFloat(ho, "eX", H[hid][Entry][0]);
  358. INI_WriteFloat(ho, "eY", H[hid][Entry][1]);
  359. INI_WriteFloat(ho, "eZ", H[hid][Entry][2]);
  360. INI_WriteInt(ho, "Value", H[hid][Value]);
  361. INI_WriteInt(ho, "Type", H[hid][Type]);
  362. INI_WriteBool(ho, "Locked", H[hid][Locked]);
  363. INI_Close(ho);
  364. new str[80];
  365. format(str, 80, "%s[%d]\nOwned by %s\nValue $%d\nHouse type: %s",
  366. H[hid][Name], hid, H[hid][Owner], H[hid][Value], GetTypeName(hid) );
  367. H[hid][H_Info] = Create3DTextLabel(str, 0xADD8E6FF, H[hid][Entry][0], H[hid][Entry][1], H[hid][Entry][2], 50.0, 0, 1);
  368. return 1;
  369. }
  370. stock SaveObjects()
  371. {
  372. new idx = 1, File:file;
  373. new string[256];
  374. while(idx < MAX_OBJ)
  375. {
  376. format(string, sizeof(string), " CreateDynamicObject(%d,%f,%f,%f,%f,%f,%f);\r\n",
  377. ObjInfo[idx][oModel],
  378. ObjInfo[idx][oX],
  379. ObjInfo[idx][oY],
  380. ObjInfo[idx][oZ],
  381. ObjInfo[idx][oRX],
  382. ObjInfo[idx][oRY],
  383. ObjInfo[idx][oRZ]);
  384. if(idx == 1)
  385. {
  386. file = fopen("objects.cfg", io_write);
  387. }
  388. else
  389. {
  390. file = fopen("objects.cfg", io_append);
  391. }
  392. fwrite(file, string);
  393. fclose(file);
  394. idx++;
  395. }
  396. print("Objects saved successfully.");
  397. return 1;
  398. }
  399. stock SaveObjects2()
  400. {
  401. new idx = 1, File:file;
  402. new string[256];
  403. while(idx < MAX_OBJ)
  404. {
  405. format(string, sizeof(string), "%d|%f|%f|%f|%f|%f|%f\r\n",
  406. ObjInfo[idx][oModel],
  407. ObjInfo[idx][oX],
  408. ObjInfo[idx][oY],
  409. ObjInfo[idx][oZ],
  410. ObjInfo[idx][oRX],
  411. ObjInfo[idx][oRY],
  412. ObjInfo[idx][oRZ]);
  413. if(idx == 1)
  414. {
  415. file = fopen("objects22.cfg", io_write);
  416. }
  417. else
  418. {
  419. file = fopen("objects22.cfg", io_append);
  420. }
  421. fwrite(file, string);
  422. fclose(file);
  423. idx++;
  424. }
  425. print("Objects saved successfully.");
  426. return 1;
  427. }
  428. stock LoadObjects()
  429. {
  430. new dinfo[15][128];
  431. new string[256];
  432. new File:file = fopen("objects22.cfg", io_read);
  433. if(file)
  434. {
  435. new idx = 1;
  436. while(idx < MAX_OBJ)
  437. {
  438. fread(file, string);
  439. split(string, dinfo, '|');
  440. ObjInfo[idx][oModel] = strval(dinfo[0]);
  441. ObjInfo[idx][oX] = floatstr(dinfo[1]);
  442. ObjInfo[idx][oY] = floatstr(dinfo[2]);
  443. ObjInfo[idx][oZ] = floatstr(dinfo[3]);
  444. ObjInfo[idx][oRX] = floatstr(dinfo[4]);
  445. ObjInfo[idx][oRY] = floatstr(dinfo[5]);
  446. ObjInfo[idx][oRZ] = floatstr(dinfo[6]);
  447. if(ObjInfo[idx][oModel]) // If gate exists
  448. {
  449. ObjInfo[idx][obj] = CreateDynamicObject(ObjInfo[idx][oModel], ObjInfo[idx][oX], ObjInfo[idx][oY], ObjInfo[idx][oZ], ObjInfo[idx][oRX], ObjInfo[idx][oRY], ObjInfo[idx][oRZ]);
  450. if(IsPlayerAdmin(playerid))
  451. {
  452. format(string, sizeof(string), "Object ID: %d (Model ID: %d)", idx, ObjInfo[idx][oModel]);
  453. ObjInfo[idx][oText] = CreateDynamic3DTextLabel(string, 0xFF0000FF, ObjInfo[idx][oX], ObjInfo[idx][oY], ObjInfo[idx][oZ], 10);
  454. }
  455. }
  456. idx++;
  457. }
  458. }
  459. print("Objects loaded successfully.");
  460. return 1;
  461. }
  462. stock split(const strsrc[], strdest[][], delimiter)
  463. {
  464. new i, li;
  465. new aNum;
  466. new len;
  467. while(i <= strlen(strsrc))
  468. {
  469. if(strsrc[i] == delimiter || i == strlen(strsrc))
  470. {
  471. len = strmid(strdest[aNum], strsrc, li, i, 128);
  472. strdest[aNum][len] = 0;
  473. li = i+1;
  474. aNum++;
  475. }
  476. i++;
  477. }
  478. return 1;
  479. }
  480. stock RPN(playerid)
  481. {
  482. new name[MAX_PLAYER_NAME];
  483. GetPlayerName(playerid,name,sizeof(name));
  484. for(new i = 0; i < MAX_PLAYER_NAME; i++)
  485. {
  486. if(name[i] == '_') name[i] = ' ';
  487. }
  488. return name;
  489. }
  490. stock UserPath(playerid)
  491. {
  492. new string[128],playername[MAX_PLAYER_NAME];
  493. GetPlayerName(playerid,playername,sizeof(playername));
  494. format(string,sizeof(string),PATH,playername);
  495. return string;
  496. }
  497.  
  498. stock UserPathb(playerid)
  499. {
  500. new string[128],playername[MAX_PLAYER_NAME];
  501. GetPlayerName(playerid,playername,sizeof(playername));
  502. format(string,sizeof(string),PATH1,playername);
  503. return string;
  504. }
  505.  
  506. stock udb_hash(buf[]) {
  507. new length=strlen(buf);
  508. new s1 = 1;
  509. new s2 = 0;
  510. new n;
  511. for (n=0; n<length; n++)
  512. {
  513. s1 = (s1 + buf[n]) % 65521;
  514. s2 = (s2 + s1) % 65521;
  515. }
  516. return (s2 << 16) + s1;
  517. }
  518. stock PlayerName(playerid)
  519. {
  520. new name[MAX_PLAYER_NAME];
  521. GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  522. return name;
  523. }
  524. stock PlayerIP(playerid)
  525. {
  526. new plrIP[16];
  527. GetPlayerIp(playerid, plrIP, sizeof(plrIP));
  528. return plrIP;
  529. }
  530. stock GivePlayerMoneyEx(playerid, mon)
  531. {
  532. pMoneyy[playerid] = pMoneyy[playerid]+mon;
  533. GivePlayerMoney(playerid, mon);
  534. }
  535.  
  536. stock SetPlayerMoneyEx(playerid, mon)
  537. {
  538. pMoneyy[playerid] = mon;
  539. ResetPlayerMoney(playerid);
  540. GivePlayerMoney(playerid, mon);
  541. }
  542.  
  543. stock GetPlayerMoneyEx(playerid) return pMoneyy[playerid];
  544. stock MessageToAdmins(color, const string[])
  545. {
  546. foreach(Player, i)
  547. {
  548. if(PlayerInfo[i][pAdmin] >= 1)
  549. {
  550. SendClientMessage(i, color, string);
  551. }
  552. }
  553. return 1;
  554. }
  555.  
  556. stock MessageToDonors(color, const string[])
  557. {
  558. foreach(Player, i)
  559. {
  560. if(PlayerInfo[i][pDonor] >= 1)
  561. {
  562. SendClientMessage(i, color, string);
  563. }
  564. }
  565. return 1;
  566. }
  567.  
  568. stock TargetCMDMessage(playerid, target, command[])
  569. {
  570. new name[MAX_PLAYER_NAME], name1[MAX_PLAYER_NAME];
  571. GetPlayerName(target, name, sizeof(name));
  572. GetPlayerName(playerid, name1, sizeof(name1));
  573. new string[128];
  574. format(string, sizeof(string),"[aCmd] %s[%i] has used the command /%s on %s[%i]", name1, playerid, command, name, target);
  575. return MessageToAdmins(0x0099FFAA, string);
  576. }
  577.  
  578. stock CMDMessage(playerid, command[])
  579. {
  580. new name1[MAX_PLAYER_NAME];
  581. GetPlayerName(playerid, name1, sizeof(name1));
  582. new string[128];
  583. format(string, sizeof(string),"[aCmd] %s[%i] has used the command /%s", name1, playerid, command);
  584. return MessageToAdmins(0x0099FFAA, string);
  585. }
  586. //----------- FORWARDS ---------------
  587. forward LoadUser_data(playerid,name[],value[]);
  588. public LoadUser_data(playerid,name[],value[])
  589. {
  590. INI_Int("Password",PlayerInfo[playerid][pPass]);
  591. INI_Int("Cash",PlayerInfo[playerid][pMoney]);
  592. INI_Int("Score",PlayerInfo[playerid][pScore]);
  593. INI_Int("Admin",PlayerInfo[playerid][pAdmin]);
  594. INI_Int("Donor",PlayerInfo[playerid][pDonor]);
  595. INI_Int("Kills",PlayerInfo[playerid][pKills]);
  596. INI_Int("Deaths",PlayerInfo[playerid][pDeaths]);
  597. INI_Int("Banned", PlayerInfo[playerid][pBanned]);
  598. return 1;
  599. }
  600. forward LoadHouse_data(houseid, name[], value[]);
  601. public LoadHouse_data(houseid, name[], value[])
  602. {
  603. #define hid houseid
  604. DestroyPickup(H[hid][H_Pickup]);
  605. Delete3DTextLabel(H[hid][H_Info]);
  606. INI_String("Owner", H[hid][Owner], 24);
  607. INI_String("Name", H[hid][Name], 80);
  608. INI_Float("eX", H[hid][Entry][0]);
  609. INI_Float("eY", H[hid][Entry][1]);
  610. INI_Float("eZ", H[hid][Entry][2]);
  611. INI_Int("Value", H[hid][Value]);
  612. INI_Int("Type", H[hid][Type]);
  613. INI_Bool("Locked", H[hid][Locked]);
  614. #undef hid
  615. return 1;
  616. }
  617. //------------------------------------------------------------------------------
  618. //------------------------------------------------------------------------------
  619. //------------------------------------------------------------------------------
  620. main()
  621. {
  622. print("\n----------------------------------");
  623. print("ZeroX gaming loaded!");
  624. print("----------------------------------\n");
  625. }
  626.  
  627. public OnGameModeInit()
  628. {
  629. for(new x=0; x < MAX_HOUSES; x++)
  630. {
  631. LoadHouse(x);
  632. }
  633. SetGameModeText("ZX V0.1");
  634. SaveObjects2();
  635. SaveObjects();
  636. AddPlayerClass(280, 2000.4862,1537.8051,13.5859, 0, 24, 500, 3, 1, 41, 500);
  637. //---------| TEXTDRAWS |----------
  638. Textdraw10 = TextDrawCreate(-110.000000, 2.000000, "New Textdraw");
  639. TextDrawBackgroundColor(Textdraw10, 255);
  640. TextDrawFont(Textdraw10, 1);
  641. TextDrawLetterSize(Textdraw10, 0.500000, 13.000000);
  642. TextDrawColor(Textdraw10, -1);
  643. TextDrawSetOutline(Textdraw10, 0);
  644. TextDrawSetProportional(Textdraw10, 1);
  645. TextDrawSetShadow(Textdraw10, 1);
  646. TextDrawUseBox(Textdraw10, 1);
  647. TextDrawBoxColor(Textdraw10, 255);
  648. TextDrawTextSize(Textdraw10, 651.000000, 0.000000);
  649.  
  650. Textdraw11 = TextDrawCreate(-110.000000, 328.000000, "New Textdraw");
  651. TextDrawBackgroundColor(Textdraw11, 255);
  652. TextDrawFont(Textdraw11, 1);
  653. TextDrawLetterSize(Textdraw11, 0.500000, 13.000000);
  654. TextDrawColor(Textdraw11, -1);
  655. TextDrawSetOutline(Textdraw11, 0);
  656. TextDrawSetProportional(Textdraw11, 1);
  657. TextDrawSetShadow(Textdraw11, 1);
  658. TextDrawUseBox(Textdraw11, 1);
  659. TextDrawBoxColor(Textdraw11, 255);
  660. TextDrawTextSize(Textdraw11, 651.000000, 0.000000);
  661.  
  662. Textdraw12 = TextDrawCreate(-110.000000, 328.000000, "New Textdraw");
  663. TextDrawBackgroundColor(Textdraw12, 255);
  664. TextDrawFont(Textdraw12, 1);
  665. TextDrawLetterSize(Textdraw12, 0.500000, 0.000000);
  666. TextDrawColor(Textdraw12, -1);
  667. TextDrawSetOutline(Textdraw12, 0);
  668. TextDrawSetProportional(Textdraw12, 1);
  669. TextDrawSetShadow(Textdraw12, 1);
  670. TextDrawUseBox(Textdraw12, 1);
  671. TextDrawBoxColor(Textdraw12, -65281);
  672. TextDrawTextSize(Textdraw12, 651.000000, 0.000000);
  673.  
  674. Textdraw13 = TextDrawCreate(-110.000000, 123.000000, "New Textdraw");
  675. TextDrawBackgroundColor(Textdraw13, 255);
  676. TextDrawFont(Textdraw13, 1);
  677. TextDrawLetterSize(Textdraw13, 0.500000, 0.000000);
  678. TextDrawColor(Textdraw13, -1);
  679. TextDrawSetOutline(Textdraw13, 0);
  680. TextDrawSetProportional(Textdraw13, 1);
  681. TextDrawSetShadow(Textdraw13, 1);
  682. TextDrawUseBox(Textdraw13, 1);
  683. TextDrawBoxColor(Textdraw13, -65281);
  684. TextDrawTextSize(Textdraw13, 651.000000, 0.000000);
  685.  
  686. Textdraw14 = TextDrawCreate(0.000000, 51.000000, "l");
  687. TextDrawBackgroundColor(Textdraw14, 255);
  688. TextDrawFont(Textdraw14, 1);
  689. TextDrawLetterSize(Textdraw14, 0.999999, 36.000000);
  690. TextDrawColor(Textdraw14, -65281);
  691. TextDrawSetOutline(Textdraw14, 1);
  692. TextDrawSetProportional(Textdraw14, 1);
  693.  
  694. Textdraw15 = TextDrawCreate(631.000000, 51.000000, "l");
  695. TextDrawBackgroundColor(Textdraw15, 255);
  696. TextDrawFont(Textdraw15, 1);
  697. TextDrawLetterSize(Textdraw15, 0.999999, 36.000000);
  698. TextDrawColor(Textdraw15, -65281);
  699. TextDrawSetOutline(Textdraw15, 1);
  700. TextDrawSetProportional(Textdraw15, 1);
  701.  
  702. Textdraw16 = TextDrawCreate(164.000000, 39.000000, "PlanetX Cops'n'Robbers");
  703. TextDrawBackgroundColor(Textdraw16, 255);
  704. TextDrawFont(Textdraw16, 2);
  705. TextDrawLetterSize(Textdraw16, 0.600000, 3.000000);
  706. TextDrawColor(Textdraw16, -1);
  707. TextDrawSetOutline(Textdraw16, 0);
  708. TextDrawSetProportional(Textdraw16, 1);
  709. TextDrawSetShadow(Textdraw16, 1);
  710.  
  711. Textdraw17 = TextDrawCreate(12.000000, 339.000000, "Rules: ~n~1. No cheating/hacking~n~2. No bug abusing~n~3. No random DM");
  712. TextDrawBackgroundColor(Textdraw17, 255);
  713. TextDrawFont(Textdraw17, 1);
  714. TextDrawLetterSize(Textdraw17, 0.390000, 2.000000);
  715. TextDrawColor(Textdraw17, -1);
  716. TextDrawSetOutline(Textdraw17, 0);
  717. TextDrawSetProportional(Textdraw17, 1);
  718. TextDrawSetShadow(Textdraw17, 1);
  719.  
  720. CnR1 = TextDrawCreate(54.000000, 310.000000, "PlanetX");
  721. TextDrawBackgroundColor(CnR1, 255);
  722. TextDrawFont(CnR1, 3);
  723. TextDrawLetterSize(CnR1, 0.509999, 1.600000);
  724. TextDrawColor(CnR1, -1);
  725. TextDrawSetOutline(CnR1, 1);
  726. TextDrawSetProportional(CnR1, 1);
  727.  
  728. CnR2 = TextDrawCreate(41.000000, 323.000000, "~b~~h~~h~Cops~w~'n'~r~~h~Robbers");
  729. TextDrawBackgroundColor(CnR2, 255);
  730. TextDrawFont(CnR2, 0);
  731. TextDrawLetterSize(CnR2, 0.509999, 1.600000);
  732. TextDrawColor(CnR2, -1);
  733. TextDrawSetOutline(CnR2, 1);
  734. TextDrawSetProportional(CnR2, 1);
  735.  
  736. CT = TextDrawCreate(244.000000, 126.000000, "Choose your team:");
  737. TextDrawBackgroundColor(CT, 255);
  738. TextDrawFont(CT, 1);
  739. TextDrawLetterSize(CT, 0.460000, 2.000000);
  740. TextDrawColor(CT, -1);
  741. TextDrawSetOutline(CT, 0);
  742. TextDrawSetProportional(CT, 1);
  743. TextDrawSetShadow(CT, 1);
  744.  
  745. PD = TextDrawCreate(310.000000, 150.000000, "Law divisions");
  746. TextDrawAlignment(PD, 2);
  747. TextDrawBackgroundColor(PD, 255);
  748. TextDrawFont(PD, 1);
  749. TextDrawLetterSize(PD, 0.449999, 2.400000);
  750. TextDrawColor(PD, -1);
  751. TextDrawSetOutline(PD, 0);
  752. TextDrawSetProportional(PD, 1);
  753. TextDrawSetShadow(PD, 1);
  754. TextDrawTextSize(PD, 30.000000, 150.000000);
  755.  
  756. CV = TextDrawCreate(310.000000, 190.000000, "Civilian");
  757. TextDrawAlignment(CV, 2);
  758. TextDrawBackgroundColor(CV, 255);
  759. TextDrawFont(CV, 1);
  760. TextDrawLetterSize(CV, 0.449999, 2.400000);
  761. TextDrawColor(CV, -1);
  762. TextDrawSetOutline(CV, 0);
  763. TextDrawSetProportional(CV, 1);
  764. TextDrawSetShadow(CV, 1);
  765. TextDrawTextSize(CV, 30.000000, 190.000000);
  766.  
  767. FD = TextDrawCreate(310.000000, 230.000000, "Fire and Rescue");
  768. TextDrawAlignment(FD, 2);
  769. TextDrawBackgroundColor(FD, 255);
  770. TextDrawFont(FD, 1);
  771. TextDrawLetterSize(FD, 0.449999, 2.400000);
  772. TextDrawColor(FD, -1);
  773. TextDrawSetOutline(FD, 0);
  774. TextDrawSetProportional(FD, 1);
  775. TextDrawSetShadow(FD, 1);
  776. TextDrawTextSize(FD, 30.000000, 230.000000);
  777.  
  778. TextDrawSetSelectable(PD, true);
  779. TextDrawSetSelectable(CV, true);
  780. TextDrawSetSelectable(FD, true);
  781. //-------------------- MAP ------------------------
  782. AddStaticVehicleEx(490,1803.1999512,-1586.1999512,13.8000002,310.0000000,53,-1,180);
  783. AddStaticVehicleEx(490,1792.1999512,-1598.5999756,13.8999996,359.9957275,53,-1,180);
  784. AddStaticVehicleEx(490,1797.0000000,-1591.2998047,13.8000002,309.9957275,53,-1,180);
  785. AddStaticVehicleEx(427,1816.5000000,-1566.0000000,13.8000002,165.9999390,53,1,180);
  786. AddStaticVehicleEx(427,1818.8994141,-1556.2998047,13.8000002,165.9978638,53,1,180);
  787. AddStaticVehicleEx(596,1810.5999756,-1569.4000244,13.3000002,262.0000000,53,1,180);
  788. AddStaticVehicleEx(596,1804.5000000,-1575.5996094,13.1999998,261.9964600,53,1,180);
  789. AddStaticVehicleEx(596,1807.1992188,-1572.5996094,13.3000002,261.9964600,53,1,180);
  790. AddStaticVehicleEx(596,1813.5999756,-1585.0000000,13.3999996,357.9964600,53,1,180);
  791. AddStaticVehicleEx(596,1813.5999756,-1591.3000488,13.3999996,357.9949951,53,1,180);
  792. AddStaticVehicleEx(596,1600.5000000,-1684.0000000,5.6999998,90.0000000,-1,1,180);
  793. AddStaticVehicleEx(596,1600.3000488,-1687.9000244,5.6999998,90.0000000,-1,1,180);
  794. AddStaticVehicleEx(596,1599.9000244,-1696.0000000,5.6999998,90.0000000,-1,1,180);
  795. AddStaticVehicleEx(596,1600.0000000,-1691.8994141,5.6999998,90.0000000,-1,1,180);
  796. AddStaticVehicleEx(596,1599.8000488,-1700.3000488,5.6999998,90.0000000,-1,1,180);
  797. AddStaticVehicleEx(596,1592.0999756,-1710.8000488,5.6999998,0.0000000,-1,1,180);
  798. AddStaticVehicleEx(596,1587.4000244,-1710.6999512,5.6999998,0.0000000,-1,1,180);
  799. AddStaticVehicleEx(596,1583.5000000,-1710.5999756,5.6999998,0.0000000,-1,1,180);
  800. AddStaticVehicleEx(596,1578.5000000,-1710.5000000,5.6999998,0.0000000,-1,1,180);
  801. AddStaticVehicleEx(596,1574.1999512,-1710.5000000,5.6999998,0.0000000,-1,1,180);
  802. AddStaticVehicleEx(596,1570.1999512,-1710.5000000,5.6999998,0.0000000,-1,1,180);
  803. AddStaticVehicleEx(596,1559.0000000,-1709.6999512,5.6999998,0.0000000,-1,1,180);
  804. AddStaticVehicleEx(528,1562.8000488,-1708.9000244,6.0999999,0.0000000,-1,-1,180);
  805. AddStaticVehicleEx(528,1566.1999512,-1709.4000244,6.0999999,0.0000000,-1,-1,180);
  806. AddStaticVehicleEx(599,1545.0999756,-1680.0999756,6.3000002,90.0000000,-1,1,180);
  807. AddStaticVehicleEx(599,1545.0999756,-1676.1999512,6.3000002,90.0000000,-1,1,180);
  808. AddStaticVehicleEx(599,1545.1992188,-1675.5000000,6.3000002,90.0000000,-1,1,180);
  809. AddStaticVehicleEx(599,1544.9000244,-1672.3000488,6.3000002,90.0000000,-1,1,180);
  810. AddStaticVehicleEx(599,1544.6999512,-1668.0000000,6.3000002,90.0000000,-1,1,180);
  811. AddStaticVehicleEx(426,1293.6999512,-979.7000122,32.5000000,90.0000000,-1,1,180);
  812. AddStaticVehicleEx(426,1294.9000244,-983.2999878,32.5000000,90.0000000,-1,7,180);
  813. AddStaticVehicleEx(426,1293.5000000,-987.0999756,32.5000000,90.0000000,75,7,180);
  814. AddStaticVehicleEx(426,1295.0000000,-990.7000122,32.5000000,90.0000000,75,7,180);
  815. AddStaticVehicleEx(490,1284.0000000,-971.0999756,38.7000008,182.0000000,-1,-1,180);
  816. AddStaticVehicleEx(490,1276.0000000,-975.2998047,38.7000008,181.9995117,-1,-1,180);
  817. AddStaticVehicleEx(490,1280.0996094,-975.0000000,38.7000008,181.9995117,-1,-1,180);
  818. AddStaticVehicleEx(490,1289.1999512,-970.9000244,38.7000008,181.9995117,-1,-1,180);
  819. AddStaticVehicleEx(426,1293.1999512,-1001.4000244,38.2000008,0.0000000,-1,1,180);
  820. AddStaticVehicleEx(426,1289.9000244,-1001.2999878,38.2000008,0.0000000,75,15,180);
  821. AddStaticVehicleEx(426,1286.3000488,-1001.2999878,38.2000008,0.0000000,-1,15,180);
  822. AddStaticVehicleEx(426,1300.5000000,-983.2000122,38.2000008,92.0000000,-1,15,180);
  823. AddStaticVehicleEx(426,1300.0999756,-969.0999756,38.2000008,91.9995117,-1,15,180);
  824. AddStaticVehicleEx(426,1300.5000000,-979.6992188,38.2000008,91.9995117,-1,15,180);
  825. CreateObject(987,1784.5999756,-1589.8000488,12.5000000,0.0000000,0.0000000,266.0000000);
  826. CreateObject(987,1783.6999512,-1601.8000488,12.5000000,0.0000000,0.0000000,353.9954834);
  827. CreateObject(987,1807.4000244,-1602.6999512,12.5000000,0.0000000,0.0000000,43.9904785);
  828. CreateObject(987,1795.5996094,-1603.0000000,12.5000000,0.0000000,0.0000000,1.9885254);
  829. CreateObject(987,1815.8994141,-1594.5000000,12.5000000,0.0000000,0.0000000,87.9840088);
  830. CreateObject(987,1823.6999512,-1547.8000488,12.5000000,0.0000000,0.0000000,169.9864502);
  831. CreateObject(987,1818.8994141,-1570.8994141,12.5000000,0.0000000,0.0000000,77.9864502);
  832. CreateObject(987,1821.2998047,-1559.2998047,12.5000000,0.0000000,0.0000000,77.9864502);
  833. CreateObject(1696,1280.0999756,-998.7000122,35.9000015,4.0000000,0.0000000,270.0000000);
  834. CreateObject(1696,1280.1999512,-993.2000122,35.9000015,3.9990234,0.0000000,270.0000000);
  835. CreateObject(1696,1280.3000488,-987.7000122,35.9000015,3.9990234,0.0000000,270.0000000);
  836. CreateObject(1696,1278.0000000,-998.9000244,34.9000015,3.9990234,0.0000000,270.0000000);
  837. gate = CreateObject(985, 1817.15234, -1578.77026, 13.18835, 0.00000, 0.00000, 259.16129);
  838. gate2 = CreateObject(985, 1588.57971, -1637.87732, 13.01211, 0.00000, 0.00000, 0.75451);
  839. return 1;
  840. }
  841.  
  842. public OnGameModeExit()
  843. {
  844. TextDrawDestroy(CnR1);
  845. TextDrawDestroy(CnR2);
  846. TextDrawDestroy(PD);
  847. TextDrawDestroy(FD);
  848. TextDrawDestroy(CV);
  849. TextDrawDestroy(Textdraw10);
  850. TextDrawDestroy(Textdraw11);
  851. TextDrawDestroy(Textdraw12);
  852. TextDrawDestroy(Textdraw13);
  853. TextDrawDestroy(Textdraw14);
  854. TextDrawDestroy(Textdraw15);
  855. return 1;
  856. }
  857.  
  858. public OnPlayerRequestClass(playerid, classid)
  859. {
  860. TogglePlayerSpectating(playerid, true);
  861. TextDrawShowForPlayer(playerid, PD);
  862. TextDrawShowForPlayer(playerid, CV);
  863. TextDrawShowForPlayer(playerid, FD);
  864. TextDrawShowForPlayer(playerid, CT);
  865. SelectTextDraw(playerid, 0xFF0000FF);
  866. return 1;
  867. }
  868.  
  869. public OnPlayerConnect(playerid)
  870. {
  871. new str[124];
  872. format(str, sizeof(str), "JOIN: %s(%d)", PlayerName(playerid), playerid);
  873. SendClientMessageToAll(0xD4D4D4AA, str);
  874. if(fexist(UserPath(playerid)))
  875. {
  876. INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  877. new string1[250];
  878. format(string1,sizeof(string1), "{FFFFFF}Account name: {00A6FF}%s\n{FFFFFF}Account IP: {00A6FF}%s\n{FFFFFF}Account status: {00FF11}Registered\n\n{FFFFFF}Type in the password to {00A6FF}<{FFFFFF}log-in{00A6FF}>", PlayerName(playerid),PlayerIP(playerid));
  879. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Login",string1,"Login","Quit");
  880. }
  881. else
  882. {
  883. new string2[250];
  884. format(string2,sizeof(string2), "{FFFFFF}Account name: {00A6FF}%s\n{FFFFFF}Account IP: {00A6FF}%s\n{FFFFFF}Account status: {FF0000}Not registered\n\n{FFFFFF}Type in the password to {00A6FF}<{FFFFFF}register{00A6FF}>", PlayerName(playerid),PlayerIP(playerid));
  885. ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"Register",string2,"Register","Quit");
  886. }
  887. //--------------- SETTINGS -----------------
  888. oEdit[playerid] = 0;
  889. oEditID[playerid] = 0;
  890. TeamChoosen[playerid] = false;
  891. FSpawn[playerid] = true;
  892. inside[playerid] = -1;
  893. //--------------- TEXTDRAWs ----------------
  894. TextDrawShowForPlayer(playerid, Textdraw10);
  895. TextDrawShowForPlayer(playerid, Textdraw11);
  896. TextDrawShowForPlayer(playerid, Textdraw12);
  897. TextDrawShowForPlayer(playerid, Textdraw13);
  898. TextDrawShowForPlayer(playerid, Textdraw14);
  899. TextDrawShowForPlayer(playerid, Textdraw15);
  900. TextDrawShowForPlayer(playerid, Textdraw16);
  901. TextDrawShowForPlayer(playerid, Textdraw17);
  902. //--------------------------------------------
  903. for(new x=0; x < MAX_HOUSES; x++)
  904. {
  905. if(strcmp(PlayerName(playerid), H[x][Owner], false) == 0) ownshouse[playerid] = true;
  906. }
  907. return 1;
  908. }
  909.  
  910. public OnPlayerDisconnect(playerid, reason)
  911. {
  912. new str[124];
  913. switch(reason)
  914. {
  915. case 0: format(str,sizeof str,"TIMEOUT: %s(%d)",PlayerName(playerid), playerid);
  916. case 1: format(str,sizeof str,"LEAVE: %s(%d)",PlayerName(playerid), playerid);
  917. case 2: format(str,sizeof str,"KICK: %s(%d)",PlayerName(playerid), playerid);
  918. }
  919. SendClientMessageToAll(0xD4D4D4AA,str);
  920. //--------------- SAVING ----------------
  921. new INI:File = INI_Open(UserPath(playerid));
  922. INI_SetTag(File,"data");
  923. INI_WriteInt(File,"Cash",GetPlayerMoneyEx(playerid));
  924. INI_WriteInt(File,"Score",GetPlayerScore(playerid));
  925. INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
  926. INI_WriteInt(File,"Donor",PlayerInfo[playerid][pDonor]);
  927. INI_WriteInt(File,"Deaths",PlayerInfo[playerid][pDeaths]);
  928. INI_WriteInt(File,"Kills",PlayerInfo[playerid][pKills]);
  929. INI_WriteInt(File,"Banned",PlayerInfo[playerid][pBanned]);
  930. INI_Close(File);
  931. //--------------- SETTINGS ----------------
  932. PlayerInfo[playerid][pAdmin] = 0;
  933. PlayerInfo[playerid][pDonor] = 0;
  934. PlayerInfo[playerid][pBanned] = 0;
  935. PlayerInfo[playerid][pKills] = 0;
  936. PlayerInfo[playerid][pDeaths] = 0;
  937. TeamChoosen[playerid] = false;
  938. FSpawn[playerid] = true;
  939. inside[playerid] = -1;
  940. ownshouse[playerid] = false;
  941. //---------------------------------------------
  942. return 1;
  943. }
  944.  
  945. public OnPlayerSpawn(playerid)
  946. {
  947. if(FSpawn[playerid] == true)
  948. {
  949. new team = GetPlayerTeam(playerid);
  950. TextDrawShowForPlayer(playerid, CnR1);
  951. TextDrawShowForPlayer(playerid, CnR2);
  952. if(team == TEAM_COPS)
  953. {
  954. ShowPlayerDialog(playerid, 15, DIALOG_STYLE_LIST, "Choose your class", "Police officer\nFBI - 100 score\nSWAT - 300 score", "Choose", "");
  955. }
  956. else if(team == TEAM_RESCUE)
  957. {
  958. ShowPlayerDialog(playerid, 16, DIALOG_STYLE_LIST, "Choose your class", "Medic\nFireman", "Choose", "");
  959. }
  960. else if(team == NO_TEAM)
  961. {
  962. ShowPlayerDialog(playerid, 17, DIALOG_STYLE_LIST, "Choose your class", "Robber", "Choose", "");
  963. }
  964. FSpawn[playerid] = false;
  965. }
  966. else
  967. {
  968. GiveClassWeapons(playerid);
  969. }
  970. return 1;
  971. }
  972.  
  973. public OnPlayerDeath(playerid, killerid, reason)
  974. {
  975. new string[128];
  976. if(killerid != INVALID_PLAYER_ID)
  977. {
  978. if(GetPlayerTeam(killerid) == TEAM_COPS)
  979. {
  980. if(GetPlayerWantedLevel(playerid) <= 5)
  981. {
  982. GivePlayerMoneyEx(killerid, 500);
  983. format(string,sizeof(string), "KILL: You have killed suspect %s. +500$", PlayerName(playerid));
  984. SendClientMessage(killerid, 0x4DFF8EAA, string);
  985. }
  986. else if(GetPlayerWantedLevel(playerid) > 5 && GetPlayerWantedLevel(playerid) <= 10)
  987. {
  988. GivePlayerMoneyEx(killerid, 1000);
  989. format(string,sizeof(string), "KILL: You have killed suspect %s. +1000$", PlayerName(playerid));
  990. SendClientMessage(killerid, 0x4DFF8EAA, string);
  991. }
  992. else if(GetPlayerWantedLevel(playerid) > 10 && GetPlayerWantedLevel(playerid) <= 20)
  993. {
  994. GivePlayerMoneyEx(killerid, 1800);
  995. format(string,sizeof(string), "KILL: You have killed suspect %s. +1800$", PlayerName(playerid));
  996. SendClientMessage(killerid, 0x4DFF8EAA, string);
  997. }
  998. }
  999. else if(GetPlayerTeam(killerid) == NO_TEAM)
  1000. {
  1001. if(GetPlayerTeam(playerid) == TEAM_COPS)
  1002. {
  1003. SetPlayerWantedLevel(killerid, GetPlayerWantedLevel(killerid)+5);
  1004. format(string,sizeof(string), "KILL: You have killed police officer %s. Wanted level: %d", PlayerName(playerid), GetPlayerWantedLevel(killerid));
  1005. SendClientMessage(killerid, 0x4DFF8EAA, string);
  1006. }
  1007. else
  1008. {
  1009. SetPlayerWantedLevel(killerid, GetPlayerWantedLevel(killerid)+2);
  1010. format(string,sizeof(string), "KILL: You have killed %s. Wanted level: %d", PlayerName(playerid), GetPlayerWantedLevel(killerid));
  1011. SendClientMessage(killerid, 0x4DFF8EAA, string);
  1012. }
  1013. }
  1014. }
  1015. GivePlayerMoneyEx(playerid, -300);
  1016. SendClientMessage(playerid, 0x4DFF8EAA, "DEATH: You have been shot and transfered to hospital. You paid 400$ to the hospital");
  1017. PlayerInfo[playerid][pDeaths]++;
  1018. PlayerInfo[killerid][pKills]++;
  1019. inside[playerid] = -1;
  1020. return 1;
  1021. }
  1022.  
  1023. public OnVehicleSpawn(vehicleid)
  1024. {
  1025. return 1;
  1026. }
  1027.  
  1028. public OnVehicleDeath(vehicleid, killerid)
  1029. {
  1030. return 1;
  1031. }
  1032.  
  1033. public OnPlayerText(playerid, text[])
  1034. {
  1035. new string[300];
  1036. if(TeamChoosen[playerid] == false)
  1037. {
  1038. if(PlayerInfo[playerid][pMuted])
  1039. {
  1040. SendClientMessage(playerid, 0xFF0000AA, "ERROR: You can't speak while muted.");
  1041. return 0;
  1042. }
  1043. format(string, sizeof(string), "[%d] %s: {FFFFFF}%s", playerid, PlayerName(playerid), text);
  1044. SendClientMessageToAll(GetPlayerColor(playerid), string);
  1045. printf(string);
  1046. return 0;
  1047. }
  1048. return 1;
  1049. }
  1050.  
  1051. public OnPlayerCommandText(playerid, cmdtext[])
  1052. {
  1053. if (strcmp("/mycommand", cmdtext, true, 10) == 0)
  1054. {
  1055. // Do something here
  1056. return 1;
  1057. }
  1058. return 0;
  1059. }
  1060.  
  1061. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  1062. {
  1063. return 1;
  1064. }
  1065.  
  1066. public OnPlayerExitVehicle(playerid, vehicleid)
  1067. {
  1068. return 1;
  1069. }
  1070.  
  1071. public OnPlayerStateChange(playerid, newstate, oldstate)
  1072. {
  1073. return 1;
  1074. }
  1075.  
  1076. public OnPlayerEnterCheckpoint(playerid)
  1077. {
  1078. return 1;
  1079. }
  1080.  
  1081. public OnPlayerLeaveCheckpoint(playerid)
  1082. {
  1083. return 1;
  1084. }
  1085.  
  1086. public OnPlayerEnterRaceCheckpoint(playerid)
  1087. {
  1088. return 1;
  1089. }
  1090.  
  1091. public OnPlayerLeaveRaceCheckpoint(playerid)
  1092. {
  1093. return 1;
  1094. }
  1095.  
  1096. public OnRconCommand(cmd[])
  1097. {
  1098. return 1;
  1099. }
  1100.  
  1101. public OnPlayerRequestSpawn(playerid)
  1102. {
  1103. TextDrawShowForPlayer(playerid, CnR1);
  1104. TextDrawShowForPlayer(playerid, CnR2);
  1105. return 1;
  1106. }
  1107. public OnPlayerEditDynamicObject(playerid, objectid, response, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz)
  1108. {
  1109. new string[128], idx;
  1110. idx = oEditID[playerid];
  1111. if(response == EDIT_RESPONSE_UPDATE)
  1112. {
  1113. SetDynamicObjectPos(objectid, x, y, z);
  1114. SetDynamicObjectRot(objectid, rx, ry, rz);
  1115. }
  1116. else if(response == EDIT_RESPONSE_CANCEL)
  1117. {
  1118. SetDynamicObjectPos(objectid, oPos[playerid][0], oPos[playerid][1], oPos[playerid][2]);
  1119. SetDynamicObjectRot(objectid, oRot[playerid][0], oRot[playerid][1], oRot[playerid][2]);
  1120. oPos[playerid][0] = 0; oPos[playerid][1] = 0; oPos[playerid][2] = 0;
  1121. oRot[playerid][0] = 0; oRot[playerid][1] = 0; oRot[playerid][2] = 0;
  1122. format(string, sizeof(string), " You have canceled editing object ID %d.", idx);
  1123. SendClientMessage(playerid, -1, string);
  1124. }
  1125. else if(response == EDIT_RESPONSE_FINAL)
  1126. {
  1127. SetDynamicObjectPos(objectid, x, y, z);
  1128. SetDynamicObjectRot(objectid, rx, ry, rz);
  1129. if(oEdit[playerid] == 1)
  1130. {
  1131. oldoID = ObjInfo[idx][oModel];
  1132. ObjInfo[idx][oX] = x;
  1133. ObjInfo[idx][oY] = y;
  1134. ObjInfo[idx][oZ] = z;
  1135. ObjInfo[idx][oRX] = rx;
  1136. ObjInfo[idx][oRY] = ry;
  1137. ObjInfo[idx][oRZ] = rz;
  1138. oldodX = ObjInfo[idx][oX];
  1139. oldodY = ObjInfo[idx][oY];
  1140. oldodZ = ObjInfo[idx][oZ];
  1141. oldodRX = ObjInfo[idx][oRX];
  1142. oldodRY = ObjInfo[idx][oRY];
  1143. oldodRZ = ObjInfo[idx][oRZ];
  1144. if(IsValidDynamic3DTextLabel(ObjInfo[idx][oText])) DestroyDynamic3DTextLabel(ObjInfo[idx][oText]);
  1145. if(IsPlayerAdmin(playerid))
  1146. {
  1147. format(string, sizeof(string), "Object ID: %d (Model ID: %d)", idx, ObjInfo[idx][oModel]);
  1148. ObjInfo[idx][oText] = CreateDynamic3DTextLabel(string, 0xFF0000FF, ObjInfo[idx][oX], ObjInfo[idx][oY], ObjInfo[idx][oZ], 10);
  1149. }
  1150. oEdit[playerid] = 0;
  1151. oEditID[playerid] = 0;
  1152. format(string, sizeof(string), " You have finished editing object ID %d's position.", idx);
  1153. SendClientMessage(playerid, -1, string);
  1154. }
  1155. }
  1156. return 1;
  1157. }
  1158. public OnObjectMoved(objectid)
  1159. {
  1160. return 1;
  1161. }
  1162.  
  1163. public OnPlayerObjectMoved(playerid, objectid)
  1164. {
  1165. return 1;
  1166. }
  1167.  
  1168. public OnPlayerPickUpPickup(playerid, pickupid)
  1169. {
  1170. return 1;
  1171. }
  1172.  
  1173. public OnVehicleMod(playerid, vehicleid, componentid)
  1174. {
  1175. return 1;
  1176. }
  1177.  
  1178. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  1179. {
  1180. return 1;
  1181. }
  1182.  
  1183. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  1184. {
  1185. return 1;
  1186. }
  1187.  
  1188. public OnPlayerSelectedMenuRow(playerid, row)
  1189. {
  1190. return 1;
  1191. }
  1192.  
  1193. public OnPlayerExitedMenu(playerid)
  1194. {
  1195. return 1;
  1196. }
  1197.  
  1198. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  1199. {
  1200. return 1;
  1201. }
  1202.  
  1203. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  1204. {
  1205. if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER && onDuty[playerid] == true)
  1206. {
  1207. if (newkeys & KEY_SUBMISSION)
  1208. {
  1209. new Float:vx,Float:vy,Float:vz;
  1210. GetVehicleVelocity(GetPlayerVehicleID(playerid),vx,vy,vz);
  1211. SetVehicleVelocity(GetPlayerVehicleID(playerid), vx * 1.8, vy *1.8, vz * 1.8);
  1212. }
  1213. }
  1214. return 1;
  1215. }
  1216.  
  1217. public OnRconLoginAttempt(ip[], password[], success)
  1218. {
  1219. return 1;
  1220. }
  1221.  
  1222. public OnPlayerUpdate(playerid)
  1223. {
  1224. return 1;
  1225. }
  1226.  
  1227. public OnPlayerStreamIn(playerid, forplayerid)
  1228. {
  1229. return 1;
  1230. }
  1231.  
  1232. public OnPlayerStreamOut(playerid, forplayerid)
  1233. {
  1234. return 1;
  1235. }
  1236.  
  1237. public OnVehicleStreamIn(vehicleid, forplayerid)
  1238. {
  1239. return 1;
  1240. }
  1241.  
  1242. public OnVehicleStreamOut(vehicleid, forplayerid)
  1243. {
  1244. return 1;
  1245. }
  1246.  
  1247. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  1248. {
  1249. switch(dialogid)
  1250. {
  1251. case DIALOG_REGISTER:
  1252. {
  1253. if(!response) return Kick(playerid);
  1254. if(response)
  1255. {
  1256. if(!strlen(inputtext))
  1257. {
  1258. ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "ERROR","{FFFFFF}Wrong user password. Please type another one","Register","Quit");
  1259. }
  1260. new INI:File = INI_Open(UserPath(playerid));
  1261. INI_SetTag(File,"data");
  1262. INI_WriteInt(File,"Password",udb_hash(inputtext));
  1263. INI_WriteInt(File,"Cash",0);
  1264. INI_WriteInt(File,"Score",0);
  1265. INI_WriteInt(File,"Admin",0);
  1266. INI_WriteInt(File,"Donor",0);
  1267. INI_WriteInt(File,"Kills",0);
  1268. INI_WriteInt(File,"Deaths",0);
  1269. INI_Close(File);
  1270. SendClientMessage(playerid, 0x00FF00AA, "Registered!");
  1271. SendClientMessage(playerid, 0x00FF00AA, "You have been rewarded with 1 score and 8000$. Welcome.");
  1272. GivePlayerMoneyEx(playerid, 8000);
  1273. SetPlayerScore(playerid, 1);
  1274. }
  1275. }
  1276. case DIALOG_LOGIN:
  1277. {
  1278. if(!response) return Kick(playerid);
  1279. if(response)
  1280. {
  1281. if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
  1282. {
  1283. if(PlayerInfo[playerid][pBanned] == 0)
  1284. {
  1285. INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  1286. GivePlayerMoneyEx(playerid, PlayerInfo[playerid][pMoney]);
  1287. SetPlayerScore(playerid, PlayerInfo[playerid][pScore]);
  1288. SendClientMessage(playerid, 0x00FF00AA, "Logged in! Welcome back.");
  1289. }
  1290. else if(PlayerInfo[playerid][pBanned] == 1)
  1291. {
  1292. SendClientMessage(playerid, 0xFF0000AA, "This account is detected as BANNED. Make unban apply on forums.");
  1293. Kick(playerid);
  1294. }
  1295. }
  1296. else
  1297. {
  1298. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"ERROR","{FFFFFF}You have typed wrong user password. Please re-type it","Login","Quit");
  1299. }
  1300. }
  1301. }
  1302. }
  1303. if(dialogid == 10)
  1304. {
  1305. switch(listitem)
  1306. {
  1307. case 0:
  1308. {
  1309. ShowPlayerDialog(playerid, 11, DIALOG_STYLE_MSGBOX, "Commands - account", "NOTE: You are responsible for your own account safety!\n\n/changepass - change account password\n/changename - change account name", "Okay", "");
  1310. }
  1311. }
  1312. }
  1313. if(response)
  1314. {
  1315. if(dialogid == 15)
  1316. {
  1317. switch(listitem)
  1318. {
  1319. case 0:
  1320. {
  1321. SetPlayerClasS[playerid] = POLICE;
  1322. SetPlayerInterior(playerid, 0);
  1323. SetPlayerVirtualWorld(playerid, 0);
  1324. SetPlayerPos(playerid, 1568.9299,-1691.4237,5.8906);
  1325. ResetPlayerWeapons(playerid);
  1326. SendClientMessage(playerid, 0x4DFF8EAA, "INFO: You are now Police officer.");
  1327. SetPlayerSkin(playerid, 280);
  1328. SetPlayerColor(playerid, 0x3BB0FFAA);
  1329. ResetPlayerWeapons(playerid);
  1330. GivePlayerWeapon(playerid, 24, 500);
  1331. GivePlayerWeapon(playerid, 3, 5);
  1332. GivePlayerWeapon(playerid, 41, 500);
  1333. GivePlayerWeapon(playerid, 25, 500);
  1334. SetPlayerArmour(playerid, 20);
  1335. }
  1336. case 1:
  1337. {
  1338. if(GetPlayerScore(playerid) < 100) return ShowPlayerDialog(playerid, 15, DIALOG_STYLE_LIST, "Choose your class", "Police officer\nFBI - 100 score\nSWAT - 300 score", "Choose", "");
  1339. {
  1340. SetPlayerClasS[playerid] = FBI;
  1341. SetPlayerInterior(playerid, 0);
  1342. SetPlayerVirtualWorld(playerid, 0);
  1343. SetPlayerPos(playerid, 1332.1984,-984.2341,33.8966);
  1344. ResetPlayerWeapons(playerid);
  1345. SendClientMessage(playerid, 0x4DFF8EAA, "INFO: You are now FBI agent.");
  1346. SetPlayerSkin(playerid, 286);
  1347. SetPlayerColor(playerid, 0x0099FFAA);
  1348. ResetPlayerWeapons(playerid);
  1349. GivePlayerWeapon(playerid, 24, 500);
  1350. GivePlayerWeapon(playerid, 3, 5);
  1351. GivePlayerWeapon(playerid, 29, 500);
  1352. GivePlayerWeapon(playerid, 41, 500);
  1353. GivePlayerWeapon(playerid, 27, 100);
  1354. SetPlayerArmour(playerid, 50);
  1355. }
  1356. }
  1357. case 2:
  1358. {
  1359. if(GetPlayerScore(playerid) < 500) return ShowPlayerDialog(playerid, 15, DIALOG_STYLE_LIST, "Choose your class", "Police officer\nFBI - 100 score\nSWAT - 300 score", "Choose", "");
  1360. {
  1361. SetPlayerClasS[playerid] = SWAT;
  1362. SetPlayerInterior(playerid, 0);
  1363. SetPlayerVirtualWorld(playerid, 0);
  1364. SetPlayerPos(playerid, 1799.2545,-1578.3059,14.0791);
  1365. ResetPlayerWeapons(playerid);
  1366. SendClientMessage(playerid, 0x4DFF8EAA, "INFO: You are now SWAT Operative.");
  1367. SetPlayerSkin(playerid, 285);
  1368. SetPlayerColor(playerid, 0x0288E0AA);
  1369. ResetPlayerWeapons(playerid);
  1370. GivePlayerWeapon(playerid, 24, 500);
  1371. GivePlayerWeapon(playerid, 3, 5);
  1372. GivePlayerWeapon(playerid, 29, 500);
  1373. GivePlayerWeapon(playerid, 41, 500);
  1374. GivePlayerWeapon(playerid, 27, 200);
  1375. GivePlayerWeapon(playerid, 31, 300);
  1376. SetPlayerArmour(playerid, 100);
  1377. }
  1378. }
  1379. }
  1380. }
  1381. }
  1382. if(response)
  1383. {
  1384. if(dialogid == 16)
  1385. {
  1386. switch(listitem)
  1387. {
  1388. case 0:
  1389. {
  1390. SetPlayerClasS[playerid] = MEDIC;
  1391. SetPlayerInterior(playerid, 0);
  1392. SetPlayerVirtualWorld(playerid, 0);
  1393. SetPlayerPos(playerid, 1799.2545,-1578.3059,14.0791);
  1394. ResetPlayerWeapons(playerid);
  1395. SendClientMessage(playerid, 0x4DFF8EAA, "INFO: You are now Medic.");
  1396. SetPlayerSkin(playerid, 276);
  1397. }
  1398. case 1:
  1399. {
  1400. SetPlayerClasS[playerid] = FIREMAN;
  1401. ResetPlayerWeapons(playerid);
  1402. SendClientMessage(playerid, 0x4DFF8EAA, "INFO: You are now Fireman.");
  1403. SetPlayerSkin(playerid, 279);
  1404. }
  1405. }
  1406. }
  1407. }
  1408. if(response)
  1409. {
  1410. if(dialogid == 17)
  1411. {
  1412. switch(listitem)
  1413. {
  1414. case 0:
  1415. {
  1416. SetPlayerClasS[playerid] = ROBBER;
  1417. ResetPlayerWeapons(playerid);
  1418. SendClientMessage(playerid, 0x4DFF8EAA, "INFO: You are now Robber.");
  1419. SetPlayerSkin(playerid, 86);
  1420. }
  1421. }
  1422. }
  1423. }
  1424. if(response)
  1425. {
  1426. if(dialogid == 20)
  1427. {
  1428. switch(listitem)
  1429. {
  1430. case 0:
  1431. {
  1432. SetPlayerSkin(playerid, 164);
  1433. SetPlayerColor(playerid, 0xFFFFFFAA);
  1434. SendClientMessage(playerid, -1, "You have put your badge in your pocket.");
  1435. }
  1436. case 1:
  1437. {
  1438. SetPlayerSkin(playerid, 188);
  1439. SetPlayerColor(playerid, 0xFFFFFFAA);
  1440. SendClientMessage(playerid, -1, "You have put your badge in your pocket.");
  1441. }
  1442. case 2:
  1443. {
  1444. SetPlayerSkin(playerid, 240);
  1445. SetPlayerColor(playerid, 0xFFFFFFAA);
  1446. SendClientMessage(playerid, -1, "You have put your badge in your pocket.");
  1447. }
  1448. case 3:
  1449. {
  1450. SetPlayerSkin(playerid, 286);
  1451. SetPlayerColor(playerid, 0x0099FFAA);
  1452. }
  1453. case 4:
  1454. {
  1455. SetPlayerColor(playerid, 0x0099FFAA);
  1456. SendClientMessage(playerid, -1, "You took out your badge and showed it.");
  1457. }
  1458. }
  1459. }
  1460. }
  1461. return 1;
  1462. }
  1463.  
  1464. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  1465. {
  1466. return 1;
  1467. }
  1468. public OnPlayerClickTextDraw(playerid, Text:clickedid)
  1469. {
  1470. if(_:clickedid != INVALID_TEXT_DRAW)
  1471. {
  1472. if(clickedid == PD)
  1473. {
  1474. TogglePlayerSpectating(playerid, false);
  1475. SetPlayerTeam(playerid, TEAM_COPS);
  1476. SetSpawnInfo(playerid, TEAM_COPS, 280, 1568.9299,-1691.4237,5.8906, 180, 0, 0, 0, 0, 0, 0);
  1477. SendClientMessage(playerid, 0x4DFF8EAA, "INFO: You choose to be in Law divisions");
  1478. }
  1479. else if(clickedid == CV)
  1480. {
  1481. TogglePlayerSpectating(playerid, false);
  1482. SetPlayerTeam(playerid, NO_TEAM);
  1483. SetSpawnInfo(playerid, NO_TEAM, 73, 1826.5569,-1092.2699,23.9709, 180, 0, 0, 0, 0, 0, 0);
  1484. SendClientMessage(playerid, 0x4DFF8EAA, "INFO: You choose to be civilian");
  1485. }
  1486. else if(clickedid == FD)
  1487. {
  1488. TogglePlayerSpectating(playerid, false);
  1489. SetPlayerTeam(playerid, TEAM_RESCUE);
  1490. SetSpawnInfo(playerid, TEAM_RESCUE, 276, 2033.8066,-1404.3730,17.2610, 180, 0, 0, 0, 0, 0, 0);
  1491. SendClientMessage(playerid, 0x4DFF8EAA, "INFO: You choose to be in Fire & Rescue");
  1492. }
  1493. TextDrawHideForPlayer(playerid, PD);
  1494. TextDrawHideForPlayer(playerid, CV);
  1495. TextDrawHideForPlayer(playerid, FD);
  1496. TextDrawHideForPlayer(playerid, CT);
  1497. TextDrawHideForPlayer(playerid, Textdraw10);
  1498. TextDrawHideForPlayer(playerid, Textdraw11);
  1499. TextDrawHideForPlayer(playerid, Textdraw12);
  1500. TextDrawHideForPlayer(playerid, Textdraw13);
  1501. TextDrawHideForPlayer(playerid, Textdraw14);
  1502. TextDrawHideForPlayer(playerid, Textdraw15);
  1503. TextDrawHideForPlayer(playerid, Textdraw16);
  1504. TextDrawHideForPlayer(playerid, Textdraw17);
  1505. CancelSelectTextDraw(playerid);
  1506. TeamChoosen[playerid] = true;
  1507. }
  1508. return 1;
  1509. }
  1510. //------------------------------------------------------------------------------
  1511. //------------------------ PLAYER COMMANDS -------------------------------------
  1512. //------------------------------------------------------------------------------
  1513. CMD:enter(playerid, params[])
  1514. {
  1515. if(inside[playerid] != -1) return SendClientMessage(playerid, -1, "You're already inside a house! ");
  1516. for(new x=0; x < MAX_HOUSES; x++)
  1517. {
  1518. if(IsPlayerInRangeOfPoint(playerid, 2.0, H[x][Entry][0], H[x][Entry][1], H[x][Entry][2]))
  1519. {
  1520. if(H[x][Locked] == false)
  1521. {
  1522. new Float:Pos[3], inte;
  1523. GetHouseExit(x, Pos[0], Pos[1], Pos[2], inte);
  1524. SetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
  1525. SetPlayerInterior(playerid, inte);
  1526. SetPlayerVirtualWorld(playerid, x+2500);
  1527. inside[playerid] = x;
  1528. SendClientMessage(playerid, -1, "You entered this house [It's unlocked...]");
  1529. SendClientMessage(playerid, -1, "Use /exit to leave the house! ");
  1530. }
  1531. else
  1532. {
  1533. new name[24];
  1534. GetPlayerName(playerid, name, 24);
  1535. if(strcmp(name, H[x][Owner], false) == 0)
  1536. {
  1537. new Float:Pos[3], inte;
  1538. GetHouseExit(x, Pos[0], Pos[1], Pos[2], inte);
  1539. SetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
  1540. SetPlayerInterior(playerid, inte);
  1541. SetPlayerVirtualWorld(playerid, x+2500);
  1542. SendClientMessage(playerid, -1, "You entered this house [It's yours, but it's locked!]");
  1543. SendClientMessage(playerid, -1, "Use /exit to leave the house! ");
  1544. inside[playerid] = x;
  1545. }
  1546. else return SendClientMessage(playerid, -1, "This house is locked and you're not the owner! ");
  1547. }
  1548. }
  1549. }
  1550. return 1;
  1551. }
  1552.  
  1553. CMD:exit(playerid, params[])
  1554. {
  1555. if(inside[playerid] == -1) return SendClientMessage(playerid, -1, "You're not inside any house...");
  1556. new houseid = inside[playerid];
  1557. new Float:Pos[3], inte;
  1558. GetHouseExit(houseid, Pos[0], Pos[1], Pos[2], inte);
  1559. if(!IsPlayerInRangeOfPoint(playerid, 3.0, Pos[0], Pos[1], Pos[2])) return SendClientMessage(playerid, -1, "You need to be near the exit to exit! ");
  1560. else
  1561. {
  1562. SetPlayerInterior(playerid, 0);
  1563. inside[playerid] = -1;
  1564. SetPlayerVirtualWorld(playerid, 0);
  1565. SetPlayerPos(playerid, H[houseid][Entry][0], H[houseid][Entry][1], H[houseid][Entry][2]);
  1566. }
  1567. return 1;
  1568. }
  1569.  
  1570. CMD:reloadhouse(playerid, params[])
  1571. {
  1572. if(!IsPlayerAdmin(playerid)) SendClientMessage(playerid, -1, "you gotta be admin to use dat! ");
  1573. new houseid;
  1574. if(sscanf(params, "d", houseid)) return SendClientMessage(playerid, -1, "/reloadhouse [house id]");
  1575. LoadHouse(houseid);
  1576. return 1;
  1577. }
  1578.  
  1579. CMD:createhouse(playerid, params[])
  1580. {
  1581. if(!IsPlayerAdmin(playerid)) SendClientMessage(playerid, -1, "you gotta be admin to use dat! ");
  1582. new type[80], htype, value;
  1583. if(sscanf(params, "s[40]d", type, value)) SendClientMessage(playerid, -1, "/createhouse [type] [value]");
  1584. if(strcmp(type, "verysmall") == 0) htype = VERY_SMALL;
  1585. else if(strcmp(type, "small") == 0) htype = SMALL;
  1586. else if(strcmp(type, "medium") == 0) htype = MEDIUM;
  1587. else if(strcmp(type, "big") == 0) htype = BIG;
  1588. else if(strcmp(type, "verybig") == 0) htype = VERY_BIG;
  1589. else if(strcmp(type, "large") == 0) htype = LARGE;
  1590. else if(strcmp(type, "extralarge") == 0) htype = EXTRA_LARGE;
  1591. new Float:Pos[3];
  1592. GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
  1593. CreateHouse(Pos[0], Pos[1], Pos[2], htype, value);
  1594. return 1;
  1595. }
  1596.  
  1597. CMD:houselock(playerid, params[])
  1598. {
  1599. if(inside[playerid] == -1) return SendClientMessage(playerid, -1, "you need to be inside your house to use this cmd! ");
  1600. else
  1601. {
  1602. new houseid = inside[playerid];
  1603. new name[24]; GetPlayerName(playerid, name, 24);
  1604. if(strcmp(name, H[houseid][Owner], false) == 0)
  1605. {
  1606. if(H[houseid][Locked] == true)
  1607. {
  1608. H[houseid][Locked] = false;
  1609. SendClientMessage(playerid, -1, "house unlocked");
  1610. }
  1611. else
  1612. {
  1613. H[houseid][Locked] = true;
  1614. SendClientMessage(playerid, -1, "house locked");
  1615. }
  1616. SaveHouse(houseid);
  1617.  
  1618. }
  1619. else return SendClientMessage(playerid, -1, "this aint yo' house");
  1620. }
  1621. return 1;
  1622. }
  1623.  
  1624. CMD:housename(playerid, params[])
  1625. {
  1626. if(inside[playerid] == -1) return SendClientMessage(playerid, -1, "you need to be inside your house to use this cmd! ");
  1627. else
  1628. {
  1629. new houseid = inside[playerid];
  1630. new name[24]; GetPlayerName(playerid, name, 24);
  1631. if(strcmp(name, H[houseid][Owner], false) == 0)
  1632. {
  1633. new nem[80];
  1634. if(sscanf(params, "s[80]", nem)) return SendClientMessage(playerid, -1, "/housename [new name]");
  1635. else
  1636. {
  1637. if(isnull(nem)) return SendClientMessage(playerid, -1, "can't be empty, fill smth pls");
  1638. else
  1639. {
  1640. format(H[houseid][Name], 80, "%s", nem);
  1641. SendClientMessage(playerid, -1, "house name updated");
  1642. SaveHouse(houseid);
  1643. }
  1644. }
  1645. }
  1646. }
  1647. return 1;
  1648. }
  1649.  
  1650. CMD:buyhouse(playerid, params[])
  1651. {
  1652. if(inside[playerid] == -1) return SendClientMessage(playerid, -1, "you need to be inside a house to use this cmd! ");
  1653. else
  1654. {
  1655. new name[24]; GetPlayerName(playerid, name, 24);
  1656. new houseid = inside[playerid];
  1657. if(strcmp(H[houseid][Owner], "Unowned", false) != 0) return SendClientMessage(playerid, -1, "this house is already owned! ");
  1658. new cast = H[houseid][Value];
  1659. if(ownshouse[playerid] == true) return SendClientMessage(playerid, -1, "u already own house");
  1660. if(GetPlayerMoneyEx(playerid) < cast) return SendClientMessage(playerid, -1, "you dont have enough money to buy this house! ");
  1661. else if(GetPlayerMoneyEx(playerid) >= cast)
  1662. {
  1663. GivePlayerMoneyEx(playerid, -cast);
  1664. format(H[houseid][Owner], 24, "%s", name);
  1665. format(H[houseid][Name], 80, "My house");
  1666. H[houseid][Locked] = false;
  1667. SendClientMessage(playerid, -1, "congrats, you have bought this house! ");
  1668. SaveHouse(houseid);
  1669. }
  1670. }
  1671. return 1;
  1672. }
  1673.  
  1674. CMD:sellhouse(playerid, params[])
  1675. {
  1676. if(inside[playerid] == -1) return SendClientMessage(playerid, -1, "you need to be inside a house to use this cmd! ");
  1677. else
  1678. {
  1679. new name[24]; GetPlayerName(playerid, name, 24);
  1680. new houseid = inside[playerid];
  1681. if(strcmp(H[houseid][Owner], name, false) != 0) return SendClientMessage(playerid, -1, "you dont own this house");
  1682. new cast = H[houseid][Value];
  1683. GivePlayerMoneyEx(playerid, cast);
  1684. format(H[houseid][Owner], 24, "Unowned");
  1685. format(H[houseid][Name], 80, "For sale");
  1686. H[houseid][Locked] = false;
  1687. ownshouse[playerid] = false;
  1688. SendClientMessage(playerid, -1, "congrats, you have sold this house! ");
  1689. SaveHouse(houseid);
  1690. }
  1691. return 1;
  1692. }
  1693. CMD:undercover(playerid,params[])
  1694. {
  1695. if(GetPlayerTeam(playerid) == TEAM_COPS && SetPlayerClasS[playerid] == FBI)
  1696. {
  1697. ShowPlayerDialog(playerid, 20, DIALOG_STYLE_LIST, "Choose option", "Security\nNormal green shirt/trousers\nBlack shirt, pants\nFBI Suit\n• Show badge", "Choose", "Exit");
  1698. }
  1699. return 1;
  1700. }
  1701. CMD:sb(playerid,params[])
  1702. {
  1703. if(GetPlayerTeam(playerid) == TEAM_COPS && SetPlayerClasS[playerid] == FBI)
  1704. {
  1705. SetPlayerColor(playerid, 0x0099FFAA);
  1706. SendClientMessage(playerid, -1, "You took out your badge and showed it.");
  1707. }
  1708. return 1;
  1709. }
  1710. CMD:swatgates(playerid,params[])
  1711. {
  1712. if(IsPlayerInRangeOfPoint(playerid, 5.0, 1816.07092, -1586.16785, 13.16283))
  1713. {
  1714. if(gateopen == false)
  1715. {
  1716. MoveObject(gate, 1816.07092, -1586.16785, 13.16283, 2.0,0.00000, 0.00000, 266.77725);
  1717. gateopen = true;
  1718. }
  1719. else
  1720. {
  1721. MoveObject(gate, 1817.23669, -1578.80579, 13.16283, 2.0,0.00000, 0.00000, 259.01465);
  1722. gateopen = false;
  1723. }
  1724. }
  1725. return 1;
  1726. }
  1727. CMD:pdgates(playerid,params[])
  1728. {
  1729. if(IsPlayerInRangeOfPoint(playerid, 5.0, 1588.57971, -1637.87732, 13.01211))
  1730. {
  1731. if(gateopen == false)
  1732. {
  1733. MoveObject(gate2, 1596.24890, -1637.85986, 13.01211, 2.0, 0.00000, 0.00000, 0.75451);
  1734. gateopen = true;
  1735. }
  1736. else
  1737. {
  1738. MoveObject(gate2, 1588.57971, -1637.87732, 13.01211, 2.0, 0.00000, 0.00000, 0.75451);
  1739. gateopen = false;
  1740. }
  1741. }
  1742. return 1;
  1743. }
  1744. CMD:changeclass(playerid,params[])
  1745. {
  1746. new team = GetPlayerTeam(playerid);
  1747. if(team == TEAM_COPS)
  1748. {
  1749. ShowPlayerDialog(playerid, 15, DIALOG_STYLE_LIST, "Choose your class", "Police officer\nFBI - 100 score\nSWAT - 300 score", "Choose", "");
  1750. }
  1751. else if(team == TEAM_RESCUE)
  1752. {
  1753. ShowPlayerDialog(playerid, 16, DIALOG_STYLE_LIST, "Choose your class", "Medic\nFireman", "Choose", "");
  1754. }
  1755. else if(team == NO_TEAM)
  1756. {
  1757. ShowPlayerDialog(playerid, 17, DIALOG_STYLE_LIST, "Choose your class", "Robber", "Choose", "");
  1758. }
  1759. return 1;
  1760. }
  1761. CMD:su(playerid, params[])
  1762. {
  1763. if(GetPlayerTeam(playerid) == TEAM_COPS)
  1764. {
  1765. new player1, reason[500], string[124], string2[124];
  1766. new Float:x, Float:y, Float:z;
  1767. if(sscanf(params,"us[500]", player1, reason)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /su [ID/Name] [reason]");
  1768. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  1769. GetPlayerPos(player1, x, y, z);
  1770. if(IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z))
  1771. {
  1772. SetPlayerWantedLevel(player1, GetPlayerWantedLevel(player1)+1);
  1773. format(string,sizeof(string), "POLICE: You have been suspected by Officer %s(%d) for %s", PlayerName(playerid), playerid, reason);
  1774. SendClientMessage(player1, 0x00A6FFAA, string);
  1775. format(string2,sizeof(string2), "You have suspected %s for %s", PlayerName(player1), reason);
  1776. SendClientMessage(player1, 0x4DFF8EAA, string2);
  1777. }
  1778. }
  1779. else return SendClientMessage(playerid, 0xFF0000AA, "ERROR: Only police can use this command");
  1780. return 1;
  1781. }
  1782. CMD:arrest(playerid, params[])
  1783. {
  1784. new player1, string[124], string2[124];
  1785. if(GetPlayerTeam(playerid) == TEAM_COPS && GetPlayerWantedLevel(player1) >= 1)
  1786. {
  1787. if(sscanf(params,"u", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /arrest [ID/Name]");
  1788. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  1789. SetPlayerWantedLevel(player1, 0);
  1790. format(string,sizeof(string), "POLICE: You have been arrested by Officer %s(%d)", PlayerName(playerid), playerid);
  1791. SendClientMessage(player1, 0x00A6FFAA, string);
  1792. format(string2,sizeof(string2), "You have arrested %s", PlayerName(player1));
  1793. SendClientMessage(player1, 0x4DFF8EAA, string2);
  1794. SetPlayerInterior(player1, 10);
  1795. SetPlayerPos(player1, 215.6342,114.2328,999.0156);
  1796. }
  1797. else return SendClientMessage(playerid, 0xFF0000AA, "ERROR: Only police can use this command ON WANTED players");
  1798. return 1;
  1799. }
  1800. CMD:cmds(playerid, params[])
  1801. {
  1802. ShowPlayerDialog(playerid, 10, DIALOG_STYLE_LIST, "Commands", "{FF0000}• {FFFFFF}Account\n{FF0000}• {FFFFFF}Foot\n{FF0000}• {FFFFFF}Vehicle\n{FF0000}• {FFFFFF}House\n{FF0000}• {FFFFFF}Business", "Choose", "Exit");
  1803. return 1;
  1804. }
  1805. CMD:veh(playerid, params[])
  1806. {
  1807. new veh[24];
  1808. if(sscanf(params, "s[24]", veh)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /veh [name]");
  1809. for(new v; v < 212; v++)
  1810. {
  1811. if(strfind(VehicleNames[v], veh, true) != -1)
  1812. {
  1813. vehicle = v + 400; break;
  1814. }
  1815. }
  1816. if(vehicle == -1) vehicle = strval(veh);
  1817. if(vehicle < 400 || vehicle > 611) return SendClientMessage(playerid, -1, "Enter a valid vehicle name or an ID between 400 and 611!");
  1818.  
  1819. new Float:PosS[4];
  1820. if(IsPlayerInAnyVehicle(playerid))
  1821. {
  1822. GetVehiclePos(GetPlayerVehicleID(playerid), PosS[0], PosS[1], PosS[2]);
  1823. GetVehicleZAngle(GetPlayerVehicleID(playerid), PosS[3]);
  1824. }
  1825. else
  1826. {
  1827. GetPlayerPos(playerid, PosS[0], PosS[1], PosS[2]);
  1828. GetPlayerFacingAngle(playerid, PosS[3]);
  1829. }
  1830. PutPlayerInVehicle(playerid, CreateVehicle(vehicle, PosS[0], PosS[1], PosS[2], PosS[3], 0, 1, 120), 0);
  1831. return 1;
  1832. }
  1833. CMD:siren(playerid, params[])
  1834. {
  1835. new VID = GetPlayerVehicleID(playerid);
  1836. if(GetPlayerTeam(playerid) == TEAM_COPS && SetPlayerClasS[playerid] == FBI || SetPlayerClasS[playerid] == SWAT)
  1837. {
  1838. if(Siren[VID] == true)
  1839. {
  1840. SendClientMessage(playerid, 0xFF0000AA, "Siren has been taken down from dashboard");
  1841. Siren[VID] = false;
  1842. DestroyObject(SirenObject[VID]);
  1843. }
  1844. else if(Siren[VID] == false)
  1845. {
  1846. Siren[VID] = true;
  1847. SirenObject[VID] = CreateObject(18646, 10.0, 10.0, 10.0, 0, 0, 0);
  1848. EditObject(playerid, SirenObject[VID]);
  1849. AttachObjectToVehicle(SirenObject[VID], VID, 0.3479, 0.6826, 0.4010, 0.0, 0.1, 0.0);
  1850. }
  1851. }
  1852. else return SendClientMessage(playerid, 0xFF0000AA, "ERROR: Only FBI and SWAT operatives may use sirens.");
  1853. return 1;
  1854. }
  1855. //------------------------------------------------------------------------------
  1856. //------------------------ ADMIN COMMANDS --------------------------------------
  1857. //------------------------------------------------------------------------------
  1858. CMD:maptool(playerid, params[])
  1859. {
  1860. if(IsPlayerAdmin(playerid))
  1861. {
  1862. SendClientMessage(playerid, 0xFF78FDAA, "_____________________________________________________");
  1863. SendClientMessage(playerid, 0xF200EEAA, "* Mapper Commands: {FFFFFF}/co - CreateObject | /eo - EditObject | /delo - DeleteObject");
  1864. SendClientMessage(playerid, 0xF200EEAA, "* Mapper Commands: {FFFFFF}/nearob, /dobj - DuplicateObject | /gotoo - TP to object | /saveobjects");
  1865. SendClientMessage(playerid, 0xFF78FDAA, "_____________________________________________________");
  1866. }
  1867. return 1;
  1868. }
  1869.  
  1870. CMD:co(playerid, params[])
  1871. {
  1872. new string[128], object;
  1873. if(IsPlayerAdmin(playerid))
  1874. {
  1875. if(sscanf(params, "i", object)) return SendClientMessage(playerid, -1, "[Usage]: /createobj [objectid]");
  1876.  
  1877. for(new idx=1; idx<MAX_OBJ; idx++)
  1878. {
  1879. if(!ObjInfo[idx][oModel])
  1880. {
  1881. GetPlayerPos(playerid, ObjInfo[idx][oX], ObjInfo[idx][oY], ObjInfo[idx][oZ]);
  1882. ObjInfo[idx][oModel] = object;
  1883. oldoID = ObjInfo[idx][oModel];
  1884. oldodX = ObjInfo[idx][oX];
  1885. oldodY = ObjInfo[idx][oY];
  1886. oldodZ = ObjInfo[idx][oZ];
  1887. oldodRX = ObjInfo[idx][oRX];
  1888. oldodRY = ObjInfo[idx][oRY];
  1889. oldodRZ = ObjInfo[idx][oRZ];
  1890. ObjInfo[idx][oX] = ObjInfo[idx][oX] + 2;
  1891. ObjInfo[idx][oY] = ObjInfo[idx][oY] + 2;
  1892. ObjInfo[idx][oRX] = 0;
  1893. ObjInfo[idx][oRY] = 0;
  1894. ObjInfo[idx][oRZ] = 0;
  1895. // Creating
  1896. ObjInfo[idx][obj] = CreateDynamicObject(ObjInfo[idx][oModel], ObjInfo[idx][oX], ObjInfo[idx][oY], ObjInfo[idx][oZ], ObjInfo[idx][oRX], ObjInfo[idx][oRY], ObjInfo[idx][oRZ]);
  1897. if(IsPlayerAdmin(playerid))
  1898. {
  1899. format(string, sizeof(string), "Object ID: %d (Model ID: %d)", idx, ObjInfo[idx][oModel]);
  1900. ObjInfo[idx][oText] = CreateDynamic3DTextLabel(string, 0xFF0000FF, ObjInfo[idx][oX], ObjInfo[idx][oY], ObjInfo[idx][oZ], 10);
  1901. SendClientMessage(playerid, -1, "Object created");
  1902. }
  1903. // Text
  1904. idx = MAX_OBJ;
  1905. }
  1906. }
  1907. }
  1908. return 1;
  1909. }
  1910. CMD:dobj(playerid, params[])
  1911. {
  1912. new string[128] ,idx;
  1913. if(IsPlayerAdmin(playerid))
  1914. {
  1915. for(idx=1; idx<MAX_OBJ; idx++)
  1916. {
  1917. if(!ObjInfo[idx][oModel])
  1918. {
  1919. ObjInfo[idx][oModel] = oldoID;
  1920. ObjInfo[idx][oX] = oldodX;
  1921. ObjInfo[idx][oY] = oldodY;
  1922. ObjInfo[idx][oZ] = oldodZ;
  1923. ObjInfo[idx][oRX] = oldodRX;
  1924. ObjInfo[idx][oRY] = oldodRY;
  1925. ObjInfo[idx][oRZ] = oldodRZ;
  1926. // Creating
  1927. ObjInfo[idx][obj] = CreateDynamicObject(oldoID, oldodX, oldodY, oldodZ, oldodRX, oldodRY, oldodRZ);
  1928. if(IsPlayerAdmin(playerid))
  1929. {
  1930. ObjInfo[idx][oText] = CreateDynamic3DTextLabel(string, 0xFF0000FF, oldodX, oldodY, oldodZ, 10);
  1931. }
  1932. // Text
  1933. idx = MAX_OBJ;
  1934. }
  1935. }
  1936. }
  1937. return 1;
  1938. }
  1939. CMD:nearo(playerid, params[])
  1940. {
  1941. new string[128];
  1942. if(IsPlayerAdmin(playerid))
  1943. {
  1944. for(new idx=1; idx<MAX_OBJ; idx++)
  1945. {
  1946. if(IsPlayerInRangeOfPoint(playerid, 5, ObjInfo[idx][oX], ObjInfo[idx][oY], ObjInfo[idx][oZ]))
  1947. {
  1948. format(string, sizeof(string), "Nearest Object ID: %d", idx);
  1949. SendClientMessage(playerid, -1, string);
  1950. return 1;
  1951. }
  1952. }
  1953. SendClientMessage(playerid, -1, "You are not near a object!");
  1954. }
  1955. return 1;
  1956. }
  1957.  
  1958. CMD:eo(playerid, params[])
  1959. {
  1960. new string[128], idx;
  1961. if(IsPlayerAdmin(playerid))
  1962. {
  1963. if(sscanf(params, "i", idx)) return SendClientMessage(playerid, -1, "[Usage]: /editobj [objectid]");
  1964. if(!ObjInfo[idx][oModel]) return SendClientMessage(playerid, -1, "Invalid object id.");
  1965. oEdit[playerid] = 1;
  1966. oEditID[playerid] = idx;
  1967. GetDynamicObjectPos(ObjInfo[idx][obj], oPos[playerid][0], oPos[playerid][1], oPos[playerid][2]);
  1968. GetDynamicObjectRot(ObjInfo[idx][obj], oRot[playerid][0], oRot[playerid][1], oRot[playerid][2]);
  1969. EditDynamicObject(playerid, ObjInfo[idx][obj]);
  1970. format(string, sizeof(string), " You are now editing object ID %d's position.", idx);
  1971. SendClientMessage(playerid, -1, string);
  1972. }
  1973. return 1;
  1974. }
  1975.  
  1976. CMD:delo(playerid, params[])
  1977. {
  1978. new idx;
  1979. if(IsPlayerAdmin(playerid))
  1980. {
  1981. if(sscanf(params, "i", idx)) return SendClientMessage(playerid, -1, "[Usage]: /deleteobj [objid]");
  1982. if(!ObjInfo[idx][oModel]) return SendClientMessage(playerid, -1, "Invalid object id.");
  1983. ObjInfo[idx][oModel] = 0;
  1984. ObjInfo[idx][oX] = 0;
  1985. ObjInfo[idx][oY] = 0;
  1986. ObjInfo[idx][oZ] = 0;
  1987. ObjInfo[idx][oRX] = 0;
  1988. ObjInfo[idx][oRY] = 0;
  1989. ObjInfo[idx][oRZ] = 0;
  1990. DestroyDynamicObject(ObjInfo[idx][obj]);
  1991. DestroyDynamic3DTextLabel(ObjInfo[idx][oText]);
  1992. }
  1993. return 1;
  1994. }
  1995.  
  1996. CMD:gotoobj(playerid, params[])
  1997. {
  1998. if(IsPlayerAdmin(playerid))
  1999. {
  2000. new idx, string[128];
  2001. if(sscanf(params, "i", idx)) return SendClientMessage(playerid, -1, "[Usage]: /gotoobj [objectid]");
  2002. if(!ObjInfo[idx][oModel]) return SendClientMessage(playerid, -1, "Invalid object id.");
  2003. SetPlayerPos(playerid, ObjInfo[idx][oX], ObjInfo[idx][oY], ObjInfo[idx][oZ]);
  2004. format(string, sizeof(string), "You have teleported to object ID %d.", idx);
  2005. SendClientMessage(playerid, -1, string);
  2006. }
  2007. return 1;
  2008. }
  2009.  
  2010. CMD:saveobjects(playerid, params[])
  2011. {
  2012. if(IsPlayerAdmin(playerid))
  2013. {
  2014. new string[128];
  2015. SendClientMessageToAll(0xFF0000AA, "** All objects have been saved! **");
  2016. SaveObjects();
  2017. SaveObjects2();
  2018. }
  2019. return 1;
  2020. }
  2021. //------------------------------------------------------------------------------
  2022. //------------------------------------------------------------------------------
  2023. //------------------------------------------------------------------------------
  2024. CMD:cc(playerid,params[])
  2025. {
  2026. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2027. {
  2028. for(new i = 0; i < 250; i++) SendClientMessageToAll(0x00000000," ");
  2029. SendClientMessageToAll(0xFF0000AA, "Chat has been cleared");
  2030. }
  2031. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2032. return 1;
  2033. }
  2034. CMD:a(playerid,params[])
  2035. {
  2036. new string[128],text[200];
  2037. if(PlayerInfo[playerid][pAdmin] >= 1 || IsPlayerAdmin(playerid))
  2038. {
  2039. if(sscanf(params,"s[200]", text)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /a [text]");
  2040. format(string,sizeof(string),"(Admin Chat): %s(%d): %s",PlayerName(playerid), playerid, text);
  2041. foreach(Player, i)
  2042. {
  2043. if(IsPlayerConnected(i) && PlayerInfo[i][pAdmin] >= 1 || IsPlayerAdmin(i)) SendClientMessage(i, 0x7FFF00AA, string);
  2044. }
  2045. printf(string);
  2046. }
  2047. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2048. return 1;
  2049. }
  2050.  
  2051. CMD:spec(playerid, params[])
  2052. {
  2053. new player1;
  2054. if(PlayerInfo[playerid][pAdmin] >= 1 || IsPlayerAdmin(playerid))
  2055. {
  2056. if(sscanf(params,"u", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /spec [playerid]");
  2057. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2058. new str[500];
  2059. format(str, sizeof(str),"> [ACMD]: You are now spectating %s", PlayerName(player1));
  2060. SendClientMessage(playerid, -1, str);
  2061. TargetCMDMessage(playerid, player1,"Spec");
  2062. TogglePlayerSpectating(playerid, true);
  2063. if(!IsPlayerInAnyVehicle(player1))
  2064. {
  2065. PlayerSpectatePlayer(playerid, player1, SPECTATE_MODE_NORMAL);
  2066. }
  2067. else
  2068. {
  2069. PlayerSpectateVehicle(playerid, GetPlayerVehicleID(player1), SPECTATE_MODE_NORMAL);
  2070. }
  2071. }
  2072. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2073. return 1;
  2074. }
  2075. CMD:specoff(playerid,params[])
  2076. {
  2077. if(PlayerInfo[playerid][pAdmin] >= 1 || IsPlayerAdmin(playerid))
  2078. {
  2079. TogglePlayerSpectating(playerid, false);
  2080. }
  2081. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2082. return 1;
  2083. }
  2084. CMD:warn(playerid, params[])
  2085. {
  2086. new player1, reason[500];
  2087. if(PlayerInfo[playerid][pAdmin] >= 1 || IsPlayerAdmin(playerid))
  2088. {
  2089. if(sscanf(params,"us[500]", player1, reason)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /warn [playerid] [reason]");
  2090. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2091. new str[500], str1[500];
  2092. if(PWarns[player1] == MAX_WARNS)
  2093. {
  2094. format(str, sizeof(str),"* Admin %s has kicked %s for %s. [Warn: 3/3]", PlayerName(playerid),PlayerName(player1),reason);
  2095. SendClientMessageToAll(0xFF0000AA, str);
  2096. format(str1, sizeof(str1),"{FF0000}___________| KICKED |___________\n\n{FFFFFF}Account Name: {FF0000}%s\n{FFFFFF}Admin Name: {FF0000}%s\n{FFFFFF}Reason: {FF0000}%s\n\nPlease do not break our rules again.", PlayerName(player1),PlayerName(playerid), reason);
  2097. ShowPlayerDialog(player1, 85, DIALOG_STYLE_MSGBOX, "KICKED!", str1, "Okey", "");
  2098. Kick(player1);
  2099. }
  2100. else
  2101. {
  2102. PWarns[player1]++;
  2103. format(str, sizeof(str),"* Admin %s has warned %s for: %s. [Warn: %d/3]", PlayerName(playerid),PlayerName(player1),reason,PWarns[player1]);
  2104. SendClientMessageToAll(0xFF0000AA, str);
  2105. format(str1, sizeof(str1),"{FF0000}___________| WARNED |___________\n\n{FFFFFF}Account Name: {FF0000}%s\n{FFFFFF}Admin Name: {FF0000}%s\n{FFFFFF}Reason: {FF0000}%s\n\nPlease do not break our rules again.", PlayerName(player1),PlayerName(playerid), reason);
  2106. ShowPlayerDialog(player1, 85, DIALOG_STYLE_MSGBOX, "WARNED!", str1, "Okey", "");
  2107. }
  2108. TargetCMDMessage(playerid, player1,"Warn");
  2109. }
  2110. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2111. return 1;
  2112. }
  2113. CMD:kick(playerid, params[])
  2114. {
  2115. new player1, reason[500];
  2116. if(PlayerInfo[playerid][pAdmin] >= 1 || IsPlayerAdmin(playerid))
  2117. {
  2118. if(sscanf(params,"us[500]", player1, reason)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /kick [playerid] [reason]");
  2119. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2120. new str[500], str1[500];
  2121. format(str, sizeof(str),"* Admin %s has kicked %s for %s.", PlayerName(playerid),PlayerName(player1),reason);
  2122. SendClientMessageToAll(0xFF0000AA, str);
  2123. format(str1, sizeof(str1),"{FF0000}___________| KICKED |___________\n\n{FFFFFF}Your name: {FF0000}%s\n{FFFFFF}Admin name: {FF0000}%s\n{FFFFFF}Reason: {FF0000}%s\n\nPlease do not break our rules again.", PlayerName(player1),PlayerName(playerid), reason);
  2124. ShowPlayerDialog(player1, 84, DIALOG_STYLE_MSGBOX, "KICKED!", str1, "Okey", "");
  2125. TargetCMDMessage(playerid, player1,"Kick");
  2126. printf(str);
  2127. Kick(player1);
  2128. }
  2129. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2130. return 1;
  2131. }
  2132. CMD:ban(playerid, params[])
  2133. {
  2134. new player1, reason[500];
  2135. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2136. {
  2137. if(sscanf(params,"us[500]", player1, reason)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /ban [playerid] [reason]");
  2138. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2139. if(PlayerInfo[player1][pAdmin] != PlayerInfo[player1][pAdmin]) return SendClientMessage(playerid, 0xFF0000AA, "You can't ban other admins");
  2140. new str[500], str1[500];
  2141. format(str, sizeof(str),"* Admin %s has banned %s for %s.", PlayerName(playerid),PlayerName(player1),reason);
  2142. SendClientMessageToAll(0xFF0000AA, str);
  2143. format(str1, sizeof(str1),"{FF0000}___________| BANNED |___________\n\n{FFFFFF}Your name: {FF0000}%s\n{FFFFFF}Admin name: {FF0000}%s\n{FFFFFF}Reason: {FF0000}%s\n\n[!!] Please take screenshot of this if you\nwant to make unban request on forums.\nhttp://bf4.3eeweb.com/", PlayerName(player1),PlayerName(playerid), reason);
  2144. ShowPlayerDialog(player1, 84, DIALOG_STYLE_MSGBOX, "BANNED!", str1, "Okey", "");
  2145. TargetCMDMessage(playerid, player1,"Ban");
  2146. //---------- SAVING BAN ------------
  2147. new INI:File = INI_Open(UserPathb(player1));
  2148. INI_WriteString(File,"Ban Reason",reason);
  2149. INI_WriteString(File,"Ban by Admin",PlayerName(playerid));
  2150. INI_WriteString(File,"Banned's name",PlayerName(player1));
  2151. PlayerInfo[player1][pBanned] = 1;
  2152. INI_Close(File);
  2153. //---------------------------------
  2154. printf(str);
  2155. BanEx(player1, reason);
  2156. }
  2157. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2158. return 1;
  2159. }
  2160. CMD:mute(playerid, params[])
  2161. {
  2162. new player1, reason[500];
  2163. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2164. {
  2165. if(sscanf(params,"us[500]", player1, reason)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /mute [playerid] [reason]");
  2166. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2167. new str[500], str1[500];
  2168. format(str, sizeof(str),"{FF00EE}* Admin %s has muted %s for %s.", PlayerName(playerid),PlayerName(player1),reason);
  2169. SendClientMessageToAll(0x00C0FFAA, str);
  2170. format(str1, sizeof(str1),"{FF0000}___________| MUTED |___________\n\n{FFFFFF}Your name: {FF0000}%s\n{FFFFFF}Admin name: {FF0000}%s\n{FFFFFF}Reason: {FF0000}%s\n\nPlease do not break our rules again.", PlayerName(player1),PlayerName(playerid), reason);
  2171. ShowPlayerDialog(player1, 84, DIALOG_STYLE_MSGBOX, "KICKED!", str1, "Okey", "");
  2172. TargetCMDMessage(playerid, player1,"Mute");
  2173. PlayerInfo[player1][pMuted] = 1;
  2174. }
  2175. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2176. return 1;
  2177. }
  2178. CMD:unmute(playerid, params[])
  2179. {
  2180. new player1;
  2181. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2182. {
  2183. if(sscanf(params,"u", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /unmute [playerid]");
  2184. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2185. new str[500];
  2186. format(str, sizeof(str),"{FF00EE}* Admin %s has unmuted %s.", PlayerName(playerid),PlayerName(player1));
  2187. SendClientMessageToAll(0x00C0FFAA, str);
  2188. TargetCMDMessage(playerid, player1,"UnMute");
  2189. PlayerInfo[player1][pMuted] = 0;
  2190. }
  2191. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2192. return 1;
  2193. }
  2194. CMD:freeze(playerid, params[])
  2195. {
  2196. new player1;
  2197. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2198. {
  2199. if(sscanf(params,"u", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /freeze [playerid]");
  2200. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2201. new str[500];
  2202. format(str, sizeof(str),"{FF00EE}* Admin %s has frozen %s.", PlayerName(playerid),PlayerName(player1));
  2203. SendClientMessageToAll(0x00C0FFAA, str);
  2204. TargetCMDMessage(playerid, player1,"Freeze");
  2205. TogglePlayerControllable(player1, false);
  2206. }
  2207. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2208. return 1;
  2209. }
  2210. CMD:unfreeze(playerid, params[])
  2211. {
  2212. new player1;
  2213. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2214. {
  2215. if(sscanf(params,"u", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /unfreeze [playerid]");
  2216. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2217. new str[500];
  2218. format(str, sizeof(str),"{FF00EE}* Admin %s has unfrozen %s.", PlayerName(playerid),PlayerName(player1));
  2219. SendClientMessageToAll(0x00C0FFAA, str);
  2220. TargetCMDMessage(playerid, player1,"UnFreeze");
  2221. TogglePlayerControllable(player1, true);
  2222. }
  2223. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2224. return 1;
  2225. }
  2226. CMD:givescore(playerid, params[])
  2227. {
  2228. new player1, amount;
  2229. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  2230. {
  2231. if(sscanf(params,"ud", player1, amount)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /givescore [playerid] [amount]");
  2232. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2233. new str[500], str1[500];
  2234. format(str, sizeof(str),"> [ACMD]: You have given %s %d score", PlayerName(player1),amount);
  2235. SendClientMessage(playerid, -1, str);
  2236. format(str1, sizeof(str1),"{FF00EE}* Admin %s has given you %d score", PlayerName(playerid),amount);
  2237. SendClientMessage(player1, 0x00C0FFAA,str1);
  2238. TargetCMDMessage(playerid, player1,"Givescore");
  2239. SetPlayerScore(player1, GetPlayerScore(player1)+amount);
  2240. }
  2241. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2242. return 1;
  2243. }
  2244. CMD:givemoney(playerid, params[])
  2245. {
  2246. new player1, amount;
  2247. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  2248. {
  2249. if(sscanf(params,"ud", player1, amount)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /givemoney [playerid] [amount]");
  2250. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2251. new str[500], str1[500];
  2252. format(str, sizeof(str),"> [ACMD]: You have given %s %d$", PlayerName(player1),amount);
  2253. SendClientMessage(playerid, -1, str);
  2254. format(str1, sizeof(str1),"{FF00EE}* Admin %s has given you %d$", PlayerName(playerid),amount);
  2255. SendClientMessage(player1, 0x00C0FFAA,str1);
  2256. TargetCMDMessage(playerid, player1,"Givemoney");
  2257. GivePlayerMoneyEx(player1, amount);
  2258. }
  2259. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2260. return 1;
  2261. }
  2262. CMD:setscore(playerid, params[])
  2263. {
  2264. new player1, amount;
  2265. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  2266. {
  2267. if(sscanf(params,"ud", player1, amount)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /setscore [playerid] [amount]");
  2268. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2269. new str[500], str1[500];
  2270. format(str, sizeof(str),"> [ACMD]: You have set %s's score to %d", PlayerName(player1),amount);
  2271. SendClientMessage(playerid, -1, str);
  2272. format(str1, sizeof(str1),"{FF00EE}* Admin %s has set your score to %d", PlayerName(playerid),amount);
  2273. SendClientMessage(player1, 0x00C0FFAA,str1);
  2274. TargetCMDMessage(playerid, player1,"Setscore");
  2275. SetPlayerScore(player1, amount);
  2276. }
  2277. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2278. return 1;
  2279. }
  2280. CMD:syncmoney(playerid, params[])
  2281. {
  2282. new player1;
  2283. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2284. {
  2285. if(sscanf(params,"u", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /syncmoney [playerid]");
  2286. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2287. new str[500];
  2288. format(str, sizeof(str),"> [ACMD]: You have synced %s's money to %d", PlayerName(player1),GetPlayerMoneyEx(player1));
  2289. SendClientMessage(playerid, -1, str);
  2290. TargetCMDMessage(playerid, player1,"Syncmoney");
  2291. SetPlayerMoneyEx(player1, GetPlayerMoneyEx(player1));
  2292. }
  2293. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2294. return 1;
  2295. }
  2296. CMD:setmoney(playerid, params[])
  2297. {
  2298. new player1, amount;
  2299. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  2300. {
  2301. if(sscanf(params,"ud", player1, amount)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /setmoney [playerid] [amount]");
  2302. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2303. new str[500], str1[500];
  2304. format(str, sizeof(str),"> [ACMD]: You have set %s's money to %d", PlayerName(player1),amount);
  2305. SendClientMessage(playerid, -1, str);
  2306. format(str1, sizeof(str1),"{FF00EE}* Admin %s has set your money to %d", PlayerName(playerid),amount);
  2307. SendClientMessage(player1, 0x00C0FFAA,str1);
  2308. TargetCMDMessage(playerid, player1,"Setmoney");
  2309. ResetPlayerMoney(player1);
  2310. GivePlayerMoneyEx(player1, amount);
  2311. }
  2312. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2313. return 1;
  2314. }
  2315. CMD:sethp(playerid, params[])
  2316. {
  2317. new player1, amount;
  2318. if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid))
  2319. {
  2320. if(sscanf(params,"ud", player1, amount)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /sethp [playerid] [amount]");
  2321. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2322. new str[500], str1[500];
  2323. format(str, sizeof(str),"> [ACMD]: You have set %s's health to %d", PlayerName(player1),amount);
  2324. SendClientMessage(playerid, -1, str);
  2325. format(str1, sizeof(str1),"{FF00EE}* Admin %s has set your health to %d", PlayerName(playerid),amount);
  2326. SendClientMessage(player1, 0x00C0FFAA,str1);
  2327. TargetCMDMessage(playerid, player1,"SetHP");
  2328. SetPlayerHealth(player1, amount);
  2329. }
  2330. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2331. return 1;
  2332. }
  2333. CMD:setar(playerid, params[])
  2334. {
  2335. new player1, amount;
  2336. if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid))
  2337. {
  2338. if(sscanf(params,"ud", player1, amount)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /setar [playerid] [amount]");
  2339. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2340. new str[500], str1[500];
  2341. format(str, sizeof(str),"> [ACMD]: You have set %s's armour to %d", PlayerName(player1),amount);
  2342. SendClientMessage(playerid, -1, str);
  2343. format(str1, sizeof(str1),"{FF00EE}* Admin %s has set your armour to %d", PlayerName(playerid),amount);
  2344. SendClientMessage(player1, 0x00C0FFAA,str1);
  2345. TargetCMDMessage(playerid, player1,"SetAR");
  2346. SetPlayerArmour(player1, amount);
  2347. }
  2348. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2349. return 1;
  2350. }
  2351. CMD:carhealth(playerid,params[])
  2352. {
  2353. new player1, amount;
  2354. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2355. {
  2356. if(sscanf(params,"ud", player1, amount)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /carhealth [playerid] [amount]");
  2357. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2358. new str[500], str1[500];
  2359. format(str, sizeof(str),"> [ACMD]: You have set %s's vehicle health to %d", PlayerName(player1),amount);
  2360. SendClientMessage(playerid, -1, str);
  2361. format(str1, sizeof(str1),"{FF00EE}* Admin %s has set your vehicle health to %d", PlayerName(playerid),amount);
  2362. SendClientMessage(player1, 0x00C0FFAA,str1);
  2363. TargetCMDMessage(playerid, player1,"CarHealth");
  2364. SetVehicleHealth(GetPlayerVehicleID(player1), amount);
  2365. }
  2366. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2367. return 1;
  2368. }
  2369. CMD:setadmin(playerid, params[])
  2370. {
  2371. if(PlayerInfo[playerid][pAdmin] >= 5 || IsPlayerAdmin(playerid))
  2372. {
  2373. new string[125], level, player1;
  2374. if(sscanf(params,"ud",player1, level)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /setadmin [playerid] [level]");
  2375. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2376. if(level > MAX_ADMIN_LEVEL)
  2377. {
  2378. SendClientMessage(playerid, 0xFF0000AA,"Incorrect level");
  2379. }
  2380. else
  2381. {
  2382. format(string, sizeof(string),"{FF00EE}* Admin %s has set you to admin level %d", PlayerName(playerid),level);
  2383. SendClientMessage(player1, 0x73FF00FF, string);
  2384. format(string, sizeof(string),"> [ACMD]: You have set %s's Administrator level to %d", PlayerName(player1),level);
  2385. SendClientMessage(playerid, -1, string);
  2386. TargetCMDMessage(playerid, player1,"SetAdmin");
  2387. PlayerPlaySound(player1,1057,0.0,0.0,0.0);
  2388. PlayerInfo[player1][pAdmin] = level;
  2389. }
  2390. }
  2391. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2392. return 1;
  2393. }
  2394. CMD:setdonor(playerid, params[])
  2395. {
  2396. if(PlayerInfo[playerid][pAdmin] >= 5 || IsPlayerAdmin(playerid))
  2397. {
  2398. new string[125], level, player1;
  2399. if(sscanf(params,"ud",player1, level)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /setdonor [playerid] [level]");
  2400. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2401. if(level > MAX_DONOR_LEVEL)
  2402. {
  2403. SendClientMessage(playerid, 0xFF0000AA,"Incorrect level");
  2404. }
  2405. else
  2406. {
  2407. format(string, sizeof(string),"{FF00EE}* Admin %s has set you to donator level %d", PlayerName(playerid),level);
  2408. SendClientMessage(player1, 0x73FF00FF, string);
  2409. format(string, sizeof(string),"> [ACMD]: You have set %s's Donator level to %d", PlayerName(player1),level);
  2410. SendClientMessage(playerid, -1, string);
  2411. TargetCMDMessage(playerid, player1,"SetDonor");
  2412. PlayerPlaySound(player1,1057,0.0,0.0,0.0);
  2413. PlayerInfo[player1][pDonor] = level;
  2414. }
  2415. }
  2416. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2417. return 1;
  2418. }
  2419. CMD:slap(playerid, params[])
  2420. {
  2421. new player1;
  2422. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2423. {
  2424. if(sscanf(params,"u", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /slap [playerid]");
  2425. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2426. new Float:Health;
  2427. new Float:x, Float:y, Float:z;
  2428. GetPlayerHealth(player1,Health);
  2429. SetPlayerHealth(player1,Health-25);
  2430. GetPlayerPos(player1,x,y,z);
  2431. SetPlayerPos(player1,x,y,z+5);
  2432. PlayerPlaySound(playerid,1190,0.0,0.0,0.0);
  2433. PlayerPlaySound(player1,1190,0.0,0.0,0.0);
  2434. new str1[100];
  2435. format(str1, sizeof(str1),"> [ACMD]: You have slapped %s", PlayerName(player1));
  2436. SendClientMessage(playerid, -1, str1);
  2437. TargetCMDMessage(playerid, player1,"Slap");
  2438. }
  2439. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2440. return 1;
  2441. }
  2442. CMD:explode(playerid, params[])
  2443. {
  2444. new player1;
  2445. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2446. {
  2447. if(sscanf(params,"u", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /explode [playerid]");
  2448. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2449. new Float:burnx, Float:burny, Float:burnz;
  2450. GetPlayerPos(player1,burnx, burny, burnz);
  2451. CreateExplosion(burnx, burny , burnz, 7,10.0);
  2452. new str1[100];
  2453. format(str1, sizeof(str1),"> [ACMD]: You have exploded %s", PlayerName(player1));
  2454. SendClientMessage(playerid, -1, str1);
  2455. TargetCMDMessage(playerid, player1,"Explode");
  2456. }
  2457. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2458. return 1;
  2459. }
  2460. CMD:get(playerid, params[])
  2461. {
  2462. new player1;
  2463. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2464. {
  2465. if(sscanf(params,"u", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /get [playerid]");
  2466. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2467. new Float:x, Float:y, Float:z;
  2468. GetPlayerPos(playerid,x,y,z);
  2469. SetPlayerPos(player1,x+1,y,z);
  2470. SetPlayerInterior(player1, GetPlayerInterior(playerid));
  2471. SetPlayerVirtualWorld(player1, GetPlayerVirtualWorld(playerid));
  2472. new str1[125], str2[125];
  2473. format(str1, sizeof(str1),"> [ACMD]: You have teleported %s to your position", PlayerName(player1));
  2474. SendClientMessage(playerid, -1, str1);
  2475. format(str2, sizeof(str2),"{FF00EE}* You have been teleported to Admin %s's position", PlayerName(playerid));
  2476. SendClientMessage(player1, -1, str2);
  2477. TargetCMDMessage(playerid, player1,"Get");
  2478. }
  2479. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2480. return 1;
  2481. }
  2482. CMD:goto(playerid, params[])
  2483. {
  2484. new player1;
  2485. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2486. {
  2487. if(sscanf(params,"u", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /goto [playerid]");
  2488. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2489. new Float:x, Float:y, Float:z;
  2490. GetPlayerPos(player1,x,y,z);
  2491. SetPlayerPos(playerid,x+1,y,z);
  2492. new str1[125], str2[125];
  2493. format(str1, sizeof(str1),"> [ACMD]: You have teleported to %s's position", PlayerName(player1));
  2494. SendClientMessage(playerid, -1, str1);
  2495. format(str2, sizeof(str2),"{FF00EE}* Admin %s has teleported to your position", PlayerName(playerid));
  2496. SendClientMessage(player1, -1, str2);
  2497. TargetCMDMessage(playerid, player1,"Goto");
  2498. }
  2499. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2500. return 1;
  2501. }
  2502. CMD:gotopos(playerid, params[])
  2503. {
  2504. new Float:x, Float:y, Float:z;
  2505. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2506. {
  2507. if(sscanf(params,"fff", x, y, z)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /gotopos [x, y, z]");
  2508. SetPlayerPos(playerid,x,y,z);
  2509. CMDMessage(playerid, "Gotopos");
  2510. }
  2511. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2512. return 1;
  2513. }
  2514. CMD:setinterior(playerid, params[])
  2515. {
  2516. new interior;
  2517. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2518. {
  2519. if(sscanf(params,"d", interior)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /setinterior [interiorid]");
  2520. SetPlayerInterior(playerid, interior);
  2521. CMDMessage(playerid, "Setinterior");
  2522. }
  2523. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2524. return 1;
  2525. }
  2526. CMD:annunce(playerid, params[])
  2527. {
  2528. if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid))
  2529. {
  2530. new reason[100], str[100];
  2531. if(sscanf(params,"s[100]", reason)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /announce [text]");
  2532. format(str, sizeof(str),"%s",reason);
  2533. GameTextForAll(str,4000,3);
  2534. CMDMessage(playerid, "Announce");
  2535. }
  2536. return 1;
  2537. }
  2538. CMD:adminduty(playerid,params[])
  2539. {
  2540. new str[128];
  2541. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2542. {
  2543. if(onDuty[playerid] == false)
  2544. {
  2545. onDuty[playerid] = true;
  2546. format(str, sizeof(str),"{FF00EE}* Admin %s is now On-Duty",PlayerName(playerid));
  2547. SendClientMessageToAll(0x00C0FFAA, str);
  2548. SetPlayerColor(playerid, 0xFF55BBFF);
  2549. SetPlayerHealth(playerid, 99999);
  2550. SetPlayerSkin(playerid, 217);
  2551. CMDMessage(playerid, "AdminDuty");
  2552. }
  2553. else if(onDuty[playerid] == true)
  2554. {
  2555. onDuty[playerid] = false;
  2556. format(str, sizeof(str),"{FF00EE}* Admin %s is now Off-Duty",PlayerName(playerid));
  2557. SendClientMessageToAll(0x00C0FFAA, str);
  2558. CMDMessage(playerid, "AdminDuty");
  2559. SetPlayerHealth(playerid, 0);
  2560. }
  2561. }
  2562. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2563. return 1;
  2564. }
  2565. CMD:ping(playerid, params[])
  2566. {
  2567. new player1;
  2568. if(PlayerInfo[playerid][pAdmin] >= 1 || IsPlayerAdmin(playerid))
  2569. {
  2570. if(sscanf(params,"u", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /ping [playerid]");
  2571. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2572. new ping = GetPlayerPing(player1);
  2573. new str1[100];
  2574. format(str1, sizeof(str1),"> [ACMD]: Ping of %s is %d", PlayerName(player1), ping);
  2575. SendClientMessage(playerid, -1, str1);
  2576. }
  2577. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2578. return 1;
  2579. }
  2580. CMD:ip(playerid, params[])
  2581. {
  2582. new player1;
  2583. if(PlayerInfo[playerid][pAdmin] >= 1 || IsPlayerAdmin(playerid))
  2584. {
  2585. if(sscanf(params,"u", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /ip [playerid]");
  2586. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2587. TargetCMDMessage(playerid, player1,"IP");
  2588. new str1[100];
  2589. format(str1, sizeof(str1),"> [ACMD]: IP: %s", PlayerIP(player1));
  2590. SendClientMessage(playerid, -1, str1);
  2591. }
  2592. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2593. return 1;
  2594. }
  2595. CMD:asay(playerid, params[])
  2596. {
  2597. if(PlayerInfo[playerid][pAdmin] >= 1 || IsPlayerAdmin(playerid))
  2598. {
  2599. new string[128];
  2600. format(string, sizeof(string), "* Admin %s: %s",PlayerName(playerid),params[0]);
  2601. SendClientMessageToAll(0xFF55BBFF,string);
  2602. }
  2603. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2604. return 1;
  2605. }
  2606. CMD:news(playerid, params[])
  2607. {
  2608. if(PlayerInfo[playerid][pAdmin] >= 5 || IsPlayerAdmin(playerid))
  2609. {
  2610. new string[128];
  2611. format(string, sizeof(string), "{FF0000}[IMPORTANT NEWS]: {FFFFFF}%s",params[0]);
  2612. SendClientMessageToAll(-1,string);
  2613. }
  2614. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2615. return 1;
  2616. }
  2617. CMD:spawn(playerid, params[])
  2618. {
  2619. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2620. {
  2621. new player1;
  2622. if(sscanf(params,"us[100]", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /spawn [playerid]");
  2623. if(IsPlayerConnected(player1))
  2624. {
  2625. if(PlayerInfo[playerid][pAdmin] >= 1)
  2626. {
  2627. TargetCMDMessage(playerid, player1,"Spawn");
  2628. SendClientMessage(player1, 0xE68E00AA, "Spawned!");
  2629. SpawnPlayer(player1);
  2630. }
  2631. }
  2632. else return SendClientMessage(playerid, 0xFF0000AA,"Player is not connected!");
  2633. }
  2634. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2635. return 1;
  2636. }
  2637. CMD:jetpack(playerid,params[])
  2638. {
  2639. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2640. {
  2641. SendClientMessage(playerid, -1, "You have been given a JetPack");
  2642. SetPlayerSpecialAction(playerid, 2);
  2643. CMDMessage(playerid, "Jetpack");
  2644. }
  2645. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2646. return 1;
  2647. }
  2648. CMD:disarm(playerid, params[])
  2649. {
  2650. new player1;
  2651. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2652. {
  2653. if(sscanf(params,"u", player1)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /disarm [playerid]");
  2654. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2655. ResetPlayerWeapons(player1);
  2656. new str1[100];
  2657. SendClientMessage(player1, 0xE68E00AA, "Disarmed!");
  2658. format(str1, sizeof(str1),"> [ACMD]: You have disarmed %s", PlayerName(player1));
  2659. SendClientMessage(playerid, -1, str1);
  2660. TargetCMDMessage(playerid, player1,"Disarm");
  2661. }
  2662. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2663. return 1;
  2664. }
  2665. CMD:setskin(playerid, params[])
  2666. {
  2667. new player1, skinid;
  2668. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2669. {
  2670. if(skinid < 299)
  2671. {
  2672. if(sscanf(params,"ud", player1, skinid)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /setskin [playerid] [skin id]");
  2673. if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, 0xFF0000AA,"Player not connected!");
  2674. SetPlayerSkin(player1, skinid);
  2675. new str[100], str1[100];
  2676. format(str, sizeof(str),"{FF00EE}* Admin %s has set your skin to %d", PlayerName(playerid),skinid);
  2677. format(str1, sizeof(str1),"> [ACMD]: You have set %s's skin to %d", PlayerName(player1), skinid);
  2678. SendClientMessage(player1, 0x00C0FFAA, str);
  2679. SendClientMessage(playerid, -1, str1);
  2680. TargetCMDMessage(playerid, player1,"SetSkin");
  2681. }
  2682. else return SendClientMessage(playerid, 0xFF0000AA, "Invalid Skin ID");
  2683. }
  2684. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2685. return 1;
  2686. }
  2687. CMD:destroy(playerid, params[])
  2688. {
  2689. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2690. {
  2691. new currentveh;
  2692. currentveh = GetPlayerVehicleID(playerid);
  2693. DestroyVehicle(currentveh);
  2694. CMDMessage(playerid, "Destroy");
  2695. }
  2696. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2697. return 1;
  2698. }
  2699. CMD:carcolor(playerid, params[])
  2700. {
  2701. new targetid, colorid1, colodid2;
  2702. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  2703. {
  2704. if(IsPlayerInAnyVehicle(playerid))
  2705. {
  2706. if(sscanf(params,"udd", targetid, colorid1, colodid2)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /carcolor [playerid] [color1] [color2]");
  2707. new VID = GetPlayerVehicleID(targetid);
  2708. ChangeVehicleColor(VID, colorid1, colodid2);
  2709. new str1[100], str2[100];
  2710. format(str1, sizeof(str1),"> [ACMD]: You have set %s's car color to %d and %d", PlayerName(targetid), colorid1, colodid2);
  2711. SendClientMessage(playerid, -1, str1);
  2712. format(str2, sizeof(str2),"{FF00EE}* Admin %s has set your car color to %d and %d", PlayerName(playerid),colorid1, colodid2);
  2713. SendClientMessage(targetid, 0x00C0FFAA, str2);
  2714. TargetCMDMessage(playerid, targetid,"Carcolor");
  2715. }
  2716. }
  2717. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2718. return 1;
  2719. }
  2720. //------------------------------------------------------------------------------
  2721. CMD:healall(playerid,params[])
  2722. {
  2723. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  2724. {
  2725. new string[200];
  2726. format(string, sizeof(string), "{FF00EE}* Admin %s has restored all player's health", PlayerName(playerid));
  2727. SendClientMessageToAll(0x00C0FFAA, string);
  2728. CMDMessage(playerid, "Healall");
  2729. foreach(Player, i)
  2730. {
  2731. SetPlayerHealth(i, 100.0);
  2732. SetPlayerHealth(playerid, 100.0);
  2733. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2734. }
  2735. }
  2736. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2737. return 1;
  2738. }
  2739. CMD:armourall(playerid,params[])
  2740. {
  2741. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  2742. {
  2743. new string[200];
  2744. format(string, sizeof(string),"{FF00EE}* Admin %s has restored all player's armour", PlayerName(playerid));
  2745. SendClientMessageToAll(0x00C0FFAA, string);
  2746. CMDMessage(playerid, "Armourall");
  2747. foreach(Player, i)
  2748. {
  2749. SetPlayerArmour(playerid, 100.0);
  2750. SetPlayerArmour(i, 100.0);
  2751. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2752. }
  2753. }
  2754. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2755. return 1;
  2756. }
  2757. CMD:freezeall(playerid,params[])
  2758. {
  2759. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  2760. {
  2761. new string[200];
  2762. format(string, sizeof(string), "{FF00EE}* Admin %s has frozen all players", PlayerName(playerid));
  2763. SendClientMessageToAll(0x00C0FFAA, string);
  2764. CMDMessage(playerid, "Freezeall");
  2765. foreach(Player, i)
  2766. {
  2767. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2768. TogglePlayerControllable(i, false);
  2769. }
  2770. }
  2771. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2772. return 1;
  2773. }
  2774. CMD:unfreezeall(playerid,params[])
  2775. {
  2776. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  2777. {
  2778. new string[200];
  2779. format(string, sizeof(string),"{FF00EE}* Admin %s has unfrozen all players", PlayerName(playerid));
  2780. SendClientMessageToAll(0x00C0FFAA, string);
  2781. CMDMessage(playerid, "Freezeall");
  2782. foreach(Player, i)
  2783. {
  2784. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2785. TogglePlayerControllable(i, true);
  2786. }
  2787. }
  2788. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2789. return 1;
  2790. }
  2791. CMD:setalltime(playerid,params[])
  2792. {
  2793. new time;
  2794. if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid))
  2795. {
  2796. if(sscanf(params,"d", time)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /setalltime [time]");
  2797. new string[128];
  2798. format(string, sizeof(string), "{FF00EE}* Server time has been set to %d", time);
  2799. SendClientMessageToAll(0x00C0FFAA, string);
  2800. CMDMessage(playerid, "Setalltime");
  2801. foreach(Player, i)
  2802. {
  2803. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2804. SetPlayerTime(i, time, 0);
  2805. }
  2806. }
  2807. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2808. return 1;
  2809. }
  2810. CMD:setallweather(playerid,params[])
  2811. {
  2812. new weather;
  2813. if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid))
  2814. {
  2815. if(sscanf(params,"d", weather)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /setallweather [weatherid]");
  2816. new string[128];
  2817. format(string, sizeof(string), "{FF00EE}* Server weather has been set to %d", weather);
  2818. SendClientMessageToAll(0x00C0FFAA, string);
  2819. CMDMessage(playerid, "Setallweather");
  2820. SetWeather(weather);
  2821. foreach(Player, i)
  2822. {
  2823. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2824. }
  2825. }
  2826. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2827. return 1;
  2828. }
  2829. CMD:getall(playerid,params[])
  2830. {
  2831. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  2832. {
  2833. new string[200];
  2834. format(string, sizeof(string), "{FF00EE}* Admin %s has teleported all players", PlayerName(playerid));
  2835. SendClientMessageToAll(0x00C0FFAA, string);
  2836. CMDMessage(playerid, "Getall");
  2837. new Float:x, Float:y, Float:z;
  2838. GetPlayerPos(playerid, x, y, z);
  2839. foreach(Player, i)
  2840. {
  2841. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2842. SetPlayerPos(i, x, y, z);
  2843. SetPlayerInterior(i, GetPlayerInterior(playerid));
  2844. SetPlayerVirtualWorld(i, GetPlayerVirtualWorld(playerid));
  2845. }
  2846. }
  2847. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2848. return 1;
  2849. }
  2850. CMD:muteall(playerid,params[])
  2851. {
  2852. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  2853. {
  2854. new string[200];
  2855. format(string, sizeof(string),"{FF00EE}* Admin %s has muted all players", PlayerName(playerid));
  2856. SendClientMessageToAll(0x00C0FFAA, string);
  2857. CMDMessage(playerid, "Muteall");
  2858. foreach(Player, i)
  2859. {
  2860. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2861. PlayerInfo[i][pMuted] = 1;
  2862. }
  2863. }
  2864. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2865. return 1;
  2866. }
  2867. CMD:unmuteall(playerid,params[])
  2868. {
  2869. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  2870. {
  2871. new string[200];
  2872. format(string, sizeof(string),"{FF00EE}* Admin %s has unmuted all players", PlayerName(playerid));
  2873. SendClientMessageToAll(0x00C0FFAA, string);
  2874. CMDMessage(playerid, "UnMuteall");
  2875. foreach(Player, i)
  2876. {
  2877. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2878. PlayerInfo[i][pMuted] = 0;
  2879. }
  2880. }
  2881. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2882. return 1;
  2883. }
  2884. CMD:giveallmoney(playerid,params[])
  2885. {
  2886. if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid))
  2887. {
  2888. new var = strval(params);
  2889. new string[128];
  2890. format(string, sizeof(string), "{FF00EE}* Admin %s has given all players %d$", PlayerName(playerid),var);
  2891. SendClientMessageToAll(0x00C0FFAA, string);
  2892. CMDMessage(playerid, "Giveallmoney");
  2893. foreach(Player, i)
  2894. {
  2895. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2896. GivePlayerMoneyEx(i,var);
  2897. }
  2898. }
  2899. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2900. return 1;
  2901. }
  2902. CMD:giveallscore(playerid,params[])
  2903. {
  2904. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  2905. {
  2906. new var = strval(params);
  2907. new string[128];
  2908. format(string, sizeof(string), "{FF00EE}* Admin %s has given all players %d score", PlayerName(playerid),var);
  2909. SendClientMessageToAll(0x00C0FFAA, string);
  2910. CMDMessage(playerid, "Giveallscore");
  2911. foreach(Player, i)
  2912. {
  2913. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2914. SetPlayerScore(i, GetPlayerScore(i)+var);
  2915. }
  2916. }
  2917. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2918. return 1;
  2919. }
  2920. CMD:killall(playerid,params[])
  2921. {
  2922. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  2923. {
  2924. new string[128];
  2925. format(string, sizeof(string), "{FF00EE}* Admin %s has killed all players", PlayerName(playerid));
  2926. SendClientMessageToAll(0x00C0FFAA, string);
  2927. CMDMessage(playerid, "KillAll");
  2928. foreach(Player, i)
  2929. {
  2930. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2931. SetPlayerHealth(i, 0);
  2932. }
  2933. }
  2934. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2935. return 1;
  2936. }
  2937. CMD:setallscore(playerid,params[])
  2938. {
  2939. if(PlayerInfo[playerid][pAdmin] >= 5 || IsPlayerAdmin(playerid))
  2940. {
  2941. new var = strval(params);
  2942. new string[128];
  2943. format(string, sizeof(string), "{FF00EE}* All player score has been set to %d", var);
  2944. SendClientMessageToAll(0x00C0FFAA, string);
  2945. CMDMessage(playerid, "Setallscore");
  2946. foreach(Player, i)
  2947. {
  2948. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2949. SetPlayerScore(i, var);
  2950. }
  2951. }
  2952. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2953. return 1;
  2954. }
  2955. CMD:setallmoney(playerid,params[])
  2956. {
  2957. if(PlayerInfo[playerid][pAdmin] >= 5 || IsPlayerAdmin(playerid))
  2958. {
  2959. new var = strval(params);
  2960. new string[128];
  2961. format(string, sizeof(string), "{FF00EE}* All player money has been set to %d", var);
  2962. SendClientMessageToAll(0x00C0FFAA, string);
  2963. CMDMessage(playerid, "Setallmoney");
  2964. foreach(Player, i)
  2965. {
  2966. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2967. ResetPlayerMoney(i);
  2968. GivePlayerMoneyEx(i, var);
  2969. }
  2970. }
  2971. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2972. return 1;
  2973. }
  2974. CMD:spawnall(playerid,params[])
  2975. {
  2976. if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid))
  2977. {
  2978. new string[128];
  2979. format(string, sizeof(string), "{FF00EE}* Admin %s has respawned all players", PlayerName(playerid));
  2980. SendClientMessageToAll(0x00C0FFAA, string);
  2981. CMDMessage(playerid, "Spawnall");
  2982. foreach(Player, i)
  2983. {
  2984. SpawnPlayer(i);
  2985. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  2986. }
  2987. }
  2988. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  2989. return 1;
  2990. }
  2991. CMD:disarmall(playerid,params[])
  2992. {
  2993. if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid))
  2994. {
  2995. new string[128];
  2996. format(string, sizeof(string), "{FF00EE}* Admin %s has disarmed all players", PlayerName(playerid));
  2997. SendClientMessageToAll(0x00C0FFAA, string);
  2998. CMDMessage(playerid, "Disarmall");
  2999. foreach(Player, i)
  3000. {
  3001. ResetPlayerWeapons(i);
  3002. PlayerPlaySound(i,1057,0.0,0.0,0.0);
  3003. }
  3004. }
  3005. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  3006. return 1;
  3007. }
  3008. CMD:respawncars(playerid,params[])
  3009. {
  3010. if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid))
  3011. {
  3012. new string[128];
  3013. format(string, sizeof(string), "{FF00EE}* Admin %s has respawned all vehicles", PlayerName(playerid));
  3014. SendClientMessageToAll(0x00C0FFAA, string);
  3015. CMDMessage(playerid, "RespawnCars");
  3016. for(new i = 0; i < MAX_VEHICLES; i++)
  3017. {
  3018. SetVehicleToRespawn(i);
  3019. }
  3020. }
  3021. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  3022. return 1;
  3023. }
  3024. CMD:acmds(playerid,params[])
  3025. {
  3026. new level;
  3027. if(sscanf(params,"d", level)) return SendClientMessage(playerid, 0x9C9C9CAA,"USAGE: /acmds [level]");
  3028. if(strcmp(params,"1",true) == 0)
  3029. {
  3030. if(PlayerInfo[playerid][pAdmin] >= 1 || IsPlayerAdmin(playerid))
  3031. {
  3032. SendClientMessage(playerid, 0xF6FF00AA, "____________| MODERATOR COMMANDS |____________");
  3033. SendClientMessage(playerid, -1, "/kick, /warn, /ip, /spec, /specoff");
  3034. SendClientMessage(playerid, -1, "/asay, /ping, /a");
  3035. }
  3036. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  3037. }
  3038. if(strcmp(params,"2",true) == 0)
  3039. {
  3040. if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
  3041. {
  3042. SendClientMessage(playerid, 0xF6FF00AA, "____________| GAME ADMIN COMMANDS |____________");
  3043. SendClientMessage(playerid, -1, "/ban, /jail, /unjail, /mute, /unmute, /freeze, /disarm");
  3044. SendClientMessage(playerid, -1, "/setskin, /unfreeze, /respawncars, /carcolor, /spawn");
  3045. SendClientMessage(playerid, -1, "/veh, /destroy, /adminduty, /slap, /explode, /get");
  3046. SendClientMessage(playerid, -1, "/goto, /jetpack, /carhealth, /cc, /syncmoney");
  3047. }
  3048. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  3049. }
  3050. if(strcmp(params,"3",true) == 0)
  3051. {
  3052. if(PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid))
  3053. {
  3054. SendClientMessage(playerid, 0xF6FF00AA, "____________| SENIOR ADMIN COMMANDS |____________");
  3055. SendClientMessage(playerid, -1, "/sethp, /setar, /giveallmoney, /setallweather, /setalltime");
  3056. SendClientMessage(playerid, -1, "/announce, /respawncars, /newtest");
  3057. }
  3058. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  3059. }
  3060. if(strcmp(params,"4",true) == 0)
  3061. {
  3062. if(PlayerInfo[playerid][pAdmin] >= 4 || IsPlayerAdmin(playerid))
  3063. {
  3064. SendClientMessage(playerid, 0xF6FF00AA, "____________| LEAD ADMIN COMMANDS |____________");
  3065. SendClientMessage(playerid, -1, "/healall, /armourall, /spawnall, /killall, /giveallscore");
  3066. SendClientMessage(playerid, -1, "/givemoney, /givescore, /muteall, /unmuteall");
  3067. SendClientMessage(playerid, -1, "/giveallweapon, /giveallmoney, /setmoney, /setscore");
  3068. SendClientMessage(playerid, -1, "/disarmall, /giveallmedicine, /test");
  3069. }
  3070. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  3071. }
  3072. if(strcmp(params,"5",true) == 0)
  3073. {
  3074. if(PlayerInfo[playerid][pAdmin] >= 5 || IsPlayerAdmin(playerid))
  3075. {
  3076. SendClientMessage(playerid, 0xF6FF00AA, "____________| HEAD ADMIN COMMANDS |____________");
  3077. SendClientMessage(playerid, -1, "/setadmin, /setdonor, /setallscore, /setallmoney");
  3078. }
  3079. else return SendClientMessage(playerid, 0xFF0000AA,"You are not allowed to use this command.");
  3080. }
  3081. return 1;
  3082. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement