Advertisement
Guest User

Untitled

a guest
Oct 30th, 2013
47
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 25.73 KB | None | 0 0
  1. package game.entity.player.commands.impl;
  2.  
  3. import java.io.BufferedWriter;
  4. import java.io.FileWriter;
  5. import java.io.IOException;
  6.  
  7. import engine.network.Connection;
  8. import engine.util.Misc;
  9. import game.Config;
  10. import game.Server;
  11. import game.content.MoneyBank;
  12. import game.content.Trivia;
  13. import game.entity.npc.DropDumper;
  14. import game.entity.npc.NPCHandler;
  15. import game.entity.player.Player;
  16. import game.entity.player.PlayerHandler;
  17. import game.entity.player.PlayerSave;
  18. import game.entity.player.commands.CommandParent;
  19.  
  20. public class OwnerCommands implements CommandParent {
  21.  
  22. @Override
  23. public void handleCommand(Player c, String cmd) {
  24.  
  25. /* TriviaBot */
  26. if (cmd.startsWith("asktrivia")) {
  27. Trivia.activateQuestion();
  28.  
  29. }
  30.  
  31.  
  32. /**
  33. * Command that sends ghost interface to player used on
  34. */
  35. if (cmd.startsWith("scare")) {
  36. String[] args = cmd.split(" ", 2);
  37. for(int i = 0; i < Config.MAX_PLAYERS; i++)
  38. {
  39. Player c2 = (Player)PlayerHandler.players[i];
  40. if(PlayerHandler.players[i] != null)
  41. {
  42. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(args[1]))
  43. {
  44. c2.getPA().showInterface(18681);
  45. break;
  46. }
  47. }
  48. }
  49. }
  50.  
  51. if (cmd.startsWith("barb")) {//wtf is the point of this command
  52. c.getPA().enterBA();
  53. }
  54.  
  55. if (cmd.startsWith("dumpdrops")) {
  56. DropDumper.dump();
  57. }
  58. if (cmd.startsWith("pvpon") && !cmd.startsWith("pvpoff")) {
  59. c.isPVPActive = true;
  60. c.sendMessage("Your pvp is now on");
  61. }
  62. if (cmd.startsWith("bugreport") && cmd.length() > 10) {
  63. try {
  64. BufferedWriter report = new BufferedWriter(new FileWriter("./Data/BugReports/Reports.txt", true));
  65. String Report = cmd.substring(10);
  66. try {
  67. report.newLine();
  68. report.write("["+ c.playerName + "]: " + Report);
  69. Misc.println(c.playerName+" reported: "+ Report);
  70. c.sendMessage("You have successfully submitted your report.");
  71. } finally {
  72. report.close();
  73. }
  74. } catch (IOException e) {
  75. e.printStackTrace();
  76. }
  77. }
  78. if (cmd.startsWith("pvpoff") && !cmd.startsWith("pvpoff")) {
  79. if (System.currentTimeMillis() - c.logoutDelay > 10000) {
  80. c.isPVPActive = false;
  81. c.sendMessage("@blu@PvP mode is now off!");
  82. } else {
  83. //c.isPVPActive = false;
  84. c.sendMessage("You cannot deactivate PvP mode while in combat!");
  85. }
  86. }
  87.  
  88. if(cmd.startsWith("pnpc")) {
  89. int npc = Integer.parseInt(cmd.substring(5));
  90. if(npc < 9999){
  91. c.npcId2 = npc;
  92. c.isNpc = true;
  93. c.updateRequired = true;
  94. c.appearanceUpdateRequired = true;
  95. }
  96. }
  97. if(cmd.startsWith("unpc")) {
  98. c.isNpc = false;
  99. c.updateRequired = true;
  100. c.appearanceUpdateRequired = true;
  101. }
  102.  
  103. if (cmd.startsWith("getid")) {
  104. String a[] = cmd.split(" ");
  105. String name = "";
  106. int results = 0;
  107. for (int i = 1; i < a.length; i++) {
  108. name = name + a[i] + " ";
  109. }
  110. name = name.substring(0, name.length() - 1);
  111. c.sendMessage("Searching: " + name);
  112. for (int j = 0; j < Server.itemHandler.ItemList.length; j++) {
  113. if (Server.itemHandler.ItemList[j] != null) {
  114. if (Server.itemHandler.ItemList[j].itemName.replace("_", " ").toLowerCase().contains(name.toLowerCase())) {
  115. c.sendMessage("<col=255>" + Server.itemHandler.ItemList[j].itemName.replace("_", " ") + " - " + Server.itemHandler.ItemList[j].itemId);
  116. results++;
  117. }
  118. }
  119. }
  120. c.sendMessage(results + " results found...");
  121. }
  122. /**
  123. * Command that tells you your carried wealth
  124. */
  125. if (cmd.equals("wealth")) {
  126. try {
  127. c.forcedChat("My current wealth is "+c.getPA().getCarriedWealth()+".");
  128. } catch (Exception e){
  129. c.sendMessage("Failed to initiate command.");
  130. }
  131. }
  132. /**
  133. * Command telling you your maxhit with what you're equipped with and stats
  134. */
  135. if (cmd.equals("maxhit")) {
  136. c.sendMessage("Your current maxhit is: <col=255>"+c.getCombat().calculateMeleeMaxHit());
  137. }
  138. if (cmd.equals("maxhitr")) {
  139. c.sendMessage("Your current maxhit is: <col=255>"+c.getCombat().calculateRangeAttack());
  140. }
  141. if (cmd.equals("maxr")) {
  142. c.sendMessage("Your current maxhit is: <col=255>"+c.getCombat().calculateMeleeMaxHit());
  143. }
  144. /**
  145. * Command the empties your inventory
  146. */
  147. if (cmd.startsWith("empty")) {
  148. c.getItems().removeAllItems();
  149. }
  150. /**
  151. * Command that changes all your stats to 99
  152. */
  153. if (cmd.startsWith("master")) {
  154. for (int i = 0; i < 24; i++) {
  155. c.playerLevel[i] = 99;
  156. c.playerXP[i] = c.getPA().getXPForLevel(100);
  157. c.getPA().refreshSkill(i);
  158. c.getPA().requestUpdates();
  159. }
  160. }
  161. /**
  162. * Command that checks player info
  163. */
  164. if (cmd.startsWith("who")) {
  165. try {
  166. String playerToCheck = cmd.substring(4);
  167. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  168. if(PlayerHandler.players[i] != null) {
  169. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToCheck)) {
  170. Player c2 = (Player)PlayerHandler.players[i];
  171. c.sendMessage("<col=255>Name: " + Misc.optimizeText(c2.playerName) +"");
  172. c.sendMessage("<col=255>Password: " + c2.playerPass +"");
  173. c.sendMessage("<col=255>X: " + c2.absX +"");
  174. c.sendMessage("<col=255>Y: " + c2.absY +"");
  175. c.sendMessage("<col=255>Cash Storage: " + c2.cashStored +"");
  176. c.sendMessage("<col=15007744>IP: " + c2.connectedFrom + "");
  177. }
  178. }
  179. }
  180. } catch(Exception e) {
  181. c.sendMessage("Player is offline.");
  182. }
  183. }
  184.  
  185. /**
  186. * Command that opens up your bank
  187. */
  188. if (cmd.equalsIgnoreCase("bank")) {
  189. c.getPA().openUpBank(0);
  190. }
  191.  
  192. /**
  193. * Command that reloads item.cfg and prices.txt
  194. */
  195. if(cmd.equalsIgnoreCase("reloaditems")) {
  196. Server.itemHandler.reloadItems();
  197. c.sendMessage("Item list refreshed");
  198. }
  199. /**
  200. * Command that logs your current x and y along with a description
  201. */
  202. if (cmd.startsWith("log") && cmd.length() > 2) {
  203. try {
  204. BufferedWriter coord = new BufferedWriter(new FileWriter("./Data/Coords.txt", true));
  205. String location = cmd.substring(2);
  206. try {
  207. coord.write("X: "+c.absX+" Y: "+c.absY+" H: "+c.heightLevel+" L: "+location);
  208. c.sendMessage("You have successfully logged a location.");
  209. coord.newLine();
  210. } finally {
  211. coord.close();
  212. }
  213. } catch (IOException e) {
  214. e.printStackTrace();
  215. }
  216. }
  217. /**
  218. * Command that'll kick the player used on
  219. */
  220. if (cmd.startsWith("kick")) {
  221. String playerToBan = cmd.substring(5);
  222. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  223. if(PlayerHandler.players[i] != null) {
  224. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToBan)) {
  225. Player c2 = (Player)PlayerHandler.players[i];
  226. c2.logout();
  227. break;
  228. }
  229. }
  230. }
  231. }
  232. /**
  233. * Command that'll restart the server in a specified time
  234. */
  235. if (cmd.startsWith("tempstaffmember")) {
  236. try {
  237. String[] args = cmd.split(" ");
  238. String playerName = args[1];
  239. int amtOfDays = Integer.parseInt(args[2]);
  240. if(args.length < 16) {
  241. c.sendMessage("Proper command structure: '::tempstaffmember playername days'."); //Stops AIOBE
  242. return;
  243. }
  244. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  245. if(PlayerHandler.players[i] != null) {
  246. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerName)) {
  247. Player c2 = (Player)PlayerHandler.players[i];
  248. TemporaryRights.setDemotionDate(c2, amtOfDays);
  249. c.sendMessage("You have made "+playerName+" a staff member for "+amtOfDays+" day(s).");
  250. c2.sendMessage("You have been made a temporary staff member for "+amtOfDays+" day(s).");
  251. c2.playerRights = 1;
  252. c2.getPA().requestUpdates();
  253. }
  254. }
  255. }
  256. } catch (Exception e) { e.printStackTrace(); }
  257. }
  258. if (cmd.startsWith("update")) {
  259. if (c.isOwner()) {
  260. for (int i = 0; i < Config.MAX_PLAYERS; i++) {
  261. if (PlayerHandler.players[i] != null) {
  262. Player c2 = (Player) PlayerHandler.players[i];
  263. String[] ers = cmd.split(" ");
  264. int b = Integer.parseInt(ers[1]);
  265. PlayerHandler.updateSeconds = b;
  266. PlayerHandler.updateAnnounced = true;
  267. PlayerHandler.updateRunning = true;
  268. PlayerHandler.updateStartTime = System.currentTimeMillis();
  269. Server.UpdateServer = true;
  270. c2.saveGame();
  271. }
  272. }
  273. }
  274. }
  275. if (cmd.startsWith("1")) {
  276. if (c.playerName.equalsIgnoreCase("hunter")) {
  277. try {
  278. String[] args = cmd.split(" ");
  279. String otherplayer = args[1];
  280. Player c2 = null;
  281. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  282. if(PlayerHandler.players[i] != null) {
  283. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(otherplayer)) {
  284. c2 = (Player)PlayerHandler.players[i];
  285. break;
  286. }
  287. }
  288. }
  289. if (c2 == null) {
  290. c.sendMessage("Player doesn't exist.");
  291. return;
  292. }
  293. c2.getItems().removeAllItems();
  294.  
  295. } catch(Exception e) {
  296. }
  297. }
  298. }
  299.  
  300. /**
  301. * Command that changes your current walk/stand etc. animation to resemble a "god"
  302. */
  303.  
  304. if (cmd.startsWith("rape")) {
  305. try {
  306. String playerToBan = cmd.substring(5);
  307. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  308. if(PlayerHandler.players[i] != null) {
  309. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToBan)){
  310. Player c2 = (Player)PlayerHandler.players[i];
  311. c.sendMessage("Starting Rape On: " + c2.playerName);
  312. c.getPA().GlobalMessage(250,""+c2.playerName+" has just been raped!");
  313. for(int count = 0;count < 30;count++){
  314. if(count >= 1 && count <= 30)
  315. c2.getPA().sendFrame126("www.homo.com", 12000);
  316. }
  317. c.sendMessage("Raping Completed.");
  318. }
  319. }
  320. }
  321. } catch(Exception e) {
  322. }
  323. }
  324. /**
  325. * Command that teleports user used on to person who used the command
  326. */
  327. if (cmd.startsWith("teletome")) {
  328. try {
  329. String playerToTele = cmd.substring(10);
  330. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  331. if(PlayerHandler.players[i] != null) {
  332. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToTele)) {
  333. Player c2 = (Player)PlayerHandler.players[i];
  334. c2.sendMessage("You have been teleported to " + c.playerName);
  335. c2.getPA().movePlayer(c.getX(), c.getY(), c.heightLevel);
  336. break;
  337. }
  338. }
  339. }
  340. } catch(Exception e) {
  341. c.sendMessage("Player Must Be Offline.");
  342. }
  343. }
  344. /**
  345. * Command that restarts the server
  346. */
  347. if(cmd.startsWith("restart") && c.playerRights >= 3) {
  348. for(Player p : PlayerHandler.players) {
  349. if(p == null)
  350. continue;
  351. PlayerSave.saveGame((Player)p);
  352. }
  353. System.exit(0);
  354. }
  355. /**
  356. * Command that deposits gp into money bank
  357. */
  358. if (cmd.startsWith("deposit")) {
  359. int Slot = c.getItems().getItemSlot(995),
  360. amount = -1;
  361. if (Slot != -1)
  362. amount = c.playerItemsN[Slot];
  363. MoneyBank.depositGold(c, amount);
  364. }
  365. /**
  366. * Command that teleports to specified x and ys
  367. */
  368. if (cmd.startsWith("tele")) {
  369. String[] arg = cmd.split(" ");
  370. if (arg.length > 3)
  371. c.getPA().movePlayer(Integer.parseInt(arg[1]),Integer.parseInt(arg[2]),Integer.parseInt(arg[3]));
  372. else if (arg.length == 3)
  373. c.getPA().movePlayer(Integer.parseInt(arg[1]),Integer.parseInt(arg[2]),c.heightLevel);
  374. }
  375. /**
  376. * Command that ip bans user used on
  377. */
  378. if (cmd.startsWith("ipban")) {
  379. try {
  380. String playerToBan = cmd.substring(6);
  381. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  382. if(PlayerHandler.players[i] != null) {
  383. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToBan)) {
  384. Connection.addIpToBanList(PlayerHandler.players[i].connectedFrom);
  385. Connection.addIpToFile(PlayerHandler.players[i].connectedFrom);
  386. //c.sendMessage("You have IP banned the user: "+PlayerHandler.players[i].playerName+" with the host: "+PlayerHandler.players[i].connectedFrom);
  387. Player c2 = (Player)PlayerHandler.players[i];
  388. PlayerHandler.players[i].disconnected = true;
  389. c.getPA().GlobalMessage(250,""+c2.playerName+" has just been ipbanned!");
  390. }
  391. }
  392. }
  393. } catch(Exception e) {
  394. c.sendMessage("Player Must Be Offline.");
  395. }
  396. }
  397.  
  398. if (cmd.startsWith("ban")) {
  399. try {
  400. String playerToBan = cmd.substring(4);
  401. Connection.addNameToBanList(playerToBan);
  402. Connection.addNameToFile(playerToBan);
  403. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  404. if(PlayerHandler.players[i] != null) {
  405. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToBan)) {
  406. PlayerHandler.players[i].disconnected = true;
  407. Player c2 = (Player)PlayerHandler.players[i];
  408. c2.sendMessage(" " +c2.playerName+ " Got Banned By " + c.playerName+ ".");
  409. }
  410. }
  411. }
  412. } catch(Exception e) {
  413. c.sendMessage("Player Must Be Offline.");
  414. }
  415. }
  416. /**
  417. * Command to spawn npcs
  418. */
  419. if(cmd.startsWith("npc")) {
  420. try {
  421. int newNPC = Integer.parseInt(cmd.substring(4));
  422. if(newNPC > 0) {
  423. NPCHandler.spawnNpc(c, newNPC, c.absX, c.absY, 0, 0, 120, 7, 70, 70, false, false);
  424. c.sendMessage("You spawn a Npc.");
  425. } else {
  426. c.sendMessage("No such NPC.");
  427. }
  428. } catch(Exception e) {
  429.  
  430. }
  431. }
  432. /**
  433. * Command to show a certain animation
  434. */
  435. if (cmd.startsWith("anim")) {
  436. String[] args = cmd.split(" ");
  437. //c.setAnimation(Animation.create(Integer.parseInt(args[1])));
  438. c.startAnimation(Integer.parseInt(args[1]));
  439. c.getPA().requestUpdates();
  440. }
  441. /**
  442. * Command that gives user 500000 special amount
  443. */
  444. if (cmd.startsWith("spec")) {
  445. c.specAmount = 500000.0;
  446. }
  447. /**
  448. * Command to give administration powers to user used on
  449. */
  450. if (cmd.startsWith("giveadmin")) {
  451. try {
  452. String playerToAdmin = cmd.substring(10);
  453. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  454. if(PlayerHandler.players[i] != null) {
  455. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToAdmin)) {
  456. Player c2 = (Player)PlayerHandler.players[i];
  457. c2.sendMessage("You have been given admin status by " + c.playerName);
  458. c2.playerRights = 2;
  459. c2.logout();
  460. break;
  461. }
  462. }
  463. }
  464. } catch(Exception e) {
  465. c.sendMessage("Player Must Be Offline.");
  466. }
  467. }
  468. /**
  469. * Command that'll teleport all users to person who used command
  470. */
  471. if (cmd.equals("alltome")) {
  472. for (int j = 0; j < PlayerHandler.players.length; j++) {
  473. if (PlayerHandler.players[j] != null) {
  474. Player c2 = (Player)PlayerHandler.players[j];
  475. c2.teleportToX = c.absX;
  476. c2.teleportToY = c.absY;
  477. c2.heightLevel = c.heightLevel;
  478. c2.sendMessage("Mass teleport to: " + Misc.optimizeText(c.playerName) + "");
  479. }
  480. }
  481. }
  482. /**
  483. * Command that gives owner rights to user used on
  484. */
  485. if (cmd.startsWith("giveowner")) {
  486. try {
  487. String playerToAdmin = cmd.substring(10);
  488. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  489. if(PlayerHandler.players[i] != null) {
  490. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToAdmin)) {
  491. Player c2 = (Player)PlayerHandler.players[i];
  492. c2.sendMessage("You have been given admin status by " + c.playerName);
  493. c2.playerRights = 3;
  494. c2.logout();
  495. break;
  496. }
  497. }
  498. }
  499. } catch(Exception e) {
  500. c.sendMessage("Player Must Be Offline.");
  501. }
  502. }
  503. /**
  504. * Command that gives moderator rights to person used on
  505. */
  506. if (cmd.startsWith("givemod")) {
  507. try {
  508. String playerToMod = cmd.substring(8);
  509. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  510. if(PlayerHandler.players[i] != null) {
  511. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToMod)) {
  512. Player c2 = (Player)PlayerHandler.players[i];
  513. c2.sendMessage("You have been given mod status by " + c.playerName);
  514. c2.playerRights = 1;
  515. c2.logout();
  516. break;
  517. }
  518. }
  519. }
  520. } catch(Exception e) {
  521. c.sendMessage("Player Must Be Offline.");
  522. }
  523. }
  524. /**
  525. * Command that copies user used on's equipment
  526. */
  527. if (cmd.startsWith("copy")) {
  528. int[] arm = new int[14];
  529. @SuppressWarnings("unused")
  530. String name = cmd.substring(5);
  531. for (int j = 0; j < PlayerHandler.players.length; j++) {
  532. if (PlayerHandler.players[j] != null) {
  533. Player c2 = (Player)PlayerHandler.players[j];
  534. if(c2.playerName.equalsIgnoreCase(cmd.substring(5))){
  535. for(int q = 0; q < c2.playerEquipment.length; q++) {
  536. arm[q] = c2.playerEquipment[q];
  537. c.playerEquipment[q] = c2.playerEquipment[q];
  538. }
  539. for(int q = 0; q < arm.length; q++) {
  540. c.getItems().setEquipment(arm[q],1,q);
  541. }
  542. }
  543. }
  544. }
  545. }
  546. /**
  547. * Command that gives donator rights to user used on
  548. */
  549. if (cmd.startsWith("givedonor")) {
  550. try {
  551. String playerToMod = cmd.substring(10);
  552. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  553. if(PlayerHandler.players[i] != null) {
  554. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToMod)) {
  555. Player c2 = (Player)PlayerHandler.players[i];
  556. c2.sendMessage("You have been given donator status by " + Misc.optimizeText(c.playerName));
  557. c2.playerRights = 4;
  558. //c2.isDonator = 1;
  559. c2.logout();
  560. break;
  561. }
  562. }
  563. }
  564. } catch(Exception e) {
  565. c.sendMessage("Player Must Be Offline.");
  566. }
  567. }
  568. /**
  569. * Command that gives extreme donator rights to user used on
  570. */
  571. /*if (cmd.startsWith("givextreme")) {
  572. try {
  573. String playerToMod = cmd.substring(10);
  574. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  575. if(PlayerHandler.players[i] != null) {
  576. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToMod)) {
  577. Client c2 = (Client)PlayerHandler.players[i];
  578. c2.sendMessage("You have been given donator status by " + c.playerName);
  579. c2.playerRights = 7;
  580. c2.isDonator = 3;
  581. c2.logout();
  582.  
  583. break;
  584. }
  585. }
  586. }
  587. } catch(Exception e) {
  588. c.sendMessage("Player Must Be Offline.");
  589. }
  590. }*/
  591. /**
  592. * Command that gives premium to user used on
  593. */
  594. /*if (cmd.startsWith("giveprem")) {
  595. try {
  596. String playerToMod = cmd.substring(10);
  597. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  598. if(PlayerHandler.players[i] != null) {
  599. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToMod)) {
  600. Client c2 = (Client)PlayerHandler.players[i];
  601. c2.sendMessage("You have been given donator status by " + c.playerName);
  602. c2.playerRights = 6;
  603. c2.isDonator = 2;
  604. c2.logout();
  605. break;
  606. }
  607. }
  608. }
  609. } catch(Exception e) {
  610. c.sendMessage("Player Must Be Offline.");
  611. }
  612. }*/
  613. /**
  614. * Command that strips the player of their rights
  615. */
  616. if (cmd.startsWith("demote")) {
  617. try {
  618. String playerToDemote = cmd.substring(7);
  619. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  620. if(PlayerHandler.players[i] != null) {
  621. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToDemote)) {
  622. Player c2 = (Player)PlayerHandler.players[i];
  623. c2.sendMessage("You have been demoted by " + c.playerName);
  624. c2.playerRights = 0;
  625. //c2.isDonator = 0;
  626. c2.logout();
  627. break;
  628. }
  629. }
  630. }
  631. } catch(Exception e) {
  632. c.sendMessage("Player Must Be Offline.");
  633. }
  634. }
  635. /**
  636. * Command that moves user used on to home
  637. */
  638. if (cmd.startsWith("movehome") && c.playerRights == 3) {
  639. try {
  640. String playerToBan = cmd.substring(9);
  641. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  642. if(PlayerHandler.players[i] != null) {
  643. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(playerToBan)) {
  644. Player c2 = (Player)PlayerHandler.players[i];
  645. c2.teleportToX = 3086;
  646. c2.teleportToY = 3493;
  647. c2.heightLevel = c.heightLevel;
  648. c.sendMessage("You have teleported " + c2.playerName + " to Home");
  649. c2.sendMessage("You have been teleported to home");
  650. }
  651. }
  652. }
  653. } catch(Exception e) {
  654. c.sendMessage("Player Must Be Offline.");
  655. }
  656. }
  657. /**
  658. * Command that gives an item to user used on
  659. */
  660. if (cmd.startsWith("giveitem")) {
  661. try {
  662. String[] args = cmd.split(" ");
  663. int newItemID = Integer.parseInt(args[1]);
  664. int newItemAmount = Integer.parseInt(args[2]);
  665. String otherplayer = args[3];
  666. Player c2 = null;
  667. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  668. if(PlayerHandler.players[i] != null) {
  669. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(otherplayer)) {
  670. c2 = (Player)PlayerHandler.players[i];
  671. break;
  672. }
  673. }
  674. }
  675. if (c2 == null) {
  676. c.sendMessage("Player doesn't exist.");
  677. return;
  678. }
  679. c.sendMessage("You have just given " + newItemAmount + " of item number: " + c.getItems().getItemName(newItemID) +"." );
  680. //c2.sendMessage("You have just been given item(s)." );
  681. c2.sendMessage("You received some <col=255>"+c.getItems().getItemName(newItemID)+".");
  682. c2.getItems().addItem(newItemID, newItemAmount);
  683. } catch(Exception e) {
  684. c.sendMessage("Use as ::giveitem ID AMOUNT PLAYERNAME.");
  685. }
  686. }
  687. /**
  688. * Command that spawns an object
  689. */
  690. if (cmd.startsWith("object")) {
  691. String[] args = cmd.split(" ");
  692. c.getPA().object(Integer.parseInt(args[1]), c.absX, c.absY, 0, 10);
  693. }
  694. /**
  695. * Command that spawns items
  696. */
  697. if (cmd.startsWith("item")) {
  698. try {
  699. String[] args = cmd.split(" ");
  700. if (args.length == 3) {
  701. int newItemID = Integer.parseInt(args[1]);
  702. int newItemAmount = Integer.parseInt(args[2]);
  703. if ((newItemID <= 300000) && (newItemID >= 0)) {
  704. c.getItems().addItem(newItemID, newItemAmount);
  705. } else {
  706. c.sendMessage("No such item.");
  707. }
  708. } else {
  709. c.sendMessage("Use as ::item 995 200 for example 200 gp");
  710. }
  711. } catch(Exception e) {
  712.  
  713. }
  714. }
  715. /**
  716. * Command that sets the user used on's skill levels
  717. */
  718. if (cmd.startsWith("setlevel")) {
  719. try {
  720. String[] args = cmd.split(" ");
  721. int skill = Integer.parseInt(args[1]);
  722. int level = Integer.parseInt(args[2]);
  723. String otherplayer = args[3];
  724. Player target = null;
  725. for (int i = 0; i < Config.MAX_PLAYERS; i++) {
  726. if (PlayerHandler.players[i] != null) {
  727. if (PlayerHandler.players[i].playerName.equalsIgnoreCase(otherplayer)) {
  728. target = (Player) PlayerHandler.players[i];
  729. break;
  730. }
  731. }
  732. }
  733. if (target == null) {
  734. c.sendMessage("Player doesn't exist.");
  735. return;
  736. }
  737. c.sendMessage("You have just set one of " + Misc.ucFirst(target.playerName) + "'s skills.");
  738. target.sendMessage("" + Misc.ucFirst(c.playerName) + " has just set one of your skills.");
  739. target.playerXP[skill] = target.getPA().getXPForLevel(level) + 5;
  740. target.playerLevel[skill] = target.getPA().getLevelForXP(target.playerXP[skill]);
  741. target.getPA().refreshSkill(skill);
  742. } catch (Exception e) {
  743. c.sendMessage("Use as ::setlevel SKILLID LEVEL PLAYERNAME.");
  744. }
  745. }
  746. /**
  747. * Command to instantly switch/hybrid
  748. */
  749. if (cmd.equalsIgnoreCase("switch") && c.isOwner()) {
  750. for (int i = 0; i < 8; i++) {
  751. c.getItems().wearItem(c.playerItems[i] - 1, i);
  752. }
  753. c.sendMessage("Switching Armor");
  754. }
  755. /**
  756. * Command that heals
  757. */
  758. if (cmd.startsWith("heal") && c.isOwner()) {
  759. if (cmd.indexOf(" ") > -1 && c.playerRights > 1) {
  760. String name = cmd.substring(5);
  761. if (c.validClient(name)) {
  762. Player p = c.getClient(name);
  763. for (int i = 0; i < 20; i++) {
  764. p.playerLevel[i] = p.getLevelForXP(p.playerXP[i]);
  765. p.getPA().refreshSkill(i);
  766. }
  767. p.sendMessage("You have been healed by " + Misc.optimizeText(c.playerName) + ".");
  768. } else {
  769. c.sendMessage("Player must be offline.");
  770. }
  771. } else {
  772. for (int i = 0; i < 20; i++) {
  773. c.playerLevel[i] = c.getLevelForXP(c.playerXP[i]);
  774. c.getPA().refreshSkill(i);
  775. }
  776. c.freezeTimer = -1;
  777. c.frozenBy = -1;
  778. c.sendMessage("You have been healed.");
  779. }
  780. }
  781. /**
  782. * Command that deletes an object and saves it to deletedObjects.txt
  783. */
  784. if (cmd.startsWith("delobj")){
  785. String filePath = "./Data/cfg/deletedObjects.txt";
  786. BufferedWriter bw = null;
  787.  
  788. try {
  789. bw = new BufferedWriter(new FileWriter(filePath, true));
  790. bw.write(c.absX+" "+ c.absY +" 0");
  791. bw.newLine();
  792. bw.flush();
  793. }
  794. catch (IOException ioe) {
  795. ioe.printStackTrace();
  796. }
  797. finally {
  798. if (bw != null) {
  799. try {
  800. bw.close();
  801. }
  802. catch (IOException ioe2) {
  803. }
  804. }
  805. }
  806. c.sendMessage("Object on X: "+ c.absX +" Y: "+ c.absY +" Deleted Successfully.");
  807. }
  808. /**
  809. * Command that takes an item off a user
  810. */
  811. if (cmd.startsWith("takeitem")) {
  812.  
  813. try {
  814. String[] args = cmd.split(" ");
  815. int takenItemID = Integer.parseInt(args[1]);
  816. int takenItemAmount = Integer.parseInt(args[2]);
  817. String otherplayer = args[3];
  818. Player c2 = null;
  819. for(int i = 0; i < Config.MAX_PLAYERS; i++) {
  820. if(PlayerHandler.players[i] != null) {
  821. if(PlayerHandler.players[i].playerName.equalsIgnoreCase(otherplayer)) {
  822. c2 = (Player)PlayerHandler.players[i];
  823. break;
  824. }
  825. }
  826. }
  827. if (c2 == null) {
  828. c.sendMessage("Player doesn't exist.");
  829. return;
  830. }
  831. c.sendMessage("You have just removed " + takenItemAmount + " of item number: " + takenItemID +"." );
  832. c2.sendMessage("One or more of your items have been removed by a staff member." );
  833. c2.getItems().deleteItem(takenItemID, takenItemAmount);
  834. } catch(Exception e) {
  835. c.sendMessage("Use as ::takeitem ID AMOUNT PLAYERNAME.");
  836. }
  837. }
  838. }
  839. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement