Advertisement
Guest User

ye

a guest
Mar 4th, 2018
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 31.74 KB | None | 0 0
  1. /* I don't fuckin know what this is gonna be
  2. Started March 1st, 2018 4:13 PM CST
  3. you're mom gay*/
  4.  
  5. #include <a_samp>
  6. #include <zcmd>
  7. #include <YSI\y_ini>
  8. #include <streamer>
  9. #include <mGates>
  10. #include <sscanf2>
  11.  
  12. //Colors
  13. #define COLOR_WHITE 0xFFFFFFFF
  14. #define COLOR_BLACK 0x000000FF
  15. #define COLOR_RED 0xFF0000FF
  16. #define COLOR_BROWN 0x800000FF
  17. #define COLOR_LIME 0x00FF00FF
  18. #define COLOR_GREEN 0x008000FF
  19. #define COLOR_CYAN 0x00FFFFFF
  20. #define COLOR_YELLOW 0xFFFF00FF
  21. #define COLOR_BLUE 0x0000FFFF
  22. #define COLOR_ORANGE 0xFF8000FF
  23. #define COLOR_PINK 0xFF00FFFF
  24. #define COLOR_PURPLE 0x8000FFFF
  25.  
  26. //Gay shit
  27. #define PATH "/Users/%s.ini"
  28.  
  29. //Dialogs
  30. #define DIALOG_REGISTER 1
  31. #define DIALOG_LOGIN 2
  32. #define DIALOG_SUCCESS_1 3
  33. #define DIALOG_SUCCESS_2 4
  34. #define DIALOG_TEAM_SELECTION 5
  35.  
  36. //Teams
  37. #define TEAM_USA 5000
  38. #define TEAM_CANADA 5001
  39. #define TEAM_BRITAIN 5002
  40. #define TEAM_AUSTRALIA 5003
  41. #define TEAM_RUSSIA 5004
  42. #define TEAM_GERMANY 5005
  43. #define TEAM_ITALY 5006
  44. #define TEAM_FRANCE 5007
  45. #define TEAM_CHINA 5008
  46. #define TEAM_INDIA 5009
  47.  
  48. #define COLOR_USA 0x0000FFFF
  49. #define COLOR_CANADA 0x008000FF
  50. #define COLOR_BRITAIN 0xFF0000FF
  51. #define COLOR_AUSTRALIA 0x0080FFFF
  52. #define COLOR_RUSSIA 0x800000FF
  53. #define COLOR_GERMANY 0xFFFF00FF
  54. #define COLOR_ITALY 0x408080FF
  55. #define COLOR_FRANCE 0x80FF80FF
  56. #define COLOR_CHINA 0xFF8000FF
  57. #define COLOR_INDIA 0x0080C0FF
  58.  
  59. #define COLOR_USA_EMBED "{0000FF}"
  60. #define COLOR_CANADA_EMBED "{008000}"
  61. #define COLOR_BRITAIN_EMBED "{FF0000}"
  62. #define COLOR_AUSTRALIA_EMBED "{0080FF}"
  63. #define COLOR_RUSSIA_EMBED "{800000}"
  64. #define COLOR_GERMANY_EMBED "{408080}"
  65. #define COLOR_ITALY_EMBED "{80FF80}"
  66. #define COLOR_FRANCE_EMBED "{0080C0}"
  67. #define COLOR_CHINA_EMBED "{FFFF00}"
  68. #define COLOR_INDIA_EMBED "{FF8000}"
  69.  
  70. //Player data
  71. enum pInfo
  72. {
  73. pPass,
  74. pCash,
  75. pAdmin,
  76. pKills,
  77. pDeaths,
  78. pVIP,
  79. pXP,
  80. pLevel,
  81. pLevelName[64],
  82. pTeam
  83. }
  84.  
  85. new PlayerInfo[MAX_PLAYERS][pInfo];
  86.  
  87. //Gates
  88. new GATE_ADMIN_HOUSE1;
  89. new GATE_ADMIN_HOUSE2;
  90.  
  91.  
  92. main()
  93. {
  94. print("\n----------------------------------");
  95. print(" Maude Team Deathmatch");
  96. print("----------------------------------\n");
  97. }
  98. public OnGameModeInit()
  99. {
  100. SetGameModeText("MAUDE TDM 1.0");
  101. DisableInteriorEnterExits();
  102. //Gates
  103. GATE_ADMIN_HOUSE1 = CreateAutomaticGate(980, 1491.3000000,-699.9000200,96.5000000, 0.0000000,0.0000000,180.0000000, 1480.8000488281,-699.9000200,96.5000000, 0.000000, 0.0000000, 180.000000, 1497.3116,-701.8853,94.7500, 20.0, 0.003, 1);
  104. GATE_ADMIN_HOUSE2 = CreateAutomaticGate(980, 1502.8000000,-699.9000200,96.5000000, 0.000000, 0.0000000, 0.0000000, 1514.3000488281,-699.9000200,96.5000000, 0.000000, 10.000000, 90.000000, 1497.3116,-701.8853,94.7500, 20.0, 0.003, 1);
  105.  
  106. //Admin House
  107. AddStaticVehicleEx(520,1465.0996000,-688.0996100,95.7000000,270.0000000,-1,-1,15); //Hydra
  108. AddStaticVehicleEx(425,1523.3000000,-672.7000100,95.6000000,180.0000000,95,10,15); //Hunter
  109. AddStaticVehicleEx(520,1465.0000000,-675.7999900,95.7000000,270.0000000,-1,-1,15); //Hydra
  110. AddStaticVehicleEx(520,1465.1000000,-663.4000200,95.7000000,270.0000000,-1,-1,15); //Hydra
  111. AddStaticVehicleEx(445,1517.1000000,-697.0000000,94.7000000,90.0000000,100,100,15); //Admiral
  112. AddStaticVehicleEx(445,1517.1000000,-694.2000100,94.7000000,90.0000000,100,100,15); //Admiral
  113. AddStaticVehicleEx(445,1517.1000000,-691.2999900,94.7000000,90.0000000,100,100,15); //Admiral
  114. AddStaticVehicleEx(468,1502.7000000,-687.9000200,94.5000000,180.0000000,132,4,15); //Sanchez
  115. AddStaticVehicleEx(468,1504.0000000,-687.9000200,94.5000000,180.0000000,132,4,15); //Sanchez
  116. AddStaticVehicleEx(468,1505.4000000,-687.9000200,94.5000000,180.0000000,132,4,15); //Sanchez
  117. AddStaticVehicleEx(468,1506.9000000,-687.9000200,94.5000000,180.0000000,132,4,15); //Sanchez
  118. AddStaticVehicleEx(521,1491.7000000,-687.7999900,94.4000000,180.0000000,96,26,15); //FCR-900
  119. AddStaticVehicleEx(521,1490.5000000,-687.9000200,94.4000000,180.0000000,96,26,15); //FCR-900
  120. AddStaticVehicleEx(521,1489.0000000,-687.9000200,94.4000000,180.0000000,96,26,15); //FCR-900
  121. AddStaticVehicleEx(521,1487.6000000,-688.0000000,94.4000000,180.0000000,96,26,15); //FCR-900
  122. CreateObject(987,1469.5000000,-694.2000100,93.7000000,0.0000000,0.0000000,0.0000000); //object(elecfence_bar) (1)
  123. CreateObject(987,1457.6000000,-694.2000100,93.7000000,0.0000000,0.0000000,0.0000000); //object(elecfence_bar) (2)
  124. CreateObject(987,1456.7000000,-694.2000100,93.7000000,0.0000000,0.0000000,0.0000000); //object(elecfence_bar) (3)
  125. CreateObject(987,1456.6000000,-682.4000200,93.7000000,0.0000000,0.0000000,270.0000000); //object(elecfence_bar) (4)
  126. CreateObject(987,1456.6000000,-670.4000200,93.7000000,0.0000000,0.0000000,270.0000000); //object(elecfence_bar) (5)
  127. CreateObject(987,1456.6000000,-658.4000200,93.7000000,0.0000000,0.0000000,270.0000000); //object(elecfence_bar) (6)
  128. CreateObject(987,1456.6000000,-657.0000000,93.7000000,0.0000000,0.0000000,270.0000000); //object(elecfence_bar) (7)
  129. CreateObject(987,1468.3000000,-657.2000100,93.7000000,0.0000000,0.0000000,180.0000000); //object(elecfence_bar) (10)
  130. CreateObject(987,1480.3000000,-657.2000100,93.7000000,0.0000000,0.0000000,179.9950000); //object(elecfence_bar) (11)
  131. CreateObject(987,1492.3000000,-657.2000100,93.7000000,0.0000000,0.0000000,179.9950000); //object(elecfence_bar) (12)
  132. CreateObject(987,1504.2000000,-657.2000100,93.7000000,0.0000000,0.0000000,179.9950000); //object(elecfence_bar) (13)
  133. CreateObject(987,1516.1000000,-657.2000100,93.7000000,0.0000000,0.0000000,179.9950000); //object(elecfence_bar) (14)
  134. CreateObject(987,1528.0000000,-657.2000100,93.7000000,0.0000000,0.0000000,179.9950000); //object(elecfence_bar) (15)
  135. CreateObject(987,1531.0000000,-657.2000100,93.7000000,0.0000000,0.0000000,179.9950000); //object(elecfence_bar) (16)
  136. CreateObject(987,1530.9000000,-669.0999800,93.7000000,0.0000000,0.0000000,90.0000000); //object(elecfence_bar) (18)
  137. CreateObject(987,1530.9000000,-681.0000000,93.7000000,0.0000000,0.0000000,90.0000000); //object(elecfence_bar) (19)
  138. CreateObject(987,1530.9000000,-692.9000200,93.7000000,0.0000000,0.0000000,90.0000000); //object(elecfence_bar) (20)
  139. CreateObject(987,1530.9000000,-699.7999900,93.7000000,0.0000000,0.0000000,90.0000000); //object(elecfence_bar) (21)
  140. CreateObject(987,1519.0000000,-699.7999900,93.7000000,0.0000000,0.0000000,0.0000000); //object(elecfence_bar) (22)
  141. CreateObject(987,1508.6000000,-699.7999900,93.7000000,0.0000000,0.0000000,0.0000000); //object(elecfence_bar) (23)
  142. CreateObject(987,1476.3000000,-694.2999900,93.7000000,0.0000000,0.0000000,330.0000000); //object(elecfence_bar) (25)
  143.  
  144. return 1;
  145. }
  146.  
  147. public OnGameModeExit()
  148. {
  149. return 1;
  150. }
  151.  
  152. public OnPlayerRequestClass(playerid, classid)
  153. {
  154. TogglePlayerSpectating(playerid, 1);
  155. SpawnPlayerAtTeam(playerid);
  156. if(PlayerInfo[playerid][pTeam] == 4200)
  157. {
  158. ShowPlayerDialog(playerid,5,DIALOG_STYLE_LIST,"You have registered, please select your team.",""COLOR_USA_EMBED"United States\n"COLOR_CANADA_EMBED"Canada\n"COLOR_BRITAIN_EMBED"Britain\n"COLOR_AUSTRALIA_EMBED"Australia\n"COLOR_RUSSIA_EMBED"Russia\n"COLOR_CHINA_EMBED"China\n"COLOR_GERMANY_EMBED"Germany\n"COLOR_ITALY_EMBED"Italy\n"COLOR_INDIA_EMBED"India\n"COLOR_FRANCE_EMBED"France","Select","");
  159. }
  160. return 1;
  161. }
  162.  
  163. public OnPlayerConnect(playerid)
  164. {
  165. new name[MAX_PLAYER_NAME], string[23 + MAX_PLAYER_NAME];
  166. GetPlayerName(playerid, name, sizeof(name));
  167. format(string, sizeof(string), "-| %s has connected to the server |-", name);
  168. SendClientMessageToAll(COLOR_LIME, string);
  169. TogglePlayerSpectating(playerid, true);
  170.  
  171. if(fexist(UserPath(playerid)))
  172. {
  173. INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  174. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Login","Type your password below to login.","Login","Quit");
  175. }
  176. else
  177. {
  178. ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"Registering...","Type your password below to register a new account.","Register","Quit");
  179. }
  180. return 1;
  181. }
  182.  
  183. public OnPlayerDisconnect(playerid, reason)
  184. {
  185. new name[MAX_PLAYER_NAME], string[23 + MAX_PLAYER_NAME];
  186. GetPlayerName(playerid, name, sizeof(name));
  187.  
  188. new DisconnectReason[3][] =
  189. {
  190. "Timeout/Crash",
  191. "Quit",
  192. "Kick/Ban"
  193. };
  194.  
  195. format(string, sizeof(string), "-| %s has left the server (%s) |-", name, DisconnectReason[reason]);
  196. SendClientMessageToAll(COLOR_YELLOW, string);
  197.  
  198. new INI:File = INI_Open(UserPath(playerid));
  199. INI_SetTag(File,"data");
  200. INI_WriteInt(File,"Cash",GetPlayerMoney(playerid));
  201. INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
  202. INI_WriteInt(File,"Kills",PlayerInfo[playerid][pKills]);
  203. INI_WriteInt(File,"Deaths",PlayerInfo[playerid][pDeaths]);
  204. INI_WriteInt(File,"VIP",PlayerInfo[playerid][pVIP]);
  205. INI_WriteInt(File,"XP",PlayerInfo[playerid][pXP]);
  206. INI_WriteInt(File,"Score",PlayerInfo[playerid][pLevel]);
  207. INI_WriteInt(File,"Team",PlayerInfo[playerid][pTeam]);
  208. INI_Close(File);
  209. return 1;
  210. }
  211.  
  212. public OnPlayerSpawn(playerid)
  213. {
  214. TogglePlayerSpectating(playerid, false);
  215. return 1;
  216. }
  217.  
  218. public OnPlayerDeath(playerid, killerid, reason)
  219. {
  220. SendDeathMessage(killerid, playerid, reason);
  221. PlayerInfo[playerid][pDeaths]++;
  222.  
  223. if(killerid != INVALID_PLAYER_ID)
  224. {
  225. new string1[128];
  226. new string2[128];
  227. format(string1, sizeof(string1), "You have been killed by %u!", killerid);
  228. format(string2, sizeof(string2), "You have killed %u, and received $1000!", playerid);
  229. SendClientMessage(playerid, COLOR_RED, string1);
  230. SendClientMessage(killerid, COLOR_LIME, string2);
  231. PlayerInfo[killerid][pKills]++;
  232. GivePlayerXP(killerid, 100);
  233. GivePlayerMoney(killerid, 1000);
  234. }
  235. return 1;
  236. }
  237.  
  238. public OnVehicleSpawn(vehicleid)
  239. {
  240. return 1;
  241. }
  242.  
  243. public OnVehicleDeath(vehicleid, killerid)
  244. {
  245. return 1;
  246. }
  247.  
  248. public OnPlayerText(playerid, text[])
  249. {
  250. return 1;
  251. }
  252.  
  253. public OnPlayerCommandText(playerid, cmdtext[])
  254. {
  255. if (strcmp("/mycommand", cmdtext, true, 10) == 0)
  256. {
  257. // Do something here
  258. return 1;
  259. }
  260. return 0;
  261. }
  262.  
  263. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  264. {
  265. return 1;
  266. }
  267.  
  268. public OnPlayerExitVehicle(playerid, vehicleid)
  269. {
  270. return 1;
  271. }
  272.  
  273. public OnPlayerStateChange(playerid, newstate, oldstate)
  274. {
  275. return 1;
  276. }
  277.  
  278. public OnPlayerEnterCheckpoint(playerid)
  279. {
  280. return 1;
  281. }
  282.  
  283. public OnPlayerLeaveCheckpoint(playerid)
  284. {
  285. return 1;
  286. }
  287.  
  288. public OnPlayerEnterRaceCheckpoint(playerid)
  289. {
  290. return 1;
  291. }
  292.  
  293. public OnPlayerLeaveRaceCheckpoint(playerid)
  294. {
  295. return 1;
  296. }
  297.  
  298. public OnRconCommand(cmd[])
  299. {
  300. return 1;
  301. }
  302.  
  303. public OnPlayerRequestSpawn(playerid)
  304. {
  305. return 1;
  306. }
  307.  
  308. public OnObjectMoved(objectid)
  309. {
  310. return 1;
  311. }
  312.  
  313. public OnPlayerObjectMoved(playerid, objectid)
  314. {
  315. return 1;
  316. }
  317.  
  318. public OnPlayerPickUpPickup(playerid, pickupid)
  319. {
  320. return 1;
  321. }
  322.  
  323. public OnVehicleMod(playerid, vehicleid, componentid)
  324. {
  325. return 1;
  326. }
  327.  
  328. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  329. {
  330. return 1;
  331. }
  332.  
  333. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  334. {
  335. return 1;
  336. }
  337.  
  338. public OnPlayerSelectedMenuRow(playerid, row)
  339. {
  340. return 1;
  341. }
  342.  
  343. public OnPlayerExitedMenu(playerid)
  344. {
  345. return 1;
  346. }
  347.  
  348. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  349. {
  350. return 1;
  351. }
  352.  
  353. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  354. {
  355. return 1;
  356. }
  357.  
  358. public OnRconLoginAttempt(ip[], password[], success)
  359. {
  360. return 1;
  361. }
  362.  
  363. public OnPlayerUpdate(playerid)
  364. {
  365. return 1;
  366. }
  367.  
  368. public OnPlayerStreamIn(playerid, forplayerid)
  369. {
  370. return 1;
  371. }
  372.  
  373. public OnPlayerStreamOut(playerid, forplayerid)
  374. {
  375. return 1;
  376. }
  377.  
  378. public OnVehicleStreamIn(vehicleid, forplayerid)
  379. {
  380. return 1;
  381. }
  382.  
  383. public OnVehicleStreamOut(vehicleid, forplayerid)
  384. {
  385. return 1;
  386. }
  387.  
  388. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  389. {
  390. switch( dialogid )
  391. {
  392. case DIALOG_REGISTER:
  393. {
  394. if (!response) return Kick(playerid);
  395. if(response)
  396. {
  397. if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Registering...","You have entered an invalid password.\nType your password below to register a new account.","Register","Quit");
  398. new INI:File = INI_Open(UserPath(playerid));
  399. INI_SetTag(File,"data");
  400. INI_WriteInt(File,"Password",udb_hash(inputtext));
  401. INI_WriteInt(File,"Cash",0);
  402. INI_WriteInt(File,"Admin",0);
  403. INI_WriteInt(File,"Kills",0);
  404. INI_WriteInt(File,"Deaths",0);
  405. INI_WriteInt(File,"VIP",0);
  406. INI_WriteInt(File,"XP",0);
  407. INI_WriteInt(File,"Level",0);
  408. INI_Close(File);
  409.  
  410. SetSpawnInfo(playerid, 0, 0, 1958.33, 1343.12, 15.36, 269.15, 0, 0, 0, 0, 0, 0);
  411. SpawnPlayer(playerid);
  412. PlayerInfo[playerid][pTeam] = 4200;
  413. }
  414. }
  415.  
  416. case DIALOG_LOGIN:
  417. {
  418. if ( !response ) return Kick ( playerid );
  419. if( response )
  420. {
  421. if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
  422. {
  423. INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  424. GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
  425. SetPlayerScore(playerid, PlayerInfo[playerid][pLevel]);
  426. ShowPlayerDialog(playerid, DIALOG_SUCCESS_2, DIALOG_STYLE_MSGBOX,"Success!","You have successfully logged in!","Ok","");
  427. SetSpawnInfo(playerid, 0, 0, 1958.33, 1343.12, 15.36, 269.15, 0, 0, 0, 0, 0, 0);
  428. TogglePlayerSpectating(playerid, 0);
  429. SpawnPlayer(playerid);
  430. SpawnPlayerAtTeam(playerid);
  431. }
  432. else
  433. {
  434. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Login","You have entered an incorrect password.\nType your password below to login.","Login","Quit");
  435. }
  436. return 1;
  437. }
  438. }
  439. }
  440.  
  441. if(dialogid == DIALOG_TEAM_SELECTION)
  442. {
  443. if(response)
  444. {
  445. switch(listitem)
  446. {
  447. case 0: TogglePlayerSpectating(playerid, 0), AltSetPlayerTeam(playerid, TEAM_USA);
  448. case 1: TogglePlayerSpectating(playerid, 0), AltSetPlayerTeam(playerid, TEAM_CANADA);
  449. case 2: TogglePlayerSpectating(playerid, 0), AltSetPlayerTeam(playerid, TEAM_BRITAIN);
  450. case 3: TogglePlayerSpectating(playerid, 0), AltSetPlayerTeam(playerid, TEAM_AUSTRALIA);
  451. case 4: TogglePlayerSpectating(playerid, 0), AltSetPlayerTeam(playerid, TEAM_RUSSIA);
  452. case 5: TogglePlayerSpectating(playerid, 0), AltSetPlayerTeam(playerid, TEAM_GERMANY);
  453. case 6: TogglePlayerSpectating(playerid, 0), AltSetPlayerTeam(playerid, TEAM_ITALY);
  454. case 7: TogglePlayerSpectating(playerid, 0), AltSetPlayerTeam(playerid, TEAM_FRANCE);
  455. case 8: TogglePlayerSpectating(playerid, 0), AltSetPlayerTeam(playerid, TEAM_CHINA);
  456. case 9: TogglePlayerSpectating(playerid, 0), AltSetPlayerTeam(playerid, TEAM_INDIA);
  457. }
  458. }
  459. return 1;
  460. }
  461.  
  462. return 0;
  463. }
  464.  
  465. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  466. {
  467. return 1;
  468. }
  469.  
  470. public OnPlayerRequestGate(playerid, gateid)
  471. {
  472. //return 0 means cannot pass, return 1 means can
  473. if((gateid == GATE_ADMIN_HOUSE1) && (PlayerInfo[playerid][pAdmin] < 1)) return 0;
  474. if((gateid == GATE_ADMIN_HOUSE2) && (PlayerInfo[playerid][pAdmin] < 1)) return 0;
  475.  
  476. return 1;
  477. }
  478.  
  479. /*////////////////////////////////////
  480. COMMANDS
  481. *//////////////////////////////////////
  482. CMD:changeteam(playerid, params[])
  483. {
  484. ShowPlayerDialog(playerid,5,DIALOG_STYLE_LIST,"You have registered, please select your team.",""COLOR_USA_EMBED"United States\n"COLOR_CANADA_EMBED"Canada\n"COLOR_BRITAIN_EMBED"Britain\n"COLOR_AUSTRALIA_EMBED"Australia\n"COLOR_RUSSIA_EMBED"Russia\n"COLOR_CHINA_EMBED"China\n"COLOR_GERMANY_EMBED"Germany\n"COLOR_ITALY_EMBED"Italy\n"COLOR_INDIA_EMBED"India\n"COLOR_FRANCE_EMBED"France","Select","");
  485. return 1;
  486. }
  487.  
  488. CMD:setadmin(playerid, params[])
  489. {
  490. if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdmin] >= 4)
  491. {
  492. new id;
  493. new asetlevel;
  494. new name[24];
  495. GetPlayerName(playerid, name, sizeof(name));
  496. if(sscanf(params, "ud", id, asetlevel)) SendClientMessage(playerid, COLOR_RED, "USAGE: /setadmin [playerid] [level]");
  497. else if(id == INVALID_PLAYER_ID) SendClientMessage(playerid, COLOR_RED, "ERROR: Player not found.");
  498. else if((PlayerInfo[id][pAdmin] >= PlayerInfo[playerid][pAdmin]) && !IsPlayerAdmin(playerid)) SendClientMessage(playerid, COLOR_RED, "ERROR: You cannot use this command on admins that are of equal or higher rank than you.");
  499. else if((playerid == id) && !IsPlayerAdmin(playerid)) SendClientMessage(playerid, COLOR_RED, "ERROR: You cannot use this command on yourself.");
  500. else
  501. {
  502. new name2[24];
  503. new string1[128];
  504. new string2[128];
  505. GetPlayerName(id, name2, sizeof(name2));
  506. PlayerInfo[id][pAdmin] = asetlevel;
  507. format(string1, sizeof(string1), "-| You have set %s's admin level to %d |-", name2, asetlevel);
  508. format(string2, sizeof(string2), "-| Your admin level has been set to %d by %s |-", asetlevel, name);
  509. SendClientMessage(playerid, COLOR_GREEN, string1);
  510. SendClientMessage(id, COLOR_GREEN, string2);
  511. }
  512. }
  513. else
  514. {
  515. SendClientMessage(playerid, COLOR_RED, "ERROR: You must have admin level 4 or higher to use this command.");
  516. }
  517. return 1;
  518. }
  519.  
  520. CMD:adminhouse(playerid, params[])
  521. {
  522. if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdmin] >= 1)
  523. {
  524. SetPlayerPos(playerid, 1498.8534,-703.7729,94.7439);
  525. SetPlayerFacingAngle(playerid, 7.6887);
  526. SetCameraBehindPlayer(playerid);
  527. }
  528. else
  529. {
  530. SendClientMessage(playerid, COLOR_RED, "ERROR: You must be an admin to use this command.");
  531. }
  532. return 1;
  533. }
  534. CMD:closeadmingate(playerid, params[])
  535. {
  536. if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdmin] >= 1)
  537. {
  538. CloseGate(GATE_ADMIN_HOUSE1);
  539. CloseGate(GATE_ADMIN_HOUSE2);
  540. }
  541. else
  542. {
  543. SendClientMessage(playerid, COLOR_RED, "ERROR: You must be an admin to use this command.");
  544. }
  545. return 1;
  546. }
  547. CMD:openadmingate(playerid, params[])
  548. {
  549. if(IsPlayerAdmin(playerid) || PlayerInfo[playerid][pAdmin] >= 1)
  550. {
  551. OpenGate(GATE_ADMIN_HOUSE1);
  552. OpenGate(GATE_ADMIN_HOUSE2);
  553. }
  554. else
  555. {
  556. SendClientMessage(playerid, COLOR_RED, "ERROR: You must be an admin to use this command.");
  557. }
  558. return 1;
  559. }
  560. /*////////////////////////////////////////////////////
  561. YEET DAB
  562. *////////////////////////////////////////////////////
  563. forward LoadUser_data(playerid,name[],value[]);
  564. public LoadUser_data(playerid,name[],value[])
  565. {
  566. INI_Int("Password",PlayerInfo[playerid][pPass]);
  567. INI_Int("Cash",PlayerInfo[playerid][pCash]);
  568. INI_Int("Admin",PlayerInfo[playerid][pAdmin]);
  569. INI_Int("Kills",PlayerInfo[playerid][pKills]);
  570. INI_Int("Deaths",PlayerInfo[playerid][pDeaths]);
  571. INI_Int("VIP",PlayerInfo[playerid][pVIP]);
  572. INI_Int("XP",PlayerInfo[playerid][pXP]);
  573. INI_Int("Level",PlayerInfo[playerid][pLevel]);
  574. INI_String("Level Name", PlayerInfo[playerid][pLevelName], 64);
  575. INI_Int("Team",PlayerInfo[playerid][pTeam]);
  576. return 1;
  577. }
  578.  
  579. stock UserPath(playerid)
  580. {
  581. new string[128],playername[MAX_PLAYER_NAME];
  582. GetPlayerName(playerid,playername,sizeof(playername));
  583. format(string,sizeof(string),PATH,playername);
  584. return string;
  585. }
  586.  
  587. /*Credits to Dracoblue*/
  588. stock udb_hash(buf[]) {
  589. new length=strlen(buf);
  590. new s1 = 1;
  591. new s2 = 0;
  592. new n;
  593. for (n=0; n<length; n++)
  594. {
  595. s1 = (s1 + buf[n]) % 65521;
  596. s2 = (s2 + s1) % 65521;
  597. }
  598. return (s2 << 16) + s1;
  599. }
  600.  
  601. stock PlayerLevelUp(playerid)
  602. {
  603. PlayerInfo[playerid][pLevel]++;
  604. }
  605.  
  606. stock GivePlayerXP(playerid, xpamount)
  607. {
  608. PlayerInfo[playerid][pXP] += xpamount;
  609. LevelUpCheck(playerid);
  610. }
  611.  
  612. /*//////////////////////////////////////////////////
  613. LEVELS
  614. *//////////////////////////////////////////////////
  615.  
  616. stock GetPlayerLevel(playerid)
  617. {
  618. if(PlayerInfo[playerid][pLevel] == 1) return 1;
  619. if(PlayerInfo[playerid][pLevel] == 2) return 2;
  620. if(PlayerInfo[playerid][pLevel] == 3) return 3;
  621. if(PlayerInfo[playerid][pLevel] == 4) return 4;
  622. if(PlayerInfo[playerid][pLevel] == 5) return 5;
  623. if(PlayerInfo[playerid][pLevel] == 6) return 6;
  624. if(PlayerInfo[playerid][pLevel] == 7) return 7;
  625. if(PlayerInfo[playerid][pLevel] == 8) return 8;
  626. if(PlayerInfo[playerid][pLevel] == 9) return 9;
  627. if(PlayerInfo[playerid][pLevel] == 10) return 10;
  628. if(PlayerInfo[playerid][pLevel] == 11) return 11;
  629. if(PlayerInfo[playerid][pLevel] == 12) return 12;
  630. if(PlayerInfo[playerid][pLevel] == 13) return 13;
  631. if(PlayerInfo[playerid][pLevel] == 14) return 14;
  632. if(PlayerInfo[playerid][pLevel] == 15) return 15;
  633. if(PlayerInfo[playerid][pLevel] == 16) return 16;
  634. if(PlayerInfo[playerid][pLevel] == 17) return 17;
  635. if(PlayerInfo[playerid][pLevel] == 18) return 18;
  636. if(PlayerInfo[playerid][pLevel] == 19) return 19;
  637. if(PlayerInfo[playerid][pLevel] == 20) return 20;
  638. if(PlayerInfo[playerid][pLevel] == 21) return 21;
  639. if(PlayerInfo[playerid][pLevel] == 22) return 22;
  640. if(PlayerInfo[playerid][pLevel] == 23) return 23;
  641. if(PlayerInfo[playerid][pLevel] == 24) return 24;
  642. if(PlayerInfo[playerid][pLevel] == 25) return 25;
  643. if(PlayerInfo[playerid][pLevel] == 26) return 26;
  644. if(PlayerInfo[playerid][pLevel] == 27) return 27;
  645. if(PlayerInfo[playerid][pLevel] == 28) return 28;
  646. if(PlayerInfo[playerid][pLevel] == 29) return 29;
  647. if(PlayerInfo[playerid][pLevel] == 30) return 30;
  648. }
  649.  
  650. stock LevelUpCheck(playerid)
  651. {
  652. if(PlayerInfo[playerid][pXP] == 100) PlayerLevelUp(playerid); //To level 2
  653. if(PlayerInfo[playerid][pXP] == 250) PlayerLevelUp(playerid); //To level 3
  654. if(PlayerInfo[playerid][pXP] == 500) PlayerLevelUp(playerid); //To level 4
  655. if(PlayerInfo[playerid][pXP] == 750) PlayerLevelUp(playerid); //To level 5
  656. if(PlayerInfo[playerid][pXP] == 1000) PlayerLevelUp(playerid); //To level 6
  657. if(PlayerInfo[playerid][pXP] == 1250) PlayerLevelUp(playerid); //To level 7
  658. if(PlayerInfo[playerid][pXP] == 1500) PlayerLevelUp(playerid); //To level 8
  659. if(PlayerInfo[playerid][pXP] == 1750) PlayerLevelUp(playerid); //To level 9
  660. if(PlayerInfo[playerid][pXP] == 2000) PlayerLevelUp(playerid); //To level 10
  661. if(PlayerInfo[playerid][pXP] == 2500) PlayerLevelUp(playerid); //To level 11
  662. if(PlayerInfo[playerid][pXP] == 3000) PlayerLevelUp(playerid); //To level 12
  663. if(PlayerInfo[playerid][pXP] == 3500) PlayerLevelUp(playerid); //To level 13
  664. if(PlayerInfo[playerid][pXP] == 4000) PlayerLevelUp(playerid); //To level 14
  665. if(PlayerInfo[playerid][pXP] == 4500) PlayerLevelUp(playerid); //To level 15
  666. if(PlayerInfo[playerid][pXP] == 5000) PlayerLevelUp(playerid); //To level 16
  667. if(PlayerInfo[playerid][pXP] == 5500) PlayerLevelUp(playerid); //To level 17
  668. if(PlayerInfo[playerid][pXP] == 6000) PlayerLevelUp(playerid); //To Level 18
  669. if(PlayerInfo[playerid][pXP] == 6500) PlayerLevelUp(playerid); //To level 19
  670. if(PlayerInfo[playerid][pXP] == 7000) PlayerLevelUp(playerid); //To Level 20
  671. if(PlayerInfo[playerid][pXP] == 7500) PlayerLevelUp(playerid); //To Level 21
  672. if(PlayerInfo[playerid][pXP] == 8000) PlayerLevelUp(playerid); //To Level 22
  673. if(PlayerInfo[playerid][pXP] == 8500) PlayerLevelUp(playerid); //To Level 23
  674. if(PlayerInfo[playerid][pXP] == 9000) PlayerLevelUp(playerid); //To level 24
  675. if(PlayerInfo[playerid][pXP] == 10000) PlayerLevelUp(playerid); //To level 25
  676. if(PlayerInfo[playerid][pXP] == 11000) PlayerLevelUp(playerid); //To level 26
  677. if(PlayerInfo[playerid][pXP] == 12000) PlayerLevelUp(playerid); //To level 27
  678. if(PlayerInfo[playerid][pXP] == 13000) PlayerLevelUp(playerid); //To level 28
  679. if(PlayerInfo[playerid][pXP] == 14000) PlayerLevelUp(playerid); //To level 29
  680. if(PlayerInfo[playerid][pXP] == 15000) PlayerLevelUp(playerid); //To level 30
  681. }
  682.  
  683. stock SetPlayerLevelName(playerid)
  684. {
  685. if(PlayerInfo[playerid][pLevel] == 1) PlayerInfo[playerid][pLevelName] = "Private I";
  686. if(PlayerInfo[playerid][pLevel] == 2) PlayerInfo[playerid][pLevelName] = "Private II";
  687. if(PlayerInfo[playerid][pLevel] == 3) PlayerInfo[playerid][pLevelName] = "Private III";
  688. if(PlayerInfo[playerid][pLevel] == 4) PlayerInfo[playerid][pLevelName] = "Private First Class";
  689. if(PlayerInfo[playerid][pLevel] == 5) PlayerInfo[playerid][pLevelName] = "Specialist";
  690. if(PlayerInfo[playerid][pLevel] == 6) PlayerInfo[playerid][pLevelName] = "Corporal";
  691. if(PlayerInfo[playerid][pLevel] == 7) PlayerInfo[playerid][pLevelName] = "Sergeant";
  692. if(PlayerInfo[playerid][pLevel] == 8) PlayerInfo[playerid][pLevelName] = "Staff Sergeant";
  693. if(PlayerInfo[playerid][pLevel] == 9) PlayerInfo[playerid][pLevelName] = "Sergeant First Class";
  694. if(PlayerInfo[playerid][pLevel] == 10) PlayerInfo[playerid][pLevelName] = "Master Sergeant";
  695. if(PlayerInfo[playerid][pLevel] == 11) PlayerInfo[playerid][pLevelName] = "First Sergeant";
  696. if(PlayerInfo[playerid][pLevel] == 12) PlayerInfo[playerid][pLevelName] = "Sergeant Major";
  697. if(PlayerInfo[playerid][pLevel] == 13) PlayerInfo[playerid][pLevelName] = "Command Sergeant Major";
  698. if(PlayerInfo[playerid][pLevel] == 14) PlayerInfo[playerid][pLevelName] = "Sergeant Major of the Army";
  699. if(PlayerInfo[playerid][pLevel] == 15) PlayerInfo[playerid][pLevelName] = "Warrant Officer";
  700. if(PlayerInfo[playerid][pLevel] == 16) PlayerInfo[playerid][pLevelName] = "Chief Warrant Officer II";
  701. if(PlayerInfo[playerid][pLevel] == 17) PlayerInfo[playerid][pLevelName] = "Chief Warrant Officer III";
  702. if(PlayerInfo[playerid][pLevel] == 18) PlayerInfo[playerid][pLevelName] = "Chief Warrant Officer IV";
  703. if(PlayerInfo[playerid][pLevel] == 19) PlayerInfo[playerid][pLevelName] = "Chief Warrant Officer V";
  704. if(PlayerInfo[playerid][pLevel] == 20) PlayerInfo[playerid][pLevelName] = "Second Lieutenant";
  705. if(PlayerInfo[playerid][pLevel] == 21) PlayerInfo[playerid][pLevelName] = "First Lieutenant";
  706. if(PlayerInfo[playerid][pLevel] == 22) PlayerInfo[playerid][pLevelName] = "Captain";
  707. if(PlayerInfo[playerid][pLevel] == 23) PlayerInfo[playerid][pLevelName] = "Major";
  708. if(PlayerInfo[playerid][pLevel] == 24) PlayerInfo[playerid][pLevelName] = "Lieutenant Colonel";
  709. if(PlayerInfo[playerid][pLevel] == 25) PlayerInfo[playerid][pLevelName] = "Colonel";
  710. if(PlayerInfo[playerid][pLevel] == 26) PlayerInfo[playerid][pLevelName] = "Brigadier General";
  711. if(PlayerInfo[playerid][pLevel] == 27) PlayerInfo[playerid][pLevelName] = "Major General";
  712. if(PlayerInfo[playerid][pLevel] == 28) PlayerInfo[playerid][pLevelName] = "Lieutenant General";
  713. if(PlayerInfo[playerid][pLevel] == 29) PlayerInfo[playerid][pLevelName] = "General";
  714. if(PlayerInfo[playerid][pLevel] == 30) PlayerInfo[playerid][pLevelName] = "General of the Army";
  715. }
  716.  
  717. stock GetPlayerLevelName(playerid)
  718. {
  719. SetPlayerLevelName(playerid);
  720. return PlayerInfo[playerid][pLevelName];
  721. }
  722.  
  723. /*/////////////////////////////////////////
  724. TEAMS
  725. *///////////////////////////////////////////
  726. stock AltSetPlayerTeam(playerid, team)
  727. {
  728. SetPlayerTeam(playerid, team);
  729. PlayerInfo[playerid][pTeam] = team;
  730. SpawnPlayerAtTeam(playerid);
  731. if(team == TEAM_USA) SetPlayerColor(playerid, COLOR_USA);
  732. if(team == TEAM_CANADA) SetPlayerColor(playerid, COLOR_CANADA);
  733. if(team == TEAM_BRITAIN) SetPlayerColor(playerid, COLOR_BRITAIN);
  734. if(team == TEAM_AUSTRALIA) SetPlayerColor(playerid, COLOR_AUSTRALIA);
  735. if(team == TEAM_RUSSIA) SetPlayerColor(playerid, COLOR_RUSSIA);
  736. if(team == TEAM_GERMANY) SetPlayerColor(playerid, COLOR_GERMANY);
  737. if(team == TEAM_ITALY) SetPlayerColor(playerid, COLOR_ITALY);
  738. if(team == TEAM_FRANCE) SetPlayerColor(playerid, COLOR_FRANCE);
  739. if(team == TEAM_CHINA) SetPlayerColor(playerid, COLOR_CHINA);
  740. if(team == TEAM_INDIA) SetPlayerColor(playerid, COLOR_INDIA);
  741. }
  742.  
  743. stock SpawnPlayerAtTeam(playerid)
  744. {
  745. new Float:USASpawns[3][4] =
  746. {
  747. {154.0558,1912.6029,18.8228,4.6064},
  748. {213.6994,1874.9786,17.6406,3.0163},
  749. {153.7363,1847.5313,17.6406,356.7496}
  750. };
  751. new Float:CanadaSpawns[3][4] =
  752. {
  753. {-472.4701,-194.1285,78.0881,20.1248},
  754. {-541.7864,-151.8316,77.0442,359.2529},
  755. {-536.2971,-98.5008,63.2969,273.6887}
  756. };
  757. new Float:BritainSpawns[3][4] =
  758. {
  759. {-1521.9277,481.4308,7.1875,180.5736},
  760. {-1348.7789,500.1924,18.2344,348.6155},
  761. {-1563.8306,316.6201,7.1875,131.1303}
  762. };
  763. new Float:AustraliaSpawns[3][4] =
  764. {
  765. {-688.0345,944.7898,13.6328,0.0469},
  766. {-686.2051,979.6094,12.1262,87.5167},
  767. {-687.8675,929.7429,13.6293,181.1319}
  768. };
  769. new Float:RussiaSpawns[3][4] =
  770. {
  771. {-2520.4351,-624.5309,132.7848,0.8743},
  772. {-2487.4331,-621.0484,132.5872,87.1375},
  773. {-2374.1062,-583.5718,132.1172,118.5435}
  774. };
  775. new Float:GermanySpawns[3][4] =
  776. {
  777. {1106.4036,-299.6010,74.5391,99.9817},
  778. {1073.4133,-345.0207,73.9922,356.5807},
  779. {1023.7352,-316.0926,73.9889,175.7202}
  780. };
  781. new Float:ItalySpawns[3][4] =
  782. {
  783. {-1070.8738,-1170.6907,129.6406,234.3037},
  784. {-1060.0549,-1205.3832,129.2188,267.3490},
  785. {-1067.8376,-1299.5409,129.2188,276.0990}
  786. };
  787. new Float:FranceSpawns[3][4] =
  788. {
  789. {-2237.7219,2353.6807,4.9803,132.8337},
  790. {-2241.0059,2333.7966,4.9918,99.6200},
  791. {-2281.6807,2288.4836,4.9704,271.9083}
  792. };
  793. new Float:ChinaSpawns[3][4] =
  794. {
  795. {2735.4065,-2452.2302,17.5938,359.3937},
  796. {2721.3025,-2386.2537,17.3403,266.3329},
  797. {2752.5508,-2513.4436,13.6402,19.0380}
  798. };
  799. new Float:IndiaSpawns[3][4] =
  800. {
  801. {2841.2942,1285.7273,11.3906,88.5804},
  802. {2794.3298,1256.1736,11.0299,4.2696},
  803. {2837.1394,1337.4557,11.0877,82.9403}
  804. };
  805.  
  806. new rnd;
  807. TogglePlayerSpectating(playerid, 0);
  808. if(PlayerInfo[playerid][pTeam] == TEAM_USA) rnd = random(sizeof(USASpawns)), SetPlayerPos(playerid,USASpawns[rnd][0],USASpawns[rnd][1],USASpawns[rnd][2]), SetPlayerFacingAngle(playerid, USASpawns[rnd][3]);
  809. if(PlayerInfo[playerid][pTeam] == TEAM_CANADA) rnd = random(sizeof(CanadaSpawns)), SetPlayerPos(playerid,CanadaSpawns[rnd][0],CanadaSpawns[rnd][1],CanadaSpawns[rnd][2]), SetPlayerFacingAngle(playerid, CanadaSpawns[rnd][3]);
  810. if(PlayerInfo[playerid][pTeam] == TEAM_BRITAIN) rnd = random(sizeof(BritainSpawns)), SetPlayerPos(playerid,BritainSpawns[rnd][0],BritainSpawns[rnd][1],BritainSpawns[rnd][2]), SetPlayerFacingAngle(playerid, BritainSpawns[rnd][3]);
  811. if(PlayerInfo[playerid][pTeam] == TEAM_AUSTRALIA) rnd = random(sizeof(AustraliaSpawns)), SetPlayerPos(playerid,AustraliaSpawns[rnd][0],AustraliaSpawns[rnd][1],AustraliaSpawns[rnd][2]), SetPlayerFacingAngle(playerid, AustraliaSpawns[rnd][3]);
  812. if(PlayerInfo[playerid][pTeam] == TEAM_RUSSIA) rnd = random(sizeof(RussiaSpawns)), SetPlayerPos(playerid,RussiaSpawns[rnd][0],RussiaSpawns[rnd][1],RussiaSpawns[rnd][2]), SetPlayerFacingAngle(playerid,RussiaSpawns[rnd][3]);
  813. if(PlayerInfo[playerid][pTeam] == TEAM_GERMANY) rnd = random(sizeof(GermanySpawns)), SetPlayerPos(playerid,GermanySpawns[rnd][0],GermanySpawns[rnd][1],GermanySpawns[rnd][2]), SetPlayerFacingAngle(playerid, GermanySpawns[rnd][3]);
  814. if(PlayerInfo[playerid][pTeam] == TEAM_ITALY) rnd = random(sizeof(ItalySpawns)), SetPlayerPos(playerid,ItalySpawns[rnd][0],ItalySpawns[rnd][1],ItalySpawns[rnd][2]), SetPlayerFacingAngle(playerid, ItalySpawns[rnd][3]);
  815. if(PlayerInfo[playerid][pTeam] == TEAM_FRANCE) rnd = random(sizeof(FranceSpawns)), SetPlayerPos(playerid,FranceSpawns[rnd][0],FranceSpawns[rnd][1],FranceSpawns[rnd][2]), SetPlayerFacingAngle(playerid, FranceSpawns[rnd][3]);
  816. if(PlayerInfo[playerid][pTeam] == TEAM_CHINA) rnd = random(sizeof(ChinaSpawns)), SetPlayerPos(playerid,ChinaSpawns[rnd][0],ChinaSpawns[rnd][1],ChinaSpawns[rnd][2]), SetPlayerFacingAngle(playerid, ChinaSpawns[rnd][3]);
  817. if(PlayerInfo[playerid][pTeam] == TEAM_INDIA) rnd = random(sizeof(IndiaSpawns)), SetPlayerPos(playerid,IndiaSpawns[rnd][0],IndiaSpawns[rnd][1],IndiaSpawns[rnd][2]), SetPlayerFacingAngle(playerid, IndiaSpawns[rnd][3]);
  818. SetCameraBehindPlayer(playerid);
  819. SetPlayerSkin(playerid, 287);
  820. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement