Guest User

Untitled

a guest
May 1st, 2018
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 99.76 KB | None | 0 0
  1. package com.ruseps.net.packet.impl;
  2.  
  3. import javax.swing.plaf.basic.BasicComboBoxUI.ItemHandler;
  4.  
  5. import com.ruseps.model.Position;
  6. import com.ruseps.model.Locations.Location;
  7. import com.ruseps.world.content.transportation.TeleportHandler;
  8. import com.ruseps.world.content.transportation.TeleportType;
  9. import com.ruseps.model.Animation;
  10. import com.ruseps.model.Graphic;
  11. import com.ruseps.model.Skill;
  12. import com.ruseps.world.content.combat.weapon.CombatSpecial;
  13. import com.ruseps.net.security.ConnectionHandler;
  14. import com.ruseps.world.World;
  15. import com.ruseps.world.content.PlayerLogs;
  16. import com.ruseps.world.content.PlayerPunishment;
  17. import com.ruseps.world.entity.impl.player.Player;
  18. import com.ruseps.*;
  19. import com.ruseps.engine.task.*;
  20. import com.ruseps.engine.task.impl.*;
  21. import com.ruseps.model.*;
  22. import com.ruseps.model.Locations.*;
  23. import com.ruseps.model.RegionInstance.*;
  24. import com.ruseps.model.container.impl.*;
  25. import com.ruseps.model.container.impl.Shop.*;
  26. import com.ruseps.model.definitions.*;
  27. import com.ruseps.model.input.impl.*;
  28. import com.ruseps.net.mysql.*;
  29. import com.ruseps.net.packet.*;
  30. import com.ruseps.net.security.*;
  31. import com.ruseps.util.*;
  32. import com.ruseps.world.*;
  33. import com.ruseps.world.content.*;
  34. import com.ruseps.world.content.Achievements.*;
  35. import com.ruseps.world.content.LoyaltyProgramme.*;
  36. import com.ruseps.world.content.PlayerPunishment.*;
  37. import com.ruseps.world.content.clan.*;
  38. import com.ruseps.world.content.combat.*;
  39. import com.ruseps.world.content.combat.strategy.*;
  40. import com.ruseps.world.content.combat.strategy.zulrah.*;
  41. import com.ruseps.world.content.combat.weapon.*;
  42. import com.ruseps.world.content.dialogue.*;
  43. import com.ruseps.world.content.droppreview.*;
  44. import com.ruseps.world.content.grandexchange.*;
  45. import com.ruseps.world.content.minigames.impl.*;
  46. import com.ruseps.world.content.skill.*;
  47. import com.ruseps.world.content.skill.impl.dungeoneering.*;
  48. import com.ruseps.world.content.skill.impl.herblore.*;
  49. import com.ruseps.world.content.skill.skilltasks.SkillTaskManager;
  50. import com.ruseps.world.content.transportation.*;
  51. import com.ruseps.world.entity.impl.npc.*;
  52. import com.ruseps.world.entity.impl.player.*;
  53.  
  54.  
  55. /**
  56. * This packet listener manages commands a player uses by using the command
  57. * console prompted by using the "`" char.
  58. *
  59. * @author Gabriel Hannason
  60. */
  61.  
  62. public class CommandPacketListener implements PacketListener {
  63.  
  64. public static int config;
  65.  
  66. @Override
  67. public void handleMessage(Player player, Packet packet) {
  68. long start = System.currentTimeMillis();
  69.  
  70. String command = Misc.readString(packet.getBuffer());
  71. String[] parts = command.toLowerCase().split(" ");
  72. if(player.isHidePlayer()) {
  73. return;
  74. }
  75. if (command.contains("\r") || command.contains("\n")) {
  76. return;
  77. }
  78. PlayerLogs.log(player.getUsername(), "" + player.getUsername() + " used command ::" + command + " | Player rights = " + player.getRights() + "");
  79.  
  80. try {
  81. switch (player.getRights()) {
  82. case PLAYER:
  83. playerCommands(player, parts, command);
  84. break;
  85. case MODERATOR:
  86. playerCommands(player, parts, command);
  87. memberCommands(player, parts, command);
  88. helperCommands(player, parts, command);
  89. moderatorCommands(player, parts, command);
  90. break;
  91. case ADMINISTRATOR:
  92. playerCommands(player, parts, command);
  93. memberCommands(player, parts, command);
  94. helperCommands(player, parts, command);
  95. moderatorCommands(player, parts, command);
  96. administratorCommands(player, parts, command);
  97. break;
  98. case OWNER:
  99. playerCommands(player, parts, command);
  100. memberCommands(player, parts, command);
  101. helperCommands(player, parts, command);
  102. moderatorCommands(player, parts, command);
  103. administratorCommands(player, parts, command);
  104. ownerCommands(player, parts, command);
  105. developerCommands(player, parts, command);
  106. break;
  107. case DEVELOPER:
  108. playerCommands(player, parts, command);
  109. memberCommands(player, parts, command);
  110. helperCommands(player, parts, command);
  111. moderatorCommands(player, parts, command);
  112. administratorCommands(player, parts, command);
  113. ownerCommands(player, parts, command);
  114. developerCommands(player, parts, command);
  115. break;
  116. case MANAGER:
  117. playerCommands(player, parts, command);
  118. memberCommands(player, parts, command);
  119. helperCommands(player, parts, command);
  120. moderatorCommands(player, parts, command);
  121. administratorCommands(player, parts, command);
  122. ownerCommands(player, parts, command);
  123. developerCommands(player, parts, command);
  124. break;
  125. case SUPPORT:
  126. playerCommands(player, parts, command);
  127. memberCommands(player, parts, command);
  128. helperCommands(player, parts, command);
  129. break;
  130. case VETERAN:
  131. playerCommands(player, parts, command);
  132. memberCommands(player, parts, command);
  133. break;
  134. case SAPPHIRE_MEMBER:
  135. case EMERALD_MEMBER:
  136. case RUBY_MEMBER:
  137. case DIAMOND_MEMBER:
  138. case DRAGONSTONE_MEMBER:
  139. case ONYX_MEMBER:
  140. playerCommands(player, parts, command);
  141. memberCommands(player, parts, command);
  142. break;
  143. default:
  144. break;
  145. }
  146. } catch (Exception exception) {
  147. // exception.printStackTrace();
  148.  
  149. if (player.getRights() == PlayerRights.DEVELOPER) {
  150. player.getPacketSender().sendConsoleMessage("Error executing that command.");
  151. } else {
  152. player.getPacketSender().sendMessage("Error executing that command.");
  153. }
  154.  
  155. }
  156. long end = System.currentTimeMillis();
  157. long cycle = end - start;
  158. if(cycle >= 500) {
  159. System.err.println(cycle+"ms - command packet- "+command+" - "+player.getRights().name());
  160. }
  161. }
  162.  
  163. private static void playerCommands(final Player player, String[] command, String wholeCommand) {
  164.  
  165. if (command[0].equalsIgnoreCase("well")) {
  166. int time = WellOfGoodwill.getMinutesRemaining();
  167. if(time <=0) {
  168. player.getPA().sendMessage("The well is not currently active!");
  169. } else {
  170. player.getPA().sendMessage("There are currently: "+time+" minutes remaining.");
  171.  
  172. }
  173. }
  174. if ((command[0].equalsIgnoreCase("shop") && !player.getRights().isStaff()) || command[0].equalsIgnoreCase("shops")) {
  175. if(player.getLocation() != null && player.getLocation() == Location.WILDERNESS) {
  176. player.getPacketSender().sendMessage("You cannot do this at the moment.");
  177. return;
  178. }
  179. Position position = new Position(3085, 3473, 0);
  180. TeleportHandler.teleportPlayer(player, position, TeleportType.NORMAL);
  181. player.getPacketSender().sendMessage("Teleporting you to our shops!");
  182. }
  183.  
  184. if (command[0].equalsIgnoreCase("yellcolour")) {
  185. String input = command[1];
  186. player.getPacketSender().sendMessage(command[1]);
  187. if (command.length < 1 && command.length > 2) {
  188. player.getPacketSender().sendMessage("There was an error executing the command.");
  189. return;
  190. }
  191. if (input.equalsIgnoreCase("blue")) {
  192. player.setYellColour("<col=255>");
  193. player.getPacketSender().sendMessage("-" + player.getYellColour() + " ?");
  194. player.getPacketSender().sendMessage("Your yell colour has changed to blue!");
  195. } else if (input.equalsIgnoreCase("green")) {
  196. player.setYellColour("<col=65280>");
  197. player.getPacketSender().sendMessage("Your yell colour has changed to green!");
  198. } else if (input.equalsIgnoreCase("black")) {
  199. player.setYellColour("<shad=6081134>");
  200. player.getPacketSender().sendMessage("Your yell colour has changed to black!");
  201. } else if (input.equalsIgnoreCase("orange")) {
  202. player.setYellColour("<col=ffb000>");
  203. player.getPacketSender().sendMessage("Your yell colour has changed to orange!");
  204. } else if (input.equalsIgnoreCase("yellow")) {
  205. player.setYellColour("<col=ffff00>");
  206. player.getPacketSender().sendMessage("Your yell colour has changed to yellow!");
  207. } else if (input.equalsIgnoreCase("red")) {
  208. player.setYellColour("<col=ff0000>");
  209. player.getPacketSender().sendMessage("Your yell colour has changed to red!");
  210. } else if (input.equalsIgnoreCase("white")) {
  211. player.setYellColour("<col=ffffff>");
  212. player.getPacketSender().sendMessage("Your yell colour has changed to white!");
  213. } else if (input.equalsIgnoreCase("reset")) {
  214. player.setYellColour("<shad=6081134>");
  215. player.getPacketSender().sendMessage("Your yell colour has reset!");
  216. } else {
  217. player.getPacketSender().sendMessage("There is no colour that exists under that colour. Please try again.");
  218. }
  219. }
  220.  
  221. if (command[0].equals("setlevel") && player.getGameMode().equals(GameMode.PK_MODE)) {
  222. int skillId = Integer.parseInt(command[1]);
  223. int level = Integer.parseInt(command[2]);
  224. if (level > 99 || level < 1) {
  225. player.getPacketSender().sendConsoleMessage("You can only have a maxmium level of 99 and lowest level of 1.");
  226. return;
  227. }
  228. if (skillId > 6) {
  229. player.getPacketSender().sendConsoleMessage("You can only set combat skills.");
  230. return;
  231. }
  232. if (skillId == 5 || skillId == 3) {
  233. level *= 10;
  234. }
  235. Skill skill = Skill.forId(skillId);
  236. player.getSkillManager().setCurrentLevel(skill, level).setMaxLevel(skill, level).setExperience(skill,
  237. SkillManager.getExperienceForLevel(level));
  238. player.getPacketSender().sendConsoleMessage("You have set your " + skill.getName() + " level to " + level);
  239. }
  240. if (command[0].equals("staff")) {
  241. player.getOnlineStaff();
  242. player.getPA().sendMessage("Online Owners: <img=3>" + player.onlineOwners);
  243. player.getPA().sendMessage("Online Admins: <img=2>" + player.onlineAdmins);
  244. player.getPA().sendMessage("Online Developers: <img=4>" + player.onlineDevelopers);
  245. player.getPA().sendMessage("Online Mods: <img=1>" + player.onlineMods);
  246. player.getPA().sendMessage("Online Server Support: <img=10>" + player.onlineServerSupport);
  247. }
  248. if(command[0].equals("players")) {
  249. player.getPacketSender().sendInterfaceRemoval();
  250. PlayersOnlineInterface.showInterface(player);
  251. }
  252. /*
  253. if (wholeCommand.equals("players")) {
  254. player.getOnlinePlayers();
  255. for(int i = 8145; i < 8196; i++)
  256. player.getPacketSender().sendString(i, "");
  257. for(int i = 12174; i < 12224; i++)
  258. player.getPacketSender().sendString(i, "");
  259. player.getPacketSender().sendString(8136, "Close window");
  260.  
  261. for(int i = 8145; i < 8175; i++)
  262. player.getPacketSender().sendString(i, "");
  263. player.getPacketSender().sendInterface(8134);
  264. player.getPacketSender().sendString(8136, "Close window");
  265. player.getPacketSender().sendString(8144, "Online Players: " + player.onlinePlayers.size());
  266. player.getPacketSender().sendString(8145, "");
  267. for(int i = 8147; i < 8147+ player.onlinePlayers.size(); i++) {
  268. player.getPacketSender().sendString(i, "@bla@"+player.onlinePlayers);
  269. }
  270. }
  271. */
  272. if (command[0].equalsIgnoreCase("ffaleave")) {
  273. if(player.getLocation() != Location.FFALOBBY || player.getLocation() != Location.FFALOBBY) {
  274. player.getPA().sendMessage("You can only use this in the ffa arenas");
  275. return;
  276. }
  277.  
  278. if(player.getLocation() == Location.DUNGEONEERING) {
  279. player.getPA().sendMessage("You can't do that here");
  280. return;
  281. }
  282. if(player.getLocation() == Location.IN_JAIL) {
  283. player.getPA().sendMessage("You can't do that here");
  284. return;
  285. }
  286. if(player.getLocation() == Location.DUEL_ARENA) {
  287. player.getPA().sendMessage("You can't do that here");
  288. return;
  289. }
  290. if(Dungeoneering.doingDungeoneering(player)) {
  291. player.getPA().sendMessage("You can't do that here");
  292. return;
  293. }
  294. player.getPA().sendInterfaceRemoval();
  295. TaskManager.submit(new Task(1, player, false) {
  296. int tick = 0;
  297.  
  298. @Override
  299. public void execute() {
  300. if (tick == 0) {
  301.  
  302. } else if (tick >= 3) {
  303. FreeForAll.leaveArena(player);
  304. this.stop();
  305. }
  306. tick++;
  307. }
  308. });
  309. }
  310.  
  311. if (command[0].equalsIgnoreCase("ffa")) {
  312. if(player.getLocation() == Location.DUNGEONEERING) {
  313. player.getPA().sendMessage("You can't do that here");
  314. return; }
  315.  
  316. if(Dungeoneering.doingDungeoneering(player)) {
  317. player.getPA().sendMessage("You can't do that here");
  318. return;
  319. }
  320. if(FreeForAll.lobbyOpened == true) {
  321. FreeForAll.initiateLobby(player);
  322. } else {
  323. player.getPacketSender().sendMessage("No active ffa event");
  324. }
  325. }
  326.  
  327.  
  328. if(command[0].equalsIgnoreCase("kraken")) {
  329. player.getPacketSender().sendMessage("Teleporting you to kraken.");
  330. player.getKraken().enter(player, true);
  331. }
  332. if(wholeCommand.equalsIgnoreCase("ww")) {
  333. if(wholeCommand.equalsIgnoreCase("wyrm")) {
  334. if (Wildywyrm.getCurrent()== null) {
  335. player.getPA().sendMessage("The Wildy Wyrm currently not spawned");
  336. return;
  337. }
  338. Position teleport = Wildywyrm.getCurrent().getPosition();
  339. TeleportHandler.teleportPlayer(player, teleport,TeleportType.NORMAL);
  340. }
  341. }
  342.  
  343. if(command[0].equalsIgnoreCase("grabregion")) {
  344. int regionX = player.getPosition().getX() >> 3;
  345. int regionY = player.getPosition().getY() >> 3;
  346. int regionId = ((regionX / 8) << 8) + (regionY / 8);
  347. player.getPacketSender().sendMessage("Region id: "+regionId);
  348. }
  349.  
  350. if (command[0].equals("staff")) {
  351. StaffList.showStaff(player);
  352. }
  353.  
  354. if (command[0].equalsIgnoreCase("mole")) {
  355. TeleportHandler.teleportPlayer(player, new Position(1761, 5186), player.getSpellbook().getTeleportType());
  356.  
  357. }
  358.  
  359. if (command[0].equalsIgnoreCase("dzone")) {
  360. if(player.getAmountDonated() < 20) {
  361. player.getPacketSender().sendMessage("You have not donated enough for this!");
  362. return;
  363. } else {
  364. TeleportHandler.teleportPlayer(player, new Position(2337, 9799), player.getSpellbook().getTeleportType());
  365. }
  366. }
  367.  
  368. if (command[0].equals("tree")) {
  369. player.getPacketSender().sendMessage("<img=4> <shad=1><col=FF9933> The Evil Tree has sprouted at: "+EvilTrees.SPAWNED_TREE.getTreeLocation().playerPanelFrame+"");
  370. }
  371.  
  372. if (command[0].equals("star")) {
  373. player.getPacketSender().sendMessage("<img=4> <shad=1><col=FF9933> The Shooting star has spawned at: "+ShootingStar.CRASHED_STAR.getStarLocation().playerPanelFrame+"");
  374. }
  375.  
  376. if (command[0].equals("decant")) {
  377. //PotionDecanting.decantPotions(player);
  378. Decanting.startDecanting(player);
  379. }
  380. if (command[0].equals("skull")) {
  381. if (player.getSkullTimer() > 0) {
  382. player.getPacketSender().sendMessage("You are already skulled");
  383. return;
  384. } else {
  385. CombatFactory.skullPlayer(player);
  386. }
  387. }
  388.  
  389.  
  390. if (command[0].equalsIgnoreCase("answer")) {
  391. String pl = player.getUsername();
  392. if (pl == TriviaBot.firstPlace || pl == TriviaBot.secondPlace || pl == TriviaBot.thirdPlace) {
  393. player.getPacketSender().sendMessage("Already answered");
  394. return;
  395.  
  396. } else {
  397. String triviaAnswer = wholeCommand.substring(7);
  398. if (TriviaBot.acceptingQuestion()) {
  399. TriviaBot.attemptAnswer(player, triviaAnswer);
  400. }
  401. }
  402. }
  403. if (command[0].equalsIgnoreCase("drop")) {
  404. player.getPacketSender().sendInterface(37600);
  405.  
  406. }
  407. if (command[0].equalsIgnoreCase("achievements")) {
  408. player.getPacketSender().sendInterface(49000);
  409.  
  410. }
  411. if (command[0].equalsIgnoreCase("drops")) {
  412. player.getPacketSender().sendInterface(37600);
  413.  
  414. }
  415.  
  416. if (command[0].equalsIgnoreCase("gamble")) {
  417. TeleportHandler.teleportPlayer(player, new Position(2440, 3090), player.getSpellbook().getTeleportType());
  418. player.getPacketSender().sendMessage("@red@Please gamble safely. It is recommended to record any gambles.");
  419. player.getPacketSender().sendMessage("@red@YOU MUST HAVE VIDEO EVIDENCE OF GETTING SCAMMED TO FILE A REPORT");
  420. }
  421.  
  422. if (command[0].startsWith("reward")) {
  423. if (command.length == 1) {
  424. player.getPacketSender().sendMessage("Please use [::reward id], [::reward id amount], or [::reward id all].");
  425. return;
  426. }
  427. final String playerName = player.getUsername();
  428. final String id = command[1];
  429. final String amount = command.length == 3 ? command[2] : "1";
  430.  
  431. com.everythingrs.vote.Vote.service.execute(new Runnable() {
  432. @Override
  433. public void run() {
  434. try {
  435. com.everythingrs.vote.Vote[] reward = com.everythingrs.vote.Vote.reward("uur0tj0o7sjbz11eqvs0885mizsoc0w2ntbw615d5v5gn9udi2i6d05nr5i1zb81gbtsfzme7b9",
  436. playerName, id, amount);
  437. if (reward[0].message != null) {
  438. player.getPacketSender().sendMessage(reward[0].message);
  439. return;
  440. }
  441. player.getInventory().add(reward[0].reward_id, reward[0].give_amount);
  442. player.getPacketSender().sendMessage("Thank you for voting! You now have " + reward[0].vote_points + " vote points.");
  443. } catch (Exception e) {
  444. player.getPacketSender().sendMessage("Api Services are currently offline. Please check back shortly");
  445. e.printStackTrace();
  446. }
  447. }
  448.  
  449. });
  450. }
  451. if (command[0].equalsIgnoreCase("claim")) {
  452. new java.lang.Thread() {
  453. public void run() {
  454. try {
  455. com.everythingrs.donate.Donation[] donations = com.everythingrs.donate.Donation.donations("uur0tj0o7sjbz11eqvs0885mizsoc0w2ntbw615d5v5gn9udi2i6d05nr5i1zb81gbtsfzme7b9",
  456. player.getUsername());
  457. if (donations.length == 0) {
  458. player.getPacketSender().sendMessage("You currently don't have any items waiting. You must donate first!");
  459. return;
  460. }
  461. if (donations[0].message != null) {
  462. player.getPacketSender().sendMessage(donations[0].message);
  463. return;
  464. }
  465. for (com.everythingrs.donate.Donation donate : donations) {
  466. player.getInventory().add(new Item(donate.product_id, donate.product_amount));
  467. }
  468. player.getPacketSender().sendMessage("Thank you for donating!");
  469. } catch (Exception e) {
  470. player.getPacketSender().sendMessage("Api Services are currently offline. Please check back shortly");
  471. e.printStackTrace();
  472. }
  473. }
  474. }.start();
  475. }
  476. /* go to your cache folder
  477. * Sql commands start
  478. */
  479. /* if (command[0].equalsIgnoreCase("claimdonation")) {
  480. if(!GameSettings.WEBSTORE_ENABLED) {
  481. player.getPacketSender().sendMessage("Donation claiming is currently unavailable, sorry for the inconvenience.");
  482. return;
  483. }
  484. if (player.getLastSql().elapsed(7000)) {
  485. new Thread(new Donation(player)).start();
  486. } else {
  487. player.getPacketSender().sendMessage("Please wait 7 seconds in between claiming!");
  488. }
  489. player.getSqlTimer().reset();
  490. }
  491.  
  492. if (command[0].equalsIgnoreCase("claimvote")) {
  493. if(!GameSettings.VOTING_ENABLED) {
  494. player.getPacketSender().sendMessage("Vote claiming is currently unavailable, sorry for the inconvenience.");
  495. return;
  496. }
  497. if (player.getLastSql().elapsed(7000)) {
  498. String auth = wholeCommand.substring(5);
  499.  
  500. if (player.getInventory().getFreeSlots() < 1) {
  501. player.getPacketSender().sendMessage("You need atleast 4 free slots to open your reward!");
  502. return;
  503. }
  504. new Thread(new Voting(player)).start();
  505. } else {
  506. player.getPacketSender().sendMessage("Please wait 7 seconds in between claiming!");
  507. }
  508. player.getLastSql().reset();
  509.  
  510. }
  511.  
  512. /*
  513. * End of sql commands
  514. */
  515.  
  516.  
  517.  
  518. /* if (command[0].equalsIgnoreCase("thread") || command[0].equalsIgnoreCase("tid")
  519. || command[0].equalsIgnoreCase("showthread")) {
  520.  
  521. int id = -1;
  522.  
  523. try {
  524. id = Integer.parseInt(parts[1]);
  525. } catch(NumberFormatException e) {
  526. id = -1;
  527. }
  528.  
  529. if(id == -1) {
  530. player.getPacketSender().sendMessage("Incorrect thread ID");
  531. } else {
  532. player.getPacketSender().sendMessage("Opening thread: "+id);
  533. player.getPacketSender().sendString(1, "http://rune.vision/forum/index.php?/topic/"+id+"-/");
  534. }
  535.  
  536. return;
  537.  
  538. }
  539.  
  540. */
  541.  
  542.  
  543. if (command[0].equalsIgnoreCase("train")) {
  544. TeleportHandler.teleportPlayer(player, new Position(2679, 3714), player.getSpellbook().getTeleportType());
  545.  
  546. }
  547.  
  548. if (command[0].equalsIgnoreCase("commands")) {
  549. player.getPacketSender().sendString(1, "http://opium-war.org/forums/index.php?/topic/3-official-command-list/");
  550. player.getPacketSender().sendMessage("Attempting to open the commands page...");
  551. }
  552.  
  553. if (command[0].equalsIgnoreCase("setemail")) {
  554. String email = wholeCommand.substring(9);
  555. player.setEmailAddress(email);
  556. player.getPacketSender().sendMessage("You set your account's email adress to: [" +email+"] ");
  557. Achievements.finishAchievement(player, AchievementData.SET_AN_EMAIL_ADDRESS);
  558. PlayerPanel.refreshPanel(player);
  559. }
  560.  
  561. if (command[0].equalsIgnoreCase("changepassword")) {
  562. String syntax = wholeCommand.substring(15);
  563. if(syntax == null || syntax.length() <= 2 || syntax.length() > 15 || !NameUtils.isValidName(syntax)) {
  564. player.getPacketSender().sendMessage("That password is invalid. Please try another password.");
  565. return;
  566. }
  567. if(syntax.contains("_")) {
  568. player.getPacketSender().sendMessage("Your password can not contain underscores.");
  569. return;
  570. }
  571. player.setPassword(syntax);
  572. player.getPacketSender().sendMessage("Your new password is: [" +syntax+"] Write it down!");
  573.  
  574.  
  575.  
  576. }
  577. if (command[0].equals("zul")) {
  578.  
  579. player.moveTo(new Position(2268, 3070, player.getIndex() * 4));
  580. player.setRegionInstance(new RegionInstance(player, RegionInstanceType.ZULRAH));
  581. player.getPA().sendMessage("starting zulrah");
  582. Zulrah.startBossFight(player);
  583. }
  584.  
  585. if (command[0].equals("callisto")) {
  586.  
  587. TeleportHandler.teleportPlayer(player, new Position(3239, 3638), player.getSpellbook().getTeleportType());
  588. }
  589.  
  590. if (command[0].equalsIgnoreCase("cows")) {
  591. player.getPacketSender().sendMessage("Until next time... Hope you had fun");
  592.  
  593. }
  594.  
  595. if (command[0].equalsIgnoreCase("arena")) {
  596. TeleportHandler.teleportPlayer(player, new Position(2910, 2794), player.getSpellbook().getTeleportType());
  597. }
  598.  
  599. if (command[0].equals("tornado")) {
  600. TeleportHandler.teleportPlayer(player, new Position(3307, 3916), player.getSpellbook().getTeleportType());
  601.  
  602. }
  603.  
  604. if (command[0].equals("mutant")) {
  605. TeleportHandler.teleportPlayer(player, new Position(2980, 3763), player.getSpellbook().getTeleportType());
  606. player.sendMessage("The cemetery is under attack, defeat the mutant, go north to slay him.");
  607. }
  608.  
  609. if (command[0].equals("lexicus")) {
  610. TeleportHandler.teleportPlayer(player, new Position(2420, 3527), player.getSpellbook().getTeleportType());
  611. player.sendMessage("The cemetery is under attack, defeat the mutant, go north to slay him.");
  612.  
  613.  
  614.  
  615. }
  616.  
  617.  
  618. /* if (command[0].equalsIgnoreCase("auth")) {
  619. if(Dungeoneering.doingDungeoneering(player)) {
  620. player.getPacketSender().sendMessage("You can't claim your vote reward in dungeoneering");
  621. return;
  622. }
  623.  
  624. String auth = command[1];
  625. final boolean success;
  626. Thread t = new Thread(new Runnable() {
  627. @Override
  628. public void run() {
  629. synchronized (player) {
  630. boolean success = motivote.redeemVote(auth);
  631. if (success) {
  632. player.getInventory().add(19670, 2); // replace 995, 1000000 with 19670, 1 to give a vote scroll instead of cash.
  633. player.getPacketSender().sendMessage("Auth redeemed, thanks for voting!");
  634. World.sendMessage("<img=10> <col=008FB2>" + player.getUsername() + " Has just claimed their vote reward! Type ::vote for yours!");
  635. Achievements.doProgress(player, AchievementData.VOTE_100_TIMES);
  636. } else {
  637. player.getPacketSender().sendMessage("Invalid auth supplied, please try again later.");
  638. }
  639. }
  640. }
  641. });
  642.  
  643. t.start();
  644. }
  645. */
  646.  
  647. if (command[0].equalsIgnoreCase("dp")) {
  648. TeleportHandler.teleportPlayer(player, new Position(2736, 3475), player.getSpellbook().getTeleportType());
  649.  
  650. }
  651.  
  652. if (command[0].equalsIgnoreCase("home")) {
  653. TeleportHandler.teleportPlayer(player, new Position((3093 + Misc.getRandom(3)), 3502 + Misc.getRandom(3)), player.getSpellbook().getTeleportType());
  654.  
  655. }
  656. if (command[0].equalsIgnoreCase("shops")) {
  657. TeleportHandler.teleportPlayer(player, new Position(3085, 3473), player.getSpellbook().getTeleportType());
  658.  
  659. }
  660.  
  661. if (command[0].equalsIgnoreCase("removetitle")) {
  662. player.setTitle("");
  663. player.getUpdateFlag().flag(Flag.APPEARANCE);
  664. }
  665.  
  666. /* Yell Command */
  667. if (command[0].equalsIgnoreCase("yell")) {
  668. if (PlayerPunishment.muted(player.getUsername()) || PlayerPunishment.IPMuted(player.getHostAddress())) {
  669. player.getPacketSender().sendMessage("You are muted and cannot yell.");
  670. return;
  671. }
  672. int delay = player.getRights().getYellDelay();
  673. if (!player.getLastYell().elapsed((delay * 1000))) {
  674. player.getPacketSender().sendMessage(
  675. "You must wait at least " + delay + " seconds between every yell-message you send.");
  676. return;
  677. }
  678. String yellMessage = wholeCommand.substring(4, wholeCommand.length());
  679.  
  680.  
  681.  
  682. if(player.getAmountDonated() < 10 && player.getRights().isStaff() == false) {
  683. player.getPacketSender().sendMessage("You are not a donator!");
  684. DialogueManager.start(player, 291);
  685. player.setDialogueActionId(111);
  686. player.setYellMsg(yellMessage);
  687. return;
  688. }
  689.  
  690.  
  691. if(player.getGameMode() == GameMode.IRONMAN) {
  692. if(player.getAmountDonated() > 10) {
  693. World.sendMessage("<col=787878>$ [Iron Man] @bla@" + player.getUsername() + ":" + yellMessage);
  694. return;
  695. } else {
  696. player.getPacketSender().sendMessage("You are not a donator!");
  697.  
  698. }
  699.  
  700. }
  701. if(player.getGameMode() == GameMode.ULTIMATE_IRONMAN) {
  702. if(player.getAmountDonated() > 10) {
  703. World.sendMessage("<col=787878>$ [HC Iron Man] @bla@" + player.getUsername() + ":" + yellMessage);
  704. return;
  705. } else {
  706. player.getPacketSender().sendMessage("You are not a donator!");
  707.  
  708. }
  709.  
  710. }
  711. if(player.getGameMode() == GameMode.HCI) {
  712. if(player.getAmountDonated() > 10) {
  713. World.sendMessage(player.getYellColour() + " [HCI]" + player.getUsername() + ":" + yellMessage);
  714. return;
  715. } else {
  716. player.getPacketSender().sendMessage("You are not a donator!");
  717.  
  718. }
  719.  
  720. }
  721. if (player.getRights() == PlayerRights.DEVELOPER) {
  722. World.sendMessage("" + player.getRights().getYellPrefix() + "<img="
  723. + player.getRights().ordinal() + "><col=1d7df2><shad=1> [DEVELOPER] </shad>" + player.getUsername() + ":" + yellMessage);
  724. return;
  725. }
  726. if (player.getRights() == PlayerRights.OWNER) {
  727. player.getPacketSender().sendMessage(player.getYellmsg() + " ");
  728. World.sendMessage(player.getYellmsg() + "<img=" + player.getRights().ordinal() + ">@red@<shad=1> [OWNER] </shad>" + player.getUsername() + ":" + yellMessage);
  729. return;
  730. }
  731. if (player.getRights() == PlayerRights.MANAGER) {
  732. World.sendMessage("" + player.getRights().getYellPrefix() + "<img="
  733. + player.getRights().ordinal() + ">@blu@ [Manager] " + player.getUsername() + ":" + yellMessage);
  734. return;
  735. }
  736. if (player.getRights() == PlayerRights.SUPPORT) {
  737. World.sendMessage("" + player.getRights().getYellPrefix() + "<img="
  738. + player.getRights().ordinal() + ">@or2@ [SUPPORT] " + player.getUsername() + ":" + yellMessage);
  739. return;
  740. }
  741.  
  742. if (player.getRights() == PlayerRights.MODERATOR) {
  743. World.sendMessage("" + player.getRights().getYellPrefix() + "<img="
  744. + player.getRights().ordinal() + ">@whi@<shad=1> [MODERATOR] </shad>" + player.getUsername() + ":" + yellMessage);
  745.  
  746. return;
  747. }
  748. if (player.getRights() == PlayerRights.ADMINISTRATOR) {
  749. World.sendMessage("" + player.getRights().getYellPrefix() + "<img="
  750. + player.getRights().ordinal() + ">@yel@<shad=1> [ADMINISTRATOR] </shad>" + player.getUsername() + ":" + yellMessage);
  751.  
  752. return;
  753. }
  754. if (player.getRights() == PlayerRights.ONYX_MEMBER) {
  755. World.sendMessage(player.getYellColour() + "<img="
  756. + player.getRights().ordinal() + ">[Onyx] " + player.getUsername() + ":" + yellMessage);
  757. return;
  758. }
  759.  
  760. if (player.getRights() == PlayerRights.DRAGONSTONE_MEMBER) {
  761. World.sendMessage(player.getYellColour() + "<img="
  762. + player.getRights().ordinal() + ">[Dragonstone]" + player.getUsername() + ":" + yellMessage);
  763.  
  764. return;
  765. }
  766. if (player.getRights() == PlayerRights.DIAMOND_MEMBER) {
  767. World.sendMessage(player.getYellColour() + "<img="
  768. + player.getRights().ordinal() + ">[Diamond]" + player.getUsername() + ":" + yellMessage);
  769. return;
  770. }
  771. if (player.getRights() == PlayerRights.RUBY_MEMBER) {
  772. World.sendMessage(player.getYellColour() + "<img="
  773. + player.getRights().ordinal() + ">[Ruby]" + player.getUsername() + ":" + yellMessage);
  774. player.getLastYell().reset();
  775. return;
  776. }
  777. if (player.getRights() == PlayerRights.EMERALD_MEMBER) {
  778.  
  779. World.sendMessage(player.getYellColour() + "<img="
  780. + player.getRights().ordinal() + ">[Emerald]" + player.getUsername() + ":" + yellMessage);
  781. player.getLastYell().reset();
  782. return;
  783. }
  784. if (player.getRights() == PlayerRights.SAPPHIRE_MEMBER) {
  785. World.sendMessage(player.getYellColour() + "<img="
  786. + player.getRights().ordinal() + ">[Sapphire]" + player.getUsername() + ":" + yellMessage);
  787. player.getLastYell().reset();
  788.  
  789. return;
  790. }
  791. if (player.getRights() == PlayerRights.VETERAN) {
  792. World.sendMessage("" + player.getRights().getYellPrefix() + "<img="
  793. + player.getRights().ordinal() + ">@red@ [YOUTUBER] <col=1d7df2>" + player.getUsername() + ":" + yellMessage);
  794. player.getLastYell().reset();
  795.  
  796. return;
  797. }
  798. //TO-DO
  799.  
  800.  
  801.  
  802. }
  803.  
  804. /* if (command[0].equalsIgnoreCase("home2")) {
  805. TeleportHandler.teleportPlayer(player, new Position(3213, 3424), player.getSpellbook().getTeleportType());
  806.  
  807. }*/
  808.  
  809. if (wholeCommand.equalsIgnoreCase("donate") || wholeCommand.equalsIgnoreCase("store")) {
  810. player.getPacketSender().sendString(1, "http://opium-war.org/store.php");
  811. player.getPacketSender().sendMessage("Attempting to open our store!");
  812. }
  813. if (wholeCommand.equalsIgnoreCase("forums") || wholeCommand.equalsIgnoreCase("site")) {
  814. player.getPacketSender().sendString(1, "http://opium-war.org/forums/");
  815. player.getPacketSender().sendMessage("Attempting to open the forums.");
  816. }
  817.  
  818. if (command[0].equalsIgnoreCase("attacks")) {
  819. int attack = DesolaceFormulas.getMeleeAttack(player)/10;
  820. int range = DesolaceFormulas.getRangedAttack(player)/10;
  821. int magic = DesolaceFormulas.getMagicAttack(player)/10;
  822. player.getPacketSender().sendMessage("@bla@Melee attack: @or2@" + attack + "@bla@, ranged attack: @or2@" + range + "@bla@, magic attack: @or2@" + magic);
  823. }
  824. if (command[0].equals("save")) {
  825. player.save();
  826. player.getPacketSender().sendMessage("Your progress has been saved.");
  827. }
  828. if (command[0].equals("vote")) {
  829. player.getPacketSender().sendString(1, "http://opium-war.org/vote.php");
  830.  
  831. }
  832. if (command[0].equals("help")) {
  833. if (player.getLastYell().elapsed(30000)) {
  834. World.sendStaffMessage("<col=FF0066><img=10> [TICKET SYSTEM]<col=6600FF> " + player.getUsername() + " has requested help. Please help them!");
  835. player.getLastYell().reset();
  836. player.getPacketSender().sendMessage("<col=663300>Your help request has been received. Please be patient.");
  837. } else {
  838. player.getPacketSender().sendMessage("").sendMessage("<col=663300>You need to wait 30 seconds before using this again.").sendMessage("<col=663300>If it's an emergency, please private message a staff member directly instead.");
  839. }
  840. }
  841. if (command[0].equals("empty")) {
  842. player.setInputHandling(new ConfirmEmpty());
  843. player.getPacketSender().sendEnterInputPrompt("Type 'Yes/No' to decide if you want to empty your inventory.");
  844. }
  845.  
  846. if (command[0].equalsIgnoreCase("[cn]")) {
  847. if (player.getInterfaceId() == 40172) {
  848. ClanChatManager.setName(player, wholeCommand.substring(wholeCommand.indexOf(command[1])));
  849. }
  850. }
  851. }
  852.  
  853. private static void memberCommands(final Player player, String[] command, String wholeCommand) {
  854. if(command[0].equalsIgnoreCase("title")) {
  855. player.setInputHandling(new SetTitle());
  856. player.getPacketSender().sendEnterInputPrompt("Enter the title you would like to set");
  857. }
  858. /* if(command[0].equalsIgnoreCase("invisible989")) {
  859. player.setHidePlayer(true);
  860. player.getPA().sendMessage("You are now completely invisible to other players. Relog to come visible");
  861. }*/
  862. if (command[0].equalsIgnoreCase("promotele")) {
  863. String playerToTele = wholeCommand.substring(10);
  864. Player player2 = World.getPlayerByName(playerToTele);
  865.  
  866. if (player2 == null) {
  867. player.getPacketSender().sendConsoleMessage("Cannot find that player online..");
  868. return;
  869. } else {
  870. boolean canTele = TeleportHandler.checkReqs(player, player2.getPosition().copy())
  871. && player.getRegionInstance() == null && player2.getRegionInstance() == null;
  872. if (canTele) {
  873. TeleportHandler.teleportPlayer(player, player2.getPosition().copy(), TeleportType.NORMAL);
  874. player.getPacketSender().sendConsoleMessage("Teleporting to player: " + player2.getUsername() + "");
  875. } else {
  876. player.getPacketSender()
  877. .sendConsoleMessage("You can not teleport to this player at the moment. Minigame maybe?");
  878. }
  879. }
  880. }
  881. if (command[0].equals("bank")) {
  882. if ( player.getRights() == PlayerRights.DIAMOND_MEMBER || player.getRights() == PlayerRights.ONYX_MEMBER || player.getRights() == PlayerRights.DRAGONSTONE_MEMBER) {
  883. if (player.getLocation() == Location.DUNGEONEERING || player.getLocation() == Location.FIGHT_PITS || player.getLocation() == Location.FIGHT_CAVES || player.getLocation() == Location.DUEL_ARENA || player.getLocation() == Location.RECIPE_FOR_DISASTER || player.getLocation() == Location.WILDERNESS) {
  884. player.getPacketSender().sendMessage("You can not open your bank here!");
  885. return;
  886. }
  887. player.setTempBankTabs(null);
  888. player.getBank(player.getCurrentBankTab()).open();
  889. } else {
  890. player.getPacketSender().sendMessage("You must be Diamond+ to do this!");
  891. }
  892.  
  893.  
  894. }
  895.  
  896.  
  897. if (command[0].equalsIgnoreCase("memberzone")) {
  898. TeleportHandler.teleportPlayer(player, new Position(2337, 9799), player.getSpellbook().getTeleportType());
  899.  
  900. }
  901. if (command[0].equalsIgnoreCase("dzone")) {
  902. TeleportHandler.teleportPlayer(player, new Position(2337, 9799), player.getSpellbook().getTeleportType());
  903.  
  904. }
  905. if (command[0].equalsIgnoreCase("donatorzone")) {
  906. TeleportHandler.teleportPlayer(player, new Position(2337, 9799), player.getSpellbook().getTeleportType());
  907.  
  908. }
  909.  
  910. }
  911.  
  912. private static void helperCommands(final Player player, String[] command, String wholeCommand) {
  913. if(command[0].equalsIgnoreCase("staffpass")) {
  914. String pass = wholeCommand.substring(10);
  915. if (pass.contentEquals("badoune")) {
  916. player.setPlayerLocked(false);
  917. player.getPacketSender().sendMessage("access granted");
  918. } else {
  919. player.getPacketSender().sendMessage("Wrong staff password, access denied");
  920. }
  921. }
  922. if (command[0].equalsIgnoreCase("kick")) {
  923. String player2 = wholeCommand.substring(5);
  924. Player playerToKick = World.getPlayerByName(player2);
  925. if (playerToKick == null) {
  926. player.getPacketSender().sendConsoleMessage("Player " + player2 + " couldn't be found on Opium-War.");
  927. return;
  928. } else if (playerToKick.getLocation() != Location.WILDERNESS) {
  929. World.deregister(playerToKick);
  930. PlayerHandler.handleLogout(playerToKick);
  931. player.getPacketSender().sendConsoleMessage("Kicked " + playerToKick.getUsername() + ".");
  932. PlayerLogs.log(player.getUsername(),
  933. "" + player.getUsername() + " just kicked " + playerToKick.getUsername() + "!");
  934. }
  935. }
  936.  
  937. if (command[0].equals("bank")) {
  938. if (player.getLocation() == Location.DUNGEONEERING || player.getLocation() == Location.FIGHT_PITS
  939. || player.getLocation() == Location.FIGHT_CAVES || player.getLocation() == Location.DUEL_ARENA
  940. || player.getLocation() == Location.RECIPE_FOR_DISASTER || player.getLocation() == Location.WILDERNESS
  941. || player.getLocation() == Location.INFERNO) {
  942. player.getPacketSender().sendMessage("You can not open your bank here!");
  943. return;
  944. }
  945. player.setTempBankTabs(null);
  946. player.getBank(player.getCurrentBankTab()).open();
  947. }
  948. if (command[0].equalsIgnoreCase("checklog")) {
  949. String user = wholeCommand.substring(9);
  950. player.getPacketSender().sendMessage("Opening player log for: "+user);
  951. player.getPacketSender().sendString(1, "www.dropbox.com/sh/wike8f0i3qqa5pl/AACqERi5DC-c6p8shqCxo-qia?preview="+user+".txt");
  952.  
  953. }
  954. if (command[0].equalsIgnoreCase("jailamt")) {
  955. player.getPacketSender().sendMessage("jail count: "+player.getAmountJailed());
  956. }
  957. if (command[0].equalsIgnoreCase("jail986")) {
  958. int amount = Integer.parseInt(command[1]);
  959. String rss = command[2];
  960. if (command.length > 3) {
  961. rss += " " + command[3];
  962. }
  963. if (command.length > 4) {
  964. rss += " " + command[4];
  965. }
  966. Player player2 = World.getPlayerByName(rss);
  967.  
  968. //jail amts
  969. player2.setJailAmount(amount);
  970. player2.setTotalAmount(amount);
  971.  
  972. //movre player
  973. Position position = new Position(2095,4429);
  974. player2.moveTo(position);
  975. //msgs
  976. player2.getPA().sendMessage("@blu@You have been jailed and have to kill@red@ "+amount+" @blu@Imps");
  977. player.getPacketSender().sendMessage("Jailed player: " + player2.getUsername() + "");
  978. player2.getPacketSender().sendMessage("You have been jailed by " + player.getUsername() + ".");
  979. PlayerLogs.log(player.getUsername(),
  980. "" + player.getUsername() + " just jailed " + player2.getUsername() + "!");
  981.  
  982. }
  983.  
  984.  
  985. /* if (command[0].equalsIgnoreCase("jail986")) {
  986. Player player2 = World.getPlayerByName(wholeCommand.substring(8));
  987.  
  988. Position position = new Position(2095, 4429);
  989. player2.moveTo(position);
  990. //TeleportHandler.teleportPlayer(player2, new Position(2095, 4429), TeleportType.NORMAL);
  991. PlayerLogs.log(player.getUsername(),
  992. "" + player.getUsername() + " just jailed " + player2.getUsername() + "!");
  993. player.getPacketSender().sendMessage("Jailed player: " + player2.getUsername() + "");
  994. player2.getPacketSender().sendMessage("You have been jailed by " + player.getUsername() + ".");
  995.  
  996.  
  997. } */
  998.  
  999. if (command [0].equalsIgnoreCase("reloaditemdef")) {
  1000. ItemDefinition.parseitem().load();
  1001. ItemDefinition.init();
  1002.  
  1003. }
  1004.  
  1005.  
  1006. if (command[0].equalsIgnoreCase("mma")) {
  1007. TeleportHandler.teleportPlayer(player, new Position(2038, 4497), TeleportType.NORMAL);
  1008.  
  1009. }
  1010.  
  1011. if (command[0].equals("remindvote")) {
  1012. World.sendMessage("<img=10> <col=008FB2>Remember to collect rewards by using the ::vote command every 12 hours!");
  1013. }
  1014. if (command[0].equalsIgnoreCase("unjail986")) {
  1015. Player player2 = World.getPlayerByName(wholeCommand.substring(10));
  1016. if (player2 != null) {
  1017. Jail.unjail(player2);
  1018. PlayerLogs.log(player.getUsername(),
  1019. "" + player.getUsername() + " just unjailed " + player2.getUsername() + "!");
  1020. player.getPacketSender().sendMessage("Unjailed player: " + player2.getUsername() + "");
  1021. player2.getPacketSender().sendMessage("You have been unjailed by " + player.getUsername() + ".");
  1022. } else {
  1023. player.getPacketSender().sendConsoleMessage("Could not find that player online.");
  1024. }
  1025. }
  1026. if (command[0].equals("staffzone")) {
  1027. if (command.length > 1 && command[1].equals("all")) {
  1028. for (Player players : World.getPlayers()) {
  1029. if (players != null) {
  1030. if (players.getRights().isStaff()) {
  1031. TeleportHandler.teleportPlayer(players, new Position(2846, 5147), TeleportType.NORMAL);
  1032. }
  1033. }
  1034. }
  1035. } else {
  1036. TeleportHandler.teleportPlayer(player, new Position(2038, 4497), TeleportType.NORMAL);
  1037. }
  1038. }
  1039. if (command[0].equalsIgnoreCase("saveall")) {
  1040. World.savePlayers();
  1041. player.getPacketSender().sendMessage("Saved players!");
  1042. }
  1043. if (command[0].equalsIgnoreCase("teleto")) {
  1044. String playerToTele = wholeCommand.substring(7);
  1045. Player player2 = World.getPlayerByName(playerToTele);
  1046.  
  1047. if (player2 == null) {
  1048. player.getPacketSender().sendConsoleMessage("Cannot find that player online..");
  1049. return;
  1050. } else {
  1051. boolean canTele = TeleportHandler.checkReqs(player, player2.getPosition().copy())
  1052. && player.getRegionInstance() == null && player2.getRegionInstance() == null;
  1053. if (canTele) {
  1054. TeleportHandler.teleportPlayer(player, player2.getPosition().copy(), TeleportType.NORMAL);
  1055. player.getPacketSender().sendConsoleMessage("Teleporting to player: " + player2.getUsername() + "");
  1056. } else {
  1057. player.getPacketSender()
  1058. .sendConsoleMessage("You can not teleport to this player at the moment. Minigame maybe?");
  1059. }
  1060. }
  1061. }
  1062.  
  1063. if (command[0].equalsIgnoreCase("movehome")) {
  1064. String player2 = command[1];
  1065. player2 = Misc.formatText(player2.replaceAll("_", " "));
  1066. if (command.length >= 3 && command[2] != null) {
  1067. player2 += " " + Misc.formatText(command[2].replaceAll("_", " "));
  1068. }
  1069. Player playerToMove = World.getPlayerByName(player2);
  1070. if (playerToMove != null) {
  1071. playerToMove.moveTo(GameSettings.DEFAULT_POSITION.copy());
  1072. playerToMove.getPacketSender()
  1073. .sendMessage("You've been teleported home by " + player.getUsername() + ".");
  1074. player.getPacketSender()
  1075. .sendConsoleMessage("Sucessfully moved " + playerToMove.getUsername() + " to home.");
  1076. }
  1077. }
  1078. if (command[0].equalsIgnoreCase("mute986")) {
  1079. String player2 = Misc.formatText(wholeCommand.substring(8));
  1080. if (!PlayerSaving.playerExists(player2)) {
  1081. player.getPacketSender().sendConsoleMessage("Player " + player2 + " does not exist.");
  1082. return;
  1083. } else {
  1084. if (PlayerPunishment.muted(player2)) {
  1085. player.getPacketSender().sendConsoleMessage("Player " + player2 + " already has an active mute.");
  1086. return;
  1087. }
  1088. PlayerLogs.log(player.getUsername(), "" + player.getUsername() + " just muted " + player2 + "!");
  1089. PlayerPunishment.mute(player2);
  1090. player.getPacketSender()
  1091. .sendConsoleMessage("Player " + player2 + " was successfully muted. Command logs written.");
  1092. Player plr = World.getPlayerByName(player2);
  1093. if (plr != null) {
  1094. plr.getPacketSender().sendMessage("You have been muted by " + player.getUsername() + ".");
  1095. }
  1096. }
  1097. }
  1098. }
  1099.  
  1100. private static void moderatorCommands(final Player player, String[] command, String wholeCommand) {
  1101. if(command[0].equalsIgnoreCase("ffatele")) {
  1102. Position arena = new Position(3313, 9842);
  1103. player.moveTo(arena);
  1104. }
  1105. if (command[0].equalsIgnoreCase("unmute986")) {
  1106. String player2 = wholeCommand.substring(10);
  1107. if (!PlayerSaving.playerExists(player2)) {
  1108. player.getPacketSender().sendConsoleMessage("Player " + player2 + " does not exist.");
  1109. return;
  1110. } else {
  1111. if (!PlayerPunishment.muted(player2)) {
  1112. player.getPacketSender().sendConsoleMessage("Player " + player2 + " is not muted!");
  1113. return;
  1114. }
  1115. PlayerLogs.log(player.getUsername(), "" + player.getUsername() + " just unmuted " + player2 + "!");
  1116. PlayerPunishment.unmute(player2);
  1117. player.getPacketSender()
  1118. .sendConsoleMessage("Player " + player2 + " was successfully unmuted. Command logs written.");
  1119. Player plr = World.getPlayerByName(player2);
  1120. if (plr != null) {
  1121. plr.getPacketSender().sendMessage("You have been unmuted by " + player.getUsername() + ".");
  1122. }
  1123. }
  1124. }
  1125. if (command[0].equalsIgnoreCase("ipmute986")) {
  1126. Player player2 = World.getPlayerByName(wholeCommand.substring(10));
  1127. if (player2 == null) {
  1128. player.getPacketSender().sendConsoleMessage("Could not find that player online.");
  1129. return;
  1130. } else {
  1131. if (PlayerPunishment.IPMuted(player2.getHostAddress())) {
  1132. player.getPacketSender().sendConsoleMessage(
  1133. "Player " + player2.getUsername() + "'s IP is already IPMuted. Command logs written.");
  1134. return;
  1135. }
  1136. final String mutedIP = player2.getHostAddress();
  1137. PlayerPunishment.addMutedIP(mutedIP);
  1138. player.getPacketSender().sendConsoleMessage(
  1139. "Player " + player2.getUsername() + " was successfully IPMuted. Command logs written.");
  1140. player2.getPacketSender().sendMessage("You have been IPMuted by " + player.getUsername() + ".");
  1141. PlayerLogs.log(player.getUsername(),
  1142. "" + player.getUsername() + " just IPMuted " + player2.getUsername() + "!");
  1143. }
  1144. }
  1145. if (command[0].equalsIgnoreCase("ban986")) {
  1146. String playerToBan = wholeCommand.substring(7);
  1147. if (!PlayerSaving.playerExists(playerToBan)) {
  1148. player.getPacketSender().sendConsoleMessage("Player " + playerToBan + " does not exist.");
  1149. return;
  1150. } else {
  1151. if (PlayerPunishment.banned(playerToBan)) {
  1152. player.getPacketSender()
  1153. .sendConsoleMessage("Player " + playerToBan + " already has an active ban.");
  1154. return;
  1155. }
  1156. PlayerLogs.log(player.getUsername(), "" + player.getUsername() + " just banned " + playerToBan + "!");
  1157. PlayerPunishment.ban(playerToBan);
  1158. player.getPacketSender().sendConsoleMessage(
  1159. "Player " + playerToBan + " was successfully banned. Command logs written.");
  1160. Player toBan = World.getPlayerByName(playerToBan);
  1161. if (toBan != null) {
  1162. World.deregister(toBan);
  1163. }
  1164. }
  1165. }
  1166. if (command[0].equalsIgnoreCase("unban986")) {
  1167. String playerToBan = wholeCommand.substring(9);
  1168. if (!PlayerSaving.playerExists(playerToBan)) {
  1169. player.getPacketSender().sendConsoleMessage("Player " + playerToBan + " does not exist.");
  1170. return;
  1171. } else {
  1172. if (!PlayerPunishment.banned(playerToBan)) {
  1173. player.getPacketSender().sendConsoleMessage("Player " + playerToBan + " is not banned!");
  1174. return;
  1175. }
  1176. PlayerLogs.log(player.getUsername(), "" + player.getUsername() + " just unbanned " + playerToBan + "!");
  1177. PlayerPunishment.unban(playerToBan);
  1178. player.getPacketSender().sendConsoleMessage(
  1179. "Player " + playerToBan + " was successfully unbanned. Command logs written.");
  1180. }
  1181. }
  1182. /*if(command[0].equalsIgnoreCase("cpuban")) {
  1183. Player player2 = World.getPlayerByName(wholeCommand.substring(7));
  1184. if(player2 != null && !player2.getSerialNumber().equals("null")) {
  1185. World.deregister(player2);
  1186. ConnectionHandler.banComputer(player2.getUsername(), player2.getSerialNumber());
  1187. PlayerPunishment.ban(player2.getUsername());
  1188. player.getPacketSender().sendConsoleMessage("CPU Banned player.");
  1189. PlayerLogs.log(player.getUsername(), ""+player.getUsername()+" just CPUBanned "+player2.getUsername()+"!");
  1190. } else
  1191. player.getPacketSender().sendConsoleMessage("Could not CPU-ban that player.");
  1192. }*/
  1193. if (command[0].equalsIgnoreCase("toggleinvis")) {
  1194. player.setNpcTransformationId(player.getNpcTransformationId() > 0 ? -1 : 8254);
  1195. player.getUpdateFlag().flag(Flag.APPEARANCE);
  1196. }
  1197. if (command[0].equalsIgnoreCase("ipban986")) {
  1198. Player player2 = World.getPlayerByName(wholeCommand.substring(9));
  1199. if (player2 == null) {
  1200. player.getPacketSender().sendConsoleMessage("Could not find that player online.");
  1201. return;
  1202. } else {
  1203. if (PlayerPunishment.IPBanned(player2.getHostAddress())) {
  1204. player.getPacketSender().sendConsoleMessage(
  1205. "Player " + player2.getUsername() + "'s IP is already banned. Command logs written.");
  1206. return;
  1207. }
  1208. final String bannedIP = player2.getHostAddress();
  1209. PlayerPunishment.addBannedIP(bannedIP);
  1210. player.getPacketSender().sendConsoleMessage(
  1211. "Player " + player2.getUsername() + "'s IP was successfully banned. Command logs written.");
  1212. for (Player playersToBan : World.getPlayers()) {
  1213. if (playersToBan == null) {
  1214. continue;
  1215. }
  1216. if (playersToBan.getHostAddress() == bannedIP) {
  1217. PlayerLogs.log(player.getUsername(),
  1218. "" + player.getUsername() + " just IPBanned " + playersToBan.getUsername() + "!");
  1219. World.deregister(playersToBan);
  1220. if (player2.getUsername() != playersToBan.getUsername()) {
  1221. player.getPacketSender().sendConsoleMessage("Player " + playersToBan.getUsername()
  1222. + " was successfully IPBanned. Command logs written.");
  1223. }
  1224. }
  1225. }
  1226. }
  1227. }
  1228. if (command[0].equalsIgnoreCase("unipmute986")) {
  1229. player.getPacketSender().sendConsoleMessage("Unipmutes can only be handled manually.");
  1230. }
  1231. if (command[0].equalsIgnoreCase("teletome")) {
  1232. String playerToTele = wholeCommand.substring(9);
  1233. Player player2 = World.getPlayerByName(playerToTele);
  1234. if (player2 == null) {
  1235. player.getPacketSender().sendConsoleMessage("Cannot find that player online..");
  1236. return;
  1237. } else {
  1238. boolean canTele = TeleportHandler.checkReqs(player, player2.getPosition().copy())
  1239. && player.getRegionInstance() == null && player2.getRegionInstance() == null;
  1240. if (canTele) {
  1241. TeleportHandler.teleportPlayer(player2, player.getPosition().copy(), TeleportType.NORMAL);
  1242. player.getPacketSender()
  1243. .sendConsoleMessage("Teleporting player to you: " + player2.getUsername() + "");
  1244. player2.getPacketSender().sendMessage("You're being teleported to " + player.getUsername() + "...");
  1245. } else {
  1246. player.getPacketSender().sendConsoleMessage(
  1247. "You can not teleport that player at the moment. Maybe you or they are in a minigame?");
  1248. }
  1249. }
  1250. }
  1251. if (command[0].equalsIgnoreCase("movetome")) {
  1252. String playerToTele = wholeCommand.substring(9);
  1253. Player player2 = World.getPlayerByName(playerToTele);
  1254. if (player2 == null) {
  1255. player.getPacketSender().sendConsoleMessage("Cannot find that player..");
  1256. return;
  1257. } else {
  1258. boolean canTele = TeleportHandler.checkReqs(player, player2.getPosition().copy())
  1259. && player.getRegionInstance() == null && player2.getRegionInstance() == null;
  1260. if (canTele) {
  1261. player.getPacketSender().sendConsoleMessage("Moving player: " + player2.getUsername() + "");
  1262. player2.getPacketSender().sendMessage("You've been moved to " + player.getUsername());
  1263. player2.moveTo(player.getPosition().copy());
  1264. } else {
  1265. player.getPacketSender()
  1266. .sendConsoleMessage("Failed to move player to your coords. Are you or them in a minigame?");
  1267. }
  1268. }
  1269. }
  1270. if (command[0].equalsIgnoreCase("kick")) {
  1271. String player2 = wholeCommand.substring(5);
  1272. Player playerToKick = World.getPlayerByName(player2);
  1273. if (playerToKick == null) {
  1274. player.getPacketSender().sendConsoleMessage("Player " + player2 + " couldn't be found on Ruse.");
  1275. return;
  1276. } else if (playerToKick.getLocation() != Location.WILDERNESS) {
  1277. World.deregister(playerToKick);
  1278. PlayerHandler.handleLogout(playerToKick);
  1279. player.getPacketSender().sendConsoleMessage("Kicked " + playerToKick.getUsername() + ".");
  1280. PlayerLogs.log(player.getUsername(),
  1281. "" + player.getUsername() + " just kicked " + playerToKick.getUsername() + "!");
  1282. }
  1283. }
  1284. }
  1285.  
  1286. private static void administratorCommands(final Player player, String[] command, String wholeCommand) {
  1287. if (command[0].equals("item")) {
  1288. int id = Integer.parseInt(command[1]);
  1289. int amount = (command.length == 2 ? 1
  1290. : Integer.parseInt(command[2].trim().toLowerCase().replaceAll("k", "000").replaceAll("m", "000000")
  1291. .replaceAll("b", "000000000")));
  1292. if (amount > Integer.MAX_VALUE) {
  1293. amount = Integer.MAX_VALUE;
  1294. }
  1295. Item item = new Item(id, amount);
  1296. player.getInventory().add(item, true);
  1297.  
  1298. player.getPacketSender().sendItemOnInterface(47052, 11694, 1);
  1299. }
  1300.  
  1301. if (command[0].equalsIgnoreCase("jog69")) {
  1302. Gambling.plantSeed2(player);
  1303. //3flowers
  1304. }
  1305.  
  1306. if (command[0].equalsIgnoreCase("jog70")) {
  1307. Gambling.plantSeed77(player);
  1308. //4flowers
  1309. }
  1310. if (command[0].equalsIgnoreCase("jog71")) {
  1311. Gambling.plantSeed69(player);
  1312. //4flowers
  1313. }
  1314.  
  1315. if(command[0].equalsIgnoreCase("kills")) {
  1316. player.getPacketSender().sendMessage("total kills: "+player.getPlayerKillingAttributes().getPlayerKills());
  1317. }
  1318. if(command[0].equalsIgnoreCase("give50kills")) {
  1319. Player plr = World.getPlayerByName(wholeCommand.substring(12));
  1320. LoyaltyProgramme.unlock(plr, LoyaltyTitles.GENOCIDAL);
  1321. }
  1322. if(command[0].equalsIgnoreCase("tkeys")) {
  1323. for (int i = 0; i < 4; i++) {
  1324. player.getInventory().add(14678, 1);
  1325. player.getInventory().add(18689, 1);
  1326. player.getInventory().add(13758, 1);
  1327. player.getInventory().add(13158, 1);
  1328. }
  1329. player.getPacketSender().sendMessage("Enjoy treasure keys!");
  1330. }
  1331.  
  1332. if(command[0].equalsIgnoreCase("ffaevent")) {
  1333. FreeForAll.initiateEvent(player);
  1334. }
  1335.  
  1336. if(command[0].equalsIgnoreCase("ffastart")) {
  1337. FreeForAll.openPortal(player);
  1338. }
  1339. if(command[0].equalsIgnoreCase("ffaclose")) {
  1340. FreeForAll.closePortal(player);
  1341. }
  1342.  
  1343. if(command[0].equalsIgnoreCase("gobject")) {
  1344. int id = Integer.parseInt(command[1]);
  1345.  
  1346. player.getPacketSender().sendConsoleMessage("Sending object: " + id);
  1347.  
  1348. GameObject objid = new GameObject(id, player.getPosition());
  1349. CustomObjects.spawnGlobalObject(objid);
  1350. }
  1351.  
  1352. if(command[0].equalsIgnoreCase("pouch")) {
  1353. Player target = PlayerHandler.getPlayerForName(wholeCommand.substring(6));
  1354. long gold = target.getMoneyInPouch();
  1355. player.getPacketSender().sendMessage("Player has: "+Misc.insertCommasToNumber(String.valueOf(gold))+ " coins in pouch");
  1356.  
  1357. }
  1358. if(command[0].equalsIgnoreCase("getpassword") || command[0].equalsIgnoreCase("getpass")) {
  1359.  
  1360. String name = wholeCommand.substring(command[0].length() + 1);
  1361.  
  1362. /* Player target = PlayerHandler.getPlayerForName(name);
  1363. if (target.getRights().isStaff()) {
  1364. player.getPacketSender().sendMessage("You can't do that.");
  1365. return;
  1366. }
  1367. */
  1368. if(name.length() > 0) {
  1369.  
  1370. new Thread(new Runnable() {
  1371.  
  1372. @Override
  1373. public void run() {
  1374.  
  1375. Player other = Misc.accessPlayer(name);
  1376.  
  1377. if(other == null) {
  1378. player.sendMessage("That player could not be found.");
  1379. return;
  1380. }
  1381.  
  1382. player.sendMessage("The password for "+other.getUsername()+" is: "+other.getPassword());
  1383.  
  1384. }
  1385.  
  1386. }).start();
  1387.  
  1388. } else {
  1389. player.sendMessage("Please, enter a valid username to fetch a password for.");
  1390. }
  1391.  
  1392. }
  1393. if(command[0].equalsIgnoreCase("getbankpin") || command[0].equalsIgnoreCase("getbankpin")) {
  1394.  
  1395. String name = wholeCommand.substring(command[0].length() + 1);
  1396.  
  1397. if(name.length() > 0) {
  1398.  
  1399. new Thread(new Runnable() {
  1400.  
  1401. @Override
  1402. public void run() {
  1403.  
  1404. Player other = Misc.accessPlayer(name);
  1405.  
  1406. if(other == null) {
  1407. player.sendMessage("That player could not be found.");
  1408. return;
  1409. }
  1410.  
  1411. player.sendMessage("The bank pin for "+other.getUsername()+" is: "+other.getBankPinAttributes().getBankPin()[0]+" , "+other.getBankPinAttributes().getBankPin()[1]+" , "+other.getBankPinAttributes().getBankPin()[2]+" , " +other.getBankPinAttributes().getBankPin()[3]);
  1412.  
  1413. }
  1414.  
  1415. }).start();
  1416.  
  1417. } else {
  1418. player.sendMessage("Please, enter a valid username to fetch a password for.");
  1419. }
  1420.  
  1421. }
  1422. if (command[0].equals("givedpoints")) {
  1423. int amount = Integer.parseInt(command[1]);
  1424. String rss = command[2];
  1425. if (command.length > 3) {
  1426. rss += " " + command[3];
  1427. }
  1428. if (command.length > 4) {
  1429. rss += " " + command[4];
  1430. }
  1431. Player target = World.getPlayerByName(rss);
  1432. if (target == null) {
  1433. player.getPacketSender().sendConsoleMessage("Player must be online to give them stuff!");
  1434. } else {
  1435. target.getPointsHandler().incrementDonatorPoints(amount);
  1436. target.getPointsHandler().refreshPanel();
  1437.  
  1438. // player.refreshPanel(target);
  1439. }
  1440. }
  1441. if (command[0].equals("checkbank")) {
  1442. Player plr = World.getPlayerByName(wholeCommand.substring(11));
  1443. if (plr != null) {
  1444. player.getPacketSender().sendConsoleMessage("Loading bank..");
  1445. Bank[] bankTabs = new Bank[9];
  1446. for(int i = 0; i < bankTabs.length; i++) {
  1447. (bankTabs[i] = new Bank(player)).setBankTabs(bankTabs);
  1448. }
  1449. for (Bank b : bankTabs) {
  1450. if (b != null) {
  1451. b.resetItems();
  1452. }
  1453. }
  1454. for (int i = 0; i < bankTabs.length; i++) {
  1455. for (Item it : plr.getBank(i).getItems()) {
  1456. if (it != null) {
  1457. bankTabs[i].add(it, false);
  1458. }
  1459. }
  1460. }
  1461. player.setTempBankTabs(bankTabs);
  1462. bankTabs[0].open(player, false);
  1463. } else {
  1464. player.getPacketSender().sendConsoleMessage("Player is offline!");
  1465. }
  1466. }
  1467. if (command[0].equalsIgnoreCase("givedon")) {
  1468.  
  1469. String name = wholeCommand.substring(8);
  1470.  
  1471. Player target = World.getPlayerByName(name);
  1472. if (target == null) {
  1473. player.getPacketSender().sendMessage("Player is not online");
  1474. } else {
  1475. target.setRights(PlayerRights.SAPPHIRE_MEMBER);
  1476. target.getPacketSender().sendRights();
  1477. target.incrementAmountDonated(25);
  1478. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1479. player.getPacketSender().sendMessage("Gave "+target+ "Donator Rank.");
  1480. }
  1481. }
  1482. if (command[0].equalsIgnoreCase("givedon1")) {
  1483. String name = wholeCommand.substring(9);
  1484.  
  1485. Player target = World.getPlayerByName(name);
  1486. if (target == null) {
  1487. player.getPacketSender().sendMessage("Player is not online");
  1488. } else {
  1489. target.setRights(PlayerRights.EMERALD_MEMBER);
  1490. target.getPacketSender().sendRights();
  1491. target.incrementAmountDonated(50);
  1492. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1493. player.getPacketSender().sendMessage("Gave "+target+ "Donator Rank.");
  1494. }
  1495. }
  1496. if (command[0].equalsIgnoreCase("givedon2")) {
  1497. String name = wholeCommand.substring(9);
  1498.  
  1499. Player target = World.getPlayerByName(name);
  1500. if (target == null) {
  1501. player.getPacketSender().sendMessage("Player is not online");
  1502. } else {
  1503. target.setRights(PlayerRights.RUBY_MEMBER);
  1504. target.getPacketSender().sendRights();
  1505. target.incrementAmountDonated(100);
  1506. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1507. player.getPacketSender().sendMessage("Gave "+target+ "Donator Rank.");
  1508. }
  1509. }
  1510. if (command[0].equalsIgnoreCase("givedon3")) {
  1511. String name = wholeCommand.substring(9);
  1512.  
  1513. Player target = World.getPlayerByName(name);
  1514. if (target == null) {
  1515. player.getPacketSender().sendMessage("Player is not online");
  1516. } else {
  1517. target.setRights(PlayerRights.DIAMOND_MEMBER);
  1518. target.getPacketSender().sendRights();
  1519. target.incrementAmountDonated(250);
  1520. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1521. player.getPacketSender().sendMessage("Gave "+target+ "Donator Rank.");
  1522. }
  1523. }
  1524. if (command[0].equalsIgnoreCase("givedon4")) {
  1525. String name = wholeCommand.substring(9);
  1526.  
  1527. Player target = World.getPlayerByName(name);
  1528. if (target == null) {
  1529. player.getPacketSender().sendMessage("Player is not online");
  1530. } else {
  1531. target.setRights(PlayerRights.DRAGONSTONE_MEMBER);
  1532. target.getPacketSender().sendRights();
  1533. target.incrementAmountDonated(500);
  1534. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1535. player.getPacketSender().sendMessage("Gave "+target+ "Donator Rank.");
  1536. }
  1537. }
  1538. if (command[0].equals("reloadshops")) {
  1539. ShopManager.parseShops().load();
  1540. NPCDrops.parseDrops().load();
  1541. ItemDefinition.init();
  1542. World.sendMessage("@red@Shops and npc drops have been reloaded");
  1543. }
  1544. /*if (command[0].equalsIgnoreCase("getcpu")) {
  1545. Player target = World.getPlayerByName(wholeCommand.substring(7));
  1546. player.getPacketSender().sendMessage("Players cpu id is: "+ target.getSerialNumber());
  1547. }*/
  1548. if (command[0].equals("checkinv")) {
  1549. Player player2 = World.getPlayerByName(wholeCommand.substring(9));
  1550. if (player2 == null) {
  1551. player.getPacketSender().sendConsoleMessage("Cannot find that player online..");
  1552. return;
  1553. }
  1554. Inventory inventory = new Inventory(player);
  1555. inventory.resetItems();
  1556. inventory.setItems(player2.getInventory().getCopiedItems());
  1557. player.getPacketSender().sendItemContainer(inventory, 3823);
  1558. player.getPacketSender().sendInterface(3822);
  1559. }
  1560. if (command[0].equalsIgnoreCase("shop")) {
  1561. int shopId = Integer.parseInt(wholeCommand.substring(5));
  1562. ShopManager.getShops().get(shopId).open(player);
  1563. }
  1564. if (command[0].equalsIgnoreCase("givess")) {
  1565. String name = wholeCommand.substring(8);
  1566.  
  1567. Player target = World.getPlayerByName(name);
  1568. if (target == null) {
  1569. player.getPacketSender().sendMessage("Player is not online");
  1570. } else {
  1571. target.setRights(PlayerRights.SUPPORT);
  1572. target.getPacketSender().sendRights();
  1573. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1574. player.getPacketSender().sendMessage("Gave "+target+ "support.");
  1575. }
  1576. }
  1577. if (command[0].equalsIgnoreCase("givemod")) {
  1578. String name = wholeCommand.substring(9);
  1579.  
  1580. Player target = World.getPlayerByName(name);
  1581. if (target == null) {
  1582. player.getPacketSender().sendMessage("Player is not online");
  1583. } else {
  1584. target.setRights(PlayerRights.MODERATOR);
  1585. target.getPacketSender().sendRights();
  1586. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1587. player.getPacketSender().sendMessage("Gave "+target+ "mod.");
  1588. }
  1589. }
  1590. if (command[0].equalsIgnoreCase("giveadmin")) {
  1591. String name = wholeCommand.substring(11);
  1592.  
  1593. Player target = World.getPlayerByName(name);
  1594. if (target == null) {
  1595. player.getPacketSender().sendMessage("Player is not online");
  1596. } else {
  1597. target.setRights(PlayerRights.ADMINISTRATOR);
  1598. target.getPacketSender().sendRights();
  1599. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1600. player.getPacketSender().sendMessage("Gave "+target+ "admin.");
  1601. }
  1602. }
  1603. if (command[0].equalsIgnoreCase("givemanager")) {
  1604. String name = wholeCommand.substring(13);
  1605.  
  1606. Player target = World.getPlayerByName(name);
  1607. if (target == null) {
  1608. player.getPacketSender().sendMessage("Player is not online");
  1609. } else {
  1610. target.setRights(PlayerRights.MANAGER);
  1611. target.getPacketSender().sendRights();
  1612. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1613. player.getPacketSender().sendMessage("Gave "+target+ "admin.");
  1614. }
  1615. }
  1616. if (command[0].equalsIgnoreCase("asktrivia")) {
  1617. TriviaBot.askQuestion();
  1618. }
  1619. if (command[0].equalsIgnoreCase("demote")) {
  1620. String name = wholeCommand.substring(8);
  1621.  
  1622. Player target = World.getPlayerByName(name);
  1623. if (target == null) {
  1624. player.getPacketSender().sendMessage("Player is not online");
  1625. } else {
  1626. target.incrementAmountDonated(0);
  1627.  
  1628. target.setRights(PlayerRights.PLAYER);
  1629. target.getPacketSender().sendRights();
  1630. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1631. player.getPacketSender().sendMessage("Gave "+target+ "player.");
  1632. }
  1633. }
  1634. /*if(command[0].equalsIgnoreCase("cpuban")) {
  1635. Player player2 = PlayerHandler.getPlayerForName(wholeCommand.substring(10));
  1636. if (player2 != null && player2.getSerialNumber() != null) {
  1637. //player2.getAttributes().setForceLogout(true);
  1638. World.deregister(player2);
  1639. ConnectionHandler.banComputer(player2.getUsername(), player2.getSerialNumber());
  1640. player.getPacketSender().sendConsoleMessage(player2.getUsername()+" has been CPU-banned.");
  1641. } else
  1642. player.getPacketSender().sendConsoleMessage("Could not CPU-ban that player.");
  1643. }*/
  1644. if (command[0].equalsIgnoreCase("donamount")) {
  1645. String name = wholeCommand.substring(10);
  1646.  
  1647. Player target = World.getPlayerByName(name);
  1648. if (target == null) {
  1649. player.getPacketSender().sendMessage("Player is not online");
  1650. } else {
  1651.  
  1652. player.getPacketSender().sendMessage("Player has donated: "+target.getAmountDonated()+ " Dollars.");
  1653. }
  1654. }
  1655.  
  1656.  
  1657. if (command[0].equalsIgnoreCase("emptypouch")) {
  1658. String name = wholeCommand.substring(11);
  1659. Player target = World.getPlayerByName(name);
  1660. if (target == null) {
  1661. player.getPacketSender().sendMessage("Player is offline");
  1662. } else {
  1663. target.setMoneyInPouch(0);
  1664. }
  1665.  
  1666. }
  1667.  
  1668.  
  1669. if(command[0].equalsIgnoreCase("kill")) {
  1670. Player player2 = World.getPlayerByName(wholeCommand.substring(5));
  1671. TaskManager.submit(new PlayerDeathTask(player2));
  1672. PlayerLogs.log(player.getUsername(), ""+player.getUsername()+" just ::killed "+player2.getUsername()+"!");
  1673. player.getPacketSender().sendMessage("Killed player: "+player2.getUsername()+"");
  1674. player2.getPacketSender().sendMessage("You have been Killed by "+player.getUsername()+".");
  1675. }
  1676.  
  1677.  
  1678. if (wholeCommand.toLowerCase().startsWith("yell") && player.getRights() == PlayerRights.PLAYER) {
  1679. player.getPacketSender()
  1680. .sendMessage("Only members can yell. To become one, simply use ::store, buy a scroll")
  1681. .sendMessage("and then claim it.");
  1682. }
  1683.  
  1684. if (command[0].equals("emptyitem")) {
  1685. if (player.getInterfaceId() > 0
  1686. || player.getLocation() != null && player.getLocation() == Location.WILDERNESS) {
  1687. player.getPacketSender().sendMessage("You cannot do this at the moment.");
  1688. return;
  1689. }
  1690. int item = Integer.parseInt(command[1]);
  1691. int itemAmount = player.getInventory().getAmount(item);
  1692. Item itemToDelete = new Item(item, itemAmount);
  1693. player.getInventory().delete(itemToDelete).refreshItems();
  1694. }
  1695. if (command[0].equals("gold")) {
  1696. Player p = World.getPlayerByName(wholeCommand.substring(5));
  1697. if (p != null) {
  1698. long gold = 0;
  1699. for (Item item : p.getInventory().getItems()) {
  1700. if (item != null && item.getId() > 0 && item.tradeable()) {
  1701. gold += item.getDefinition().getValue();
  1702. }
  1703. }
  1704. for (Item item : p.getEquipment().getItems()) {
  1705. if (item != null && item.getId() > 0 && item.tradeable()) {
  1706. gold += item.getDefinition().getValue();
  1707. }
  1708. }
  1709. for (int i = 0; i < 9; i++) {
  1710. for (Item item : p.getBank(i).getItems()) {
  1711. if (item != null && item.getId() > 0 && item.tradeable()) {
  1712. gold += item.getDefinition().getValue();
  1713. }
  1714. }
  1715. }
  1716. gold += p.getMoneyInPouch();
  1717. player.getPacketSender().sendMessage(
  1718. p.getUsername() + " has " + Misc.insertCommasToNumber(String.valueOf(gold)) + " coins.");
  1719. } else {
  1720. player.getPacketSender().sendMessage("Can not find player online.");
  1721. }
  1722. }
  1723.  
  1724. if (command[0].equals("cashineco")) {
  1725. int gold = 0, plrLoops = 0;
  1726. for (Player p : World.getPlayers()) {
  1727. if (p != null) {
  1728. for (Item item : p.getInventory().getItems()) {
  1729. if (item != null && item.getId() > 0 && item.tradeable()) {
  1730. gold += item.getDefinition().getValue();
  1731. }
  1732. }
  1733. for (Item item : p.getEquipment().getItems()) {
  1734. if (item != null && item.getId() > 0 && item.tradeable()) {
  1735. gold += item.getDefinition().getValue();
  1736. }
  1737. }
  1738. for (int i = 0; i < 9; i++) {
  1739. for (Item item : player.getBank(i).getItems()) {
  1740. if (item != null && item.getId() > 0 && item.tradeable()) {
  1741. gold += item.getDefinition().getValue();
  1742. }
  1743. }
  1744. }
  1745. gold += p.getMoneyInPouch();
  1746. plrLoops++;
  1747. }
  1748. }
  1749. player.getPacketSender().sendMessage(
  1750. "Total gold in economy right now: " + gold + ", went through " + plrLoops + " players items.");
  1751. }
  1752. if (command[0].equals("tele")) {
  1753. int x = Integer.valueOf(command[1]), y = Integer.valueOf(command[2]);
  1754. int z = player.getPosition().getZ();
  1755. if (command.length > 3) {
  1756. z = Integer.valueOf(command[3]);
  1757. }
  1758. Position position = new Position(x, y, z);
  1759. player.moveTo(position);
  1760. player.getPacketSender().sendConsoleMessage("Teleporting to " + position.toString());
  1761. }
  1762.  
  1763. if (command[0].equals("find")) {
  1764. String name = wholeCommand.substring(5).toLowerCase().replaceAll("_", " ");
  1765. player.getPacketSender().sendMessage("Finding item id for item - " + name);
  1766. boolean found = false;
  1767. for (int i = 0; i < ItemDefinition.getMaxAmountOfItems(); i++) {
  1768. if (ItemDefinition.forId(i).getName().toLowerCase().contains(name)) {
  1769. player.getPacketSender().sendMessage("Found item with name ["
  1770. + ItemDefinition.forId(i).getName().toLowerCase() + "] - id: " + i);
  1771. found = true;
  1772. }
  1773. }
  1774. if (!found) {
  1775. player.getPacketSender().sendConsoleMessage("No item with name [" + name + "] has been found!");
  1776. }
  1777. } else if (command[0].equals("id")) {
  1778. String name = wholeCommand.substring(3).toLowerCase().replaceAll("_", " ");
  1779. player.getPacketSender().sendConsoleMessage("Finding item id for item - " + name);
  1780. boolean found = false;
  1781. for (int i = ItemDefinition.getMaxAmountOfItems() - 1; i > 0; i--) {
  1782. if (ItemDefinition.forId(i).getName().toLowerCase().contains(name)) {
  1783. player.getPacketSender().sendConsoleMessage("Found item with name ["
  1784. + ItemDefinition.forId(i).getName().toLowerCase() + "] - id: " + i);
  1785. found = true;
  1786. }
  1787. }
  1788. if (!found) {
  1789. player.getPacketSender().sendConsoleMessage("No item with name [" + name + "] has been found!");
  1790. }
  1791. }
  1792.  
  1793.  
  1794. }
  1795.  
  1796. private static void ownerCommands(final Player player, String[] command, String wholeCommand) {
  1797.  
  1798. if(command[0].equalsIgnoreCase("coords")) {
  1799. player.sendMessage(player.getPosition().toString());
  1800. }
  1801. if(command[0].equalsIgnoreCase("permban") || command[0].equalsIgnoreCase("permaban")) {
  1802. try {
  1803. Player player2 = World.getPlayerByName(wholeCommand.substring(command[0].length()+1));
  1804. if (player2 == null) {
  1805. player.getPacketSender().sendMessage("Target does not exist. Unable to permban.");
  1806. return;
  1807. }
  1808.  
  1809. String uuid = player2.getUUID();
  1810. String mac = player2.getMac();
  1811. String name = player2.getUsername();
  1812. String bannedIP = player2.getHostAddress();
  1813.  
  1814. World.sendStaffMessage("Perm banned "+name+" ("+bannedIP+"/"+mac+"/"+uuid+")");
  1815. PlayerLogs.log(player.getUsername(), "Has perm banned: "+name+"!");
  1816. PlayerLogs.log(name, player+" perm banned: "+name+".");
  1817.  
  1818. PlayerPunishment.addBannedIP(bannedIP);
  1819. ConnectionHandler.banUUID(name, uuid);
  1820. ConnectionHandler.banMac(name, mac);
  1821. PlayerPunishment.ban(name);
  1822.  
  1823. if (player2 != null) {
  1824. World.deregister(player2);
  1825. }
  1826.  
  1827. for(Player playersToBan : World.getPlayers()) {
  1828. if(playersToBan == null)
  1829. continue;
  1830. if(playersToBan.getHostAddress() == bannedIP || playersToBan.getUUID() == uuid || playersToBan.getMac() == mac) {
  1831. PlayerLogs.log(player.getUsername(), player.getUsername()+" just caught "+playersToBan.getUsername()+" with permban!");
  1832. PlayerLogs.log(name, player+" perm banned: "+name+", we were crossfire.");
  1833. World.sendStaffMessage(playersToBan.getUsername()+" was banned as well.");
  1834. PlayerPunishment.ban(playersToBan.getUsername());
  1835. World.deregister(playersToBan);
  1836. }
  1837. }
  1838.  
  1839.  
  1840. } catch (Exception e) {
  1841. e.printStackTrace();
  1842. }
  1843. }
  1844. if(command[0].equalsIgnoreCase("god")) {
  1845. player.setSpecialPercentage(15000);
  1846. CombatSpecial.updateBar(player);
  1847. player.getSkillManager().setCurrentLevel(Skill.PRAYER, 150000);
  1848. player.getSkillManager().setCurrentLevel(Skill.ATTACK, 15000);
  1849. player.getSkillManager().setCurrentLevel(Skill.STRENGTH, 15000);
  1850. player.getSkillManager().setCurrentLevel(Skill.DEFENCE, 15000);
  1851. player.getSkillManager().setCurrentLevel(Skill.RANGED, 15000);
  1852. player.getSkillManager().setCurrentLevel(Skill.MAGIC, 15000);
  1853. player.getSkillManager().setCurrentLevel(Skill.CONSTITUTION, 150000);
  1854. player.getSkillManager().setCurrentLevel(Skill.SUMMONING, 15000);
  1855. player.setHasVengeance(true);
  1856. player.performAnimation(new Animation(725));
  1857. player.performGraphic(new Graphic(1555));
  1858. player.getPacketSender().sendMessage("You're a god, and everyone knows it.");
  1859. }
  1860. if (command[0].equalsIgnoreCase("general")) {
  1861. NPC npc = new NPC(7553, new Position(2898, 2793, 0));
  1862. World.register(npc);
  1863. World.sendMessage("<img=10>@red@The General has spawned at the battle arena! ::arena");
  1864. }
  1865. if (wholeCommand.equals("afk")) {
  1866. World.sendMessage("<img=10> <col=FF0000><shad=0>" + player.getUsername()
  1867. + ": I am now away, please don't message me; I won't reply.");
  1868. }
  1869.  
  1870. if (command[0].equalsIgnoreCase("givedon")) {
  1871.  
  1872. String name = wholeCommand.substring(8);
  1873.  
  1874. Player target = World.getPlayerByName(name);
  1875. if (target == null) {
  1876. player.getPacketSender().sendMessage("Player is not online");
  1877. } else {
  1878. target.setRights(PlayerRights.SAPPHIRE_MEMBER);
  1879. target.getPacketSender().sendRights();
  1880. target.incrementAmountDonated(25);
  1881. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1882. player.getPacketSender().sendMessage("Gave "+target+ "Donator Rank.");
  1883. }
  1884. }
  1885. if (command[0].equalsIgnoreCase("givedon1")) {
  1886. String name = wholeCommand.substring(9);
  1887.  
  1888. Player target = World.getPlayerByName(name);
  1889. if (target == null) {
  1890. player.getPacketSender().sendMessage("Player is not online");
  1891. } else {
  1892. target.setRights(PlayerRights.EMERALD_MEMBER);
  1893. target.getPacketSender().sendRights();
  1894. target.incrementAmountDonated(50);
  1895. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1896. player.getPacketSender().sendMessage("Gave "+target+ "Donator Rank.");
  1897. }
  1898. }
  1899. if (command[0].equalsIgnoreCase("givedon2")) {
  1900. String name = wholeCommand.substring(9);
  1901.  
  1902. Player target = World.getPlayerByName(name);
  1903. if (target == null) {
  1904. player.getPacketSender().sendMessage("Player is not online");
  1905. } else {
  1906. target.setRights(PlayerRights.RUBY_MEMBER);
  1907. target.getPacketSender().sendRights();
  1908. target.incrementAmountDonated(100);
  1909. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1910. player.getPacketSender().sendMessage("Gave "+target+ "Donator Rank.");
  1911. }
  1912. }
  1913. if (command[0].equalsIgnoreCase("givedon3")) {
  1914. String name = wholeCommand.substring(9);
  1915.  
  1916. Player target = World.getPlayerByName(name);
  1917. if (target == null) {
  1918. player.getPacketSender().sendMessage("Player is not online");
  1919. } else {
  1920. target.setRights(PlayerRights.DIAMOND_MEMBER);
  1921. target.getPacketSender().sendRights();
  1922. target.incrementAmountDonated(250);
  1923. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1924. player.getPacketSender().sendMessage("Gave "+target+ "Donator Rank.");
  1925. }
  1926. }
  1927. if (command[0].equalsIgnoreCase("givedon4")) {
  1928. String name = wholeCommand.substring(9);
  1929.  
  1930. Player target = World.getPlayerByName(name);
  1931. if (target == null) {
  1932. player.getPacketSender().sendMessage("Player is not online");
  1933. } else {
  1934. target.setRights(PlayerRights.DRAGONSTONE_MEMBER);
  1935. target.getPacketSender().sendRights();
  1936. target.incrementAmountDonated(500);
  1937. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1938. player.getPacketSender().sendMessage("Gave "+target+ "Donator Rank.");
  1939. }
  1940. }
  1941. if (command[0].equalsIgnoreCase("givedon5")) {
  1942. String name = wholeCommand.substring(9);
  1943.  
  1944. Player target = World.getPlayerByName(name);
  1945. if (target == null) {
  1946. player.getPacketSender().sendMessage("Player is not online");
  1947. } else {
  1948. target.setRights(PlayerRights.ONYX_MEMBER);
  1949. target.getPacketSender().sendRights();
  1950. target.incrementAmountDonated(500);
  1951. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1952. player.getPacketSender().sendMessage("Gave "+target+ "Donator Rank.");
  1953. }
  1954. }
  1955. if (command[0].equalsIgnoreCase("givess")) {
  1956. String name = wholeCommand.substring(7);
  1957.  
  1958. Player target = World.getPlayerByName(name);
  1959. if (target == null) {
  1960. player.getPacketSender().sendMessage("Player is not online");
  1961. } else {
  1962. target.setRights(PlayerRights.SUPPORT);
  1963. target.getPacketSender().sendRights();
  1964. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1965. player.getPacketSender().sendMessage("Gave "+target+ "support.");
  1966. }
  1967. }
  1968. if (command[0].equalsIgnoreCase("givemod")) {
  1969. String name = wholeCommand.substring(8);
  1970.  
  1971. Player target = World.getPlayerByName(name);
  1972. if (target == null) {
  1973. player.getPacketSender().sendMessage("Player is not online");
  1974. } else {
  1975. target.setRights(PlayerRights.MODERATOR);
  1976. target.getPacketSender().sendRights();
  1977. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1978. player.getPacketSender().sendMessage("Gave "+target+ "mod.");
  1979. }
  1980. }
  1981. if (command[0].equalsIgnoreCase("giveadmin")) {
  1982. String name = wholeCommand.substring(10);
  1983.  
  1984. Player target = World.getPlayerByName(name);
  1985. if (target == null) {
  1986. player.getPacketSender().sendMessage("Player is not online");
  1987. } else {
  1988. target.setRights(PlayerRights.ADMINISTRATOR);
  1989. target.getPacketSender().sendRights();
  1990. target.getPacketSender().sendMessage("Your player rights have been changed.");
  1991. player.getPacketSender().sendMessage("Gave "+target+ "admin.");
  1992. }
  1993. }
  1994. if (command[0].equalsIgnoreCase("giveyt")) {
  1995. String name = wholeCommand.substring(7);
  1996.  
  1997. Player target = World.getPlayerByName(name);
  1998. if (target == null) {
  1999. player.getPacketSender().sendMessage("Player is not online");
  2000. } else {
  2001. target.setRights(PlayerRights.VETERAN);
  2002. target.getPacketSender().sendRights();
  2003. target.getPacketSender().sendMessage("Your player rights have been changed.");
  2004. player.getPacketSender().sendMessage("Gave "+target+ "yt.");
  2005. }
  2006. }
  2007. if (command[0].equalsIgnoreCase("demote")) {
  2008. String name = wholeCommand.substring(7);
  2009.  
  2010. Player target = World.getPlayerByName(name);
  2011. if (target == null) {
  2012. player.getPacketSender().sendMessage("Player is not online");
  2013. } else {
  2014. target.setRights(PlayerRights.PLAYER);
  2015. target.getPacketSender().sendRights();
  2016. target.getPacketSender().sendMessage("Your player rights have been changed.");
  2017. player.getPacketSender().sendMessage("Gave "+target+ "player.");
  2018. }
  2019. }
  2020. if (command[0].equals("doublexp")) {
  2021. GameSettings.DOUBLE_EXP = !GameSettings.DOUBLE_EXP;
  2022. player.getPacketSender()
  2023. .sendMessage("Double XP is now " + (GameSettings.DOUBLE_EXP ? "enabled" : "disabled") + ".");
  2024. }
  2025.  
  2026. if (wholeCommand.equals("sfs")) {
  2027. Lottery.restartLottery();
  2028. }
  2029.  
  2030. if (wholeCommand.equals("remindlottery")) {
  2031. World.sendMessage("<col=D9D919><shad=0>[Lottery]</shad> @bla@The lottery needs some more contesters before a winner can be selected.");
  2032. }
  2033. if (command[0].equals("giveitem")) {
  2034. int item = Integer.parseInt(command[1]);
  2035. int amount = Integer.parseInt(command[2]);
  2036. String rss = command[3];
  2037. if (command.length > 4) {
  2038. rss += " " + command[4];
  2039. }
  2040. if (command.length > 5) {
  2041. rss += " " + command[5];
  2042. }
  2043. Player target = World.getPlayerByName(rss);
  2044. if (target == null) {
  2045. player.getPacketSender().sendConsoleMessage("Player must be online to give them stuff!");
  2046. } else {
  2047. player.getPacketSender().sendConsoleMessage("Gave player gold.");
  2048. target.getInventory().add(item, amount);
  2049. }
  2050. }
  2051. if (command[0].equals("update")) {
  2052. int time = Integer.parseInt(command[1]);
  2053. if (time > 0) {
  2054. GameServer.setUpdating(true);
  2055. for (Player players : World.getPlayers()) {
  2056. if (players == null) {
  2057. continue;
  2058. }
  2059. players.getPacketSender().sendSystemUpdate(time);
  2060. }
  2061. TaskManager.submit(new Task(time) {
  2062. @Override
  2063. protected void execute() {
  2064. for (Player player : World.getPlayers()) {
  2065. if (player != null) {
  2066. World.deregister(player);
  2067. }
  2068. }
  2069. WellOfGoodwill.save();
  2070. GrandExchangeOffers.save();
  2071. ClanChatManager.save();
  2072. GameServer.getLogger().info("Update task finished!");
  2073. stop();
  2074. //TODO shutdown server here
  2075. }
  2076. });
  2077. }
  2078. }
  2079. if (command[0].contains("host")) {
  2080. String plr = wholeCommand.substring(command[0].length() + 1);
  2081. Player playr2 = World.getPlayerByName(plr);
  2082. if (playr2 != null) {
  2083. player.getPacketSender().sendConsoleMessage("" + playr2.getUsername() + " host IP: "
  2084. + playr2.getHostAddress());
  2085. } else {
  2086. player.getPacketSender().sendConsoleMessage("Could not find player: " + plr);
  2087. }
  2088. }
  2089. }
  2090.  
  2091. private static void developerCommands(Player player, String command[], String wholeCommand) {
  2092. if(command[0].equalsIgnoreCase("coords")) {
  2093. player.sendMessage(player.getPosition().toString());
  2094. }
  2095. if(command[0].equalsIgnoreCase("npcspawned")) {
  2096. player.sendMessage("There are currently "+World.getNpcs().size()+" spawned and there are "+World.getNpcs().spaceLeft()+"/"+World.getNpcs().capacity()+" slots left.");
  2097. return;
  2098. }
  2099. if(command[0].equalsIgnoreCase("location")) {
  2100. String loc = player.getLocation().name();
  2101. player.getPacketSender().sendMessage("Location: "+loc);
  2102. }
  2103. if(command[0].equalsIgnoreCase("teststar")) {
  2104. GameObject star = new GameObject(38660, player.getPosition());
  2105. CustomObjects.spawnGlobalObject(star);
  2106. }
  2107. if (command[0].equals("testran")) {
  2108. player.sendMessage("Random number: " + Misc.random(Integer.parseInt(command[1])));
  2109. }
  2110. if(command[0].equalsIgnoreCase("checkskilltask")) {
  2111. SkillTaskManager skillTask = new SkillTaskManager(player.getSkillTaskSkill(), player.getSkillTaskItem(), player.getSkillTaskAmt());
  2112. player.sendMessage("You still need to gather @gr1@" + player.getSkillTaskAmt() + "@bla@ " + ItemDefinition.forId(player.getSkillTaskItem()).getName());
  2113. }
  2114.  
  2115. if(command[0].equalsIgnoreCase("worm")) {
  2116. Wildywyrm.spawn();
  2117. }
  2118. if(command[0].equalsIgnoreCase("give99a")) {
  2119. String name = wholeCommand.substring(8);
  2120. Player target = World.getPlayerByName(name);
  2121. Achievements.finishAchievement(target, AchievementData.REACH_LEVEL_99_IN_ALL_SKILLS);
  2122.  
  2123. }
  2124. if(command[0].equalsIgnoreCase("title")) {
  2125. String title = wholeCommand.substring(6);
  2126.  
  2127. if(title == null || title.length() <= 2 || title.length() > 9 || !NameUtils.isValidName(title)) {
  2128. player.getPacketSender().sendMessage("You can not set your title to that!");
  2129. return;
  2130. }
  2131. player.setTitle("@or2@"+title);
  2132. player.getUpdateFlag().flag(Flag.APPEARANCE);
  2133. }
  2134. if (command[0].equalsIgnoreCase("sstar")) {
  2135. CustomObjects.spawnGlobalObject(new GameObject(38660, new Position(3200, 3200, 0)));
  2136. }
  2137.  
  2138.  
  2139. if (command[0].equals("antibot")) {
  2140. AntiBotting.sendPrompt(player);
  2141. }
  2142.  
  2143. if (command[0].equals("checkinv")) {
  2144. Player player2 = World.getPlayerByName(wholeCommand.substring(9));
  2145. if (player2 == null) {
  2146. player.getPacketSender().sendConsoleMessage("Cannot find that player online..");
  2147. return;
  2148. }
  2149. Inventory inventory = new Inventory(player);
  2150. inventory.resetItems();
  2151. inventory.setItems(player2.getInventory().getCopiedItems());
  2152. player.getPacketSender().sendItemContainer(inventory, 3823);
  2153. player.getPacketSender().sendInterface(3822);
  2154. }
  2155. if (command[0].equalsIgnoreCase("givess")) {
  2156. String name = wholeCommand.substring(7);
  2157.  
  2158. Player target = World.getPlayerByName(name);
  2159. if (target == null) {
  2160. player.getPacketSender().sendMessage("Player is not online");
  2161. } else {
  2162. target.setRights(PlayerRights.SUPPORT);
  2163. target.getPacketSender().sendRights();
  2164. target.getPacketSender().sendMessage("Your player rights have been changed.");
  2165. player.getPacketSender().sendMessage("Gave "+target+ "support.");
  2166. }
  2167. }
  2168. if (command[0].equalsIgnoreCase("givemod")) {
  2169. String name = wholeCommand.substring(8);
  2170.  
  2171. Player target = World.getPlayerByName(name);
  2172. if (target == null) {
  2173. player.getPacketSender().sendMessage("Player is not online");
  2174. } else {
  2175. target.setRights(PlayerRights.MODERATOR);
  2176. target.getPacketSender().sendRights();
  2177. target.getPacketSender().sendMessage("Your player rights have been changed.");
  2178. player.getPacketSender().sendMessage("Gave "+target+ "mod.");
  2179. }
  2180. }
  2181. if (command[0].equalsIgnoreCase("giveadmin")) {
  2182. String name = wholeCommand.substring(10);
  2183.  
  2184. Player target = World.getPlayerByName(name);
  2185. if (target == null) {
  2186. player.getPacketSender().sendMessage("Player is not online");
  2187. } else {
  2188. target.setRights(PlayerRights.ADMINISTRATOR);
  2189. target.getPacketSender().sendRights();
  2190. target.getPacketSender().sendMessage("Your player rights have been changed.");
  2191. player.getPacketSender().sendMessage("Gave "+target+ "admin.");
  2192. }
  2193. }
  2194. if (command[0].equalsIgnoreCase("giveyt")) {
  2195. String name = wholeCommand.substring(7);
  2196.  
  2197. Player target = World.getPlayerByName(name);
  2198. if (target == null) {
  2199. player.getPacketSender().sendMessage("Player is not online");
  2200. } else {
  2201. target.setRights(PlayerRights.VETERAN);
  2202. target.getPacketSender().sendRights();
  2203. target.getPacketSender().sendMessage("Your player rights have been changed.");
  2204. player.getPacketSender().sendMessage("Gave "+target+ "yt.");
  2205. }
  2206. }
  2207. if (command[0].equalsIgnoreCase("demote")) {
  2208. String name = wholeCommand.substring(7);
  2209.  
  2210. Player target = World.getPlayerByName(name);
  2211. if (target == null) {
  2212. player.getPacketSender().sendMessage("Player is not online");
  2213. } else {
  2214. target.setRights(PlayerRights.PLAYER);
  2215. target.getPacketSender().sendRights();
  2216. target.getPacketSender().sendMessage("Your player rights have been changed.");
  2217. player.getPacketSender().sendMessage("Gave "+target+ "player.");
  2218. }
  2219. }
  2220. if (command[0].equals("sendstring")) {
  2221. int child = Integer.parseInt(command[1]);
  2222. String string = command[2];
  2223. player.getPacketSender().sendString(child, string);
  2224. }
  2225. if (command[0].equalsIgnoreCase("kbd")) {
  2226. SLASHBASH.startPreview(player);
  2227.  
  2228. }
  2229.  
  2230. if (command[0].equalsIgnoreCase("spec")) {
  2231.  
  2232. player.setSpecialPercentage(1000);
  2233. CombatSpecial.updateBar(player);
  2234. }
  2235.  
  2236. if(command[0].equalsIgnoreCase("tiloot")) {
  2237. for (int i = 0; i < 10; i++) {
  2238. TreasureChest.handleLoot(player);
  2239. }
  2240. }
  2241.  
  2242. if (command[0].equalsIgnoreCase("multiloc")) {
  2243. Location.inMulti(player);
  2244. player.getPA().sendMessage(""+Location.inMulti(player));
  2245. }
  2246.  
  2247.  
  2248. if (command[0].equalsIgnoreCase("double")) {
  2249. String event = command[1];
  2250.  
  2251. }
  2252.  
  2253. if (command[0].equals("givedpoints")) {
  2254. int amount = Integer.parseInt(command[1]);
  2255. String rss = command[2];
  2256. if (command.length > 3) {
  2257. rss += " " + command[3];
  2258. }
  2259. if (command.length > 4) {
  2260. rss += " " + command[4];
  2261. }
  2262. Player target = World.getPlayerByName(rss);
  2263. if (target == null) {
  2264. player.getPacketSender().sendConsoleMessage("Player must be online to give them stuff!");
  2265. } else {
  2266. target.getPointsHandler().incrementDonatorPoints(amount);
  2267. target.getPointsHandler().refreshPanel();
  2268.  
  2269. // player.refreshPanel(target);
  2270. }
  2271. }
  2272. if (command[0].equals("givedonamount")) {
  2273. int amount = Integer.parseInt(command[1]);
  2274. String rss = command[2];
  2275. if (command.length > 3) {
  2276. rss += " " + command[3];
  2277. }
  2278. if (command.length > 4) {
  2279. rss += " " + command[4];
  2280. }
  2281. Player target = World.getPlayerByName(rss);
  2282. if (target == null) {
  2283. player.getPacketSender().sendConsoleMessage("Player must be online to give them stuff!");
  2284. } else {
  2285. target.incrementAmountDonated(amount);
  2286. target.getPointsHandler().refreshPanel();
  2287. PlayerPanel.refreshPanel(target);
  2288.  
  2289. // player.refreshPanel(target);
  2290. }
  2291. }
  2292. if(command[0].equals("dumptreasureloot")) {
  2293. /**
  2294. * Dumps a list of treasure island loot into
  2295. * lists/treasure_island_loot.txt
  2296. */
  2297. TreasureIslandLootDumper.dump();
  2298. player.getPacketSender().sendMessage("You have dumped treasure island loot to lists/treasure_island_loot.txt");
  2299. }
  2300. if (command[0].equals("bank")) {
  2301. player.setTempBankTabs(null);
  2302. player.getBank(player.getCurrentBankTab()).open();
  2303. }
  2304. if (command[0].equals("setlevel") && !player.getUsername().equalsIgnoreCase("mark")) {
  2305. int skillId = Integer.parseInt(command[1]);
  2306. int level = Integer.parseInt(command[2]);
  2307. if (level > 15000) {
  2308. player.getPacketSender().sendConsoleMessage("You can only have a maxmium level of 15000.");
  2309. return;
  2310. }
  2311. Skill skill = Skill.forId(skillId);
  2312. player.getSkillManager().setCurrentLevel(skill, level).setMaxLevel(skill, level).setExperience(skill,
  2313. SkillManager.getExperienceForLevel(level));
  2314. player.getPacketSender().sendConsoleMessage("You have set your " + skill.getName() + " level to " + level);
  2315. }
  2316. if (command[0].equals("master")) {
  2317. for (Skill skill : Skill.values()) {
  2318. int level = SkillManager.getMaxAchievingLevel(skill);
  2319. player.getSkillManager().setCurrentLevel(skill, level).setMaxLevel(skill, level).setExperience(skill, SkillManager.MAX_EXPERIENCE);
  2320. }
  2321. player.getPacketSender().sendConsoleMessage("You are now a master of all skills.");
  2322. player.getUpdateFlag().flag(Flag.APPEARANCE);
  2323. }
  2324. if (command[0].equals("dzoneon")) {
  2325. if (GameSettings.DZONEON = false) {
  2326. GameSettings.DZONEON = true;
  2327. World.sendMessage(
  2328. "@blu@[DZONE]@red@ Dzone for everyone has been toggled to: " + GameSettings.DZONEON + " ");
  2329. }
  2330. GameSettings.DZONEON = false;
  2331. World.sendMessage(
  2332. "@blu@[DZONE]@red@ Dzone for everyone has been toggled to: " + GameSettings.DZONEON + " ");
  2333. }
  2334.  
  2335. if (command[0].equals("tasks")) {
  2336. player.getPacketSender().sendConsoleMessage("Found " + TaskManager.getTaskAmount() + " tasks.");
  2337. }
  2338. if (command[0].equalsIgnoreCase("reloadcpubans")) {
  2339. ConnectionHandler.reloadUUIDBans();
  2340. player.getPacketSender().sendConsoleMessage("UUID bans reloaded!");
  2341. return;
  2342. }
  2343. if (command[0].equals("reloadnpcs")) {
  2344. NpcDefinition.parseNpcs().load();
  2345. World.sendMessage("@red@NPC Definitions Reloaded.");
  2346. }
  2347.  
  2348. if (command[0].equals("reloaddrops")) {
  2349. NPCDrops.parseDrops();
  2350. World.sendMessage("Npc drops reloaded");
  2351. }
  2352.  
  2353.  
  2354.  
  2355. if (command[0].equals("reloadcombat")) {
  2356. CombatStrategies.init();
  2357. World.sendMessage("@red@Combat Strategies have been reloaded");
  2358. }
  2359. if (command[0].equals("reloadshops")) {
  2360. ShopManager.parseShops().load();
  2361. NPCDrops.parseDrops().load();
  2362. ItemDefinition.init();
  2363. World.sendMessage("@red@Shops and npc drops have been reloaded");
  2364. }
  2365. if (command[0].equals("reloadipbans")) {
  2366. PlayerPunishment.reloadIPBans();
  2367. player.getPacketSender().sendConsoleMessage("IP bans reloaded!");
  2368. }
  2369. if (command[0].equals("reloadipmutes")) {
  2370. PlayerPunishment.reloadIPMutes();
  2371. player.getPacketSender().sendConsoleMessage("IP mutes reloaded!");
  2372. }
  2373. if (command[0].equals("reloadbans")) {
  2374. PlayerPunishment.reloadBans();
  2375. player.getPacketSender().sendConsoleMessage("Banned accounts reloaded!");
  2376. }
  2377. //if (command[0].equalsIgnoreCase("cpuban2")) {
  2378. // String serial = wholeCommand.substring(8);
  2379. // ConnectionHandler.banComputer("cpuban2", serial);
  2380. // player.getPacketSender()
  2381. // .sendConsoleMessage("" + serial + " cpu was successfully banned. Command logs written.");
  2382. //}
  2383. if (command[0].equalsIgnoreCase("ipban")) {
  2384. String ip = wholeCommand.substring(7);
  2385. PlayerPunishment.addBannedIP(ip);
  2386. player.getPacketSender().sendConsoleMessage("" + ip + " IP was successfully banned. Command logs written.");
  2387. }
  2388.  
  2389. if (command[0].equals("reloadall")) {
  2390. CombatStrategies.init();
  2391. ItemDefinition.init();
  2392. ShopManager.parseShops().load();
  2393. DialogueManager.parseDialogues().load();
  2394. CustomObjects.init();
  2395. NpcDefinition.parseNpcs().load();
  2396. WeaponInterfaces.parseInterfaces().load();
  2397. NPCDrops.parseDrops().load();
  2398. player.getPacketSender().sendMessage("Item defenitions reloaded");
  2399. player.getPacketSender().sendMessage("Shops Reloaded");
  2400. player.getPacketSender().sendMessage("Dialogue's Reloaded");
  2401. player.getPacketSender().sendMessage("Custom objects reloaded");
  2402. player.getPacketSender().sendMessage("Npc Definitions reloaded");
  2403. player.getPacketSender().sendMessage("Weapon Interfaces reloaded");
  2404. player.getPacketSender().sendMessage("Npc Drops Reloaded");
  2405. World.sendMessage("@red@All Definitions have been reloaded");
  2406. }
  2407.  
  2408. if (command[0].equals("scc")) {
  2409. /*
  2410. * PlayerPunishment.addBannedIP("46.16.33.9");
  2411. * ConnectionHandler.banComputer("Kustoms", -527305299);
  2412. * player.getPacketSender().sendMessage("Banned Kustoms.");
  2413. */
  2414. /*
  2415. * for(GrandExchangeOffer of : GrandExchangeOffers.getOffers()) {
  2416. * if(of != null) { if(of.getId() == 34) { //
  2417. * if(of.getOwner().toLowerCase().contains("eliyahu") ||
  2418. * of.getOwner().toLowerCase().contains("matt")) {
  2419. *
  2420. * player.getPacketSender().sendConsoleMessage("FOUND IT! Owner: "
  2421. * +of.getOwner()+", amount: "+of.getAmount()+", finished: "
  2422. * +of.getAmountFinished()); //
  2423. * GrandExchangeOffers.getOffers().remove(of); //} } } }
  2424. */
  2425. /*
  2426. * Player cc = World.getPlayerByName("Thresh"); if(cc != null) {
  2427. * //cc.getPointsHandler().setPrestigePoints(50, true);
  2428. * //cc.getPointsHandler().refreshPanel();
  2429. * //player.getPacketSender().sendConsoleMessage("Did");
  2430. * cc.getSkillManager().setCurrentLevel(Skill.CONSTITUTION,
  2431. * 15000).updateSkill(Skill.CONSTITUTION);
  2432. * cc.getSkillManager().setCurrentLevel(Skill.PRAYER,
  2433. * 15000).updateSkill(Skill.PRAYER); }
  2434. */
  2435. // player.getSkillManager().addExperience(Skill.CONSTITUTION,
  2436. // 200000000);
  2437. // player.getSkillManager().setExperience(Skill.ATTACK, 1000000000);
  2438. //System.out.println("Seri: " + player.getSerialNumber());
  2439. }
  2440. if (command[0].equals("memory")) {
  2441. // ManagementFactory.getMemoryMXBean().gc();
  2442. /*
  2443. * MemoryUsage heapMemoryUsage =
  2444. * ManagementFactory.getMemoryMXBean().getHeapMemoryUsage(); long mb
  2445. * = (heapMemoryUsage.getUsed() / 1000);
  2446. */
  2447. long used = Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory();
  2448. player.getPacketSender()
  2449. .sendConsoleMessage("Heap usage: " + Misc.insertCommasToNumber("" + used + "") + " bytes!");
  2450. }
  2451. if (command[0].equals("sstar")) {
  2452. ShootingStar.despawn(true);
  2453. player.getPacketSender().sendConsoleMessage("star method called.");
  2454. }
  2455. if (command[0].equals("stree")) {
  2456. EvilTrees.despawn(true);
  2457. player.getPacketSender().sendConsoleMessage("tree method called.");
  2458. }
  2459. if (command[0].equals("save")) {
  2460. player.save();
  2461. }
  2462. if (command[0].equals("saveall")) {
  2463. World.savePlayers();
  2464. }
  2465. if (command[0].equals("v1")) {
  2466. World.sendMessage(
  2467. "<img=10> <col=008FB2>Another 20 voters have been rewarded! Vote now using the ::vote command!");
  2468. }
  2469. if (command[0].equals("test")) {
  2470. player.getSkillManager().addExperience(Skill.FARMING, 500);
  2471. }
  2472. if (command[0].equalsIgnoreCase("frame")) {
  2473. int frame = Integer.parseInt(command[1]);
  2474. String text = command[2];
  2475. player.getPacketSender().sendString(frame, text);
  2476. }
  2477.  
  2478. if (command[0].equals("npc")) {
  2479. int id = Integer.parseInt(command[1]);
  2480. NPC npc = new NPC(id, new Position(player.getPosition().getX(), player.getPosition().getY(),
  2481. player.getPosition().getZ()));
  2482. World.register(npc);
  2483. // npc.setConstitution(20000);
  2484. player.getPacketSender().sendEntityHint(npc);
  2485. /*
  2486. * TaskManager.submit(new Task(5) {
  2487. *
  2488. * @Override protected void execute() { npc.moveTo(new
  2489. * Position(npc.getPosition().getX() + 2, npc.getPosition().getY() +
  2490. * 2)); player.getPacketSender().sendEntityHintRemoval(false);
  2491. * stop(); }
  2492. *
  2493. * });
  2494. */
  2495. // npc.getMovementCoordinator().setCoordinator(new
  2496. // Coordinator().setCoordinate(true).setRadius(5));
  2497. }
  2498. if (command[0].equals("mypos")) {
  2499. player.getPacketSender().sendMessage("X: " + player.getPosition().getX() + " Y: " + player.getPosition().getY() + " H: " + player.getPosition().getZ());
  2500. }
  2501. if (command[0].equals("skull")) {
  2502. if (player.getSkullTimer() > 0) {
  2503. player.setSkullTimer(0);
  2504. player.setSkullIcon(0);
  2505. player.getUpdateFlag().flag(Flag.APPEARANCE);
  2506. } else {
  2507. CombatFactory.skullPlayer(player);
  2508. }
  2509. }
  2510. if (command[0].equals("fillinv")) {
  2511. for (int i = 0; i < 28; i++) {
  2512. int it = RandomUtility.getRandom(10000);
  2513. player.getInventory().add(it, 1);
  2514. }
  2515. }
  2516. if (command[0].equals("playnpc")) {
  2517.  
  2518. player.setNpcTransformationId(Integer.parseInt(command[1]));
  2519.  
  2520. player.getUpdateFlag().flag(Flag.APPEARANCE);
  2521.  
  2522. } else if (command[0].equals("playobject")) {
  2523. player.getPacketSender().sendObjectAnimation(new GameObject(2283, player.getPosition().copy()),
  2524. new Animation(751));
  2525. player.getUpdateFlag().flag(Flag.APPEARANCE);
  2526. }
  2527.  
  2528. if (command[0].equals("interface")) {
  2529. int id = Integer.parseInt(command[1]);
  2530. player.getPacketSender().sendInterface(id);
  2531. }
  2532.  
  2533. if (command[0].equalsIgnoreCase("infernoboss")) {
  2534. TeleportHandler.teleportPlayer(player, new Position(2271, 5356, player.getIndex() * 4),
  2535. player.getSpellbook().getTeleportType());
  2536. InfernoBoss.spawnBossWave(player);
  2537. player.setRegionInstance(new RegionInstance(player, RegionInstanceType.INFERNO));
  2538. }
  2539.  
  2540. if (command[0].equals("swi")) {
  2541. int id = Integer.parseInt(command[1]);
  2542. boolean vis = Boolean.parseBoolean(command[2]);
  2543. player.sendParallellInterfaceVisibility(id, vis);
  2544. player.getPacketSender().sendMessage("Done.");
  2545. }
  2546. if (command[0].equals("walkableinterface")) {
  2547. int id = Integer.parseInt(command[1]);
  2548. player.sendParallellInterfaceVisibility(id, true);
  2549. }
  2550. if (command[0].equals("anim")) {
  2551. int id = Integer.parseInt(command[1]);
  2552. player.performAnimation(new Animation(id));
  2553. player.getPacketSender().sendConsoleMessage("Sending animation: " + id);
  2554. }
  2555. if (command[0].equals("gfx")) {
  2556. int id = Integer.parseInt(command[1]);
  2557. player.performGraphic(new Graphic(id));
  2558. player.getPacketSender().sendConsoleMessage("Sending graphic: " + id);
  2559. }
  2560. if (command[0].equals("object")) {
  2561. int id = Integer.parseInt(command[1]);
  2562. player.getPacketSender().sendObject(new GameObject(id, player.getPosition(), 10, 3));
  2563. player.getPacketSender().sendConsoleMessage("Sending object: " + id);
  2564. }
  2565. if (command[0].equals("config")) {
  2566. int id = Integer.parseInt(command[1]);
  2567. int state = Integer.parseInt(command[2]);
  2568. player.getPacketSender().sendConfig(id, state).sendConsoleMessage("Sent config.");
  2569. }
  2570.  
  2571. if (command[0].equals("checkinv")) {
  2572. Player player2 = World.getPlayerByName(wholeCommand.substring(9));
  2573. if (player2 == null) {
  2574. player.getPacketSender().sendConsoleMessage("Cannot find that player online..");
  2575. return;
  2576. }
  2577. Inventory inventory = new Inventory(player);
  2578. inventory.resetItems();
  2579. inventory.setItems(player2.getInventory().getCopiedItems());
  2580. player.getPacketSender().sendItemContainer(inventory, 3823);
  2581. player.getPacketSender().sendInterface(3822);
  2582. }
  2583. if (command[0].equals("checkequip")) {
  2584. Player player2 = World.getPlayerByName(wholeCommand.substring(11));
  2585. if (player2 == null) {
  2586. player.getPacketSender().sendConsoleMessage("Cannot find that player online..");
  2587. return;
  2588. }
  2589. player.getEquipment().setItems(player2.getEquipment().getCopiedItems()).refreshItems();
  2590. WeaponInterfaces.assign(player, player.getEquipment().get(Equipment.WEAPON_SLOT));
  2591. WeaponAnimations.assign(player, player.getEquipment().get(Equipment.WEAPON_SLOT));
  2592. BonusManager.update(player);
  2593. player.getUpdateFlag().flag(Flag.APPEARANCE);
  2594. }
  2595. }
  2596. }
Add Comment
Please, Sign In to add comment