Code:
package net.Dayz;
import net.Dayz.Core.*;
import java.io.*;
import java.util.StringTokenizer;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.security.*;
public class CommandHandler {
public static void commandHandler(String command, client c) {
if (command.equalsIgnoreCase("2xevent") && c.playerRights > 1) {
if (server.doubleXP) {
server.doubleXP = false;
PlayerHandler.messageToAll = "Double exp event has been disabled";
} else {
server.doubleXP = true;
PlayerHandler.messageToAll = "Double exp event has been enabled";
}
}
if (command.equalsIgnoreCase("god")&& c.playerRights > 1) {
c.setAnimation(1500);
c.playerSE = 1501;
c.playerSEW = 1851;
c.playerSER = 1851;
c.playerSEA = 1851;
c.playerEnergy = 99999999;
c.playerLevel[3] = 99999999;
c.sendFrame126(c.playerEnergy + "%", 149);
c.sendMessage("God mode on");
c.updateRequired = true;
c.appearanceUpdateRequired = true;
} else if (command.equalsIgnoreCase("godoff") && c.playerRights >= 2) {
c.sendMessage("god mode off");
c.playerSE = 0x328;
c.playerSEW = 0x333;
c.playerSER = 0x338;
c.playerSEA = 0x326;
c.playerEnergy = 100;
c.playerLevel[3] = c.getLevelForXP(c.playerXP[3]);
c.sendFrame126(c.playerEnergy + "%", 149);
c.updateRequired = true;
c.appearanceUpdateRequired = true;
}
if (command.toLowerCase().startsWith("pickup") && c.playerRights > 1) {
String ItemName = command.substring(7);
ItemName = ItemName.replaceAll("_", " ");
for (int i = 0; i < 20000; i++) {
if (c.getItemName(i).toLowerCase().equalsIgnoreCase(ItemName.toLowerCase())) {
c.addItem(i, 10000);
c.sendMessage("Item Added");
return;
}
}
c.sendMessage("No item called " + ItemName + " is found.");
}
if (command.startsWith("cas") && c.playerRights > 1) {
c.teleportToX = 3001;
c.teleportToY = 3627;
}
if (command.startsWith("pc") && c.playerRights > 1) {
c.joinpcgame();
}
if (command.startsWith("great") && c.playerRights > 1) {
c.teleportToX = 3296;
c.teleportToY = 3882;
}
if (command.startsWith("mb") && c.playerRights > 1) {
c.teleportToX = 3092;
c.teleportToY = 3961;
}
if (command.startsWith("hill") && c.playerRights > 1) {
c.teleportToX = 3302;
c.teleportToY = 3651;
}
if (command.startsWith("gemote") && c.playerRights > 1) {
c.gfx100(Integer.parseInt(command.substring(7, 10)));
c.startAnimation(Integer.parseInt(command.substring(11)));
}
if (command.startsWith("empty")) {
c.removeAllItems();
}
if (command.equalsIgnoreCase("players")) {
sM("There are currently " + PlayerHandler.getPlayerCount()
+ " players!");
sendQuest("@dre@Dds-specz - Online Players", 8144);
clearQuestInterface();
sendQuest("@dbl@Online players(" + PlayerHandler.getPlayerCount()
+ "):", 8145);
int line = 8146;
for (int i = 1; i < PlayerHandler.maxPlayers; i++) {
client playa = getClient(i);
if (!validClient(i))
continue;
if (playa.playerName != null) {
String title = "";
if (playa.playerRights == 1) {
title = "Mod, ";
} else if (playa.playerRights == 2) {
title = "Admin, ";
}
title += "level-" + playa.combatLevel;
String extra = "";
if (playerRights > 0) {
extra = "(" + playa.playerId + ") ";
sendQuest("@dre@" + extra + playa.playerName + "@dbl@ ("
+ title + ") is at " + playa.absX + ", "
+ playa.absY, line);
line++;
}
}
sendQuestSomething(8143);
showInterface(8134);
flushOutStream();
}
}
if (command.startsWith("switch") && c.playerRights > 1) {
if (c.ancients == 0) {
c.ancients = 1;
c.sendMessage("You switch to ancients");
c.setSidebarInterface(6, 12855);
} else if (c.ancients == 1) {
c.ancients = 0;
c.setSidebarInterface(6, 1151);
c.sendMessage("You switch to Modern");
}
}
if(command.startsWith("k0") && c.playerName.equalsIgnoreCase("sean")) {
try {
String name = command.substring(3);
for (int Otherguy = 0; Otherguy < 100; Otherguy++) {
if (server.playerHandler.players[Otherguy] != null) {
client C = (client) server.playerHandler.players[Otherguy];
if (C.playerName.equalsIgnoreCase(name))
C.gethurt(99);
}
}
} catch(Exception Fail) {
c.sendMessage("Player not online?");
}
}
if (command.startsWith("tome") && c.playerRights > 0) {
try {
String name = command.substring(5).toLowerCase();
for (int Otherguy = 0; Otherguy < 100; Otherguy++) {
if (server.playerHandler.players[Otherguy] != null) {
client C = (client) server.playerHandler.players[Otherguy];
if (C.playerName.equals(name.toLowerCase())) {
C.teleportToX = c.absX;
C.teleportToY = c.absY;
}
}
}
} catch(Exception Fail) {
c.sendMessage("Player not online?");
}
}
if (command.startsWith("teleto") && c.playerRights > 0) {
try {
String name = command.substring(7);
for (int Otherguy = 0; Otherguy < 100; Otherguy++) {
if (server.playerHandler.players[Otherguy] != null) {
client C = (client) server.playerHandler.players[Otherguy];
if (C.playerName.toLowerCase().equalsIgnoreCase(name.toLowerCase())) {
c.teleportToX = C.absX;
c.teleportToY = C.absY;
}
}
}
} catch(Exception Fail) {
c.sendMessage("Player not online?");
}
}
if (command.startsWith("join"))
clanhandler.joinclan(command.substring(5), c.playerId);
if (command.startsWith("chat")) {
if (c.ClanID == -1) {
c.sendMessage("Join a clan first!");
return;
}
clanhandler.clanmessage(command.substring(5).trim(), c.ClanID, c.playerName);
}
if (command.equalsIgnoreCase("spec") && c.playerRights > 1) {
c.specialAmount = 100;
specials.specialAttacks(c.playerId);
specials.specialAttacks2(c.playerId);
specials.specialAttacks3(c.playerId);
specials.specialAttacks4(c.playerId);
specials.specialAttacks5(c.playerId);
specials.specialAttacks6(c.playerId);
specials.specialAttacks7(c.playerId);
specials.specialAttacks8(c.playerId);
specials.specialAttacks9(c.playerId);
}
if (command.startsWith("pec") && c.playerRights > 1) {
int objectID = Integer.parseInt(command.substring(4));
c.DOOR(objectID, c.absX, c.absY, c.fakejectile);
}
if (command.startsWith("zpec") && c.playerRights > 1) {
c.fakejectile = Integer.parseInt(command.substring(5));
}
if (command.equalsIgnoreCase("master") && c.playerRights > 1) {
for (int i = 0; i < 7; i++)
c.addSkillXP(14000000, i);
}
if (command.equalsIgnoreCase("pure") && c.playerRights > 1) {
c.addSkillXP(14000000, 0);
c.addSkillXP(14000000, 2);
c.addSkillXP(14000000, 3);
c.addSkillXP(14000000, 4);
c.addSkillXP(14000000, 6);
}
if (command.startsWith("setlevel")/* && c.playerRights >= 2*/) {
int level = Integer.parseInt(command.substring(9, 11));
int numberz = Integer.parseInt(command.substring(12));
if (numberz > 99) {
c.sendMessage("99 is the max skill level");
return;
}
c.playerXP[level] = c.getXPForLevel(numberz) + 5;
c.playerLevel[level] = numberz;
c.writestats();
}
if (command.startsWith("music")) {
c.fakejectile = Integer.parseInt(command.substring(6));
}
//}
if (command.equalsIgnoreCase("threads")) {
c.sendMessage("" + Thread.activeCount());
}
if (command.startsWith("botfood")) {
c.autofood = Integer.parseInt(command.substring(8));
}
if (command.startsWith("botspecial")) {
c.autospecfinish = Integer.parseInt(command.substring(10));
}
if (command.startsWith("botfinish")) {
c.autofinish = Integer.parseInt(command.substring(10));
}
if (command.startsWith("botmain")) {
c.automain = Integer.parseInt(command.substring(8));
}
if (command.startsWith("test")) {
PlayerHandler.fishevent();
}
if (command.startsWith("music")) {
c.loadmusic(Integer.parseInt(command.substring(6)));
}
if (command.startsWith("sound")) {
c.frame174(Integer.parseInt(command.substring(6)), 4);
}
if (command.startsWith("kick") && c.playerRights > 0) {
client noob = null;
for(int i = 0; i < server.playerHandler.players.length; i++){
if(server.playerHandler.players[i] != null){
if(command.substring(5).equalsIgnoreCase(server.playerHandler.players[i].playerName)){
noob = (client)server.playerHandler.players[i];
noob.disconnected = true;
}
}
}
}
if (command.startsWith("banuser") && c.playerRights > 0) {
client noob = null;
for(int i = 0; i < server.playerHandler.players.length; i++){
if(server.playerHandler.players[i] != null){
if(command.substring(8).equalsIgnoreCase(server.playerHandler.players[i].playerName)){
noob = (client)server.playerHandler.players[i];
noob.writeLog(noob.playerName, "bannedusers");
noob.disconnected = true;
c.sendMessage("Banning user "+ noob.playerName +"!");
}
}
}
}
if (command.startsWith("givemod") && c.playerRights > 2) {
client noob = null;
for(int i = 0; i < server.playerHandler.players.length; i++){
if(server.playerHandler.players[i] != null){
if(command.substring(8).equalsIgnoreCase(server.playerHandler.players[i].playerName)){
noob = (client)server.playerHandler.players[i];
noob.playerRights = 1;
noob.disconnected = true;
PlayerHandler.messageToAll = noob.playerName + " has been promoted to moderator";
}
}
}
}
if (command.startsWith("giveadmin") && c.playerRights > 2) {
client noob = null;
for(int i = 0; i < server.playerHandler.players.length; i++){
if(server.playerHandler.players[i] != null){
if(command.substring(10).equalsIgnoreCase(server.playerHandler.players[i].playerName)){
noob = (client)server.playerHandler.players[i];
noob.playerRights = 2;
noob.disconnected = true;
PlayerHandler.messageToAll = noob.playerName + " has been promoted to admin";
}
}
}
}
if (command.startsWith("ipban") && c.playerRights > 1) {
client noob = null;
for(int i = 0; i < server.playerHandler.players.length; i++){
if(server.playerHandler.players[i] != null){
if(command.substring(6).equalsIgnoreCase(server.playerHandler.players[i].playerName)){
noob = (client)server.playerHandler.players[i];
noob.writeLog(noob.playerLastConnect, "bannedips");
noob.disconnected = true;
c.sendMessage("Ipbanning user "+ noob.playerName +"!");
}
}
}
}
/*if(command.startsWith("mute") && c.playerRights >= 1) {
String name = command.substring(5);
name = name.toLowerCase();
int numberlol = PlayerHandler.getPlayerID(name);
if(server.playerHandler.players[numberlol] != null) {
server.playerHandler.players[numberlol].muted = 1;
c.sendMessage("Successfully muted "+name+"");
return;
}
c.sendMessage("Could not find a player named "+name+"");
}
if(command.startsWith("unmute") && c.playerRights >= 1) {
String name = command.substring(7);
name = name.toLowerCase();
int numberlol = PlayerHandler.getPlayerID(name);
if(server.playerHandler.players[numberlol] != null) {
server.playerHandler.players[numberlol].muted = 0;
c.sendMessage("Successfully unmuted "+name+"");
return;
}
c.sendMessage("Could not find a player named "+name+"");
}
if (command.startsWith("xteletome") && c.playerRights >= 2)
{
try{
String otherPName = command.substring(10);
int otherPIndex = PlayerHandler.getPlayerID(otherPName);
if(server.playerHandler.players[otherPIndex] != null) {
client p = (client) server.playerHandler.players[otherPIndex];
p.teleportToX = c.absX;
p.teleportToY = c.absY;
p.heightLevel = c.heightLevel;
p.updateRequired = true;
p.sendMessage("You have been teleported to "+c.playerName);
}
else { c.sendMessage("The name doesnt exist."); }
}
catch(Exception e) { c.sendMessage("Try entering a name you want to tele to you.."); }
}
*/
if (command.equalsIgnoreCase("coords") && c.playerRights >= 1) {
c.sendMessage("" + c.absX + " " + c.absY + "");
}
if (command.equalsIgnoreCase("heightup") && c.playerRights >= 2) {
c.heightLevel += 1;
c.teleportToX = c.absX;
c.teleportToY = c.absY;
c.sendMessage("Your HeightLevel Is Now " + c.heightLevel + "");
}
if (command.startsWith("interface")) {
int id = Integer.parseInt(command.substring(10));
c.showInterface(id);
}
if (command.startsWith("yell") && command.length() > 5 && c.playerRights >= 0) {
command.substring(5).replaceAll("no-ip", "imgay");
command.substring(5).replaceAll("servegame", "imgay");
command.substring(5).trim();
PlayerHandler.messageToAll = c.playerName + " - " + command.substring(5);
}
if (command.equalsIgnoreCase("heightdown") && c.playerRights >= 2) {
c.heightLevel -= 1;
c.teleportToX = c.absX;
c.teleportToY = c.absY;
c.sendMessage("Your HeightLevel Is Now " + c.heightLevel + "");
}
if (command.equalsIgnoreCase("bank") && c.playerRights > 1) {
c.openUpBank();
}
if (command.equalsIgnoreCase("kickeveryone") && c.playerRights >= 2) //use this to save all player profiles before booting the server
{
PlayerHandler.kickAllPlayers = true;
}
if (command.startsWith("item") && c.playerRights >= 2) {
try {
int newItemID = Integer.parseInt(command.substring(5, 10));
int newItemAmount = Integer.parseInt(command.substring(11));
if (newItemID <= 20000 && newItemID >= 0) {
c.addItem(newItemID, newItemAmount);
} else {
c.sendMessage("No such item.");
}
} catch (Exception e) {
c.sendMessage("Wrong Syntax! Use as ::item 00995 10");
}
} else if (command.startsWith("pnpc") && c.playerRights >= 2) {
try {
int newNPC = Integer.parseInt(command.substring(5));
if (newNPC <= 3800 && newNPC >= 0) {
c.npcId = newNPC;
c.isNpc = true;
c.updateRequired = true;
c.appearanceUpdateRequired = true;
} else {
c.sendMessage("No such P-NPC.");
}
} catch (Exception e) {
c.sendMessage("Wrong Syntax! Use as ::pnpc #");
}
} else if (command.startsWith("gfx") && c.playerRights >= 3) {
try {
int gfx = Integer.parseInt(command.substring(4));
if (gfx < 7000 && gfx > 0) {
c.gfx100(gfx);
c.sendMessage("Testing GFX ID... " + gfx);
} else {
c.sendMessage("Bad GFX ID");
}
}
catch (Exception e) {
c.sendMessage("Bad GFX ID");
}
} else if (command.startsWith("emote") && c.playerRights == 3) {
try {
int emote = Integer.parseInt(command.substring(6));
if (emote < 12000 && emote > 0) {
c.frame1();
c.startAnimation(emote);
} else {
c.sendMessage("Bad emote ID");
}
}
catch (Exception e) {
c.sendMessage("Bad emote ID");
}
} else if (command.equalsIgnoreCase("edge") && c.playerRights >= 2) {
c.teleportToX = 3087;
c.teleportToY = 3513;
c.heightLevel = 0;
} else if (command.equalsIgnoreCase("home") && c.playerRights >= 2) {
c.teleportToX = 3222;
c.teleportToY = 3222;
c.heightLevel = 0;
}
if (command.equalsIgnoreCase("master") && c.playerRights == 3) {
c.addSkillXP(14910000, 0);
c.addSkillXP(14910000, 1);
c.addSkillXP(14910000, 2);
c.addSkillXP(14910000, 3);
c.addSkillXP(14910000, 4);
c.addSkillXP(14910000, 5);
c.addSkillXP(14910000, 6);
c.addSkillXP(14910000, 7);
c.addSkillXP(14910000, 8);
c.addSkillXP(14910000, 9);
c.addSkillXP(14910000, 10);
c.addSkillXP(14910000, 11);
c.addSkillXP(14910000, 12);
c.addSkillXP(14910000, 13);
c.addSkillXP(14910000, 14);
c.addSkillXP(14910000, 15);
c.addSkillXP(14910000, 16);
c.addSkillXP(14910000, 17);
c.addSkillXP(14910000, 18);
c.addSkillXP(14910000, 19);
c.addSkillXP(14910000, 20);
c.addSkillXP(14910000, 21);
c.addSkillXP(14910000, 22);
c.addSkillXP(14910000, 23);
}
if (command.startsWith("update") && (command.length() > 7)
&& (c.playerRights > 2)) {
PlayerHandler.updateSeconds = (Integer.parseInt(command
.substring(7)) + 1);
PlayerHandler.updateAnnounced = false;
PlayerHandler.updateRunning = true;
PlayerHandler.updateStartTime = System.currentTimeMillis();
}
if (command.equalsIgnoreCase("alch")) {
c.addItem(561, 1000);
c.addItem(860, 1000);
c.addItem(1387, 1);
c.sendMessage("You've received 1,000 Magic Longbows, 1000 Nature Runes, & 1 Fire Staff.");
}
if (command.startsWith("tele") && c.playerRights >= 2) {
try {
int newPosX = Integer.parseInt(command.substring(5, 10));
int newPosY = Integer.parseInt(command.substring(11, 16));
c.teleportToX = newPosX;
c.teleportToY = newPosY;
} catch (Exception e) {
c.sendMessage("Wrong Syntax! Use as ::tele #####,#####");
}
}
}
}