Cleanup part 1 (#213)

* Clean up part 1

- Removed lots of dead code
- Removed unncessary files not in use
- Cleaned up small bits of code
- Removed a few warnings
- Server.java ---> GameEngine.java
- Constants.java ---> GameConstants.java

* Cape Dye

Rewrote cape dying

* Packaging

- redone ----> com.rebotted

* PacketSender/clean up

- ActionSender ---> PacketSender
- Moved many more packets to packetsender
- Cleaned up more dead code

* Merge Client/Player

- Merged Client.java with Player.java (both were doing same thing so redundant to have both)
- Removed some more dead code
- Tidy a few small things up

* Quests/more clean up

- Removed more dead code
- Made quests static in order to clean them up a bit

* More cleanup

- Removed some more of the dead quest code
- Correcting naming of some of the shop variables
This commit is contained in:
Mr Extremez
2019-11-25 11:08:56 -06:00
committed by Daniel Ginovker
parent 3d1ae1b288
commit d876a923b9
379 changed files with 80684 additions and 83170 deletions
@@ -1,4 +1,4 @@
package redone; package com.rebotted;
import java.io.BufferedReader; import java.io.BufferedReader;
import java.io.BufferedWriter; import java.io.BufferedWriter;
@@ -6,8 +6,7 @@ import java.io.FileReader;
import java.io.FileWriter; import java.io.FileWriter;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
import com.rebotted.game.players.Player;
import redone.game.players.Client;
/** /**
* Connection Check Class * Connection Check Class
@@ -297,8 +296,7 @@ public class Connection {
public static void addIpToMuteFile(String Name) { public static void addIpToMuteFile(String Name) {
try { try {
BufferedWriter out = new BufferedWriter(new FileWriter( BufferedWriter out = new BufferedWriter(new FileWriter("./data/bans/IpsMuted.txt", true));
"./data/bans/IpsMuted.txt", true));
try { try {
out.newLine(); out.newLine();
out.write(Name); out.write(Name);
@@ -310,9 +308,8 @@ public class Connection {
} }
} }
public static boolean isMuted(Client c) { public static boolean isMuted(Player player) {
return mutedNames.contains(c.playerName.toLowerCase()) return mutedNames.contains(player.playerName.toLowerCase()) || mutedIps.contains(player.connectedFrom);
|| mutedIps.contains(c.connectedFrom);
} }
} }
@@ -1,23 +1,23 @@
package redone; package com.rebotted;
public class Constants { public class GameConstants {
public final static boolean SERVER_DEBUG = false; public final static boolean SERVER_DEBUG = false;
public final static String SERVER_NAME = "2006rebotted", SERVER_VERSION = "Server Stage v " + Constants.TEST_VERSION + "."; public final static String SERVER_NAME = "2006rebotted", SERVER_VERSION = "Server Stage v " + GameConstants.TEST_VERSION + ".";
public final static double TEST_VERSION = 2.00; public final static double TEST_VERSION = 2.00;
public static int BANK_SIZE = 352; public static int BANK_SIZE = 352;
public final static int ITEM_LIMIT = 15000, MAXITEM_AMOUNT = Integer.MAX_VALUE, CLIENT_VERSION = 999999, public final static int ITEM_LIMIT = 15000, MAXITEM_AMOUNT = Integer.MAX_VALUE, CLIENT_VERSION = 999999,
WORLD = 1, IPS_ALLOWED = 250, CONNECTION_DELAY = 100, WORLD = 1, IPS_ALLOWED = 250, CONNECTION_DELAY = 100,
MESSAGE_DELAY = 6000, MAX_PLAYERS = 100, REQ_AMOUNT = 150; MESSAGE_DELAY = 6000, MAX_PLAYERS = 100, REQ_AMOUNT = 150;
public final static boolean SOUND = true, MEMBERS_AREAS = true, public final static boolean SOUND = true,
GUILDS = true, MEMBERSHIP = true, WORLD_LIST_FIX = false, GUILDS = true, WORLD_LIST_FIX = false,
PARTY_ROOM_DISABLED = true, combatSounds = true, PARTY_ROOM_DISABLED = true, COMBAT_SOUNDS = true,
printobjectId = false, EXPERIMENTS = false; PRINT_OBJECT_ID = false, EXPERIMENTS = false;
public static int[] SIDEBARS = { 2423, 3917, 638, 3213, 1644, 5608, 1151, public static int[] SIDEBARS = { 2423, 3917, 638, 3213, 1644, 5608, 1151,
18128, 5065, 5715, 2449, 904, 147, 962 }; 18128, 5065, 5715, 2449, 904, 147, 962 };
public static boolean TUTORIAL_ISLAND = false, HOLIDAYS = true, public static boolean TUTORIAL_ISLAND = false,
MEMBERS_ONLY = false, sendServerPackets = false, HALLOWEEN = false, MEMBERS_ONLY = false, sendServerPackets = false,
CLUES_ENABLED = false; CLUES_ENABLED = false;
public final static int HAT = 0, CAPE = 1, AMULET = 2, WEAPON = 3, public final static int HAT = 0, CAPE = 1, AMULET = 2, WEAPON = 3,
@@ -154,16 +154,15 @@ public class Constants {
public final static int TELEBLOCK_DELAY = 20000; public final static int TELEBLOCK_DELAY = 20000;
public final static boolean SINGLE_AND_MULTI_ZONES = true; public final static boolean SINGLE_AND_MULTI_ZONES = true;
public final static boolean COMBAT_LEVEL_DIFFERENCE = true; public final static boolean COMBAT_LEVEL_DIFFERENCE = true;
public final static boolean itemRequirements = true; public final static boolean ITEM_REQUIREMENTS = true;
public final static int MELEE_EXP_RATE = 4; // damage * exp rate public final static int MELEE_EXP_RATE = 4; // damage * exp rate
public final static int RANGE_EXP_RATE = 4; public final static int RANGE_EXP_RATE = 4;
public final static int MAGIC_EXP_RATE = 4; public final static int MAGIC_EXP_RATE = 4;
public final static int CASTLE_WARS_X = 2439; public final static int CASTLE_WARS_X = 2439;
public final static int CASTLE_WARS_Y = 3087; public final static int CASTLE_WARS_Y = 3087;
public static double SERVER_EXP_BONUS = 1; public static double XP_RATE = 1;
public final static int INCREASE_SPECIAL_AMOUNT = 17500; public final static int INCREASE_SPECIAL_AMOUNT = 17500;
public final static boolean PRAYER_POINTS_REQUIRED = true;
public final static boolean PRAYER_LEVEL_REQUIRED = true;
public final static int GOD_SPELL_CHARGE = 300000; public final static int GOD_SPELL_CHARGE = 300000;
public final static boolean CORRECT_ARROWS = true; public final static boolean CORRECT_ARROWS = true;
public final static boolean CRYSTAL_BOW_DEGRADES = true; public final static boolean CRYSTAL_BOW_DEGRADES = true;
@@ -1,4 +1,4 @@
package redone; package com.rebotted;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
@@ -8,37 +8,35 @@ import org.apache.mina.common.IoAcceptor;
import org.apache.mina.transport.socket.nio.SocketAcceptor; import org.apache.mina.transport.socket.nio.SocketAcceptor;
import org.apache.mina.transport.socket.nio.SocketAcceptorConfig; import org.apache.mina.transport.socket.nio.SocketAcceptorConfig;
import redone.integrations.PlayersOnlineWebsite; import com.rebotted.event.CycleEventHandler;
import redone.integrations.RegisteredAccsWebsite; import com.rebotted.game.content.minigames.FightCaves;
import redone.integrations.SettingsLoader; import com.rebotted.game.content.minigames.FightPits;
import redone.integrations.discord.DiscordActivity; import com.rebotted.game.content.minigames.PestControl;
import redone.integrations.discord.JavaCord; import com.rebotted.game.content.minigames.castlewars.CastleWars;
import redone.event.CycleEventHandler; import com.rebotted.game.content.minigames.trawler.Trawler;
import redone.event.TaskScheduler; import com.rebotted.game.globalworldobjects.Doors;
import redone.game.content.minigames.FightCaves; import com.rebotted.game.globalworldobjects.DoubleDoors;
import redone.game.content.minigames.FightPits; import com.rebotted.game.items.ItemDefinitions;
import redone.game.content.minigames.PestControl; import com.rebotted.game.npcs.NpcHandler;
import redone.game.content.minigames.castlewars.CastleWars; import com.rebotted.game.players.Client;
import redone.game.content.minigames.trawler.Trawler; import com.rebotted.game.players.Player;
import redone.game.globalworldobjects.Doors; import com.rebotted.game.players.PlayerHandler;
import redone.game.globalworldobjects.DoubleDoors; import com.rebotted.game.players.PlayerSave;
import redone.game.items.ItemDefinitions; import com.rebotted.game.shops.ShopHandler;
import redone.game.npcs.NpcHandler; import com.rebotted.integrations.PlayersOnlineWebsite;
import redone.game.players.Client; import com.rebotted.integrations.RegisteredAccsWebsite;
import redone.game.players.Player; import com.rebotted.integrations.SettingsLoader;
import redone.game.players.PlayerHandler; import com.rebotted.integrations.discord.DiscordActivity;
import redone.game.players.PlayerSave; import com.rebotted.integrations.discord.JavaCord;
import redone.game.shops.ShopHandler; import com.rebotted.net.ConnectionHandler;
import redone.net.ConnectionHandler; import com.rebotted.net.ConnectionThrottleFilter;
import redone.net.ConnectionThrottleFilter; import com.rebotted.util.HostBlacklist;
import redone.util.HostBlacklist; import com.rebotted.world.GlobalDropsHandler;
import redone.world.ClanChatHandler; import com.rebotted.world.ItemHandler;
import redone.world.GlobalDropsHandler; import com.rebotted.world.ObjectHandler;
import redone.world.ItemHandler; import com.rebotted.world.ObjectManager;
import redone.world.ObjectHandler; import com.rebotted.world.clip.ObjectDef;
import redone.world.ObjectManager; import com.rebotted.world.clip.Region;
import redone.world.clip.ObjectDef;
import redone.world.clip.Region;
/** /**
* Server.java * Server.java
@@ -49,7 +47,7 @@ import redone.world.clip.Region;
* @author Ryan Lmctruck30 * @author Ryan Lmctruck30
* @author Integration Julian. * @author Integration Julian.
*/ */
public class Server { public class GameEngine {
public static String ersSecret; public static String ersSecret;
@@ -57,7 +55,6 @@ public class Server {
public static int[] cannonsY = new int [50]; public static int[] cannonsY = new int [50];
public static String[] cannonsO = new String [50]; public static String[] cannonsO = new String [50];
public static boolean sleeping; public static boolean sleeping;
private static final int cycleRate;
public static boolean UpdateServer = false; public static boolean UpdateServer = false;
public static long lastMassSave = System.currentTimeMillis(); public static long lastMassSave = System.currentTimeMillis();
private static IoAcceptor acceptor; private static IoAcceptor acceptor;
@@ -76,25 +73,18 @@ public class Server {
public static FightCaves fightCaves = new FightCaves(); public static FightCaves fightCaves = new FightCaves();
private static PestControl pestControl = new PestControl(); private static PestControl pestControl = new PestControl();
public static Trawler trawler = new Trawler(); public static Trawler trawler = new Trawler();
private static final TaskScheduler scheduler = new TaskScheduler();
public static ClanChatHandler clanChat = new ClanChatHandler();
public static TaskScheduler getTaskScheduler() {
return scheduler;
}
/** /**
* Port and Cycle rate. * Port and Cycle rate.
*/ */
static { static {
serverlistenerPort = 43594; serverlistenerPort = 43594;
cycleRate = 600;
shutdownServer = false; shutdownServer = false;
} }
public static void main(java.lang.String args[]) public static void main(java.lang.String args[])
throws NullPointerException, IOException { throws NullPointerException, IOException {
if (Constants.SERVER_DEBUG) { if (GameConstants.SERVER_DEBUG) {
System.out.println("@@@@ DEBUG MODE IS ENABLED @@@@"); System.out.println("@@@@ DEBUG MODE IS ENABLED @@@@");
} }
@@ -115,7 +105,7 @@ public class Server {
/** /**
* Starting Up Server * Starting Up Server
*/ */
System.out.println("Launching " + Constants.SERVER_NAME + "..."); System.out.println("Launching " + GameConstants.SERVER_NAME + "...");
/** /**
* Start Integration Services * Start Integration Services
@@ -134,7 +124,7 @@ public class Server {
sac.setReuseAddress(true); sac.setReuseAddress(true);
sac.setBacklog(100); sac.setBacklog(100);
throttleFilter = new ConnectionThrottleFilter(Constants.CONNECTION_DELAY); throttleFilter = new ConnectionThrottleFilter(GameConstants.CONNECTION_DELAY);
sac.getFilterChain().addFirst("throttleFilter", throttleFilter); sac.getFilterChain().addFirst("throttleFilter", throttleFilter);
acceptor.bind(new InetSocketAddress(serverlistenerPort), connectionHandler, sac); acceptor.bind(new InetSocketAddress(serverlistenerPort), connectionHandler, sac);
@@ -159,7 +149,7 @@ public class Server {
* Main Server Tick * Main Server Tick
*/ */
try { try {
while (!Server.shutdownServer) { while (!GameEngine.shutdownServer) {
Thread.sleep(600); Thread.sleep(600);
itemHandler.process(); itemHandler.process();
playerHandler.process(); playerHandler.process();
@@ -1,4 +1,4 @@
package redone.event; package com.rebotted.event;
/** /**
* What the event must implement * What the event must implement
@@ -1,4 +1,4 @@
package redone.event; package com.rebotted.event;
/** /**
* The wrapper for our event * The wrapper for our event
@@ -1,4 +1,4 @@
package redone.event; package com.rebotted.event;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@@ -1,14 +1,14 @@
package redone.game.bots; package com.rebotted.game.bots;
import redone.Server; import static com.rebotted.game.players.PlayerSave.loadPlayerInfo;
import redone.game.items.ItemAssistant;
import redone.game.players.Client;
import redone.util.Misc;
import java.text.DecimalFormat; import java.text.DecimalFormat;
import java.util.*; import java.util.*;
import static redone.game.players.PlayerSave.loadPlayerInfo; import com.rebotted.GameEngine;
import com.rebotted.game.items.ItemAssistant;
import com.rebotted.game.players.Client;
import com.rebotted.util.Misc;
public class Bot { public class Bot {
@@ -31,7 +31,7 @@ public class Bot {
botClient.isActive = true; botClient.isActive = true;
botClient.disconnected = false; botClient.disconnected = false;
botClient.npcCanAttack = false; botClient.npcCanAttack = false;
Server.playerHandler.newPlayerClient(botClient); GameEngine.playerHandler.newPlayerClient(botClient);
botClient.getPlayerAssistant().movePlayer(x, y, z); botClient.getPlayerAssistant().movePlayer(x, y, z);
@@ -62,7 +62,7 @@ public class Bot {
if (items.size() <= 0) return; if (items.size() <= 0) return;
int item_id = Misc.randomArrayListItem(items); int item_id = Misc.randomArrayListItem(items);
String item_name = ItemAssistant.getItemName(item_id).toLowerCase(); String item_name = ItemAssistant.getItemName(item_id).toLowerCase();
int value = BotHandler.getItemPrice(botClient.myShopId, item_id); int value = BotHandler.getItemPrice(botClient.shopId, item_id);
if (value <= 0) return; if (value <= 0) return;
String _message = "Selling " + item_name + " " + formatSellPrice(value) + " ea - " + botClient.playerName; String _message = "Selling " + item_name + " " + formatSellPrice(value) + " ea - " + botClient.playerName;
@@ -1,4 +1,4 @@
package redone.game.bots; package com.rebotted.game.bots;
public class BotConstants { public class BotConstants {
public static final int MAX_BOTS = 100; public static final int MAX_BOTS = 100;
@@ -1,26 +1,26 @@
package redone.game.bots; package com.rebotted.game.bots;
import io.netty.util.Timeout;
import redone.Constants;
import redone.game.players.Client;
import redone.game.players.PlayerHandler;
import redone.game.shops.ShopHandler;
import redone.util.Misc;
import java.security.SecureRandom; import java.security.SecureRandom;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Random; import java.util.Random;
public class BotHandler import com.rebotted.GameConstants;
{ import com.rebotted.game.players.Client;
import com.rebotted.game.players.Player;
import com.rebotted.game.players.PlayerHandler;
import com.rebotted.game.shops.ShopHandler;
import com.rebotted.util.Misc;
public class BotHandler {
static final List<Bot> botList = new ArrayList<>(BotConstants.MAX_BOTS); static final List<Bot> botList = new ArrayList<>(BotConstants.MAX_BOTS);
static final Random random = new SecureRandom(); static final Random random = new SecureRandom();
static final int currency = 995; static final int currency = 995;
public static Bot connectBot(String username, int x, int y, int z) { public static Bot connectBot(String username, int x, int y, int z) {
Bot bot; Bot bot;
if (PlayerHandler.playerCount >= Constants.MAX_PLAYERS) { if (PlayerHandler.playerCount >= GameConstants.MAX_PLAYERS) {
System.out.println("Bot could not be connected, server is full."); System.out.println("Bot could not be connected, server is full.");
return null; return null;
} }
@@ -30,10 +30,10 @@ public class BotHandler
return bot; return bot;
} }
public static void playerShop(Client player){ public static void playerShop(Player player){
// Must be in the correct zones // Must be in the correct zones
if (!player.inPlayerShopArea() && !player.inBankArea()) { if (!player.inPlayerShopArea() && !player.inBankArea()) {
player.getActionSender().sendMessage("You need to be in a bank zone or trade area for this."); player.getPacketSender().sendMessage("You need to be in a bank zone or trade area for this.");
return; return;
} }
@@ -83,11 +83,11 @@ public class BotHandler
} }
} }
private static String getShopName(Client player){ private static String getShopName(Player player){
return "" + player.playerName; return "" + player.playerName;
} }
private static Client getPlayerShop(Client player){ private static Client getPlayerShop(Player player){
String shopName = getShopName(player); String shopName = getShopName(player);
for(Bot bot : botList) { for(Bot bot : botList) {
if(bot != null && bot.getBotClient() != null) { if(bot != null && bot.getBotClient() != null) {
@@ -104,7 +104,7 @@ public class BotHandler
for(Bot bot : botList) { for(Bot bot : botList) {
if(bot != null && bot.getBotClient() != null) { if(bot != null && bot.getBotClient() != null) {
Client botClient = bot.getBotClient(); Client botClient = bot.getBotClient();
if(botClient.myShopId == shop_id) { if(botClient.shopId == shop_id) {
return botClient; return botClient;
} }
} }
@@ -112,7 +112,7 @@ public class BotHandler
return null; return null;
} }
public static void closeShop(Client player) { public static void closeShop(Player player) {
Client shop = getPlayerShop(player); Client shop = getPlayerShop(player);
if (shop == null) return; if (shop == null) return;
shop.getPlayerAssistant().movePlayer(0,0,0); shop.getPlayerAssistant().movePlayer(0,0,0);
@@ -141,15 +141,15 @@ public class BotHandler
shop.getItemAssistant().addItem(currency, amount); shop.getItemAssistant().addItem(currency, amount);
} }
public static void takeCoins(Client player){ public static void takeCoins(Player player){
if (!player.getItemAssistant().playerHasItem(currency) && player.getItemAssistant().freeSlots() <= 0) { if (!player.getItemAssistant().playerHasItem(currency) && player.getItemAssistant().freeSlots() <= 0) {
player.getActionSender().sendMessage("You don't have enough space in your inventory."); player.getPacketSender().sendMessage("You don't have enough space in your inventory.");
return; return;
} }
Client shop = getPlayerShop(player); Client shop = getPlayerShop(player);
if (shop == null) return; if (shop == null) return;
if (!shop.getItemAssistant().playerHasItem(currency)) { if (!shop.getItemAssistant().playerHasItem(currency)) {
player.getActionSender().sendMessage("There are no coins to collect."); player.getPacketSender().sendMessage("There are no coins to collect.");
return; return;
} }
int totalCoins = shop.getItemAssistant().getItemAmount(currency); int totalCoins = shop.getItemAssistant().getItemAmount(currency);
@@ -173,7 +173,7 @@ public class BotHandler
item_id++; item_id++;
Client shop = getPlayerShop(shop_id); Client shop = getPlayerShop(shop_id);
if (shop == null) return 0; if (shop == null) return 0;
for (int slot = 0; slot < ShopHandler.MaxShopItems; slot++) { for (int slot = 0; slot < ShopHandler.MAX_SHOP_ITEMS; slot++) {
if (shop.bankItems[slot] == item_id) { if (shop.bankItems[slot] == item_id) {
return Math.max(1, shop.bankItemsV[slot]); return Math.max(1, shop.bankItemsV[slot]);
} }
@@ -185,7 +185,7 @@ public class BotHandler
item_id++; item_id++;
Client shop = getPlayerShop(shop_id); Client shop = getPlayerShop(shop_id);
if (shop == null) return; if (shop == null) return;
for (int slot = 0; slot < ShopHandler.MaxShopItems; slot++) { for (int slot = 0; slot < ShopHandler.MAX_SHOP_ITEMS; slot++) {
if (shop.bankItems[slot] == item_id) { if (shop.bankItems[slot] == item_id) {
shop.bankItemsV[slot] = amount; shop.bankItemsV[slot] = amount;
} }
@@ -1,10 +1,9 @@
package redone.game.content; package com.rebotted.game.content;
import java.util.Calendar; import java.util.Calendar;
import java.util.GregorianCalendar; import java.util.GregorianCalendar;
import com.rebotted.game.players.Player;
import redone.game.players.Client; import com.rebotted.util.Misc;
import redone.util.Misc;
/** /**
* Handles the BankPin on Bank's * Handles the BankPin on Bank's
@@ -19,10 +18,10 @@ public class BankPin {
public int recovery_Delay = 3; public int recovery_Delay = 3;
private final Client client; private final Player client;
public BankPin(Client client) { public BankPin(Player player) {
this.client = client; this.client = player;
} }
public int allowTimer = 2000000; public int allowTimer = 2000000;
@@ -42,40 +41,38 @@ public class BankPin {
public void closeBankPin() { public void closeBankPin() {
firstPin = secondPin = thirdPin = fourthPin = client.playerBankPin = 0; firstPin = secondPin = thirdPin = fourthPin = client.playerBankPin = 0;
falseButtons(); falseButtons();
client.getPlayerAssistant().removeAllWindows(); client.getPacketSender().closeAllWindows();
} }
public void pinSettingFrames() { public void pinSettingFrames() {
int pinSendFrames[] = { 15075, 15080, 15110, 15171, 15076, 15176, int pinSendFrames[] = { 15075, 15080, 15110, 15171, 15076, 15176,
15104, 15082, 15079 }; 15104, 15082, 15079 };
for (int j = 0; j < 9; j++) { for (int j = 0; j < 9; j++) {
client.getPlayerAssistant().sendFrame126("", pinSendFrames[j]); client.getPacketSender().sendFrame126("", pinSendFrames[j]);
} }
client.getPlayerAssistant().sendFrame126("Welcome to our bank", 15038); client.getPacketSender().sendFrame126("Welcome to our bank", 15038);
client.getPlayerAssistant().sendFrame126("recovery system.", 15039); client.getPacketSender().sendFrame126("recovery system.", 15039);
client.getPlayerAssistant().sendFrame126("Remember, it's important", client.getPacketSender().sendFrame126("Remember, it's important", 15040);
15040); client.getPacketSender().sendFrame126("to change your recovery", 15041);
client.getPlayerAssistant() client.getPacketSender().sendFrame126("pin and password", 15042);
.sendFrame126("to change your recovery", 15041); client.getPacketSender().sendFrame126("every 1-3 months", 15043);
client.getPlayerAssistant().sendFrame126("pin and password", 15042);
client.getPlayerAssistant().sendFrame126("every 1-3 months", 15043);
if (!client.hasBankpin) { if (!client.hasBankpin) {
client.getPlayerAssistant().sendFrame126("Set a Bank Pin", 15078); client.getPacketSender().sendFrame126("Set a Bank Pin", 15078);
client.getPlayerAssistant().sendFrame126("No PIN Set", 15105); client.getPacketSender().sendFrame126("No PIN Set", 15105);
} else { } else {
client.getPlayerAssistant().sendFrame126("Delete your PIN", 15078); client.getPacketSender().sendFrame126("Delete your PIN", 15078);
if (client.requestPinDelete) { if (client.requestPinDelete) {
client.getPlayerAssistant().sendFrame126("Pending delete", 15105); client.getPacketSender().sendFrame126("Pending delete", 15105);
} else { } else {
client.getPlayerAssistant().sendFrame126("Has Bank PIN", 15105); client.getPacketSender().sendFrame126("Has Bank PIN", 15105);
} }
} }
client.getPlayerAssistant().sendFrame126(recovery_Delay + " days", 15107); client.getPacketSender().sendFrame126(recovery_Delay + " days", 15107);
} }
public void bankPinSettings() { public void bankPinSettings() {
pinSettingFrames(); pinSettingFrames();
client.getPlayerAssistant().showInterface(14924); client.getPacketSender().showInterface(14924);
} }
private int resetBankNumbers() { private int resetBankNumbers() {
@@ -85,7 +82,7 @@ public class BankPin {
public boolean resetBankPin() { public boolean resetBankPin() {
resetBankNumbers(); resetBankNumbers();
falseButtons(); falseButtons();
client.getPlayerAssistant().closeAllWindows(); client.getPacketSender().closeAllWindows();
return client.hasBankpin = false; return client.hasBankpin = false;
} }
@@ -93,19 +90,19 @@ public class BankPin {
if (allowTimer > 0 && allowTimer <= 300000) { if (allowTimer > 0 && allowTimer <= 300000) {
int time = allowTimer / 6000; int time = allowTimer / 6000;
if (time >= 2) { if (time >= 2) {
client.getActionSender() client.getPacketSender()
.sendMessage( .sendMessage(
"Please wait " "Please wait "
+ time + time
+ " minutes before attempting your bank pin again."); + " minutes before attempting your bank pin again.");
} else if (time == 1) { } else if (time == 1) {
client.getActionSender() client.getPacketSender()
.sendMessage( .sendMessage(
"Please wait " "Please wait "
+ time + time
+ " minute before attempting your bank pin again."); + " minute before attempting your bank pin again.");
} else if (time <= 0) { } else if (time <= 0) {
client.getActionSender() client.getPacketSender()
.sendMessage( .sendMessage(
"Please wait less " "Please wait less "
+ "than a minute before attempting your bank pin again."); + "than a minute before attempting your bank pin again.");
@@ -126,36 +123,36 @@ public class BankPin {
public void openPin() { public void openPin() {
if (client.enterdBankpin) { if (client.enterdBankpin) {
client.getPlayerAssistant().openUpBank(); client.getPacketSender().openUpBank();
return; return;
} }
randomizeNumbers(); randomizeNumbers();
client.getPlayerAssistant().sendFrame126("First click the FIRST digit", client.getPacketSender().sendFrame126("First click the FIRST digit",
15313); 15313);
client.getPlayerAssistant().sendFrame126("", 14923); client.getPacketSender().sendFrame126("", 14923);
int pinSendFrames[] = { 14913, 14914, 14915, 14916 }; int pinSendFrames[] = { 14913, 14914, 14915, 14916 };
for (int j = 0; j < 4; j++) { for (int j = 0; j < 4; j++) {
client.getPlayerAssistant().sendFrame126("?", pinSendFrames[j]); client.getPacketSender().sendFrame126("?", pinSendFrames[j]);
} }
client.getPlayerAssistant().showInterface(7424); client.getPacketSender().showInterface(7424);
sendPins(); sendPins();
} }
private void sendPins() { private void sendPins() {
if (client.enterdBankpin) { if (client.enterdBankpin) {
client.getPlayerAssistant().openUpBank(); client.getPacketSender().openUpBank();
return; return;
} }
for (int i = 0; i < getBankPins().length; i++) { for (int i = 0; i < getBankPins().length; i++) {
client.getPlayerAssistant().sendFrame126("" + getBankPins()[i], client.getPacketSender().sendFrame126("" + getBankPins()[i],
stringIds[i]); stringIds[i]);
} }
} }
private void handleButtonOne(int button) { private void handleButtonOne(int button) {
client.getPlayerAssistant().sendFrame126("Now click the SECOND digit", client.getPacketSender().sendFrame126("Now click the SECOND digit",
15313); 15313);
client.getPlayerAssistant().sendFrame126("*", 14913); client.getPacketSender().sendFrame126("*", 14913);
for (int i = 0; i < getActionButtons().length; i++) { for (int i = 0; i < getActionButtons().length; i++) {
if (getActionButtons()[i] == button) { if (getActionButtons()[i] == button) {
firstPin = getBankPins()[i]; firstPin = getBankPins()[i];
@@ -166,9 +163,9 @@ public class BankPin {
} }
private void handleButtonTwo(int button) { private void handleButtonTwo(int button) {
client.getPlayerAssistant().sendFrame126("Now click the THIRD digit", client.getPacketSender().sendFrame126("Now click the THIRD digit",
15313); 15313);
client.getPlayerAssistant().sendFrame126("*", 14914); client.getPacketSender().sendFrame126("*", 14914);
for (int i = 0; i < getActionButtons().length; i++) { for (int i = 0; i < getActionButtons().length; i++) {
if (getActionButtons()[i] == button) { if (getActionButtons()[i] == button) {
secondPin = getBankPins()[i]; secondPin = getBankPins()[i];
@@ -179,9 +176,9 @@ public class BankPin {
} }
private void handleButtonThree(int button) { private void handleButtonThree(int button) {
client.getPlayerAssistant().sendFrame126("Now click the LAST digit", client.getPacketSender().sendFrame126("Now click the LAST digit",
15313); 15313);
client.getPlayerAssistant().sendFrame126("*", 14915); client.getPacketSender().sendFrame126("*", 14915);
for (int i = 0; i < getActionButtons().length; i++) { for (int i = 0; i < getActionButtons().length; i++) {
if (getActionButtons()[i] == button) { if (getActionButtons()[i] == button) {
thirdPin = getBankPins()[i]; thirdPin = getBankPins()[i];
@@ -197,10 +194,10 @@ public class BankPin {
private void handleButtonFour(int button) { private void handleButtonFour(int button) {
if (client.enterdBankpin) { if (client.enterdBankpin) {
client.getPlayerAssistant().openUpBank(); client.getPacketSender().openUpBank();
return; return;
} }
client.getPlayerAssistant().sendFrame126("*", 14916); client.getPacketSender().sendFrame126("*", 14916);
for (int i = 0; i < getActionButtons().length; i++) { for (int i = 0; i < getActionButtons().length; i++) {
if (getActionButtons()[i] == button) { if (getActionButtons()[i] == button) {
fourthPin = getBankPins()[i]; fourthPin = getBankPins()[i];
@@ -213,9 +210,9 @@ public class BankPin {
client.thirdPin = client.bankPin3 = thirdPin; client.thirdPin = client.bankPin3 = thirdPin;
client.fourthPin = client.bankPin4 = fourthPin; client.fourthPin = client.bankPin4 = fourthPin;
client.hasBankpin = client.enterdBankpin = true; client.hasBankpin = client.enterdBankpin = true;
client.getActionSender().sendMessage( client.getPacketSender().sendMessage(
"You have just created a bank pin."); "You have just created a bank pin.");
client.getActionSender().sendMessage( client.getPacketSender().sendMessage(
"Your new Bank PIN is: " + firstPin + " - " + secondPin "Your new Bank PIN is: " + firstPin + " - " + secondPin
+ " - " + thirdPin + " - " + fourthPin); + " - " + thirdPin + " - " + fourthPin);
client.saveCharacter = true; client.saveCharacter = true;
@@ -225,10 +222,10 @@ public class BankPin {
if (client.bankPin1 == one && client.bankPin2 == two if (client.bankPin1 == one && client.bankPin2 == two
&& client.bankPin3 == three && client.bankPin4 == four) { && client.bankPin3 == three && client.bankPin4 == four) {
falseButtons(); falseButtons();
client.getPlayerAssistant().removeAllWindows(); client.getPacketSender().closeAllWindows();
client.enterdBankpin = true; client.enterdBankpin = true;
client.playerBankPin = 15000; client.playerBankPin = 15000;
client.getPlayerAssistant().openUpBank(); client.getPacketSender().openUpBank();
} else { } else {
client.attemptsRemaining--; client.attemptsRemaining--;
@@ -240,19 +237,19 @@ public class BankPin {
allowTimer = 2000000; allowTimer = 2000000;
} }
if (client.attemptsRemaining > 1) { if (client.attemptsRemaining > 1) {
client.getActionSender().sendMessage( client.getPacketSender().sendMessage(
"Invalid pin. You have " + client.attemptsRemaining "Invalid pin. You have " + client.attemptsRemaining
+ " attempts remaining."); + " attempts remaining.");
} else if (client.attemptsRemaining == 1) { } else if (client.attemptsRemaining == 1) {
client.getActionSender().sendMessage( client.getPacketSender().sendMessage(
"Invalid pin. You have " + client.attemptsRemaining "Invalid pin. You have " + client.attemptsRemaining
+ " attempt remaining."); + " attempt remaining.");
} else if (client.attemptsRemaining <= 0) { } else if (client.attemptsRemaining <= 0) {
client.getActionSender() client.getPacketSender()
.sendMessage( .sendMessage(
"Invalid pin. You must wait 5 minutes before attempting again."); "Invalid pin. You must wait 5 minutes before attempting again.");
} }
client.getPlayerAssistant().removeAllWindows(); client.getPacketSender().closeAllWindows();
falseButtons(); falseButtons();
} }
} }
@@ -1,15 +1,14 @@
package redone.game.content; package com.rebotted.game.content;
import java.util.HashMap; import java.util.HashMap;
import com.rebotted.game.players.Player;
import redone.game.players.Client;
public class EmoteHandler { public class EmoteHandler {
private final Client player; private final Player player;
public EmoteHandler(Client c) { public EmoteHandler(Player player2) {
this.player = c; this.player = player2;
} }
public Emotes EMOTES = null; public Emotes EMOTES = null;
@@ -1,47 +1,46 @@
package redone.game.content.combat; package com.rebotted.game.content.combat;
import redone.Constants; import com.rebotted.GameConstants;
import redone.Server; import com.rebotted.GameEngine;
import redone.game.content.combat.magic.CastOnOther; import com.rebotted.game.content.combat.magic.CastOnOther;
import redone.game.content.combat.magic.MagicData; import com.rebotted.game.content.combat.magic.MagicData;
import redone.game.content.combat.magic.MagicMaxHit; import com.rebotted.game.content.combat.magic.MagicMaxHit;
import redone.game.content.combat.magic.MagicRequirements; import com.rebotted.game.content.combat.magic.MagicRequirements;
import redone.game.content.combat.magic.MagicSpells; import com.rebotted.game.content.combat.magic.MagicSpells;
import redone.game.content.combat.melee.MeleeData; import com.rebotted.game.content.combat.melee.MeleeData;
import redone.game.content.combat.melee.MeleeMaxHit; import com.rebotted.game.content.combat.melee.MeleeMaxHit;
import redone.game.content.combat.npcs.NpcEmotes; import com.rebotted.game.content.combat.npcs.NpcEmotes;
import redone.game.content.combat.prayer.PrayerDrain; import com.rebotted.game.content.combat.prayer.PrayerDrain;
import redone.game.content.combat.range.RangeData; import com.rebotted.game.content.combat.range.RangeData;
import redone.game.content.combat.range.RangeMaxHit; import com.rebotted.game.content.combat.range.RangeMaxHit;
import redone.game.content.minigames.FightCaves; import com.rebotted.game.content.minigames.FightCaves;
import redone.game.content.minigames.FightPits; import com.rebotted.game.content.minigames.FightPits;
import redone.game.content.minigames.PestControl; import com.rebotted.game.content.minigames.PestControl;
import redone.game.content.minigames.castlewars.CastleWars; import com.rebotted.game.content.minigames.castlewars.CastleWars;
import redone.game.content.music.sound.CombatSounds; import com.rebotted.game.content.music.sound.CombatSounds;
import redone.game.content.music.sound.SoundList; import com.rebotted.game.content.music.sound.SoundList;
import redone.game.content.skills.slayer.SlayerRequirements; import com.rebotted.game.content.skills.slayer.SlayerRequirements;
import redone.game.items.ItemAssistant; import com.rebotted.game.items.ItemAssistant;
import redone.game.npcs.Npc; import com.rebotted.game.npcs.Npc;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import redone.game.players.Player; import com.rebotted.game.players.Player;
import redone.game.players.PlayerAssistant; import com.rebotted.game.players.PlayerHandler;
import redone.game.players.PlayerHandler; import com.rebotted.util.Misc;
import redone.game.players.antimacro.AntiBotting; import com.rebotted.world.clip.PathFinder;
import redone.util.Misc;
import redone.world.clip.PathFinder;
/** /**
* Rewritten Combat * Rewritten Combat (somewhat)
* @author Andrew (I'm A Boss on Rune-Server, Mr Extremez on Moparscape & Runelocus) * @author Andrew (Mr Extremez)
*/ */
public class CombatAssistant { public class CombatAssistant {
private final Client c; private final Player c;
public CombatAssistant(Client Client) { public CombatAssistant(Player player) {
c = Client; c = player;
} }
public static boolean inCombat(Client c) { public static boolean inCombat(Client c) {
@@ -62,13 +61,13 @@ public class CombatAssistant {
NpcHandler.npcs[i].animUpdateRequired = true; NpcHandler.npcs[i].animUpdateRequired = true;
NpcHandler.npcs[i].updateRequired = true; NpcHandler.npcs[i].updateRequired = true;
} }
if (Constants.combatSounds && NpcHandler.npcs[i].npcType < 3177 && NpcHandler.npcs[i].npcType > 3180) { if (GameConstants.COMBAT_SOUNDS && NpcHandler.npcs[i].npcType < 3177 && NpcHandler.npcs[i].npcType > 3180) {
c.getActionSender().sendSound(CombatSounds.getNpcBlockSound(NpcHandler.npcs[c.oldNpcIndex].npcType), 100, 0); c.getPacketSender().sendSound(CombatSounds.getNpcBlockSound(NpcHandler.npcs[c.oldNpcIndex].npcType), 100, 0);
} }
NpcHandler.npcs[i].facePlayer(c.playerId); NpcHandler.npcs[i].facePlayer(c.playerId);
if (NpcHandler.npcs[i].underAttackBy > 0 && Server.npcHandler.getsPulled(c, i)) { if (NpcHandler.npcs[i].underAttackBy > 0 && GameEngine.npcHandler.getsPulled(c, i)) {
NpcHandler.npcs[i].killerId = c.playerId; NpcHandler.npcs[i].killerId = c.playerId;
} else if (NpcHandler.npcs[i].underAttackBy < 0 && !Server.npcHandler.getsPulled(c, i)) { } else if (NpcHandler.npcs[i].underAttackBy < 0 && !GameEngine.npcHandler.getsPulled(c, i)) {
NpcHandler.npcs[i].killerId = c.playerId; NpcHandler.npcs[i].killerId = c.playerId;
} }
c.lastNpcAttacked = i; c.lastNpcAttacked = i;
@@ -140,15 +139,15 @@ public class CombatAssistant {
c.globalDamageDealt += damage2; c.globalDamageDealt += damage2;
} }
if (c.fightMode == 3) {//range shared if (c.fightMode == 3) {//range shared
c.getPlayerAssistant().addSkillXP(damage * Constants.RANGE_EXP_RATE / 3, 4); c.getPlayerAssistant().addSkillXP(damage * GameConstants.RANGE_EXP_RATE / 3, 4);
c.getPlayerAssistant().addSkillXP(damage / 3, 1); c.getPlayerAssistant().addSkillXP(damage / 3, 1);
c.getPlayerAssistant().addSkillXP(damage / 3, 3); c.getPlayerAssistant().addSkillXP(damage / 3, 3);
c.getPlayerAssistant().refreshSkill(1); c.getPlayerAssistant().refreshSkill(1);
c.getPlayerAssistant().refreshSkill(3); c.getPlayerAssistant().refreshSkill(3);
c.getPlayerAssistant().refreshSkill(4); c.getPlayerAssistant().refreshSkill(4);
} else { } else {
c.getPlayerAssistant().addSkillXP(damage * Constants.RANGE_EXP_RATE, 4); c.getPlayerAssistant().addSkillXP(damage * GameConstants.RANGE_EXP_RATE, 4);
c.getPlayerAssistant().addSkillXP(damage * Constants.RANGE_EXP_RATE /3, 3); c.getPlayerAssistant().addSkillXP(damage * GameConstants.RANGE_EXP_RATE /3, 3);
c.getPlayerAssistant().refreshSkill(3); c.getPlayerAssistant().refreshSkill(3);
c.getPlayerAssistant().refreshSkill(4); c.getPlayerAssistant().refreshSkill(4);
} }
@@ -197,7 +196,7 @@ public class CombatAssistant {
int damage = Misc int damage = Misc
.random(MagicData.MAGIC_SPELLS[c.oldSpellId][6]); .random(MagicData.MAGIC_SPELLS[c.oldSpellId][6]);
if (MagicSpells.godSpells(c)) { if (MagicSpells.godSpells(c)) {
if (System.currentTimeMillis() - c.godSpellDelay < Constants.GOD_SPELL_CHARGE) { if (System.currentTimeMillis() - c.godSpellDelay < GameConstants.GOD_SPELL_CHARGE) {
damage += Misc.random(10); damage += Misc.random(10);
} }
} }
@@ -224,10 +223,10 @@ public class CombatAssistant {
damage = NpcHandler.npcs[i].HP; damage = NpcHandler.npcs[i].HP;
} }
//magic //magic
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage * Constants.MAGIC_EXP_RATE, 6); c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage * GameConstants.MAGIC_EXP_RATE, 6);
c.totalDamageDealt += damage; c.totalDamageDealt += damage;
if (MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1161 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1153 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1157 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1542 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1543 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1562) { if (MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1161 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1153 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1157 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1542 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1543 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1562) {
c.getPlayerAssistant().addSkillXP(damage * Constants.MAGIC_EXP_RATE / 3, 3); c.getPlayerAssistant().addSkillXP(damage * GameConstants.MAGIC_EXP_RATE / 3, 3);
} }
c.getPlayerAssistant().refreshSkill(3); c.getPlayerAssistant().refreshSkill(3);
c.getPlayerAssistant().refreshSkill(6); c.getPlayerAssistant().refreshSkill(6);
@@ -337,18 +336,18 @@ public class CombatAssistant {
} }
} }
if (c.fightMode == 3 && NpcHandler.npcs[i].npcType != 2459 && NpcHandler.npcs[i].npcType != 2460 && NpcHandler.npcs[i].npcType != 2461 && NpcHandler.npcs[i].npcType != 2462) { if (c.fightMode == 3 && NpcHandler.npcs[i].npcType != 2459 && NpcHandler.npcs[i].npcType != 2460 && NpcHandler.npcs[i].npcType != 2461 && NpcHandler.npcs[i].npcType != 2462) {
c.getPlayerAssistant().addSkillXP(damage * Constants.MELEE_EXP_RATE / 3, 0); c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 0);
c.getPlayerAssistant().addSkillXP(damage * Constants.MELEE_EXP_RATE / 3, 1); c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 1);
c.getPlayerAssistant().addSkillXP(damage * Constants.MELEE_EXP_RATE / 3, 2); c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 2);
c.getPlayerAssistant().addSkillXP(damage * Constants.MELEE_EXP_RATE / 3, 3); c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 3);
c.getPlayerAssistant().refreshSkill(0); c.getPlayerAssistant().refreshSkill(0);
c.getPlayerAssistant().refreshSkill(1); c.getPlayerAssistant().refreshSkill(1);
c.getPlayerAssistant().refreshSkill(2); c.getPlayerAssistant().refreshSkill(2);
c.getPlayerAssistant().refreshSkill(3); c.getPlayerAssistant().refreshSkill(3);
} else { } else {
if (NpcHandler.npcs[i].npcType != 2459 && NpcHandler.npcs[i].npcType != 2460 && NpcHandler.npcs[i].npcType != 2461 && NpcHandler.npcs[i].npcType != 2462) { if (NpcHandler.npcs[i].npcType != 2459 && NpcHandler.npcs[i].npcType != 2460 && NpcHandler.npcs[i].npcType != 2461 && NpcHandler.npcs[i].npcType != 2462) {
c.getPlayerAssistant().addSkillXP(damage * Constants.MELEE_EXP_RATE, c.fightMode); c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE, c.fightMode);
c.getPlayerAssistant().addSkillXP(damage * Constants.MELEE_EXP_RATE / 3, 3); c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 3);
c.getPlayerAssistant().refreshSkill(c.fightMode); c.getPlayerAssistant().refreshSkill(c.fightMode);
c.getPlayerAssistant().refreshSkill(3); c.getPlayerAssistant().refreshSkill(3);
} }
@@ -533,27 +532,18 @@ public class CombatAssistant {
}*/ }*/
if (c.usingMagic && MagicData.MAGIC_SPELLS[c.spellId][0] == 1171) { if (c.usingMagic && MagicData.MAGIC_SPELLS[c.spellId][0] == 1171) {
if (!NpcHandler.isUndead(i)) { if (!NpcHandler.isUndead(i)) {
c.getActionSender().sendMessage("This spell only affects skeletons, zombies, ghosts and shades."); c.getPacketSender().sendMessage("This spell only affects skeletons, zombies, ghosts and shades.");
resetPlayerAttack(); resetPlayerAttack();
c.stopMovement(); c.stopMovement();
c.npcIndex = 0; c.npcIndex = 0;
return; return;
} }
} }
if (c.isBotting == true) {
c.getActionSender().sendMessage("You can't attack npcs, until you confirm you are not botting.");
c.getActionSender().sendMessage("If you need to you can type ::amibotting, to see if your botting.");
resetPlayerAttack();
return;
}
if (c.respawnTimer > 0) { if (c.respawnTimer > 0) {
c.npcIndex = 0; c.npcIndex = 0;
return; return;
} }
if (!SlayerRequirements.itemNeededSlayer(c, i)) { if (!SlayerRequirements.itemNeededSlayer(c, i) || !c.getSlayer().canAttackNpc(i)) {
return;
}
if (!c.getSlayer().canAttackNpc(i)) {
return; return;
} }
if (NpcHandler.npcs[i].npcType == 9) { if (NpcHandler.npcs[i].npcType == 9) {
@@ -574,39 +564,39 @@ public class CombatAssistant {
} }
if (NpcHandler.npcs[i].npcType == 757 && c.vampSlayer > 2) { if (NpcHandler.npcs[i].npcType == 757 && c.vampSlayer > 2) {
if (!c.getItemAssistant().playerHasItem(1549, 1) || !c.getItemAssistant().playerHasItem(2347, 1)) { if (!c.getItemAssistant().playerHasItem(1549, 1) || !c.getItemAssistant().playerHasItem(2347, 1)) {
c.getActionSender().sendMessage("You need a stake and hammer to attack count draynor."); c.getPacketSender().sendMessage("You need a stake and hammer to attack count draynor.");
resetPlayerAttack(); resetPlayerAttack();
return; return;
} }
} }
if (c.isWoodcutting == true) { if (c.isWoodcutting == true) {
c.getActionSender().sendMessage("You can't attack an npc while woodcutting."); c.getPacketSender().sendMessage("You can't attack an npc while woodcutting.");
resetPlayerAttack(); resetPlayerAttack();
return; return;
} }
if (NpcHandler.npcs[i].npcType == 1676) { if (NpcHandler.npcs[i].npcType == 1676) {
c.getActionSender().sendMessage("You don't have the heart to kill the poor creature again."); c.getPacketSender().sendMessage("You don't have the heart to kill the poor creature again.");
resetPlayerAttack(); resetPlayerAttack();
return; return;
} }
if (NpcHandler.npcs[i].npcType == 411) { if (NpcHandler.npcs[i].npcType == 411) {
c.getActionSender().sendMessage("You can't attack a swarm!"); c.getPacketSender().sendMessage("You can't attack a swarm!");
resetPlayerAttack(); resetPlayerAttack();
return; return;
} }
if (NpcHandler.npcs[i].underAttackBy > 0 && NpcHandler.npcs[i].underAttackBy != c.playerId && !NpcHandler.npcs[i].inMulti()) { if (NpcHandler.npcs[i].underAttackBy > 0 && NpcHandler.npcs[i].underAttackBy != c.playerId && !NpcHandler.npcs[i].inMulti()) {
c.npcIndex = 0; c.npcIndex = 0;
c.getActionSender().sendMessage("This monster is already in combat."); c.getPacketSender().sendMessage("This monster is already in combat.");
return; return;
} }
if ((c.underAttackBy > 0 || c.underAttackBy2 > 0) && c.underAttackBy2 != i && !c.inMulti()) { if ((c.underAttackBy > 0 || c.underAttackBy2 > 0) && c.underAttackBy2 != i && !c.inMulti()) {
resetPlayerAttack(); resetPlayerAttack();
c.getActionSender().sendMessage("I am already under attack."); c.getPacketSender().sendMessage("I am already under attack.");
return; return;
} }
if (NpcHandler.npcs[i].spawnedBy != c.playerId && NpcHandler.npcs[i].spawnedBy > 0) { if (NpcHandler.npcs[i].spawnedBy != c.playerId && NpcHandler.npcs[i].spawnedBy > 0) {
resetPlayerAttack(); resetPlayerAttack();
c.getActionSender().sendMessage("This monster was not spawned for you."); c.getPacketSender().sendMessage("This monster was not spawned for you.");
return; return;
} }
@@ -654,10 +644,10 @@ public class CombatAssistant {
return; return;
} }
if (c.usingRangeWeapon || c.usingBow if (c.usingRangeWeapon || c.usingBow
&& Constants.combatSounds && GameConstants.COMBAT_SOUNDS
&& NpcHandler.npcs[i].npcType < 3177 && NpcHandler.npcs[i].npcType < 3177
&& NpcHandler.npcs[i].npcType > 3180) { && NpcHandler.npcs[i].npcType > 3180) {
c.getActionSender().sendSound(SoundList.SHOOT_ARROW, c.getPacketSender().sendSound(SoundList.SHOOT_ARROW,
100, 0); 100, 0);
} }
@@ -680,19 +670,19 @@ public class CombatAssistant {
&& !usingArrows && !usingArrows
&& c.usingBow && c.usingBow
&& (c.playerEquipment[c.playerWeapon] < 4212 || c.playerEquipment[c.playerWeapon] > 4223)) { && (c.playerEquipment[c.playerWeapon] < 4212 || c.playerEquipment[c.playerWeapon] > 4223)) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"There is no ammo left in your quiver."); "There is no ammo left in your quiver.");
c.stopMovement(); c.stopMovement();
c.npcIndex = 0; c.npcIndex = 0;
return; return;
} }
if (RangeData.correctBowAndArrows(c) < c.playerEquipment[c.playerArrows] if (RangeData.correctBowAndArrows(c) < c.playerEquipment[c.playerArrows]
&& Constants.CORRECT_ARROWS && c.usingBow && GameConstants.CORRECT_ARROWS && c.usingBow
&& !RangeData.usingCrystalBow(c) && !RangeData.usingCrystalBow(c)
&& c.playerEquipment[c.playerWeapon] != 9185) { && c.playerEquipment[c.playerWeapon] != 9185) {
c.getItemAssistant(); c.getItemAssistant();
c.getItemAssistant(); c.getItemAssistant();
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You can't use " "You can't use "
+ ItemAssistant.getItemName( + ItemAssistant.getItemName(
c.playerEquipment[c.playerArrows]) c.playerEquipment[c.playerArrows])
@@ -707,7 +697,7 @@ public class CombatAssistant {
} }
if (c.playerEquipment[c.playerWeapon] == 9185 && !properBolts()) { if (c.playerEquipment[c.playerWeapon] == 9185 && !properBolts()) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You must use bolts with a crossbow."); "You must use bolts with a crossbow.");
c.stopMovement(); c.stopMovement();
resetPlayerAttack(); resetPlayerAttack();
@@ -742,13 +732,13 @@ public class CombatAssistant {
c.playerEquipment[c.playerWeapon], i); c.playerEquipment[c.playerWeapon], i);
return; return;
} else { } else {
c.getActionSender() c.getPacketSender()
.sendMessage( .sendMessage(
"You don't have the required special energy to use this attack."); "You don't have the required special energy to use this attack.");
c.usingSpecial = false; c.usingSpecial = false;
c.getItemAssistant().updateSpecialBar(); c.getItemAssistant().updateSpecialBar();
if (Constants.combatSounds) { if (GameConstants.COMBAT_SOUNDS) {
c.getActionSender() c.getPacketSender()
.sendSound( .sendSound(
CombatSounds CombatSounds
.specialSounds(c.playerEquipment[c.playerWeapon]), .specialSounds(c.playerEquipment[c.playerWeapon]),
@@ -760,14 +750,14 @@ public class CombatAssistant {
} }
c.specMaxHitIncrease = 0; c.specMaxHitIncrease = 0;
if (!c.usingMagic) { if (!c.usingMagic) {
if (Constants.combatSounds) { if (GameConstants.COMBAT_SOUNDS) {
c.getActionSender().sendSound( c.getPacketSender().sendSound(
CombatSounds.getWeaponSounds(c), 100, 0); CombatSounds.getWeaponSounds(c), 100, 0);
} }
c.startAnimation(getWepAnim()); c.startAnimation(getWepAnim());
} else { } else {
if (Constants.combatSounds) { if (GameConstants.COMBAT_SOUNDS) {
c.getActionSender().sendSound( c.getPacketSender().sendSound(
CombatSounds.getMagicSound(c, c.spellId), 100, CombatSounds.getMagicSound(c, c.spellId), 100,
0); 0);
} }
@@ -859,7 +849,7 @@ public class CombatAssistant {
} }
} }
if (c.usingBow && Constants.CRYSTAL_BOW_DEGRADES) { // crystal if (c.usingBow && GameConstants.CRYSTAL_BOW_DEGRADES) { // crystal
// bow // bow
// degrading // degrading
if (c.playerEquipment[c.playerWeapon] == 4212) { // new if (c.playerEquipment[c.playerWeapon] == 4212) { // new
@@ -879,10 +869,10 @@ public class CombatAssistant {
case 4223: // 1/10 bow case 4223: // 1/10 bow
c.getItemAssistant().wearItem(-1, 1, 3); c.getItemAssistant().wearItem(-1, 1, 3);
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"Your crystal bow has fully degraded."); "Your crystal bow has fully degraded.");
if (!c.getItemAssistant().addItem(4207, 1)) { if (!c.getItemAssistant().addItem(4207, 1)) {
Server.itemHandler.createGroundItem(c, 4207, GameEngine.itemHandler.createGroundItem(c, 4207,
c.getX(), c.getY(), 1, c.getId()); c.getX(), c.getY(), 1, c.getId());
} }
c.crystalBowArrowCount = 0; c.crystalBowArrowCount = 0;
@@ -891,7 +881,7 @@ public class CombatAssistant {
default: default:
c.getItemAssistant().wearItem( c.getItemAssistant().wearItem(
++c.playerEquipment[c.playerWeapon], 1, 3); ++c.playerEquipment[c.playerWeapon], 1, 3);
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"Your crystal bow degrades."); "Your crystal bow degrades.");
c.crystalBowArrowCount = 0; c.crystalBowArrowCount = 0;
break; break;
@@ -919,7 +909,7 @@ public class CombatAssistant {
if (PlayerHandler.players[i] != null) { if (PlayerHandler.players[i] != null) {
if (c.usingMagic && MagicData.MAGIC_SPELLS[c.spellId][0] == 1171) { if (c.usingMagic && MagicData.MAGIC_SPELLS[c.spellId][0] == 1171) {
c.getActionSender().sendMessage("This spell only affects skeletons, zombies, ghosts and shades, not humans."); c.getPacketSender().sendMessage("This spell only affects skeletons, zombies, ghosts and shades, not humans.");
resetPlayerAttack(); resetPlayerAttack();
c.stopMovement(); c.stopMovement();
return; return;
@@ -928,7 +918,7 @@ public class CombatAssistant {
if (CastleWars.isInCw(PlayerHandler.players[i]) if (CastleWars.isInCw(PlayerHandler.players[i])
&& CastleWars.isInCw(c)) { && CastleWars.isInCw(c)) {
if (CastleWars.getTeamNumber(c) == CastleWars.getTeamNumber((Client) PlayerHandler.players[i])) { if (CastleWars.getTeamNumber(c) == CastleWars.getTeamNumber((Client) PlayerHandler.players[i])) {
c.getActionSender().sendMessage("You cannot attack your own teammate."); c.getPacketSender().sendMessage("You cannot attack your own teammate.");
resetPlayerAttack(); resetPlayerAttack();
return; return;
} }
@@ -936,7 +926,7 @@ public class CombatAssistant {
if (!CastleWars.isInCw(PlayerHandler.players[i]) if (!CastleWars.isInCw(PlayerHandler.players[i])
&& CastleWars.isInCw(c)) { && CastleWars.isInCw(c)) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You cannot attack people outside castle wars."); "You cannot attack people outside castle wars.");
resetPlayerAttack(); resetPlayerAttack();
return; return;
@@ -1023,13 +1013,13 @@ public class CombatAssistant {
if (c.duelRule[9]) { if (c.duelRule[9]) {
boolean canUseWeapon = false; boolean canUseWeapon = false;
for (int funWeapon : Constants.FUN_WEAPONS) { for (int funWeapon : GameConstants.FUN_WEAPONS) {
if (c.playerEquipment[c.playerWeapon] == funWeapon) { if (c.playerEquipment[c.playerWeapon] == funWeapon) {
canUseWeapon = true; canUseWeapon = true;
} }
} }
if (!canUseWeapon) { if (!canUseWeapon) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You can only use fun weapons in this duel!"); "You can only use fun weapons in this duel!");
resetPlayerAttack(); resetPlayerAttack();
return; return;
@@ -1037,19 +1027,19 @@ public class CombatAssistant {
} }
if (c.duelRule[2] && (c.usingBow || c.usingRangeWeapon)) { if (c.duelRule[2] && (c.usingBow || c.usingRangeWeapon)) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"Range has been disabled in this duel!"); "Range has been disabled in this duel!");
return; return;
} }
if (c.duelRule[3] && !c.usingBow && !c.usingRangeWeapon if (c.duelRule[3] && !c.usingBow && !c.usingRangeWeapon
&& !c.usingMagic) { && !c.usingMagic) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"Melee has been disabled in this duel!"); "Melee has been disabled in this duel!");
return; return;
} }
if (c.duelRule[4] && c.usingMagic) { if (c.duelRule[4] && c.usingMagic) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"Magic has been disabled in this duel!"); "Magic has been disabled in this duel!");
resetPlayerAttack(); resetPlayerAttack();
return; return;
@@ -1100,20 +1090,20 @@ public class CombatAssistant {
&& c.usingBow && c.usingBow
&& (c.playerEquipment[c.playerWeapon] < 4212 || c.playerEquipment[c.playerWeapon] > 4223) && (c.playerEquipment[c.playerWeapon] < 4212 || c.playerEquipment[c.playerWeapon] > 4223)
&& !c.usingMagic) { && !c.usingMagic) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"There is no ammo left in your quiver."); "There is no ammo left in your quiver.");
c.stopMovement(); c.stopMovement();
resetPlayerAttack(); resetPlayerAttack();
return; return;
} }
if (RangeData.correctBowAndArrows(c) < c.playerEquipment[c.playerArrows] if (RangeData.correctBowAndArrows(c) < c.playerEquipment[c.playerArrows]
&& Constants.CORRECT_ARROWS && c.usingBow && GameConstants.CORRECT_ARROWS && c.usingBow
&& !RangeData.usingCrystalBow(c) && !RangeData.usingCrystalBow(c)
&& c.playerEquipment[c.playerWeapon] != 9185 && c.playerEquipment[c.playerWeapon] != 9185
&& !c.usingMagic) { && !c.usingMagic) {
c.getItemAssistant(); c.getItemAssistant();
c.getItemAssistant(); c.getItemAssistant();
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You can't use " "You can't use "
+ ItemAssistant.getItemName( + ItemAssistant.getItemName(
c.playerEquipment[c.playerArrows]) c.playerEquipment[c.playerArrows])
@@ -1128,7 +1118,7 @@ public class CombatAssistant {
} }
if (c.playerEquipment[c.playerWeapon] == 9185 && !properBolts() if (c.playerEquipment[c.playerWeapon] == 9185 && !properBolts()
&& !c.usingMagic) { && !c.usingMagic) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You must use bolts with a crossbow."); "You must use bolts with a crossbow.");
c.stopMovement(); c.stopMovement();
resetPlayerAttack(); resetPlayerAttack();
@@ -1156,7 +1146,7 @@ public class CombatAssistant {
.contains(c.playerId)) { .contains(c.playerId)) {
c.attackedPlayers.add(c.playerIndex); c.attackedPlayers.add(c.playerIndex);
c.isSkulled = true; c.isSkulled = true;
c.skullTimer = Constants.SKULL_TIMER; c.skullTimer = GameConstants.SKULL_TIMER;
c.headIconPk = 0; c.headIconPk = 0;
c.getPlayerAssistant().requestUpdates(); c.getPlayerAssistant().requestUpdates();
} }
@@ -1166,13 +1156,13 @@ public class CombatAssistant {
c.delayedDamage = c.delayedDamage2 = 0; c.delayedDamage = c.delayedDamage2 = 0;
if (c.usingSpecial && !c.usingMagic) { if (c.usingSpecial && !c.usingMagic) {
if (c.duelRule[10] && c.duelStatus == 5) { if (c.duelRule[10] && c.duelStatus == 5) {
c.getActionSender() c.getPacketSender()
.sendMessage( .sendMessage(
"Special attacks have been disabled during this duel!"); "Special attacks have been disabled during this duel!");
c.usingSpecial = false; c.usingSpecial = false;
c.getItemAssistant().updateSpecialBar(); c.getItemAssistant().updateSpecialBar();
if (Constants.combatSounds) { if (GameConstants.COMBAT_SOUNDS) {
c.getActionSender() c.getPacketSender()
.sendSound( .sendSound(
CombatSounds CombatSounds
.specialSounds(c.playerEquipment[c.playerWeapon]), .specialSounds(c.playerEquipment[c.playerWeapon]),
@@ -1188,13 +1178,13 @@ public class CombatAssistant {
c.followId = c.playerIndex; c.followId = c.playerIndex;
return; return;
} else { } else {
c.getActionSender() c.getPacketSender()
.sendMessage( .sendMessage(
"You don't have the required special energy to use this attack."); "You don't have the required special energy to use this attack.");
c.usingSpecial = false; c.usingSpecial = false;
c.getItemAssistant().updateSpecialBar(); c.getItemAssistant().updateSpecialBar();
if (Constants.combatSounds) { if (GameConstants.COMBAT_SOUNDS) {
c.getActionSender() c.getPacketSender()
.sendSound( .sendSound(
CombatSounds CombatSounds
.specialSounds(c.playerEquipment[c.playerWeapon]), .specialSounds(c.playerEquipment[c.playerWeapon]),
@@ -1206,16 +1196,16 @@ public class CombatAssistant {
} }
if (!c.usingMagic) { if (!c.usingMagic) {
if (Constants.combatSounds) { if (GameConstants.COMBAT_SOUNDS) {
c.getActionSender().sendSound( c.getPacketSender().sendSound(
CombatSounds.getWeaponSounds(c), 100, 0); CombatSounds.getWeaponSounds(c), 100, 0);
} }
c.startAnimation(getWepAnim()); c.startAnimation(getWepAnim());
c.mageFollow = false; c.mageFollow = false;
} else { } else {
c.startAnimation(MagicData.MAGIC_SPELLS[c.spellId][2]); c.startAnimation(MagicData.MAGIC_SPELLS[c.spellId][2]);
if (Constants.combatSounds) { if (GameConstants.COMBAT_SOUNDS) {
c.getActionSender().sendSound( c.getPacketSender().sendSound(
CombatSounds.getMagicSound(c, c.spellId), 100, CombatSounds.getMagicSound(c, c.spellId), 100,
0); 0);
} }
@@ -1334,7 +1324,7 @@ public class CombatAssistant {
&& !c.magicFailed) { && !c.magicFailed) {
PlayerHandler.players[i].freezeTimer = freezeDelay; PlayerHandler.players[i].freezeTimer = freezeDelay;
o.resetWalkingQueue(); o.resetWalkingQueue();
o.getActionSender().sendMessage( o.getPacketSender().sendMessage(
"You have been frozen."); "You have been frozen.");
o.frozenBy = c.playerId; o.frozenBy = c.playerId;
} }
@@ -1346,7 +1336,7 @@ public class CombatAssistant {
} }
} }
if (c.usingBow && Constants.CRYSTAL_BOW_DEGRADES) { // crystal if (c.usingBow && GameConstants.CRYSTAL_BOW_DEGRADES) { // crystal
// bow // bow
// degrading // degrading
if (c.playerEquipment[c.playerWeapon] == 4212) { // new if (c.playerEquipment[c.playerWeapon] == 4212) { // new
@@ -1366,10 +1356,10 @@ public class CombatAssistant {
case 4223: // 1/10 bow case 4223: // 1/10 bow
c.getItemAssistant().wearItem(-1, 1, 3); c.getItemAssistant().wearItem(-1, 1, 3);
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"Your crystal bow has fully degraded."); "Your crystal bow has fully degraded.");
if (!c.getItemAssistant().addItem(4207, 1)) { if (!c.getItemAssistant().addItem(4207, 1)) {
Server.itemHandler.createGroundItem(c, 4207, GameEngine.itemHandler.createGroundItem(c, 4207,
c.getX(), c.getY(), 1, c.getId()); c.getX(), c.getY(), 1, c.getId());
} }
c.crystalBowArrowCount = 0; c.crystalBowArrowCount = 0;
@@ -1378,7 +1368,7 @@ public class CombatAssistant {
default: default:
c.getItemAssistant().wearItem( c.getItemAssistant().wearItem(
++c.playerEquipment[c.playerWeapon], 1, 3); ++c.playerEquipment[c.playerWeapon], 1, 3);
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"Your crystal bow degrades."); "Your crystal bow degrades.");
c.crystalBowArrowCount = 0; c.crystalBowArrowCount = 0;
break; break;
@@ -1425,7 +1415,7 @@ public class CombatAssistant {
return; return;
} }
Client o = (Client) PlayerHandler.players[i]; Client o = (Client) PlayerHandler.players[i];
o.getPlayerAssistant().removeAllWindows(); o.getPacketSender().closeAllWindows();
if (o.playerIndex <= 0 && o.npcIndex <= 0) { if (o.playerIndex <= 0 && o.npcIndex <= 0) {
if (o.autoRet == 1) { if (o.autoRet == 1) {
o.playerIndex = c.playerId; o.playerIndex = c.playerId;
@@ -1434,8 +1424,8 @@ public class CombatAssistant {
if (o.attackTimer <= 3 || o.attackTimer == 0 && o.playerIndex == 0 if (o.attackTimer <= 3 || o.attackTimer == 0 && o.playerIndex == 0
&& !c.castingMagic) { // block animation && !c.castingMagic) { // block animation
o.startAnimation(o.getCombatAssistant().getBlockEmote()); o.startAnimation(o.getCombatAssistant().getBlockEmote());
if (Constants.combatSounds) { if (GameConstants.COMBAT_SOUNDS) {
o.getActionSender().sendSound( o.getPacketSender().sendSound(
CombatSounds.getPlayerBlockSounds(o), 100, 0); CombatSounds.getPlayerBlockSounds(o), 100, 0);
} }
} }
@@ -1534,14 +1524,14 @@ public class CombatAssistant {
applyRecoil(c, damage2, i); applyRecoil(c, damage2, i);
} }
if (c.fightMode == 3) { if (c.fightMode == 3) {
c.getPlayerAssistant().addSkillXP(damage * Constants.RANGE_EXP_RATE / 3, 4); c.getPlayerAssistant().addSkillXP(damage * GameConstants.RANGE_EXP_RATE / 3, 4);
c.getPlayerAssistant().addSkillXP(damage / 3, 1); c.getPlayerAssistant().addSkillXP(damage / 3, 1);
c.getPlayerAssistant().addSkillXP(damage / 3, 3); c.getPlayerAssistant().addSkillXP(damage / 3, 3);
c.getPlayerAssistant().refreshSkill(1); c.getPlayerAssistant().refreshSkill(1);
c.getPlayerAssistant().refreshSkill(3); c.getPlayerAssistant().refreshSkill(3);
c.getPlayerAssistant().refreshSkill(4); c.getPlayerAssistant().refreshSkill(4);
} else { } else {
c.getPlayerAssistant().addSkillXP(damage * Constants.RANGE_EXP_RATE, 4); c.getPlayerAssistant().addSkillXP(damage * GameConstants.RANGE_EXP_RATE, 4);
c.getPlayerAssistant().addSkillXP(damage / 3, 3); c.getPlayerAssistant().addSkillXP(damage / 3, 3);
c.getPlayerAssistant().refreshSkill(3); c.getPlayerAssistant().refreshSkill(3);
c.getPlayerAssistant().refreshSkill(4); c.getPlayerAssistant().refreshSkill(4);
@@ -1588,7 +1578,7 @@ public class CombatAssistant {
int damage = Misc int damage = Misc
.random(MagicData.MAGIC_SPELLS[c.oldSpellId][6]); .random(MagicData.MAGIC_SPELLS[c.oldSpellId][6]);
if (MagicSpells.godSpells(c)) { if (MagicSpells.godSpells(c)) {
if (System.currentTimeMillis() - c.godSpellDelay < Constants.GOD_SPELL_CHARGE) { if (System.currentTimeMillis() - c.godSpellDelay < GameConstants.GOD_SPELL_CHARGE) {
damage += 10; damage += 10;
} }
} }
@@ -1616,7 +1606,7 @@ public class CombatAssistant {
if (damage > 0) { if (damage > 0) {
applyRecoil(c, damage, i); applyRecoil(c, damage, i);
} }
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage * Constants.MAGIC_EXP_RATE, 6); c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage * GameConstants.MAGIC_EXP_RATE, 6);
if (MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1161 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1153 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1157 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1542 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1543 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1562) { if (MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1161 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1153 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1157 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1542 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1543 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1562) {
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage / 3, 3); c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage / 3, 3);
} }
@@ -1631,7 +1621,7 @@ public class CombatAssistant {
.gfx0(MagicData.MAGIC_SPELLS[c.oldSpellId][5]); .gfx0(MagicData.MAGIC_SPELLS[c.oldSpellId][5]);
} else if (c.magicFailed) { } else if (c.magicFailed) {
PlayerHandler.players[i].gfx100(85); PlayerHandler.players[i].gfx100(85);
c.getActionSender().sendSound(SoundList.MAGE_FAIL, 100, c.getPacketSender().sendSound(SoundList.MAGE_FAIL, 100,
0); 0);
} }
@@ -1657,9 +1647,9 @@ public class CombatAssistant {
case 12445: // teleblock case 12445: // teleblock
if (System.currentTimeMillis() - o.teleBlockDelay > o.teleBlockLength) { if (System.currentTimeMillis() - o.teleBlockDelay > o.teleBlockLength) {
o.teleBlockDelay = System.currentTimeMillis(); o.teleBlockDelay = System.currentTimeMillis();
o.getActionSender().sendMessage( o.getPacketSender().sendMessage(
"You have been teleblocked."); "You have been teleblocked.");
o.getActionSender().sendSound( o.getPacketSender().sendSound(
SoundList.TELEBLOCK_HIT, 100, 0); SoundList.TELEBLOCK_HIT, 100, 0);
if (o.getPrayer().prayerActive[16] if (o.getPrayer().prayerActive[16]
&& System.currentTimeMillis() && System.currentTimeMillis()
@@ -1690,7 +1680,7 @@ public class CombatAssistant {
PlayerHandler.players[i].playerLevel[0] -= o PlayerHandler.players[i].playerLevel[0] -= o
.getPlayerAssistant().getLevelForXP( .getPlayerAssistant().getLevelForXP(
PlayerHandler.players[i].playerXP[0]) * 5 / 100; PlayerHandler.players[i].playerXP[0]) * 5 / 100;
o.getActionSender().sendMessage( o.getPacketSender().sendMessage(
"Your attack level has been reduced!"); "Your attack level has been reduced!");
PlayerHandler.players[i].reduceSpellDelay[c.reduceSpellId] = System PlayerHandler.players[i].reduceSpellDelay[c.reduceSpellId] = System
.currentTimeMillis(); .currentTimeMillis();
@@ -1701,7 +1691,7 @@ public class CombatAssistant {
PlayerHandler.players[i].playerLevel[2] -= o PlayerHandler.players[i].playerLevel[2] -= o
.getPlayerAssistant().getLevelForXP( .getPlayerAssistant().getLevelForXP(
PlayerHandler.players[i].playerXP[2]) * 5 / 100; PlayerHandler.players[i].playerXP[2]) * 5 / 100;
o.getActionSender().sendMessage( o.getPacketSender().sendMessage(
"Your strength level has been reduced!"); "Your strength level has been reduced!");
PlayerHandler.players[i].reduceSpellDelay[c.reduceSpellId] = System PlayerHandler.players[i].reduceSpellDelay[c.reduceSpellId] = System
.currentTimeMillis(); .currentTimeMillis();
@@ -1712,7 +1702,7 @@ public class CombatAssistant {
PlayerHandler.players[i].playerLevel[1] -= o PlayerHandler.players[i].playerLevel[1] -= o
.getPlayerAssistant().getLevelForXP( .getPlayerAssistant().getLevelForXP(
PlayerHandler.players[i].playerXP[1]) * 5 / 100; PlayerHandler.players[i].playerXP[1]) * 5 / 100;
o.getActionSender().sendMessage( o.getPacketSender().sendMessage(
"Your defence level has been reduced!"); "Your defence level has been reduced!");
PlayerHandler.players[i].reduceSpellDelay[c.reduceSpellId] = System PlayerHandler.players[i].reduceSpellDelay[c.reduceSpellId] = System
.currentTimeMillis(); .currentTimeMillis();
@@ -1723,7 +1713,7 @@ public class CombatAssistant {
PlayerHandler.players[i].playerLevel[1] -= o PlayerHandler.players[i].playerLevel[1] -= o
.getPlayerAssistant().getLevelForXP( .getPlayerAssistant().getLevelForXP(
PlayerHandler.players[i].playerXP[1]) * 10 / 100; PlayerHandler.players[i].playerXP[1]) * 10 / 100;
o.getActionSender().sendMessage( o.getPacketSender().sendMessage(
"Your defence level has been reduced!"); "Your defence level has been reduced!");
PlayerHandler.players[i].reduceSpellDelay[c.reduceSpellId] = System PlayerHandler.players[i].reduceSpellDelay[c.reduceSpellId] = System
.currentTimeMillis(); .currentTimeMillis();
@@ -1734,7 +1724,7 @@ public class CombatAssistant {
PlayerHandler.players[i].playerLevel[2] -= o PlayerHandler.players[i].playerLevel[2] -= o
.getPlayerAssistant().getLevelForXP( .getPlayerAssistant().getLevelForXP(
PlayerHandler.players[i].playerXP[2]) * 10 / 100; PlayerHandler.players[i].playerXP[2]) * 10 / 100;
o.getActionSender().sendMessage( o.getPacketSender().sendMessage(
"Your strength level has been reduced!"); "Your strength level has been reduced!");
PlayerHandler.players[i].reduceSpellDelay[c.reduceSpellId] = System PlayerHandler.players[i].reduceSpellDelay[c.reduceSpellId] = System
.currentTimeMillis(); .currentTimeMillis();
@@ -1745,7 +1735,7 @@ public class CombatAssistant {
PlayerHandler.players[i].playerLevel[0] -= o PlayerHandler.players[i].playerLevel[0] -= o
.getPlayerAssistant().getLevelForXP( .getPlayerAssistant().getLevelForXP(
PlayerHandler.players[i].playerXP[0]) * 10 / 100; PlayerHandler.players[i].playerXP[0]) * 10 / 100;
o.getActionSender().sendMessage( o.getPacketSender().sendMessage(
"Your attack level has been reduced!"); "Your attack level has been reduced!");
PlayerHandler.players[i].reduceSpellDelay[c.reduceSpellId] = System PlayerHandler.players[i].reduceSpellDelay[c.reduceSpellId] = System
.currentTimeMillis(); .currentTimeMillis();
@@ -1884,14 +1874,14 @@ public class CombatAssistant {
|| o.getPrayer().prayerActive[17] || o.getPrayer().prayerActive[17]
|| o.getPrayer().prayerActive[18]) { || o.getPrayer().prayerActive[18]) {
o.headIcon = -1; o.headIcon = -1;
o.getPlayerAssistant().sendConfig( o.getPacketSender().sendConfig(
c.getPrayer().PRAYER_GLOW[16], 0); c.getPrayer().PRAYER_GLOW[16], 0);
o.getPlayerAssistant().sendConfig( o.getPacketSender().sendConfig(
c.getPrayer().PRAYER_GLOW[17], 0); c.getPrayer().PRAYER_GLOW[17], 0);
o.getPlayerAssistant().sendConfig( o.getPacketSender().sendConfig(
c.getPrayer().PRAYER_GLOW[18], 0); c.getPrayer().PRAYER_GLOW[18], 0);
} }
o.getActionSender().sendMessage("You have been injured!"); o.getPacketSender().sendMessage("You have been injured!");
o.getPrayer().stopPrayerDelay = System.currentTimeMillis(); o.getPrayer().stopPrayerDelay = System.currentTimeMillis();
o.getPrayer().prayerActive[16] = false; o.getPrayer().prayerActive[16] = false;
o.getPrayer().prayerActive[17] = false; o.getPrayer().prayerActive[17] = false;
@@ -1905,16 +1895,16 @@ public class CombatAssistant {
o.freezeTimer = 30; o.freezeTimer = 30;
} }
o.gfx0(369); o.gfx0(369);
o.getActionSender().sendMessage("You have been frozen."); o.getPacketSender().sendMessage("You have been frozen.");
o.frozenBy = c.playerId; o.frozenBy = c.playerId;
o.stopMovement(); o.stopMovement();
c.getActionSender().sendMessage("You freeze your enemy."); c.getPacketSender().sendMessage("You freeze your enemy.");
} }
break; break;
case 3: case 3:
if (damage > 0) { if (damage > 0) {
o.playerLevel[1] -= damage; o.playerLevel[1] -= damage;
o.getActionSender().sendMessage("You feel weak."); o.getPacketSender().sendMessage("You feel weak.");
if (o.playerLevel[1] < 1) { if (o.playerLevel[1] < 1) {
o.playerLevel[1] = 1; o.playerLevel[1] = 1;
} }
@@ -1938,17 +1928,17 @@ public class CombatAssistant {
} }
c.specEffect = 0; c.specEffect = 0;
if (c.fightMode == 3) {//melee shared if (c.fightMode == 3) {//melee shared
c.getPlayerAssistant().addSkillXP(damage * Constants.MELEE_EXP_RATE / 3, 0); c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 0);
c.getPlayerAssistant().addSkillXP(damage * Constants.MELEE_EXP_RATE / 3, 1); c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 1);
c.getPlayerAssistant().addSkillXP(damage * Constants.MELEE_EXP_RATE / 3, 2); c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 2);
c.getPlayerAssistant().addSkillXP(damage / 3, 3); c.getPlayerAssistant().addSkillXP(damage / 3, 3);
c.getPlayerAssistant().refreshSkill(0); c.getPlayerAssistant().refreshSkill(0);
c.getPlayerAssistant().refreshSkill(1); c.getPlayerAssistant().refreshSkill(1);
c.getPlayerAssistant().refreshSkill(2); c.getPlayerAssistant().refreshSkill(2);
c.getPlayerAssistant().refreshSkill(3); c.getPlayerAssistant().refreshSkill(3);
} else { } else {
c.getPlayerAssistant().addSkillXP(damage * Constants.MELEE_EXP_RATE, c.fightMode); c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE, c.fightMode);
c.getPlayerAssistant().addSkillXP(damage * Constants.MELEE_EXP_RATE/3, 3); c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE/3, 3);
c.getPlayerAssistant().refreshSkill(c.fightMode); c.getPlayerAssistant().refreshSkill(c.fightMode);
c.getPlayerAssistant().refreshSkill(3); c.getPlayerAssistant().refreshSkill(3);
} }
@@ -2071,7 +2061,7 @@ public class CombatAssistant {
} }
if (PlayerHandler.players[c.playerIndex].inDuelArena() && c.duelStatus != 5 && !c.usingMagic) { if (PlayerHandler.players[c.playerIndex].inDuelArena() && c.duelStatus != 5 && !c.usingMagic) {
if (c.duelingArena() || c.duelStatus == 5) { if (c.duelingArena() || c.duelStatus == 5) {
c.getActionSender().sendMessage("You can't challenge inside the arena!"); c.getPacketSender().sendMessage("You can't challenge inside the arena!");
return false; return false;
} }
c.getDueling().requestDuel(c.playerIndex); c.getDueling().requestDuel(c.playerIndex);
@@ -2082,7 +2072,7 @@ public class CombatAssistant {
if (PlayerHandler.players[c.playerIndex].duelingWith == c.getId()) { if (PlayerHandler.players[c.playerIndex].duelingWith == c.getId()) {
return true; return true;
} else { } else {
c.getActionSender() c.getPacketSender()
.sendMessage("This isn't your opponent!"); .sendMessage("This isn't your opponent!");
return false; return false;
} }
@@ -2093,7 +2083,7 @@ public class CombatAssistant {
if (!PlayerHandler.players[c.playerIndex].inWild() if (!PlayerHandler.players[c.playerIndex].inWild()
&& !PlayerHandler.players[c.playerIndex].inCwGame() && !PlayerHandler.players[c.playerIndex].inCwGame()
&& !CastOnOther.castOnOtherSpells(c.castingSpellId)) { && !CastOnOther.castOnOtherSpells(c.castingSpellId)) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"That player is not in the wilderness." + c.castingSpellId); "That player is not in the wilderness." + c.castingSpellId);
c.stopMovement(); c.stopMovement();
resetPlayerAttack(); resetPlayerAttack();
@@ -2101,18 +2091,18 @@ public class CombatAssistant {
} }
if (!c.inWild() && !PlayerHandler.players[c.playerIndex].inCwGame() if (!c.inWild() && !PlayerHandler.players[c.playerIndex].inCwGame()
&& !CastOnOther.castOnOtherSpells(c.castingSpellId)) { && !CastOnOther.castOnOtherSpells(c.castingSpellId)) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You are not in the wilderness."); "You are not in the wilderness.");
c.stopMovement(); c.stopMovement();
resetPlayerAttack(); resetPlayerAttack();
return false; return false;
} }
if (Constants.COMBAT_LEVEL_DIFFERENCE && !c.inCw()) { if (GameConstants.COMBAT_LEVEL_DIFFERENCE && !c.inCw()) {
int combatDif1 = getCombatDifference(c.combatLevel, int combatDif1 = getCombatDifference(c.combatLevel,
PlayerHandler.players[c.playerIndex].combatLevel); PlayerHandler.players[c.playerIndex].combatLevel);
if (combatDif1 > c.wildLevel if (combatDif1 > c.wildLevel
|| combatDif1 > PlayerHandler.players[c.playerIndex].wildLevel) { || combatDif1 > PlayerHandler.players[c.playerIndex].wildLevel) {
c.getActionSender() c.getPacketSender()
.sendMessage( .sendMessage(
"Your combat level difference is too great to attack that player here."); "Your combat level difference is too great to attack that player here.");
c.stopMovement(); c.stopMovement();
@@ -2121,13 +2111,13 @@ public class CombatAssistant {
} }
} }
if (Constants.SINGLE_AND_MULTI_ZONES) { if (GameConstants.SINGLE_AND_MULTI_ZONES) {
if (!PlayerHandler.players[c.playerIndex].inMulti()) { // single if (!PlayerHandler.players[c.playerIndex].inMulti()) { // single
// combat // combat
// zones // zones
if (PlayerHandler.players[c.playerIndex].underAttackBy != c.playerId if (PlayerHandler.players[c.playerIndex].underAttackBy != c.playerId
&& PlayerHandler.players[c.playerIndex].underAttackBy != 0) { && PlayerHandler.players[c.playerIndex].underAttackBy != 0) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"That player is already in combat."); "That player is already in combat.");
c.stopMovement(); c.stopMovement();
resetPlayerAttack(); resetPlayerAttack();
@@ -2135,7 +2125,7 @@ public class CombatAssistant {
} }
if (PlayerHandler.players[c.playerIndex].playerId != c.underAttackBy if (PlayerHandler.players[c.playerIndex].playerId != c.underAttackBy
&& c.underAttackBy != 0 || c.underAttackBy2 > 0) { && c.underAttackBy != 0 || c.underAttackBy2 > 0) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You are already in combat."); "You are already in combat.");
c.stopMovement(); c.stopMovement();
resetPlayerAttack(); resetPlayerAttack();
@@ -2169,11 +2159,11 @@ public class CombatAssistant {
PlayerHandler.players[c.playerIndex].updateRequired = true; PlayerHandler.players[c.playerIndex].updateRequired = true;
c.dfsDelay = System.currentTimeMillis(); c.dfsDelay = System.currentTimeMillis();
} else { } else {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"I should be in combat before using this."); "I should be in combat before using this.");
} }
} else { } else {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"My shield hasn't finished recharging yet."); "My shield hasn't finished recharging yet.");
} }
} }
@@ -2190,11 +2180,11 @@ public class CombatAssistant {
NpcHandler.npcs[c.npcIndex].updateRequired = true; NpcHandler.npcs[c.npcIndex].updateRequired = true;
c.dfsDelay = System.currentTimeMillis(); c.dfsDelay = System.currentTimeMillis();
} else { } else {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"I should be in combat before using this."); "I should be in combat before using this.");
} }
} else { } else {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"My shield hasn't finished recharging yet."); "My shield hasn't finished recharging yet.");
} }
} }
@@ -2222,33 +2212,33 @@ public class CombatAssistant {
} }
} }
public static void applyRecoil(Client c, int damage, int i) { public static void applyRecoil(Player c2, int damage, int i) {
if (damage > 0 if (damage > 0
&& PlayerHandler.players[i].playerEquipment[c.playerRing] == 2550) { && PlayerHandler.players[i].playerEquipment[c2.playerRing] == 2550) {
int recDamage = damage / 10 + 1; int recDamage = damage / 10 + 1;
if (!c.getHitUpdateRequired()) { if (!c2.getHitUpdateRequired()) {
c.setHitDiff(recDamage); c2.setHitDiff(recDamage);
c.setHitUpdateRequired(true); c2.setHitUpdateRequired(true);
} else if (!c.getHitUpdateRequired2()) { } else if (!c2.getHitUpdateRequired2()) {
c.setHitDiff2(recDamage); c2.setHitDiff2(recDamage);
c.setHitUpdateRequired2(true); c2.setHitUpdateRequired2(true);
} }
c.dealDamage(recDamage); c2.dealDamage(recDamage);
c.updateRequired = true; c2.updateRequired = true;
removeRecoil(c); removeRecoil(c2);
c.recoilHits += damage; c2.recoilHits += damage;
} }
} }
public static void removeRecoil(Client c) { public static void removeRecoil(Player c2) {
if (c.recoilHits >= 400) { if (c2.recoilHits >= 400) {
c.getItemAssistant().removeItem(2550, c.playerRing); c2.getItemAssistant().removeItem(2550, c2.playerRing);
c.getItemAssistant().deleteItem(2550, c2.getItemAssistant().deleteItem(2550,
c.getItemAssistant().getItemSlot(2550), 1); c2.getItemAssistant().getItemSlot(2550), 1);
c.getActionSender().sendMessage("Your ring of recoil shaters!"); c2.getPacketSender().sendMessage("Your ring of recoil shaters!");
c.recoilHits = 0; c2.recoilHits = 0;
} else { } else {
c.recoilHits++; c2.recoilHits++;
} }
} }
@@ -1,21 +1,22 @@
package redone.game.content.combat; package com.rebotted.game.content.combat;
import java.util.HashMap; import java.util.HashMap;
import redone.Constants; import com.rebotted.GameConstants;
import redone.game.content.combat.range.RangeData; import com.rebotted.game.content.combat.range.RangeData;
import redone.game.content.music.sound.CombatSounds; import com.rebotted.game.content.music.sound.CombatSounds;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import redone.game.players.PlayerHandler; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.game.players.PlayerHandler;
import com.rebotted.util.Misc;
public class Specials { public class Specials {
private final Client player; private final Player player;
public Specials(Client c) { public Specials(Player player2) {
this.player = c; this.player = player2;
} }
private enum specialAttack { private enum specialAttack {
@@ -241,8 +242,8 @@ public class Specials {
.random(player.getCombatAssistant().meleeMaxHit()); .random(player.getCombatAssistant().meleeMaxHit());
player.usingSpecial = false; player.usingSpecial = false;
player.getItemAssistant().updateSpecialBar(); player.getItemAssistant().updateSpecialBar();
if (Constants.combatSounds) { if (GameConstants.COMBAT_SOUNDS) {
player.getActionSender() player.getPacketSender()
.sendSound( .sendSound(
CombatSounds CombatSounds
.specialSounds(player.playerEquipment[player.playerWeapon]), .specialSounds(player.playerEquipment[player.playerWeapon]),
@@ -315,84 +316,84 @@ public class Specials {
return 0; return 0;
} }
public static void specialClicking(Client player, int actionButtonId) { public static void specialClicking(Player player2, int actionButtonId) {
switch (actionButtonId) { switch (actionButtonId) {
case 29188: case 29188:
if (player.playerEquipment[player.playerWeapon] == 1434) { if (player2.playerEquipment[player2.playerWeapon] == 1434) {
player.specBarId = 7636; player2.specBarId = 7636;
player.usingSpecial = !player.usingSpecial; player2.usingSpecial = !player2.usingSpecial;
player.getItemAssistant().updateSpecialBar(); player2.getItemAssistant().updateSpecialBar();
} }
break; break;
case 29163: case 29163:
if (player.playerEquipment[player.playerWeapon] == 4587) { if (player2.playerEquipment[player2.playerWeapon] == 4587) {
player.specBarId = 7611; player2.specBarId = 7611;
player.usingSpecial = !player.usingSpecial; player2.usingSpecial = !player2.usingSpecial;
player.getItemAssistant().updateSpecialBar(); player2.getItemAssistant().updateSpecialBar();
} }
break; break;
case 33033: case 33033:
if (player.playerEquipment[player.playerWeapon] == 4153) { if (player2.playerEquipment[player2.playerWeapon] == 4153) {
player.specBarId = 8505; player2.specBarId = 8505;
player.usingSpecial = !player.usingSpecial; player2.usingSpecial = !player2.usingSpecial;
player.getItemAssistant().updateSpecialBar(); player2.getItemAssistant().updateSpecialBar();
} }
break; break;
case 29038: case 29038:
if (player.playerEquipment[player.playerWeapon] == 4153) { if (player2.playerEquipment[player2.playerWeapon] == 4153) {
player.specBarId = 7486; player2.specBarId = 7486;
player.getSpecials().handleGmaul(); player2.getSpecials().handleGmaul();
player.usingSpecial = !player.usingSpecial; player2.usingSpecial = !player2.usingSpecial;
player.getItemAssistant().updateSpecialBar(); player2.getItemAssistant().updateSpecialBar();
} }
break; break;
case 29063: case 29063:
if (player.playerEquipment[player.playerWeapon] == 1377) { if (player2.playerEquipment[player2.playerWeapon] == 1377) {
if (player.getCombatAssistant().checkSpecAmount(1377)) { if (player2.getCombatAssistant().checkSpecAmount(1377)) {
player.gfx0(246); player2.gfx0(246);
player.forcedChat("Raarrrrrgggggghhhhhhh!"); player2.forcedChat("Raarrrrrgggggghhhhhhh!");
player.startAnimation(1056); player2.startAnimation(1056);
player.playerLevel[2] = player.getLevelForXP(player.playerXP[2]) + player.getLevelForXP(player.playerXP[2]) * 15 / 100; player2.playerLevel[2] = player2.getLevelForXP(player2.playerXP[2]) + player2.getLevelForXP(player2.playerXP[2]) * 15 / 100;
player.getPlayerAssistant().refreshSkill(2); player2.getPlayerAssistant().refreshSkill(2);
player.getItemAssistant().updateSpecialBar(); player2.getItemAssistant().updateSpecialBar();
} else { } else {
player.getActionSender().sendMessage("You don't have the required special energy to use this attack."); player2.getPacketSender().sendMessage("You don't have the required special energy to use this attack.");
} }
} }
break; break;
case 48023: case 48023:
if (player.playerEquipment[player.playerWeapon] == 4151) { if (player2.playerEquipment[player2.playerWeapon] == 4151) {
player.specBarId = 12335; player2.specBarId = 12335;
player.usingSpecial = !player.usingSpecial; player2.usingSpecial = !player2.usingSpecial;
player.getItemAssistant().updateSpecialBar(); player2.getItemAssistant().updateSpecialBar();
} }
break; break;
case 29138: case 29138:
if (player.playerEquipment[player.playerWeapon] == 1215 || player.playerEquipment[player.playerWeapon] == 1231 || player.playerEquipment[player.playerWeapon] == 5680 || player.playerEquipment[player.playerWeapon] == 5698) { if (player2.playerEquipment[player2.playerWeapon] == 1215 || player2.playerEquipment[player2.playerWeapon] == 1231 || player2.playerEquipment[player2.playerWeapon] == 5680 || player2.playerEquipment[player2.playerWeapon] == 5698) {
player.specBarId = 7586; player2.specBarId = 7586;
player.usingSpecial = !player.usingSpecial; player2.usingSpecial = !player2.usingSpecial;
player.getItemAssistant().updateSpecialBar(); player2.getItemAssistant().updateSpecialBar();
} }
break; break;
case 29113: case 29113:
if (player.playerEquipment[player.playerWeapon] == 861 || player.playerEquipment[player.playerWeapon] == 859) { if (player2.playerEquipment[player2.playerWeapon] == 861 || player2.playerEquipment[player2.playerWeapon] == 859) {
player.specBarId = 7561; player2.specBarId = 7561;
player.usingSpecial = !player.usingSpecial; player2.usingSpecial = !player2.usingSpecial;
player.getItemAssistant().updateSpecialBar(); player2.getItemAssistant().updateSpecialBar();
} }
break; break;
case 29238: case 29238:
player.specBarId = 7686; player2.specBarId = 7686;
player.usingSpecial = !player.usingSpecial; player2.usingSpecial = !player2.usingSpecial;
player.getItemAssistant().updateSpecialBar(); player2.getItemAssistant().updateSpecialBar();
break; break;
} }
} }
@@ -1,10 +1,11 @@
package redone.game.content.combat.magic; package com.rebotted.game.content.combat.magic;
import redone.event.CycleEvent; import com.rebotted.event.CycleEvent;
import redone.event.CycleEventContainer; import com.rebotted.event.CycleEventContainer;
import redone.event.CycleEventHandler; import com.rebotted.event.CycleEventHandler;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import redone.game.players.PlayerHandler; import com.rebotted.game.players.Player;
import com.rebotted.game.players.PlayerHandler;
public class CastOnOther extends CastRequirements { public class CastOnOther extends CastRequirements {
@@ -18,13 +19,13 @@ public class CastOnOther extends CastRequirements {
return false; return false;
} }
public static void teleOtherDistance(Client c, int type, int i) { public static void teleOtherDistance(Player c, int type, int i) {
Client castOn = (Client) PlayerHandler.players[i]; Player castOn = (Client) PlayerHandler.players[i];
int[][] data = { { 74, SOUL, LAW, EARTH, 1, 1, 1 }, int[][] data = { { 74, SOUL, LAW, EARTH, 1, 1, 1 },
{ 82, SOUL, LAW, WATER, 1, 1, 1 }, { 82, SOUL, LAW, WATER, 1, 1, 1 },
{ 90, SOUL, LAW, -1, 2, 1, -1 }, }; { 90, SOUL, LAW, -1, 2, 1, -1 }, };
if (!hasRequiredLevel(c, data[type][0])) { if (!hasRequiredLevel(c, data[type][0])) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You need to have a magic level of " + data[type][0] "You need to have a magic level of " + data[type][0]
+ " to cast this spell."); + " to cast this spell.");
return; return;
@@ -44,30 +45,30 @@ public class CastOnOther extends CastRequirements {
if (castOn != null) { if (castOn != null) {
if (castOn.distanceToPoint(c.absX, c.absY) <= 15) { if (castOn.distanceToPoint(c.absX, c.absY) <= 15) {
if (c.heightLevel == castOn.heightLevel) { if (c.heightLevel == castOn.heightLevel) {
castOn.getPlayerAssistant().sendFrame126(location[type], 12560); castOn.getPacketSender().sendFrame126(location[type], 12560);
castOn.getPlayerAssistant().sendFrame126(c.playerName, 12558); castOn.getPacketSender().sendFrame126(c.playerName, 12558);
castOn.getPlayerAssistant().showInterface(12468); castOn.getPacketSender().showInterface(12468);
castOn.teleotherType = type; castOn.teleotherType = type;
} }
} }
} }
} }
public static void teleOtherLocation(final Client c, final int i, public static void teleOtherLocation(final Player player, final int i,
boolean decline) { boolean decline) {
c.getPlayerAssistant().removeAllWindows(); player.getPacketSender().closeAllWindows();
final int[][] coords = { { 3222, 3218 }, // LUMBRIDGE final int[][] coords = { { 3222, 3218 }, // LUMBRIDGE
{ 2967, 3378 }, // FALADOR { 2967, 3378 }, // FALADOR
{ 2757, 3477 }, // CAMELOT { 2757, 3477 }, // CAMELOT
}; };
if (!decline) { if (!decline) {
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() { CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
@Override @Override
public void execute(CycleEventContainer container) { public void execute(CycleEventContainer container) {
c.startAnimation(715); player.startAnimation(715);
c.teleportToX = coords[c.teleotherType][0]; player.teleportToX = coords[player.teleotherType][0];
c.teleportToY = coords[c.teleotherType][1]; player.teleportToY = coords[player.teleotherType][1];
c.teleotherType = -1; player.teleotherType = -1;
container.stop(); container.stop();
} }
@Override @Override
@@ -76,8 +77,8 @@ public class CastOnOther extends CastRequirements {
} }
}, 3); }, 3);
c.startAnimation(1816); player.startAnimation(1816);
c.gfx100(342); player.gfx100(342);
} }
} }
} }
@@ -1,46 +1,46 @@
package redone.game.content.combat.magic; package com.rebotted.game.content.combat.magic;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class CastRequirements { public class CastRequirements {
public static boolean hasRunes(Client c, int[] runes, int[] amount) { public static boolean hasRunes(Player c, int[] runes, int[] amount) {
for (int i = 0; i < runes.length; i++) { for (int i = 0; i < runes.length; i++) {
if (c.getItemAssistant().playerHasItem(runes[i], amount[i]) || MagicRequirements.wearingStaff(c, runes[i])) { if (c.getItemAssistant().playerHasItem(runes[i], amount[i]) || MagicRequirements.wearingStaff(c, runes[i])) {
return true; return true;
} }
} }
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You don't have enough required runes to cast this spell!"); "You don't have enough required runes to cast this spell!");
return false; return false;
} }
public static boolean hasRunes(Client c, int[][] runes) { public static boolean hasRunes(Player player, int[][] runes) {
for (int[] rune : runes) { for (int[] rune : runes) {
// if player doesn't have the required amount of runes or a staff for that rune // if player doesn't have the required amount of runes or a staff for that rune
if (!c.getItemAssistant().playerHasItem(rune[0], rune[1]) && !MagicRequirements.wearingStaff(c, rune[0])) { if (!player.getItemAssistant().playerHasItem(rune[0], rune[1]) && !MagicRequirements.wearingStaff(player, rune[0])) {
return false; return false;
} }
} }
return true; return true;
} }
public static void deleteRunes(Client c, int[][] runes) { public static void deleteRunes(Player player, int[][] runes) {
for (int[] rune : runes) { for (int[] rune : runes) {
if (!MagicRequirements.wearingStaff(c, rune[0])) { if (!MagicRequirements.wearingStaff(player, rune[0])) {
c.getItemAssistant().deleteItem(rune[0], rune[1]); player.getItemAssistant().deleteItem(rune[0], rune[1]);
} }
} }
} }
public static void deleteRunes(Client c, int[] runes, int[] amount) { public static void deleteRunes(Player c, int[] runes, int[] amount) {
for (int i = 0; i < runes.length; i++) { for (int i = 0; i < runes.length; i++) {
c.getItemAssistant().deleteItem(runes[i], c.getItemAssistant().deleteItem(runes[i],
c.getItemAssistant().getItemSlot(runes[i]), amount[i]); c.getItemAssistant().getItemSlot(runes[i]), amount[i]);
} }
} }
public static boolean hasRequiredLevel(Client c, int i) { public static boolean hasRequiredLevel(Player c, int i) {
return c.playerLevel[6] >= i; return c.playerLevel[6] >= i;
} }
@@ -1,16 +1,15 @@
package redone.game.content.combat.magic; package com.rebotted.game.content.combat.magic;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import com.rebotted.game.players.Player;
import redone.game.players.Client;
public class Enchanting { public class Enchanting {
private final Client c; private final Player c;
public Enchanting(Client c) { public Enchanting(Player player) {
this.c = c; this.c = player;
} }
public enum Enchant { public enum Enchant {
@@ -228,20 +227,20 @@ public class Enchanting {
c.getItemAssistant().getItemSlot( c.getItemAssistant().getItemSlot(
ens.getReq3()), ens.getReqAmt3()); ens.getReq3()), ens.getReqAmt3());
} }
c.getPlayerAssistant().sendFrame106(6); c.getPacketSender().sendFrame106(6);
} else { } else {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You can only enchant this jewelry using a level-" "You can only enchant this jewelry using a level-"
+ enc.getELevel() + enc.getELevel()
+ " enchantment spell!"); + " enchantment spell!");
} }
} else { } else {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You do not have enough runes to cast this spell."); "You do not have enough runes to cast this spell.");
} }
} }
} else { } else {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You need a magic level of at least " + enc.getLevelReq() "You need a magic level of at least " + enc.getLevelReq()
+ " to cast this spell."); + " to cast this spell.");
} }
@@ -1,6 +1,6 @@
package redone.game.content.combat.magic; package com.rebotted.game.content.combat.magic;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class MagicData { public class MagicData {
public static final int[][] MAGIC_SPELLS = { public static final int[][] MAGIC_SPELLS = {
@@ -224,7 +224,7 @@ public class MagicData {
} }
} }
public static boolean multis(Client c) { public static boolean multis(Player c) {
switch (MAGIC_SPELLS[c.oldSpellId][0]) { switch (MAGIC_SPELLS[c.oldSpellId][0]) {
case 12891: case 12891:
case 12881: case 12881:
@@ -240,7 +240,7 @@ public class MagicData {
} }
public static int getFreezeTime(Client c) { public static int getFreezeTime(Player c) {
switch (MAGIC_SPELLS[c.oldSpellId][0]) { switch (MAGIC_SPELLS[c.oldSpellId][0]) {
case 1572: case 1572:
case 12861: // ice rush case 12861: // ice rush
@@ -262,7 +262,7 @@ public class MagicData {
} }
} }
public static int getStartHeight(Client c) { public static int getStartHeight(Player c) {
switch (MAGIC_SPELLS[c.spellId][0]) { switch (MAGIC_SPELLS[c.spellId][0]) {
case 1562: // stun case 1562: // stun
return 25; return 25;
@@ -290,7 +290,7 @@ public class MagicData {
} }
} }
public static int getEndHeight(Client c) { public static int getEndHeight(Player c) {
switch (MAGIC_SPELLS[c.spellId][0]) { switch (MAGIC_SPELLS[c.spellId][0]) {
case 1562: // stun case 1562: // stun
return 10; return 10;
@@ -318,7 +318,7 @@ public class MagicData {
} }
} }
public static int getStartDelay(Client c) { public static int getStartDelay(Player c) {
switch (MAGIC_SPELLS[c.spellId][0]) { switch (MAGIC_SPELLS[c.spellId][0]) {
case 1539: case 1539:
return 60; return 60;
@@ -328,7 +328,7 @@ public class MagicData {
} }
} }
public static boolean godSpells(Client c) { public static boolean godSpells(Player c) {
switch (MAGIC_SPELLS[c.spellId][0]) { switch (MAGIC_SPELLS[c.spellId][0]) {
case 1190: case 1190:
return true; return true;
@@ -344,7 +344,7 @@ public class MagicData {
} }
} }
public static int getEndGfxHeight(Client c) { public static int getEndGfxHeight(Player c) {
switch (MAGIC_SPELLS[c.oldSpellId][0]) { switch (MAGIC_SPELLS[c.oldSpellId][0]) {
case 12987: case 12987:
case 12901: case 12901:
@@ -367,7 +367,7 @@ public class MagicData {
} }
} }
public static int getStartGfxHeight(Client c) { public static int getStartGfxHeight(Player c) {
switch (MAGIC_SPELLS[c.spellId][0]) { switch (MAGIC_SPELLS[c.spellId][0]) {
case 12871: case 12871:
case 12891: case 12891:
@@ -378,7 +378,7 @@ public class MagicData {
} }
} }
public static boolean fullVoidMage(Client c) { public static boolean fullVoidMage(Player c) {
return c.playerEquipment[c.playerHat] == 11663 return c.playerEquipment[c.playerHat] == 11663
&& c.playerEquipment[c.playerLegs] == 8840 && c.playerEquipment[c.playerLegs] == 8840
&& c.playerEquipment[c.playerChest] == 8839 && c.playerEquipment[c.playerChest] == 8839
@@ -1,10 +1,10 @@
package redone.game.content.combat.magic; package com.rebotted.game.content.combat.magic;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class MagicMaxHit { public class MagicMaxHit {
public static int mageAttackBonus(Client c) { public static int mageAttackBonus(Player c) {
int magicBonus = c.playerLevel[6]; int magicBonus = c.playerLevel[6];
if (MagicData.fullVoidMage(c)) { if (MagicData.fullVoidMage(c)) {
magicBonus += c.getLevelForXP(c.playerXP[6]) * 0.2; magicBonus += c.getLevelForXP(c.playerXP[6]) * 0.2;
@@ -19,7 +19,7 @@ public class MagicMaxHit {
return magicBonus + c.playerBonus[3] * 2; return magicBonus + c.playerBonus[3] * 2;
} }
public static int mageDefenceBonus(Client c) { public static int mageDefenceBonus(Player c) {
int defenceBonus = c.playerLevel[1] / 2 + c.playerLevel[6] / 2; int defenceBonus = c.playerLevel[1] / 2 + c.playerLevel[6] / 2;
if (c.getPrayer().prayerActive[0]) { if (c.getPrayer().prayerActive[0]) {
defenceBonus += c.getLevelForXP(c.playerXP[c.playerDefence]) * 0.05; defenceBonus += c.getLevelForXP(c.playerXP[c.playerDefence]) * 0.05;
@@ -1,13 +1,13 @@
package redone.game.content.combat.magic; package com.rebotted.game.content.combat.magic;
import redone.game.items.ItemAssistant; import com.rebotted.game.items.ItemAssistant;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.game.players.PlayerHandler; import com.rebotted.game.players.PlayerHandler;
public class MagicRequirements { public class MagicRequirements {
public static boolean wearingStaff(Client c, int runeId) { public static boolean wearingStaff(Player player, int runeId) {
int wep = c.playerEquipment[c.playerWeapon]; int wep = player.playerEquipment[player.playerWeapon];
switch (runeId) { switch (runeId) {
case 554: case 554:
if (wep == 1387 || wep == 1393 || wep == 3053) { if (wep == 1387 || wep == 1393 || wep == 3053) {
@@ -33,7 +33,7 @@ public class MagicRequirements {
return false; return false;
} }
public static boolean checkMagicReqs(Client c, int spell) { public static boolean checkMagicReqs(Player c, int spell) {
if (c.usingMagic && MagicTeleports.RUNES_REQUIRED) { // check for runes if (c.usingMagic && MagicTeleports.RUNES_REQUIRED) { // check for runes
if (!c.getItemAssistant().playerHasItem( if (!c.getItemAssistant().playerHasItem(
MagicData.MAGIC_SPELLS[spell][8], MagicData.MAGIC_SPELLS[spell][8],
@@ -51,7 +51,7 @@ public class MagicRequirements {
MagicData.MAGIC_SPELLS[spell][14], MagicData.MAGIC_SPELLS[spell][14],
MagicData.MAGIC_SPELLS[spell][15]) MagicData.MAGIC_SPELLS[spell][15])
&& !wearingStaff(c, MagicData.MAGIC_SPELLS[spell][14])) { && !wearingStaff(c, MagicData.MAGIC_SPELLS[spell][14])) {
c.getActionSender() c.getPacketSender()
.sendMessage( .sendMessage(
"You don't have the required runes to cast this spell."); "You don't have the required runes to cast this spell.");
return false; return false;
@@ -76,7 +76,7 @@ public class MagicRequirements {
} }
} }
if (!PlayerHandler.players[c.playerIndex].canUseReducingSpell[c.reduceSpellId]) { if (!PlayerHandler.players[c.playerIndex].canUseReducingSpell[c.reduceSpellId]) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"That player is currently immune to this spell."); "That player is currently immune to this spell.");
c.usingMagic = false; c.usingMagic = false;
c.stopMovement(); c.stopMovement();
@@ -90,7 +90,7 @@ public class MagicRequirements {
if (c.usingMagic && staffRequired > 0 && MagicTeleports.RUNES_REQUIRED) { // staff if (c.usingMagic && staffRequired > 0 && MagicTeleports.RUNES_REQUIRED) { // staff
// required // required
if (c.playerEquipment[c.playerWeapon] != staffRequired) { if (c.playerEquipment[c.playerWeapon] != staffRequired) {
c.getActionSender() c.getPacketSender()
.sendMessage( .sendMessage(
"You need a " "You need a "
+ ItemAssistant.getItemName( + ItemAssistant.getItemName(
@@ -102,7 +102,7 @@ public class MagicRequirements {
if (c.usingMagic && MagicTeleports.MAGIC_LEVEL_REQUIRED) { // check magic level if (c.usingMagic && MagicTeleports.MAGIC_LEVEL_REQUIRED) { // check magic level
if (c.playerLevel[6] < MagicData.MAGIC_SPELLS[spell][1]) { if (c.playerLevel[6] < MagicData.MAGIC_SPELLS[spell][1]) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You need to have a magic level of " "You need to have a magic level of "
+ MagicData.MAGIC_SPELLS[spell][1] + MagicData.MAGIC_SPELLS[spell][1]
+ " to cast this spell."); + " to cast this spell.");
@@ -150,7 +150,7 @@ public class MagicRequirements {
return true; return true;
} }
public static int getStaffNeeded(Client c) { public static int getStaffNeeded(Player c) {
switch (MagicData.MAGIC_SPELLS[c.spellId][0]) { switch (MagicData.MAGIC_SPELLS[c.spellId][0]) {
case 1539: case 1539:
return 1409; return 1409;
@@ -1,16 +1,17 @@
package redone.game.content.combat.magic; package com.rebotted.game.content.combat.magic;
import redone.Constants; import com.rebotted.GameConstants;
import redone.game.content.music.sound.SoundList; import com.rebotted.game.content.music.sound.SoundList;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import redone.game.players.PlayerHandler; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.game.players.PlayerHandler;
import com.rebotted.util.Misc;
public class MagicSpells extends MagicData { public class MagicSpells extends MagicData {
public static void appendMultiBarrage(Client c, int playerId, boolean splashed) { public static void appendMultiBarrage(Player c, int playerId, boolean splashed) {
if (PlayerHandler.players[playerId] != null) { if (PlayerHandler.players[playerId] != null) {
Client c2 = (Client) PlayerHandler.players[playerId]; Player c2 = (Client) PlayerHandler.players[playerId];
if (c2.isDead || c2.respawnTimer > 0) { if (c2.isDead || c2.respawnTimer > 0) {
return; return;
} }
@@ -31,7 +32,7 @@ public class MagicSpells extends MagicData {
if (c2.playerLevel[3] - damage < 0) { if (c2.playerLevel[3] - damage < 0) {
damage = c2.playerLevel[3]; damage = c2.playerLevel[3];
} }
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage * Constants.MAGIC_EXP_RATE, 6); c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage * GameConstants.MAGIC_EXP_RATE, 6);
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage / 3, 3); c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage / 3, 3);
// Server.playerHandler.players[playerId].setHitDiff(damage); // Server.playerHandler.players[playerId].setHitDiff(damage);
// Server.playerHandler.players[playerId].setHitUpdateRequired(true); // Server.playerHandler.players[playerId].setHitUpdateRequired(true);
@@ -45,14 +46,14 @@ public class MagicSpells extends MagicData {
multiSpellEffect(c, playerId, damage); multiSpellEffect(c, playerId, damage);
} else { } else {
c2.gfx100(85); c2.gfx100(85);
c.getActionSender().sendSound(SoundList.MAGE_FAIL, 100, c.getPacketSender().sendSound(SoundList.MAGE_FAIL, 100,
0); 0);
} }
} }
} }
} }
public static void multiSpellEffect(Client c, int playerId, int damage) { public static void multiSpellEffect(Player c, int playerId, int damage) {
switch (MagicData.MAGIC_SPELLS[c.oldSpellId][0]) { switch (MagicData.MAGIC_SPELLS[c.oldSpellId][0]) {
case 13011: case 13011:
case 13023: case 13023:
@@ -86,7 +87,7 @@ public class MagicSpells extends MagicData {
} }
} }
public static boolean checkMultiBarrageReqs(Client c, int i) { public static boolean checkMultiBarrageReqs(Player c, int i) {
if (PlayerHandler.players[i] == null) { if (PlayerHandler.players[i] == null) {
return false; return false;
} }
@@ -99,19 +100,19 @@ public class MagicSpells extends MagicData {
if (!PlayerHandler.players[i].inWild()) { if (!PlayerHandler.players[i].inWild()) {
return false; return false;
} }
if (Constants.COMBAT_LEVEL_DIFFERENCE) { if (GameConstants.COMBAT_LEVEL_DIFFERENCE) {
int combatDif1 = c.getCombatAssistant().getCombatDifference(c.combatLevel, int combatDif1 = c.getCombatAssistant().getCombatDifference(c.combatLevel,
PlayerHandler.players[i].combatLevel); PlayerHandler.players[i].combatLevel);
if (combatDif1 > c.wildLevel if (combatDif1 > c.wildLevel
|| combatDif1 > PlayerHandler.players[i].wildLevel) { || combatDif1 > PlayerHandler.players[i].wildLevel) {
c.getActionSender() c.getPacketSender()
.sendMessage( .sendMessage(
"Your combat level difference is too great to attack that player here."); "Your combat level difference is too great to attack that player here.");
return false; return false;
} }
} }
if (Constants.SINGLE_AND_MULTI_ZONES) { if (GameConstants.SINGLE_AND_MULTI_ZONES) {
if (!PlayerHandler.players[i].inMulti()) { // single combat if (!PlayerHandler.players[i].inMulti()) { // single combat
// zones // zones
if (PlayerHandler.players[i].underAttackBy != c.playerId if (PlayerHandler.players[i].underAttackBy != c.playerId
@@ -120,7 +121,7 @@ public class MagicSpells extends MagicData {
} }
if (PlayerHandler.players[i].playerId != c.underAttackBy if (PlayerHandler.players[i].playerId != c.underAttackBy
&& c.underAttackBy != 0) { && c.underAttackBy != 0) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You are already in combat."); "You are already in combat.");
return false; return false;
} }
@@ -129,11 +130,11 @@ public class MagicSpells extends MagicData {
return true; return true;
} }
public static int mageAtk(Client c) { public static int mageAtk(Player c) {
return MagicMaxHit.mageAttackBonus(c); return MagicMaxHit.mageAttackBonus(c);
} }
public static int mageDef(Client c) { public static int mageDef(Player c) {
return MagicMaxHit.mageDefenceBonus(c); return MagicMaxHit.mageDefenceBonus(c);
} }
} }
@@ -1,8 +1,8 @@
package redone.game.content.combat.magic; package com.rebotted.game.content.combat.magic;
import redone.game.content.randomevents.RandomEventHandler; import com.rebotted.game.content.randomevents.RandomEventHandler;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.util.Misc;
public class MagicTeleports { public class MagicTeleports {
@@ -11,17 +11,17 @@ public class MagicTeleports {
LAW_RUNE = 563, BLOOD_RUNE = 565, LAW_RUNE = 563, BLOOD_RUNE = 565,
SOUL_RUNE = 566, BANANA = 1963; SOUL_RUNE = 566, BANANA = 1963;
public static void handleLoginText(Client player) { public static void handleLoginText(Player player) {
player.getPlayerAssistant().sendFrame126("Level 25: Varrock Teleport", 1300); player.getPacketSender().sendFrame126("Level 25: Varrock Teleport", 1300);
player.getPlayerAssistant().sendFrame126("Level 31: Lumbridge Teleport", 1325); player.getPacketSender().sendFrame126("Level 31: Lumbridge Teleport", 1325);
player.getPlayerAssistant().sendFrame126("Level 37: Falador Teleport", 1350); player.getPacketSender().sendFrame126("Level 37: Falador Teleport", 1350);
player.getPlayerAssistant().sendFrame126("Level 45: Camelot Teleport", 1382); player.getPacketSender().sendFrame126("Level 45: Camelot Teleport", 1382);
player.getPlayerAssistant().sendFrame126("Level 51: Ardougne Teleport", 1415); player.getPacketSender().sendFrame126("Level 51: Ardougne Teleport", 1415);
player.getPlayerAssistant().sendFrame126("Level 54: Paddewwa Teleport", 13037); player.getPacketSender().sendFrame126("Level 54: Paddewwa Teleport", 13037);
player.getPlayerAssistant().sendFrame126("Level 60: Senntisten Teleport", 13047); player.getPacketSender().sendFrame126("Level 60: Senntisten Teleport", 13047);
player.getPlayerAssistant().sendFrame126("Level 66: Kharyrll Teleport", 13055); player.getPacketSender().sendFrame126("Level 66: Kharyrll Teleport", 13055);
player.getPlayerAssistant().sendFrame126("Level 72: Lassar Teleport", 13063); player.getPacketSender().sendFrame126("Level 72: Lassar Teleport", 13063);
player.getPlayerAssistant().sendFrame126("Level 78: Dareeyak Teleport", 13071); player.getPacketSender().sendFrame126("Level 78: Dareeyak Teleport", 13071);
} }
/** /**
@@ -50,27 +50,27 @@ public class MagicTeleports {
public static final boolean MAGIC_LEVEL_REQUIRED = true, RUNES_REQUIRED = true; public static final boolean MAGIC_LEVEL_REQUIRED = true, RUNES_REQUIRED = true;
public static boolean teleportCheck(Client player) { public static boolean teleportCheck(Player player) {
if (player.teleTimer > 0) { if (player.teleTimer > 0) {
return false; return false;
} }
return true; return true;
} }
public static void paddewwaTeleport(Client player) { public static void paddewwaTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 1}, {AIR_RUNE, 1}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 1}, {AIR_RUNE, 1}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 54) { if (player.playerLevel[player.playerMagic] < 54) {
player.getActionSender().sendMessage("You need a magic level of 54 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 54 to cast this spell.");
return; return;
} }
} }
@@ -79,20 +79,20 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(64, player.playerMagic); player.getPlayerAssistant().addSkillXP(64, player.playerMagic);
} }
public static void senntisenTeleport(Client player) { public static void senntisenTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {SOUL_RUNE, 1}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {SOUL_RUNE, 1}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 60) { if (player.playerLevel[player.playerMagic] < 60) {
player.getActionSender().sendMessage("You need a magic level of 60 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 60 to cast this spell.");
return; return;
} }
} }
@@ -101,20 +101,20 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(70, player.playerMagic); player.getPlayerAssistant().addSkillXP(70, player.playerMagic);
} }
public static void kharyllTeleport(Client player) { public static void kharyllTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {BLOOD_RUNE, 1}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {BLOOD_RUNE, 1}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 66) { if (player.playerLevel[player.playerMagic] < 66) {
player.getActionSender().sendMessage("You need a magic level of 66 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 66 to cast this spell.");
return; return;
} }
} }
@@ -123,20 +123,20 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(76, player.playerMagic); player.getPlayerAssistant().addSkillXP(76, player.playerMagic);
} }
public static void lassarTeleport(Client player) { public static void lassarTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 4}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 4}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 72) { if (player.playerLevel[player.playerMagic] < 72) {
player.getActionSender().sendMessage("You need a magic level of 72 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 72 to cast this spell.");
return; return;
} }
} }
@@ -145,20 +145,20 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(82, player.playerMagic); player.getPlayerAssistant().addSkillXP(82, player.playerMagic);
} }
public static void dareeyakTeleport(Client player) { public static void dareeyakTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 3}, {AIR_RUNE, 2}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 3}, {AIR_RUNE, 2}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 78) { if (player.playerLevel[player.playerMagic] < 78) {
player.getActionSender().sendMessage("You need a magic level of 78 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 78 to cast this spell.");
return; return;
} }
} }
@@ -169,14 +169,14 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(88, player.playerMagic); player.getPlayerAssistant().addSkillXP(88, player.playerMagic);
} }
public static void carrallangarTeleport(Client player) { public static void carrallangarTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {SOUL_RUNE, 2}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {SOUL_RUNE, 2}})) {
player.getActionSender() player.getPacketSender()
.sendMessage( .sendMessage(
"You don't have the required runes to cast this spell."); "You don't have the required runes to cast this spell.");
return; return;
@@ -184,7 +184,7 @@ public class MagicTeleports {
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 84) { if (player.playerLevel[player.playerMagic] < 84) {
player.getActionSender().sendMessage("You need a magic level of 84 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 84 to cast this spell.");
return; return;
} }
} }
@@ -193,20 +193,20 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(94, player.playerMagic); player.getPlayerAssistant().addSkillXP(94, player.playerMagic);
} }
public static void annakarlTeleport(Client player) { public static void annakarlTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {BLOOD_RUNE, 2}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {BLOOD_RUNE, 2}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 90) { if (player.playerLevel[player.playerMagic] < 90) {
player.getActionSender().sendMessage("You need a magic level of 90 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 90 to cast this spell.");
return; return;
} }
} }
@@ -215,20 +215,20 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(100, player.playerMagic); player.getPlayerAssistant().addSkillXP(100, player.playerMagic);
} }
public static void ghorrockTeleport(Client player) { public static void ghorrockTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 8}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 8}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 96) { if (player.playerLevel[player.playerMagic] < 96) {
player.getActionSender().sendMessage("You need a magic level of 96 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 96 to cast this spell.");
return; return;
} }
} }
@@ -238,20 +238,20 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(106, player.playerMagic); player.getPlayerAssistant().addSkillXP(106, player.playerMagic);
} }
public static void varrockTeleport(Client player) { public static void varrockTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {FIRE_RUNE, 1}, {AIR_RUNE, 3}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {FIRE_RUNE, 1}, {AIR_RUNE, 3}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 25) { if (player.playerLevel[player.playerMagic] < 25) {
player.getActionSender().sendMessage("You need a magic level of 25 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 25 to cast this spell.");
return; return;
} }
} }
@@ -260,20 +260,20 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(35, player.playerMagic); player.getPlayerAssistant().addSkillXP(35, player.playerMagic);
} }
public static void lumbridgeTeleport(Client player) { public static void lumbridgeTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {EARTH_RUNE, 1}, {AIR_RUNE, 3}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {EARTH_RUNE, 1}, {AIR_RUNE, 3}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 32) { if (player.playerLevel[player.playerMagic] < 32) {
player.getActionSender().sendMessage("You need a magic level of 32 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 32 to cast this spell.");
return; return;
} }
} }
@@ -282,20 +282,20 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(35, player.playerMagic); player.getPlayerAssistant().addSkillXP(35, player.playerMagic);
} }
public static void faladorTeleport(Client player) { public static void faladorTeleport(Player player) {
/*if (!teleportCheck(player)) { /*if (!teleportCheck(player)) {
return; return;
}*/ }*/
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {WATER_RUNE, 1}, {AIR_RUNE, 3}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {WATER_RUNE, 1}, {AIR_RUNE, 3}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 37) { if (player.playerLevel[player.playerMagic] < 37) {
player.getActionSender().sendMessage("You need a magic level of 37 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 37 to cast this spell.");
return; return;
} }
} }
@@ -304,20 +304,20 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(48, player.playerMagic); player.getPlayerAssistant().addSkillXP(48, player.playerMagic);
} }
public static void camelotTeleport(Client player) { public static void camelotTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {AIR_RUNE, 5}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 1}, {AIR_RUNE, 5}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 45) { if (player.playerLevel[player.playerMagic] < 45) {
player.getActionSender().sendMessage("You need a magic level of 45 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 45 to cast this spell.");
return; return;
} }
} }
@@ -327,20 +327,20 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(55.5, player.playerMagic); player.getPlayerAssistant().addSkillXP(55.5, player.playerMagic);
} }
public static void ardougneTeleport(Client player) { public static void ardougneTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 2}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {WATER_RUNE, 2}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 51) { if (player.playerLevel[player.playerMagic] < 51) {
player.getActionSender().sendMessage("You need a magic level of 51 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 51 to cast this spell.");
return; return;
} }
} }
@@ -350,20 +350,20 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(61, player.playerMagic); player.getPlayerAssistant().addSkillXP(61, player.playerMagic);
} }
public static void watchTowerTeleport(Client player) { public static void watchTowerTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {EARTH_RUNE, 2}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {EARTH_RUNE, 2}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 58) { if (player.playerLevel[player.playerMagic] < 58) {
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You need a magic level of 58 to cast this spell."); "You need a magic level of 58 to cast this spell.");
return; return;
} }
@@ -373,20 +373,20 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(68, player.playerMagic); player.getPlayerAssistant().addSkillXP(68, player.playerMagic);
} }
public static void trollhiemTeleport(Client player) { public static void trollhiemTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 2}})) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 2}})) {
player.getActionSender().sendMessage("You don't have the required runes to cast this spell."); player.getPacketSender().sendMessage("You don't have the required runes to cast this spell.");
return; return;
} }
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 61) { if (player.playerLevel[player.playerMagic] < 61) {
player.getActionSender().sendMessage("You need a magic level of 61 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 61 to cast this spell.");
return; return;
} }
} }
@@ -396,24 +396,24 @@ public class MagicTeleports {
player.getPlayerAssistant().addSkillXP(68, player.playerMagic); player.getPlayerAssistant().addSkillXP(68, player.playerMagic);
} }
public static void apeAtollTeleport(Client player) { public static void apeAtollTeleport(Player player) {
if (!teleportCheck(player)) { if (!teleportCheck(player)) {
return; return;
} }
RandomEventHandler.addRandom(player); RandomEventHandler.addRandom(player);
if (RUNES_REQUIRED) { if (RUNES_REQUIRED) {
if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 2}, {WATER_RUNE, 2}}) || !player.getItemAssistant().playerHasItem(BANANA, 1)) { if (!CastRequirements.hasRunes(player, new int[][]{{LAW_RUNE, 2}, {FIRE_RUNE, 2}, {WATER_RUNE, 2}}) || !player.getItemAssistant().playerHasItem(BANANA, 1)) {
player.getActionSender().sendMessage("You don't have the required items to cast this spell."); player.getPacketSender().sendMessage("You don't have the required items to cast this spell.");
return; return;
} }
} }
if (player.questPoints < 19) { if (player.questPoints < 19) {
player.getActionSender().sendMessage("You need " + 19 + " quest points to teleport here."); player.getPacketSender().sendMessage("You need " + 19 + " quest points to teleport here.");
return; return;
} }
if (MAGIC_LEVEL_REQUIRED) { if (MAGIC_LEVEL_REQUIRED) {
if (player.playerLevel[player.playerMagic] < 64) { if (player.playerLevel[player.playerMagic] < 64) {
player.getActionSender().sendMessage("You need a magic level of 64 to cast this spell."); player.getPacketSender().sendMessage("You need a magic level of 64 to cast this spell.");
return; return;
} }
} }
@@ -1,18 +1,18 @@
package redone.game.content.combat.magic; package com.rebotted.game.content.combat.magic;
import redone.game.players.Client; import com.rebotted.game.players.Client;
public class NonCombatSpells { public class NonCombatSpells {
public static void teleportObelisk(Client c, int x, int y, int height) { public static void teleportObelisk(Client c, int x, int y, int height) {
if (System.currentTimeMillis() - c.teleBlockDelay < c.teleBlockLength) { if (System.currentTimeMillis() - c.teleBlockDelay < c.teleBlockLength) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You are teleblocked and can't teleport."); "You are teleblocked and can't teleport.");
return; return;
} }
if (!c.isDead && !c.isTeleporting) { if (!c.isDead && !c.isTeleporting) {
c.stopMovement(); c.stopMovement();
c.getPlayerAssistant().removeAllWindows(); c.getPacketSender().closeAllWindows();
c.npcIndex = 0; c.npcIndex = 0;
c.playerIndex = 0; c.playerIndex = 0;
c.faceNpc(0); c.faceNpc(0);
@@ -1,20 +1,20 @@
package redone.game.content.combat.melee; package com.rebotted.game.content.combat.melee;
import redone.Constants; import com.rebotted.GameConstants;
import redone.game.content.combat.magic.MagicData; import com.rebotted.game.content.combat.magic.MagicData;
import redone.game.items.ItemAssistant; import com.rebotted.game.items.ItemAssistant;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class MeleeData { public class MeleeData {
public static boolean fullVoidMelee(Client c) { public static boolean fullVoidMelee(Player c) {
return c.playerEquipment[c.playerHat] == 11665 return c.playerEquipment[c.playerHat] == 11665
&& c.playerEquipment[c.playerLegs] == 8840 && c.playerEquipment[c.playerLegs] == 8840
&& c.playerEquipment[c.playerChest] == 8839 && c.playerEquipment[c.playerChest] == 8839
&& c.playerEquipment[c.playerHands] == 8842; && c.playerEquipment[c.playerHands] == 8842;
} }
public static int calculateMeleeAttack(Client c) { public static int calculateMeleeAttack(Player c) {
int attackLevel = c.playerLevel[0]; int attackLevel = c.playerLevel[0];
// 2, 5, 11, 18, 19 // 2, 5, 11, 18, 19
if (c.getPrayer().prayerActive[2]) { if (c.getPrayer().prayerActive[2]) {
@@ -43,7 +43,7 @@ public class MeleeData {
return (int) (attackLevel + attackLevel * 0.15 + (i + i * 0.05)); return (int) (attackLevel + attackLevel * 0.15 + (i + i * 0.05));
} }
public static int bestMeleeAtk(Client c) { public static int bestMeleeAtk(Player c) {
if (c.playerBonus[0] > c.playerBonus[1] if (c.playerBonus[0] > c.playerBonus[1]
&& c.playerBonus[0] > c.playerBonus[2]) { && c.playerBonus[0] > c.playerBonus[2]) {
return 0; return 0;
@@ -56,7 +56,7 @@ public class MeleeData {
|| c.playerBonus[2] <= c.playerBonus[0] ? 0 : 2; || c.playerBonus[2] <= c.playerBonus[0] ? 0 : 2;
} }
public static int calculateMeleeDefence(Client c) { public static int calculateMeleeDefence(Player c) {
int defenceLevel = c.playerLevel[1]; int defenceLevel = c.playerLevel[1];
int i = c.playerBonus[bestMeleeDef(c)]; int i = c.playerBonus[bestMeleeDef(c)];
if (c.getPrayer().prayerActive[0]) { if (c.getPrayer().prayerActive[0]) {
@@ -73,7 +73,7 @@ public class MeleeData {
return (int) (defenceLevel + defenceLevel * 0.15 + (i + i * 0.05)); return (int) (defenceLevel + defenceLevel * 0.15 + (i + i * 0.05));
} }
public static int bestMeleeDef(Client c) { public static int bestMeleeDef(Player c) {
if (c.playerBonus[5] > c.playerBonus[6] if (c.playerBonus[5] > c.playerBonus[6]
&& c.playerBonus[5] > c.playerBonus[7]) { && c.playerBonus[5] > c.playerBonus[7]) {
return 5; return 5;
@@ -90,8 +90,8 @@ public class MeleeData {
* Weapon and magic attack speed! * Weapon and magic attack speed!
**/ **/
public static int getAttackDelay(Client c) { public static int getAttackDelay(Player c) {
String s = ItemAssistant.getItemName(c.playerEquipment[Constants.WEAPON]).toLowerCase(); String s = ItemAssistant.getItemName(c.playerEquipment[GameConstants.WEAPON]).toLowerCase();
if (c.usingMagic) { if (c.usingMagic) {
switch (MagicData.MAGIC_SPELLS[c.spellId][0]) { switch (MagicData.MAGIC_SPELLS[c.spellId][0]) {
case 12871: // ice blitz case 12871: // ice blitz
@@ -211,9 +211,9 @@ public class MeleeData {
* Weapon stand, walk, run, etc emotes * Weapon stand, walk, run, etc emotes
**/ **/
public static void getPlayerAnimIndex(Client c) { public static void getPlayerAnimIndex(Player c) {
String weaponName = ItemAssistant.getItemName( String weaponName = ItemAssistant.getItemName(
c.playerEquipment[Constants.WEAPON]).toLowerCase(); c.playerEquipment[GameConstants.WEAPON]).toLowerCase();
c.playerStandIndex = 0x328; c.playerStandIndex = 0x328;
c.playerTurnIndex = 0x337; c.playerTurnIndex = 0x337;
c.playerWalkIndex = 0x333; c.playerWalkIndex = 0x333;
@@ -306,9 +306,9 @@ public class MeleeData {
* Weapon emotes * Weapon emotes
**/ **/
public static int getWeaponAnimation(Client c) { public static int getWeaponAnimation(Player c) {
String weaponName = ItemAssistant.getItemName( String weaponName = ItemAssistant.getItemName(
c.playerEquipment[Constants.WEAPON]).toLowerCase(); c.playerEquipment[GameConstants.WEAPON]).toLowerCase();
if (c.playerEquipment[c.playerWeapon] <= 0) { if (c.playerEquipment[c.playerWeapon] <= 0) {
switch (c.fightMode) { switch (c.fightMode) {
case 0: case 0:
@@ -394,7 +394,7 @@ public class MeleeData {
/** /**
* Block emotes * Block emotes
*/ */
public static int getBlockEmote(Client c) { public static int getBlockEmote(Player c) {
if (c.playerEquipment[c.playerShield] >= 8844 if (c.playerEquipment[c.playerShield] >= 8844
&& c.playerEquipment[c.playerShield] <= 8850) { && c.playerEquipment[c.playerShield] <= 8850) {
return 4177; return 4177;
@@ -423,9 +423,9 @@ public class MeleeData {
/** /**
* How long it takes to hit your enemy * How long it takes to hit your enemy
**/ **/
public static int getHitDelay(Client c) { public static int getHitDelay(Player c) {
String weaponName = ItemAssistant.getItemName( String weaponName = ItemAssistant.getItemName(
c.playerEquipment[Constants.WEAPON]).toLowerCase(); c.playerEquipment[GameConstants.WEAPON]).toLowerCase();
if (c.usingMagic) { if (c.usingMagic) {
switch (MagicData.MAGIC_SPELLS[c.spellId][0]) { switch (MagicData.MAGIC_SPELLS[c.spellId][0]) {
case 12891: case 12891:
@@ -1,10 +1,10 @@
package redone.game.content.combat.melee; package com.rebotted.game.content.combat.melee;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class MeleeMaxHit { public class MeleeMaxHit {
public static int calculateMeleeMaxHit(Client c) { public static int calculateMeleeMaxHit(Player c) {
double maxHit = 0; double maxHit = 0;
int strBonus = c.playerBonus[10]; int strBonus = c.playerBonus[10];
int strength = c.playerLevel[2]; int strength = c.playerLevel[2];
@@ -1,6 +1,6 @@
package redone.game.content.combat.melee; package com.rebotted.game.content.combat.melee;
import redone.game.players.Client; import com.rebotted.game.players.Client;
/** /**
* Handles adding and removing hosts to the players array list. * Handles adding and removing hosts to the players array list.
@@ -1,8 +1,8 @@
package redone.game.content.combat.npcs; package com.rebotted.game.content.combat.npcs;
import redone.game.content.minigames.FightCaves; import com.rebotted.game.content.minigames.FightCaves;
import redone.game.content.minigames.PestControl; import com.rebotted.game.content.minigames.PestControl;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
public class NpcAggressive { public class NpcAggressive {
@@ -1,17 +1,17 @@
package redone.game.content.combat.npcs; package com.rebotted.game.content.combat.npcs;
import redone.Constants; import com.rebotted.GameConstants;
import redone.game.content.combat.CombatAssistant; import com.rebotted.game.content.combat.CombatAssistant;
import redone.game.content.combat.melee.MeleeData; import com.rebotted.game.content.combat.melee.MeleeData;
import redone.game.content.minigames.FightCaves; import com.rebotted.game.content.minigames.FightCaves;
import redone.game.content.music.sound.CombatSounds; import com.rebotted.game.content.music.sound.CombatSounds;
import redone.game.content.music.sound.SoundList; import com.rebotted.game.content.music.sound.SoundList;
import redone.game.npcs.NpcData; import com.rebotted.game.npcs.NpcData;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import redone.game.players.Player; import com.rebotted.game.players.Player;
import redone.game.players.PlayerHandler; import com.rebotted.game.players.PlayerHandler;
import redone.util.Misc; import com.rebotted.util.Misc;
public class NpcCombat { public class NpcCombat {
@@ -93,7 +93,7 @@ public class NpcCombat {
} }
} }
public static void attackPlayer(Client c, int i) { public static void attackPlayer(Player c, int i) {
if (NpcHandler.npcs[i] != null) { if (NpcHandler.npcs[i] != null) {
if (NpcHandler.npcs[i].isDead) { if (NpcHandler.npcs[i].isDead) {
return; return;
@@ -101,9 +101,6 @@ public class NpcCombat {
if (c.npcCanAttack == false) { if (c.npcCanAttack == false) {
return; return;
} }
if (c.isBotting == true) {
return;
}
if (NpcHandler.npcs[i].inLesserNpc()) { if (NpcHandler.npcs[i].inLesserNpc()) {
return; return;
} }
@@ -184,10 +181,10 @@ public class NpcCombat {
NpcHandler.npcs[i].attackTimer = NpcData.getNpcDelay(i); NpcHandler.npcs[i].attackTimer = NpcData.getNpcDelay(i);
NpcHandler.npcs[i].hitDelayTimer = NpcData.getHitDelay(i); NpcHandler.npcs[i].hitDelayTimer = NpcData.getHitDelay(i);
NpcHandler.npcs[i].attackType = 0; NpcHandler.npcs[i].attackType = 0;
if (Constants.combatSounds if (GameConstants.COMBAT_SOUNDS
&& NpcHandler.npcs[i].npcType < 3177 && NpcHandler.npcs[i].npcType < 3177
&& NpcHandler.npcs[i].npcType > 3180) { && NpcHandler.npcs[i].npcType > 3180) {
c.getActionSender() c.getPacketSender()
.sendSound( .sendSound(
CombatSounds CombatSounds
.getNpcAttackSounds(NpcHandler.npcs[i].npcType), .getNpcAttackSounds(NpcHandler.npcs[i].npcType),
@@ -204,10 +201,10 @@ public class NpcCombat {
if (NpcHandler.multiAttacks(i)) { if (NpcHandler.multiAttacks(i)) {
multiAttackGfx(i, NpcHandler.npcs[i].projectileId); multiAttackGfx(i, NpcHandler.npcs[i].projectileId);
NpcData.startAnimation(NpcEmotes.getAttackEmote(i), i); NpcData.startAnimation(NpcEmotes.getAttackEmote(i), i);
if (Constants.combatSounds if (GameConstants.COMBAT_SOUNDS
&& NpcHandler.npcs[i].npcType < 3177 && NpcHandler.npcs[i].npcType < 3177
&& NpcHandler.npcs[i].npcType > 3180) { && NpcHandler.npcs[i].npcType > 3180) {
c.getActionSender() c.getPacketSender()
.sendSound( .sendSound(
CombatSounds CombatSounds
.getNpcAttackSounds(NpcHandler.npcs[i].npcType), .getNpcAttackSounds(NpcHandler.npcs[i].npcType),
@@ -243,16 +240,16 @@ public class NpcCombat {
c.singleCombatDelay2 = System.currentTimeMillis(); c.singleCombatDelay2 = System.currentTimeMillis();
NpcHandler.npcs[i].oldIndex = c.playerId; NpcHandler.npcs[i].oldIndex = c.playerId;
NpcData.startAnimation(NpcEmotes.getAttackEmote(i), i); NpcData.startAnimation(NpcEmotes.getAttackEmote(i), i);
if (Constants.combatSounds if (GameConstants.COMBAT_SOUNDS
&& NpcHandler.npcs[i].npcType < 3177 && NpcHandler.npcs[i].npcType < 3177
&& NpcHandler.npcs[i].npcType > 3180) { && NpcHandler.npcs[i].npcType > 3180) {
c.getActionSender() c.getPacketSender()
.sendSound( .sendSound(
CombatSounds CombatSounds
.getNpcAttackSounds(NpcHandler.npcs[i].npcType), .getNpcAttackSounds(NpcHandler.npcs[i].npcType),
100, 0); 100, 0);
} }
c.getPlayerAssistant().removeAllWindows(); c.getPacketSender().closeAllWindows();
} }
} }
} }
@@ -276,7 +273,7 @@ public class NpcCombat {
} }
} }
public static void loadSpell(Client c, int i) { public static void loadSpell(Player c, int i) {
if (NpcHandler.npcs[i].npcType > 2462 && NpcHandler.npcs[i].npcType < 2469 || NpcHandler.npcs[i].npcType > 3751 && NpcHandler.npcs[i].npcType < 3762) { if (NpcHandler.npcs[i].npcType > 2462 && NpcHandler.npcs[i].npcType < 2469 || NpcHandler.npcs[i].npcType > 3751 && NpcHandler.npcs[i].npcType < 3762) {
NpcHandler.npcs[i].attackType = 2; NpcHandler.npcs[i].attackType = 2;
} }
@@ -567,8 +564,8 @@ public class NpcCombat {
damage = 0; damage = 0;
} }
if (NpcData.cantKillYou(NpcHandler.npcs[i].npcType)) { if (NpcData.cantKillYou(NpcHandler.npcs[i].npcType)) {
if (damage >= c.playerLevel[Constants.HITPOINTS]) { if (damage >= c.playerLevel[GameConstants.HITPOINTS]) {
damage = c.playerLevel[Constants.HITPOINTS] - 1; damage = c.playerLevel[GameConstants.HITPOINTS] - 1;
} }
} }
if (c.getPrayer().prayerActive[18] if (c.getPrayer().prayerActive[18]
@@ -605,8 +602,8 @@ public class NpcCombat {
damage = 0; damage = 0;
} }
if (NpcData.cantKillYou(NpcHandler.npcs[i].npcType)) { if (NpcData.cantKillYou(NpcHandler.npcs[i].npcType)) {
if (damage >= c.playerLevel[Constants.HITPOINTS]) { if (damage >= c.playerLevel[GameConstants.HITPOINTS]) {
damage = c.playerLevel[Constants.HITPOINTS] - 1; damage = c.playerLevel[GameConstants.HITPOINTS] - 1;
} }
} }
if (c.getPrayer().prayerActive[17]) { // protect from range if (c.getPrayer().prayerActive[17]) { // protect from range
@@ -626,8 +623,8 @@ public class NpcCombat {
magicFailed = true; magicFailed = true;
} }
if (NpcData.cantKillYou(NpcHandler.npcs[i].npcType)) { if (NpcData.cantKillYou(NpcHandler.npcs[i].npcType)) {
if (damage >= c.playerLevel[Constants.HITPOINTS]) { if (damage >= c.playerLevel[GameConstants.HITPOINTS]) {
damage = c.playerLevel[Constants.HITPOINTS] - 1; damage = c.playerLevel[GameConstants.HITPOINTS] - 1;
} }
} }
if (c.getPrayer().prayerActive[16]) { // protect from magic if (c.getPrayer().prayerActive[16]) { // protect from magic
@@ -641,7 +638,7 @@ public class NpcCombat {
c.gfx100(NpcHandler.npcs[i].endGfx); c.gfx100(NpcHandler.npcs[i].endGfx);
} else { } else {
c.gfx100(85); c.gfx100(85);
c.getActionSender().sendSound(SoundList.MAGE_FAIL, c.getPacketSender().sendSound(SoundList.MAGE_FAIL,
100, 0); 100, 0);
} }
} }
@@ -651,12 +648,12 @@ public class NpcCombat {
switch (anti) { switch (anti) {
case 0:// has no shield case 0:// has no shield
damage = Misc.random(45) + 10; damage = Misc.random(45) + 10;
c.getActionSender().sendMessage("You are badly burnt by the dragon fire!"); c.getPacketSender().sendMessage("You are badly burnt by the dragon fire!");
break; break;
case 1:// has a shield case 1:// has a shield
if (c.getItemAssistant().playerHasEquipped(5, 1540)) { if (c.getItemAssistant().playerHasEquipped(5, 1540)) {
damage = Misc.random(4) + 1; damage = Misc.random(4) + 1;
c.getActionSender().sendMessage("Your shield protects you from the fire."); c.getPacketSender().sendMessage("Your shield protects you from the fire.");
} }
break; break;
case 2:// melee case 2:// melee
@@ -1,10 +1,10 @@
package redone.game.content.combat.npcs; package com.rebotted.game.content.combat.npcs;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
/** /**
* Npc Emotes * Npc Emotes
* @author Andrew (I'm A Boss on Rune-Server and Mr Extremez on Mopar & Runelocus) * @author Andrew (Mr Extremez)
*/ */
public enum NpcEmotes { public enum NpcEmotes {
@@ -0,0 +1,287 @@
package com.rebotted.game.content.combat.prayer;
import com.rebotted.game.content.music.sound.SoundList;
import com.rebotted.game.players.Player;
public class ActivatePrayers {
public static void activatePrayer(Player player, int i) {
if (player.duelRule[7]) {
for (int p = 0; p < player.getPrayer().PRAYER.length; p++) { // reset
// prayer
// glows
player.getPrayer().prayerActive[p] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[p],
0);
}
player.getPacketSender().sendMessage(
"Prayer has been disabled in this duel!");
return;
}
if (i == 24 && player.playerLevel[1] < 65) {
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[i], 0);
player.getPacketSender().sendMessage(
"You may not use this prayer yet.");
return;
}
if (i == 25 && player.playerLevel[1] < 70) {
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[i], 0);
player.getPacketSender().sendMessage(
"You may not use this prayer yet.");
return;
}
int[] defencePrayer = { 0, 5, 13, 24, 25 };
int[] strengthPrayer = { 1, 6, 14, 24, 25 };
int[] attackPrayer = { 2, 7, 15, 24, 25 };
int[] rangePrayer = { 3, 11, 19 };
int[] magePrayer = { 4, 12, 20 };
if (player.playerLevel[5] > 0) {
if (player.getPlayerAssistant().getLevelForXP(player.playerXP[5]) >= player
.getPrayer().PRAYER_LEVEL_REQUIRED[i]) {
boolean headIcon = false;
switch (i) {
case 0:
case 5:
case 13:
if (player.getPrayer().prayerActive[i] == false) {
for (int j = 0; j < defencePrayer.length; j++) {
if (defencePrayer[j] != i) {
player.getPrayer().prayerActive[defencePrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[defencePrayer[j]], 0);
}
}
}
break;
case 1:
case 6:
case 14:
if (player.getPrayer().prayerActive[i] == false) {
for (int j = 0; j < strengthPrayer.length; j++) {
if (strengthPrayer[j] != i) {
player.getPrayer().prayerActive[strengthPrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[strengthPrayer[j]], 0);
}
}
for (int j = 0; j < rangePrayer.length; j++) {
if (rangePrayer[j] != i) {
player.getPrayer().prayerActive[rangePrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[rangePrayer[j]],0);
}
}
for (int j = 0; j < magePrayer.length; j++) {
if (magePrayer[j] != i) {
player.getPrayer().prayerActive[magePrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[magePrayer[j]], 0);
}
}
}
break;
case 2:
case 7:
case 15:
if (player.getPrayer().prayerActive[i] == false) {
for (int j = 0; j < attackPrayer.length; j++) {
if (attackPrayer[j] != i) {
player.getPrayer().prayerActive[attackPrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[attackPrayer[j]], 0);
}
}
for (int j = 0; j < rangePrayer.length; j++) {
if (rangePrayer[j] != i) {
player.getPrayer().prayerActive[rangePrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[rangePrayer[j]], 0);
}
}
for (int j = 0; j < magePrayer.length; j++) {
if (magePrayer[j] != i) {
player.getPrayer().prayerActive[magePrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[magePrayer[j]], 0);
}
}
}
break;
case 3:// range prays
case 11:
case 19:
if (player.getPrayer().prayerActive[i] == false) {
for (int j = 0; j < attackPrayer.length; j++) {
if (attackPrayer[j] != i) {
player.getPrayer().prayerActive[attackPrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[attackPrayer[j]], 0);
}
}
for (int j = 0; j < strengthPrayer.length; j++) {
if (strengthPrayer[j] != i) {
player.getPrayer().prayerActive[strengthPrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[strengthPrayer[j]], 0);
}
}
for (int j = 0; j < rangePrayer.length; j++) {
if (rangePrayer[j] != i) {
player.getPrayer().prayerActive[rangePrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[rangePrayer[j]], 0);
}
}
for (int j = 0; j < magePrayer.length; j++) {
if (magePrayer[j] != i) {
player.getPrayer().prayerActive[magePrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[magePrayer[j]], 0);
}
}
}
break;
case 4:
case 12:
case 20:
if (player.getPrayer().prayerActive[i] == false) {
for (int j = 0; j < attackPrayer.length; j++) {
if (attackPrayer[j] != i) {
player.getPrayer().prayerActive[attackPrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[attackPrayer[j]], 0);
}
}
for (int j = 0; j < strengthPrayer.length; j++) {
if (strengthPrayer[j] != i) {
player.getPrayer().prayerActive[strengthPrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[strengthPrayer[j]], 0);
}
}
for (int j = 0; j < rangePrayer.length; j++) {
if (rangePrayer[j] != i) {
player.getPrayer().prayerActive[rangePrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[rangePrayer[j]], 0);
}
}
for (int j = 0; j < magePrayer.length; j++) {
if (magePrayer[j] != i) {
player.getPrayer().prayerActive[magePrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[magePrayer[j]], 0);
}
}
}
break;
case 10:
player.lastProtItem = System.currentTimeMillis();
break;
case 16:
case 17:
case 18:
if (System.currentTimeMillis()
- player.getPrayer().stopPrayerDelay < 5000) {
player.getPacketSender()
.sendMessage(
"You have been injured and can't use this prayer!");
player.getPacketSender().sendConfig(
player.getPrayer().PRAYER_GLOW[16], 0);
player.getPacketSender().sendConfig(
player.getPrayer().PRAYER_GLOW[17], 0);
player.getPacketSender().sendConfig(
player.getPrayer().PRAYER_GLOW[18], 0);
return;
}
if (i == 16) {
player.protMageDelay = System.currentTimeMillis();
} else if (i == 17) {
player.protRangeDelay = System.currentTimeMillis();
} else if (i == 18) {
player.protMeleeDelay = System.currentTimeMillis();
}
case 21:
case 22:
case 23:
headIcon = true;
for (int p = 16; p < 24; p++) {
if (i != p && p != 19 && p != 20) {
player.getPrayer().prayerActive[p] = false;
player.getPacketSender().sendConfig(
player.getPrayer().PRAYER_GLOW[p], 0);
}
}
break;
case 24:
case 25:
if (player.getPrayer().prayerActive[i] == false) {
for (int j = 0; j < attackPrayer.length; j++) {
if (attackPrayer[j] != i) {
player.getPrayer().prayerActive[attackPrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[attackPrayer[j]], 0);
}
}
for (int j = 0; j < strengthPrayer.length; j++) {
if (strengthPrayer[j] != i) {
player.getPrayer().prayerActive[strengthPrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[strengthPrayer[j]], 0);
}
}
for (int j = 0; j < rangePrayer.length; j++) {
if (rangePrayer[j] != i) {
player.getPrayer().prayerActive[rangePrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[rangePrayer[j]], 0);
}
}
for (int j = 0; j < magePrayer.length; j++) {
if (magePrayer[j] != i) {
player.getPrayer().prayerActive[magePrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[magePrayer[j]], 0);
}
}
for (int j = 0; j < defencePrayer.length; j++) {
if (defencePrayer[j] != i) {
player.getPrayer().prayerActive[defencePrayer[j]] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[defencePrayer[j]], 0);
}
}
}
break;
}
if (!headIcon) {
if (player.getPrayer().prayerActive[i] == false) {
player.getPrayer().prayerActive[i] = true;
player.getPacketSender().sendConfig(
player.getPrayer().PRAYER_GLOW[i], 1);
} else {
player.getPrayer().prayerActive[i] = false;
player.getPacketSender().sendConfig(
player.getPrayer().PRAYER_GLOW[i], 0);
}
} else {
if (player.getPrayer().prayerActive[i] == false) {
player.getPrayer().prayerActive[i] = true;
player.getPacketSender().sendConfig(
player.getPrayer().PRAYER_GLOW[i], 1);
player.headIcon = player.getPrayer().PRAYER_HEAD_ICONS[i];
player.getPlayerAssistant().requestUpdates();
} else {
player.getPrayer().prayerActive[i] = false;
player.getPacketSender().sendConfig(
player.getPrayer().PRAYER_GLOW[i], 0);
player.headIcon = -1;
player.getPlayerAssistant().requestUpdates();
}
}
} else {
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[i],
0);
player.getPacketSender().sendFrame126(
"You need a @blu@Prayer level of "
+ player.getPrayer().PRAYER_LEVEL_REQUIRED[i]
+ " to use " + player.getPrayer().PRAYER_NAME[i]
+ ".", 357);
player.getPacketSender().sendFrame126("Click here to continue", 358);
player.getPacketSender().sendChatInterface(356);
}
} else {
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[i], 0);
player.getPacketSender().sendMessage("You have run out of prayer points!");
player.getPacketSender().sendSound(SoundList.NO_PRAY, 100, 0);
}
}
}
@@ -1,4 +1,4 @@
package redone.game.content.combat.prayer; package com.rebotted.game.content.combat.prayer;
public class PrayerData { public class PrayerData {
@@ -0,0 +1,49 @@
package com.rebotted.game.content.combat.prayer;
import com.rebotted.game.players.Player;
public class PrayerDrain {
public static void handlePrayerDrain(Player player) {
player.getPrayer().usingPrayer = false;
double toRemove = 0.0;
for (int j = 0; j < PrayerData.prayerData.length; j++) {
if (player.getPrayer().prayerActive[j]) {
toRemove += PrayerData.prayerData[j] / 20;
player.getPrayer().usingPrayer = true;
}
}
if (toRemove > 0) {
toRemove /= 1 + 0.035 * player.playerBonus[11];
}
PrayerData.prayerPoint -= toRemove;
if (PrayerData.prayerPoint <= 0) {
PrayerData.prayerPoint = 1.0 + PrayerData.prayerPoint;
reducePrayerLevel(player);
}
}
public static void reducePrayerLevel(Player c) {
if (c.playerLevel[5] - 1 > 0) {
c.playerLevel[5] -= 1;
} else {
c.getPacketSender().sendMessage(
"You have run out of prayer points!");
c.playerLevel[5] = 0;
resetPrayers(c);
c.getPrayer().prayerId = -1;
}
c.getPlayerAssistant().refreshSkill(5);
}
public static void resetPrayers(Player player) {
for (int i = 0; i < player.getPrayer().prayerActive.length; i++) {
player.getPrayer().prayerActive[i] = false;
player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[i], 0);
}
player.headIcon = -1;
player.getPlayerAssistant().requestUpdates();
}
}
@@ -1,28 +1,29 @@
package redone.game.content.combat.range; package com.rebotted.game.content.combat.range;
import redone.Constants; import com.rebotted.GameConstants;
import redone.Server; import com.rebotted.GameEngine;
import redone.event.CycleEvent; import com.rebotted.event.CycleEvent;
import redone.event.CycleEventContainer; import com.rebotted.event.CycleEventContainer;
import redone.event.CycleEventHandler; import com.rebotted.event.CycleEventHandler;
import redone.game.npcs.Npc; import com.rebotted.game.npcs.Npc;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import redone.game.players.PlayerHandler; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.game.players.PlayerHandler;
import com.rebotted.util.Misc;
/** /**
* Cannon * Cannon
* @author Andrew * @author Andrew (Mr Extremez)
*/ */
public class DwarfCannon { public class DwarfCannon {
public DwarfCannon(Client player) { public DwarfCannon(Player player2) {
this.player = player; this.player = player2;
} }
private Client player; private Player player;
public final int[] ITEM_PARTS = {6, 8, 10, 12}; public final int[] ITEM_PARTS = {6, 8, 10, 12};
@@ -46,8 +47,6 @@ public class DwarfCannon {
private final int maxDistance = 20; private final int maxDistance = 20;
private final int expRate = 50;
private int totalRotations = 0; private int totalRotations = 0;
private boolean justClicked = false; private boolean justClicked = false;
@@ -57,25 +56,25 @@ public class DwarfCannon {
return; return;
} }
if (noSetUpArea()) { if (noSetUpArea()) {
player.getActionSender().sendMessage("You are not allowed to set up a cannon here!"); player.getPacketSender().sendMessage("You are not allowed to set up a cannon here!");
return; return;
} }
if (hasCannon()) { if (hasCannon()) {
player.getActionSender().sendMessage("You already have a cannon placed!"); player.getPacketSender().sendMessage("You already have a cannon placed!");
return; return;
} }
if (nearCannon()) { if (nearCannon()) {
player.getActionSender().sendMessage("You must be farther away from an existing cannon to set a new one up!"); player.getPacketSender().sendMessage("You must be farther away from an existing cannon to set a new one up!");
return; return;
} }
if (!canSetUp()) { if (!canSetUp()) {
player.getActionSender().sendMessage("You need all the parts of the cannon to set a cannon up."); player.getPacketSender().sendMessage("You need all the parts of the cannon to set a cannon up.");
return; return;
} }
for (int i = 0; i < 50; i++) { for (int i = 0; i < 50; i++) {
if (Server.cannonsX[i] == 0 && Server.cannonsY[i] == 0) { if (GameEngine.cannonsX[i] == 0 && GameEngine.cannonsY[i] == 0) {
Server.cannonsX[i] = player.absX; GameEngine.cannonsX[i] = player.absX;
Server.cannonsY[i] = player.absY; GameEngine.cannonsY[i] = player.absY;
break; break;
} }
} }
@@ -89,7 +88,7 @@ public class DwarfCannon {
return; return;
} }
if (!canSetUp()) { if (!canSetUp()) {
player.getActionSender().sendMessage("You need all the parts of the cannon to set a cannon up."); player.getPacketSender().sendMessage("You need all the parts of the cannon to set a cannon up.");
container.stop(); container.stop();
return; return;
} }
@@ -121,7 +120,7 @@ public class DwarfCannon {
public void loginCheck() { public void loginCheck() {
if (needsCannon()) { if (needsCannon()) {
player.getActionSender().sendMessage("@red@You can collect your cannon at home from Nulodion."); player.getPacketSender().sendMessage("@red@You can collect your cannon at home from Nulodion.");
} }
} }
@@ -163,8 +162,8 @@ public class DwarfCannon {
} }
public boolean nearCannon() { public boolean nearCannon() {
for(int i = 0; i < Server.cannonsX.length; i++) { for(int i = 0; i < GameEngine.cannonsX.length; i++) {
if ((player.absX >= Server.cannonsX[i] - 1) && (player.absX <= Server.cannonsX[i] + 1) && (player.absY >= Server.cannonsY[i] - 2) && (player.absY <= Server.cannonsY[i] + 1)) { if ((player.absX >= GameEngine.cannonsX[i] - 1) && (player.absX <= GameEngine.cannonsX[i] + 1) && (player.absY >= GameEngine.cannonsY[i] - 2) && (player.absY <= GameEngine.cannonsY[i] + 1)) {
return true; return true;
} }
} }
@@ -172,9 +171,9 @@ public class DwarfCannon {
} }
public void loadCannons() { public void loadCannons() {
for(int i = 0; i < Server.cannonsX.length; i++) { for(int i = 0; i < GameEngine.cannonsX.length; i++) {
if (Server.cannonsX[i] != 0) { if (GameEngine.cannonsX[i] != 0) {
player.getActionSender().checkObjectSpawn(6, Server.cannonsX[i], Server.cannonsY[i], 0, 10); player.getPacketSender().checkObjectSpawn(6, GameEngine.cannonsX[i], GameEngine.cannonsY[i], 0, 10);
} }
} }
} }
@@ -182,7 +181,7 @@ public class DwarfCannon {
public void loadCannon(int x, int y) { public void loadCannon(int x, int y) {
int cballs = getBalls(); int cballs = getBalls();
if (!myCannon(x, y)) { if (!myCannon(x, y)) {
player.getActionSender().sendMessage("You can't load somebody else's cannon!"); player.getPacketSender().sendMessage("You can't load somebody else's cannon!");
return; return;
} }
if (myBalls <= 29) { if (myBalls <= 29) {
@@ -190,36 +189,36 @@ public class DwarfCannon {
player.getItemAssistant().deleteItem(ballsID, player.getItemAssistant().getItemSlot(ballsID), amount); player.getItemAssistant().deleteItem(ballsID, player.getItemAssistant().getItemSlot(ballsID), amount);
myBalls = cballs; myBalls = cballs;
if (player.getItemAssistant().playerHasItem(ballsID)) { if (player.getItemAssistant().playerHasItem(ballsID)) {
player.getActionSender().sendMessage(amount > 1 ? "You load the cannon with " + amount + " cannonballs." : "You load the cannon with 1 cannonball."); player.getPacketSender().sendMessage(amount > 1 ? "You load the cannon with " + amount + " cannonballs." : "You load the cannon with 1 cannonball.");
} else { } else {
player.getActionSender().sendMessage("You have no cannonballs to load into the cannon."); player.getPacketSender().sendMessage("You have no cannonballs to load into the cannon.");
} }
} }
} }
public void clickCannon(int x, int y) { public void clickCannon(int x, int y) {
if (!myCannon(x, y)) { if (!myCannon(x, y)) {
player.getActionSender().sendMessage("You can't fire somebody else's cannon!"); player.getPacketSender().sendMessage("You can't fire somebody else's cannon!");
return; return;
} }
if (myBalls == 0) { if (myBalls == 0) {
player.getActionSender().sendMessage("Your cannon has run out of cannonballs."); player.getPacketSender().sendMessage("Your cannon has run out of cannonballs.");
return; return;
} }
if (myBalls >= 1 && rotating == false) { if (myBalls >= 1 && rotating == false) {
shoot(); shoot();
} else if (myBalls >= 1 && rotating == true) { } else if (myBalls >= 1 && rotating == true) {
player.getActionSender().sendMessage("Your cannon is already shooting."); player.getPacketSender().sendMessage("Your cannon is already shooting.");
} }
} }
public void handleDisconnect() { public void handleDisconnect() {
removeObject(player.cannonX, player.cannonY); removeObject(player.cannonX, player.cannonY);
for(int i = 0; i < Server.cannonsX.length; i++) { for(int i = 0; i < GameEngine.cannonsX.length; i++) {
if (Server.cannonsX[i] == player.cannonX && Server.cannonsY[i] == player.cannonY) { if (GameEngine.cannonsX[i] == player.cannonX && GameEngine.cannonsY[i] == player.cannonY) {
Server.cannonsX[i] = 0; GameEngine.cannonsX[i] = 0;
Server.cannonsY[i] = 0; GameEngine.cannonsY[i] = 0;
Server.cannonsO[i] = null; GameEngine.cannonsO[i] = null;
} }
} }
} }
@@ -228,11 +227,11 @@ public class DwarfCannon {
if (hasCannon()) { if (hasCannon()) {
player.lostCannon = true; player.lostCannon = true;
removeObject(player.cannonX, player.cannonY); removeObject(player.cannonX, player.cannonY);
for(int i = 0; i < Server.cannonsX.length; i++) { for(int i = 0; i < GameEngine.cannonsX.length; i++) {
if (Server.cannonsX[i] == player.cannonX && Server.cannonsY[i] == player.cannonY) { if (GameEngine.cannonsX[i] == player.cannonX && GameEngine.cannonsY[i] == player.cannonY) {
Server.cannonsX[i] = 0; GameEngine.cannonsX[i] = 0;
Server.cannonsY[i] = 0; GameEngine.cannonsY[i] = 0;
Server.cannonsO[i] = null; GameEngine.cannonsO[i] = null;
} }
} }
player.cannonX = 0; player.cannonX = 0;
@@ -304,10 +303,10 @@ public class DwarfCannon {
} }
public void removeCannon(int x, int y) { public void removeCannon(int x, int y) {
for (int i = 0; i < Server.cannonsX.length; i++) { for (int i = 0; i < GameEngine.cannonsX.length; i++) {
if (Server.cannonsX[i] == x && Server.cannonsY[i] == y) { if (GameEngine.cannonsX[i] == x && GameEngine.cannonsY[i] == y) {
Server.cannonsX[i] = 0; GameEngine.cannonsX[i] = 0;
Server.cannonsY[i] = 0; GameEngine.cannonsY[i] = 0;
break; break;
} }
} }
@@ -315,7 +314,7 @@ public class DwarfCannon {
public void pickup(int x, int y) { public void pickup(int x, int y) {
if (!myCannon(x, y)) { if (!myCannon(x, y)) {
player.getActionSender().sendMessage("You can't pick up somebody else's cannon!"); player.getPacketSender().sendMessage("You can't pick up somebody else's cannon!");
return; return;
} }
if (rotating == true) { if (rotating == true) {
@@ -323,14 +322,14 @@ public class DwarfCannon {
} }
if (player.getItemAssistant().freeSlots() > 3) { if (player.getItemAssistant().freeSlots() > 3) {
player.startAnimation(827); player.startAnimation(827);
player.getActionSender().sendMessage("You pick up the cannon. It's really heavy."); player.getPacketSender().sendMessage("You pick up the cannon. It's really heavy.");
removeCannon(player.cannonX, player.cannonY); removeCannon(player.cannonX, player.cannonY);
player.getItemAssistant().addItem(ITEM_PARTS[0], 1); player.getItemAssistant().addItem(ITEM_PARTS[0], 1);
player.getItemAssistant().addItem(ITEM_PARTS[1], 1); player.getItemAssistant().addItem(ITEM_PARTS[1], 1);
player.getItemAssistant().addItem(ITEM_PARTS[2], 1); player.getItemAssistant().addItem(ITEM_PARTS[2], 1);
player.getItemAssistant().addItem(ITEM_PARTS[3], 1); player.getItemAssistant().addItem(ITEM_PARTS[3], 1);
} else { } else {
player.getActionSender().sendMessage("You don't have enough free inventory slots to do that."); player.getPacketSender().sendMessage("You don't have enough free inventory slots to do that.");
} }
if (myBalls > 0) { if (myBalls > 0) {
player.getItemAssistant().addItem(ballsID, myBalls); player.getItemAssistant().addItem(ballsID, myBalls);
@@ -347,7 +346,7 @@ public class DwarfCannon {
for (int j = 0; j < PlayerHandler.players.length; j++) { for (int j = 0; j < PlayerHandler.players.length; j++) {
if (PlayerHandler.players[j] != null) { if (PlayerHandler.players[j] != null) {
Client a = (Client)PlayerHandler.players[j]; Client a = (Client)PlayerHandler.players[j];
a.getActionSender().object(id, x, y, 516, 10); a.getPacketSender().object(id, x, y, 516, 10);
} }
} }
} }
@@ -398,7 +397,7 @@ public class DwarfCannon {
target.hitUpdateRequired2 = true; target.hitUpdateRequired2 = true;
target.updateRequired = true; target.updateRequired = true;
myBalls -= 1; myBalls -= 1;
player.getPlayerAssistant().addSkillXP(damage * Constants.RANGE_EXP_RATE, player.playerRanged); player.getPlayerAssistant().addSkillXP(damage * GameConstants.RANGE_EXP_RATE, player.playerRanged);
} }
} }
@@ -1,6 +1,6 @@
package redone.game.content.combat.range; package com.rebotted.game.content.combat.range;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class RangeData { public class RangeData {
@@ -16,30 +16,30 @@ public class RangeData {
868, 869, 806, 807, 808, 809, 810, 811, 825, 826, 827, 828, 829, 868, 869, 806, 807, 808, 809, 810, 811, 825, 826, 827, 828, 829,
830, 800, 801, 802, 803, 804, 805, 6522 }; 830, 800, 801, 802, 803, 804, 805, 6522 };
public static boolean usingDbow(Client c) { public static boolean usingDbow(Player c) {
return c.playerEquipment[c.playerWeapon] == 11235; return c.playerEquipment[c.playerWeapon] == 11235;
} }
public static boolean usingCrystalBow(Client c) { public static boolean usingCrystalBow(Player c) {
return c.playerEquipment[c.playerWeapon] >= 4212 return c.playerEquipment[c.playerWeapon] >= 4212
&& c.playerEquipment[c.playerWeapon] <= 4223; && c.playerEquipment[c.playerWeapon] <= 4223;
} }
public static boolean usingBolts(Client c) { public static boolean usingBolts(Player c) {
return c.playerEquipment[c.playerArrows] >= 9130 return c.playerEquipment[c.playerArrows] >= 9130
&& c.playerEquipment[c.playerArrows] <= 9145 && c.playerEquipment[c.playerArrows] <= 9145
|| c.playerEquipment[c.playerArrows] >= 9230 || c.playerEquipment[c.playerArrows] >= 9230
&& c.playerEquipment[c.playerArrows] <= 9245; && c.playerEquipment[c.playerArrows] <= 9245;
} }
public static boolean properBolts(Client c) { public static boolean properBolts(Player c) {
return c.playerEquipment[c.playerArrows] >= 9140 return c.playerEquipment[c.playerArrows] >= 9140
&& c.playerEquipment[c.playerArrows] <= 9144 && c.playerEquipment[c.playerArrows] <= 9144
|| c.playerEquipment[c.playerArrows] >= 9240 || c.playerEquipment[c.playerArrows] >= 9240
&& c.playerEquipment[c.playerArrows] <= 9244; && c.playerEquipment[c.playerArrows] <= 9244;
} }
public static boolean usingHally(Client c) { public static boolean usingHally(Player c) {
switch (c.playerEquipment[c.playerWeapon]) { switch (c.playerEquipment[c.playerWeapon]) {
case 3190: case 3190:
case 3192: case 3192:
@@ -56,7 +56,7 @@ public class RangeData {
} }
} }
public static int correctBowAndArrows(Client c) { public static int correctBowAndArrows(Player c) {
if (usingBolts(c)) { if (usingBolts(c)) {
return -1; return -1;
} }
@@ -102,7 +102,7 @@ public class RangeData {
return -1; return -1;
} }
public static int getRangeStartGFX(Client c) { public static int getRangeStartGFX(Player c) {
switch (c.rangeItemUsed) { switch (c.rangeItemUsed) {
case 863: case 863:
@@ -197,7 +197,7 @@ public class RangeData {
return -1; return -1;
} }
public static int getRangeProjectileGFX(Client c) { public static int getRangeProjectileGFX(Player c) {
if (c.dbowSpec) { if (c.dbowSpec) {
return 672; return 672;
} }
@@ -310,14 +310,14 @@ public class RangeData {
return -1; return -1;
} }
public static int getProjectileSpeed(Client c) { public static int getProjectileSpeed(Player c) {
if (c.dbowSpec) { if (c.dbowSpec) {
return 100; return 100;
} }
return 70; return 70;
} }
public static int getProjectileShowDelay(Client c) { public static int getProjectileShowDelay(Player c) {
switch (c.playerEquipment[c.playerWeapon]) { switch (c.playerEquipment[c.playerWeapon]) {
case 863: case 863:
case 864: case 864:
@@ -360,7 +360,7 @@ public class RangeData {
} }
} }
public static boolean fullVoidRange(Client c) { public static boolean fullVoidRange(Player c) {
return c.playerEquipment[c.playerHat] == 11664 return c.playerEquipment[c.playerHat] == 11664
&& c.playerEquipment[c.playerLegs] == 8840 && c.playerEquipment[c.playerLegs] == 8840
&& c.playerEquipment[c.playerChest] == 8839 && c.playerEquipment[c.playerChest] == 8839
@@ -1,10 +1,10 @@
package redone.game.content.combat.range; package com.rebotted.game.content.combat.range;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class RangeMaxHit { public class RangeMaxHit {
public static int calculateRangeDefence(Client c) { public static int calculateRangeDefence(Player c) {
int defenceLevel = c.playerLevel[1]; int defenceLevel = c.playerLevel[1];
if (c.getPrayer().prayerActive[0]) { if (c.getPrayer().prayerActive[0]) {
defenceLevel += c.getLevelForXP(c.playerXP[c.playerDefence]) * 0.05; defenceLevel += c.getLevelForXP(c.playerXP[c.playerDefence]) * 0.05;
@@ -20,7 +20,7 @@ public class RangeMaxHit {
return defenceLevel + c.playerBonus[9] + c.playerBonus[9] / 2; return defenceLevel + c.playerBonus[9] + c.playerBonus[9] / 2;
} }
public static int calculateRangeAttack(Client c) { public static int calculateRangeAttack(Player c) {
int rangeLevel = c.playerLevel[4]; int rangeLevel = c.playerLevel[4];
rangeLevel *= c.specAccuracy; rangeLevel *= c.specAccuracy;
if (RangeData.fullVoidRange(c)) { if (RangeData.fullVoidRange(c)) {
@@ -40,7 +40,7 @@ public class RangeMaxHit {
return (int) (rangeLevel + c.playerBonus[4] * 1.95); return (int) (rangeLevel + c.playerBonus[4] * 1.95);
} }
public static int rangeMaxHit(Client c) { public static int rangeMaxHit(Player c) {
int rangeLevel = c.playerLevel[4]; int rangeLevel = c.playerLevel[4];
int itemUsed = getRangeStr(c.usingBow ? c.lastArrowUsed : c.lastWeaponUsed); int itemUsed = getRangeStr(c.usingBow ? c.lastArrowUsed : c.lastWeaponUsed);
double modifier = 1.00; double modifier = 1.00;
@@ -1,28 +1,27 @@
package redone.game.content.consumables; package com.rebotted.game.content.consumables;
import redone.event.*; import com.rebotted.event.*;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.util.Misc;
public class Beverages { public class Beverages {
private static final int BEERGLASS = 1919; private static final int BEER_GLASS = 1919;
//private static final int EMPTYJUG = 1935;
public static enum beverageData { public static enum beverageData {
BEER(1917, BEERGLASS, 829, true, false, false, false), BEER(1917, BEER_GLASS, 829, true, false, false, false),
BEER1(7740, BEERGLASS, 829, true, false, false, false), BEER1(7740, BEER_GLASS, 829, true, false, false, false),
GROG(1915, BEERGLASS, 829, true, false, false, false), GROG(1915, BEER_GLASS, 829, true, false, false, false),
BANDITS_BREW(4627, BEERGLASS, 829, true, false, false, false), BANDITS_BREW(4627, BEER_GLASS, 829, true, false, false, false),
DRAGON_BITTER(1911, BEERGLASS, 829, true, false, false, false), DRAGON_BITTER(1911, BEER_GLASS, 829, true, false, false, false),
CIDER(7752,BEERGLASS, 829, true, false, false, false), CIDER(7752,BEER_GLASS, 829, true, false, false, false),
MATURE_CIDER(5765, BEERGLASS, 829, true, false, false, false), MATURE_CIDER(5765, BEER_GLASS, 829, true, false, false, false),
MOONLIGHT_MEAD(7750, BEERGLASS, 829, true, false, false, false), MOONLIGHT_MEAD(7750, BEER_GLASS, 829, true, false, false, false),
DWARVEN_STOUT(1913, BEERGLASS, 829, true, false, false, false), DWARVEN_STOUT(1913, BEER_GLASS, 829, true, false, false, false),
GREENMANS_ALE(1909, BEERGLASS, 829, true, false, false, false), GREENMANS_ALE(1909, BEER_GLASS, 829, true, false, false, false),
CHEFS_DELIGHT(7754, BEERGLASS, 829, true, false, false, false), CHEFS_DELIGHT(7754, BEER_GLASS, 829, true, false, false, false),
ASGARNIAN_ALE(1905, BEERGLASS, 829, true, false, false, false), ASGARNIAN_ALE(1905, BEER_GLASS, 829, true, false, false, false),
WIZARDS_MIND_BOMB(1907, BEERGLASS, 829, true, false, false, false); WIZARDS_MIND_BOMB(1907, BEER_GLASS, 829, true, false, false, false);
private int bevId, replacement, bevAnim; private int bevId, replacement, bevAnim;
private boolean effect1, effect2, effect3, effect4; private boolean effect1, effect2, effect3, effect4;
@@ -73,7 +72,7 @@ public class Beverages {
} }
} }
public static boolean isBeverage(Client c, int beverageId) { public static boolean isBeverage(Player c, int beverageId) {
boolean isBeverage = false; boolean isBeverage = false;
for (final beverageData b : beverageData.values()) { for (final beverageData b : beverageData.values()) {
if (beverageId == b.getBev()) { if (beverageId == b.getBev()) {
@@ -85,18 +84,18 @@ public class Beverages {
private static int drunkTimer = 0; private static int drunkTimer = 0;
private static void resetDrunk(Client c) { private static void resetDrunk(Player c) {
c.playerStandIndex = 0x328; c.playerStandIndex = 0x328;
c.updateRequired = true; c.updateRequired = true;
c.appearanceUpdateRequired = true; c.appearanceUpdateRequired = true;
drunkTimer = -1; drunkTimer = -1;
} }
private static void getBevEffect(final Client c, int bevEffectId) { private static void getBevEffect(final Player c, int bevEffectId) {
switch (bevEffectId) { switch (bevEffectId) {
case 1: case 1:
c.playerStandIndex = 3040; c.playerStandIndex = 3040;
c.getActionSender().sendMessage("You start to feel dizzy."); c.getPacketSender().sendMessage("You start to feel dizzy.");
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() { CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override @Override
public void execute(CycleEventContainer container) { public void execute(CycleEventContainer container) {
@@ -125,7 +124,7 @@ public class Beverages {
c.appearanceUpdateRequired = true; c.appearanceUpdateRequired = true;
} }
public static void foodEffect(Client c, int id) { public static void foodEffect(Player c, int id) {
switch (id) { switch (id) {
case 1917: case 1917:
case 7740://beer case 7740://beer
@@ -177,39 +176,39 @@ public class Beverages {
} }
} }
public static void drinkBeverage(final Client c, final int beverageId, int slotId) { public static void drinkBeverage(final Player player, final int beverageId, int slotId) {
for (final beverageData b : beverageData.values()) { for (final beverageData b : beverageData.values()) {
if (beverageId == b.getBev()) { if (beverageId == b.getBev()) {
if (System.currentTimeMillis() - c.potDelay >= 1500) { if (System.currentTimeMillis() - player.potDelay >= 1500) {
if (c.getItemAssistant().playerHasItem(beverageId)) { if (player.getItemAssistant().playerHasItem(beverageId)) {
if (b.getEffect1()) { if (b.getEffect1()) {
drunkTimer = 30; drunkTimer = 30;
getBevEffect(c, 1); getBevEffect(player, 1);
} }
if (b.getEffect2()) { if (b.getEffect2()) {
drunkTimer = 45; drunkTimer = 45;
getBevEffect(c, 2); getBevEffect(player, 2);
} }
if (b.getEffect3()) { if (b.getEffect3()) {
drunkTimer = 60; drunkTimer = 60;
getBevEffect(c, 3); getBevEffect(player, 3);
} }
if (b.getEffect4()) { if (b.getEffect4()) {
drunkTimer = 75; drunkTimer = 75;
getBevEffect(c, 4); getBevEffect(player, 4);
} }
foodEffect(c, beverageId); foodEffect(player, beverageId);
c.potDelay = System.currentTimeMillis(); player.potDelay = System.currentTimeMillis();
c.foodDelay = c.potDelay; player.foodDelay = player.potDelay;
c.getCombatAssistant().resetPlayerAttack(); player.getCombatAssistant().resetPlayerAttack();
c.attackTimer++; player.attackTimer++;
c.startAnimation(b.getAnim()); player.startAnimation(b.getAnim());
c.getItemAssistant().resetItems(3214); player.getItemAssistant().resetItems(3214);
c.potDelay = System.currentTimeMillis(); player.potDelay = System.currentTimeMillis();
c.getItemAssistant().deleteItem(beverageId, slotId, 1); player.getItemAssistant().deleteItem(beverageId, slotId, 1);
c.getItemAssistant().addItem(b.getRep(), 1); player.getItemAssistant().addItem(b.getRep(), 1);
c.forcedChat("Cheers mate!"); player.forcedChat("Cheers mate!");
c.getActionSender().sendMessage("You drink the " + b.getName() + "."); player.getPacketSender().sendMessage("You drink the " + b.getName() + ".");
} }
} }
} }
@@ -1,18 +1,18 @@
package redone.game.content.consumables; package com.rebotted.game.content.consumables;
import java.util.HashMap; import java.util.HashMap;
import com.rebotted.game.content.music.sound.SoundList;
import redone.game.content.music.sound.SoundList; import com.rebotted.game.items.impl.RareProtection;
import redone.game.items.impl.RareProtection; import com.rebotted.game.players.Client;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.util.Misc;
public class Food { public class Food {
private final Client c; private final Player c;
public Food(Client c) { public Food(Player player) {
this.c = c; this.c = player;
} }
public static enum FoodToEat { public static enum FoodToEat {
@@ -157,7 +157,7 @@ public class Food {
return; return;
} }
if (c.duelRule[6]) { if (c.duelRule[6]) {
c.getActionSender() c.getPacketSender()
.sendMessage("You may not eat in this duel."); .sendMessage("You may not eat in this duel.");
return; return;
} }
@@ -178,28 +178,28 @@ public class Food {
c.getItemAssistant().addItem(f.replaceWith(), 1); c.getItemAssistant().addItem(f.replaceWith(), 1);
} }
if (f.getType().equalsIgnoreCase("Food")) { if (f.getType().equalsIgnoreCase("Food")) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You eat the " + f.getName() + "."); "You eat the " + f.getName() + ".");
} else if (f.getType().equalsIgnoreCase("Drink")) { } else if (f.getType().equalsIgnoreCase("Drink")) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You drink the " + f.getName() + "."); "You drink the " + f.getName() + ".");
} }
if (id == 1965) { if (id == 1965) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You eat the cabbage. Yuck!"); "You eat the cabbage. Yuck!");
} }
if (id == 2955) { if (id == 2955) {
c.getActionSender().sendMessage("It tastes like something just died in your mouth."); c.getPacketSender().sendMessage("It tastes like something just died in your mouth.");
} }
if (f.getType().equalsIgnoreCase("Food")) { if (f.getType().equalsIgnoreCase("Food")) {
c.getActionSender().sendSound(SoundList.FOOD_EAT, 100, 0); c.getPacketSender().sendSound(SoundList.FOOD_EAT, 100, 0);
} else if (f.getType().equalsIgnoreCase("Drink")) { } else if (f.getType().equalsIgnoreCase("Drink")) {
c.getActionSender().sendSound(SoundList.DRINK, 100, 0); c.getPacketSender().sendSound(SoundList.DRINK, 100, 0);
} }
c.foodDelay = System.currentTimeMillis(); c.foodDelay = System.currentTimeMillis();
if (c.playerLevel[3] < c.getLevelForXP(c.playerXP[3])) { if (c.playerLevel[3] < c.getLevelForXP(c.playerXP[3])) {
c.playerLevel[3] += f.getHeal(); c.playerLevel[3] += f.getHeal();
c.getActionSender().sendMessage("It heals some health."); c.getPacketSender().sendMessage("It heals some health.");
if (c.playerLevel[3] > c.getLevelForXP(c.playerXP[3])) { if (c.playerLevel[3] > c.getLevelForXP(c.playerXP[3])) {
c.playerLevel[3] = c.getLevelForXP(c.playerXP[3]); c.playerLevel[3] = c.getLevelForXP(c.playerXP[3]);
} }
@@ -1,7 +1,7 @@
package redone.game.content.consumables; package com.rebotted.game.content.consumables;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.util.Misc;
/** /**
* @author darkside1222 * @author darkside1222
@@ -36,7 +36,7 @@ public class Kebabs {
/** /**
* Different effects(Healing,lowering,damaging) * Different effects(Healing,lowering,damaging)
*/ */
public static void effects(Client c) { public static void effects(Player c) {
float eff1 = chances("effect1"); float eff1 = chances("effect1");
float eff2 = chances("effect2"); float eff2 = chances("effect2");
float eff3 = chances("effect3"); float eff3 = chances("effect3");
@@ -44,11 +44,11 @@ public class Kebabs {
float eff5 = chances("effect5"); float eff5 = chances("effect5");
if (Misc.random(100.0f) <= eff1) { // 8.71% if (Misc.random(100.0f) <= eff1) { // 8.71%
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"That kebab didn't seem to do a lot."); "That kebab didn't seem to do a lot.");
} else if (Misc.random(100.0f) <= eff2) { // 61.24% heals 10% of HP } else if (Misc.random(100.0f) <= eff2) { // 61.24% heals 10% of HP
c.getActionSender() c.getPacketSender()
.sendMessage("It restores some life points."); .sendMessage("It restores some life points.");
if (c.playerLevel[3] < c.getLevelForXP(c.playerXP[3])) { if (c.playerLevel[3] < c.getLevelForXP(c.playerXP[3])) {
c.playerLevel[3] += c.getLevelForXP(c.playerXP[3]) * 0.10; c.playerLevel[3] += c.getLevelForXP(c.playerXP[3]) * 0.10;
@@ -59,7 +59,7 @@ public class Kebabs {
} }
} else if (Misc.random(100.0f) <= eff3) { // 21.12% + 10-20 HP } else if (Misc.random(100.0f) <= eff3) { // 21.12% + 10-20 HP
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"That was a good kebab. You feel a lot better. "); "That was a good kebab. You feel a lot better. ");
if (c.playerLevel[3] < c.getLevelForXP(c.playerXP[3])) { if (c.playerLevel[3] < c.getLevelForXP(c.playerXP[3])) {
c.playerLevel[3] += Misc.random(20); c.playerLevel[3] += Misc.random(20);
@@ -70,7 +70,7 @@ public class Kebabs {
} else if (Misc.random(100.0f) <= eff4) {// 3.65% + attk,str,def + } else if (Misc.random(100.0f) <= eff4) {// 3.65% + attk,str,def +
// 2-3 + heal 0-300 // 2-3 + heal 0-300
c.getActionSender() c.getPacketSender()
.sendMessage( .sendMessage(
"Wow, that was an amazing kebab! You feel really invigorated."); "Wow, that was an amazing kebab! You feel really invigorated.");
c.playerLevel[1] += 2 + Misc.random(1); // def c.playerLevel[1] += 2 + Misc.random(1); // def
@@ -87,9 +87,9 @@ public class Kebabs {
} }
} else if (Misc.random(100.0f) <= eff5) {// 6.3%. lower STAT } else if (Misc.random(100.0f) <= eff5) {// 6.3%. lower STAT
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"That tasted very dodgy. You feel very ill."); "That tasted very dodgy. You feel very ill.");
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"Eating the kebab has done damage to some of your stats."); "Eating the kebab has done damage to some of your stats.");
for (int j = 0; j < 2; j++) { for (int j = 0; j < 2; j++) {
c.playerLevel[j] -= 2; // Fix this l0l c.playerLevel[j] -= 2; // Fix this l0l
@@ -102,35 +102,35 @@ public class Kebabs {
/** /**
* Eatting the kebab * Eatting the kebab
*/ */
public static void eat(Client c, int slot) { public static void eat(Player player, int slot) {
if (System.currentTimeMillis() - c.foodDelay >= 1500 if (System.currentTimeMillis() - player.foodDelay >= 1500
&& c.playerLevel[3] > 0) { && player.playerLevel[3] > 0) {
if (c.playerLevel[3] == c.getLevelForXP(c.playerXP[3])) { // If if (player.playerLevel[3] == player.getLevelForXP(player.playerXP[3])) { // If
// full // full
// health, // health,
// does // does
// nothing // nothing
// but // but
// eat. // eat.
c.getCombatAssistant().resetPlayerAttack(); player.getCombatAssistant().resetPlayerAttack();
c.getActionSender().sendMessage("You eat the kebab."); player.getPacketSender().sendMessage("You eat the kebab.");
c.attackTimer += 2; player.attackTimer += 2;
c.startAnimation(829); player.startAnimation(829);
c.getItemAssistant().deleteItem(Kebab, slot, 1); player.getItemAssistant().deleteItem(Kebab, slot, 1);
c.getActionSender().sendSound(317, 100, 0); player.getPacketSender().sendSound(317, 100, 0);
c.foodDelay = System.currentTimeMillis(); player.foodDelay = System.currentTimeMillis();
c.getPlayerAssistant().refreshSkill(3); player.getPlayerAssistant().refreshSkill(3);
return; return;
} }
c.getCombatAssistant().resetPlayerAttack(); player.getCombatAssistant().resetPlayerAttack();
c.getActionSender().sendMessage("You eat the kebab."); player.getPacketSender().sendMessage("You eat the kebab.");
effects(c); effects(player);
c.attackTimer += 2; player.attackTimer += 2;
c.startAnimation(829); player.startAnimation(829);
c.getItemAssistant().deleteItem(Kebab, slot, 1); player.getItemAssistant().deleteItem(Kebab, slot, 1);
c.getActionSender().sendSound(317, 100, 0); player.getPacketSender().sendSound(317, 100, 0);
c.foodDelay = System.currentTimeMillis(); player.foodDelay = System.currentTimeMillis();
c.getPlayerAssistant().refreshSkill(3); player.getPlayerAssistant().refreshSkill(3);
} }
} }
} }
@@ -1,23 +1,23 @@
package redone.game.content.consumables; package com.rebotted.game.content.consumables;
import redone.event.CycleEvent; import com.rebotted.event.CycleEvent;
import redone.event.CycleEventContainer; import com.rebotted.event.CycleEventContainer;
import redone.event.CycleEventHandler; import com.rebotted.event.CycleEventHandler;
import redone.game.items.Item; import com.rebotted.game.items.Item;
import redone.game.items.ItemAssistant; import com.rebotted.game.items.ItemAssistant;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class Potions { public class Potions {
private final Client c; private final Player c;
public Potions(Client c) { public Potions(Player player) {
this.c = c; this.c = player;
} }
public void handlePotion(int itemId, int slot) { public void handlePotion(int itemId, int slot) {
if (c.duelRule[5]) { if (c.duelRule[5]) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You may not drink potions in this duel."); "You may not drink potions in this duel.");
return; return;
} }
@@ -29,7 +29,7 @@ public class Potions {
c.foodDelay = System.currentTimeMillis(); c.foodDelay = System.currentTimeMillis();
c.getCombatAssistant().resetPlayerAttack(); c.getCombatAssistant().resetPlayerAttack();
c.attackTimer++; c.attackTimer++;
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You drink some of your " + Item.getItemName(itemId) + "."); "You drink some of your " + Item.getItemName(itemId) + ".");
c.startAnimation(829); c.startAnimation(829);
final String item = Item.getItemName(itemId); final String item = Item.getItemName(itemId);
@@ -47,7 +47,7 @@ public class Potions {
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() { CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override @Override
public void execute(CycleEventContainer container) { public void execute(CycleEventContainer container) {
c.getActionSender().sendMessage(m1); c.getPacketSender().sendMessage(m1);
container.stop(); container.stop();
} }
@Override @Override
@@ -297,7 +297,7 @@ public class Potions {
if (c.playerEnergy > 100) { if (c.playerEnergy > 100) {
c.playerEnergy = 100; c.playerEnergy = 100;
} }
c.getPlayerAssistant().sendFrame126((int) Math.ceil(c.playerEnergy) + "%", 149); c.getPacketSender().sendFrame126((int) Math.ceil(c.playerEnergy) + "%", 149);
} }
public void drinkAntiPoison(int itemId, int replaceItem, int slot, public void drinkAntiPoison(int itemId, int replaceItem, int slot,
@@ -351,7 +351,7 @@ public class Potions {
c.playerLevel[j] = c.getLevelForXP(c.playerXP[j]); c.playerLevel[j] = c.getLevelForXP(c.playerXP[j]);
} }
c.getPlayerAssistant().refreshSkill(j); c.getPlayerAssistant().refreshSkill(j);
c.getActionSender().setSkillLevel(j, c.playerLevel[j], c.getPacketSender().setSkillLevel(j, c.playerLevel[j],
c.playerXP[j]); c.playerXP[j]);
} }
} }
@@ -368,7 +368,7 @@ public class Potions {
c.playerLevel[tD] = 1; c.playerLevel[tD] = 1;
} }
c.getPlayerAssistant().refreshSkill(tD); c.getPlayerAssistant().refreshSkill(tD);
c.getActionSender().setSkillLevel(tD, c.playerLevel[tD], c.getPacketSender().setSkillLevel(tD, c.playerLevel[tD],
c.playerXP[tD]); c.playerXP[tD]);
} }
c.playerLevel[0] += getBrewStat(0, .20); c.playerLevel[0] += getBrewStat(0, .20);
@@ -392,7 +392,7 @@ public class Potions {
public void doTheBrew(int itemId, int replaceItem, int slot) { public void doTheBrew(int itemId, int replaceItem, int slot) {
if (c.duelRule[6]) { if (c.duelRule[6]) {
c.getActionSender() c.getPacketSender()
.sendMessage("You may not eat in this duel."); .sendMessage("You may not eat in this duel.");
return; return;
} }
@@ -406,7 +406,7 @@ public class Potions {
c.playerLevel[tD] = 1; c.playerLevel[tD] = 1;
} }
c.getPlayerAssistant().refreshSkill(tD); c.getPlayerAssistant().refreshSkill(tD);
c.getActionSender().setSkillLevel(tD, c.playerLevel[tD], c.getPacketSender().setSkillLevel(tD, c.playerLevel[tD],
c.playerXP[tD]); c.playerXP[tD]);
} }
c.playerLevel[1] += getBrewStat(1, .20); c.playerLevel[1] += getBrewStat(1, .20);
@@ -432,7 +432,7 @@ public class Potions {
c.playerItems[slot] = replaceItem + 1; c.playerItems[slot] = replaceItem + 1;
c.antiFirePot = true; c.antiFirePot = true;
c.antiFirePotion(); c.antiFirePotion();
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"Your immunity against dragon fire has been increased."); "Your immunity against dragon fire has been increased.");
c.getItemAssistant().resetItems(3214); c.getItemAssistant().resetItems(3214);
@@ -0,0 +1,186 @@
package com.rebotted.game.content.guilds;
import com.rebotted.GameConstants;
import com.rebotted.game.content.quests.QuestAssistant;
import com.rebotted.game.globalworldobjects.PassDoor;
import com.rebotted.game.objects.impl.Climbing;
import com.rebotted.game.objects.impl.UseOther;
import com.rebotted.game.players.Player;
/**
* Guilds Class
* @author Andrew (I'm A Boss on Rune-Server, Mr Extremez on Moparscape & Runelocus)
*/
public class Guilds {
private static boolean hasCompletedLegends = false;
public static void attemptGuild(Player player, int objectId) {
if (!GameConstants.GUILDS) {
player.getPacketSender().sendMessage("Guilds are currently disabled.");
return;
}
if (checkRequirements(player, objectId)) {
player.getPacketSender().sendMessage("You pass through the guild.");
movePlayer(player, objectId);
}
}
public static void movePlayer(Player player, int objectId) {
switch (objectId) {
case 2514: // Range Guild
if (player.absX == 2659 && player.absY == 3438) {
PassDoor.passThroughDoor(player, objectId, 1, 2, 9, -1, 1, 0);
} else if (player.absX == 2658 && player.absY == 3437) {
PassDoor.passThroughDoor(player, objectId, 1, 2, 9, -1, 1, 0);
} else if (player.absX == 2658 && player.absY == 3439) {
PassDoor.passThroughDoor(player, objectId, 1, 2, 9, 1, -1, 0);
} else if (player.absX == 2657 && player.absY == 3438) {
PassDoor.passThroughDoor(player, objectId, 1, 2, 9, 1, -1, 0);
}
break;
case 1805: // Champions Guild
if (player.absY == 3362 && player.absX != 3192 && player.absX != 3190) {
player.getPlayerAssistant().movePlayer(player.absX, player.absY + 1, 0);
} else if (player.absY == 3363 && player.absX != 3192 && player.absX != 3190) {
player.getPlayerAssistant().movePlayer(player.absX, player.absY - 1, 0);
}
break;
case 2641: // Monastery
if (player.heightLevel == 0) {
Climbing.climbUp(player);
} else if (player.heightLevel == 1) {
Climbing.climbDown(player);
}
break;
case 2712: // Cooks Guild
if (player.absY == 3443) {
player.getPlayerAssistant().movePlayer(player.absX, player.absY + 1, 0);
} else if (player.absY == 3444) {
player.getPlayerAssistant().movePlayer(player.absX, player.absY - 1, 0);
}
break;
case 2647: // Crafting Guild
if (player.absY == 3289) {
player.getPlayerAssistant().movePlayer(player.absX, player.absY - 1, 0);
} else if (player.absY == 3288) {
player.getPlayerAssistant().movePlayer(player.absX, player.absY + 1, 0);
}
break;
case 2113: // Mining Guild
UseOther.useDown(player, objectId);
break;
case 1755: // Mining Guild
UseOther.useUp(player, objectId);
break;
case 2025: // Fishing Guild
if (player.absY == 3393) {
player.getPlayerAssistant().movePlayer(player.absX, player.absY + 1, 0);
} else if (player.absY == 3394) {
player.getPlayerAssistant().movePlayer(player.absX, player.absY - 1, 0);
}
break;
case 1600: // Wizards Guild
case 1601:
if (player.absX == 2597) {
player.getPlayerAssistant().movePlayer(player.absX - 1, player.absY, 0);
} else if (player.absX == 2596) {
player.getPlayerAssistant().movePlayer(player.absX + 1, player.absY, 0);
}
break;
case 2624: // Heroes Guild
case 2625:
if (player.absX == 2902) {
player.getPlayerAssistant().movePlayer(player.absX - 1, player.absY, 0);
} else if (player.absX == 2901) {
player.getPlayerAssistant().movePlayer(player.absX + 1, player.absY, 0);
}
break;
case 2392: // Legends Guild
case 2391:
if (player.absY == 3349) {
player.getPlayerAssistant().movePlayer(player.absX, player.absY + 1, 0);
} else if (player.absY == 3350) {
player.getPlayerAssistant().movePlayer(player.absX, player.absY - 1, 0);
}
break;
default:
player.getPacketSender().sendMessage(
"You can't access this guild from here.");
break;
}
}
public static boolean checkRequirements(Player player, int objectId) {
switch (objectId) {
case 1805: // Champions Guild
int requiredQP = Math.min(32, QuestAssistant.MAXIMUM_QUESTPOINTS);
if (player.questPoints < requiredQP) {
player.getDialogueHandler().sendStatement("You need " + requiredQP + " quest points to enter this guild!");
player.nextChat = 0;
return false;
}
break;
case 2392:
case 2391:
if (hasCompletedLegends == false && player.playerRights < 3) {
player.getDialogueHandler().sendStatement("You need to complete Legends Quest to enter this guild!");
player.nextChat = 0;
return false;
}
break;
case 2641: // Prayer Guild
if (player.getPlayerAssistant().getLevelForXP(player.playerXP[5]) < 31) {
player.getDialogueHandler().sendStatement("You need 31 prayer to enter this guild!");
player.nextChat = 0;
return false;
}
break;
case 2712: // Cooking Guild
if (player.playerLevel[player.playerCooking] < 32 || player.playerEquipment[player.playerHat] != 1949) {
player.getDialogueHandler().sendStatement("You need 32 cooking and a chefs hat to enter this guild!");
player.nextChat = 0;
return false;
}
break;
case 2647: // Crafting Guild
if (player.playerLevel[player.playerCrafting] < 40 || player.playerEquipment[player.playerChest] != 1757) {
player.getDialogueHandler().sendStatement("You need 40 Crafting and a Brown Apron to enter this guild!");
player.nextChat = 0;
return false;
}
break;
case 2113: // Mining Guild
if (player.playerLevel[player.playerMining] < 60) {
player.getDialogueHandler().sendStatement("You need 60 Mining to enter this guild!");
player.nextChat = 0;
return false;
}
break;
case 2025: // Fishing Guild
if (player.playerLevel[player.playerFishing] < 68) {
player.getDialogueHandler().sendStatement("You need 68 Fishing to enter this guild!");
player.nextChat = 0;
return false;
}
break;
case 1600:
case 1601: // Wizards Guild
if (player.playerLevel[player.playerMagic] < 66) {
player.getDialogueHandler().sendStatement("You need 66 Magic to enter this guild!");
player.nextChat = 0;
return false;
}
break;
case 2514:
if (player.playerLevel[player.playerRanged] < 40) { // Ranging Guild
player.getDialogueHandler().sendStatement("You need 40 Range to enter this guild!");
player.nextChat = 0;
return false;
}
break;
}
return true;
}
}
@@ -0,0 +1,361 @@
package com.rebotted.game.content.guilds.impl;
import com.rebotted.event.CycleEvent;
import com.rebotted.event.CycleEventContainer;
import com.rebotted.event.CycleEventHandler;
import com.rebotted.game.content.combat.range.RangeData;
import com.rebotted.game.players.Player;
import com.rebotted.util.Misc;
/**
* Rangers Guild
* @author Aintaro
* @edit Haile N.
*/
public class RangersGuild {
public final int
ARROWS_REQ = 882,
HIT_CHANCE = 55,
RANGED_LV = 4;
public final String
MISSED = "Missed!",
BLACK = "Hit Black!",
YELLOW = "Hit Yellow!",
BLUE = "Hit Blue!",
RED = "Hit Red!",
BULLSEYE = "Bulls-Eye";
public int
arrowsLeft = 0,
playerScore = 0,
hitChance;
public boolean isFiringTarget;
private Player c;
public RangersGuild(Player player) {
this.c = player;
}
public void fireAtTarget() {
if(isFiringTarget) {
return;
}
hitChance = Misc.random(HIT_CHANCE)+Misc.random(c.playerLevel[RANGED_LV]);
if (arrowsLeft != 0) {
for (int bowId : RangeData.BOWS) {
if(c.playerEquipment[c.playerWeapon] == bowId) {
c.usingBow = true;
if (c.playerEquipment[c.playerArrows] == ARROWS_REQ && c.usingBow) {
if (isInTargetArea()) {
if (hitChance >= 10) {
c.getPacketSender().closeAllWindows();
c.startAnimation(426);
isFiringTarget = true;
//c.getPlayerAction().setAction(true);
//c.getPlayerAction().canWalk(false);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (hitChance >= 10 && hitChance <= 20) {
playerScore += 10;
sendConfiguration(80 + Misc.random(10), -60 + Misc.random(90));
c.getPacketSender().sendFrame126(BLACK, 567);
c.getPlayerAssistant().addSkillXP(5, 4);
c.getItemAssistant().deleteArrow();
//c.getPlayerAction().setAction(false);
//c.getPlayerAction().canWalk(true);
} else if (hitChance >= 20 && hitChance < 30) {
playerScore += 20;
sendConfiguration(-70 + Misc.random(10),10 - Misc.random(40));
c.getPacketSender().sendFrame126(BLUE,567);
c.getPlayerAssistant().addSkillXP(10, 4);
c.getItemAssistant().deleteArrow();
//c.getPlayerAction().setAction(false);
//c.getPlayerAction().canWalk(true);
} else if (hitChance >= 30 && hitChance < 50) {
playerScore += 30;
sendConfiguration(-30 - Misc.random(15),10 - Misc.random(25));
c.getPacketSender().sendFrame126(RED, 567);
c.getPlayerAssistant().addSkillXP(15, 4);
c.getItemAssistant().deleteArrow();
//c.getPlayerAction().setAction(false);
//c.getPlayerAction().canWalk(true);
} else if (hitChance >= 50 && hitChance < 75) {
playerScore += 50;
sendConfiguration(5 - Misc.random(20),0 - Misc.random(20));
c.getPacketSender().sendFrame126(YELLOW, 567);
c.getPlayerAssistant().addSkillXP(15, 4);
c.getItemAssistant().deleteArrow();
//c.getPlayerAction().setAction(false);
//c.getPlayerAction().canWalk(true);
} else if (hitChance >= 75) {
playerScore += 100;
sendConfiguration(0, 0);
c.getPacketSender().sendFrame126(BULLSEYE, 567);
c.getPlayerAssistant().addSkillXP(50, 4);
c.getItemAssistant().deleteArrow();
//c.getPlayerAction().setAction(false);
//c.getPlayerAction().canWalk(true);
} else {
c.getPacketSender().sendFrame126(MISSED, 567);
sendConfiguration(1200, 1200);
c.getItemAssistant().deleteArrow();
//c.getPlayerAction().setAction(false);
//c.getPlayerAction().canWalk(true);
}
container.stop();
}
@Override
public void stop() {
isFiringTarget = false;
}
}, 3);
}
} else {
c.getDialogueHandler().sendStatement("You can't shoot from here.");
}
} else {
c.getDialogueHandler().sendStatement("You need some bronze arrows and a bow to shoot the target.");
c.nextChat = 0;
}}}
} else {
c.getDialogueHandler().sendStatement("You should talk to the competition judge.");
c.nextChat = 0;
}
}
private void sendConfiguration(int xPos, int yPos) {
switch (arrowsLeft) {
case 1:
arrowsLeft--;
c.getPacketSender().sendFrame70(1200, 1200, 538);
c.getPacketSender().sendFrame70(1200, 1200, 557);
c.getPacketSender().sendFrame70(1200, 1200, 559);
c.getPacketSender().sendFrame70(1200, 1200, 560);
c.getPacketSender().sendFrame70(1200, 1200, 561);
c.getPacketSender().sendFrame70(1200, 1200, 562);
c.getPacketSender().sendFrame70(1200, 1200, 563);
c.getPacketSender().sendFrame70(1200, 1200, 564);
c.getPacketSender().sendFrame70(1200, 1200, 565);
c.getPacketSender().sendFrame70(1200, 1200, 566);
c.getPacketSender().sendFrame126("" + playerScore, 551);
c.getPacketSender().sendFrame70(xPos, yPos, 536);
c.getPacketSender().showInterface(446);
break;
case 2:
arrowsLeft--;
c.getPacketSender().sendFrame70(0, 0, 538);
c.getPacketSender().sendFrame70(1200, 1200, 557);
c.getPacketSender().sendFrame70(1200, 1200, 559);
c.getPacketSender().sendFrame70(1200, 1200, 560);
c.getPacketSender().sendFrame70(1200, 1200, 561);
c.getPacketSender().sendFrame70(1200, 1200, 562);
c.getPacketSender().sendFrame70(1200, 1200, 563);
c.getPacketSender().sendFrame70(1200, 1200, 564);
c.getPacketSender().sendFrame70(1200, 1200, 565);
c.getPacketSender().sendFrame70(1200, 1200, 566);
c.getPacketSender().sendFrame126("" + playerScore, 551);
c.getPacketSender().sendFrame70(xPos, yPos, 536);
c.getPacketSender().showInterface(446);
break;
case 3:
arrowsLeft--;
c.getPacketSender().sendFrame70(0, 0, 538);
c.getPacketSender().sendFrame70(0, 0, 557);
c.getPacketSender().sendFrame70(1200, 1200, 559);
c.getPacketSender().sendFrame70(1200, 1200, 560);
c.getPacketSender().sendFrame70(1200, 1200, 561);
c.getPacketSender().sendFrame70(1200, 1200, 562);
c.getPacketSender().sendFrame70(1200, 1200, 563);
c.getPacketSender().sendFrame70(1200, 1200, 564);
c.getPacketSender().sendFrame70(1200, 1200, 565);
c.getPacketSender().sendFrame70(1200, 1200, 566);
c.getPacketSender().sendFrame126("" + playerScore, 551);
c.getPacketSender().sendFrame70(xPos, yPos, 536);
c.getPacketSender().showInterface(446);
break;
case 4:
arrowsLeft--;
c.getPacketSender().sendFrame70(0, 0, 538);
c.getPacketSender().sendFrame70(0, 0, 557);
c.getPacketSender().sendFrame70(0, 0, 559);
c.getPacketSender().sendFrame70(1200, 1200, 560);
c.getPacketSender().sendFrame70(1200, 1200, 561);
c.getPacketSender().sendFrame70(1200, 1200, 562);
c.getPacketSender().sendFrame70(1200, 1200, 563);
c.getPacketSender().sendFrame70(1200, 1200, 564);
c.getPacketSender().sendFrame70(1200, 1200, 565);
c.getPacketSender().sendFrame70(1200, 1200, 566);
c.getPacketSender().sendFrame126("" + playerScore, 551);
c.getPacketSender().sendFrame70(xPos, yPos, 536);
c.getPacketSender().showInterface(446);
break;
case 5:
arrowsLeft--;
c.getPacketSender().sendFrame70(0, 0, 538);
c.getPacketSender().sendFrame70(0, 0, 557);
c.getPacketSender().sendFrame70(0, 0, 559);
c.getPacketSender().sendFrame70(0, 0, 560);
c.getPacketSender().sendFrame70(1200, 1200, 561);
c.getPacketSender().sendFrame70(1200, 1200, 562);
c.getPacketSender().sendFrame70(1200, 1200, 563);
c.getPacketSender().sendFrame70(1200, 1200, 564);
c.getPacketSender().sendFrame70(1200, 1200, 565);
c.getPacketSender().sendFrame70(1200, 1200, 566);
c.getPacketSender().sendFrame126("" + playerScore, 551);
c.getPacketSender().sendFrame70(xPos, yPos, 536);
c.getPacketSender().showInterface(446);
break;
case 6:
arrowsLeft--;
c.getPacketSender().sendFrame70(0, 0, 538);
c.getPacketSender().sendFrame70(0, 0, 557);
c.getPacketSender().sendFrame70(0, 0, 559);
c.getPacketSender().sendFrame70(0, 0, 560);
c.getPacketSender().sendFrame70(0, 0, 561);
c.getPacketSender().sendFrame70(1200, 1200, 562);
c.getPacketSender().sendFrame70(1200, 1200, 563);
c.getPacketSender().sendFrame70(1200, 1200, 564);
c.getPacketSender().sendFrame70(1200, 1200, 565);
c.getPacketSender().sendFrame70(1200, 1200, 566);
c.getPacketSender().sendFrame126("" + playerScore, 551);
c.getPacketSender().sendFrame70(xPos, yPos, 536);
c.getPacketSender().showInterface(446);
break;
case 7:
arrowsLeft--;
c.getPacketSender().sendFrame70(0, 0, 538);
c.getPacketSender().sendFrame70(0, 0, 557);
c.getPacketSender().sendFrame70(0, 0, 559);
c.getPacketSender().sendFrame70(0, 0, 560);
c.getPacketSender().sendFrame70(0, 0, 561);
c.getPacketSender().sendFrame70(0, 0, 562);
c.getPacketSender().sendFrame70(1200, 1200, 563);
c.getPacketSender().sendFrame70(1200, 1200, 564);
c.getPacketSender().sendFrame70(1200, 1200, 565);
c.getPacketSender().sendFrame70(1200, 1200, 566);
c.getPacketSender().sendFrame126("" + playerScore, 551);
c.getPacketSender().sendFrame70(xPos, yPos, 536);
c.getPacketSender().showInterface(446);
break;
case 8:
arrowsLeft--;
c.getPacketSender().sendFrame70(0, 0, 538);
c.getPacketSender().sendFrame70(0, 0, 557);
c.getPacketSender().sendFrame70(0, 0, 559);
c.getPacketSender().sendFrame70(0, 0, 560);
c.getPacketSender().sendFrame70(0, 0, 561);
c.getPacketSender().sendFrame70(0, 0, 562);
c.getPacketSender().sendFrame70(0, 0, 563);
c.getPacketSender().sendFrame70(1200, 1200, 564);
c.getPacketSender().sendFrame70(1200, 1200, 565);
c.getPacketSender().sendFrame70(1200, 1200, 566);
c.getPacketSender().sendFrame126("" + playerScore, 551);
c.getPacketSender().sendFrame70(xPos, yPos, 536);
c.getPacketSender().showInterface(446);
break;
case 9:
arrowsLeft--;
c.getPacketSender().sendFrame70(0, 0, 538);
c.getPacketSender().sendFrame70(0, 0, 557);
c.getPacketSender().sendFrame70(0, 0, 559);
c.getPacketSender().sendFrame70(0, 0, 560);
c.getPacketSender().sendFrame70(0, 0, 561);
c.getPacketSender().sendFrame70(0, 0, 562);
c.getPacketSender().sendFrame70(0, 0, 563);
c.getPacketSender().sendFrame70(0, 0, 564);
c.getPacketSender().sendFrame70(1200, 1200, 565);
c.getPacketSender().sendFrame70(1200, 1200, 566);
c.getPacketSender().sendFrame126("" + playerScore, 551);
c.getPacketSender().sendFrame70(xPos, yPos, 536);
c.getPacketSender().showInterface(446);
break;
case 10:
arrowsLeft--;
c.getPacketSender().sendFrame70(0, 0, 538);
c.getPacketSender().sendFrame70(0, 0, 557);
c.getPacketSender().sendFrame70(0, 0, 559);
c.getPacketSender().sendFrame70(0, 0, 560);
c.getPacketSender().sendFrame70(0, 0, 561);
c.getPacketSender().sendFrame70(0, 0, 562);
c.getPacketSender().sendFrame70(0, 0, 563);
c.getPacketSender().sendFrame70(0, 0, 564);
c.getPacketSender().sendFrame70(0, 0, 565);
c.getPacketSender().sendFrame126("" + playerScore, 551);
c.getPacketSender().sendFrame70(xPos, yPos, 536);
c.getPacketSender().showInterface(446);
break;
}
}
public boolean isInTargetArea() {
if (c.absX >= 2669 && c.absX <= 2674 && c.absY >= 3415 && c.absY <= 3421) {
return true;
}
return false;
}
public void exchangePoints() {
if (arrowsLeft == 0 && playerScore > 0) {
if(c.getItemAssistant().freeSlots() > 0) {
int ticketsAmt = playerScore / 10;
c.getItemAssistant().addItem(1464, ticketsAmt);
c.getDialogueHandler().sendNpcChat2("Well done. Your score is : " + playerScore + ".", "You have earned " + ticketsAmt + " Archery tickets.", c.talkingNpc, "Tutor");
playerScore = 0;
c.nextChat = 0;
} else {
c.getDialogueHandler().sendStatement("You need 1 free slot to exchange tickets.");
c.nextChat = 0;
}
} else {
c.getDialogueHandler().sendStatement("You still have " + arrowsLeft + " shots left.");
c.nextChat = 0;
}
}
public void howAmIDoing() {
if (playerScore == 0) {
c.getDialogueHandler().sendNpcChat2("You haven't started yet. Stand behind the hay bales and", "shoot those arrows at the targets.", c.talkingNpc, "Tutor");
c.nextChat = 0;
} else {
c.getDialogueHandler().sendNpcChat2("Your score is : " + playerScore, "Your doing very well!", c.talkingNpc, "Tutor");
c.nextChat = 0;
}
}
public void buyArrows() {
if (arrowsLeft == 0) {
if (c.getItemAssistant().playerHasItem(995, 200)) {
if (c.getItemAssistant().freeSlots() > 1) {
arrowsLeft = 10;
c.getItemAssistant().deleteItem(995, 200);
c.getItemAssistant().addItem(ARROWS_REQ, 10);
c.getItemAssistant().addItem(841, 1);
c.getDialogueHandler().sendStatement("The archer hands you 10 bronze arrows and a bow.");
c.nextChat = 0;
} else {
c.getDialogueHandler().sendStatement("You need 2 free slots to receive arrows and a bow.");
}
} else {
c.getDialogueHandler().sendStatement("You need at least 200 gp to buy 10 arrows and a bow.");
c.nextChat = 0;
}
} else {
c.getDialogueHandler().sendStatement("You still have " + arrowsLeft + " shots left.");
c.nextChat = 0;
}
}
}
@@ -1,17 +1,17 @@
package redone.game.content.minigames; package com.rebotted.game.content.minigames;
import redone.game.content.quests.QuestRewards; import com.rebotted.game.content.quests.QuestRewards;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.util.Misc;
public class Barrows { public class Barrows {
public Barrows(Client c) { public Barrows(Player player) {
this.c = c; this.c = player;
} }
private Client c; private Player c;
/** /**
* Variables used for reward. * Variables used for reward.
@@ -98,7 +98,7 @@ public class Barrows {
} else if (c.absX == 2999 && c.absY == 3383 && c.pirateTreasure == 5) { } else if (c.absX == 2999 && c.absY == 3383 && c.pirateTreasure == 5) {
QuestRewards.pirateFinish(c); QuestRewards.pirateFinish(c);
} else { } else {
c.getActionSender().sendMessage("You don't find anything..."); c.getPacketSender().sendMessage("You don't find anything...");
} }
} }
@@ -128,7 +128,7 @@ public class Barrows {
break; break;
} }
} else { } else {
c.getActionSender().sendMessage("You have to be in barrows to do this!"); c.getPacketSender().sendMessage("You have to be in barrows to do this!");
} }
} }
@@ -136,33 +136,33 @@ public class Barrows {
public void checkCoffins() { public void checkCoffins() {
if (c.isInBarrows2()) { if (c.isInBarrows2()) {
if (c.barrowsKillCount < 5) { if (c.barrowsKillCount < 5) {
c.getActionSender().sendMessage("You still have to kill the following brothers:"); c.getPacketSender().sendMessage("You still have to kill the following brothers:");
if (c.barrowsNpcs[2][1] == 0) { if (c.barrowsNpcs[2][1] == 0) {
c.getActionSender().sendMessage("- Karils"); c.getPacketSender().sendMessage("- Karils");
} }
if (c.barrowsNpcs[3][1] == 0) { if (c.barrowsNpcs[3][1] == 0) {
c.getActionSender().sendMessage("- Guthans"); c.getPacketSender().sendMessage("- Guthans");
} }
if (c.barrowsNpcs[1][1] == 0) { if (c.barrowsNpcs[1][1] == 0) {
c.getActionSender().sendMessage("- Torags"); c.getPacketSender().sendMessage("- Torags");
} }
if (c.barrowsNpcs[5][1] == 0) { if (c.barrowsNpcs[5][1] == 0) {
c.getActionSender().sendMessage("- Ahrims"); c.getPacketSender().sendMessage("- Ahrims");
} }
if (c.barrowsNpcs[0][1] == 0) { if (c.barrowsNpcs[0][1] == 0) {
c.getActionSender().sendMessage("- Veracs"); c.getPacketSender().sendMessage("- Veracs");
} }
c.getPlayerAssistant().removeAllWindows(); c.getPacketSender().closeAllWindows();
} else if (c.barrowsKillCount == 5) { } else if (c.barrowsKillCount == 5) {
NpcHandler.spawnNpc(c, 2026, c.getX(), c.getY()-1, 3, 0, 120, 25, 200, 200, true, true); NpcHandler.spawnNpc(c, 2026, c.getX(), c.getY()-1, 3, 0, 120, 25, 200, 200, true, true);
c.getPlayerAssistant().removeAllWindows(); c.getPacketSender().closeAllWindows();
} else if (c.barrowsKillCount > 5) { } else if (c.barrowsKillCount > 5) {
c.getPlayerAssistant().movePlayer(3551, 9694, 0); c.getPlayerAssistant().movePlayer(3551, 9694, 0);
c.getActionSender().sendMessage("You teleport to the chest."); c.getPacketSender().sendMessage("You teleport to the chest.");
c.getPlayerAssistant().removeAllWindows(); c.getPacketSender().closeAllWindows();
} }
} else { } else {
c.getActionSender().sendMessage("You have to be in barrows to do this!"); c.getPacketSender().sendMessage("You have to be in barrows to do this!");
} }
} }
@@ -190,7 +190,7 @@ public class Barrows {
c.getItemAssistant().addItem(randomBarrows(), 1); c.getItemAssistant().addItem(randomBarrows(), 1);
} }
} else { } else {
c.getActionSender().sendMessage("You have to be in barrows to do this!"); c.getPacketSender().sendMessage("You have to be in barrows to do this!");
} }
} }
@@ -216,7 +216,7 @@ public class Barrows {
public void useChest() { public void useChest() {
if (c.isInBarrows2()) { if (c.isInBarrows2()) {
if (!checkBarrows()) { if (!checkBarrows()) {
c.getActionSender().sendMessage("You haven't killed all the brothers!"); c.getPacketSender().sendMessage("You haven't killed all the brothers!");
return; return;
} }
if (c.barrowsKillCount == 5) { if (c.barrowsKillCount == 5) {
@@ -230,11 +230,11 @@ public class Barrows {
reward(); reward();
resetBarrows(); resetBarrows();
} else { } else {
c.getActionSender().sendMessage("You need more inventory slots to open the chest."); c.getPacketSender().sendMessage("You need more inventory slots to open the chest.");
} }
} }
} else { } else {
c.getActionSender().sendMessage("You have to be in barrows to do this!"); c.getPacketSender().sendMessage("You have to be in barrows to do this!");
} }
} }
@@ -247,7 +247,7 @@ public class Barrows {
if (c.playerItems[j] - 1 == c.getItemAssistant().brokenBarrows[i][1]) { if (c.playerItems[j] - 1 == c.getItemAssistant().brokenBarrows[i][1]) {
if (totalCost + 80000 > cashAmount) { if (totalCost + 80000 > cashAmount) {
breakOut = true; breakOut = true;
c.getActionSender().sendMessage("You have run out of money."); c.getPacketSender().sendMessage("You have run out of money.");
break; break;
} else { } else {
totalCost += 80000; totalCost += 80000;
@@ -1,27 +1,28 @@
package redone.game.content.minigames; package com.rebotted.game.content.minigames;
import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.CopyOnWriteArrayList;
import redone.Constants; import com.rebotted.GameConstants;
import redone.Server; import com.rebotted.GameEngine;
import redone.game.content.combat.prayer.PrayerDrain; import com.rebotted.game.content.combat.prayer.PrayerDrain;
import redone.game.content.minigames.castlewars.CastleWars; import com.rebotted.game.content.minigames.castlewars.CastleWars;
import redone.game.items.GameItem; import com.rebotted.game.items.GameItem;
import redone.game.items.Item; import com.rebotted.game.items.Item;
import redone.game.items.ItemAssistant; import com.rebotted.game.items.ItemAssistant;
import redone.game.items.impl.RareProtection; import com.rebotted.game.items.impl.RareProtection;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import redone.game.players.PlayerHandler; import com.rebotted.game.players.Player;
import redone.game.players.PlayerSave; import com.rebotted.game.players.PlayerHandler;
import redone.util.GameLogger; import com.rebotted.game.players.PlayerSave;
import redone.util.Misc; import com.rebotted.util.GameLogger;
import com.rebotted.util.Misc;
public class Dueling { public class Dueling {
private final Client player; private final Player player;
public Dueling(Client Client) { public Dueling(Player player2) {
player = Client; player = player2;
} }
public CopyOnWriteArrayList<GameItem> otherStakedItems = new CopyOnWriteArrayList<GameItem>(); public CopyOnWriteArrayList<GameItem> otherStakedItems = new CopyOnWriteArrayList<GameItem>();
@@ -36,11 +37,11 @@ public class Dueling {
return; return;
} }
if (player.inTrade || player.isShopping) { if (player.inTrade || player.isShopping) {
player.getActionSender().sendMessage("You can not stake currently."); player.getPacketSender().sendMessage("You can not stake currently.");
return; return;
} }
if (!player.inDuelArena()) { if (!player.inDuelArena()) {
player.getActionSender().sendMessage("You must be in the duel arena to do that."); player.getPacketSender().sendMessage("You must be in the duel arena to do that.");
return; return;
} }
resetDuel(); resetDuel();
@@ -62,14 +63,14 @@ public class Dueling {
player.getDueling().openDuel(); player.getDueling().openDuel();
o.getDueling().openDuel(); o.getDueling().openDuel();
} else { } else {
player.getActionSender() player.getPacketSender()
.sendMessage( .sendMessage(
"You need to get closer to your opponent to start the duel."); "You need to get closer to your opponent to start the duel.");
} }
} else { } else {
player.getActionSender().sendMessage("Sending duel request..."); player.getPacketSender().sendMessage("Sending duel request...");
o.getActionSender().sendMessage(player.playerName + ":duelreq:"); o.getPacketSender().sendMessage(player.playerName + ":duelreq:");
} }
} catch (Exception e) { } catch (Exception e) {
Misc.println("Error requesting duel."); Misc.println("Error requesting duel.");
@@ -82,15 +83,15 @@ public class Dueling {
return; return;
} }
if (player.inTrade || player.isShopping) { if (player.inTrade || player.isShopping) {
player.getActionSender().sendMessage("You can not stake currently."); player.getPacketSender().sendMessage("You can not stake currently.");
return; return;
} }
if (!player.inDuelArena()) { if (!player.inDuelArena()) {
player.getActionSender().sendMessage("You must be in the duel arena to do that."); player.getPacketSender().sendMessage("You must be in the duel arena to do that.");
return; return;
} }
if (player.duelingArena()) { if (player.duelingArena()) {
player.getActionSender().sendMessage("You can't do that in a duel!"); player.getPacketSender().sendMessage("You can't do that in a duel!");
return; return;
} }
player.duelStatus = 1; player.duelStatus = 1;
@@ -101,9 +102,9 @@ public class Dueling {
for (int i = 0; i < player.playerEquipment.length; i++) { for (int i = 0; i < player.playerEquipment.length; i++) {
sendDuelEquipment(player.playerEquipment[i], player.playerEquipmentN[i], i); sendDuelEquipment(player.playerEquipment[i], player.playerEquipmentN[i], i);
} }
player.getPlayerAssistant().sendFrame126("Dueling with: " + o.playerName + " (level-" + o.combatLevel + ")", 6671); player.getPacketSender().sendFrame126("Dueling with: " + o.playerName + " (level-" + o.combatLevel + ")", 6671);
player.getPlayerAssistant().sendFrame126("", 6684); player.getPacketSender().sendFrame126("", 6684);
player.getPlayerAssistant().sendFrame248(6575, 3321); player.getPacketSender().sendFrame248(6575, 3321);
player.getItemAssistant().resetItems(3322); player.getItemAssistant().resetItems(3322);
} }
@@ -131,7 +132,7 @@ public class Dueling {
for (int i = 0; i < player.duelRule.length; i++) { for (int i = 0; i < player.duelRule.length; i++) {
player.duelRule[i] = false; player.duelRule[i] = false;
} }
player.getPlayerAssistant().sendFrame87(286, 0); player.getPacketSender().sendFrame87(286, 0);
player.duelOption = 0; player.duelOption = 0;
} }
@@ -156,8 +157,8 @@ public class Dueling {
} else { } else {
player.getOutStream().writeByte(item.amount); player.getOutStream().writeByte(item.amount);
} }
if (item.id > Constants.ITEM_LIMIT || item.id < 0) { if (item.id > GameConstants.ITEM_LIMIT || item.id < 0) {
item.id = Constants.ITEM_LIMIT; item.id = GameConstants.ITEM_LIMIT;
} }
player.getOutStream().writeWordBigEndianA(item.id + 1); player.getOutStream().writeWordBigEndianA(item.id + 1);
@@ -185,8 +186,8 @@ public class Dueling {
} else { } else {
player.getOutStream().writeByte(item.amount); player.getOutStream().writeByte(item.amount);
} }
if (item.id > Constants.ITEM_LIMIT || item.id < 0) { if (item.id > GameConstants.ITEM_LIMIT || item.id < 0) {
item.id = Constants.ITEM_LIMIT; item.id = GameConstants.ITEM_LIMIT;
} }
player.getOutStream().writeWordBigEndianA(item.id + 1); player.getOutStream().writeWordBigEndianA(item.id + 1);
current++; current++;
@@ -205,23 +206,23 @@ public class Dueling {
public boolean stakeItem(int itemID, int fromSlot, int amount) { public boolean stakeItem(int itemID, int fromSlot, int amount) {
for (int i : Constants.ITEM_TRADEABLE) { for (int i : GameConstants.ITEM_TRADEABLE) {
if (i == itemID || itemID >= 6864 && itemID <= 6882) { if (i == itemID || itemID >= 6864 && itemID <= 6882) {
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You can't stake this item."); "You can't stake this item.");
return false; return false;
} }
} }
if (player.inTrade || player.isShopping) { if (player.inTrade || player.isShopping) {
player.getActionSender().sendMessage("You can not stake currently."); player.getPacketSender().sendMessage("You can not stake currently.");
return false; return false;
} }
if (!player.inDuelArena()) { if (!player.inDuelArena()) {
player.getActionSender().sendMessage("You must be in the duel arena to do that."); player.getPacketSender().sendMessage("You must be in the duel arena to do that.");
return false; return false;
} }
if (player.duelingArena()) { if (player.duelingArena()) {
player.getActionSender().sendMessage("You can't do that in a duel!"); player.getPacketSender().sendMessage("You can't do that in a duel!");
return false; return false;
} }
if (!RareProtection.doOtherDupe(player, itemID)) { if (!RareProtection.doOtherDupe(player, itemID)) {
@@ -263,8 +264,8 @@ public class Dueling {
o.getItemAssistant().resetItems(3322); o.getItemAssistant().resetItems(3322);
refreshDuelScreen(); refreshDuelScreen();
o.getDueling().refreshDuelScreen(); o.getDueling().refreshDuelScreen();
player.getPlayerAssistant().sendFrame126("", 6684); player.getPacketSender().sendFrame126("", 6684);
o.getPlayerAssistant().sendFrame126("", 6684); o.getPacketSender().sendFrame126("", 6684);
} }
if (Item.itemStackable[itemID] || Item.itemIsNote[itemID]) { if (Item.itemStackable[itemID] || Item.itemIsNote[itemID]) {
boolean found = false; boolean found = false;
@@ -288,8 +289,8 @@ public class Dueling {
o.getItemAssistant().resetItems(3322); o.getItemAssistant().resetItems(3322);
refreshDuelScreen(); refreshDuelScreen();
o.getDueling().refreshDuelScreen(); o.getDueling().refreshDuelScreen();
player.getPlayerAssistant().sendFrame126("", 6684); player.getPacketSender().sendFrame126("", 6684);
o.getPlayerAssistant().sendFrame126("", 6684); o.getPacketSender().sendFrame126("", 6684);
return true; return true;
} }
@@ -304,15 +305,15 @@ public class Dueling {
return false; return false;
} }
if (player.inTrade || player.isShopping) { if (player.inTrade || player.isShopping) {
player.getActionSender().sendMessage("You can not stake currently."); player.getPacketSender().sendMessage("You can not stake currently.");
return false; return false;
} }
if (!player.inDuelArena()) { if (!player.inDuelArena()) {
player.getActionSender().sendMessage("You must be in the duel arena to do that."); player.getPacketSender().sendMessage("You must be in the duel arena to do that.");
return false; return false;
} }
if (player.duelingArena()) { if (player.duelingArena()) {
player.getActionSender().sendMessage("You can't do that in a duel!"); player.getPacketSender().sendMessage("You can't do that in a duel!");
return false; return false;
} }
if (o.duelStatus <= 0 || player.duelStatus <= 0) { if (o.duelStatus <= 0 || player.duelStatus <= 0) {
@@ -322,7 +323,7 @@ public class Dueling {
} }
if (Item.itemStackable[itemID]) { if (Item.itemStackable[itemID]) {
if (player.getItemAssistant().freeSlots() - 1 < player.duelSpaceReq) { if (player.getItemAssistant().freeSlots() - 1 < player.duelSpaceReq) {
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You have too many rules set to remove that item."); "You have too many rules set to remove that item.");
return false; return false;
} }
@@ -369,7 +370,7 @@ public class Dueling {
o.getItemAssistant().resetItems(3322); o.getItemAssistant().resetItems(3322);
player.getDueling().refreshDuelScreen(); player.getDueling().refreshDuelScreen();
o.getDueling().refreshDuelScreen(); o.getDueling().refreshDuelScreen();
o.getPlayerAssistant().sendFrame126("", 6684); o.getPacketSender().sendFrame126("", 6684);
} }
} }
} }
@@ -398,9 +399,9 @@ public class Dueling {
o.getItemAssistant().resetItems(3322); o.getItemAssistant().resetItems(3322);
player.getDueling().refreshDuelScreen(); player.getDueling().refreshDuelScreen();
o.getDueling().refreshDuelScreen(); o.getDueling().refreshDuelScreen();
o.getPlayerAssistant().sendFrame126("", 6684); o.getPacketSender().sendFrame126("", 6684);
if (!goodSpace) { if (!goodSpace) {
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You have too many rules set to remove that item."); "You have too many rules set to remove that item.");
return true; return true;
} }
@@ -414,15 +415,15 @@ public class Dueling {
return; return;
} }
if (player.inTrade || player.isShopping) { if (player.inTrade || player.isShopping) {
player.getActionSender().sendMessage("You can not stake currently."); player.getPacketSender().sendMessage("You can not stake currently.");
return; return;
} }
if (!player.inDuelArena()) { if (!player.inDuelArena()) {
player.getActionSender().sendMessage("You must be in the duel arena to confirm a duel."); player.getPacketSender().sendMessage("You must be in the duel arena to confirm a duel.");
return; return;
} }
if (player.duelingArena()) { if (player.duelingArena()) {
player.getActionSender().sendMessage("You can't do that in a duel!"); player.getPacketSender().sendMessage("You can't do that in a duel!");
return; return;
} }
String itemId = ""; String itemId = "";
@@ -434,7 +435,7 @@ public class Dueling {
itemId += ItemAssistant.getItemName(item.id) + "\\n"; itemId += ItemAssistant.getItemName(item.id) + "\\n";
} }
} }
player.getPlayerAssistant().sendFrame126(itemId, 6516); player.getPacketSender().sendFrame126(itemId, 6516);
itemId = ""; itemId = "";
for (GameItem item : o.getDueling().stakedItems) { for (GameItem item : o.getDueling().stakedItems) {
if (Item.itemStackable[item.id] || Item.itemIsNote[item.id]) { if (Item.itemStackable[item.id] || Item.itemIsNote[item.id]) {
@@ -444,20 +445,20 @@ public class Dueling {
itemId += ItemAssistant.getItemName(item.id) + "\\n"; itemId += ItemAssistant.getItemName(item.id) + "\\n";
} }
} }
player.getPlayerAssistant().sendFrame126(itemId, 6517); player.getPacketSender().sendFrame126(itemId, 6517);
player.getPlayerAssistant().sendFrame126("", 8242); player.getPacketSender().sendFrame126("", 8242);
for (int i = 8238; i <= 8253; i++) { for (int i = 8238; i <= 8253; i++) {
player.getPlayerAssistant().sendFrame126("", i); player.getPacketSender().sendFrame126("", i);
} }
player.getPlayerAssistant().sendFrame126("Hitpoints will be restored.", 8250); player.getPacketSender().sendFrame126("Hitpoints will be restored.", 8250);
player.getPlayerAssistant().sendFrame126("Boosted stats will be restored.", player.getPacketSender().sendFrame126("Boosted stats will be restored.",
8238); 8238);
if (player.duelRule[8]) { if (player.duelRule[8]) {
player.getPlayerAssistant().sendFrame126( player.getPacketSender().sendFrame126(
"There will be obstacles in the arena.", 8239); "There will be obstacles in the arena.", 8239);
} }
player.getPlayerAssistant().sendFrame126("", 8240); player.getPacketSender().sendFrame126("", 8240);
player.getPlayerAssistant().sendFrame126("", 8241); player.getPacketSender().sendFrame126("", 8241);
String[] rulesOption = { "Players cannot forfeit!", String[] rulesOption = { "Players cannot forfeit!",
"Players cannot move.", "Players cannot use range.", "Players cannot move.", "Players cannot use range.",
@@ -468,28 +469,28 @@ public class Dueling {
int lineNumber = 8242; int lineNumber = 8242;
for (int i = 0; i < 8; i++) { for (int i = 0; i < 8; i++) {
if (player.duelRule[i]) { if (player.duelRule[i]) {
player.getPlayerAssistant().sendFrame126("" + rulesOption[i], player.getPacketSender().sendFrame126("" + rulesOption[i],
lineNumber); lineNumber);
lineNumber++; lineNumber++;
} }
} }
player.getPlayerAssistant().sendFrame126("", 6571); player.getPacketSender().sendFrame126("", 6571);
player.getPlayerAssistant().sendFrame248(6412, 197); player.getPacketSender().sendFrame248(6412, 197);
// c.getPA().showInterface(6412); // c.getPA().showInterface(6412);
} }
public void startDuel() { public void startDuel() {
Client o = (Client) PlayerHandler.players[player.duelingWith]; Client o = (Client) PlayerHandler.players[player.duelingWith];
if (!player.inDuelArena()) { if (!player.inDuelArena()) {
player.getActionSender().sendMessage("You must be in the duel arena to start a duel."); player.getPacketSender().sendMessage("You must be in the duel arena to start a duel.");
return; return;
} }
if (player.inTrade || player.isShopping) { if (player.inTrade || player.isShopping) {
player.getActionSender().sendMessage("You can not stake currently."); player.getPacketSender().sendMessage("You can not stake currently.");
return; return;
} }
if (player.duelingArena()) { if (player.duelingArena()) {
player.getActionSender().sendMessage("You can't do that in a duel!"); player.getPacketSender().sendMessage("You can't do that in a duel!");
return; return;
} }
if (o == null || o.disconnected) { if (o == null || o.disconnected) {
@@ -502,7 +503,7 @@ public class Dueling {
// prayer // prayer
// glows // glows
player.getPrayer().prayerActive[p] = false; player.getPrayer().prayerActive[p] = false;
player.getPlayerAssistant().sendConfig(player.getPrayer().PRAYER_GLOW[p], player.getPacketSender().sendConfig(player.getPrayer().PRAYER_GLOW[p],
0); 0);
} }
player.headIcon = -1; player.headIcon = -1;
@@ -542,7 +543,7 @@ public class Dueling {
player.getItemAssistant().removeItem(player.playerEquipment[13], 13); player.getItemAssistant().removeItem(player.playerEquipment[13], 13);
} }
player.duelStatus = 5; player.duelStatus = 5;
player.getPlayerAssistant().removeAllWindows(); player.getPacketSender().closeAllWindows();
player.specAmount = 10; player.specAmount = 10;
player.getItemAssistant().addSpecialBar(player.playerEquipment[player.playerWeapon]); player.getItemAssistant().addSpecialBar(player.playerEquipment[player.playerWeapon]);
@@ -562,8 +563,8 @@ public class Dueling {
} }
} }
player.getActionSender().createPlayerHints(10, o.playerId); player.getPacketSender().createPlayerHints(10, o.playerId);
player.getActionSender().showOption(3, 0, "Attack", 1); player.getPacketSender().showOption(3, 0, "Attack", 1);
for (int i = 0; i < 20; i++) { for (int i = 0; i < 20; i++) {
player.playerLevel[i] = player.getPlayerAssistant().getLevelForXP( player.playerLevel[i] = player.getPlayerAssistant().getLevelForXP(
player.playerXP[i]); player.playerXP[i]);
@@ -579,12 +580,12 @@ public class Dueling {
public void duelVictory() { public void duelVictory() {
Client opponent = (Client) PlayerHandler.players[player.duelingWith]; Client opponent = (Client) PlayerHandler.players[player.duelingWith];
if (opponent != null) { if (opponent != null) {
player.getPlayerAssistant().sendFrame126("" + opponent.combatLevel, 6839); player.getPacketSender().sendFrame126("" + opponent.combatLevel, 6839);
player.getPlayerAssistant().sendFrame126(opponent.playerName, 6840); player.getPacketSender().sendFrame126(opponent.playerName, 6840);
opponent.duelStatus = 0; opponent.duelStatus = 0;
} else { } else {
player.getPlayerAssistant().sendFrame126("", 6839); player.getPacketSender().sendFrame126("", 6839);
player.getPlayerAssistant().sendFrame126("", 6840); player.getPacketSender().sendFrame126("", 6840);
} }
PrayerDrain.resetPrayers(player); PrayerDrain.resetPrayers(player);
for (int i = 0; i < 20; i++) { for (int i = 0; i < 20; i++) {
@@ -602,15 +603,15 @@ public class Dueling {
} }
player.getPlayerAssistant().refreshSkill(3); player.getPlayerAssistant().refreshSkill(3);
duelRewardInterface(); duelRewardInterface();
player.getPlayerAssistant().showInterface(6733); player.getPacketSender().showInterface(6733);
player.getActionSender().sendMessage("You have won the duel!"); player.getPacketSender().sendMessage("You have won the duel!");
if (player.getPlayerAssistant().isPlayer()) { if (player.getPlayerAssistant().isPlayer()) {
GameLogger.writeLog(player.playerName, "duelingkiller", player.playerName + " killed " + opponent.playerName + " in the duel arena."); GameLogger.writeLog(player.playerName, "duelingkiller", player.playerName + " killed " + opponent.playerName + " in the duel arena.");
} }
player.getPlayerAssistant().movePlayer(Constants.DUELING_RESPAWN_X + Misc.random(5), Constants.DUELING_RESPAWN_Y + Misc.random(5), 0); player.getPlayerAssistant().movePlayer(GameConstants.DUELING_RESPAWN_X + Misc.random(5), GameConstants.DUELING_RESPAWN_Y + Misc.random(5), 0);
player.getPlayerAssistant().requestUpdates(); player.getPlayerAssistant().requestUpdates();
player.getActionSender().showOption(3, 0, "Challenge", 3); player.getPacketSender().showOption(3, 0, "Challenge", 3);
player.getActionSender().createPlayerHints(10, -1); player.getPacketSender().createPlayerHints(10, -1);
player.duelSpaceReq = 0; player.duelSpaceReq = 0;
player.openDuel = false; player.openDuel = false;
opponent.openDuel = false; opponent.openDuel = false;
@@ -635,8 +636,8 @@ public class Dueling {
} else { } else {
player.getOutStream().writeByte(item.amount); player.getOutStream().writeByte(item.amount);
} }
if (item.id > Constants.ITEM_LIMIT || item.id < 0) { if (item.id > GameConstants.ITEM_LIMIT || item.id < 0) {
item.id = Constants.ITEM_LIMIT; item.id = GameConstants.ITEM_LIMIT;
} }
player.getOutStream().writeWordBigEndianA(item.id + 1); player.getOutStream().writeWordBigEndianA(item.id + 1);
} }
@@ -650,14 +651,14 @@ public class Dueling {
if (item.id > 0 && item.amount > 0) { if (item.id > 0 && item.amount > 0) {
if (Item.itemStackable[item.id]) { if (Item.itemStackable[item.id]) {
if (!player.getItemAssistant().addItem(item.id, item.amount)) { if (!player.getItemAssistant().addItem(item.id, item.amount)) {
Server.itemHandler.createGroundItem(player, item.id, GameEngine.itemHandler.createGroundItem(player, item.id,
player.getX(), player.getY(), item.amount, player.getId()); player.getX(), player.getY(), item.amount, player.getId());
} }
} else { } else {
int amount = item.amount; int amount = item.amount;
for (int a = 1; a <= amount; a++) { for (int a = 1; a <= amount; a++) {
if (!player.getItemAssistant().addItem(item.id, 1)) { if (!player.getItemAssistant().addItem(item.id, 1)) {
Server.itemHandler.createGroundItem(player, item.id, GameEngine.itemHandler.createGroundItem(player, item.id,
player.getX(), player.getY(), 1, player.getId()); player.getX(), player.getY(), 1, player.getId());
} }
} }
@@ -668,14 +669,14 @@ public class Dueling {
if (item.id > 0 && item.amount > 0) { if (item.id > 0 && item.amount > 0) {
if (Item.itemStackable[item.id]) { if (Item.itemStackable[item.id]) {
if (!player.getItemAssistant().addItem(item.id, item.amount)) { if (!player.getItemAssistant().addItem(item.id, item.amount)) {
Server.itemHandler.createGroundItem(player, item.id, GameEngine.itemHandler.createGroundItem(player, item.id,
player.getX(), player.getY(), item.amount, player.getId()); player.getX(), player.getY(), item.amount, player.getId());
} }
} else { } else {
int amount = item.amount; int amount = item.amount;
for (int a = 1; a <= amount; a++) { for (int a = 1; a <= amount; a++) {
if (!player.getItemAssistant().addItem(item.id, 1)) { if (!player.getItemAssistant().addItem(item.id, 1)) {
Server.itemHandler.createGroundItem(player, item.id, GameEngine.itemHandler.createGroundItem(player, item.id,
player.getX(), player.getY(), 1, player.getId()); player.getX(), player.getY(), 1, player.getId());
} }
} }
@@ -691,14 +692,14 @@ public class Dueling {
public void declineDuel() { public void declineDuel() {
Client o = (Client) PlayerHandler.players[player.duelingWith]; Client o = (Client) PlayerHandler.players[player.duelingWith];
if (!player.inDuelArena()) { if (!player.inDuelArena()) {
player.getActionSender().sendMessage("You must be in the duel arena to do that."); player.getPacketSender().sendMessage("You must be in the duel arena to do that.");
return; return;
} }
if (player.duelingArena()) { if (player.duelingArena()) {
player.getActionSender().sendMessage("You can't do that in a duel!"); player.getPacketSender().sendMessage("You can't do that in a duel!");
return; return;
} }
player.getPlayerAssistant().removeAllWindows(); player.getPacketSender().closeAllWindows();
player.duelStatus = 0; player.duelStatus = 0;
player.openDuel = false; player.openDuel = false;
o.openDuel = false; o.openDuel = false;
@@ -735,12 +736,12 @@ public class Dueling {
if (player.isDead) { if (player.isDead) {
player.lostDuel = true; player.lostDuel = true;
} }
player.getActionSender().showOption(3, 0, "Challenge", 3); player.getPacketSender().showOption(3, 0, "Challenge", 3);
player.headIconHints = 0; player.headIconHints = 0;
for (int i = 0; i < player.duelRule.length; i++) { for (int i = 0; i < player.duelRule.length; i++) {
player.duelRule[i] = false; player.duelRule[i] = false;
} }
player.getActionSender().createPlayerHints(10, -1); player.getPacketSender().createPlayerHints(10, -1);
player.duelStatus = 0; player.duelStatus = 0;
player.duelSpaceReq = 0; player.duelSpaceReq = 0;
//player.openDuel = false; //player.openDuel = false;
@@ -763,18 +764,18 @@ public class Dueling {
} }
o.duelStatus = 1; o.duelStatus = 1;
player.duelStatus = 1; player.duelStatus = 1;
o.getPlayerAssistant().sendFrame126("", 6684); o.getPacketSender().sendFrame126("", 6684);
player.getPlayerAssistant().sendFrame126("", 6684); player.getPacketSender().sendFrame126("", 6684);
} }
public void selectRule(int i) { // rules public void selectRule(int i) { // rules
Client o = (Client) PlayerHandler.players[player.duelingWith]; Client o = (Client) PlayerHandler.players[player.duelingWith];
if (!player.inDuelArena()) { if (!player.inDuelArena()) {
player.getActionSender().sendMessage("You must be in the duel arena to change your rules."); player.getPacketSender().sendMessage("You must be in the duel arena to change your rules.");
return; return;
} }
if (player.duelingArena()) { if (player.duelingArena()) {
player.getActionSender().sendMessage("You can't do that in a duel!"); player.getPacketSender().sendMessage("You can't do that in a duel!");
return; return;
} }
if (o == null) { if (o == null) {
@@ -801,14 +802,14 @@ public class Dueling {
if (i == 16 && (player.getItemAssistant().is2handed(ItemAssistant.getItemName(player.playerEquipment[player.playerWeapon]).toLowerCase(), player.playerEquipment[player.playerWeapon]) if (i == 16 && (player.getItemAssistant().is2handed(ItemAssistant.getItemName(player.playerEquipment[player.playerWeapon]).toLowerCase(), player.playerEquipment[player.playerWeapon])
&& player.getItemAssistant().freeSlots() == 0) || (o.getItemAssistant().is2handed(ItemAssistant.getItemName(player.playerEquipment[player.playerWeapon]).toLowerCase(), player.playerEquipment[player.playerWeapon]) && player.getItemAssistant().freeSlots() == 0) || (o.getItemAssistant().is2handed(ItemAssistant.getItemName(player.playerEquipment[player.playerWeapon]).toLowerCase(), player.playerEquipment[player.playerWeapon])
&& o.getItemAssistant().freeSlots() == 0)) { && o.getItemAssistant().freeSlots() == 0)) {
player.getActionSender().sendMessage("You or your opponent don't have the required space to set this rule."); player.getPacketSender().sendMessage("You or your opponent don't have the required space to set this rule.");
return; return;
} }
if (i >= 11) { if (i >= 11) {
if (player.getItemAssistant().freeSlots() < player.duelSpaceReq if (player.getItemAssistant().freeSlots() < player.duelSpaceReq
|| o.getItemAssistant().freeSlots() < o.duelSpaceReq) { || o.getItemAssistant().freeSlots() < o.duelSpaceReq) {
player.getActionSender() player.getPacketSender()
.sendMessage( .sendMessage(
"You or your opponent don't have the required space to set this rule."); "You or your opponent don't have the required space to set this rule.");
if (player.playerEquipment[player.duelSlot] > 0) { if (player.playerEquipment[player.duelSlot] > 0) {
@@ -829,10 +830,10 @@ public class Dueling {
player.duelOption -= player.DUEL_RULE_ID[i]; player.duelOption -= player.DUEL_RULE_ID[i];
} }
player.getPlayerAssistant().sendFrame87(286, player.duelOption); player.getPacketSender().sendFrame87(286, player.duelOption);
o.duelOption = player.duelOption; o.duelOption = player.duelOption;
o.duelRule[i] = player.duelRule[i]; o.duelRule[i] = player.duelRule[i];
o.getPlayerAssistant().sendFrame87(286, o.duelOption); o.getPacketSender().sendFrame87(286, o.duelOption);
if (player.duelRule[8]) { if (player.duelRule[8]) {
if (player.duelRule[1]) { if (player.duelRule[1]) {
@@ -1,14 +1,15 @@
package redone.game.content.minigames; package com.rebotted.game.content.minigames;
import redone.Server; import com.rebotted.GameEngine;
import redone.event.CycleEvent; import com.rebotted.event.CycleEvent;
import redone.event.CycleEventContainer; import com.rebotted.event.CycleEventContainer;
import redone.event.CycleEventHandler; import com.rebotted.event.CycleEventHandler;
import redone.game.npcs.Npc; import com.rebotted.game.npcs.Npc;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import redone.game.players.PlayerHandler; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.game.players.PlayerHandler;
import com.rebotted.util.Misc;
public class FightCaves { public class FightCaves {
@@ -118,7 +119,7 @@ public class FightCaves {
int def = getDef(npc); int def = getDef(npc);
NpcHandler.spawnNpc(player, npc, X, Y, H, 0, hp, max, atk, def, true, false); NpcHandler.spawnNpc(player, npc, X, Y, H, 0, hp, max, atk, def, true, false);
} }
player.getActionSender().sendMessage("You are now on wave @red@" + wave + "@bla@."); player.getPacketSender().sendMessage("You are now on wave @red@" + wave + "@bla@.");
} else if (player.waveId == 62) { } else if (player.waveId == 62) {
player.getDialogueHandler().sendDialogues(102, 2617); player.getDialogueHandler().sendDialogues(102, 2617);
int a = Misc.random(1); int a = Misc.random(1);
@@ -131,7 +132,7 @@ public class FightCaves {
int atk = getAtk(npc); int atk = getAtk(npc);
int def = getDef(npc); int def = getDef(npc);
NpcHandler.spawnNpc(player, npc, X, Y, H, 0, hp, max, atk, def, true, false); NpcHandler.spawnNpc(player, npc, X, Y, H, 0, hp, max, atk, def, true, false);
player.getActionSender().sendMessage("You are now on wave @red@63@bla@."); player.getPacketSender().sendMessage("You are now on wave @red@63@bla@.");
} }
player.tzhaarToKill = npcAmount; player.tzhaarToKill = npcAmount;
player.tzhaarKilled = 0; player.tzhaarKilled = 0;
@@ -154,17 +155,17 @@ public class FightCaves {
} }
} }
public static void spawnHealers(Client player, int i, int amount) { public static void spawnHealers(Player c, int i, int amount) {
if (player.spawnedHealers < 4) { if (c.spawnedHealers < 4) {
int hp = getHp(YT_HURKOT); int hp = getHp(YT_HURKOT);
int max = getMax(YT_HURKOT); int max = getMax(YT_HURKOT);
int atk = getAtk(YT_HURKOT); int atk = getAtk(YT_HURKOT);
int def = getDef(YT_HURKOT); int def = getDef(YT_HURKOT);
for (int i1 = 0; i1 < amount; i1++) { for (int i1 = 0; i1 < amount; i1++) {
NpcHandler.spawnNpc(player, YT_HURKOT, HEALER_COORDS[i1][0], HEALER_COORDS[i1][1], player.heightLevel, 0, hp, max, atk, def, false, false); NpcHandler.spawnNpc(c, YT_HURKOT, HEALER_COORDS[i1][0], HEALER_COORDS[i1][1], c.heightLevel, 0, hp, max, atk, def, false, false);
} }
player.spawnedHealers = amount; c.spawnedHealers = amount;
player.canHealersRespawn = false; c.canHealersRespawn = false;
} }
} }
@@ -311,7 +312,7 @@ public class FightCaves {
@Override @Override
public void execute(CycleEventContainer container) { public void execute(CycleEventContainer container) {
if (c2 != null) { if (c2 != null) {
Server.fightCaves.spawnNextWave(c2); GameEngine.fightCaves.spawnNextWave(c2);
} }
container.stop(); container.stop();
} }
@@ -330,28 +331,28 @@ public class FightCaves {
c.getItemAssistant().addItem(6570, 1); c.getItemAssistant().addItem(6570, 1);
c.getItemAssistant().addItem(6529, 8032); c.getItemAssistant().addItem(6529, 8032);
c.getDialogueHandler().sendDialogues(103, 2617); c.getDialogueHandler().sendDialogues(103, 2617);
c.getActionSender().sendMessage("You were victorious!"); c.getPacketSender().sendMessage("You were victorious!");
c.getPlayerAssistant().resetTzhaar(); c.getPlayerAssistant().resetTzhaar();
c.killedJad = true; c.killedJad = true;
c.waveId = 300; c.waveId = 300;
c.setSpecialTarget(null); c.setSpecialTarget(null);
} else { } else {
c.getActionSender().sendMessage("You must be in the fight caves to do this."); c.getPacketSender().sendMessage("You must be in the fight caves to do this.");
} }
} }
public static void healJad(Client player, int i) { public static void healJad(Player c, int i) {
if (NpcHandler.npcs[i].npcType == YT_HURKOT && !NpcHandler.npcs[i].isDead) { if (NpcHandler.npcs[i].npcType == YT_HURKOT && !NpcHandler.npcs[i].isDead) {
if (player.getSpecialTarget() != null) { if (c.getSpecialTarget() != null) {
if (player.getSpecialTarget().npcType == TZTOK_JAD) { if (c.getSpecialTarget().npcType == TZTOK_JAD) {
Npc jad = player.getSpecialTarget(); Npc jad = c.getSpecialTarget();
NpcHandler.npcs[i].gfx0(444); NpcHandler.npcs[i].gfx0(444);
NpcHandler.npcs[i].startAnimation(2639, i); NpcHandler.npcs[i].startAnimation(2639, i);
jad.HP += 1+Misc.random(8); jad.HP += 1+Misc.random(8);
if (jad.HP >= getHp(TZTOK_JAD)) { if (jad.HP >= getHp(TZTOK_JAD)) {
jad.HP = getHp(TZTOK_JAD); jad.HP = getHp(TZTOK_JAD);
if (player.spawnedHealers < 4) if (c.spawnedHealers < 4)
spawnHealers(player, i, 4-player.spawnedHealers); spawnHealers(c, i, 4-c.spawnedHealers);
} }
} }
} }
@@ -1,11 +1,10 @@
package redone.game.content.minigames; package com.rebotted.game.content.minigames;
import java.util.Collections; import java.util.Collections;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import com.rebotted.game.players.Player;
import redone.game.players.Client; import com.rebotted.util.Misc;
import redone.util.Misc;
/** /**
* @author ArrowzFtw * @author ArrowzFtw
@@ -37,8 +36,8 @@ public class FightPits {
/** /**
* @note Stores player and State * @note Stores player and State
*/ */
private static Map<Client, String> playerMap = Collections private static Map<Player, String> playerMap = Collections
.synchronizedMap(new HashMap<Client, String>()); .synchronizedMap(new HashMap<Player, String>());
/** /**
* @note Where to spawn when pits game starts * @note Where to spawn when pits game starts
@@ -64,8 +63,8 @@ public class FightPits {
/** /**
* @return HashMap Value * @return HashMap Value
*/ */
public static String getState(Client c) { public static String getState(Player player) {
return playerMap.get(c); return playerMap.get(player);
} }
private static final int TOKKUL_ID = 6529; private static final int TOKKUL_ID = 6529;
@@ -73,7 +72,7 @@ public class FightPits {
/** /**
* @note Adds player to waiting room. * @note Adds player to waiting room.
*/ */
public static void addPlayer(Client c) { public static void addPlayer(Player c) {
playerMap.put(c, WAITING); playerMap.put(c, WAITING);
c.getPlayerAssistant().movePlayer(WAITING_ROOM_X, WAITING_ROOM_Y, 0); c.getPlayerAssistant().movePlayer(WAITING_ROOM_X, WAITING_ROOM_Y, 0);
} }
@@ -81,7 +80,7 @@ public class FightPits {
/** /**
* @note Starts the game and moves players to arena * @note Starts the game and moves players to arena
*/ */
private static void enterGame(Client c) { private static void enterGame(Player c) {
playerMap.put(c, PLAYING); playerMap.put(c, PLAYING);
int teleportToX = MINIGAME_START_POINT_X + Misc.random(12); int teleportToX = MINIGAME_START_POINT_X + Misc.random(12);
int teleportToY = MINIGAME_START_POINT_Y + Misc.random(12); int teleportToY = MINIGAME_START_POINT_Y + Misc.random(12);
@@ -94,41 +93,41 @@ public class FightPits {
/** /**
* @note Removes player from pits if there in waiting or in game * @note Removes player from pits if there in waiting or in game
*/ */
public static void removePlayer(Client c, boolean forceRemove) { public static void removePlayer(Player player, boolean forceRemove) {
c.inPits = false; player.inPits = false;
if (forceRemove) { if (forceRemove) {
c.getPlayerAssistant() player.getPlayerAssistant()
.movePlayer(EXIT_WAITING_X, EXIT_WAITING_Y, 0); .movePlayer(EXIT_WAITING_X, EXIT_WAITING_Y, 0);
playerMap.remove(c); playerMap.remove(player);
return; return;
} }
String state = playerMap.get(c); String state = playerMap.get(player);
if (state == null) { if (state == null) {
c.getPlayerAssistant() player.getPlayerAssistant()
.movePlayer(EXIT_WAITING_X, EXIT_WAITING_Y, 0); .movePlayer(EXIT_WAITING_X, EXIT_WAITING_Y, 0);
return; return;
} }
if (state.equals(PLAYING)) { if (state.equals(PLAYING)) {
if (getListCount(PLAYING) - 1 == 0 && !forceRemove) { if (getListCount(PLAYING) - 1 == 0 && !forceRemove) {
pitsChampion = c.playerName; pitsChampion = player.playerName;
c.headIcon = 21; player.headIcon = 21;
c.updateRequired = true; player.updateRequired = true;
c.getItemAssistant() player.getItemAssistant()
.addItem(TOKKUL_ID, 1500 + Misc.random(500)); .addItem(TOKKUL_ID, 1500 + Misc.random(500));
} }
c.getPlayerAssistant().movePlayer(EXIT_GAME_X, EXIT_GAME_Y, 0); player.getPlayerAssistant().movePlayer(EXIT_GAME_X, EXIT_GAME_Y, 0);
} else if (state.equals(WAITING)) { } else if (state.equals(WAITING)) {
c.getPlayerAssistant() player.getPlayerAssistant()
.movePlayer(EXIT_WAITING_X, EXIT_WAITING_Y, 0); .movePlayer(EXIT_WAITING_X, EXIT_WAITING_Y, 0);
c.getPlayerAssistant().walkableInterface(-1); player.getPacketSender().walkableInterface(-1);
} }
playerMap.remove(c); playerMap.remove(player);
if (state.equals(PLAYING)) { if (state.equals(PLAYING)) {
if (!forceRemove) { if (!forceRemove) {
playerMap.put(c, WAITING); playerMap.put(player, WAITING);
} }
} }
} }
@@ -150,45 +149,40 @@ public class FightPits {
* @note Updates players * @note Updates players
*/ */
private static void update() { private static void update() {
for (Client c : playerMap.keySet()) { for (Player c : playerMap.keySet()) {
String status = playerMap.get(c); String status = playerMap.get(c);
@SuppressWarnings("unused") @SuppressWarnings("unused")
boolean updated = status == WAITING ? updateWaitingRoom(c) boolean updated = status == WAITING ? updateWaitingRoom(c) : updateGame(c);
: updateGame(c);
} }
} }
/** /**
* @note Updates waiting room interfaces etc. * @note Updates waiting room interfaces etc.
*/ */
public static boolean updateWaitingRoom(Client c) { public static boolean updateWaitingRoom(Player c) {
c.getPlayerAssistant().sendFrame126( c.getPacketSender().sendFrame126("Next Game Begins In : " + gameStartTimer, 2805);
"Next Game Begins In : " + gameStartTimer, 2805); c.getPacketSender().sendFrame126("Champion: JalYt-Ket-" + pitsChampion, 2806);
c.getPlayerAssistant().sendFrame126( c.getPacketSender().sendConfig(560, 1);
"Champion: JalYt-Ket-" + pitsChampion, 2806); c.getPacketSender().walkableInterface(2804);
c.getPlayerAssistant().sendConfig(560, 1);
c.getPlayerAssistant().walkableInterface(2804);
return true; return true;
} }
/** /**
* @note Updates players in game interfaces etc. * @note Updates players in game interfaces etc.
*/ */
public static boolean updateGame(Client c) { public static boolean updateGame(Player c) {
c.getPlayerAssistant().sendFrame126( c.getPacketSender().sendFrame126("Foes Remaining: " + getListCount(PLAYING), 2805);
"Foes Remaining: " + getListCount(PLAYING), 2805); c.getPacketSender().sendFrame126("Champion: JalYt-Ket-" + pitsChampion, 2806);
c.getPlayerAssistant().sendFrame126( c.getPacketSender().sendConfig(560, 1);
"Champion: JalYt-Ket-" + pitsChampion, 2806); c.getPacketSender().walkableInterface(2804);
c.getPlayerAssistant().sendConfig(560, 1);
c.getPlayerAssistant().walkableInterface(2804);
return true; return true;
} }
/** /**
* @note Handles death and respawn rubbish. * @note Handles death and respawn rubbish.
*/ */
public static void handleDeath(Client c) { public static void handleDeath(Player player) {
removePlayer(c, true); removePlayer(player, true);
} }
/* /*
@@ -221,7 +215,7 @@ public class FightPits {
* @note Starts game for the players in waiting room * @note Starts game for the players in waiting room
*/ */
private static void beginGame() { private static void beginGame() {
for (Client c : playerMap.keySet()) { for (Player c : playerMap.keySet()) {
enterGame(c); enterGame(c);
} }
} }
@@ -230,7 +224,7 @@ public class FightPits {
* @note Ends game and returns player to their normal spot. * @note Ends game and returns player to their normal spot.
*/ */
private static void endGame() { private static void endGame() {
for (Client c : playerMap.keySet()) { for (Player c : playerMap.keySet()) {
removePlayer(c, true); removePlayer(c, true);
} }
} }
@@ -3,10 +3,10 @@
* the editor. * the editor.
*/ */
package redone.game.content.minigames; package com.rebotted.game.content.minigames;
import redone.game.items.ItemAssistant; import com.rebotted.game.items.ItemAssistant;
import redone.game.players.Client; import com.rebotted.game.players.Client;
/** /**
* @author D * @author D
@@ -35,19 +35,19 @@ public class MageArena {
public void openShop() { public void openShop() {
for (int i = 0; i < shopItems.length; i++) { for (int i = 0; i < shopItems.length; i++) {
c.getPlayerAssistant().sendFrame34(15948, shopItems[i], i, 100); c.getPacketSender().sendFrame34(15948, shopItems[i], i, 100);
} }
for (int i = 15950; i < interfaceText.length; i++) { for (int i = 15950; i < interfaceText.length; i++) {
c.getPlayerAssistant().sendFrame126(interfaceText[i - 15950], i); c.getPacketSender().sendFrame126(interfaceText[i - 15950], i);
} }
c.getPlayerAssistant().sendFrame126(Integer.toString(telePoints), 15955); c.getPacketSender().sendFrame126(Integer.toString(telePoints), 15955);
c.getPlayerAssistant().sendFrame126(Integer.toString(enchantPoints), c.getPacketSender().sendFrame126(Integer.toString(enchantPoints),
15956); 15956);
c.getPlayerAssistant().sendFrame126(Integer.toString(gravePoints), 15957); c.getPacketSender().sendFrame126(Integer.toString(gravePoints), 15957);
c.getPlayerAssistant().sendFrame126(Integer.toString(alchPoints), 15958); c.getPacketSender().sendFrame126(Integer.toString(alchPoints), 15958);
c.getPlayerAssistant().showInterface(15944); c.getPacketSender().showInterface(15944);
} }
public int getTelVal(int itemId) { public int getTelVal(int itemId) {
@@ -255,11 +255,11 @@ public class MageArena {
} }
public void sendMessage(int itemId) { public void sendMessage(int itemId) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
ItemAssistant.getItemName(itemId) + " costs " ItemAssistant.getItemName(itemId) + " costs "
+ getGraveValue(itemId) + " Graveyard points, " + getGraveValue(itemId) + " Graveyard points, "
+ getAlchVal(itemId) + " Alchemy points,"); + getAlchVal(itemId) + " Alchemy points,");
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"" + getEnchVal(itemId) + " Enchantment points, and " "" + getEnchVal(itemId) + " Enchantment points, and "
+ getTelVal(itemId) + " Telekinetic points."); + getTelVal(itemId) + " Telekinetic points.");
} }
@@ -1,13 +1,13 @@
package redone.game.content.minigames; package com.rebotted.game.content.minigames;
import java.util.HashMap; import java.util.HashMap;
import redone.Server; import com.rebotted.GameEngine;
import redone.game.content.combat.prayer.PrayerDrain; import com.rebotted.game.content.combat.prayer.PrayerDrain;
import redone.game.npcs.Npc; import com.rebotted.game.npcs.Npc;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.util.Misc;
/** /**
* @author Harlan Credits to Sanity * @author Harlan Credits to Sanity
@@ -26,8 +26,8 @@ public class PestControl {
/** /**
* Hashmap for the players in lobby * Hashmap for the players in lobby
*/ */
public static HashMap<Client, Integer> waitingBoat = new HashMap<Client, Integer>(); public static HashMap<Player, Integer> waitingBoat = new HashMap<Player, Integer>();
private static HashMap<Client, Integer> gamePlayers = new HashMap<Client, Integer>(); private static HashMap<Player, Integer> gamePlayers = new HashMap<Player, Integer>();
private static int gameTimer = -1; private static int gameTimer = -1;
private static int waitTimer = 60; private static int waitTimer = 60;
@@ -117,7 +117,7 @@ public class PestControl {
* @param player * @param player
* The Player. * The Player.
*/ */
public static void removePlayerGame(Client player) { public static void removePlayerGame(Player player) {
if (gamePlayers.containsKey(player)) { if (gamePlayers.containsKey(player)) {
player.getPlayerAssistant().movePlayer(2657, 2639, 0); player.getPlayerAssistant().movePlayer(2657, 2639, 0);
gamePlayers.remove(player); gamePlayers.remove(player);
@@ -125,27 +125,27 @@ public class PestControl {
} }
private static void waitBoat() { private static void waitBoat() {
for (final Client c : waitingBoat.keySet()) { for (final Player c : waitingBoat.keySet()) {
if (c != null) { if (c != null) {
if (gameStarted && isInPcBoat(c)) { if (gameStarted && isInPcBoat(c)) {
c.getActionSender().sendMessage("Next Departure: " + (waitTimer + gameTimer) / 60 + " minutes"); c.getPacketSender().sendMessage("Next Departure: " + (waitTimer + gameTimer) / 60 + " minutes");
} else { } else {
c.getActionSender().sendMessage("Next Departure: " + waitTimer + " seconds."); c.getPacketSender().sendMessage("Next Departure: " + waitTimer + " seconds.");
} }
} }
} }
} }
public static void setGameInterface() { public static void setGameInterface() {
for (final Client player : gamePlayers.keySet()) { for (final Player player : gamePlayers.keySet()) {
if (player != null) { if (player != null) {
if (gameTimer > 60) { if (gameTimer > 60) {
player.getActionSender().sendMessage("Time remaining: " + gameTimer / 60 + " minutes"); player.getPacketSender().sendMessage("Time remaining: " + gameTimer / 60 + " minutes");
} else if (gameTimer < 60) { } else if (gameTimer < 60) {
player.getActionSender().sendMessage("Time remaining: " + gameTimer + " seconds"); player.getPacketSender().sendMessage("Time remaining: " + gameTimer + " seconds");
} }
player.getActionSender().sendMessage("The knights current health is " + KNIGHTS_HEALTH + "."); player.getPacketSender().sendMessage("The knights current health is " + KNIGHTS_HEALTH + ".");
player.getActionSender().sendMessage("Your current pc damage is " + player.pcDamage + "."); player.getPacketSender().sendMessage("Your current pc damage is " + player.pcDamage + ".");
} }
} }
} }
@@ -201,16 +201,14 @@ public class PestControl {
waitTimer = -1; waitTimer = -1;
spawnNPC(); spawnNPC();
setGameInterface(); setGameInterface();
for (Client player : waitingBoat.keySet()) { for (Player player : waitingBoat.keySet()) {
int team = waitingBoat.get(player); int team = waitingBoat.get(player);
if (player == null) { if (player == null) {
continue; continue;
} }
player.getPlayerAssistant().movePlayer(2656 + Misc.random3(3), player.getPlayerAssistant().movePlayer(2656 + Misc.random3(3), 2614 - Misc.random3(4), 0);
2614 - Misc.random3(4), 0);
player.getDialogueHandler().sendDialogues(599, 3790); player.getDialogueHandler().sendDialogues(599, 3790);
player.getActionSender().sendMessage( player.getPacketSender().sendMessage("The Pest Control Game has begun!");
"The Pest Control Game has begun!");
gamePlayers.put(player, team); gamePlayers.put(player, team);
} }
@@ -224,7 +222,7 @@ public class PestControl {
*/ */
private static int playersInBoat() { private static int playersInBoat() {
int players = 0; int players = 0;
for (Client player : waitingBoat.keySet()) { for (Player player : waitingBoat.keySet()) {
if (player != null) { if (player != null) {
players++; players++;
} }
@@ -237,12 +235,11 @@ public class PestControl {
/** /**
* Checks how many players are in the game * Checks how many players are in the game
*
* @return players in the game * @return players in the game
*/ */
private int playersInGame() { private int playersInGame() {
int players = 0; int players = 0;
for (Client player : gamePlayers.keySet()) { for (Player player : gamePlayers.keySet()) {
if (player != null) { if (player != null) {
players++; players++;
} }
@@ -253,14 +250,8 @@ public class PestControl {
return players; return players;
} }
/**
* Ends the game
*
* @param won
* Did you win?
*/
private void endGame(boolean won) { private void endGame(boolean won) {
for (Client player : gamePlayers.keySet()) { for (Player player : gamePlayers.keySet()) {
if (player == null) { if (player == null) {
continue; continue;
} }
@@ -268,7 +259,7 @@ public class PestControl {
if (won && player.pcDamage > 50) { if (won && player.pcDamage > 50) {
player.getDialogueHandler().sendDialogues(598, 3790); player.getDialogueHandler().sendDialogues(598, 3790);
int POINT_REWARD = 4; int POINT_REWARD = 4;
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You have won the pest control game and have been awarded " "You have won the pest control game and have been awarded "
+ POINT_REWARD + " Pest Control points."); + POINT_REWARD + " Pest Control points.");
player.pcPoints += POINT_REWARD; player.pcPoints += POINT_REWARD;
@@ -277,12 +268,12 @@ public class PestControl {
player.getDialogueHandler().sendDialogues(596, 3790); player.getDialogueHandler().sendDialogues(596, 3790);
int POINT_REWARD2 = 2; int POINT_REWARD2 = 2;
player.pcPoints += POINT_REWARD2; player.pcPoints += POINT_REWARD2;
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"The void knights notice your lack of zeal. You only gain " "The void knights notice your lack of zeal. You only gain "
+ POINT_REWARD2 + " points."); + POINT_REWARD2 + " points.");
} else { } else {
player.getDialogueHandler().sendDialogues(597, 3790); player.getDialogueHandler().sendDialogues(597, 3790);
player.getActionSender() player.getPacketSender()
.sendMessage( .sendMessage(
"You failed to kill all the portals in 3 minutes and have not been awarded points."); "You failed to kill all the portals in 3 minutes and have not been awarded points.");
} }
@@ -327,7 +318,7 @@ public class PestControl {
* Cleans the player of any damage, loss they may of received * Cleans the player of any damage, loss they may of received
*/ */
private void cleanUpPlayer() { private void cleanUpPlayer() {
for (Client player : gamePlayers.keySet()) { for (Player player : gamePlayers.keySet()) {
player.poisonDamage = 0; player.poisonDamage = 0;
PrayerDrain.resetPrayers(player); PrayerDrain.resetPrayers(player);
for (int i = 0; i < 24; i++) { for (int i = 0; i < 24; i++) {
@@ -375,13 +366,13 @@ public class PestControl {
/** /**
* Moves a player out of the waiting boat * Moves a player out of the waiting boat
* *
* @param c * @param player
* Client c * Client c
*/ */
public static void leaveWaitingBoat(Client c) { public static void leaveWaitingBoat(Player player) {
if (waitingBoat.containsKey(c)) { if (waitingBoat.containsKey(player)) {
waitingBoat.remove(c); waitingBoat.remove(player);
c.getPlayerAssistant().movePlayer(2657, 2639, 0); player.getPlayerAssistant().movePlayer(2657, 2639, 0);
} }
} }
@@ -391,23 +382,23 @@ public class PestControl {
* @param player * @param player
* The player * The player
*/ */
public static void addToWaitRoom(Client player) { public static void addToWaitRoom(Player player) {
if (player != null && player.combatLevel > 39) { if (player != null && player.combatLevel > 39) {
waitingBoat.put(player, 1); waitingBoat.put(player, 1);
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You have joined the Pest Control boat."); "You have joined the Pest Control boat.");
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You currently have " + player.pcPoints "You currently have " + player.pcPoints
+ " Pest Control Points."); + " Pest Control Points.");
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"There are currently " + playersInBoat() "There are currently " + playersInBoat()
+ " players ready in the boat."); + " players ready in the boat.");
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"Players needed: " + PLAYERS_REQUIRED + " to 25 players."); "Players needed: " + PLAYERS_REQUIRED + " to 25 players.");
player.getPlayerAssistant().movePlayer(2661, 2639, 0); player.getPlayerAssistant().movePlayer(2661, 2639, 0);
waitBoat(); waitBoat();
} else if (player.combatLevel < 40) { } else if (player.combatLevel < 40) {
player.getActionSender().sendMessage("You need 40 combat to play pest control."); player.getPacketSender().sendMessage("You need 40 combat to play pest control.");
} }
} }
@@ -418,7 +409,7 @@ public class PestControl {
* The player * The player
* @return return * @return return
*/ */
public static boolean isInGame(Client player) { public static boolean isInGame(Player player) {
return gamePlayers.containsKey(player); return gamePlayers.containsKey(player);
} }
@@ -429,7 +420,7 @@ public class PestControl {
* The player * The player
* @return return * @return return
*/ */
public static boolean isInPcBoat(Client player) { public static boolean isInPcBoat(Player player) {
return waitingBoat.containsKey(player); return waitingBoat.containsKey(player);
} }
@@ -440,11 +431,11 @@ public class PestControl {
private void spawnNPC() { private void spawnNPC() {
//npcid, npcx, npcy, heightlevel, walking type, hp, att, def //npcid, npcx, npcy, heightlevel, walking type, hp, att, def
for (int[] aPcNPCData : pcNPCData) { for (int[] aPcNPCData : pcNPCData) {
Server.npcHandler.spawnNpc2(aPcNPCData[0], aPcNPCData[1], aPcNPCData[2], 0, 0, 200, 0, 0, playersInGame() * 200); GameEngine.npcHandler.spawnNpc2(aPcNPCData[0], aPcNPCData[1], aPcNPCData[2], 0, 0, 200, 0, 0, playersInGame() * 200);
} }
for (int[] voidMonsters : voidMonsterData) { for (int[] voidMonsters : voidMonsterData) {
//Server.npcHandler.spawnNpc2(voidMonsters[0], voidMonsters[1], voidMonsters[2], 0, 1, voidMonsters[NpcHandler.getNpcListHP(voidMonsters[0])], NpcHandler.getNpcListCombat(voidMonsters[0])/10, NpcHandler.getNpcListCombat(voidMonsters[0]), playersInGame() * 200); //Server.npcHandler.spawnNpc2(voidMonsters[0], voidMonsters[1], voidMonsters[2], 0, 1, voidMonsters[NpcHandler.getNpcListHP(voidMonsters[0])], NpcHandler.getNpcListCombat(voidMonsters[0])/10, NpcHandler.getNpcListCombat(voidMonsters[0]), playersInGame() * 200);
Server.npcHandler.spawnNpc2(voidMonsters[0], voidMonsters[1], voidMonsters[2], 0, 1, 500, 20, 200, 25); GameEngine.npcHandler.spawnNpc2(voidMonsters[0], voidMonsters[1], voidMonsters[2], 0, 1, 500, 20, 200, 25);
} }
} }
} }
@@ -1,7 +1,7 @@
package redone.game.content.minigames; package com.rebotted.game.content.minigames;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.util.Misc;
public class TreasureTrails { public class TreasureTrails {
@@ -300,12 +300,12 @@ public class TreasureTrails {
}; };
public static void addClueReward(Client c, int clueLevel) { public static void addClueReward(Player player, int clueLevel) {
int chanceReward = Misc.random(2); int chanceReward = Misc.random(2);
if (clueLevel == 0) { if (clueLevel == 0) {
switch (chanceReward) { switch (chanceReward) {
case 0: case 0:
displayReward(c, displayReward(player,
Misc.randomArrayItem(lowLevelReward), 1, Misc.randomArrayItem(lowLevelReward), 1,
Misc.randomArrayItem(lowLevelReward), 1, Misc.randomArrayItem(lowLevelReward), 1,
Misc.randomArrayItem(lowLevelReward), 1, Misc.randomArrayItem(lowLevelReward), 1,
@@ -313,14 +313,14 @@ public class TreasureTrails {
); );
break; break;
case 1: case 1:
displayReward(c, displayReward(player,
Misc.randomArrayItem(lowLevelReward), 1, Misc.randomArrayItem(lowLevelReward), 1,
Misc.randomArrayItem(lowLevelReward), 1, Misc.randomArrayItem(lowLevelReward), 1,
Misc.randomArrayItem(lowLevelStacks), Misc.random(50, 150) Misc.randomArrayItem(lowLevelStacks), Misc.random(50, 150)
); );
break; break;
case 2: case 2:
displayReward(c, displayReward(player,
Misc.randomArrayItem(lowLevelReward), 1, Misc.randomArrayItem(lowLevelReward), 1,
Misc.randomArrayItem(lowLevelStacks), Misc.random(50, 150) Misc.randomArrayItem(lowLevelStacks), Misc.random(50, 150)
); );
@@ -329,7 +329,7 @@ public class TreasureTrails {
} else if (clueLevel == 1) { } else if (clueLevel == 1) {
switch (chanceReward) { switch (chanceReward) {
case 0: case 0:
displayReward(c, displayReward(player,
Misc.randomArrayItem(mediumLevelReward), 1, Misc.randomArrayItem(mediumLevelReward), 1,
Misc.randomArrayItem(mediumLevelReward), 1, Misc.randomArrayItem(mediumLevelReward), 1,
Misc.randomArrayItem(mediumLevelReward), 1, Misc.randomArrayItem(mediumLevelReward), 1,
@@ -337,14 +337,14 @@ public class TreasureTrails {
); );
break; break;
case 1: case 1:
displayReward(c, displayReward(player,
Misc.randomArrayItem(mediumLevelReward), 1, Misc.randomArrayItem(mediumLevelReward), 1,
Misc.randomArrayItem(mediumLevelReward), 1, Misc.randomArrayItem(mediumLevelReward), 1,
Misc.randomArrayItem(mediumLevelStacks), Misc.random(50, 150) Misc.randomArrayItem(mediumLevelStacks), Misc.random(50, 150)
); );
break; break;
case 2: case 2:
displayReward(c, displayReward(player,
Misc.randomArrayItem(mediumLevelReward), 1, Misc.randomArrayItem(mediumLevelReward), 1,
Misc.randomArrayItem(mediumLevelStacks), Misc.random(50, 150) Misc.randomArrayItem(mediumLevelStacks), Misc.random(50, 150)
); );
@@ -353,7 +353,7 @@ public class TreasureTrails {
} else if (clueLevel == 2) { } else if (clueLevel == 2) {
switch (chanceReward) { switch (chanceReward) {
case 0: case 0:
displayReward(c, displayReward(player,
Misc.randomArrayItem(highLevelReward), 1, Misc.randomArrayItem(highLevelReward), 1,
Misc.randomArrayItem(highLevelReward), 1, Misc.randomArrayItem(highLevelReward), 1,
Misc.randomArrayItem(highLevelReward), 1, Misc.randomArrayItem(highLevelReward), 1,
@@ -361,14 +361,14 @@ public class TreasureTrails {
); );
break; break;
case 1: case 1:
displayReward(c, displayReward(player,
Misc.randomArrayItem(highLevelReward), 1, Misc.randomArrayItem(highLevelReward), 1,
Misc.randomArrayItem(highLevelReward), 1, Misc.randomArrayItem(highLevelReward), 1,
Misc.randomArrayItem(highLevelStacks), Misc.random(50, 150) Misc.randomArrayItem(highLevelStacks), Misc.random(50, 150)
); );
break; break;
case 2: case 2:
displayReward(c, displayReward(player,
Misc.randomArrayItem(highLevelReward), 1, Misc.randomArrayItem(highLevelReward), 1,
Misc.randomArrayItem(highLevelStacks), Misc.random(50, 150) Misc.randomArrayItem(highLevelStacks), Misc.random(50, 150)
); );
@@ -376,19 +376,19 @@ public class TreasureTrails {
} }
} }
} }
public static void displayReward(Client c, int item, int amount) { public static void displayReward(Player c, int item, int amount) {
displayReward(c, item, amount, -1, 1); displayReward(c, item, amount, -1, 1);
} }
public static void displayReward(Client c, int item, int amount, int item2, int amount2) { public static void displayReward(Player c, int item, int amount, int item2, int amount2) {
displayReward(c, item, amount, item2, amount2, -1, 1); displayReward(c, item, amount, item2, amount2, -1, 1);
} }
public static void displayReward(Client c, int item, int amount, int item2, int amount2, int item3, int amount3) { public static void displayReward(Player c, int item, int amount, int item2, int amount2, int item3, int amount3) {
displayReward(c, item, amount, item2, amount2, item3, amount3, -1, 1); displayReward(c, item, amount, item2, amount2, item3, amount3, -1, 1);
} }
public static void displayReward(Client c, int item, int amount, int item2, int amount2, int item3, int amount3, int item4, int amount4) { public static void displayReward(Player c, int item, int amount, int item2, int amount2, int item3, int amount3, int item4, int amount4) {
int[] items = { item, item2, item3, item4 }; int[] items = { item, item2, item3, item4 };
int[] amounts = { amount, amount2, amount3, amount4 }; int[] amounts = { amount, amount2, amount3, amount4 };
c.outStream.createFrameVarSizeWord(53); c.outStream.createFrameVarSizeWord(53);
@@ -412,7 +412,7 @@ public class TreasureTrails {
for (int i = 0; i < items.length; i++) { for (int i = 0; i < items.length; i++) {
if (items[i] > 0) c.getItemAssistant().addOrDropItem(items[i], amounts[i]); if (items[i] > 0) c.getItemAssistant().addOrDropItem(items[i], amounts[i]);
} }
c.getPlayerAssistant().showInterface(6960); c.getPacketSender().showInterface(6960);
} }
} }
@@ -0,0 +1,280 @@
package com.rebotted.game.content.minigames.castlewars;
import com.rebotted.game.players.Player;
public class CastleWarObjects {
public static void handleObject(Player player, int id, int x, int y) {
switch (id) {
case 4469:
if (CastleWars.getTeamNumber(player) == 2) {
player.getPacketSender().sendMessage(
"You are not allowed in the other teams spawn point.");
break;
}
if (x == 2426) {
if (player.getY() == 3080) {
player.getPlayerAssistant()
.movePlayer(2426, 3081, player.heightLevel);
} else if (player.getY() == 3081) {
player.getPlayerAssistant()
.movePlayer(2426, 3080, player.heightLevel);
}
} else if (x == 2422) {
if (player.getX() == 2422) {
player.getPlayerAssistant()
.movePlayer(2423, 3076, player.heightLevel);
} else if (player.getX() == 2423) {
player.getPlayerAssistant()
.movePlayer(2422, 3076, player.heightLevel);
}
}
break;
case 4470:
if (CastleWars.getTeamNumber(player) == 1) {
player.getPacketSender().sendMessage(
"You are not allowed in the other teams spawn point.");
break;
}
if (x == 2373 && y == 3126) {
if (player.getY() == 3126) {
player.getPlayerAssistant().movePlayer(2373, 3127, 1);
} else if (player.getY() == 3127) {
player.getPlayerAssistant().movePlayer(2373, 3126, 1);
}
} else if (x == 2377 && y == 3131) {
if (player.getX() == 2376) {
player.getPlayerAssistant().movePlayer(2377, 3131, 1);
} else if (player.getX() == 2377) {
player.getPlayerAssistant().movePlayer(2376, 3131, 1);
}
}
break;
case 4417:
if (x == 2428 && y == 3081 && player.heightLevel == 1) {
player.getPlayerAssistant().movePlayer(2430, 3080, 2);
}
if (x == 2425 && y == 3074 && player.heightLevel == 2) {
player.getPlayerAssistant().movePlayer(2426, 3074, 3);
}
if (x == 2419 && y == 3078 && player.heightLevel == 0) {
player.getPlayerAssistant().movePlayer(2420, 3080, 1);
}
break;
case 4415:
if (x == 2419 && y == 3080 && player.heightLevel == 1) {
player.getPlayerAssistant().movePlayer(2419, 3077, 0);
}
if (x == 2430 && y == 3081 && player.heightLevel == 2) {
player.getPlayerAssistant().movePlayer(2427, 3081, 1);
}
if (x == 2425 && y == 3074 && player.heightLevel == 3) {
player.getPlayerAssistant().movePlayer(2425, 3077, 2);
}
if (x == 2374 && y == 3133 && player.heightLevel == 3) {
player.getPlayerAssistant().movePlayer(2374, 3130, 2);
}
if (x == 2369 && y == 3126 && player.heightLevel == 2) {
player.getPlayerAssistant().movePlayer(2372, 3126, 1);
}
if (x == 2380 && y == 3127 && player.heightLevel == 1) {
player.getPlayerAssistant().movePlayer(2380, 3130, 0);
}
break;
case 4411: // castle wars jumping stones
if (x == player.getX() && y == player.getY()) {
player.getPacketSender().sendMessage("You are standing on the rock you clicked.");
} else if (x > player.getX() && y == player.getY()) {
player.getPlayerAssistant().walkTo(1, 0);
} else if (x < player.getX() && y == player.getY()) {
player.getPlayerAssistant().walkTo(-1, 0);
} else if (y > player.getY() && x == player.getX()) {
player.getPlayerAssistant().walkTo(0, 1);
} else if (y < player.getY() && x == player.getX()) {
player.getPlayerAssistant().walkTo(0, -1);
} else {
player.getPacketSender().sendMessage("Can't reach that.");
}
break;
case 4419:
if (x == 2417 && y == 3074 && player.heightLevel == 0) {
if (player.getX() == 2416) {
player.getPlayerAssistant().movePlayer(2417, 3077, 0);
} else {
player.getPlayerAssistant().movePlayer(2416, 3074, 0);
}
}
break;
case 4911:
if (x == 2421 && y == 3073 && player.heightLevel == 1) {
player.getPlayerAssistant().movePlayer(2421, 3074, 0);
}
if (x == 2378 && y == 3134 && player.heightLevel == 1) {
player.getPlayerAssistant().movePlayer(2378, 3133, 0);
}
break;
case 1747:
if (x == 2421 && y == 3073 && player.heightLevel == 0) {
player.getPlayerAssistant().movePlayer(2421, 3074, 1);
}
if (x == 2378 && y == 3134 && player.heightLevel == 0) {
player.getPlayerAssistant().movePlayer(2378, 3133, 1);
}
break;
case 4912:
if (x == 2430 && y == 3082 && player.heightLevel == 0) {
player.getPlayerAssistant().movePlayer(player.getX(), player.getY() + 6400, 0);
}
if (x == 2369 && y == 3125 && player.heightLevel == 0) {
player.getPlayerAssistant().movePlayer(player.getX(), player.getY() + 6400, 0);
}
break;
case 1757:
if (x == 2430 && y == 9482) {
player.getPlayerAssistant().movePlayer(2430, 3081, 0);
} else if (player.absX == 2533) {
player.getPlayerAssistant().movePlayer(2532, 3155, 0);
} else {
player.getPlayerAssistant().movePlayer(2369, 3126, 0);
}
break;
case 4418:
if (x == 2380 && y == 3127 && player.heightLevel == 0) {
player.getPlayerAssistant().movePlayer(2379, 3127, 1);
}
if (x == 2369 && y == 3126 && player.heightLevel == 1) {
player.getPlayerAssistant().movePlayer(2369, 3127, 2);
}
if (x == 2374 && y == 3131 && player.heightLevel == 2) {
player.getPlayerAssistant().movePlayer(2373, 3133, 3);
}
break;
case 4420:
if (x == 2382 && y == 3131 && player.heightLevel == 0) {
if (player.getX() >= 2383 && player.getX() <= 2385) {
player.getPlayerAssistant().movePlayer(2382, 3130, 0);
} else {
player.getPlayerAssistant().movePlayer(2383, 3133, 0);
}
}
break;
case 4437:
if (x == 2400 && y == 9512) {
player.getPlayerAssistant().movePlayer(2400, 9514, 0);
} else if (x == 2391 && y == 9501) {
player.getPlayerAssistant().movePlayer(2393, 9502, 0);
} else if (x == 2409 && y == 9503) {
player.getPlayerAssistant().movePlayer(2411, 9503, 0);
} else if (x == 2401 && y == 9494) {
player.getPlayerAssistant().movePlayer(2401, 9493, 0);
}
break;
case 1568:
if (x == 2399 && y == 3099) {
player.getPlayerAssistant().movePlayer(2399, 9500, 0);
} else {
player.getPlayerAssistant().movePlayer(2400, 9507, 0);
}
case 6281:
player.getPlayerAssistant().movePlayer(2370, 3132, 2);
break;
case 4472:
player.getPlayerAssistant().movePlayer(2370, 3132, 1);
break;
case 6280:
player.getPlayerAssistant().movePlayer(2429, 3075, 2);
break;
case 4471:
player.getPlayerAssistant().movePlayer(2429, 3075, 1);
break;
case 4406:
CastleWars.removePlayerFromCw(player);
break;
case 4407:
CastleWars.removePlayerFromCw(player);
break;
case 4458:
if (System.currentTimeMillis() - player.miscTimer > 1200) {
player.startAnimation(881);
player.getItemAssistant().addItem(4049, 1);
player.getPacketSender().sendMessage("You get some bandages");
player.miscTimer = System.currentTimeMillis();
}
break;
case 4902: // sara flag
case 4377:
switch (CastleWars.getTeamNumber(player)) {
case 1:
CastleWars.returnFlag(player, player.playerEquipment[player.playerWeapon]);
break;
case 2:
CastleWars.captureFlag(player);
break;
}
break;
case 4903: // zammy flag
case 4378:
switch (CastleWars.getTeamNumber(player)) {
case 1:
CastleWars.captureFlag(player);
break;
case 2:
CastleWars.returnFlag(player, player.playerEquipment[player.playerWeapon]);
break;
}
break;
case 4461: // barricades
if (System.currentTimeMillis() - player.miscTimer > 1200) {
player.getPacketSender().sendMessage("You get a barricade!");
player.getItemAssistant().addItem(4053, 1);
player.miscTimer = System.currentTimeMillis();
}
break;
case 4463: // explosive potion!
if (System.currentTimeMillis() - player.miscTimer > 1200) {
player.getPacketSender().sendMessage(
"You get an explosive potion!");
player.getItemAssistant().addItem(4045, 1);
player.miscTimer = System.currentTimeMillis();
}
break;
case 4464: // pickaxe table
if (System.currentTimeMillis() - player.miscTimer > 1200) {
player.getPacketSender().sendMessage(
"You get a bronzen pickaxe for mining.");
player.getItemAssistant().addItem(1265, 1);
player.miscTimer = System.currentTimeMillis();
}
break;
case 4459: // tinderbox table
if (System.currentTimeMillis() - player.miscTimer > 1200) {
player.getPacketSender().sendMessage("You take a tinderbox!");
player.getItemAssistant().addItem(590, 1);
player.miscTimer = System.currentTimeMillis();
}
break;
case 4462:
if (System.currentTimeMillis() - player.miscTimer > 1200) {
player.getPacketSender().sendMessage("You take some rope!");
player.getItemAssistant().addItem(954, 1);
player.miscTimer = System.currentTimeMillis();
}
break;
case 4460:
if (System.currentTimeMillis() - player.miscTimer > 1200) {
player.getPacketSender().sendMessage("You take a rock!");
player.getItemAssistant().addItem(4043, 1);
player.miscTimer = System.currentTimeMillis();
}
break;
case 4900:
case 4901:
CastleWars.pickupFlag(player);
default:
break;
}
}
}
@@ -1,17 +1,15 @@
package redone.game.content.minigames.castlewars; package com.rebotted.game.content.minigames.castlewars;
import java.util.HashMap; import java.util.HashMap;
import java.util.Iterator; import java.util.Iterator;
import com.rebotted.game.items.ItemAssistant;
import redone.game.items.ItemAssistant; import com.rebotted.game.players.Player;
import redone.game.players.Client; import com.rebotted.util.Misc;
import redone.game.players.Player;
import redone.util.Misc;
/** /**
* @Author Sanity for base * @Author Sanity for base
* @Author Satan666 * @Author Satan666
* @Author Andrew fixing it up * @Author Andrew (Mr Extremez) fixing it up
*/ */
public class CastleWars { public class CastleWars {
@@ -25,11 +23,11 @@ public class CastleWars {
/* /*
* Hashmap for the waitingroom players * Hashmap for the waitingroom players
*/ */
private static HashMap<Client, Integer> waitingRoom = new HashMap<Client, Integer>(); private static HashMap<Player, Integer> waitingRoom = new HashMap<Player, Integer>();
/* /*
* hashmap for the gameRoom players * hashmap for the gameRoom players
*/ */
private static HashMap<Client, Integer> gameRoom = new HashMap<Client, Integer>(); private static HashMap<Player, Integer> gameRoom = new HashMap<Player, Integer>();
/* /*
* The coordinates for the waitingRoom both sara/zammy * The coordinates for the waitingRoom both sara/zammy
*/ */
@@ -66,13 +64,13 @@ public class CastleWars {
public static final int SARA_HOOD = 4513; public static final int SARA_HOOD = 4513;
public static final int ZAMMY_HOOD = 4515; public static final int ZAMMY_HOOD = 4515;
public static boolean deleteCastleWarsItems(Client c, int itemId) { public static boolean deleteCastleWarsItems(Player c, int itemId) {
int[] items = { 4049, 4045, 4053, 4042, 4041, 4037, 4039, 4043 }; int[] items = { 4049, 4045, 4053, 4042, 4041, 4037, 4039, 4043 };
for (int item : items) { for (int item : items) {
int amount = c.getItemAssistant().getItemCount(item); int amount = c.getItemAssistant().getItemCount(item);
if (itemId == item && !isInCw(c)) { if (itemId == item && !isInCw(c)) {
c.getItemAssistant().deleteItem(item, amount); c.getItemAssistant().deleteItem(item, amount);
c.getActionSender().sendMessage("You shouldn't have " + ItemAssistant.getItemName(itemId) + " outside of castlewars!"); c.getPacketSender().sendMessage("You shouldn't have " + ItemAssistant.getItemName(itemId) + " outside of castlewars!");
return false; return false;
} }
} }
@@ -95,16 +93,16 @@ public class CastleWars {
private static int gameStartTimer = GAME_START_TIMER; private static int gameStartTimer = GAME_START_TIMER;
private static boolean gameStarted = false; private static boolean gameStarted = false;
public static void resetPlayer(Client c) { public static void resetPlayer(Player player) {
c.getPlayerAssistant().movePlayer(2440 + Misc.random(3), 3089 - Misc.random(3), 0); player.getPlayerAssistant().movePlayer(2440 + Misc.random(3), 3089 - Misc.random(3), 0);
deleteGameItems(c); deleteGameItems(player);
c.getActionSender().sendMessage("Cheating will not be tolerated."); player.getPacketSender().sendMessage("Cheating will not be tolerated.");
} }
public static void collapseCave(int cave) { public static void collapseCave(int cave) {
Iterator<Client> iterator = gameRoom.keySet().iterator(); Iterator<Player> iterator = gameRoom.keySet().iterator();
while (iterator.hasNext()) { while (iterator.hasNext()) {
Client teamPlayer = iterator.next(); Player teamPlayer = iterator.next();
if (teamPlayer.absX > COLLAPSE_ROCKS[cave][0] if (teamPlayer.absX > COLLAPSE_ROCKS[cave][0]
&& teamPlayer.absX < COLLAPSE_ROCKS[cave][1] && teamPlayer.absX < COLLAPSE_ROCKS[cave][1]
&& teamPlayer.absY > COLLAPSE_ROCKS[cave][2] && teamPlayer.absY > COLLAPSE_ROCKS[cave][2]
@@ -120,37 +118,37 @@ public class CastleWars {
* Method we use to add someone to the waitinroom in a different method, * Method we use to add someone to the waitinroom in a different method,
* this will filter out some error messages * this will filter out some error messages
* *
* @param player * @param p
* the player that wants to join * the player that wants to join
* @param team * @param team
* the team! * the team!
*/ */
public static void addToWaitRoom(Client player, int team) { public static void addToWaitRoom(Player p, int team) {
if (player == null) { if (p == null) {
return; return;
} else if (gameStarted == true) { } else if (gameStarted == true) {
player.getActionSender() p.getPacketSender()
.sendMessage( .sendMessage(
"There's already a Castle Wars going. Please wait a few minutes before trying again."); "There's already a Castle Wars going. Please wait a few minutes before trying again.");
return; return;
} else if (player.playerEquipment[player.playerHat] > 0 || player.playerEquipment[player.playerCape] > 0 || player.getItemAssistant().playerHasItem(player.playerCape) || player.getItemAssistant().playerHasItem(player.playerHat)) { } else if (p.playerEquipment[p.playerHat] > 0 || p.playerEquipment[p.playerCape] > 0 || p.getItemAssistant().playerHasItem(p.playerCape) || p.getItemAssistant().playerHasItem(p.playerHat)) {
player.getActionSender().sendMessage("You may not bring capes or helmets in castle wars."); p.getPacketSender().sendMessage("You may not bring capes or helmets in castle wars.");
return; return;
} }
toWaitingRoom(player, team); toWaitingRoom(p, team);
} }
/** /**
* Method we use to transfer to player from the outside to the waitingroom * Method we use to transfer to player from the outside to the waitingroom
* (: * (:
* *
* @param player * @param p
* the player that wants to join * the player that wants to join
* @param team * @param team
* team he wants to be in - team = 1 (saradomin), team = 2 * team he wants to be in - team = 1 (saradomin), team = 2
* (zamorak), team = 3 (random) * (zamorak), team = 3 (random)
*/ */
public static void toWaitingRoom(Client player, int team) { public static void toWaitingRoom(Player p, int team) {
int[] food = { 391, 385, 379, 333, 329, 373, 361, 7946, 397, 1891, 365, int[] food = { 391, 385, 379, 333, 329, 373, 361, 7946, 397, 1891, 365,
339, 1942, 6701, 6705, 7056, 7054, 7058, 7060, 315, 347, 325, 339, 1942, 6701, 6705, 7056, 7054, 7058, 7060, 315, 347, 325,
1897, 2289, 2293, 2297, 2301, 2309, 2323, 2325, 2327, 351, 1897, 2289, 2293, 2297, 2301, 2309, 2323, 2325, 2327, 351,
@@ -161,52 +159,52 @@ public class CastleWars {
2116, 7928, 7929, 7930, 7931, 7932, 7933, 10476, 2130, 2003, 2011, 2116, 7928, 7929, 7930, 7931, 7932, 7933, 10476, 2130, 2003, 2011,
4049}; 4049};
for (int element : food) { for (int element : food) {
if (player.getItemAssistant().playerHasItem(element)) { if (p.getItemAssistant().playerHasItem(element)) {
player.getActionSender().sendMessage("You may not bring your own consumables inside of Castle Wars."); p.getPacketSender().sendMessage("You may not bring your own consumables inside of Castle Wars.");
return; return;
} }
} }
if (team == 1) { if (team == 1) {
if (getSaraPlayers() > getZammyPlayers() && getSaraPlayers() > 0) { if (getSaraPlayers() > getZammyPlayers() && getSaraPlayers() > 0) {
player.getActionSender().sendMessage( p.getPacketSender().sendMessage(
"The saradomin team is full, try again later!"); "The saradomin team is full, try again later!");
return; return;
} }
if (getZammyPlayers() >= getSaraPlayers() || getSaraPlayers() == 0) { if (getZammyPlayers() >= getSaraPlayers() || getSaraPlayers() == 0) {
player.getActionSender().sendMessage( p.getPacketSender().sendMessage(
"You have been added to the Saradomin team."); "You have been added to the Saradomin team.");
player.getActionSender().sendMessage( p.getPacketSender().sendMessage(
"Next Game Begins In: " "Next Game Begins In: "
+ (gameStartTimer * 3 + timeRemaining * 3) + (gameStartTimer * 3 + timeRemaining * 3)
+ " seconds."); + " seconds.");
addCapes(player, SARA_CAPE); addCapes(p, SARA_CAPE);
waitingRoom.put(player, team); waitingRoom.put(p, team);
player.getPlayerAssistant().movePlayer( p.getPlayerAssistant().movePlayer(
WAIT_ROOM[team - 1][0] + Misc.random(5), WAIT_ROOM[team - 1][0] + Misc.random(5),
WAIT_ROOM[team - 1][1] + Misc.random(5), 0); WAIT_ROOM[team - 1][1] + Misc.random(5), 0);
} }
} else if (team == 2) { } else if (team == 2) {
if (getZammyPlayers() > getSaraPlayers() && getZammyPlayers() > 0) { if (getZammyPlayers() > getSaraPlayers() && getZammyPlayers() > 0) {
player.getActionSender().sendMessage( p.getPacketSender().sendMessage(
"The zamorak team is full, try again later!"); "The zamorak team is full, try again later!");
return; return;
} }
if (getZammyPlayers() <= getSaraPlayers() || getZammyPlayers() == 0) { if (getZammyPlayers() <= getSaraPlayers() || getZammyPlayers() == 0) {
player.getActionSender() p.getPacketSender()
.sendMessage( .sendMessage(
"Random team: You have been added to the Zamorak team."); "Random team: You have been added to the Zamorak team.");
player.getActionSender().sendMessage( p.getPacketSender().sendMessage(
"Next Game Begins In: " "Next Game Begins In: "
+ (gameStartTimer * 3 + timeRemaining * 3) + (gameStartTimer * 3 + timeRemaining * 3)
+ " seconds."); + " seconds.");
addCapes(player, ZAMMY_CAPE); addCapes(p, ZAMMY_CAPE);
waitingRoom.put(player, team); waitingRoom.put(p, team);
player.getPlayerAssistant().movePlayer( p.getPlayerAssistant().movePlayer(
WAIT_ROOM[team - 1][0] + Misc.random(5), WAIT_ROOM[team - 1][0] + Misc.random(5),
WAIT_ROOM[team - 1][1] + Misc.random(5), 0); WAIT_ROOM[team - 1][1] + Misc.random(5), 0);
} }
} else if (team == 3) { } else if (team == 3) {
toWaitingRoom(player, getZammyPlayers() > getSaraPlayers() ? 1 : 2); toWaitingRoom(p, getZammyPlayers() > getSaraPlayers() ? 1 : 2);
return; return;
} }
} }
@@ -219,7 +217,7 @@ public class CastleWars {
* @param banner * @param banner
* banner id! * banner id!
*/ */
public static void returnFlag(Client player, int wearItem) { public static void returnFlag(Player player, int wearItem) {
if (player == null) { if (player == null) {
return; return;
} }
@@ -235,7 +233,7 @@ public class CastleWars {
setSaraFlag(0); setSaraFlag(0);
objectId = 4902; objectId = 4902;
objectTeam = 0; objectTeam = 0;
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"Returned the sara flag!"); "Returned the sara flag!");
} else { } else {
objectId = 4903; objectId = 4903;
@@ -243,7 +241,7 @@ public class CastleWars {
setZammyFlag(0); setZammyFlag(0);
scores[0]++; // upping the score of a team; team 0 = sara, scores[0]++; // upping the score of a team; team 0 = sara,
// team 1 = zammy // team 1 = zammy
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"The team of Saradomin scores 1 point!"); "The team of Saradomin scores 1 point!");
} }
break; break;
@@ -252,7 +250,7 @@ public class CastleWars {
setZammyFlag(0); setZammyFlag(0);
objectId = 4903; objectId = 4903;
objectTeam = 1; objectTeam = 1;
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"Returned the zammy flag!"); "Returned the zammy flag!");
} else { } else {
objectId = 4902; objectId = 4902;
@@ -260,14 +258,14 @@ public class CastleWars {
setSaraFlag(0); setSaraFlag(0);
scores[1]++; // upping the score of a team; team 0 = sara, scores[1]++; // upping the score of a team; team 0 = sara,
// team 1 = zammy // team 1 = zammy
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"The team of Zamorak scores 1 point!"); "The team of Zamorak scores 1 point!");
zammyFlag = 0; zammyFlag = 0;
} }
break; break;
} }
changeFlagObject(objectId, objectTeam); changeFlagObject(objectId, objectTeam);
player.getActionSender().createPlayerHints(10, -1); player.getPacketSender().createPlayerHints(10, -1);
player.playerEquipment[player.playerWeapon] = -1; player.playerEquipment[player.playerWeapon] = -1;
player.playerEquipmentN[player.playerWeapon] = 0; player.playerEquipmentN[player.playerWeapon] = 0;
player.getItemAssistant().updateSlot(3); player.getItemAssistant().updateSlot(3);
@@ -283,9 +281,9 @@ public class CastleWars {
* the player who returned the flag * the player who returned the flag
* @param team * @param team
*/ */
public static void captureFlag(Client player) { public static void captureFlag(Player player) {
if (player.playerEquipment[player.playerWeapon] > 0) { if (player.playerEquipment[player.playerWeapon] > 0) {
player.getActionSender() player.getPacketSender()
.sendMessage( .sendMessage(
"Please remove your weapon before attempting to get the flag again!"); "Please remove your weapon before attempting to get the flag again!");
return; return;
@@ -313,7 +311,7 @@ public class CastleWars {
* @param flagId * @param flagId
* the banner id. * the banner id.
*/ */
public static void addFlag(Client player, int flagId) { public static void addFlag(Player player, int flagId) {
player.playerEquipment[player.playerWeapon] = flagId; player.playerEquipment[player.playerWeapon] = flagId;
player.playerEquipmentN[player.playerWeapon] = 1; player.playerEquipmentN[player.playerWeapon] = 1;
player.getItemAssistant().updateSlot(player.playerWeapon); player.getItemAssistant().updateSlot(player.playerWeapon);
@@ -329,7 +327,7 @@ public class CastleWars {
* @param flagId * @param flagId
* the flag item ID * the flag item ID
*/ */
public static void dropFlag(Client player, int flagId) { public static void dropFlag(Player player, int flagId) {
int object = -1; int object = -1;
switch (flagId) { switch (flagId) {
case SARA_BANNER: // sara case SARA_BANNER: // sara
@@ -349,9 +347,8 @@ public class CastleWars {
player.getItemAssistant().updateSlot(player.playerWeapon); player.getItemAssistant().updateSlot(player.playerWeapon);
player.appearanceUpdateRequired = true; player.appearanceUpdateRequired = true;
player.updateRequired = true; player.updateRequired = true;
for (Client teamPlayer : gameRoom.keySet()) { for (Player teamPlayer : gameRoom.keySet()) {
teamPlayer.getActionSender().object(object, player.getX(), teamPlayer.getPacketSender().object(object, player.getX(), player.getY(), 0, 10);
player.getY(), 0, 10);
} }
} }
@@ -363,13 +360,11 @@ public class CastleWars {
* @param objectId * @param objectId
* the flag object id. * the flag object id.
*/ */
public static void pickupFlag(Client player) { public static void pickupFlag(Player player) {
switch (player.objectId) { switch (player.objectId) {
case 4900: // sara case 4900: // sara
if (player.playerEquipment[player.playerWeapon] > 0) { if (player.playerEquipment[player.playerWeapon] > 0) {
player.getActionSender() player.getPacketSender().sendMessage("Please remove your weapon before attempting to get the flag again!");
.sendMessage(
"Please remove your weapon before attempting to get the flag again!");
return; return;
} }
if (saraFlag != 2) { if (saraFlag != 2) {
@@ -380,9 +375,7 @@ public class CastleWars {
break; break;
case 4901: // zammy case 4901: // zammy
if (player.playerEquipment[player.playerWeapon] > 0) { if (player.playerEquipment[player.playerWeapon] > 0) {
player.getActionSender() player.getPacketSender().sendMessage("Please remove your weapon before attempting to get the flag again!");
.sendMessage(
"Please remove your weapon before attempting to get the flag again!");
return; return;
} }
if (zammyFlag != 2) { if (zammyFlag != 2) {
@@ -393,13 +386,11 @@ public class CastleWars {
break; break;
} }
createHintIcon(player, gameRoom.get(player) == 1 ? 2 : 1); createHintIcon(player, gameRoom.get(player) == 1 ? 2 : 1);
Iterator<Client> iterator = gameRoom.keySet().iterator(); Iterator<Player> iterator = gameRoom.keySet().iterator();
while (iterator.hasNext()) { while (iterator.hasNext()) {
Client teamPlayer = iterator.next(); Player teamPlayer = iterator.next();
teamPlayer.getActionSender().createObjectHints(player.objectX, teamPlayer.getPacketSender().createObjectHints(player.objectX, player.objectY, 170, -1);
player.objectY, 170, -1); teamPlayer.getPacketSender().object(-1, player.objectX, player.objectY, 0, 10);
teamPlayer.getActionSender().object(-1, player.objectX,
player.objectY, 0, 10);
} }
return; return;
} }
@@ -412,19 +403,13 @@ public class CastleWars {
* @param t * @param t
* team of the opponent team. (: * team of the opponent team. (:
*/ */
public static void createHintIcon(Client player, int t) { public static void createHintIcon(Player player, int t) {
Iterator<Client> iterator = gameRoom.keySet().iterator(); Iterator<Player> iterator = gameRoom.keySet().iterator();
while (iterator.hasNext()) { while (iterator.hasNext()) {
Client teamPlayer = iterator.next(); Player teamPlayer = iterator.next();
// System.out.println(teamPlayer.playerName + " => Team => " + teamPlayer.getPacketSender().createPlayerHints(10, -1);
// gameRoom.get(teamPlayer));
// System.out.println("Desired team = " + t);
teamPlayer.getActionSender().createPlayerHints(10, -1);
if (gameRoom.get(teamPlayer) == t) { if (gameRoom.get(teamPlayer) == t) {
// System.out.println("Created hint icons for playername " + teamPlayer.getPacketSender().createPlayerHints(10, player.playerId);
// teamPlayer.playerName + " and team number: " + t);
teamPlayer.getActionSender().createPlayerHints(10,
player.playerId);
teamPlayer.getPlayerAssistant().requestUpdates(); teamPlayer.getPlayerAssistant().requestUpdates();
} }
} }
@@ -439,10 +424,10 @@ public class CastleWars {
* team of the opponent team. (: * team of the opponent team. (:
*/ */
public static void createFlagHintIcon(int x, int y) { public static void createFlagHintIcon(int x, int y) {
Iterator<Client> iterator = gameRoom.keySet().iterator(); Iterator<Player> iterator = gameRoom.keySet().iterator();
while (iterator.hasNext()) { while (iterator.hasNext()) {
Client teamPlayer = iterator.next(); Player teamPlayer = iterator.next();
teamPlayer.getActionSender().createObjectHints(x, y, 170, 2); teamPlayer.getPacketSender().createObjectHints(x, y, 170, 2);
} }
} }
@@ -452,7 +437,7 @@ public class CastleWars {
* @param player * @param player
* @return * @return
*/ */
public static int getTeamNumber(Client player) { public static int getTeamNumber(Player player) {
if (player == null) { if (player == null) {
return -1; return -1;
} }
@@ -468,15 +453,15 @@ public class CastleWars {
* @param player * @param player
* player who wants to leave * player who wants to leave
*/ */
public static void leaveWaitingRoom(Client player) { public static void leaveWaitingRoom(Player player) {
if (player == null) { if (player == null) {
System.out.println("player is null"); System.out.println("player is null");
return; return;
} }
if (waitingRoom.containsKey(player)) { if (waitingRoom.containsKey(player)) {
waitingRoom.remove(player); waitingRoom.remove(player);
player.getActionSender().createPlayerHints(10, -1); player.getPacketSender().createPlayerHints(10, -1);
player.getActionSender().sendMessage("You left your team!"); player.getPacketSender().sendMessage("You left your team!");
deleteGameItems(player); deleteGameItems(player);
player.getPlayerAssistant().movePlayer(2439 + Misc.random(4), player.getPlayerAssistant().movePlayer(2439 + Misc.random(4),
3085 + Misc.random(5), 0); 3085 + Misc.random(5), 0);
@@ -513,19 +498,14 @@ public class CastleWars {
* Method we use to update the player's interface in the waiting room * Method we use to update the player's interface in the waiting room
*/ */
public static void updatePlayers() { public static void updatePlayers() {
Iterator<Client> iterator = waitingRoom.keySet().iterator(); Iterator<Player> iterator = waitingRoom.keySet().iterator();
while (iterator.hasNext()) { while (iterator.hasNext()) {
Client player = iterator.next(); Player player = iterator.next();
if (player != null) { if (player != null) {
player.getPlayerAssistant().sendFrame126( player.getPacketSender().sendFrame126("Next Game Begins In: " + (gameStartTimer * 3 + timeRemaining * 3) + " seconds.", 6570);
"Next Game Begins In: " player.getPacketSender().sendFrame126("Zamorak Players: " + getZammyPlayers() + ".", 6572);
+ (gameStartTimer * 3 + timeRemaining * 3) player.getPacketSender().sendFrame126("Saradomin Players: " + getSaraPlayers() + ".", 6664);
+ " seconds.", 6570); player.getPacketSender().walkableInterface(6673);
player.getPlayerAssistant().sendFrame126(
"Zamorak Players: " + getZammyPlayers() + ".", 6572);
player.getPlayerAssistant().sendFrame126(
"Saradomin Players: " + getSaraPlayers() + ".", 6664);
player.getPlayerAssistant().walkableInterface(6673);
} }
} }
} }
@@ -535,25 +515,25 @@ public class CastleWars {
*/ */
public static void updateInGamePlayers() { public static void updateInGamePlayers() {
if (getSaraPlayers() > 0 && getZammyPlayers() > 0) { if (getSaraPlayers() > 0 && getZammyPlayers() > 0) {
Iterator<Client> iterator = gameRoom.keySet().iterator(); Iterator<Player> iterator = gameRoom.keySet().iterator();
while (iterator.hasNext()) { while (iterator.hasNext()) {
Client player = iterator.next(); Player player = iterator.next();
int config; int config;
if (player == null) { if (player == null) {
continue; continue;
} }
player.getPlayerAssistant().walkableInterface(11146); player.getPacketSender().walkableInterface(11146);
player.getPlayerAssistant().sendFrame126( player.getPacketSender().sendFrame126(
"Zamorak = " + scores[1], 11147); "Zamorak = " + scores[1], 11147);
player.getPlayerAssistant().sendFrame126( player.getPacketSender().sendFrame126(
scores[0] + " = Saradomin", 11148); scores[0] + " = Saradomin", 11148);
player.getPlayerAssistant().sendFrame126( player.getPacketSender().sendFrame126(
timeRemaining * 3 + " secs", 11155); timeRemaining * 3 + " secs", 11155);
config = 2097152 * saraFlag; config = 2097152 * saraFlag;
player.getPlayerAssistant().sendFrame87(378, config); player.getPacketSender().sendFrame87(378, config);
config = 2097152 * zammyFlag; // flags 0 = safe 1 = taken 2 config = 2097152 * zammyFlag; // flags 0 = safe 1 = taken 2
// = dropped // = dropped
player.getPlayerAssistant().sendFrame87(377, config); player.getPacketSender().sendFrame87(377, config);
} }
} }
} }
@@ -570,20 +550,16 @@ public class CastleWars {
System.out.println("Starting Castle Wars game."); System.out.println("Starting Castle Wars game.");
gameStarted = true; gameStarted = true;
timeRemaining = GAME_TIMER / 2; timeRemaining = GAME_TIMER / 2;
Iterator<Client> iterator = waitingRoom.keySet().iterator(); Iterator<Player> iterator = waitingRoom.keySet().iterator();
while (iterator.hasNext()) { while (iterator.hasNext()) {
Client player = iterator.next(); Player player = iterator.next();
int team = waitingRoom.get(player); int team = waitingRoom.get(player);
if (player == null) { if (player == null) {
continue; continue;
} }
player.getPlayerAssistant().walkableInterface(-1); player.getPacketSender().walkableInterface(-1);
player.getPlayerAssistant().movePlayer( player.getPlayerAssistant().movePlayer(GAME_ROOM[team - 1][0] + Misc.random(3), GAME_ROOM[team - 1][1] - Misc.random(3), 1);
GAME_ROOM[team - 1][0] + Misc.random(3), player.getPlayerAssistant().movePlayer(GAME_ROOM[team - 1][0] + Misc.random(3), GAME_ROOM[team - 1][1] - Misc.random(3), 1);
GAME_ROOM[team - 1][1] - Misc.random(3), 1);
player.getPlayerAssistant().movePlayer(
GAME_ROOM[team - 1][0] + Misc.random(3),
GAME_ROOM[team - 1][1] - Misc.random(3), 1);
gameRoom.put(player, team); gameRoom.put(player, team);
} }
waitingRoom.clear(); waitingRoom.clear();
@@ -593,23 +569,18 @@ public class CastleWars {
* Method we use to end an ongoing cw game. * Method we use to end an ongoing cw game.
*/ */
public static void endGame() { public static void endGame() {
Iterator<Client> iterator = gameRoom.keySet().iterator(); Iterator<Player> iterator = gameRoom.keySet().iterator();
while (iterator.hasNext()) { while (iterator.hasNext()) {
Client player = iterator.next(); Player player = iterator.next();
int team = gameRoom.get(player); int team = gameRoom.get(player);
if (player == null) { if (player == null) {
continue; continue;
} }
player.cwGames++; player.cwGames++;
player.getPlayerAssistant().movePlayer(2440 + Misc.random(3), player.getPlayerAssistant().movePlayer(2440 + Misc.random(3), 3089 - Misc.random(3), 0);
3089 - Misc.random(3), 0); player.getPacketSender().sendMessage("Castle Wars: The Castle Wars game has ended!");
player.getActionSender().sendMessage( player.getPacketSender().sendMessage("Castle Wars: Kills: " + player.cwKills + " Deaths: " + player.cwDeaths + " Games Played: " + player.cwGames + ".");
"Castle Wars: The Castle Wars game has ended!"); player.getPacketSender().createPlayerHints(10, -1);
player.getActionSender().sendMessage(
"Castle Wars: Kills: " + player.cwKills + " Deaths: "
+ player.cwDeaths + " Games Played: "
+ player.cwGames + ".");
player.getActionSender().createPlayerHints(10, -1);
deleteGameItems(player); deleteGameItems(player);
player.isDead = false; player.isDead = false;
for (int i = 0; i < 25; i++) { for (int i = 0; i < 25; i++) {
@@ -619,28 +590,28 @@ public class CastleWars {
} }
if (scores[0] == scores[1]) { if (scores[0] == scores[1]) {
player.getItemAssistant().addItem(4067, 1); player.getItemAssistant().addItem(4067, 1);
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"Tie game! You earn 1 ticket!"); "Tie game! You earn 1 ticket!");
} else if (team == 1) { } else if (team == 1) {
if (scores[0] > scores[1]) { if (scores[0] > scores[1]) {
player.getItemAssistant().addItem(4067, 2); player.getItemAssistant().addItem(4067, 2);
player.getActionSender() player.getPacketSender()
.sendMessage( .sendMessage(
"You won the game. You received 2 Castle Wars Tickets!"); "You won the game. You received 2 Castle Wars Tickets!");
} else if (scores[0] < scores[1]) { } else if (scores[0] < scores[1]) {
player.getItemAssistant().addItem(4067, 0); player.getItemAssistant().addItem(4067, 0);
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You lost the game. You received no tickets!"); "You lost the game. You received no tickets!");
} }
} else if (team == 2) { } else if (team == 2) {
if (scores[1] > scores[0]) { if (scores[1] > scores[0]) {
player.getItemAssistant().addItem(4067, 2); player.getItemAssistant().addItem(4067, 2);
player.getActionSender() player.getPacketSender()
.sendMessage( .sendMessage(
"You won the game. You received 2 Castle Wars Tickets!"); "You won the game. You received 2 Castle Wars Tickets!");
} else if (scores[1] < scores[0]) { } else if (scores[1] < scores[0]) {
player.getItemAssistant().addItem(4067, 0); player.getItemAssistant().addItem(4067, 0);
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You lost the game. You received no tickets!"); "You lost the game. You received no tickets!");
; ;
} }
@@ -670,7 +641,7 @@ public class CastleWars {
* @param player * @param player
* the player we want to be removed * the player we want to be removed
*/ */
public static void removePlayerFromCw(Client player) { public static void removePlayerFromCw(Player player) {
if (player == null) { if (player == null) {
System.out.println("Error removing player from castle wars [REASON = null]."); System.out.println("Error removing player from castle wars [REASON = null].");
return; return;
@@ -691,12 +662,12 @@ public class CastleWars {
} }
deleteGameItems(player); deleteGameItems(player);
player.getPlayerAssistant().movePlayer(2440, 3089, 0); player.getPlayerAssistant().movePlayer(2440, 3089, 0);
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"The Casle Wars game has ended for you!"); "The Casle Wars game has ended for you!");
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"Kills: " + player.cwKills + " Deaths: " + player.cwDeaths "Kills: " + player.cwKills + " Deaths: " + player.cwDeaths
+ "."); + ".");
player.getActionSender().createPlayerHints(10, -1); player.getPacketSender().createPlayerHints(10, -1);
gameRoom.remove(player); gameRoom.remove(player);
} }
if (getZammyPlayers() <= 0 || getSaraPlayers() <= 0) { if (getZammyPlayers() <= 0 || getSaraPlayers() <= 0) {
@@ -707,17 +678,17 @@ public class CastleWars {
/** /**
* Will add a cape to a player's equip * Will add a cape to a player's equip
* *
* @param player * @param p
* the player * the player
* @param capeId * @param capeId
* the capeId * the capeId
*/ */
public static void addCapes(Client player, int capeId) { public static void addCapes(Player p, int capeId) {
player.playerEquipment[player.playerCape] = capeId; p.playerEquipment[p.playerCape] = capeId;
player.playerEquipmentN[player.playerCape] = 1; p.playerEquipmentN[p.playerCape] = 1;
player.getItemAssistant().updateSlot(player.playerCape); p.getItemAssistant().updateSlot(p.playerCape);
player.appearanceUpdateRequired = true; p.appearanceUpdateRequired = true;
player.updateRequired = true; p.updateRequired = true;
} }
/** /**
@@ -728,7 +699,7 @@ public class CastleWars {
* the player who want the game items deleted from. * the player who want the game items deleted from.
*/ */
public static void deleteGameItems(Client player) { public static void deleteGameItems(Player player) {
switch (player.playerEquipment[3]) { switch (player.playerEquipment[3]) {
case 4037: case 4037:
case 4039: case 4039:
@@ -847,10 +818,10 @@ public class CastleWars {
* the team of the player * the team of the player
*/ */
public static void changeFlagObject(int objectId, int team) { public static void changeFlagObject(int objectId, int team) {
Iterator<Client> iterator = gameRoom.keySet().iterator(); Iterator<Player> iterator = gameRoom.keySet().iterator();
while (iterator.hasNext()) { while (iterator.hasNext()) {
Client teamPlayer = iterator.next(); Player teamPlayer = iterator.next();
teamPlayer.getActionSender().object(objectId, teamPlayer.getPacketSender().object(objectId,
FLAG_STANDS[team][0], FLAG_STANDS[team][1], 0, 10); FLAG_STANDS[team][0], FLAG_STANDS[team][1], 0, 10);
} }
} }
@@ -1,4 +1,4 @@
package redone.game.content.minigames.trawler; package com.rebotted.game.content.minigames.trawler;
public abstract class GroupMinigame { public abstract class GroupMinigame {
@@ -1,16 +1,13 @@
package redone.game.content.minigames.trawler; package com.rebotted.game.content.minigames.trawler;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Random; import java.util.Random;
import com.rebotted.GameEngine;
import redone.Server; import com.rebotted.event.CycleEvent;
import redone.event.CycleEvent; import com.rebotted.event.CycleEventContainer;
import redone.event.CycleEventContainer; import com.rebotted.event.CycleEventHandler;
import redone.event.CycleEventHandler; import com.rebotted.game.items.GameItem;
import redone.game.content.skills.SkillHandler; import com.rebotted.game.players.Player;
import redone.game.items.GameItem;
import redone.game.players.Client;
import redone.game.players.Player;
public class Trawler extends GroupMinigame { public class Trawler extends GroupMinigame {
@@ -28,7 +25,7 @@ public class Trawler extends GroupMinigame {
* The arraylist containing all of the players * The arraylist containing all of the players
*/ */
public ArrayList<Client> players = new ArrayList<Client>(); public ArrayList<Player> players = new ArrayList<Player>();
/* /*
* The arraylist containing all of the players that need to removed Created * The arraylist containing all of the players that need to removed Created
@@ -36,7 +33,7 @@ public class Trawler extends GroupMinigame {
* is called simply just call the clear method * is called simply just call the clear method
*/ */
public ArrayList<Client> players_to_remove = new ArrayList<Client>(); public ArrayList<Player> players_to_remove = new ArrayList<Player>();
/* /*
* A unique id, which the cycle event handler may use to stop the trawlers * A unique id, which the cycle event handler may use to stop the trawlers
@@ -203,8 +200,8 @@ public class Trawler extends GroupMinigame {
public void resetWalls() { public void resetWalls() {
for(Wall w : Wall.values()) { for(Wall w : Wall.values()) {
if(w != null) { if(w != null) {
Server.objectHandler.removeObject(Server.objectHandler.getObjectByPosition(w.x, w.y)); GameEngine.objectHandler.removeObject(GameEngine.objectHandler.getObjectByPosition(w.x, w.y));
Server.objectHandler.createAnObject(perfect_wall, w.x,w.y, w.y == 4826 ? 1 : 3); GameEngine.objectHandler.createAnObject(perfect_wall, w.x,w.y, w.y == 4826 ? 1 : 3);
} }
} }
} }
@@ -219,25 +216,25 @@ public class Trawler extends GroupMinigame {
System.out.println("null"); System.out.println("null");
return; return;
} }
Server.objectHandler.removeObject(Server.objectHandler.getObjectByPosition(w.x, w.y)); GameEngine.objectHandler.removeObject(GameEngine.objectHandler.getObjectByPosition(w.x, w.y));
Server.objectHandler.removeObject(Server.objectHandler.getObjectByPosition(w.x + (isSunk ? -128 : 128), w.y)); GameEngine.objectHandler.removeObject(GameEngine.objectHandler.getObjectByPosition(w.x + (isSunk ? -128 : 128), w.y));
if (wall_status[index] == true) { if (wall_status[index] == true) {
Server.objectHandler.createAnObject(leaking_wall, w.x, w.y, GameEngine.objectHandler.createAnObject(leaking_wall, w.x, w.y,
w.y == 4826 ? 1 : 3); w.y == 4826 ? 1 : 3);
if (isSunk) if (isSunk)
Server.objectHandler.createAnObject(leaking_wall, w.x - 128, GameEngine.objectHandler.createAnObject(leaking_wall, w.x - 128,
w.y, w.y == 4826 ? 1 : 3); w.y, w.y == 4826 ? 1 : 3);
else else
Server.objectHandler.createAnObject(leaking_wall, w.x + 128, GameEngine.objectHandler.createAnObject(leaking_wall, w.x + 128,
w.y, w.y == 4826 ? 1 : 3); w.y, w.y == 4826 ? 1 : 3);
} else { } else {
Server.objectHandler.createAnObject(patched_wall, w.x, w.y, GameEngine.objectHandler.createAnObject(patched_wall, w.x, w.y,
w.y == 4826 ? 1 : 3); w.y == 4826 ? 1 : 3);
if (isSunk) if (isSunk)
Server.objectHandler.createAnObject(patched_wall, w.x - 128, GameEngine.objectHandler.createAnObject(patched_wall, w.x - 128,
w.y, w.y == 4826 ? 1 : 3); w.y, w.y == 4826 ? 1 : 3);
else else
Server.objectHandler.createAnObject(patched_wall, w.x + 128, GameEngine.objectHandler.createAnObject(patched_wall, w.x + 128,
w.y, w.y == 4826 ? 1 : 3); w.y, w.y == 4826 ? 1 : 3);
} }
} }
@@ -248,15 +245,12 @@ public class Trawler extends GroupMinigame {
*/ */
public void playerUpdates() { public void playerUpdates() {
for (Client p : players) { for (Player p : players) {
if (p != null) { if (p != null) {
p.asClient() p.asClient().getPacketSender().sendFrame126(net_ripped ? "@red@Ripped" : "@gre@Okay", 11935);
.getPlayerAssistant() p.getPacketSender().sendFrame126("" + fish_caught, 11937);
.sendFrame126(net_ripped ? "@red@Ripped" : "@gre@Okay", p.getPacketSender().sendFrame126(game_time + " mins", 11938);
11935); p.getPacketSender().sendFrame20(391, water_level);
p.getPlayerAssistant().sendFrame126("" + fish_caught, 11937);
p.getPlayerAssistant().sendFrame126(game_time + " mins", 11938);
p.getPlayerAssistant().sendFrame20(391, water_level);
} else { } else {
players_to_remove.add(p); players_to_remove.add(p);
} }
@@ -287,14 +281,14 @@ public class Trawler extends GroupMinigame {
wall_status[j] = false; wall_status[j] = false;
} }
playerUpdates(); playerUpdates();
for (Client p : players) { for (Player p : players) {
if (p != null) { if (p != null) {
p.getPlayerAssistant().removeAllSidebars(); p.getPlayerAssistant().removeAllSidebars();
p.getPlayerAssistant().sendMapState(2); p.getPacketSender().sendMapState(2);
p.getPlayerAssistant().showInterface(3281); p.getPacketSender().showInterface(3281);
p.getPlayerAssistant().sendFrame20(75, 11); p.getPacketSender().sendFrame20(75, 11);
p.getPlayerAssistant().movePlayer(1885, 4825, 1); p.getPlayerAssistant().movePlayer(1885, 4825, 1);
p.getPlayerAssistant().sendFrame126("", 11936); p.getPacketSender().sendFrame126("", 11936);
} }
} }
CycleEventHandler.getSingleton().addEvent(this, new CycleEvent() { CycleEventHandler.getSingleton().addEvent(this, new CycleEvent() {
@@ -305,11 +299,11 @@ public class Trawler extends GroupMinigame {
@Override @Override
public void stop() { public void stop() {
for (Client p : players) { for (Player p : players) {
if (p != null) { if (p != null) {
p.getPlayerAssistant().sendSidebars(); p.getPlayerAssistant().sendSidebars();
p.getPlayerAssistant().showInterface(5596); p.getPacketSender().showInterface(5596);
p.getPlayerAssistant().sendMapState(0); p.getPacketSender().sendMapState(0);
} }
} }
started = true; started = true;
@@ -323,7 +317,7 @@ public class Trawler extends GroupMinigame {
*/ */
public void onEndLose() { public void onEndLose() {
for (Client p : players) { for (Player p : players) {
if (p != null) { if (p != null) {
p.getPlayerAssistant().movePlayer(1885, 4825, 1); p.getPlayerAssistant().movePlayer(1885, 4825, 1);
} }
@@ -353,7 +347,7 @@ public class Trawler extends GroupMinigame {
players.clear(); players.clear();
container.stop(); container.stop();
} else if (end() == 2) { } else if (end() == 2) {
for (Client p : players) { for (Player p : players) {
if (p != null) { if (p != null) {
p.fishingTrawlerReward = playerReward(p); p.fishingTrawlerReward = playerReward(p);
} }
@@ -422,19 +416,19 @@ public class Trawler extends GroupMinigame {
* Fixes the holes in the ship * Fixes the holes in the ship
*/ */
public void fixHole(Client p, int x, int y) { public void fixHole(Player player, int x, int y) {
if (doAction(p)) { if (doAction(player)) {
if (p.getItemAssistant().playerHasItem(swamp_paste)) { if (player.getItemAssistant().playerHasItem(swamp_paste)) {
int index = Wall.getIndex(x, y); int index = Wall.getIndex(x, y);
if (index >= 0) { if (index >= 0) {
p.getItemAssistant().deleteItem(swamp_paste, 1); player.getItemAssistant().deleteItem(swamp_paste, 1);
p.startAnimation(832); player.startAnimation(832);
wall_status[index] = false; wall_status[index] = false;
updateWall(index); updateWall(index);
p.turnPlayerTo(x, y + (y == 4826 ? 1 : -1)); player.turnPlayerTo(x, y + (y == 4826 ? 1 : -1));
} }
} else { } else {
p.getActionSender().sendMessage("You don't have any swamp paste."); player.getPacketSender().sendMessage("You don't have any swamp paste.");
} }
} }
} }
@@ -443,15 +437,15 @@ public class Trawler extends GroupMinigame {
* Moves the player to the top of the boat * Moves the player to the top of the boat
*/ */
public void upLadder(Client p, int obX, int obY) { public void upLadder(Player player, int obX, int obY) {
if (doAction(p)) { if (doAction(player)) {
if (!isSunk) { if (!isSunk) {
p.startAnimation(climb_up); player.startAnimation(climb_up);
p.getPlayerAssistant() player.getPlayerAssistant()
.movePlayer(obX == 1884 ? 1885 : 1892, obY, 1); .movePlayer(obX == 1884 ? 1885 : 1892, obY, 1);
} else { } else {
p.startAnimation(climb_up); player.startAnimation(climb_up);
p.getPlayerAssistant().movePlayer(obX == 2021 ? 2020 : 2013, obY, 1); player.getPlayerAssistant().movePlayer(obX == 2021 ? 2020 : 2013, obY, 1);
} }
} }
} }
@@ -460,15 +454,15 @@ public class Trawler extends GroupMinigame {
* Moves the player to the top of the boat * Moves the player to the top of the boat
*/ */
public void downLadder(Client p, int obX, int obY) { public void downLadder(Player player, int obX, int obY) {
if (doAction(p)) { if (doAction(player)) {
if (!isSunk) { if (!isSunk) {
p.startAnimation(climb_down); player.startAnimation(climb_down);
p.getPlayerAssistant() player.getPlayerAssistant()
.movePlayer(obX == 1884 ? 1885 : 1892, obY, 0); .movePlayer(obX == 1884 ? 1885 : 1892, obY, 0);
} else { } else {
p.startAnimation(climb_down); player.startAnimation(climb_down);
p.getPlayerAssistant().movePlayer(obX == 2021 ? 2020 : 2013, obY, 0); player.getPlayerAssistant().movePlayer(obX == 2021 ? 2020 : 2013, obY, 0);
} }
} }
} }
@@ -477,14 +471,14 @@ public class Trawler extends GroupMinigame {
* Fixes the net on the ship * Fixes the net on the ship
*/ */
public void fixNet(Client p) { public void fixNet(Player p) {
if (doAction(p)) { if (doAction(p)) {
if (!net_ripped) { if (!net_ripped) {
p.getActionSender().sendMessage("The net is not ripped."); p.getPacketSender().sendMessage("The net is not ripped.");
return; return;
} }
if (!p.getItemAssistant().playerHasItem(rope)) { if (!p.getItemAssistant().playerHasItem(rope)) {
p.getActionSender().sendMessage( p.getPacketSender().sendMessage(
"You need a rope before attempting to fix the net!"); "You need a rope before attempting to fix the net!");
return; return;
} }
@@ -493,10 +487,10 @@ public class Trawler extends GroupMinigame {
p.getItemAssistant().deleteItem(rope, 1); p.getItemAssistant().deleteItem(rope, 1);
net_ripped = false; net_ripped = false;
playerUpdates(); playerUpdates();
p.getActionSender().sendMessage("You successfully fix the net!"); p.getPacketSender().sendMessage("You successfully fix the net!");
} else { } else {
p.getItemAssistant().deleteItem(rope, 1); p.getItemAssistant().deleteItem(rope, 1);
p.getActionSender().sendMessage("You failed to repair the net!"); p.getPacketSender().sendMessage("You failed to repair the net!");
} }
} }
} }
@@ -521,7 +515,7 @@ public class Trawler extends GroupMinigame {
* Bails water out of the boat * Bails water out of the boat
*/ */
public void bail(Client p) { public void bail(Player p) {
if (doAction(p)) { if (doAction(p)) {
if (p.getItemAssistant().playerHasItem(bailing_bucket_empty)) { if (p.getItemAssistant().playerHasItem(bailing_bucket_empty)) {
p.startAnimation(827); p.startAnimation(827);
@@ -536,7 +530,7 @@ public class Trawler extends GroupMinigame {
* Bails water out of the boat * Bails water out of the boat
*/ */
public void emptyBucket(Client p) { public void emptyBucket(Player p) {
if (doAction(p)) { if (doAction(p)) {
if (p.getItemAssistant().playerHasItem(bailing_bucket_full)) { if (p.getItemAssistant().playerHasItem(bailing_bucket_full)) {
p.startAnimation(832); p.startAnimation(832);
@@ -577,7 +571,7 @@ public class Trawler extends GroupMinigame {
*/ */
public void setSwimmingAnimations() { public void setSwimmingAnimations() {
for(Client p : players) { for(Player p : players) {
if (p != null) { if (p != null) {
p.prevplayerWalkIndex = p.playerWalkIndex; p.prevplayerWalkIndex = p.playerWalkIndex;
p.prevPlayerStandIndex = p.playerStandIndex; p.prevPlayerStandIndex = p.playerStandIndex;
@@ -596,7 +590,7 @@ public class Trawler extends GroupMinigame {
p.playerTurn90CCWIndex = SWIM_STILL_ANIMATION; p.playerTurn90CCWIndex = SWIM_STILL_ANIMATION;
p.playerTurn180Index = SWIM_STILL_ANIMATION; p.playerTurn180Index = SWIM_STILL_ANIMATION;
p.getPlayerAssistant().requestUpdates(); p.getPlayerAssistant().requestUpdates();
p.getPlayerAssistant().closeAllWindows(); p.getPacketSender().closeAllWindows();
} }
} }
} }
@@ -695,7 +689,7 @@ public class Trawler extends GroupMinigame {
* Loss teleporting * Loss teleporting
*/ */
public void movePlayersLoss() { public void movePlayersLoss() {
for (Client p : players) { for (Player p : players) {
if (p != null) { if (p != null) {
p.getPlayerAssistant().movePlayer(1952, 4826, 0); p.getPlayerAssistant().movePlayer(1952, 4826, 0);
} }
@@ -710,13 +704,13 @@ public class Trawler extends GroupMinigame {
* Win teleporting * Win teleporting
*/ */
public void movePlayerWin(final ArrayList<Client> pl) { public void movePlayerWin(final ArrayList<Player> pl) {
for (Client p : pl) { for (Player p : pl) {
if (p != null) { if (p != null) {
p.getPlayerAssistant().removeAllSidebars(); p.getPlayerAssistant().removeAllSidebars();
p.getPlayerAssistant().sendMapState(2); p.getPacketSender().sendMapState(2);
p.getPlayerAssistant().showInterface(3281); p.getPacketSender().showInterface(3281);
p.getPlayerAssistant().sendFrame20(75, 12); p.getPacketSender().sendFrame20(75, 12);
p.getPlayerAssistant().movePlayer(2666, 3161, 0); p.getPlayerAssistant().movePlayer(2666, 3161, 0);
//p.getPlayerAssistant().movePlayer(2804, 3421, 0); //p.getPlayerAssistant().movePlayer(2804, 3421, 0);
} }
@@ -729,11 +723,11 @@ public class Trawler extends GroupMinigame {
@Override @Override
public void stop() { public void stop() {
for (Client p : pl) { for (Player p : pl) {
if (p != null) { if (p != null) {
p.getPlayerAssistant().sendSidebars(); p.getPlayerAssistant().sendSidebars();
p.getPlayerAssistant().sendMapState(0); p.getPacketSender().sendMapState(0);
p.getPlayerAssistant().closeAllWindows(); p.getPacketSender().closeAllWindows();
} }
} }
in_progress = false; in_progress = false;
@@ -748,7 +742,7 @@ public class Trawler extends GroupMinigame {
* Adds the rewards to each player * Adds the rewards to each player
*/ */
public ArrayList<GameItem> playerReward(Client p) { public ArrayList<GameItem> playerReward(Player p) {
ArrayList<GameItem> toReturn = new ArrayList<GameItem>(); ArrayList<GameItem> toReturn = new ArrayList<GameItem>();
boolean turtles = true; boolean turtles = true;
boolean mantas = true; boolean mantas = true;
@@ -787,25 +781,25 @@ public class Trawler extends GroupMinigame {
if (manta > 0) { if (manta > 0) {
toReturn.add(new GameItem(389, manta)); toReturn.add(new GameItem(389, manta));
if (p.playerLevel[p.playerFishing] >= 81) { if (p.playerLevel[p.playerFishing] >= 81) {
xpToAdd += (manta * 46 * SkillHandler.FISHING_EXPERIENCE); xpToAdd += (manta * 46);
} }
} }
if (turt > 0) { if (turt > 0) {
toReturn.add(new GameItem(395, turt)); toReturn.add(new GameItem(395, turt));
if (p.playerLevel[p.playerFishing] >= 79) { if (p.playerLevel[p.playerFishing] >= 79) {
xpToAdd += (manta * 38 * SkillHandler.FISHING_EXPERIENCE); xpToAdd += (manta * 38);
} }
} }
if (lobs > 0) { if (lobs > 0) {
toReturn.add(new GameItem(377, lobs)); toReturn.add(new GameItem(377, lobs));
if (p.playerLevel[p.playerFishing] >= 40) { if (p.playerLevel[p.playerFishing] >= 40) {
xpToAdd += (manta * 90 * SkillHandler.FISHING_EXPERIENCE); xpToAdd += (manta * 90);
} }
} }
if (swordFish > 0) { if (swordFish > 0) {
toReturn.add(new GameItem(371, swordFish)); toReturn.add(new GameItem(371, swordFish));
if (p.playerLevel[p.playerFishing] >= 50) { if (p.playerLevel[p.playerFishing] >= 50) {
xpToAdd += (manta * 100 * SkillHandler.FISHING_EXPERIENCE); xpToAdd += (manta * 100);
} }
} }
if (junk > 0) if (junk > 0)
@@ -845,25 +839,25 @@ public class Trawler extends GroupMinigame {
return game_time; return game_time;
} }
public void resetRewardsInterface(Client c) { public void resetRewardsInterface(Player player) {
for(int j = 0; j < 45; j++) { for(int j = 0; j < 45; j++) {
c.getPlayerAssistant().sendFrame34(-1, j, 4640, -1); player.getPacketSender().sendFrame34(-1, j, 4640, -1);
} }
} }
public void showReward(Client c) { public void showReward(Player player) {
resetRewardsInterface(c); resetRewardsInterface(player);
c.inFishingTrawlerRewardsInterface = true; player.inFishingTrawlerRewardsInterface = true;
c.getPlayerAssistant().showInterface(4564); player.getPacketSender().showInterface(4564);
for(int j = 0; j < c.fishingTrawlerReward.size(); j++) { for(int j = 0; j < player.fishingTrawlerReward.size(); j++) {
c.getPlayerAssistant().sendFrame34(c.fishingTrawlerReward.get(j).id, j, 4640, c.fishingTrawlerReward.get(j).amount); player.getPacketSender().sendFrame34(player.fishingTrawlerReward.get(j).id, j, 4640, player.fishingTrawlerReward.get(j).amount);
} }
} }
public void updateRewardSlot(Client c, int slot) { public void updateRewardSlot(Player player, int slot) {
c.inFishingTrawlerRewardsInterface = true; player.inFishingTrawlerRewardsInterface = true;
c.getPlayerAssistant().sendFrame34(c.fishingTrawlerReward.get(slot).id, slot, 4640, c.fishingTrawlerReward.get(slot).amount); player.getPacketSender().sendFrame34(player.fishingTrawlerReward.get(slot).id, slot, 4640, player.fishingTrawlerReward.get(slot).amount);
if(slot != 4 && c.fishingTrawlerReward.size() == 5) { if(slot != 4 && player.fishingTrawlerReward.size() == 5) {
c.getPlayerAssistant().sendFrame34(c.fishingTrawlerReward.get(4).id, 4, 4640, c.fishingTrawlerReward.get(4).amount); player.getPacketSender().sendFrame34(player.fishingTrawlerReward.get(4).id, 4, 4640, player.fishingTrawlerReward.get(4).amount);
} }
} }
@@ -1,7 +1,7 @@
package redone.game.content.minigames.trawler; package com.rebotted.game.content.minigames.trawler;
import redone.game.players.Client; import com.rebotted.game.players.Location;
import redone.game.players.Location; import com.rebotted.game.players.Player;
public class TrawlerWaitingRoom extends WaitingRoom { public class TrawlerWaitingRoom extends WaitingRoom {
@@ -29,14 +29,8 @@ public class TrawlerWaitingRoom extends WaitingRoom {
@Override @Override
public void onStart() { public void onStart() {
trawler.players.clear(); trawler.players.clear();
/*for(Iterator<Player> i = waiting.iterator(); i.hasNext();) {
Player p = i.next();
if(!boat.playerInArea(p)) {
i.remove(); // Allowed with an iterator
}
}*/
for(Client p : waiting) { for(Player p : waiting) {
trawler.players.add(p); trawler.players.add(p);
} }
@@ -45,19 +39,17 @@ public class TrawlerWaitingRoom extends WaitingRoom {
} }
@Override @Override
public void onLeave(Client p) { public void onLeave(Player p) {
//p.asClient().getPA().movePlayer(2804, 3421, 0);
p.asClient().getPlayerAssistant().movePlayer(2676, 3170, 0); p.asClient().getPlayerAssistant().movePlayer(2676, 3170, 0);
} }
@Override @Override
public void onJoin(Client p) { public void onJoin(Player p) {
//p.asClient().getPA().movePlayer(2808, 3421, 1);
p.getPlayerAssistant().movePlayer(2672, 3170, 1); p.getPlayerAssistant().movePlayer(2672, 3170, 1);
if(!isActive()) { if(!isActive()) {
p.getActionSender().sendMessage(trawler.getGameTime() == 0 ? "The trawler will be returning in less than a minute!" : "The trawler will return in "+trawler.getGameTime() + (trawler.getGameTime() == 1 ? " minute" : " minutes")+"!"); p.getPacketSender().sendMessage(trawler.getGameTime() == 0 ? "The trawler will be returning in less than a minute!" : "The trawler will return in "+trawler.getGameTime() + (trawler.getGameTime() == 1 ? " minute" : " minutes")+"!");
} else { } else {
p.getActionSender().sendMessage(getTimeRemaining() == 0 ? "The trawler will be leaving in less than a minute!" : "The trawler will leave in "+ getTimeRemaining() + (getTimeRemaining() == 1 ? " minute" : " minutes")+"!"); p.getPacketSender().sendMessage(getTimeRemaining() == 0 ? "The trawler will be leaving in less than a minute!" : "The trawler will leave in "+ getTimeRemaining() + (getTimeRemaining() == 1 ? " minute" : " minutes")+"!");
} }
} }
@@ -67,11 +59,11 @@ public class TrawlerWaitingRoom extends WaitingRoom {
@Override @Override
public void onTimeChange() { public void onTimeChange() {
for(Client p : waiting) { for(Player p : waiting) {
if(!isActive()) { if(!isActive()) {
p.getActionSender().sendMessage(trawler.getGameTime() == 0 ? "The trawler will be returning in less than a minute!" : "The trawler will return in "+trawler.getGameTime() + (trawler.getGameTime() == 1 ? " minute" : " minutes")+"!"); p.getPacketSender().sendMessage(trawler.getGameTime() == 0 ? "The trawler will be returning in less than a minute!" : "The trawler will return in "+trawler.getGameTime() + (trawler.getGameTime() == 1 ? " minute" : " minutes")+"!");
} else { } else {
p.getActionSender().sendMessage(getTimeRemaining() == 0 ? "The trawler will be leaving in less than a minute!" : "The trawler will leave in "+ getTimeRemaining() + (getTimeRemaining() == 1 ? " minute" : " minutes")+"!"); p.getPacketSender().sendMessage(getTimeRemaining() == 0 ? "The trawler will be leaving in less than a minute!" : "The trawler will leave in "+ getTimeRemaining() + (getTimeRemaining() == 1 ? " minute" : " minutes")+"!");
} }
} }
} }
@@ -1,17 +1,16 @@
package redone.game.content.minigames.trawler; package com.rebotted.game.content.minigames.trawler;
import java.util.ArrayList; import java.util.ArrayList;
import com.rebotted.event.CycleEvent;
import redone.event.CycleEvent; import com.rebotted.event.CycleEventContainer;
import redone.event.CycleEventContainer; import com.rebotted.event.CycleEventHandler;
import redone.event.CycleEventHandler; import com.rebotted.game.players.Location;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.game.players.Location;
public abstract class WaitingRoom { public abstract class WaitingRoom {
public int minimumPlayers; public int minimumPlayers;
public ArrayList<Client> waiting = new ArrayList<Client>(); public ArrayList<Player> waiting = new ArrayList<Player>();
private int wait_time; private int wait_time;
private int minutes_remaining; private int minutes_remaining;
private boolean active; private boolean active;
@@ -19,8 +18,8 @@ public abstract class WaitingRoom {
public abstract Location getLocation(); public abstract Location getLocation();
public abstract boolean startGame(); public abstract boolean startGame();
public abstract void onStart(); public abstract void onStart();
public abstract void onLeave(Client p); public abstract void onLeave(Player player);
public abstract void onJoin(Client p); public abstract void onJoin(Player p);
public abstract void onTimeChange(); public abstract void onTimeChange();
public abstract boolean canStart(); public abstract boolean canStart();
@@ -35,17 +34,17 @@ public abstract class WaitingRoom {
} }
} }
public void join(Client p) { public void join(Player player) {
if(!waiting.contains(p)) { if(!waiting.contains(player)) {
onJoin(p); onJoin(player);
waiting.add(p); waiting.add(player);
} }
} }
public void leave(Client p) { public void leave(Player player) {
if(waiting.contains(p)) { if(waiting.contains(player)) {
onLeave(p); onLeave(player);
waiting.remove(p); waiting.remove(player);
} }
} }
@@ -90,9 +89,9 @@ public abstract class WaitingRoom {
public void messageWaiting(String message) { public void messageWaiting(String message) {
for(Client p : waiting) { for(Player p : waiting) {
if(p != null) { if(p != null) {
p.getActionSender().sendMessage(message); p.getPacketSender().sendMessage(message);
} }
} }
} }
@@ -1,7 +1,7 @@
package redone.game.content.music; package com.rebotted.game.content.music;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.util.Misc;
/** /**
* http://runescape.wikia.com/wiki/Music Good resource song id = 2 absx/64 = 1 * http://runescape.wikia.com/wiki/Music Good resource song id = 2 absx/64 = 1
@@ -139,7 +139,7 @@ public class Music {
* @param c * @param c
* Client. * Client.
*/ */
public static void checkMusic(Client c) { public static void checkMusic(Player c) {
for (int[] aMUSIC_DATA : MUSIC_DATA) { for (int[] aMUSIC_DATA : MUSIC_DATA) {
if (c.getX() / 64 == aMUSIC_DATA[0] if (c.getX() / 64 == aMUSIC_DATA[0]
&& c.getY() / 64 == aMUSIC_DATA[1]/* && c.getY() / 64 == aMUSIC_DATA[1]/*
@@ -148,13 +148,13 @@ public class Music {
*/) { */) {
if (c.getTemporary("CURRENT_SONG") == null if (c.getTemporary("CURRENT_SONG") == null
|| (Integer) c.getTemporary("CURRENT_SONG") != aMUSIC_DATA[2]) { || (Integer) c.getTemporary("CURRENT_SONG") != aMUSIC_DATA[2]) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"@gre@Play Music Has Music:@bla@ " + aMUSIC_DATA[0] "@gre@Play Music Has Music:@bla@ " + aMUSIC_DATA[0]
+ " : " + aMUSIC_DATA[1]); + " : " + aMUSIC_DATA[1]);
} }
} }
} }
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"@red@Play Music No Music:@bla@ " + c.getX() / 64 + " : " "@red@Play Music No Music:@bla@ " + c.getX() / 64 + " : "
+ c.getY() / 64); + c.getY() / 64);
} }
@@ -162,23 +162,23 @@ public class Music {
/** /**
* Checks which song is played in which region. * Checks which song is played in which region.
* *
* @param player * @param c
* the player. * the player.
*/ */
public static void playMusic(Client player) { public static void playMusic(Player c) {
for (int[] aMUSIC_DATA : MUSIC_DATA) { for (int[] aMUSIC_DATA : MUSIC_DATA) {
if (player.getX() / 64 == aMUSIC_DATA[0] if (c.getX() / 64 == aMUSIC_DATA[0]
&& player.getY() / 64 == aMUSIC_DATA[1]/* && c.getY() / 64 == aMUSIC_DATA[1]/*
* && player . * && player .
* getPlayList ( ) . * getPlayList ( ) .
* auto * auto
*/) { */) {
if (player.getTemporary("CURRENT_SONG") == null if (c.getTemporary("CURRENT_SONG") == null
|| (Integer) player.getTemporary("CURRENT_SONG") != aMUSIC_DATA[2]) { || (Integer) c.getTemporary("CURRENT_SONG") != aMUSIC_DATA[2]) {
player.getPlayList(); c.getPlayList();
if (player.getPlayList().auto) { if (c.getPlayList().auto) {
player.addTemporary("CURRENT_SONG", aMUSIC_DATA[2]); c.addTemporary("CURRENT_SONG", aMUSIC_DATA[2]);
player.getActionSender().sendSong(aMUSIC_DATA[2]); c.getPacketSender().sendSong(aMUSIC_DATA[2]);
} }
int[] edgeVilleSongs = { 98, 111, 127, 157, 106 }; int[] edgeVilleSongs = { 98, 111, 127, 157, 106 };
int toPlay = Misc.random(4); int toPlay = Misc.random(4);
@@ -201,7 +201,7 @@ public class Music {
* aMUSIC_DATA[1] == 50) { aMUSIC_DATA[2] = * aMUSIC_DATA[1] == 50) { aMUSIC_DATA[2] =
* battlefield[randomSong]; } * battlefield[randomSong]; }
*/ */
player.getPlayList().playSong(aMUSIC_DATA[2]); c.getPlayList().playSong(aMUSIC_DATA[2]);
} }
} }
} }
@@ -1,13 +1,12 @@
package redone.game.content.music; package com.rebotted.game.content.music;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import com.rebotted.game.players.Player;
import redone.game.players.Client;
public class PlayList { public class PlayList {
private final Client player; private final Player player;
@SuppressWarnings("unused") @SuppressWarnings("unused")
private final int[] songs = { 2, 3, 12, 14, 9, 157, 76, 57, 419, 15, 18, private final int[] songs = { 2, 3, 12, 14, 9, 157, 76, 57, 419, 15, 18,
@@ -53,8 +52,8 @@ public class PlayList {
public boolean auto = true; public boolean auto = true;
public PlayList(Client p) { public PlayList(Player player2) {
player = p; player = player2;
} }
private static enum Songs { private static enum Songs {
@@ -136,7 +135,7 @@ public class PlayList {
public void fixAllColors() { public void fixAllColors() {
for (int i = 0; i < 385; i++) { for (int i = 0; i < 385; i++) {
if (Songs.get(i) != null) { if (Songs.get(i) != null) {
player.getActionSender().sendColor(Songs.get(i).childId, player.getPacketSender().sendColor(Songs.get(i).childId,
255 << 10 | 0 << 5 | 0); 255 << 10 | 0 << 5 | 0);
if (unlocked[Songs.get(i).arraySlot]) { if (unlocked[Songs.get(i).arraySlot]) {
updateList(Songs.get(i).childId); updateList(Songs.get(i).childId);
@@ -151,26 +150,26 @@ public class PlayList {
if (Songs.get(songID) == null) { if (Songs.get(songID) == null) {
// player.sendMessage("This song has not yet been added to the playlist. - Song ID = "+songID); // player.sendMessage("This song has not yet been added to the playlist. - Song ID = "+songID);
if (auto) { if (auto) {
player.getPlayerAssistant().sendFrame126("Song Unavailable!", player.getPacketSender().sendFrame126("Song Unavailable!",
4439); 4439);
updateList(4439); updateList(4439);
} }
return; return;
} }
if (!unlocked[Songs.get(songID).arraySlot]) { if (!unlocked[Songs.get(songID).arraySlot]) {
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You have unlocked the song " "You have unlocked the song "
+ names[Songs.get(songID).arraySlot] + "."); + names[Songs.get(songID).arraySlot] + ".");
// System.out.println("You have unlocked the song " + // System.out.println("You have unlocked the song " +
// names[Songs.get(songID).arraySlot]); // names[Songs.get(songID).arraySlot]);
unlocked[Songs.get(songID).arraySlot] = true; unlocked[Songs.get(songID).arraySlot] = true;
updateList(Songs.get(songID).childId); updateList(Songs.get(songID).childId);
player.getPlayerAssistant().sendFrame126( player.getPacketSender().sendFrame126(
names[Songs.get(songID).arraySlot], 4439); names[Songs.get(songID).arraySlot], 4439);
updateList(4439); updateList(4439);
} else { } else {
if (auto) { if (auto) {
player.getPlayerAssistant().sendFrame126( player.getPacketSender().sendFrame126(
names[Songs.get(songID).arraySlot], 4439); names[Songs.get(songID).arraySlot], 4439);
updateList(4439); updateList(4439);
} }
@@ -181,7 +180,7 @@ public class PlayList {
} }
public void updateList(int id) { public void updateList(int id) {
player.getActionSender().sendColor(id, 0 << 10 | 255 << 5 | 0); player.getPacketSender().sendColor(id, 0 << 10 | 255 << 5 | 0);
} }
public void handleButton(int button) { public void handleButton(int button) {
@@ -192,10 +191,10 @@ public class PlayList {
loop = !loop; loop = !loop;
} else if (button == 6269) { } else if (button == 6269) {
auto = true; auto = true;
player.getPlayerAssistant().sendConfig(18, 1); player.getPacketSender().sendConfig(18, 1);
} else if (button == 6270) { } else if (button == 6270) {
auto = false; auto = false;
player.getPlayerAssistant().sendConfig(18, 0); player.getPacketSender().sendConfig(18, 0);
} else { } else {
// System.out.println("button="+button); // System.out.println("button="+button);
int songId = -1; int songId = -1;
@@ -209,15 +208,15 @@ public class PlayList {
if (songId == -1) { if (songId == -1) {
// player.getPacketDispatcher().sendMessage("That song is unavailable at this time."); // player.getPacketDispatcher().sendMessage("That song is unavailable at this time.");
} else if (!unlocked[Songs.get(songId).arraySlot]) { } else if (!unlocked[Songs.get(songId).arraySlot]) {
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You have to unlock that song first!"); "You have to unlock that song first!");
} else { } else {
auto = false; auto = false;
player.getPlayerAssistant().sendConfig(18, 0); player.getPacketSender().sendConfig(18, 0);
playSong(songId); playSong(songId);
// System.out.println("sending music to ActionSender packet - song id = "+songId); // System.out.println("sending music to ActionSender packet - song id = "+songId);
player.getActionSender().sendSong(songId); player.getPacketSender().sendSong(songId);
player.getPlayerAssistant().sendFrame126( player.getPacketSender().sendFrame126(
names[Songs.get(songId).arraySlot], 4439); names[Songs.get(songId).arraySlot], 4439);
updateList(4439); updateList(4439);
} }
@@ -1,14 +1,14 @@
package redone.game.content.music.sound; package com.rebotted.game.content.music.sound;
import redone.Server; import com.rebotted.GameEngine;
import redone.game.content.combat.magic.MagicData; import com.rebotted.game.content.combat.magic.MagicData;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.util.Misc;
/** /**
* CombatSounds * CombatSounds
* @author Andrew (I'm A Boss on Rune-Server and Mr Extremez on Mopar & Runelocus) * @author Andrew (Mr Extremez)
*/ */
public class CombatSounds { public class CombatSounds {
@@ -152,14 +152,14 @@ public class CombatSounds {
} }
public static String getItemName(int ItemID) { public static String getItemName(int ItemID) {
return Server.itemHandler.ItemList[ItemID].itemName; return GameEngine.itemHandler.ItemList[ItemID].itemName;
} }
public static int getMagicSound(Client c, int spellId) { public static int getMagicSound(Player c, int spellId) {
return MagicData.MAGIC_SPELLS[spellId][16]; return MagicData.MAGIC_SPELLS[spellId][16];
} }
public static int getPlayerBlockSounds(Client c) { public static int getPlayerBlockSounds(Player c) {
int blockSound = 511; int blockSound = 511;
@@ -227,7 +227,7 @@ public class CombatSounds {
return blockSound; return blockSound;
} }
public static int getWeaponSounds(Client c) { public static int getWeaponSounds(Player c) {
if (c.playerEquipment[c.playerWeapon] >= 1) { if (c.playerEquipment[c.playerWeapon] >= 1) {
String wep = getItemName(c.playerEquipment[c.playerWeapon]) String wep = getItemName(c.playerEquipment[c.playerWeapon])
.toLowerCase(); .toLowerCase();
@@ -1,6 +1,6 @@
package redone.game.content.music.sound; package com.rebotted.game.content.music.sound;
import redone.game.players.Client; import com.rebotted.game.players.Player;
/** /**
* Sounds * Sounds
@@ -9,10 +9,10 @@ import redone.game.players.Client;
public class SoundList { public class SoundList {
Client c; Player c;
public SoundList(Client c) { public SoundList(Player player) {
this.c = c; this.c = player;
} }
/** /**
@@ -1,124 +1,136 @@
package redone.game.content.quests; package com.rebotted.game.content.quests;
import redone.game.content.quests.impl.KnightsSword; import com.rebotted.game.content.quests.impl.BlackKnightsFortress;
import redone.game.content.quests.impl.ShieldArrav; import com.rebotted.game.content.quests.impl.CooksAssistant;
import redone.game.players.Client; import com.rebotted.game.content.quests.impl.DoricsQuest;
import com.rebotted.game.content.quests.impl.GertrudesCat;
import com.rebotted.game.content.quests.impl.ImpCatcher;
import com.rebotted.game.content.quests.impl.KnightsSword;
import com.rebotted.game.content.quests.impl.PiratesTreasure;
import com.rebotted.game.content.quests.impl.RestlessGhost;
import com.rebotted.game.content.quests.impl.RomeoJuliet;
import com.rebotted.game.content.quests.impl.RuneMysteries;
import com.rebotted.game.content.quests.impl.SheepShearer;
import com.rebotted.game.content.quests.impl.ShieldArrav;
import com.rebotted.game.content.quests.impl.VampyreSlayer;
import com.rebotted.game.content.quests.impl.WitchsPotion;
import com.rebotted.game.players.Player;
/** /**
* Quest Assistant * Quest Assistant
* @author Andrew (I'm A Boss on Rune-Server, Mr Extremez on Moparscape & Runelocus) * @author Andrew (Mr Extremez)
*/ */
public class QuestAssistant { public class QuestAssistant {
public static final int MAXIMUM_QUESTPOINTS = 23; public static final int MAXIMUM_QUESTPOINTS = 23;
public static void sendStages(Client client) { public static void sendStages(Player player) {
client.getPlayerAssistant().sendFrame126("QP: " + client.questPoints + " ", 3985); player.getPacketSender().sendFrame126("QP: " + player.questPoints + " ", 3985);
for (Quests quests : Quests.values()) { for (Quests quests : Quests.values()) {
if (!quests.questStatus() && quests.getStringId() > 0) { if (!quests.questStatus() && quests.getStringId() > 0) {
client.getPlayerAssistant().sendFrame126("", quests.getStringId()); player.getPacketSender().sendFrame126("", quests.getStringId());
} }
} }
if (client.pirateTreasure == 0) { if (player.pirateTreasure == 0) {
client.getPlayerAssistant().sendFrame126("Pirate's Treasure", 7341); player.getPacketSender().sendFrame126("Pirate's Treasure", 7341);
} else if (client.pirateTreasure == 6) { } else if (player.pirateTreasure == 6) {
client.getPlayerAssistant().sendFrame126("@gre@Pirate's Treasure", 7341); player.getPacketSender().sendFrame126("@gre@Pirate's Treasure", 7341);
} else { } else {
client.getPlayerAssistant().sendFrame126("@yel@Pirate's Treasure", 7341); player.getPacketSender().sendFrame126("@yel@Pirate's Treasure", 7341);
} }
if (client.witchspot == 0) { if (player.witchspot == 0) {
client.getPlayerAssistant().sendFrame126("Witch's Potion", 7348); player.getPacketSender().sendFrame126("Witch's Potion", 7348);
} else if (client.witchspot == 3) { } else if (player.witchspot == 3) {
client.getPlayerAssistant().sendFrame126("@gre@Witch's Potion", 7348); player.getPacketSender().sendFrame126("@gre@Witch's Potion", 7348);
} else { } else {
client.getPlayerAssistant().sendFrame126("@yel@Witch's Potion", 7348); player.getPacketSender().sendFrame126("@yel@Witch's Potion", 7348);
} }
if (client.romeojuliet == 0) { if (player.romeojuliet == 0) {
client.getPlayerAssistant().sendFrame126("Romeo and Juliet", 7343); player.getPacketSender().sendFrame126("Romeo and Juliet", 7343);
} else if (client.romeojuliet < 9) { } else if (player.romeojuliet < 9) {
client.getPlayerAssistant().sendFrame126("@yel@Romeo and Juliet", player.getPacketSender().sendFrame126("@yel@Romeo and Juliet",
7343); 7343);
} else if (client.romeojuliet >= 9) { } else if (player.romeojuliet >= 9) {
client.getPlayerAssistant().sendFrame126("@gre@Romeo and Juliet", player.getPacketSender().sendFrame126("@gre@Romeo and Juliet",
7343); 7343);
} }
if (client.vampSlayer == 0) { if (player.vampSlayer == 0) {
client.getPlayerAssistant().sendFrame126("Vampyre Slayer", 7347); player.getPacketSender().sendFrame126("Vampyre Slayer", 7347);
} else if (client.vampSlayer == 5) { } else if (player.vampSlayer == 5) {
client.getPlayerAssistant().sendFrame126("@gre@Vampyre Slayer", 7347); player.getPacketSender().sendFrame126("@gre@Vampyre Slayer", 7347);
} else { } else {
client.getPlayerAssistant().sendFrame126("@yel@Vampyre Slayer", 7347); player.getPacketSender().sendFrame126("@yel@Vampyre Slayer", 7347);
} }
if (client.doricQuest == 0) { if (player.doricQuest == 0) {
client.getPlayerAssistant().sendFrame126("Doric's Quest", 7336); player.getPacketSender().sendFrame126("Doric's Quest", 7336);
} else if (client.doricQuest == 3) { } else if (player.doricQuest == 3) {
client.getPlayerAssistant().sendFrame126("@gre@Doric's Quest", 7336); player.getPacketSender().sendFrame126("@gre@Doric's Quest", 7336);
} else { } else {
client.getPlayerAssistant().sendFrame126("@yel@Doric's Quest", 7336); player.getPacketSender().sendFrame126("@yel@Doric's Quest", 7336);
} }
if (client.restGhost == 0) { if (player.restGhost == 0) {
client.getPlayerAssistant().sendFrame126("Restless Ghost", 7337); player.getPacketSender().sendFrame126("Restless Ghost", 7337);
} else if (client.restGhost == 5) { } else if (player.restGhost == 5) {
client.getPlayerAssistant().sendFrame126("@gre@Restless Ghost", 7337); player.getPacketSender().sendFrame126("@gre@Restless Ghost", 7337);
} else { } else {
client.getPlayerAssistant().sendFrame126("@yel@Restless Ghost", 7337); player.getPacketSender().sendFrame126("@yel@Restless Ghost", 7337);
} }
if (client.impsC == 0) { if (player.impsC == 0) {
client.getPlayerAssistant().sendFrame126("Imp Catcher", 7340); player.getPacketSender().sendFrame126("Imp Catcher", 7340);
} else if (client.impsC == 1) { } else if (player.impsC == 1) {
client.getPlayerAssistant().sendFrame126("@yel@Imp Catcher", 7340); player.getPacketSender().sendFrame126("@yel@Imp Catcher", 7340);
} else if (client.impsC == 2) { } else if (player.impsC == 2) {
client.getPlayerAssistant().sendFrame126("@gre@Imp Catcher", 7340); player.getPacketSender().sendFrame126("@gre@Imp Catcher", 7340);
} }
if (client.gertCat == 0) { if (player.gertCat == 0) {
client.getPlayerAssistant().sendFrame126("Gertrudes Cat", 7360); player.getPacketSender().sendFrame126("Gertrudes Cat", 7360);
} else if (client.gertCat == 7) { } else if (player.gertCat == 7) {
client.getPlayerAssistant().sendFrame126("@gre@Gertrudes Cat", 7360); player.getPacketSender().sendFrame126("@gre@Gertrudes Cat", 7360);
} else { } else {
client.getPlayerAssistant().sendFrame126("@yel@Gertrudes Cat", 7360); player.getPacketSender().sendFrame126("@yel@Gertrudes Cat", 7360);
} }
if (client.sheepShear == 0) { if (player.sheepShear == 0) {
client.getPlayerAssistant().sendFrame126("Sheep Shearer", 7344); player.getPacketSender().sendFrame126("Sheep Shearer", 7344);
} else if (client.sheepShear == 2) { } else if (player.sheepShear == 2) {
client.getPlayerAssistant().sendFrame126("@gre@Sheep Shearer", 7344); player.getPacketSender().sendFrame126("@gre@Sheep Shearer", 7344);
} else { } else {
client.getPlayerAssistant().sendFrame126("@yel@Sheep Shearer", 7344); player.getPacketSender().sendFrame126("@yel@Sheep Shearer", 7344);
} }
if (client.runeMist == 0) { if (player.runeMist == 0) {
client.getPlayerAssistant().sendFrame126("Rune Mysteries", 7335); player.getPacketSender().sendFrame126("Rune Mysteries", 7335);
} else if (client.runeMist == 4) { } else if (player.runeMist == 4) {
client.getPlayerAssistant().sendFrame126("@gre@Rune Mysteries", 7335); player.getPacketSender().sendFrame126("@gre@Rune Mysteries", 7335);
} else { } else {
client.getPlayerAssistant().sendFrame126("@yel@Rune Mysteries", 7335); player.getPacketSender().sendFrame126("@yel@Rune Mysteries", 7335);
} }
if (client.knightS == 0) { if (player.knightS == 0) {
client.getPlayerAssistant().sendFrame126("The Knight's Sword", 7346); player.getPacketSender().sendFrame126("The Knight's Sword", 7346);
} else if (client.knightS < 9) { } else if (player.knightS < 9) {
client.getPlayerAssistant().sendFrame126("@yel@The Knight's Sword", 7346); player.getPacketSender().sendFrame126("@yel@The Knight's Sword", 7346);
} else if (client.knightS == 9) { } else if (player.knightS == 9) {
client.getPlayerAssistant().sendFrame126("@gre@The Knight's Sword", 7346); player.getPacketSender().sendFrame126("@gre@The Knight's Sword", 7346);
} }
if (client.cookAss == 0) { if (player.cookAss == 0) {
client.getPlayerAssistant().sendFrame126("Cook's Assistant", 7333); player.getPacketSender().sendFrame126("Cook's Assistant", 7333);
} else if (client.cookAss == 3) { } else if (player.cookAss == 3) {
client.getPlayerAssistant().sendFrame126("@gre@Cook's Assistant", 7333); player.getPacketSender().sendFrame126("@gre@Cook's Assistant", 7333);
} else if (client.cookAss > 0 && client.cookAss < 3) { } else if (player.cookAss > 0 && player.cookAss < 3) {
client.getPlayerAssistant().sendFrame126("@yel@Cook's Assistant", 7333); player.getPacketSender().sendFrame126("@yel@Cook's Assistant", 7333);
} }
if (client.blackKnight == 0) { if (player.blackKnight == 0) {
client.getPlayerAssistant().sendFrame126("Black Knights' Fortress", 7332); player.getPacketSender().sendFrame126("Black Knights' Fortress", 7332);
} else if (client.blackKnight == 3) { } else if (player.blackKnight == 3) {
client.getPlayerAssistant().sendFrame126("@gre@Black Knights' Fortress", 7332); player.getPacketSender().sendFrame126("@gre@Black Knights' Fortress", 7332);
} else { } else {
client.getPlayerAssistant().sendFrame126("@yel@Black Knights' Fortress", 7332); player.getPacketSender().sendFrame126("@yel@Black Knights' Fortress", 7332);
} }
if (client.shieldArrav == 0) { if (player.shieldArrav == 0) {
client.getPlayerAssistant().sendFrame126("Shield of Arrav", 7345); player.getPacketSender().sendFrame126("Shield of Arrav", 7345);
} else if (client.shieldArrav == 8) { } else if (player.shieldArrav == 8) {
client.getPlayerAssistant().sendFrame126("@gre@Shield of Arrav", 7345); player.getPacketSender().sendFrame126("@gre@Shield of Arrav", 7345);
} else { } else {
client.getPlayerAssistant().sendFrame126("@yel@Shield of Arrav", 7345); player.getPacketSender().sendFrame126("@yel@Shield of Arrav", 7345);
} }
} }
@@ -265,55 +277,55 @@ public class QuestAssistant {
} }
} }
public static void questButtons(Client client, int buttonId) { public static void questButtons(Player player, int buttonId) {
switch (buttonId) { switch (buttonId) {
case 28165: case 28165:
client.getCooksAssistant().showInformation(); CooksAssistant.showInformation(player);
break; break;
case 28167: case 28167:
client.getRuneMysteries().showInformation(); RuneMysteries.showInformation(player);
break; break;
case 28168: case 28168:
client.getDoricsQuest().showInformation(); DoricsQuest.showInformation(player);
break; break;
case 28169: case 28169:
client.getRestlessGhost().showInformation(); RestlessGhost.showInformation(player);
break; break;
case 28172: case 28172:
client.getImpCatcher().showInformation(); ImpCatcher.showInformation(player);
break; break;
case 28173: case 28173:
client.getPiratesTreasure().showInformation(); PiratesTreasure.showInformation(player);
break; break;
case 28175: case 28175:
client.getRomeoJuliet().showInformation(); RomeoJuliet.showInformation(player);
break; break;
case 28176: case 28176:
client.getSheepShearer().showInformation(); SheepShearer.showInformation(player);
break; break;
case 28177: case 28177:
ShieldArrav.showInformation(client); ShieldArrav.showInformation(player);
break; break;
case 28178: case 28178:
KnightsSword.showInformation(client); KnightsSword.showInformation(player);
break; break;
case 28179: case 28179:
client.getVampyreSlayer().showInformation(); VampyreSlayer.showInformation(player);
break; break;
case 28180: case 28180:
client.getWitchesPotion().showInformation(); WitchsPotion.showInformation(player);
break; break;
case 28192: case 28192:
client.getGertrudesCat().showInformation(); GertrudesCat.showInformation(player);
break; break;
case 28164: case 28164:
client.getBlackKnightsFortress().showInformation(); BlackKnightsFortress.showInformation(player);
break; break;
default: default:
if (Quests.forButton(buttonId) != null) { if (Quests.forButton(buttonId) != null) {
client.getActionSender().sendMessage("The quest " + Quests.forButton(buttonId).getName() + " is currently disabled."); player.getPacketSender().sendMessage("The quest " + Quests.forButton(buttonId).getName() + " is currently disabled.");
} }
break; break;
} }
@@ -0,0 +1,163 @@
package com.rebotted.game.content.quests;
import com.rebotted.game.players.Player;
/**
* Quest Rewards
* @author Andrew (Mr Extremez)
*/
public class QuestRewards {
public static String QUEST_NAME;
public static void questReward(Player player, String questName, String Line1, String Line2, String Line3, String Line4, String Line5, String Line6, int itemID) {
player.getPacketSender().sendFrame126("You have completed " + questName + "!", 12144);
player.getPacketSender().sendFrame126("" + player.questPoints, 12147);
player.getPacketSender().sendFrame126(Line1, 12150);
player.getPacketSender().sendFrame126(Line2, 12151);
player.getPacketSender().sendFrame126(Line3, 12152);
player.getPacketSender().sendFrame126(Line4, 12153);
player.getPacketSender().sendFrame126(Line5, 12154);
player.getPacketSender().sendFrame126(Line6, 12155);
if (itemID > 0) {
player.getPacketSender().sendFrame246(12145, 250, itemID);
}
player.getPacketSender().showInterface(12140);
player.getPacketSender().sendMessage("You completed " + questName + "!");
QuestAssistant.sendStages(player);
player.getPacketSender().sendQuickSong(93, 0);
}
public static void knightsReward(Player player) {
questReward(player, "Knight's Sword Quest", "1 Quest Point", "12,725 Smithing XP", "", "", "", "", 0);
QUEST_NAME = "The Knight's Sword";
player.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7346);
player.getPlayerAssistant().addSkillXP(12725, player.playerSmithing);
player.questPoints ++;
player.knightS = 9;
}
public static void gertFinish(Player player) {
questReward(player, "Gertrude's Cat", "1 Quest Point", "1,525 Cooking XP", "A kitten!", "Ability to raise cats", "A chocolate cake", "A bowl of stew", 1897);
QUEST_NAME = "Gertrude's Cat";
player.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7360);
player.getItemAssistant().addItem(1897, 1);
player.getItemAssistant().addItem(2003, 1);
player.getItemAssistant().addItem(1560, 1);
player.getPlayerAssistant().addSkillXP(1525, player.playerCooking);
player.questPoints++;
player.gertCat = 7;
}
public static void pirateFinish(Player c) {
questReward(c, "Pirate's Treasure", "2 Quest Points", "One-Eyed Hector's Treasure", "", "", "", "", 2714);
QUEST_NAME = "Pirate's Treasure";
c.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7341);
c.getItemAssistant().addItem(2714, 1);
c.questPoints += 2;
c.pirateTreasure = 6;
}
public static void witchFinish(Player client) {
questReward(client, "Witch's Potion", "1 Quest Point", "325 Magic XP", "", "", "", "", 325);
QUEST_NAME = "Witch's Potion";
client.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7348);
client.getPlayerAssistant().addSkillXP(325, client.playerMagic);
client.questPoints++;
client.witchspot = 3;
}
public static void julietFinish(Player player) {
questReward(player, "Romeo and Juliet", "5 Quest Points", "", "", "", "", "", 0);
QUEST_NAME = "Romeo and Juliet";
player.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7343);
player.questPoints += 5;
player.romeojuliet = 9;
}
public static void restFinish(Player client) {
questReward(client, "Restless Ghost", "1 Quest Point", "125 Prayer XP", "", "", "", "", 0);
QUEST_NAME = "Restless Ghost";
client.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7337);
client.getPlayerAssistant().addSkillXP(125, client.playerPrayer);
client.questPoints++;
client.restGhost = 5;
}
public static void vampFinish(Player player) {
questReward(player, "Vampyre Slayer", "3 Quest Points", "4,825 Attack XP", "", "", "", "", 0);
QUEST_NAME = "Vampyre Slayer";
player.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7347);
player.getPlayerAssistant().addSkillXP(4825, player.playerAttack);
player.questPoints += 3;
player.vampSlayer = 5;
}
public static void runeFinish(Player player) {
questReward(player, "Rune Mysteries", "1 Quest Point", "Air Talisman", "", "", "", "", 1438);
QUEST_NAME = "Rune Mysteries";
player.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7335);
player.getItemAssistant().addItem(1438, 1);
player.questPoints++;
player.runeMist = 4;
}
public static void sheepFinish(Player player) {
questReward(player, "Sheep Shearer", "1 Quest Point", "150 Crafting Exp", "60 Coins", "", "", "", 995);
QUEST_NAME = "Sheep Shearer";
player.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7344);
player.getItemAssistant().addItem(995, 60);
player.getPlayerAssistant().addSkillXP(150, player.playerCrafting);
player.questPoints++;
player.sheepShear = 2;
}
public static void doricFinish(Player player) {
questReward(player, "Doric's Quest", "1 Quest Point", "1,300 Mining XP", "180 Coins", "", "", "", 995);
QUEST_NAME = "Doric's Quest";
player.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7336);
player.getItemAssistant().addItem(995, 180);
player.getPlayerAssistant().addSkillXP(1300, player.playerMining);
player.questPoints++;
player.doricQuest = 3;
}
public static void impFinish(Player player) {
questReward(player, "Imp Catcher", "1 Quest Point", "875 Magic XP", "Amulet of Accuracy", "", "", "", 1478);
QUEST_NAME = "Imp Catcher";
player.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7340);
player.getItemAssistant().addItem(1478, 1);
player.getPlayerAssistant().addSkillXP(875, player.playerMagic);
player.questPoints++;
player.impsC = 2;
}
public static void cookReward(Player player) {
questReward(player, "Cook's Assistant", "1 Quest Point", "500 Coins", "300 Cooking XP", "", "", "", 326);
QUEST_NAME = "Cook's Assistant";
player.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7333);
player.getItemAssistant().addItem(995, 500);
player.getPlayerAssistant().addSkillXP(300, player.playerCooking);
player.questPoints++;
player.cookAss = 3;
}
public static void blackKnightReward(Player player) {
questReward(player, "Black Knights' Fortress", "3 Quest Points", "2,500 Coins", "", "", "", "", 0);
QUEST_NAME = "Black Knights' Fortress";
player.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7332);
player.getItemAssistant().addItem(995, 2500);
player.questPoints += 3;
player.blackKnight = 3;
}
public static void shieldArravReward(Player player) {
questReward(player, "Shield of Arrav", "1 Quest Point", "1,200 Coins", "", "", "", "", 767);
QUEST_NAME = "Shield of Arrav";
player.getPacketSender().sendFrame126("@gre@" + QUEST_NAME + "", 7345);
player.getItemAssistant().addItem(995, 1200);
player.questPoints++;
player.shieldArrav = 8;
}
}
@@ -0,0 +1,44 @@
package com.rebotted.game.content.quests.impl;
import com.rebotted.game.players.Player;
public class BlackKnightsFortress {
public static void showInformation(Player client) {
for (int i = 8144; i < 8195; i++) {
client.getPacketSender().sendFrame126("", i);
}
client.getPacketSender().sendFrame126("Black Knights' Fortress", 8144);
if (client.blackKnight == 0) {
client.getPacketSender().sendFrame126("I can start this quest by speaking to Sir Amik Varze in", 8147);
client.getPacketSender().sendFrame126("Falador Castle.", 8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender().sendFrame126("QUEST REQUIREMENTS:", 8150);
client.getPacketSender().sendFrame126("12 Quest Points", 8151);
} else if (client.blackKnight == 1) {
client.getPacketSender().sendFrame126("@str@I've Talked with Sir Amik Varze", 8147);
client.getPacketSender().sendFrame126("He wants me to kill 30 Black Knights and", 8148);
client.getPacketSender().sendFrame126("collect their notes.", 8149);
client.getPacketSender().sendFrame126("", 8150);
client.getPacketSender().sendFrame126("@red@30 Black Knight notes", 8151);
} else if (client.blackKnight == 2) {
client.getPacketSender().sendFrame126("@str@I talked to Sir Amik Varze.", 8147);
client.getPacketSender().sendFrame126("@str@I've killed 30 Black Knights", 8148);
client.getPacketSender().sendFrame126("@str@and given Sir Amik Varze his items.", 8149);
client.getPacketSender().sendFrame126("I should go speak to Sir Amik Varze.", 8150);
} else if (client.blackKnight == 3) {
client.getPacketSender().sendFrame126("@str@I talked to Sir Amik Varze.", 8147);
client.getPacketSender().sendFrame126("@str@I've killed 30 Black Knights", 8148);
client.getPacketSender().sendFrame126("@str@and given Sir Amik Varze his items.", 8149);
client.getPacketSender().sendFrame126("", 8150);
client.getPacketSender().sendFrame126("@red@QUEST COMPLETE", 8151);
client.getPacketSender().sendFrame126("", 8152);
client.getPacketSender().sendFrame126("REWARDS:", 8153);
client.getPacketSender().sendFrame126("2,500 coins", 8154);
client.getPacketSender().sendFrame126("3 Quest Points", 8155);
}
client.getPacketSender().showInterface(8134);
}
}
@@ -0,0 +1,62 @@
package com.rebotted.game.content.quests.impl;
import com.rebotted.game.players.Player;
/**
* @author Andrew (Mr Extremez)
* Cooks Assistant
*/
public class CooksAssistant {
private static final int EGG = 1944;
private static final int MILK = 1927;
private static final int FLOUR = 1933;
public static void showInformation(Player client) {
for (int i = 8144; i < 8195; i++) {
client.getPacketSender().sendFrame126("", i);
}
client.getPacketSender().sendFrame126("@dre@Cook's Assistant", 8144);
client.getPacketSender().sendFrame126("", 8145);
if (client.cookAss == 0) {
client.getPacketSender().sendFrame126("Cook's Assistant", 8144);
client.getPacketSender().sendFrame126("I can start this quest by speaking to the Cook in the", 8147);
client.getPacketSender().sendFrame126("Lumbridge Castle kitchen.", 8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender().sendFrame126("There are no minimum requirements.", 8150);
} else if (client.cookAss == 1) {
client.getPacketSender().sendFrame126("Cook's Assistant", 8144);
client.getPacketSender().sendFrame126("@str@I've talked to the cook.", 8147);
client.getPacketSender().sendFrame126("He wants me to gather the following materials:", 8148);
if (client.getItemAssistant().playerHasItem(EGG, 1)) {
client.getPacketSender().sendFrame126("@str@1 egg", 8149);
} else {
client.getPacketSender().sendFrame126("@red@1 egg", 8149);
}
if (client.getItemAssistant().playerHasItem(MILK, 1)) {
client.getPacketSender().sendFrame126("@str@1 bucket of milk", 8150);
} else {
client.getPacketSender().sendFrame126("@red@1 bucket of milk", 8150);
}
if (client.getItemAssistant().playerHasItem(FLOUR, 1)) {
client.getPacketSender().sendFrame126("@str@1 heap of flour", 8151);
} else {
client.getPacketSender().sendFrame126("@red@1 pot of flour", 8151);
}
} else if (client.cookAss == 2) {
client.getPacketSender().sendFrame126("Cook's Assistant", 8144);
client.getPacketSender().sendFrame126("@str@I talked to the cook.", 8147);
client.getPacketSender().sendFrame126("@str@I gave the cook his items.", 8148);
client.getPacketSender().sendFrame126("I should go speak to the cook.", 8149);
} else if (client.cookAss == 3) {
client.getPacketSender().sendFrame126("Cook's Assistant", 8144);
client.getPacketSender().sendFrame126("@str@I talked to the cook.", 8147);
client.getPacketSender().sendFrame126("@str@I gave him his items.", 8148);
client.getPacketSender().sendFrame126("@red@ QUEST COMPLETE", 8150);
client.getPacketSender().sendFrame126("As a reward, I gained 150 Cooking Experience.", 8151);
}
client.getPacketSender().showInterface(8134);
}
}
@@ -0,0 +1,72 @@
package com.rebotted.game.content.quests.impl;
import com.rebotted.game.players.Player;
/**
* Doric's Quest
* @author Andrew (Mr Extremez)
*/
public class DoricsQuest {
public static void showInformation(Player client) {
for (int i = 8144; i < 8195; i++) {
client.getPacketSender().sendFrame126("", i);
}
client.getPacketSender().sendFrame126("@dre@Dorics Quest", 8144);
client.getPacketSender().sendFrame126("", 8145);
if (client.doricQuest == 0) {
client.getPacketSender().sendFrame126("Dorics Quest", 8144);
client.getPacketSender().sendFrame126(
"I can start this quest by speaking to doric", 8147);
client.getPacketSender().sendFrame126("Northwest of falador.",
8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender().sendFrame126(
"Recommended Levels: 15 Mining", 8150);
} else if (client.doricQuest == 1) {
client.getPacketSender().sendFrame126("Dorics Quest", 8144);
client.getPacketSender().sendFrame126(
"@str@I've talked to the doric.", 8147);
client.getPacketSender().sendFrame126(
"He wants me to gather the following materials:", 8148);
if (client.getItemAssistant().playerHasItem(434, 6)) {
client.getPacketSender().sendFrame126("@str@6 Clay", 8149);
} else {
client.getPacketSender().sendFrame126("@red@6 Clay", 8149);
}
if (client.getItemAssistant().playerHasItem(436, 4)) {
client.getPacketSender().sendFrame126("@str@4 Copper", 8150);
} else {
client.getPacketSender().sendFrame126("@red@4 Copper", 8150);
}
if (client.getItemAssistant().playerHasItem(440, 2)) {
client.getPacketSender().sendFrame126("@str@2 Iron ore", 8151);
} else {
client.getPacketSender().sendFrame126("@red@2 Iron ore", 8151);
}
} else if (client.doricQuest == 2) {
client.getPacketSender().sendFrame126("Dorics Quest", 8144);
client.getPacketSender().sendFrame126(
"@str@I talked to the doric.", 8147);
client.getPacketSender().sendFrame126(
"@str@I gave the doric his items.", 8148);
client.getPacketSender().sendFrame126(
"I should go speak to the doric.", 8149);
} else if (client.doricQuest == 3) {
client.getPacketSender().sendFrame126("Dorics Quest", 8144);
client.getPacketSender().sendFrame126(
"@str@I talked to the doric.", 8147);
client.getPacketSender().sendFrame126(
"@str@I gave him his items.", 8148);
client.getPacketSender().sendFrame126("@red@ QUEST COMPLETE",
8150);
client.getPacketSender().sendFrame126(
"As a reward, I gained 26000 Mining Exp", 8151);
client.getPacketSender().sendFrame126("180 Coins", 8152);
client.getPacketSender().sendFrame126("And 1 Quest Point.", 8152);
}
client.getPacketSender().showInterface(8134);
}
}
@@ -0,0 +1,92 @@
package com.rebotted.game.content.quests.impl;
import com.rebotted.game.players.Player;
/**
* Gertrudes Cat
* @author Andrew (Mr Extremez)
*/
public class GertrudesCat {
public static void showInformation(Player client) {
for (int i = 8144; i < 8195; i++) {
client.getPacketSender().sendFrame126("", i);
}
client.getPacketSender().sendFrame126("@dre@Gertrudes Cat", 8144);
client.getPacketSender().sendFrame126("", 8145);
if (client.gertCat == 0) {
client.getPacketSender().sendFrame126("Gertrudes Cat", 8144);
client.getPacketSender().sendFrame126(
"I can start this quest by speaking to Gertrude in", 8147);
client.getPacketSender().sendFrame126("Varrock.", 8148);
client.getPacketSender().sendFrame126("Minimum Requirments:", 8149);
client.getPacketSender().sendFrame126("5 Fishing.", 8150);
} else if (client.gertCat == 1) {
client.getPacketSender().sendFrame126("Gertrudes Cat", 8144);
client.getPacketSender().sendFrame126(
"@str@I've talked to Gertrude", 8147);
client.getPacketSender().sendFrame126(
"I should speak to Wilough and Shilop.", 8148);
client.getPacketSender().sendFrame126("They are in the varrock square.", 8149);
} else if (client.gertCat == 2) {
client.getPacketSender().sendFrame126("Gertrudes Cat", 8144);
client.getPacketSender().sendFrame126(
"@str@I've talked to Wilough and Shilop", 8147);
client.getPacketSender().sendFrame126("@str@I gave them 100 coins",
8148);
client.getPacketSender().sendFrame126(
"I should try to find Gertrudes Cat.", 8149);
} else if (client.gertCat == 3) {
client.getPacketSender().sendFrame126("Gertrudes Cat", 8144);
client.getPacketSender().sendFrame126(
"@str@I've talked to the Gertrudes Cat", 8147);
client.getPacketSender().sendFrame126(
"@str@She seemed mad so I gave her", 8148);
client.getPacketSender().sendFrame126("@str@a bucket of milk",
8149);
client.getPacketSender().sendFrame126("The cat still seems mad you should give her some,", 8150);
client.getPacketSender().sendFrame126("seasoned salmon.", 8151);
} else if (client.gertCat == 4) {
client.getPacketSender().sendFrame126("Gertrudes Cat", 8144);
client.getPacketSender().sendFrame126("@str@The cat is still mad",
8147);
client.getPacketSender().sendFrame126("@str@So i gave her some",
8148);
client.getPacketSender().sendFrame126("@str@seasoned samon.", 8149);
client.getPacketSender().sendFrame126("I should talk to Gertrudes cat to see how she feels.", 8150);
} else if (client.gertCat == 5) {
client.getPacketSender().sendFrame126("Gertrudes Cat", 8144);
client.getPacketSender().sendFrame126(
"@str@The cat seems to be mad", 8147);
client.getPacketSender().sendFrame126(
"@str@because she can't find her kittens.", 8148);
client.getPacketSender().sendFrame126("I should go in the lumberyard and", 8149);
client.getPacketSender().sendFrame126("check it out.", 8150);
} else if (client.gertCat == 6) {
client.getPacketSender().sendFrame126("Gertrudes Cat", 8144);
client.getPacketSender().sendFrame126("@str@I gave gertrudes cat",
8147);
client.getPacketSender().sendFrame126("@str@her kittens", 8148);
client.getPacketSender().sendFrame126(
"@str@and she now seems happy.", 8149);
client.getPacketSender().sendFrame126("I should head back to Gertrude.", 8150);
} else if (client.gertCat == 7) {
client.getPacketSender().sendFrame126("Gertrudes Cat", 8144);
client.getPacketSender().sendFrame126(
"@str@I helped gertrude with her", 8147);
client.getPacketSender().sendFrame126(
"@str@Cat so she awarded me.", 8148);
client.getPacketSender().sendFrame126("@red@ QUEST COMPLETE",
8149);
client.getPacketSender().sendFrame126(
"As a reward, I gained 1525 Cooking exp.", 8150);
client.getPacketSender().sendFrame126(
"A kitten! And the ability to raise cats.", 8150);
client.getPacketSender().sendFrame126("And 1 Quest Point", 8151);
client.getPacketSender().sendFrame126("", 8152);
}
client.getPacketSender().showInterface(8134);
}
}
@@ -0,0 +1,46 @@
package com.rebotted.game.content.quests.impl;
import com.rebotted.game.players.Player;
/**
* Imp Catcher
* @author Andrew (Mr Extremez)
*/
public class ImpCatcher {
public static void showInformation(Player client) {
for (int i = 8144; i < 8295; i++) {
client.getPacketSender().sendFrame126("", i);
}
client.getPacketSender().sendFrame126("@dre@Imp Catcher", 8144);
client.getPacketSender().sendFrame126("", 8145);
if (client.impsC == 0) {
client.getPacketSender().sendFrame126( "I can start this quest by speaking to Wizard Mizgog who is", 8147);
client.getPacketSender().sendFrame126("in the Wizard's Tower.", 8148);
} else if (client.impsC == 1) {
client.getPacketSender().sendFrame126("@str@I can start this quest by speaking to Wizard Mizgog who is", 8147);
client.getPacketSender().sendFrame126("@str@in the Wizard's Tower.", 8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender().sendFrame126("Wizard Mizgog have asked you to get the following items:", 8150);
client.getPacketSender().sendFrame126("Red bead", 8151);
client.getPacketSender().sendFrame126("Yellow bead", 8152);
client.getPacketSender().sendFrame126("Black bead", 8153);
client.getPacketSender().sendFrame126("White bead", 8154);
} else if (client.impsC == 2) {
client.getPacketSender().sendFrame126("@str@I can start this quest by speaking to Wizard Mizgog who is", 8147);
client.getPacketSender().sendFrame126("@str@in the Wizard's Tower.", 8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender().sendFrame126("@str@Wizard Mizgog have asked you to get the following items:", 8150);
client.getPacketSender().sendFrame126("@str@Red bead", 8151);
client.getPacketSender().sendFrame126("@str@Yellow bead", 8152);
client.getPacketSender().sendFrame126("@str@Black bead", 8153);
client.getPacketSender().sendFrame126("@str@White bead", 8154);
client.getPacketSender().sendFrame126("", 8155);
client.getPacketSender().sendFrame126("You have completed this quest!", 8156);
}
client.getPacketSender().showInterface(8134);
}
}
@@ -0,0 +1,193 @@
package com.rebotted.game.content.quests.impl;
import com.rebotted.game.players.Player;
public class KnightsSword {
public static void showInformation(Player player) {
for(int i = 8144; i < 8195; i++) {
player.getPacketSender().sendFrame126("", i);
}
player.getPacketSender().sendFrame126("@dre@The Knight's Sword", 8144);
player.getPacketSender().sendFrame126("", 8145);
if(player.knightS == 0) {
player.getPacketSender().sendFrame126("I can start this quest by speaking to the squire", 8147);
player.getPacketSender().sendFrame126("who is in the courtyard of the White Knight's castle", 8148);
player.getPacketSender().sendFrame126("", 8149);
player.getPacketSender().sendFrame126("I will need at least 10 mining to complete this quest", 8150);
} else if(player.knightS == 1) {
player.getPacketSender().sendFrame126("The squire has lost Sir Vyvin's sword and asked me", 8147);
player.getPacketSender().sendFrame126("to find a replacement. He suggested that I start", 8148);
player.getPacketSender().sendFrame126("by speaking to Reldo, the librarian in the Varrock Castle", 8149);
} else if (player.knightS == 2) {
player.getPacketSender().sendFrame126("@str@The squire has lost Sir Vyvin's sword and asked me", 8147);
player.getPacketSender().sendFrame126("@str@to find a replacement. He suggested that I start", 8148);
player.getPacketSender().sendFrame126("@str@by speaking to Reldo, the librarian in the Varrock Castle", 8149);
player.getPacketSender().sendFrame126("", 8150);
player.getPacketSender().sendFrame126("Reldo told me there may be an Imcando dwarf living near the", 8151);
player.getPacketSender().sendFrame126("Asgarnian peninsula. He said I should bring him some", 8152);
player.getPacketSender().sendFrame126("Red Berry Pie to get him to be willing to talk to me", 8153);
} else if(player.knightS == 3) {
player.getPacketSender().sendFrame126("@str@The squire has lost Sir Vyvin's sword and asked me", 8147);
player.getPacketSender().sendFrame126("@str@to find a replacement. He suggested that I start", 8148);
player.getPacketSender().sendFrame126("@str@by speaking to Reldo, the librarian in the Varrock Castle", 8149);
player.getPacketSender().sendFrame126("", 8150);
player.getPacketSender().sendFrame126("@str@Reldo told me there may be an Imcando dwarf living near the", 8151);
player.getPacketSender().sendFrame126("@str@Asgarnian peninsula. He said I should bring him some", 8152);
player.getPacketSender().sendFrame126("@str@Red Berry Pie to get him to be willing to talk to me", 8153);
player.getPacketSender().sendFrame126("", 8154);
player.getPacketSender().sendFrame126("I found the Imcando dwarf named Thurgo and gave him some", 8155);
player.getPacketSender().sendFrame126("Red berry pie. Now that he likes me I should talk to him", 8156);
player.getPacketSender().sendFrame126("and find out if he'll make the sword for me.", 8157);
} else if(player.knightS == 4) {
player.getPacketSender().sendFrame126("@str@The squire has lost Sir Vyvin's sword and asked me", 8147);
player.getPacketSender().sendFrame126("@str@to find a replacement. He suggested that I start", 8148);
player.getPacketSender().sendFrame126("@str@by speaking to Reldo, the librarian in the Varrock Castle", 8149);
player.getPacketSender().sendFrame126("", 8150);
player.getPacketSender().sendFrame126("@str@Reldo told me there may be an Imcando dwarf living near the", 8151);
player.getPacketSender().sendFrame126("@str@Asgarnian peninsula. He said I should bring him some", 8152);
player.getPacketSender().sendFrame126("@str@Red Berry Pie to get him to be willing to talk to me", 8153);
player.getPacketSender().sendFrame126("", 8154);
player.getPacketSender().sendFrame126("@str@I found the Imcando dwarf named Thurgo and gave him some", 8155);
player.getPacketSender().sendFrame126("@str@Red berry pie. Now that he likes me I should talk to him", 8156);
player.getPacketSender().sendFrame126("@str@and find out if he'll make the sword for me.", 8157);
player.getPacketSender().sendFrame126("", 8158);
player.getPacketSender().sendFrame126("Thurgo says he needs a picture of the sword.", 8159);
player.getPacketSender().sendFrame126("Maybe the squire will have one?", 8160);
player.getPacketSender().sendFrame126("", 8161);
} else if(player.knightS == 5) {
player.getPacketSender().sendFrame126("@str@The squire has lost Sir Vyvin's sword and asked me", 8147);
player.getPacketSender().sendFrame126("@str@to find a replacement. He suggested that I start", 8148);
player.getPacketSender().sendFrame126("@str@by speaking to Reldo, the librarian in the Varrock Castle", 8149);
player.getPacketSender().sendFrame126("", 8150);
player.getPacketSender().sendFrame126("@str@Reldo told me there may be an Imcando dwarf living near the", 8151);
player.getPacketSender().sendFrame126("@str@Asgarnian peninsula. He said I should bring him some", 8152);
player.getPacketSender().sendFrame126("@str@Red Berry Pie to get him to be willing to talk to me.", 8153);
player.getPacketSender().sendFrame126("", 8154);
player.getPacketSender().sendFrame126("@str@I found the Imcando dwarf named Thurgo and gave him some", 8155);
player.getPacketSender().sendFrame126("@str@Red berry pie. Now that he likes me I should talk to him", 8156);
player.getPacketSender().sendFrame126("@str@and find out if he'll make the sword for me.", 8157);
player.getPacketSender().sendFrame126("", 8158);
player.getPacketSender().sendFrame126("Thurgo says he needs a picture of the sword.", 8159);
player.getPacketSender().sendFrame126("@str@Maybe the squire will have one?", 8160);
player.getPacketSender().sendFrame126("", 8161);
player.getPacketSender().sendFrame126("The squire thinks Sir Vyvin keeps a picture of the sword in", 8162);
player.getPacketSender().sendFrame126("a cupboard in his room, but I must be very careful not to", 8163);
player.getPacketSender().sendFrame126("get caught.", 8164);
player.getPacketSender().sendFrame126("", 8165);
player.getPacketSender().sendFrame126("", 8166);
player.getPacketSender().sendFrame126("", 8167);
player.getPacketSender().sendFrame126("", 8168);
player.getPacketSender().sendFrame126("", 8169);
} else if(player.knightS == 6) {
player.getPacketSender().sendFrame126("@str@The squire has lost Sir Vyvin's sword and asked me", 8147);
player.getPacketSender().sendFrame126("@str@to find a replacement. He suggested that I start", 8148);
player.getPacketSender().sendFrame126("@str@by speaking to Reldo, the librarian in the Varrock Castle", 8149);
player.getPacketSender().sendFrame126("", 8150);
player.getPacketSender().sendFrame126("@str@Reldo told me there may be an Imcando dwarf living near the", 8151);
player.getPacketSender().sendFrame126("@str@Asgarnian peninsula. He said I should bring him some", 8152);
player.getPacketSender().sendFrame126("@str@Red Berry Pie to get him to be willing to talk to me.", 8153);
player.getPacketSender().sendFrame126("", 8154);
player.getPacketSender().sendFrame126("@str@I found the Imcando dwarf named Thurgo and gave him some", 8155);
player.getPacketSender().sendFrame126("@str@Red berry pie. Now that he likes me I should talk to him", 8156);
player.getPacketSender().sendFrame126("@str@and find out if he'll make the sword for me.", 8157);
player.getPacketSender().sendFrame126("", 8158);
player.getPacketSender().sendFrame126("Thurgo says he needs a picture of the sword.", 8159);
player.getPacketSender().sendFrame126("@str@Maybe the squire will have one?", 8160);
player.getPacketSender().sendFrame126("", 8161);
player.getPacketSender().sendFrame126("@str@The squire thinks Sir Vyvin keeps a picture of the sword in", 8162);
player.getPacketSender().sendFrame126("@str@a cupboard in his room, but I must be very careful not to", 8163);
player.getPacketSender().sendFrame126("@str@get caught.", 8164);
player.getPacketSender().sendFrame126("I should bring the picture to Thurgo", 8165);
player.getPacketSender().sendFrame126("", 8166);
player.getPacketSender().sendFrame126("", 8167);
player.getPacketSender().sendFrame126("", 8168);
player.getPacketSender().sendFrame126("", 8169);
} else if(player.knightS == 7) {
player.getPacketSender().sendFrame126("The squire has lost Sir Vyvin's sword and asked me", 8147);
player.getPacketSender().sendFrame126("to find a replacement.@str@ He suggested that I start", 8148);
player.getPacketSender().sendFrame126("@str@by speaking to Reldo, the librarian in the Varrock Castle", 8149);
player.getPacketSender().sendFrame126("", 8150);
player.getPacketSender().sendFrame126("@str@Reldo told me there may be an Imcando dwarf living near the", 8151);
player.getPacketSender().sendFrame126("@str@Asgarnian peninsula. He said I should bring him some", 8152);
player.getPacketSender().sendFrame126("@str@Red Berry Pie to get him to be willing to talk to me.", 8153);
player.getPacketSender().sendFrame126("", 8154);
player.getPacketSender().sendFrame126("@str@I found the Imcando dwarf named Thurgo and gave him some", 8155);
player.getPacketSender().sendFrame126("@str@Red berry Pie. Now that he likes me I should talk to him", 8156);
player.getPacketSender().sendFrame126("@str@and find out if he'll make the sword for me.", 8157);
player.getPacketSender().sendFrame126("", 8158);
player.getPacketSender().sendFrame126("@str@Thurgo says he needs a picture of the sword.", 8159);
player.getPacketSender().sendFrame126("@str@Maybe the squire will have one?", 8160);
player.getPacketSender().sendFrame126("", 8161);
player.getPacketSender().sendFrame126("@str@The squire thinks Sir Vyvin keeps a picture of the sword in", 8162);
player.getPacketSender().sendFrame126("@str@cupboard in his room, but I must be very careful not to", 8163);
player.getPacketSender().sendFrame126("@str@get caught.", 8164);
player.getPacketSender().sendFrame126("@str@I should bring the picture to Thurgo", 8165);
player.getPacketSender().sendFrame126("", 8166);
player.getPacketSender().sendFrame126("Thurgo has asked me to bring him 2 iron bars and 1 blurite", 8167);
player.getPacketSender().sendFrame126("ore for him to make the sword with. He says blurite can be", 8168);
player.getPacketSender().sendFrame126("mined in the cave by his home, but it is guarded by", 8169);
player.getPacketSender().sendFrame126("dangerous monsters. So I should be very careful.", 8170);
} else if(player.knightS == 8) {
player.getPacketSender().sendFrame126("The squire has lost Sir Vyvin's sword and asked me", 8147);
player.getPacketSender().sendFrame126("to find a replacement.@str@ He suggested that I start", 8148);
player.getPacketSender().sendFrame126("@str@by speaking to Reldo, the librarian in the Varrock Castle", 8149);
player.getPacketSender().sendFrame126("", 8150);
player.getPacketSender().sendFrame126("@str@Reldo told me there may be an Imcando dwarf living near the", 8151);
player.getPacketSender().sendFrame126("@str@Asgarnian peninsula. He said I should bring him some", 8152);
player.getPacketSender().sendFrame126("@str@Red Berry Pie to get him to be willing to talk to me.", 8153);
player.getPacketSender().sendFrame126("", 8154);
player.getPacketSender().sendFrame126("@str@I found the Imcando dwarf named Thurgo and gave him some", 8155);
player.getPacketSender().sendFrame126("@str@Red berry pie. Now that he likes me I should talk to him", 8156);
player.getPacketSender().sendFrame126("@str@and find out if he'll make the sword for me.", 8157);
player.getPacketSender().sendFrame126("", 8158);
player.getPacketSender().sendFrame126("@str@Thurgo says he needs a picture of the sword.", 8159);
player.getPacketSender().sendFrame126("@str@Maybe the squire will have one?", 8160);
player.getPacketSender().sendFrame126("", 8161);
player.getPacketSender().sendFrame126("@str@The squire thinks Sir Vyvin keeps a picture of the sword in", 8162);
player.getPacketSender().sendFrame126("@str@cupboard in his room, but I must be very careful not to", 8163);
player.getPacketSender().sendFrame126("@str@get caught.", 8164);
player.getPacketSender().sendFrame126("@str@I should bring the picture to Thurgo", 8165);
player.getPacketSender().sendFrame126("", 8166);
player.getPacketSender().sendFrame126("@str@Thurgo has asked me to bring him 2 iron bars and 1 blurite", 8167);
player.getPacketSender().sendFrame126("@str@ore for him to make the sword with. He says blurite can be", 8168);
player.getPacketSender().sendFrame126("@str@mined in the cave by his home, but it is guarded by", 8169);
player.getPacketSender().sendFrame126("@str@dangerous monsters. So I should be very careful.", 8170);
player.getPacketSender().sendFrame126("", 8171);
player.getPacketSender().sendFrame126("Thurgo made me the sword, I should bring it back to the", 8172);
player.getPacketSender().sendFrame126("knight to get my reward!", 8173);
player.getPacketSender().sendFrame126("", 8174);
} else if(player.knightS == 9) {
player.getPacketSender().sendFrame126("@str@The squire has lost Sir Vyvin's sword and asked me", 8147);
player.getPacketSender().sendFrame126("@str@to find a replacement. He suggested that I start", 8148);
player.getPacketSender().sendFrame126("@str@by speaking to Reldo, the librarian in the Varrock Castle", 8149);
player.getPacketSender().sendFrame126("", 8150);
player.getPacketSender().sendFrame126("@str@Reldo told me there may be an Imcando dwarf living near the", 8151);
player.getPacketSender().sendFrame126("@str@Asgarnian peninsula. He said I should bring him some", 8152);
player.getPacketSender().sendFrame126("@str@Red Berry Pie to get him to be willing to talk to me.", 8153);
player.getPacketSender().sendFrame126("", 8154);
player.getPacketSender().sendFrame126("@str@I found the Imcando dwarf named Thurgo and gave him some", 8155);
player.getPacketSender().sendFrame126("@str@Red berry pie. Now that he likes me I should talk to him", 8156);
player.getPacketSender().sendFrame126("@str@and find out if he'll make the sword for me.", 8157);
player.getPacketSender().sendFrame126("", 8158);
player.getPacketSender().sendFrame126("@str@Thurgo says he needs a picture of the sword.", 8159);
player.getPacketSender().sendFrame126("@str@Maybe the squire will have one?", 8160);
player.getPacketSender().sendFrame126("", 8161);
player.getPacketSender().sendFrame126("@str@The squire thinks Sir Vyvin keeps a picture of the sword in", 8162);
player.getPacketSender().sendFrame126("@str@a cupboard in his room, but I must be very careful not to", 8163);
player.getPacketSender().sendFrame126("@str@get caught.", 8164);
player.getPacketSender().sendFrame126("@str@I should bring the picture to Thurgo", 8165);
player.getPacketSender().sendFrame126("", 8166);
player.getPacketSender().sendFrame126("@str@Thurgo has asked me to bring him 2 iron bars and 1 blurite", 8167);
player.getPacketSender().sendFrame126("@str@ore for him to make the sword with. He says blurite can be", 8168);
player.getPacketSender().sendFrame126("@str@mined in the cave by his home, but it is guarded by", 8169);
player.getPacketSender().sendFrame126("@str@dangerous monsters. So I should be very careful.", 8170);
player.getPacketSender().sendFrame126("@str@Thurgo made me the sword, I should bring it back to the", 8172);
player.getPacketSender().sendFrame126("@str@knight to get my reward!", 8173);
player.getPacketSender().sendFrame126("", 8173);
player.getPacketSender().sendFrame126("@red@Quest Complete!", 8174);
}
player.getPacketSender().showInterface(8134);
}
}
@@ -0,0 +1,100 @@
package com.rebotted.game.content.quests.impl;
import com.rebotted.game.players.Player;
/**
* Pirates Treasure
* @author Andrew (Mr Extremez)
*/
public class PiratesTreasure {
public static void showInformation(Player client) {
for (int i = 8144; i < 8195; i++) {
client.getPacketSender().sendFrame126("", i);
}
client.getPacketSender().sendFrame126("@dre@Pirate's Treasure", 8144);
client.getPacketSender().sendFrame126("", 8145);
if (client.pirateTreasure == 0) {
client.getPacketSender().sendFrame126("Pirate's Treasure", 8144);
client.getPacketSender().sendFrame126(
"I can start this quest by speaking to Redbeard Frank in",
8147);
client.getPacketSender().sendFrame126("Port Sarim", 8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender().sendFrame126(
"There are no minimum requirments.", 8150);
} else if (client.pirateTreasure == 1) {
client.getPacketSender().sendFrame126("Pirate's Treasure", 8144);
client.getPacketSender().sendFrame126(
"@str@I've talked to Redbeard.", 8147);
client.getPacketSender().sendFrame126(
"He wants me to get him some rum", 8148);
} else if (client.pirateTreasure == 2) {
client.getPacketSender().sendFrame126("Pirate's Treasure", 8144);
client.getPacketSender().sendFrame126(
"@str@I talked to Redbeard.", 8147);
client.getPacketSender().sendFrame126(
"@str@I found a way to get the rum", 8148);
client.getPacketSender().sendFrame126(
"I should get the rum and return to Redbeard.", 8149);
} else if (client.pirateTreasure == 3) {
client.getPacketSender().sendFrame126("Pirate's Treasure", 8144);
client.getPacketSender().sendFrame126(
"@str@I talked to Redbeard.", 8147);
client.getPacketSender().sendFrame126(
"@str@I found a way to get the rum", 8148);
client.getPacketSender().sendFrame126("@str@I gave him the rum",
8149);
client.getPacketSender().sendFrame126(
"He told me I need to look at the chest in", 8149);
client.getPacketSender().sendFrame126("The blue moon inn", 8150);
} else if (client.pirateTreasure == 4) {
client.getPacketSender().sendFrame126("Pirate's Treasure", 8144);
client.getPacketSender().sendFrame126(
"@str@I talked to Redbeard.", 8147);
client.getPacketSender().sendFrame126(
"@str@I found a way to get the rum", 8148);
client.getPacketSender().sendFrame126("@str@I gave him the rum",
8149);
client.getPacketSender().sendFrame126(
"@str@I looked in the chest", 8149);
client.getPacketSender().sendFrame126(
"I need to go to falador and kill the gardener", 8150);
} else if (client.pirateTreasure == 5) {
client.getPacketSender().sendFrame126(
"@str@I talked to Redbeard.", 8147);
client.getPacketSender().sendFrame126(
"@str@I found a way to get the rum", 8148);
client.getPacketSender().sendFrame126("@str@I gave him the rum",
8149);
client.getPacketSender().sendFrame126(
"@str@I looked in the chest", 8149);
client.getPacketSender().sendFrame126(
"@str@I went to falador and killed the gardener", 8150);
client.getPacketSender().sendFrame126(
"I should find the casket now", 8151);
} else if (client.pirateTreasure == 6) {
client.getPacketSender().sendFrame126(
"@str@I talked to Redbeard.", 8147);
client.getPacketSender().sendFrame126(
"@str@I found a way to get the rum", 8148);
client.getPacketSender().sendFrame126("@str@I gave him the rum",
8149);
client.getPacketSender().sendFrame126(
"@str@I looked in the chest", 8149);
client.getPacketSender().sendFrame126(
"@str@I went to falador and killed the gardener", 8150);
client.getPacketSender().sendFrame126("@str@I found the casket ",
8181);
client.getPacketSender().sendFrame126("@red@QUEST COMPLETE",
8152);
client.getPacketSender().sendFrame126(
"As a reward, I gained a casket.", 8153);
client.getPacketSender().sendFrame126("2 Quest Points.", 8153);
}
client.getPacketSender().showInterface(8134);
}
}
@@ -0,0 +1,70 @@
package com.rebotted.game.content.quests.impl;
import com.rebotted.game.players.Player;
/**
* Restless Ghost
* @author Andrew (Mr Extremez)
*/
public class RestlessGhost {
public static void showInformation(Player client) {
for (int i = 8144; i < 8195; i++) {
client.getPacketSender().sendFrame126("", i);
}
client.getPacketSender().sendFrame126("@dre@Restless Ghost", 8144);
client.getPacketSender().sendFrame126("", 8145);
if (client.restGhost == 0) {
client.getPacketSender().sendFrame126("Restless Ghost", 8144);
client.getPacketSender().sendFrame126("I can start this quest by speaking to Father Aereck in", 8147);
client.getPacketSender().sendFrame126("Lumbridge", 8148);
client.getPacketSender().sendFrame126("Minimum Requirments:", 8149);
client.getPacketSender().sendFrame126("None.", 8150);
} else if (client.restGhost == 1) {
client.getPacketSender().sendFrame126("Restless Ghost", 8144);
client.getPacketSender().sendFrame126(
"@str@I've talked to Father Aereck", 8147);
client.getPacketSender().sendFrame126(
"I should speak to Father Urhey", 8148);
} else if (client.restGhost == 2) {
client.getPacketSender().sendFrame126("Restless Ghost", 8144);
client.getPacketSender().sendFrame126(
"@str@I've talked Father Urhey", 8147);
client.getPacketSender().sendFrame126("@str@He gave me a amulet",
8148);
client.getPacketSender().sendFrame126(
"I should speak to the ghost", 8149);
} else if (client.restGhost == 3) {
client.getPacketSender().sendFrame126("Restless Ghost", 8144);
client.getPacketSender().sendFrame126(
"@str@I've talked to the Ghost", 8147);
client.getPacketSender().sendFrame126("I should travel to the wizards tower and kill the skeleton", 8148);
client.getPacketSender().sendFrame126(
"I should find the ghosts skull", 8149);
} else if (client.restGhost == 4) {
client.getPacketSender().sendFrame126("Restless Ghost", 8144);
client.getPacketSender().sendFrame126("@str@I've found the skull",
8147);
client.getPacketSender().sendFrame126(
"@str@I killed the skeleton", 8148);
client.getPacketSender().sendFrame126(
"I should travel back to the ghost", 8149);
} else if (client.restGhost == 5) {
client.getPacketSender().sendFrame126("Restless Ghost", 8144);
client.getPacketSender().sendFrame126(
"@str@I've set the skull in the coffin", 8147);
client.getPacketSender().sendFrame126(
"@str@I've freed the ghost.", 8148);
client.getPacketSender().sendFrame126("@red@ QUEST COMPLETE",
8150);
client.getPacketSender().sendFrame126(
"As a reward, I gained 125 Prayer Exp.", 8151);
client.getPacketSender().sendFrame126("And 1 Quest Point", 8152);
client.getPacketSender().sendFrame126("", 8152);
}
client.getPacketSender().showInterface(8134);
}
}
@@ -0,0 +1,355 @@
package com.rebotted.game.content.quests.impl;
import com.rebotted.game.players.Player;
/**
* Romeo and Juliet
* @author Andrew (Mr Extremez)
*/
public class RomeoJuliet {
public static void showInformation(Player client) {
for (int i = 8144; i < 8195; i++) {
client.getPacketSender().sendFrame126("", i);
}
client.getPacketSender().sendFrame126("@dre@Romeo & Juliet", 8144);
client.getPacketSender().sendFrame126("", 8145);
if (client.romeojuliet == 0) {
client.getPacketSender().sendFrame126(
"To start the quest, you should talk with Romeo", 8147);
client.getPacketSender().sendFrame126("found in Varrock Square.",
8148);
} else if (client.romeojuliet == 1) {
client.getPacketSender()
.sendFrame126(
"@str@To start the quest, you should talk with Romeo",
8147);
client.getPacketSender().sendFrame126(
"@str@found in Varrock Square.", 8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender().sendFrame126(
"Romeo has asked you to speak to Juliet for him", 8150);
client.getPacketSender().sendFrame126(
"and return to him, as she hasn't been responding to any",
8151);
client.getPacketSender().sendFrame126("his letters lately.", 8152);
} else if (client.romeojuliet == 2) {
client.getPacketSender()
.sendFrame126(
"@str@To start the quest, you should talk with Romeo",
8147);
client.getPacketSender().sendFrame126(
"@str@found in Varrock Square.", 8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender()
.sendFrame126(
"@str@Romeo has asked you to speak to Juliet for him",
8150);
client.getPacketSender()
.sendFrame126(
"@str@and return to him, as she hasn't been responding to any",
8151);
client.getPacketSender().sendFrame126("@str@his letters lately.",
8152);
client.getPacketSender().sendFrame126("", 8153);
client.getPacketSender()
.sendFrame126(
"You have spoken to Juliet who's been acting strange",
8154);
client.getPacketSender().sendFrame126(
"she gave you a message and asked you to leave", 8155);
client.getPacketSender().sendFrame126("Could this be for Romeo?",
8156);
} else if (client.romeojuliet == 4) {
client.getPacketSender()
.sendFrame126(
"@str@To start the quest, you should talk with Romeo",
8147);
client.getPacketSender().sendFrame126(
"@str@found in Varrock Square.", 8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender()
.sendFrame126(
"@str@Romeo has asked you to speak to Juliet for him",
8150);
client.getPacketSender()
.sendFrame126(
"@str@and return to him, as she hasn't been responding to any",
8151);
client.getPacketSender().sendFrame126("@str@his letters lately.",
8152);
client.getPacketSender().sendFrame126("", 8153);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Juliet who's been acting strange",
8154);
client.getPacketSender().sendFrame126(
"@str@she gave you a message and asked you to leave", 8155);
client.getPacketSender().sendFrame126(
"@str@could this be for Romeo?", 8156);
client.getPacketSender().sendFrame126("", 8157);
client.getPacketSender().sendFrame126(
"You have spoken to Romeo and given him the message", 8158);
client.getPacketSender().sendFrame126(
"You should try to talk to him again", 8159);
} else if (client.romeojuliet == 5) {
client.getPacketSender()
.sendFrame126(
"@str@To start the quest, you should talk with Romeo",
8147);
client.getPacketSender().sendFrame126(
"@str@found in Varrock Square.", 8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender()
.sendFrame126(
"@str@Romeo has asked you to speak to Juliet for him",
8150);
client.getPacketSender()
.sendFrame126(
"@str@and return to him, as she hasn't been responding to any",
8151);
client.getPacketSender().sendFrame126("@str@his letters lately.",
8152);
client.getPacketSender().sendFrame126("", 8153);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Juliet who's been acting strange",
8154);
client.getPacketSender().sendFrame126(
"@str@she gave you a message and asked you to leave", 8155);
client.getPacketSender().sendFrame126(
"@str@could this be for Romeo?", 8156);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Juliet who's been acting strange",
8154);
client.getPacketSender().sendFrame126(
"@str@she gave you a message and asked you to leave", 8155);
client.getPacketSender().sendFrame126(
"@str@could this be for Romeo?", 8156);
client.getPacketSender().sendFrame126("", 8157);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Romeo and given him the message",
8158);
client.getPacketSender().sendFrame126(
"@str@You should try to talk to him again", 8159);
client.getPacketSender().sendFrame126(
"Romeo says you should see a witch called Winelda", 8160);
} else if (client.romeojuliet == 6) {
client.getPacketSender()
.sendFrame126(
"@str@To start the quest, you should talk with Romeo",
8147);
client.getPacketSender().sendFrame126(
"@str@found in Varrock Square.", 8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender()
.sendFrame126(
"@str@Romeo has asked you to speak to Juliet for him",
8150);
client.getPacketSender()
.sendFrame126(
"@str@and return to him, as she hasn't been responding to any",
8151);
client.getPacketSender().sendFrame126("@str@his letters lately.",
8152);
client.getPacketSender().sendFrame126("", 8153);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Juliet who's been acting strange",
8154);
client.getPacketSender().sendFrame126(
"@str@she gave you a message and asked you to leave", 8155);
client.getPacketSender().sendFrame126(
"@str@could this be for Romeo?", 8156);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Juliet who's been acting strange",
8154);
client.getPacketSender().sendFrame126(
"@str@she gave you a message and asked you to leave", 8155);
client.getPacketSender().sendFrame126(
"@str@could this be for Romeo?", 8156);
client.getPacketSender().sendFrame126("", 8157);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Romeo and given him the message",
8158);
client.getPacketSender().sendFrame126(
"@str@You should try to talk to him again", 8159);
client.getPacketSender().sendFrame126(
"@str@Romeo says you should see a witch called Winelda",
8160);
client.getPacketSender().sendFrame126("", 8161);
client.getPacketSender().sendFrame126(
"Winelda needs me to bring her 1 rats tail, 1 bone, and 1",
8162);
client.getPacketSender().sendFrame126("vial of water", 8163);
} else if (client.romeojuliet == 7) {
client.getPacketSender()
.sendFrame126(
"@str@To start the quest, you should talk with Romeo",
8147);
client.getPacketSender().sendFrame126(
"@str@found in Varrock Square.", 8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender()
.sendFrame126(
"@str@Romeo has asked you to speak to Juliet for him",
8150);
client.getPacketSender()
.sendFrame126(
"@str@and return to him, as she hasn't been responding to any",
8151);
client.getPacketSender().sendFrame126("@str@his letters lately.",
8152);
client.getPacketSender().sendFrame126("", 8153);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Juliet who's been acting strange",
8154);
client.getPacketSender().sendFrame126(
"@str@she gave you a message and asked you to leave", 8155);
client.getPacketSender().sendFrame126(
"@str@could this be for Romeo?", 8156);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Juliet who's been acting strange",
8154);
client.getPacketSender().sendFrame126(
"@str@she gave you a message and asked you to leave", 8155);
client.getPacketSender().sendFrame126(
"@str@could this be for Romeo?", 8156);
client.getPacketSender().sendFrame126("", 8157);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Romeo and given him the message",
8158);
client.getPacketSender().sendFrame126(
"@str@You should try to talk to him again", 8159);
client.getPacketSender().sendFrame126(
"@str@Romeo says you should see a witch called Winelda",
8160);
client.getPacketSender().sendFrame126("", 8161);
client.getPacketSender().sendFrame126(
"@str@Winelda needs me to bring her 1 rats tail, 1 bone",
8162);
client.getPacketSender().sendFrame126("@str@and 1 vial of water",
8163);
client.getPacketSender().sendFrame126("", 8164);
client.getPacketSender()
.sendFrame126(
"I brought Winelda 1 rats tail, 1 bone, and 1 vail of water",
8162);
client.getPacketSender().sendFrame126(
"I should go speak to Juliet", 8163);
} else if (client.romeojuliet == 8) {
client.getPacketSender()
.sendFrame126(
"@str@To start the quest, you should talk with Romeo",
8147);
client.getPacketSender().sendFrame126(
"@str@found in Varrock Square.", 8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender()
.sendFrame126(
"@str@Romeo has asked you to speak to Juliet for him",
8150);
client.getPacketSender()
.sendFrame126(
"@str@and return to him, as she hasn't been responding to any",
8151);
client.getPacketSender().sendFrame126("@str@his letters lately.",
8152);
client.getPacketSender().sendFrame126("", 8153);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Juliet who's been acting strange",
8154);
client.getPacketSender().sendFrame126(
"@str@she gave you a message and asked you to leave", 8155);
client.getPacketSender().sendFrame126(
"@str@could this be for Romeo?", 8156);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Juliet who's been acting strange",
8154);
client.getPacketSender().sendFrame126(
"@str@she gave you a message and asked you to leave", 8155);
client.getPacketSender().sendFrame126(
"@str@could this be for Romeo?", 8156);
client.getPacketSender().sendFrame126("", 8157);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Romeo and given him the message",
8158);
client.getPacketSender().sendFrame126(
"@str@You should try to talk to him again", 8159);
client.getPacketSender().sendFrame126(
"@str@Romeo says you should see a witch called Winelda",
8160);
client.getPacketSender().sendFrame126("", 8161);
client.getPacketSender().sendFrame126(
"@str@Winelda needs me to bring her 1 rats tail, 1 bone",
8162);
client.getPacketSender().sendFrame126("@str@and 1 vial of water",
8163);
client.getPacketSender().sendFrame126("", 8164);
client.getPacketSender()
.sendFrame126(
"@str@I brought Winelda 1 rats tail, 1 bone, and 1 vail of water",
8165);
client.getPacketSender().sendFrame126(
"@str@I should go speak to Juliet and give her the potion",
8166);
client.getPacketSender().sendFrame126("", 8167);
client.getPacketSender().sendFrame126(
"I should speak to juliet and give her the potion", 8168);
client.getPacketSender().sendFrame126(
"I should go speak to Romeo", 8169);
} else if (client.romeojuliet == 9) {
client.getPacketSender()
.sendFrame126(
"@str@To start the quest, you should talk with Romeo",
8147);
client.getPacketSender().sendFrame126(
"@str@found in Varrock Square.", 8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender()
.sendFrame126(
"@str@Romeo has asked you to speak to Juliet for him",
8150);
client.getPacketSender()
.sendFrame126(
"@str@and return to him, as she hasn't been responding to any",
8151);
client.getPacketSender().sendFrame126("@str@his letters lately.",
8152);
client.getPacketSender().sendFrame126("", 8153);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Juliet who's been acting strange",
8154);
client.getPacketSender().sendFrame126(
"@str@she gave you a message and asked you to leave", 8155);
client.getPacketSender().sendFrame126(
"@str@could this be for Romeo?", 8156);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Juliet who's been acting strange",
8154);
client.getPacketSender().sendFrame126(
"@str@she gave you a message and asked you to leave", 8155);
client.getPacketSender().sendFrame126(
"@str@could this be for Romeo?", 8156);
client.getPacketSender().sendFrame126("", 8157);
client.getPacketSender().sendFrame126(
"@str@You have spoken to Romeo and given him the message",
8158);
client.getPacketSender().sendFrame126("@str@You should try to talk to him again", 8159);
client.getPacketSender().sendFrame126("@str@Romeo says you should see a witch called Winelda", 8160);
client.getPacketSender().sendFrame126("", 8161);
client.getPacketSender().sendFrame126("@str@Winelda needs me to bring her 1 rats tail, 1 bone", 8162);
client.getPacketSender().sendFrame126("@str@and 1 vial of water",8163);
client.getPacketSender().sendFrame126("", 8164);
client.getPacketSender().sendFrame126("@str@I brought Winelda 1 rats tail, 1 bone, and 1 vail of water",8165);
client.getPacketSender().sendFrame126("@str@I should go speak to Juliet and give her the potion", 8166);
client.getPacketSender().sendFrame126("", 8167);
client.getPacketSender().sendFrame126("@str@I have spoken to Juliet, she drank the potion", 8168);
client.getPacketSender().sendFrame126("@str@I should go speak to Romeo", 8169);
client.getPacketSender().sendFrame126("", 8168);
client.getPacketSender().sendFrame126("I have spoken to Romeo, he's thankful for all of our help", 8169);
client.getPacketSender().sendFrame126("@red@ QUEST COMPLETE", 8170);
client.getPacketSender().sendFrame126("As a reward, I gained 5 quest points.", 8171);
}
client.getPacketSender().showInterface(8134);
}
}
@@ -0,0 +1,65 @@
package com.rebotted.game.content.quests.impl;
import com.rebotted.game.players.Player;
/**
* Rune Mysteries
* @author Andrew (Mr Extremez)
*/
public class RuneMysteries {
public static void showInformation(Player client) {
for (int i = 8144; i < 8195; i++) {
client.getPacketSender().sendFrame126("", i);
}
client.getPacketSender().sendFrame126("@dre@Rune Mysteries", 8144);
client.getPacketSender().sendFrame126("", 8145);
if (client.runeMist == 0) {
client.getPacketSender().sendFrame126("Rune Mysteries", 8144);
client.getPacketSender().sendFrame126(
"I can start this quest by speaking to Duke Horiaco", 8147);
client.getPacketSender().sendFrame126(
"who is located on the 2nd floor of the Lumbridge Castle.",
8148);
client.getPacketSender().sendFrame126("", 8149);
client.getPacketSender().sendFrame126(
"There are no minimum requirments.", 8150);
} else if (client.runeMist == 1) {
client.getPacketSender().sendFrame126("Rune Mysteries", 8144);
client.getPacketSender().sendFrame126(
"@str@I've talked to the duke", 8147);
client.getPacketSender().sendFrame126(
"I should take the talisman to the Head Wizard.", 8148);
} else if (client.runeMist == 2) {
client.getPacketSender().sendFrame126("Rune Mysteries", 8144);
client.getPacketSender().sendFrame126(
"@str@I've talked to Sedridor", 8147);
client.getPacketSender().sendFrame126(
"@str@I gave him the talisman", 8148);
client.getPacketSender().sendFrame126(
"I should bring the notes to Aubury.", 8149);
} else if (client.runeMist == 3) {
client.getPacketSender().sendFrame126("Rune Mysteries", 8144);
client.getPacketSender().sendFrame126(
"@str@I've talked to Aubury.", 8147);
client.getPacketSender().sendFrame126("@str@I gave him the notes",
8148);
client.getPacketSender().sendFrame126(
"I should go back to the wizard tower", 8149);
} else if (client.runeMist == 4) {
client.getPacketSender().sendFrame126("Rune Mysteries", 8144);
client.getPacketSender().sendFrame126("@str@I talked to Sedridor",
8147);
client.getPacketSender().sendFrame126(
"@str@I gave him his items.", 8148);
client.getPacketSender().sendFrame126("@red@ QUEST COMPLETE",
8150);
client.getPacketSender().sendFrame126(
"As a reward, I gained 1 Quest point", 8151);
client.getPacketSender().sendFrame126("And an air talisman.", 8152);
}
client.getPacketSender().showInterface(8134);
}
}
@@ -0,0 +1,54 @@
package com.rebotted.game.content.quests.impl;
import com.rebotted.game.players.Player;
/**
* Sheep Shearer
* @author Andrew (Mr Extremez)
*/
public class SheepShearer {
public static void showInformation(Player client) {
for (int i = 8144; i < 8195; i++) {
client.getPacketSender().sendFrame126("", i);
}
client.getPacketSender().sendFrame126("@dre@Sheep Shearer", 8144);
client.getPacketSender().sendFrame126("", 8145);
if (client.sheepShear == 0) {
client.getPacketSender().sendFrame126("Sheep Shearer", 8144);
client.getPacketSender().sendFrame126(
"I can start this quest by speaking to Fred in", 8147);
client.getPacketSender().sendFrame126("Lumbridge.", 8148);
client.getPacketSender().sendFrame126("Minimum Requirments:", 8149);
client.getPacketSender().sendFrame126("None.", 8150);
} else if (client.sheepShear == 1) {
client.getPacketSender().sendFrame126("Sheep Shearer", 8144);
client.getPacketSender().sendFrame126("@str@I've talked to fred",
8147);
client.getPacketSender().sendFrame126(
"I've agreed to get him some wool.", 8148);
if (client.getItemAssistant().playerHasItem(1759, 20)) {
client.getPacketSender().sendFrame126("@str@Ball of Wool", 8149);
} else {
client.getPacketSender().sendFrame126("@red@Ball of Wool",
8149);
}
} else if (client.sheepShear == 2) {
client.getPacketSender().sendFrame126("Sheep Shearer", 8144);
client.getPacketSender().sendFrame126("@str@I gave fred his wool",
8147);
client.getPacketSender().sendFrame126("@str@So he awarded me.",
8148);
client.getPacketSender().sendFrame126("@red@ QUEST COMPLETE",
8149);
client.getPacketSender().sendFrame126("As a reward, 60 coins.",
8150);
client.getPacketSender().sendFrame126("150 crating exp", 8150);
client.getPacketSender().sendFrame126("And 1 Quest Point", 8151);
client.getPacketSender().sendFrame126("", 8152);
}
client.getPacketSender().showInterface(8134);
}
}
@@ -1,6 +1,7 @@
package redone.game.content.quests.impl; package com.rebotted.game.content.quests.impl;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import com.rebotted.game.players.Player;
/** /**
* Shield of Arrav * Shield of Arrav
@@ -17,13 +18,13 @@ public class ShieldArrav {
this.client = client; this.client = client;
} }
public static void showInformation(Client client) { public static void showInformation(Player player) {
// Clear all lines // Clear all lines
for (int i = 8144; i < 8195; i++) client.getPlayerAssistant().sendFrame126("", i); for (int i = 8144; i < 8195; i++) player.getPacketSender().sendFrame126("", i);
// Set the title // Set the title
client.getPlayerAssistant().sendFrame126("Shield of Arrav", 8144); player.getPacketSender().sendFrame126("Shield of Arrav", 8144);
// Add content // Add content
if (client.shieldArrav == 0) { if (player.shieldArrav == 0) {
lines = new String[]{ lines = new String[]{
"I can start this quest by speaking to @red@Reldo @bla@in @red@Varrock's", "I can start this quest by speaking to @red@Reldo @bla@in @red@Varrock's",
"@red@Palace Library@bla@, or by speaking to @red@Charlie the Tramp @bla@near", "@red@Palace Library@bla@, or by speaking to @red@Charlie the Tramp @bla@near",
@@ -31,23 +32,23 @@ public class ShieldArrav {
"I will need a friend to help me and some combat experience", "I will need a friend to help me and some combat experience",
"may be an advantage.", "may be an advantage.",
}; };
} else if (client.shieldArrav == 1) { } else if (player.shieldArrav == 1) {
lines = new String[]{ lines = new String[]{
"I need to find @red@'The Shield of Arrav' @bla@book", "I need to find @red@'The Shield of Arrav' @bla@book",
"in @red@Varrock's Palace Library", "in @red@Varrock's Palace Library",
}; };
} else if (client.shieldArrav == 2) { } else if (player.shieldArrav == 2) {
lines = new String[]{ lines = new String[]{
"@str@I found 'The Shield of Arrav' book", "@str@I found 'The Shield of Arrav' book",
"I should speak to @red@Reldo", "I should speak to @red@Reldo",
}; };
} else if (client.shieldArrav == 3) { } else if (player.shieldArrav == 3) {
lines = new String[]{ lines = new String[]{
"@str@I found 'The Shield of Arrav' book", "@str@I found 'The Shield of Arrav' book",
"@str@I've spoken with Raldo", "@str@I've spoken with Raldo",
"Lets go speak with @red@Baraek", "Lets go speak with @red@Baraek",
}; };
} else if (client.shieldArrav == 4) { } else if (player.shieldArrav == 4) {
lines = new String[]{ lines = new String[]{
"@str@I found 'The Shield of Arrav' book", "@str@I found 'The Shield of Arrav' book",
"@str@I've spoken with Raldo", "@str@I've spoken with Raldo",
@@ -56,7 +57,7 @@ public class ShieldArrav {
"He said it was located in the South Eastern side of Varrock,", "He said it was located in the South Eastern side of Varrock,",
"I should check it out.", "I should check it out.",
}; };
} else if (client.shieldArrav == 5) { } else if (player.shieldArrav == 5) {
lines = new String[]{ lines = new String[]{
"@str@I found 'The Shield of Arrav' book", "@str@I found 'The Shield of Arrav' book",
"@str@I've spoken with Raldo", "@str@I've spoken with Raldo",
@@ -65,7 +66,7 @@ public class ShieldArrav {
"I need to goto the @red@Blue Moon Inn", "I need to goto the @red@Blue Moon Inn",
"and obtain the intelligence report.", "and obtain the intelligence report.",
}; };
} else if (client.shieldArrav == 6) { } else if (player.shieldArrav == 6) {
lines = new String[]{ lines = new String[]{
"@str@I found 'The Shield of Arrav' book", "@str@I found 'The Shield of Arrav' book",
"@str@I've spoken with Raldo", "@str@I've spoken with Raldo",
@@ -76,7 +77,7 @@ public class ShieldArrav {
"and take it to @red@Curator Haig Halen", "and take it to @red@Curator Haig Halen",
"he should be at @red@Varrock Museum" "he should be at @red@Varrock Museum"
}; };
} else if (client.shieldArrav == 7) { } else if (player.shieldArrav == 7) {
lines = new String[]{ lines = new String[]{
"@str@I found 'The Shield of Arrav' book", "@str@I found 'The Shield of Arrav' book",
"@str@I've spoken with Raldo", "@str@I've spoken with Raldo",
@@ -87,7 +88,7 @@ public class ShieldArrav {
"I need to take this certificate", "I need to take this certificate",
"to @red@King Roald @bla@for my reward", "to @red@King Roald @bla@for my reward",
}; };
} else if (client.shieldArrav == 8) { } else if (player.shieldArrav == 8) {
lines = new String[]{ lines = new String[]{
"@str@I found 'The Shield of Arrav' book", "@str@I found 'The Shield of Arrav' book",
"@str@I've spoken with Raldo", "@str@I've spoken with Raldo",
@@ -107,7 +108,7 @@ public class ShieldArrav {
} }
// Send the lines to the client // Send the lines to the client
int lineNumber = 8147; int lineNumber = 8147;
for (String line : lines) client.getPlayerAssistant().sendFrame126(line, lineNumber++); for (String line : lines) player.getPacketSender().sendFrame126(line, lineNumber++);
client.getPlayerAssistant().showInterface(8134); player.getPacketSender().showInterface(8134);
} }
} }
@@ -1,27 +1,22 @@
package redone.game.content.quests.impl; package com.rebotted.game.content.quests.impl;
import redone.game.players.Client; import com.rebotted.game.players.Player;
/** /**
* Vampyre Slayer * Vampyre Slayer
* @author Andrew (I'm A Boss on Rune-Server, Mr Extremez on Moparscape & Runelocus) * @author Andrew (Mr Extremez)
*/ */
public class VampyreSlayer { public class VampyreSlayer {
Client client; private static String[] lines = new String[]{};
public String[] lines = new String[]{};
public VampyreSlayer(Client client) { public static void showInformation(Player client) {
this.client = client;
}
public void showInformation() {
// Clear all lines // Clear all lines
for (int i = 8144; i < 8195; i++) client.getPlayerAssistant().sendFrame126("", i); for (int i = 8144; i < 8195; i++) client.getPacketSender().sendFrame126("", i);
// Set the title // Set the title
client.getPlayerAssistant().sendFrame126("Vampyre Slayer", 8144); client.getPacketSender().sendFrame126("Vampyre Slayer", 8144);
// Add content // Add content
if (client.vampSlayer == 0) { if (client.vampSlayer == 0) {
lines = new String[]{ lines = new String[]{
@@ -69,7 +64,7 @@ public class VampyreSlayer {
} }
// Send the lines to the client // Send the lines to the client
int lineNumber = 8147; int lineNumber = 8147;
for (String line : lines) client.getPlayerAssistant().sendFrame126(line, lineNumber++); for (String line : lines) client.getPacketSender().sendFrame126(line, lineNumber++);
client.getPlayerAssistant().showInterface(8134); client.getPacketSender().showInterface(8134);
} }
} }
@@ -0,0 +1,54 @@
package com.rebotted.game.content.quests.impl;
import com.rebotted.game.players.Player;
/**
* Witchs Potion
* @author Andrew (Mr Extremez)
*/
public class WitchsPotion {
public static void showInformation(Player client) {
for (int i = 8144; i < 8195; i++) {
client.getPacketSender().sendFrame126("", i);
}
client.getPacketSender().sendFrame126("@dre@Witch's Potion", 8144);
client.getPacketSender().sendFrame126("", 8145);
if (client.witchspot == 0) {
client.getPacketSender().sendFrame126("Witch's Potion", 8144);
client.getPacketSender().sendFrame126(
"I can start this quest by speaking to Hetty", 8147);
client.getPacketSender().sendFrame126("Rimmington.", 8148);
client.getPacketSender().sendFrame126("Minimum Requirments:", 8149);
client.getPacketSender().sendFrame126("None.", 8150);
} else if (client.witchspot == 1) {
client.getPacketSender().sendFrame126("Witch's Potion", 8144);
client.getPacketSender().sendFrame126(
"@str@I've talked to the Hetty", 8147);
client.getPacketSender().sendFrame126(
"I've agreed to get her the ingredients", 8148);
} else if (client.witchspot == 2) {
client.getPacketSender().sendFrame126("Witch's Potion", 8144);
client.getPacketSender().sendFrame126(
"@str@I have all the ingredients", 8147);
client.getPacketSender().sendFrame126("I should talk to hetty.",
8148);
client.getPacketSender().sendFrame126("", 8149);
} else if (client.witchspot == 3) {
client.getPacketSender().sendFrame126("Witch's Potion", 8144);
client.getPacketSender().sendFrame126("@str@I've Talked to Hetty",
8147);
client.getPacketSender().sendFrame126(
"@str@I drank from the Cauldron", 8148);
client.getPacketSender().sendFrame126("@red@ QUEST COMPLETE",
8150);
client.getPacketSender().sendFrame126(
"As a reward, I gained 325 Magic Exp.", 8151);
client.getPacketSender().sendFrame126("And 1 Quest Point", 8152);
client.getPacketSender().sendFrame126("", 8152);
}
client.getPacketSender().showInterface(8134);
}
}
@@ -1,11 +1,10 @@
package redone.game.content.random; package com.rebotted.game.content.random;
import java.awt.Point; import java.awt.Point;
import java.util.Random; import java.util.Random;
import com.rebotted.GameEngine;
import redone.Server; import com.rebotted.game.objects.Objects;
import redone.game.objects.Objects; import com.rebotted.game.players.Player;
import redone.game.players.Client;
public class Balloons extends Objects { public class Balloons extends Objects {
@@ -23,15 +22,15 @@ public class Balloons extends Objects {
this.amount = amount; this.amount = amount;
} }
public static void popBalloon(Client c, int x, int y) { public static void popBalloon(Player player, int x, int y) {
PartyRoom.coords.remove(getCoords()); PartyRoom.coords.remove(getCoords());
Balloons empty = remove(x, y); Balloons empty = remove(x, y);
Server.itemHandler.createGroundItem(c, item, x, y, amount, c.playerId); GameEngine.itemHandler.createGroundItem(player, item, x, y, amount, player.playerId);
item = 0; item = 0;
amount = 0; amount = 0;
Server.objectHandler.addObject(empty); GameEngine.objectHandler.addObject(empty);
Server.objectHandler.placeObject(empty); GameEngine.objectHandler.placeObject(empty);
c.startAnimation(794); player.startAnimation(794);
} }
public static Point getCoords() { public static Point getCoords() {
@@ -1,15 +1,15 @@
package redone.game.content.random; package com.rebotted.game.content.random;
import redone.Constants; import com.rebotted.GameConstants;
import redone.game.players.PlayerHandler; import com.rebotted.game.players.PlayerHandler;
/** /**
* Holiday Drops * Holiday Drops
* @author Andrew (I'm A Boss on Rune-Server, Mr Extremez on Moparscape & Runelocus) * @author Andrew (Mr Extremez)
*/ */
public enum HolidayDrops { public enum HolidayDrops {
EASTER(1961, "Easter", false), HALLOWEEN(1053, "Halloween", true), CHRISTMAS(962, "Christmas", false); EASTER(1961, "Easter", false), HALLOWEEN(1053, "Halloween", false), CHRISTMAS(962, "Christmas", false);
private final int item;// holiday item private final int item;// holiday item
private final String name;// holiday name private final String name;// holiday name
@@ -23,7 +23,7 @@ public enum HolidayDrops {
// amount // amount
public static int dropAmount() { public static int dropAmount() {
int amount = DROP_AMOUNT; int amount = DROP_AMOUNT;
if (Constants.SERVER_DEBUG) { if (GameConstants.SERVER_DEBUG) {
return amount * 60; return amount * 60;
} }
return amount; return amount;
@@ -47,18 +47,6 @@ public enum HolidayDrops {
return whichHoliday; return whichHoliday;
} }
/*private static int addItem() {
int random = 2;
if (Misc.random(random) == 0) {
return 1053;
} else if (Misc.random(random) == 1) {
return 1055;
} else if (Misc.random(random) == 2) {
return 1057;
}
return -1;
}*/
public final int[][] COORDS = { { 3214, 3424 }, // Varrock public final int[][] COORDS = { { 3214, 3424 }, // Varrock
{ 3222, 3218 }, // Lumbridge { 3222, 3218 }, // Lumbridge
{ 2964, 3378 }, // Falador { 2964, 3378 }, // Falador
@@ -1,13 +1,13 @@
package redone.game.content.random; package com.rebotted.game.content.random;
import redone.Server; import com.rebotted.GameEngine;
import redone.event.CycleEvent; import com.rebotted.event.CycleEvent;
import redone.event.CycleEventContainer; import com.rebotted.event.CycleEventContainer;
import redone.event.CycleEventHandler; import com.rebotted.event.CycleEventHandler;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import redone.game.players.Player; import com.rebotted.game.players.Player;
import redone.game.players.PlayerHandler; import com.rebotted.game.players.PlayerHandler;
import redone.util.Misc; import com.rebotted.util.Misc;
/** /**
* Holiday Drops * Holiday Drops
@@ -23,9 +23,9 @@ public class Holidays {
Client p1 = (Client) player; Client p1 = (Client) player;
if (holiday.getHoliday()) { if (holiday.getHoliday()) {
if (p1.playerRights > 2) { if (p1.playerRights > 2) {
p1.getActionSender().sendMessage("Currently dropping " + HolidayDrops.dropAmount() + " items."); p1.getPacketSender().sendMessage("Currently dropping " + HolidayDrops.dropAmount() + " items.");
} }
p1.getActionSender().sendMessage("The " + holiday.getName() + " event has started, goodluck!"); p1.getPacketSender().sendMessage("The " + holiday.getName() + " event has started, goodluck!");
dropItems(c); dropItems(c);
} }
} }
@@ -43,35 +43,35 @@ public class Holidays {
for (HolidayDrops holiday : HolidayDrops.values()) { for (HolidayDrops holiday : HolidayDrops.values()) {
if (holiday.count >= HolidayDrops.dropAmount() && holiday.getHoliday()) { if (holiday.count >= HolidayDrops.dropAmount() && holiday.getHoliday()) {
stop(); stop();
p1.getActionSender().sendMessage("The " + holiday.getName() + " event has ended, good luck finding the rest of the items!"); p1.getPacketSender().sendMessage("The " + holiday.getName() + " event has ended, good luck finding the rest of the items!");
} else if (holiday.count < HolidayDrops.dropAmount() && holiday.getHoliday()) { } else if (holiday.count < HolidayDrops.dropAmount() && holiday.getHoliday()) {
switch (Misc.random(holiday.drops)) { switch (Misc.random(holiday.drops)) {
case 0:// Varrock case 0:// Varrock
Server.itemHandler.createGroundItem(p1, holiday.getItem(), 3214 + Misc.random(holiday.DROP_DISTANCE), 3424 - Misc.random(holiday.DROP_DISTANCE), 1, j); GameEngine.itemHandler.createGroundItem(p1, holiday.getItem(), 3214 + Misc.random(holiday.DROP_DISTANCE), 3424 - Misc.random(holiday.DROP_DISTANCE), 1, j);
holiday.count++; holiday.count++;
break; break;
case 1:// Lumbridge case 1:// Lumbridge
Server.itemHandler.createGroundItem(p1, holiday.getItem(), 3222 + Misc.random(holiday.DROP_DISTANCE), 3218 - Misc.random(holiday.DROP_DISTANCE), 1, j); GameEngine.itemHandler.createGroundItem(p1, holiday.getItem(), 3222 + Misc.random(holiday.DROP_DISTANCE), 3218 - Misc.random(holiday.DROP_DISTANCE), 1, j);
holiday.count++; holiday.count++;
break; break;
case 2:// Falador case 2:// Falador
Server.itemHandler.createGroundItem(p1, holiday.getItem(), 2964 + Misc.random(holiday.DROP_DISTANCE), 3378 - Misc.random(holiday.DROP_DISTANCE), 1, j); GameEngine.itemHandler.createGroundItem(p1, holiday.getItem(), 2964 + Misc.random(holiday.DROP_DISTANCE), 3378 - Misc.random(holiday.DROP_DISTANCE), 1, j);
holiday.count++; holiday.count++;
break; break;
case 3:// Barb Village case 3:// Barb Village
Server.itemHandler.createGroundItem(p1, holiday.getItem(), 3082 + Misc.random(holiday.DROP_DISTANCE), 3419 - Misc.random(holiday.DROP_DISTANCE), 1, j); GameEngine.itemHandler.createGroundItem(p1, holiday.getItem(), 3082 + Misc.random(holiday.DROP_DISTANCE), 3419 - Misc.random(holiday.DROP_DISTANCE), 1, j);
holiday.count++; holiday.count++;
break; break;
case 4:// Draynor case 4:// Draynor
Server.itemHandler.createGroundItem(p1, holiday.getItem(), 3082 + Misc.random(holiday.DROP_DISTANCE), 3249 - Misc.random(holiday.DROP_DISTANCE), 1, j); GameEngine.itemHandler.createGroundItem(p1, holiday.getItem(), 3082 + Misc.random(holiday.DROP_DISTANCE), 3249 - Misc.random(holiday.DROP_DISTANCE), 1, j);
holiday.count++; holiday.count++;
break; break;
case 5:// Al Kharid case 5:// Al Kharid
Server.itemHandler.createGroundItem(p1, holiday.getItem(), 3293 + Misc.random(holiday.DROP_DISTANCE), 3180 - Misc.random(holiday.DROP_DISTANCE), 1, j); GameEngine.itemHandler.createGroundItem(p1, holiday.getItem(), 3293 + Misc.random(holiday.DROP_DISTANCE), 3180 - Misc.random(holiday.DROP_DISTANCE), 1, j);
holiday.count++; holiday.count++;
break; break;
case 6:// Rimmington case 6:// Rimmington
Server.itemHandler.createGroundItem(p1, holiday.getItem(), 3034 + Misc.random(holiday.DROP_DISTANCE), 3246 - Misc.random(holiday.DROP_DISTANCE), 1, j); GameEngine.itemHandler.createGroundItem(p1, holiday.getItem(), 3034 + Misc.random(holiday.DROP_DISTANCE), 3246 - Misc.random(holiday.DROP_DISTANCE), 1, j);
holiday.count++; holiday.count++;
break; break;
} }
@@ -1,14 +1,13 @@
package redone.game.content.random; package com.rebotted.game.content.random;
import java.awt.Point; import java.awt.Point;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Random; import java.util.Random;
import com.rebotted.GameConstants;
import redone.Constants; import com.rebotted.GameEngine;
import redone.Server; import com.rebotted.game.items.Item;
import redone.game.items.Item; import com.rebotted.game.objects.Objects;
import redone.game.objects.Objects; import com.rebotted.game.players.Player;
import redone.game.players.Client;
public class PartyRoom { public class PartyRoom {
@@ -29,7 +28,7 @@ public class PartyRoom {
return amount; return amount;
} }
public static void startTimer(Client c) { public static void startTimer(Player c) {
if (System.currentTimeMillis() - lastAnnouncment > 1000 * 60 * announcmentFrequency) { if (System.currentTimeMillis() - lastAnnouncment > 1000 * 60 * announcmentFrequency) {
dropAll(); dropAll();
lastAnnouncment = System.currentTimeMillis(); lastAnnouncment = System.currentTimeMillis();
@@ -49,8 +48,8 @@ public class PartyRoom {
b = Balloons.getBalloon(roomItems[x], roomItemsN[x]); b = Balloons.getBalloon(roomItems[x], roomItemsN[x]);
trys++; trys++;
} while (coords.contains(Balloons.getCoords()) && trys < 100); } while (coords.contains(Balloons.getCoords()) && trys < 100);
Server.objectHandler.addObject(b); GameEngine.objectHandler.addObject(b);
Server.objectHandler.placeObject(b); GameEngine.objectHandler.placeObject(b);
} }
if (trys > 100) { if (trys > 100) {
break; break;
@@ -68,8 +67,8 @@ public class PartyRoom {
if (trys > 100) { if (trys > 100) {
break; break;
} }
Server.objectHandler.addObject(o); GameEngine.objectHandler.addObject(o);
Server.objectHandler.placeObject(o); GameEngine.objectHandler.placeObject(o);
} }
coords.clear(); coords.clear();
} }
@@ -86,25 +85,24 @@ public class PartyRoom {
return spare; return spare;
} }
public static void open(Client c) { public static void open(Player player) {
if (!Constants.PARTY_ROOM_DISABLED) { if (!GameConstants.PARTY_ROOM_DISABLED) {
updateGlobal(c); updateGlobal(player);
updateDeposit(c); updateDeposit(player);
c.getItemAssistant().resetItems(5064); player.getItemAssistant().resetItems(5064);
c.getPlayerAssistant().sendFrame248(2156, 5063); player.getPacketSender().sendFrame248(2156, 5063);
} else { } else {
c.getActionSender().sendMessage( player.getPacketSender().sendMessage("The partyroom has been disabled.");
"The partyroom has been disabled.");
} }
} }
public static void accept(Client c) { public static void accept(Player c) {
for (int x = 0; x < c.party.length; x++) { for (int x = 0; x < c.party.length; x++) {
if (c.partyN[x] > 0) { if (c.partyN[x] > 0) {
if (Item.itemStackable[c.party[x]]) { if (Item.itemStackable[c.party[x]]) {
int slot = arraySlot(roomItems, c.party[x]); int slot = arraySlot(roomItems, c.party[x]);
if (slot < 0) { if (slot < 0) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"Theres not enough space left in the chest."); "Theres not enough space left in the chest.");
break; break;
} }
@@ -121,7 +119,7 @@ public class PartyRoom {
for (int y = 0; y < left; y++) { for (int y = 0; y < left; y++) {
int slot = arraySlot(roomItems, -2); int slot = arraySlot(roomItems, -2);
if (slot < 0) { if (slot < 0) {
c.getActionSender() c.getPacketSender()
.sendMessage( .sendMessage(
"Theres not enough space left in the chest."); "Theres not enough space left in the chest.");
break; break;
@@ -146,7 +144,7 @@ public class PartyRoom {
// } // }
// } // }
public static void fix(Client c) { public static void fix(Player c) {
for (int x = 0; x < 8; x++) { for (int x = 0; x < 8; x++) {
if (c.party[x] < 0) { if (c.party[x] < 0) {
c.partyN[x] = 0; c.partyN[x] = 0;
@@ -156,44 +154,43 @@ public class PartyRoom {
} }
} }
public static void depositItem(Client c, int id, int amount) { public static void depositItem(Player player, int id, int amount) {
int slot = arraySlot(c.party, id); int slot = arraySlot(player.party, id);
for (int i : Constants.ITEM_TRADEABLE) { for (int i : GameConstants.ITEM_TRADEABLE) {
if (i == id) { if (i == id) {
c.getActionSender().sendMessage( player.getPacketSender().sendMessage("You can't deposit this item.");
"You can't deposit this item.");
return; return;
} }
if (id == 995) { if (id == 995) {
c.getActionSender().sendMessage("You can't deposit coins!"); player.getPacketSender().sendMessage("You can't deposit coins!");
return; return;
} }
} }
if (c.getItemAssistant().getItemAmount(id) < amount) { if (player.getItemAssistant().getItemAmount(id) < amount) {
amount = c.getItemAssistant().getItemAmount(id); amount = player.getItemAssistant().getItemAmount(id);
} }
if (!c.getItemAssistant().playerHasItem(id, amount)) { if (!player.getItemAssistant().playerHasItem(id, amount)) {
c.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You don't have that many items!"); "You don't have that many items!");
return; return;
} }
if (slot == -1) { if (slot == -1) {
c.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You cant deposit more than 8 items at once."); "You cant deposit more than 8 items at once.");
return; return;
} }
c.getItemAssistant().deleteItem(id, amount); player.getItemAssistant().deleteItem(id, amount);
if (c.party[slot] != id) { if (player.party[slot] != id) {
c.party[slot] = id; player.party[slot] = id;
c.partyN[slot] = amount; player.partyN[slot] = amount;
} else { } else {
c.party[slot] = id; player.party[slot] = id;
c.partyN[slot] += amount; player.partyN[slot] += amount;
} }
updateDeposit(c); updateDeposit(player);
} }
public static void withdrawItem(Client c, int slot) { public static void withdrawItem(Player c, int slot) {
if (c.party[slot] >= 0 && c.getItemAssistant().freeSlots() > 0) { if (c.party[slot] >= 0 && c.getItemAssistant().freeSlots() > 0) {
c.getItemAssistant().addItem(c.party[slot], c.partyN[slot]); c.getItemAssistant().addItem(c.party[slot], c.partyN[slot]);
c.party[slot] = 0; c.party[slot] = 0;
@@ -203,35 +200,34 @@ public class PartyRoom {
updateGlobal(c); updateGlobal(c);
} }
public static void updateDeposit(Client c) { public static void updateDeposit(Player player) {
c.getItemAssistant().resetItems(5064); player.getItemAssistant().resetItems(5064);
for (int x = 0; x < 8; x++) { for (int x = 0; x < 8; x++) {
if (c.partyN[x] <= 0) { if (player.partyN[x] <= 0) {
itemOnInterface(c, 2274, x, -1, 0); itemOnInterface(player, 2274, x, -1, 0);
} else { } else {
itemOnInterface(c, 2274, x, c.party[x], c.partyN[x]); itemOnInterface(player, 2274, x, player.party[x], player.partyN[x]);
} }
} }
} }
public static void updateGlobal(Client c) { public static void updateGlobal(Player player) {
for (int x = 0; x < roomItems.length; x++) { for (int x = 0; x < roomItems.length; x++) {
if (roomItemsN[x] <= 0) { if (roomItemsN[x] <= 0) {
itemOnInterface(c, 2273, x, -1, 0); itemOnInterface(player, 2273, x, -1, 0);
} else { } else {
itemOnInterface(c, 2273, x, roomItems[x], roomItemsN[x]); itemOnInterface(player, 2273, x, roomItems[x], roomItemsN[x]);
} }
} }
} }
public static void itemOnInterface(Client c, int frame, int slot, int id, public static void itemOnInterface(Player player, int frame, int slot, int id, int amount) {
int amount) { player.outStream.createFrameVarSizeWord(34);
c.outStream.createFrameVarSizeWord(34); player.outStream.writeWord(frame);
c.outStream.writeWord(frame); player.outStream.writeByte(slot);
c.outStream.writeByte(slot); player.outStream.writeWord(id + 1);
c.outStream.writeWord(id + 1); player.outStream.writeByte(255);
c.outStream.writeByte(255); player.outStream.writeDWord(amount);
c.outStream.writeDWord(amount); player.outStream.endFrameVarSizeWord();
c.outStream.endFrameVarSizeWord();
} }
} }
@@ -0,0 +1,27 @@
package com.rebotted.game.content.randomevents;
import com.rebotted.game.npcs.NpcHandler;
import com.rebotted.game.players.Player;
import com.rebotted.util.Misc;
public class EvilChicken {
// min cmb, maxcmb, npcid, maxhit, attack, defence
private static int[][] chicken = { { 3, 10, 2463, 19, 1, 10, 10 },
{ 11, 20, 2464, 40, 1, 30, 30 }, { 21, 40, 2465, 60, 2, 60, 60 },
{ 41, 60, 2466, 80, 3, 80, 80 },
{ 61, 90, 2467, 105, 4, 100, 100 },
{ 91, 138, 2468, 120, 5, 120, 120 }, };
public static void spawnChicken(Player c) {
for (int[] aChicken : chicken) {
if (c.chickenSpawned == false) {
if (c.combatLevel >= aChicken[0] && c.combatLevel <= aChicken[1]) {
NpcHandler.spawnNpc(c, aChicken[2], c.absX + Misc.random(1), c.absY + Misc.random(1), c.heightLevel, 0, aChicken[3], aChicken[4], aChicken[5], aChicken[6], true, false);
c.chickenSpawned = true;
c.randomActions = 0;
}
}
}
}
}
@@ -1,34 +1,34 @@
package redone.game.content.randomevents; package com.rebotted.game.content.randomevents;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.util.Misc;
public class FreakyForester { public class FreakyForester {
public static void teleportToLocation(Client client) { public static void teleportToLocation(Player c) {
client.lastX = client.absX; c.lastX = c.absX;
client.lastY = client.absY; c.lastY = c.absY;
client.lastH = client.heightLevel; c.lastH = c.heightLevel;
client.teleportToX = 2602; c.teleportToX = 2602;
client.teleportToY = 4775; c.teleportToY = 4775;
client.heightLevel = 0; c.heightLevel = 0;
client.getActionSender().sendMessage("Talk to the freaky forester to get out."); c.getPacketSender().sendMessage("Talk to the freaky forester to get out.");
} }
private static String[] pheasant = { "one", "two", "three", "four", }; private static String[] pheasant = { "one", "two", "three", "four", };
public static String getPheasant(Client client) { public static String getPheasant(Player client) {
if (client.getPheasent < 0) { if (client.getPheasent < 0) {
client.getPheasent = Misc.random(3); client.getPheasent = Misc.random(3);
} }
return pheasant[client.getPheasent] + " tailed"; return pheasant[client.getPheasent] + " tailed";
} }
public static void leaveArea(Client client) { public static void leaveArea(Player client) {
if (client.killedPheasant[client.getPheasent]) { if (client.killedPheasant[client.getPheasent]) {
client.getPlayerAssistant().movePlayer(client.lastX, client.lastY, client.lastH); client.getPlayerAssistant().movePlayer(client.lastX, client.lastY, client.lastH);
client.canLeaveArea = true; client.canLeaveArea = true;
client.getActionSender().sendMessage("Congratulations, you've completed the freaky forester event!"); client.getPacketSender().sendMessage("Congratulations, you've completed the freaky forester event!");
if (client.recievedReward == false) { if (client.recievedReward == false) {
client.getItemAssistant().addItem(6180, 1); client.getItemAssistant().addItem(6180, 1);
client.getItemAssistant().addItem(6181, 1); client.getItemAssistant().addItem(6181, 1);
@@ -36,7 +36,7 @@ public class FreakyForester {
client.recievedReward = true; client.recievedReward = true;
} else { } else {
client.getItemAssistant().addItem(995, 500); client.getItemAssistant().addItem(995, 500);
client.getActionSender().sendMessage("You have already beat the freaky forester event so you get 500 coins."); client.getPacketSender().sendMessage("You have already beat the freaky forester event so you get 500 coins.");
} }
int delete = client.getItemAssistant().getItemCount(6178); int delete = client.getItemAssistant().getItemCount(6178);
client.getItemAssistant().deleteItem(6178, delete); client.getItemAssistant().deleteItem(6178, delete);
@@ -51,14 +51,14 @@ public class FreakyForester {
client.canLeaveArea = false; client.canLeaveArea = false;
} }
public static void killedPheasant(Client client, int p) { public static void killedPheasant(Player c, int p) {
for (int i = 0; i < 4; i++) { for (int i = 0; i < 4; i++) {
client.killedPheasant[i] = false; c.killedPheasant[i] = false;
} }
client.killedPheasant[p] = true; c.killedPheasant[p] = true;
} }
public static boolean hasKilledPheasant(Client client) { public static boolean hasKilledPheasant(Player client) {
for (int i = 0; i < 4; i++) { for (int i = 0; i < 4; i++) {
if (client.killedPheasant[i]) { if (client.killedPheasant[i]) {
client.canLeaveArea = true; client.canLeaveArea = true;
@@ -1,8 +1,8 @@
package redone.game.content.randomevents; package com.rebotted.game.content.randomevents;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import redone.util.Misc; import com.rebotted.util.Misc;
/** /**
* Frog Event * Frog Event
@@ -1,8 +1,8 @@
package redone.game.content.randomevents; package com.rebotted.game.content.randomevents;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import redone.util.Misc; import com.rebotted.util.Misc;
/** /**
* @author Aintaro * @author Aintaro
@@ -30,8 +30,8 @@ public class GenieLamp {
public static void rubGenieLamp(Client c, int itemId) { public static void rubGenieLamp(Client c, int itemId) {
if (itemId == GENIE_LAMP1) {// || itemId == GENIE_LAMP2) { if (itemId == GENIE_LAMP1) {// || itemId == GENIE_LAMP2) {
c.getActionSender().sendMessage("You rub the lamp..."); c.getPacketSender().sendMessage("You rub the lamp...");
c.getPlayerAssistant().showInterface(2808); c.getPacketSender().showInterface(2808);
} }
} }
@@ -0,0 +1,80 @@
package com.rebotted.game.content.randomevents;
import com.rebotted.game.players.Client;
import com.rebotted.game.players.Player;
import com.rebotted.util.Misc;
/**
* Eventhandler class
* @author Andrew (Mr Extremez)
*/
public class RandomEventHandler {
public static int CALL_RANDOM = 350 + Misc.random(100);
public static void resetEvent(Player c) {
c.randomActions = 0;
}
private static int[][] FAIL_COORDS = { { 3333, 3333 }, { 3196, 3193 },
{ 3084, 3549 }, { 2974, 3346 }, { 2781, 3506 }, { 2810, 3508 }, };
public static void failEvent(Player client) {
int loc = Misc.random(FAIL_COORDS.length - 1);
client.teleportToX = FAIL_COORDS[loc][0];
client.teleportToY = FAIL_COORDS[loc][1];
client.heightLevel = 0;
client.getPacketSender().sendMessage("You wake up in a strange location...");
resetEvent(client);
client.getPacketSender().closeAllWindows();
}
public static void callRandom(Player c) { // add all random events here
if (c.inFightCaves() || c.playerEquipment[c.playerWeapon] == 4024 || c.tutorialProgress < 36) {
return;
}
int randomEvent = Misc.random(3);
switch (randomEvent) {
case 0:
SandwhichLady.openSandwhichLady(c);
resetEvent(c);
break;
case 1:
if (c.chickenSpawned == false) {
EvilChicken.spawnChicken(c);
resetEvent(c);
}
break;
case 2:
FreakyForester.teleportToLocation(c);
resetEvent(c);
break;
case 3:
Swarm.spawnSwarm(c);
resetEvent(c);
break;
default:
System.out.println("Error no random event called for " + c.playerName + ".");
break;
}
}
public static void addRandom(Player c) {
if (c.randomEventsEnabled)
{
if (c.randomActions >= CALL_RANDOM) {
callRandom(c);
if (c.playerIsBusy() && !c.hasSandwhichLady) {
c.getPacketSender().closeAllWindows();
}
} else {
int nextRandom = CALL_RANDOM - c.randomActions;
if (c.playerRights == 3) {
c.getPacketSender().sendMessage("Next random will be in " + nextRandom + " more random actions.");
}
c.randomActions += 1;
}
}
}
}
@@ -0,0 +1,28 @@
package com.rebotted.game.content.randomevents;
import com.rebotted.game.npcs.NpcHandler;
import com.rebotted.game.players.Player;
import com.rebotted.util.Misc;
public class RiverTroll {
public static boolean hasRiverTroll = false;
private static int[][] riverTroll = { { 3, 10, 391, 19, 1 },
{ 11, 20, 392, 40, 1 }, { 21, 40, 393, 80, 3 },
{ 61, 90, 394, 105, 4 }, { 91, 110, 395, 120, 5 },
{ 111, 138, 396, 150, 7 }, };
public static void spawnRiverTroll(Player client) {
for (int[] element : riverTroll) {
if (hasRiverTroll == false) {
if (client.combatLevel >= element[0] && client.combatLevel <= element[1] && hasRiverTroll == false) {
NpcHandler.spawnNpc(client, element[2], client.absX + Misc.random(1), client.absY + Misc.random(1), client.heightLevel, 0, element[3], element[4], client.playerLevel[client.playerAttack] * 2, client.playerLevel[client.playerDefence] * 2, true, false);
client.randomActions = 0;
hasRiverTroll = true;
NpcHandler.npcs[element[2]].forceChat("Fishies be mine! Leave dem fishies!");
}
}
}
}
}
@@ -1,8 +1,8 @@
package redone.game.content.randomevents; package com.rebotted.game.content.randomevents;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import redone.util.Misc; import com.rebotted.util.Misc;
public class RockGolem { public class RockGolem {
@@ -1,24 +1,24 @@
package redone.game.content.randomevents; package com.rebotted.game.content.randomevents;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.util.Misc;
public class SandwhichLady { public class SandwhichLady {
private static int itemType; private static int itemType;
public static void handleOptions(Client player, int actionbuttonId) { public static void handleOptions(Player player, int actionbuttonId) {
if (player.hasSandwhichLady) { if (player.hasSandwhichLady) {
switch (actionbuttonId) { switch (actionbuttonId) {
case 63013: case 63013:
if (itemType == 0) { if (itemType == 0) {
player.getPlayerAssistant().closeAllWindows(); player.getPacketSender().closeAllWindows();
player.getItemAssistant().addItem(2323, 1); player.getItemAssistant().addItem(2323, 1);
player.getActionSender() player.getPacketSender()
.sendMessage( .sendMessage(
"Congratulations, you have completed the random event!"); "Congratulations, you have completed the random event!");
} else { } else {
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You have chosen the wrong item!"); "You have chosen the wrong item!");
RandomEventHandler.failEvent(player); RandomEventHandler.failEvent(player);
} }
@@ -27,13 +27,13 @@ public class SandwhichLady {
case 63014: case 63014:
if (itemType == 1) { if (itemType == 1) {
player.getPlayerAssistant().closeAllWindows(); player.getPacketSender().closeAllWindows();
player.getItemAssistant().addItem(1971, 1); player.getItemAssistant().addItem(1971, 1);
player.getActionSender() player.getPacketSender()
.sendMessage( .sendMessage(
"Congratulations, you have completed the random event!"); "Congratulations, you have completed the random event!");
} else { } else {
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You have chosen the wrong item!"); "You have chosen the wrong item!");
RandomEventHandler.failEvent(player); RandomEventHandler.failEvent(player);
} }
@@ -42,13 +42,13 @@ public class SandwhichLady {
case 63015: case 63015:
if (itemType == 2) { if (itemType == 2) {
player.getPlayerAssistant().closeAllWindows(); player.getPacketSender().closeAllWindows();
player.getItemAssistant().addItem(1973, 1); player.getItemAssistant().addItem(1973, 1);
player.getActionSender() player.getPacketSender()
.sendMessage( .sendMessage(
"Congratulations, you have completed the random event!"); "Congratulations, you have completed the random event!");
} else { } else {
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You have chosen the wrong item!"); "You have chosen the wrong item!");
RandomEventHandler.failEvent(player); RandomEventHandler.failEvent(player);
} }
@@ -57,13 +57,13 @@ public class SandwhichLady {
case 63009: case 63009:
if (itemType == 3) { if (itemType == 3) {
player.getPlayerAssistant().closeAllWindows(); player.getPacketSender().closeAllWindows();
player.getItemAssistant().addItem(6961, 10); player.getItemAssistant().addItem(6961, 10);
player.getActionSender() player.getPacketSender()
.sendMessage( .sendMessage(
"Congratulations, you have completed the random event!"); "Congratulations, you have completed the random event!");
} else { } else {
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You have chosen the wrong item!"); "You have chosen the wrong item!");
RandomEventHandler.failEvent(player); RandomEventHandler.failEvent(player);
} }
@@ -72,13 +72,13 @@ public class SandwhichLady {
case 63010: case 63010:
if (itemType == 4) { if (itemType == 4) {
player.getPlayerAssistant().closeAllWindows(); player.getPacketSender().closeAllWindows();
player.getItemAssistant().addItem(6962, 1); player.getItemAssistant().addItem(6962, 1);
player.getActionSender() player.getPacketSender()
.sendMessage( .sendMessage(
"Congratulations, you have completed the random event!"); "Congratulations, you have completed the random event!");
} else { } else {
player.getActionSender().sendMessage( player.getPacketSender().sendMessage(
"You have chosen the wrong item!"); "You have chosen the wrong item!");
RandomEventHandler.failEvent(player); RandomEventHandler.failEvent(player);
} }
@@ -87,11 +87,11 @@ public class SandwhichLady {
case 63011: case 63011:
if (itemType == 5) { if (itemType == 5) {
player.getPlayerAssistant().closeAllWindows(); player.getPacketSender().closeAllWindows();
player.getItemAssistant().addItem(6965, 1); player.getItemAssistant().addItem(6965, 1);
player.getActionSender().sendMessage("Congratulations, you have completed the random event!"); player.getPacketSender().sendMessage("Congratulations, you have completed the random event!");
} else { } else {
player.getActionSender().sendMessage("You have chosen the wrong item!"); player.getPacketSender().sendMessage("You have chosen the wrong item!");
RandomEventHandler.failEvent(player); RandomEventHandler.failEvent(player);
} }
player.hasSandwhichLady = false; player.hasSandwhichLady = false;
@@ -99,59 +99,59 @@ public class SandwhichLady {
case 63012: case 63012:
if (itemType == 6) { if (itemType == 6) {
player.getPlayerAssistant().closeAllWindows(); player.getPacketSender().closeAllWindows();
player.getItemAssistant().addItem(2309, 1); player.getItemAssistant().addItem(2309, 1);
player.getActionSender().sendMessage("Congratulations, you have completed the random event!"); player.getPacketSender().sendMessage("Congratulations, you have completed the random event!");
} else { } else {
player.getActionSender().sendMessage("You have chosen the wrong item!"); player.getPacketSender().sendMessage("You have chosen the wrong item!");
RandomEventHandler.failEvent(player); RandomEventHandler.failEvent(player);
} }
player.hasSandwhichLady = false; player.hasSandwhichLady = false;
break; break;
} }
} else if (player.hasSandwhichLady == false && actionbuttonId > 63008 && actionbuttonId < 63116) { } else if (player.hasSandwhichLady == false && actionbuttonId > 63008 && actionbuttonId < 63116) {
player.getActionSender().sendMessage("You have improperly opened the sandwhich lady interface."); player.getPacketSender().sendMessage("You have improperly opened the sandwhich lady interface.");
} }
} }
public static void openSandwhichLady(Client player) { public static void openSandwhichLady(Player c) {
player.hasSandwhichLady = true; c.hasSandwhichLady = true;
player.getPlayerAssistant().sendFrame126(" ", 16131); c.getPacketSender().sendFrame126(" ", 16131);
player.getPlayerAssistant().showInterface(16135); c.getPacketSender().showInterface(16135);
int randomMessage = Misc.random(6); int randomMessage = Misc.random(6);
switch (randomMessage) { switch (randomMessage) {
case 0: case 0:
player.getPlayerAssistant().sendFrame126("Please select the pie.", c.getPacketSender().sendFrame126("Please select the pie.",
16145); 16145);
itemType = 0; itemType = 0;
break; break;
case 1: case 1:
player.getPlayerAssistant().sendFrame126("Please select the kebab.", c.getPacketSender().sendFrame126("Please select the kebab.",
16145); 16145);
itemType = 1; itemType = 1;
break; break;
case 2: case 2:
player.getPlayerAssistant().sendFrame126( c.getPacketSender().sendFrame126(
"Please select the chocolate.", 16145); "Please select the chocolate.", 16145);
itemType = 2; itemType = 2;
break; break;
case 3: case 3:
player.getPlayerAssistant().sendFrame126("Please select the bagel.", c.getPacketSender().sendFrame126("Please select the bagel.",
16145); 16145);
itemType = 3; itemType = 3;
break; break;
case 4: case 4:
player.getPlayerAssistant().sendFrame126( c.getPacketSender().sendFrame126(
"Please select the triangle sandwich.", 16145); "Please select the triangle sandwich.", 16145);
itemType = 4; itemType = 4;
break; break;
case 5: case 5:
player.getPlayerAssistant().sendFrame126( c.getPacketSender().sendFrame126(
"Please select the square sandwich.", 16145); "Please select the square sandwich.", 16145);
itemType = 5; itemType = 5;
break; break;
case 6: case 6:
player.getPlayerAssistant().sendFrame126("Please select the bread.", c.getPacketSender().sendFrame126("Please select the bread.",
16145); 16145);
itemType = 6; itemType = 6;
break; break;
@@ -0,0 +1,35 @@
package com.rebotted.game.content.randomevents;
import com.rebotted.game.npcs.NpcHandler;
import com.rebotted.game.players.Player;
import com.rebotted.util.Misc;
public class Shade {
private static int[][] shade = { { 3, 10, 425, 19, 1 },
{ 11, 20, 426, 40, 3 }, { 21, 40, 427, 60, 5 },
{ 41, 60, 428, 80, 8 }, { 61, 90, 429, 105, 11 },
{ 91, 138, 430, 120, 13 }, };
public static void spawnShade(Player c) {
for (int[] element : shade) {
if (c.shadeSpawned == false) {
if (c.combatLevel >= element[0]
&& c.combatLevel <= element[1]) {
NpcHandler
.spawnNpc(c, element[2],
c.absX + Misc.random(1), c.absY
+ Misc.random(1), c.heightLevel,
0,
element[3], // HP
element[4], // maxhit
(int) (NpcHandler.getNpcListCombat(element[3]) * 1.5), // defence
(int) (NpcHandler.getNpcListCombat(element[3]) * 1.5),
true, false); // attack
c.randomActions = 0;
c.shadeSpawned = true;
}
}
}
}
}
@@ -1,9 +1,9 @@
package package com.rebotted.game.content.randomevents;
redone.game.content.randomevents;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
import redone.game.players.Client; import com.rebotted.game.players.Client;
import redone.util.Misc; import com.rebotted.game.players.Player;
import com.rebotted.util.Misc;
/** /**
* Swarm Event * Swarm Event
@@ -12,11 +12,11 @@ import redone.util.Misc;
public class Swarm { public class Swarm {
private static int checkStats(Client client, boolean bot) { private static int checkStats(Player c, boolean bot) {
if (bot) { if (bot) {
return client.getPlayerAssistant().getLevelForXP(client.playerXP[client.playerHitpoints]) * 3; return c.getPlayerAssistant().getLevelForXP(c.playerXP[c.playerHitpoints]) * 3;
} else { } else {
return client.getPlayerAssistant().getLevelForXP(client.playerXP[client.playerHitpoints]) * 2; return c.getPlayerAssistant().getLevelForXP(c.playerXP[c.playerHitpoints]) * 2;
} }
} }
@@ -25,20 +25,20 @@ public class Swarm {
* *
* @param c * @param c
*/ */
public static void spawnSwarm(Client client) { public static void spawnSwarm(Player c) {
NpcHandler.spawnNpc(client, // param NpcHandler.spawnNpc(c, // param
411, // npctype 411, // npctype
client.absX + Misc.random(1), // posX c.absX + Misc.random(1), // posX
client.absY + Misc.random(1), // posY c.absY + Misc.random(1), // posY
client.heightLevel, // height c.heightLevel, // height
0, // walkingtype 0, // walkingtype
1, // HP 1, // HP
2, // maxhit 2, // maxhit
checkStats(client, false), checkStats(c, false),
3 * client.combatLevel, // defence 3 * c.combatLevel, // defence
true, // attackplayer true, // attackplayer
false); // headicon false); // headicon
client.autoRet = 0; c.autoRet = 0;
} }
/** /**
@@ -0,0 +1,35 @@
package com.rebotted.game.content.randomevents;
import com.rebotted.game.npcs.NpcHandler;
import com.rebotted.game.players.Player;
import com.rebotted.util.Misc;
public class TreeSpirit {
private static int[][] treeSpirit = {
// combat, combat 2, npcid, hitpoints, levels
{ 3, 10, 438, 28, 1 }, { 11, 20, 439, 36, 1 },
{ 21, 40, 440, 57, 3 }, { 61, 90, 441, 90, 4 },
{ 91, 110, 442, 130, 5 }, { 111, 138, 443, 160, 7 }, };
private static int checkStats(Player p) {
return p.getPlayerAssistant().getLevelForXP(p.playerXP[p.playerHitpoints]) * 2;
}
public static void spawnTreeSpirit(Player p) {
for (int[] element : treeSpirit) {
if (p.treeSpiritSpawned == false) {
if (p.combatLevel >= element[0] && p.combatLevel <= element[1]) {
NpcHandler.spawnNpc(p, element[2], p.absX + Misc.random(1),
p.absY + Misc.random(1), p.heightLevel, 0, element[3],
element[4], checkStats(p), p.playerLevel[p.playerDefence] * 2, true,
false);
NpcHandler.npcs[element[2]]
.forceChat("Leave these woods and never return!");
p.treeSpiritSpawned = true;
p.randomActions = 0;
}
}
}
}
}
@@ -1,8 +1,8 @@
package redone.game.content.randomevents; package com.rebotted.game.content.randomevents;
import redone.game.npcs.NpcHandler; import com.rebotted.game.npcs.NpcHandler;
import redone.game.players.Client; import com.rebotted.game.players.Player;
import redone.util.Misc; import com.rebotted.util.Misc;
public class Zombie { public class Zombie {
@@ -11,7 +11,7 @@ public class Zombie {
{ 61, 90, 422, 90, 8, 40, 40 }, { 91, 110, 423, 130, 10, 50, 50 }, { 61, 90, 422, 90, 8, 40, 40 }, { 91, 110, 423, 130, 10, 50, 50 },
{ 111, 138, 424, 160, 12, 60, 60 } }; { 111, 138, 424, 160, 12, 60, 60 } };
public static void spawnZombie(Client c) { public static void spawnZombie(Player c) {
for (int[] element : zombie) { for (int[] element : zombie) {
if (c.zombieSpawned == false) { if (c.zombieSpawned == false) {
if (c.combatLevel >= element[0] && c.combatLevel <= element[1]) { if (c.combatLevel >= element[0] && c.combatLevel <= element[1]) {
@@ -1,6 +1,6 @@
package redone.game.content.skills; package com.rebotted.game.content.skills;
import redone.game.players.Client; import com.rebotted.game.players.Client;
/** /**
* Created by IntelliJ IDEA. User: vayken Date: 21/12/11 Time: 13:55 To change * Created by IntelliJ IDEA. User: vayken Date: 21/12/11 Time: 13:55 To change
@@ -16,15 +16,15 @@ public class Menus {
} }
public static void display4Item(Client player, int i1, int i2, int i3, int i4, String s1, String s2, String s3, String s4) { public static void display4Item(Client player, int i1, int i2, int i3, int i4, String s1, String s2, String s3, String s4) {
player.getPlayerAssistant().sendItemOnInterface(8902, 250, i1); player.getPacketSender().sendItemOnInterface(8902, 250, i1);
player.getPlayerAssistant().sendItemOnInterface(8903, 150, i2); player.getPacketSender().sendItemOnInterface(8903, 150, i2);
player.getPlayerAssistant().sendItemOnInterface(8904, 200, i3); player.getPacketSender().sendItemOnInterface(8904, 200, i3);
player.getPlayerAssistant().sendItemOnInterface(8905, 250, i4); player.getPacketSender().sendItemOnInterface(8905, 250, i4);
player.getPlayerAssistant().sendFrame126(s1, 8909); player.getPacketSender().sendFrame126(s1, 8909);
player.getPlayerAssistant().sendFrame126(s2, 8913); player.getPacketSender().sendFrame126(s2, 8913);
player.getPlayerAssistant().sendFrame126(s3, 8917); player.getPacketSender().sendFrame126(s3, 8917);
player.getPlayerAssistant().sendFrame126(s4, 8921); player.getPacketSender().sendFrame126(s4, 8921);
player.getPlayerAssistant().sendChatInterface(8899); player.getPacketSender().sendChatInterface(8899);
} }
public static String determineAorAn(String nextWord) { public static String determineAorAn(String nextWord) {
@@ -0,0 +1,187 @@
package com.rebotted.game.content.skills;
import com.rebotted.event.CycleEventHandler;
import com.rebotted.game.content.skills.cooking.Cooking;
import com.rebotted.game.content.skills.core.Fishing;
import com.rebotted.game.content.skills.core.Mining;
import com.rebotted.game.content.skills.core.Woodcutting;
import com.rebotted.game.content.skills.herblore.Herblore;
import com.rebotted.game.content.skills.smithing.Smelting;
import com.rebotted.game.items.ItemAssistant;
import com.rebotted.game.players.Player;
/**
* Skillhandler
* @author Andrew (I'm A Boss on Rune-Server, Mr Extremez on Moparscape & Runelocus)
*/
public class SkillHandler {
public static final int SKILLING_EXP = 1;
public static boolean view190 = false;
private static long lastAction = 0;
public static boolean[] isSkilling = new boolean[25];
public static long lastSkillingAction;
public static boolean FISHING = true, AGILITY = true, COOKING = true,
FIREMAKING = true, HERBLORE = true, MINING = true,
RUNECRAFTING = true, THIEVING = true, WOODCUTTING = true,
PRAYER = true, FLETCHING = true, CRAFTING = true, MAGIC = true,
FARMING = false, SLAYER = true, SMITHING = true;
public static boolean isSkilling(Player player) {
if (player.playerSkilling[10] || player.playerStun || player.playerSkilling[12]
|| player.playerIsFletching || player.isFletching || player.playerIsCooking
|| player.isMining || player.isWoodcutting || player.isSmithing
|| player.isSmelting || player.isSpinning || player.isPotionMaking
|| player.isPotCrafting || player.isFiremaking
|| player.playerSkilling[player.playerHerblore] == true
|| player.playerSkilling[13]) {
return true;
}
return false;
}
public static void resetItemOnNpc(Player player) {
if (player.isMining) {// mining
Mining.resetMining(player);
} else if (player.playerIsFletching == true) {// fletching
player.playerIsFletching = false;
} else if (player.playerIsCooking) {// cooking
Cooking.resetCooking(player);
} else if (player.isSmithing) {// smithing
player.isSmithing = false;
} else if (isSkilling[12]) {// crafting
isSkilling[12] = false;
} else if (player.isSmelting) {
player.isSmelting = false;
} else if (player.isCrafting == true) {
player.isCrafting = false;
} else if (player.isPotionMaking) {// herblore
Herblore.resetHerblore(player);
} else if (player.isWoodcutting) {// woodcutting
Woodcutting.stopWoodcutting(player);
} else if (player.isSpinning) {// spinning
player.isSpinning = false;
} else if (player.isPotCrafting == true) {// pot crafting
player.isPotCrafting = false;
} else if (player.playerIsCooking) {// cooking
Cooking.resetCooking(player);
} else if (player.playerSkilling[13]) {// smelting
Smelting.resetSmelting(player);
}
}
public static void resetSkills(Player player) {// call when walking, dropping,
// picking up, leveling up
if (player.playerSkilling[10]) {// fishing
Fishing.resetFishing(player);
} else if (player.isMining) {// mining
Mining.resetMining(player);
} else if (player.playerIsFletching == true) {// fletching
player.playerIsFletching = false;
} else if (player.playerIsCooking) {// cooking
Cooking.resetCooking(player);
} else if (player.isSmithing) {// smithing
player.isSmithing = false;
} else if (isSkilling[12]) {// crafting
isSkilling[12] = false;
} else if (player.isSmelting) {
player.isSmelting = false;
} else if (player.isCrafting == true) {
player.isCrafting = false;
} else if (player.isPotionMaking) {// herblore
Herblore.resetHerblore(player);
} else if (player.isWoodcutting) {// woodcutting
Woodcutting.stopWoodcutting(player);
} else if (player.isSpinning) {// spinning
player.isSpinning = false;
} else if (player.isPotCrafting == true) {// pot crafting
player.isPotCrafting = false;
}
}
public static boolean canDoAction(int timer) {
if (System.currentTimeMillis() >= lastAction) {
lastAction = System.currentTimeMillis() + timer;
return true;
}
return false;
}
public static boolean membersOnly(Player c) {
if (c.membership == false) {
c.getPacketSender()
.sendMessage("This is a members only skill.");
return false;
}
return true;
}
public static boolean noInventorySpace(Player c, String skill) {
if (c.getItemAssistant().freeSlots() == 0) {
c.getPacketSender().sendMessage(
"You don't have enough inventory space to continue "
+ skill + "!");
return false;
}
return true;
}
public static void deleteTime(Player c) {
c.doAmount--;
}
public static void stopEvents(Player player, int eventId) {
CycleEventHandler.getSingleton().stopEvents(player, eventId);
}
public static void send1Item(Player c, int itemId) {
c.getPacketSender().sendFrame246(1746, view190 ? 190 : 150, itemId);
c.getPacketSender().sendFrame126(
getLine(c) + "" + ItemAssistant.getItemName(itemId) + "", 2799);
c.getPacketSender().sendChatInterface(4429);
}
public static boolean playerHasItem(Player c, String itemName,
String skill, int itemID) {
if (!c.getItemAssistant().playerHasItem(itemID, 1)) {
c.getPacketSender().sendMessage(
"You dont have any " + itemName + " to continue " + skill
+ "!");
c.getDialogueHandler().sendStatement(
"You dont have any " + itemID + " to continue " + skill
+ "!");
return false;
}
return true;
}
public static void resetPlayerSkillVariables(Player c) {
for (int i = 0; i < 20; i++) {
if (c.playerSkilling[i]) {
for (int l = 0; l < 15; l++) {
c.playerSkillProp[i][l] = -1;
}
}
}
}
public static boolean hasRequiredLevel(final Player c, int id, int lvlReq,
String skill, String event) {
if (c.playerLevel[id] < lvlReq) {
c.getPacketSender().sendMessage(
"You don't have a high enough " + skill + " level to "
+ event + ".");
return false;
}
return true;
}
public static String getLine(Player c) {
return c.below459 ? "\\n\\n\\n\\n" : "\\n\\n\\n\\n\\n";
}
}
@@ -1,17 +1,17 @@
package redone.game.content.skills; package com.rebotted.game.content.skills;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class SkillInterfaces { public class SkillInterfaces {
private final Client c; private final Player c;
public int selected; public int selected;
private final int item[] = new int[40]; private final int item[] = new int[40];
public SkillInterfaces(Client client) { public SkillInterfaces(Player player) {
c = client; c = player;
} }
/* /*
@@ -79,26 +79,26 @@ public class SkillInterfaces {
String op7, String op8, String op9, String op10, String op11, String op7, String op8, String op9, String op10, String op11,
String op12, String op13) { String op12, String op13) {
if (SkillHandler.isSkilling(c)) { if (SkillHandler.isSkilling(c)) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You can't open this while skilling!"); "You can't open this while skilling!");
return; return;
} }
c.getPlayerAssistant().sendFrame126(title, 8716); c.getPacketSender().sendFrame126(title, 8716);
c.getPlayerAssistant().sendFrame126(currentTab, 8849); c.getPacketSender().sendFrame126(currentTab, 8849);
c.getPlayerAssistant().sendFrame126(op1, 8846); c.getPacketSender().sendFrame126(op1, 8846);
c.getPlayerAssistant().sendFrame126(op2, 8823); c.getPacketSender().sendFrame126(op2, 8823);
c.getPlayerAssistant().sendFrame126(op3, 8824); c.getPacketSender().sendFrame126(op3, 8824);
c.getPlayerAssistant().sendFrame126(op4, 8827); c.getPacketSender().sendFrame126(op4, 8827);
c.getPlayerAssistant().sendFrame126(op5, 8837); c.getPacketSender().sendFrame126(op5, 8837);
c.getPlayerAssistant().sendFrame126(op6, 8840); c.getPacketSender().sendFrame126(op6, 8840);
c.getPlayerAssistant().sendFrame126(op7, 8843); c.getPacketSender().sendFrame126(op7, 8843);
c.getPlayerAssistant().sendFrame126(op8, 8859); c.getPacketSender().sendFrame126(op8, 8859);
c.getPlayerAssistant().sendFrame126(op9, 8862); c.getPacketSender().sendFrame126(op9, 8862);
c.getPlayerAssistant().sendFrame126(op10, 8865); c.getPacketSender().sendFrame126(op10, 8865);
c.getPlayerAssistant().sendFrame126(op11, 15303); c.getPacketSender().sendFrame126(op11, 15303);
c.getPlayerAssistant().sendFrame126(op12, 15306); c.getPacketSender().sendFrame126(op12, 15306);
c.getPlayerAssistant().sendFrame126(op13, 15309); c.getPacketSender().sendFrame126(op13, 15309);
c.getPlayerAssistant().showInterface(8714); c.getPacketSender().showInterface(8714);
} }
/** /**
@@ -115,8 +115,8 @@ public class SkillInterfaces {
if (SkillHandler.isSkilling(c)) { if (SkillHandler.isSkilling(c)) {
return; return;
} }
c.getPlayerAssistant().sendFrame126(lines, 8760 + lineCounter); c.getPacketSender().sendFrame126(lines, 8760 + lineCounter);
c.getPlayerAssistant().sendFrame126(levels, 8720 + lineCounter); c.getPacketSender().sendFrame126(levels, 8720 + lineCounter);
item[0 + lineCounter] = ids; item[0 + lineCounter] = ids;
writeInterfaceItem(item); writeInterfaceItem(item);
} }
@@ -129,7 +129,7 @@ public class SkillInterfaces {
item[i] = 0; item[i] = 0;
} }
for (int i = 8720; i < 8799; i++) { for (int i = 8720; i < 8799; i++) {
c.getPlayerAssistant().sendFrame126("", i); c.getPacketSender().sendFrame126("", i);
} }
} }
@@ -1,6 +1,6 @@
package redone.game.content.skills; package com.rebotted.game.content.skills;
import redone.game.players.Client; import com.rebotted.game.players.Client;
/** /**
* @author Sanity * @author Sanity
@@ -62,14 +62,14 @@ public class SkillMenu {
removeSidebars(c); removeSidebars(c);
writeItems(c, skillType); writeItems(c, skillType);
writeText(c, skillType); writeText(c, skillType);
c.getPlayerAssistant().showInterface(INTERFACE_ID); c.getPacketSender().showInterface(INTERFACE_ID);
} }
private static void removeSidebars(Client c) { private static void removeSidebars(Client c) {
int[] temp = { 8849, 8846, 8823, 8824, 8827, 8837, 8840, 8843, 8859, int[] temp = { 8849, 8846, 8823, 8824, 8827, 8837, 8840, 8843, 8859,
8862, 8865, 15303, 15306, 15309 }; 8862, 8865, 15303, 15306, 15309 };
for (int element : temp) { for (int element : temp) {
c.getPlayerAssistant().sendFrame126("", element); c.getPacketSender().sendFrame126("", element);
} }
} }
@@ -92,21 +92,21 @@ public class SkillMenu {
} }
private static void writeText(Client c, int skillType) { private static void writeText(Client c, int skillType) {
c.getPlayerAssistant().sendFrame126(SKILLS[skillType], TITLE_LINE); c.getPacketSender().sendFrame126(SKILLS[skillType], TITLE_LINE);
for (int j = 0; j < LEVELS[skillType].length; j++) { for (int j = 0; j < LEVELS[skillType].length; j++) {
c.getPlayerAssistant().sendFrame126(LEVELS[skillType][j], c.getPacketSender().sendFrame126(LEVELS[skillType][j],
LEVEL_LINE + j); LEVEL_LINE + j);
} }
for (int j = 0; j < DESCRIPTION[skillType].length; j++) { for (int j = 0; j < DESCRIPTION[skillType].length; j++) {
c.getPlayerAssistant().sendFrame126(DESCRIPTION[skillType][j], c.getPacketSender().sendFrame126(DESCRIPTION[skillType][j],
TEXT_LINE + j); TEXT_LINE + j);
} }
for (int j = DESCRIPTION[skillType].length; j < 30; j++) { for (int j = DESCRIPTION[skillType].length; j < 30; j++) {
c.getPlayerAssistant().sendFrame126("", LEVEL_LINE + j); c.getPacketSender().sendFrame126("", LEVEL_LINE + j);
} }
for (int j = LEVELS[skillType].length; j < 30; j++) { for (int j = LEVELS[skillType].length; j < 30; j++) {
c.getPlayerAssistant().sendFrame126("", TEXT_LINE + j); c.getPacketSender().sendFrame126("", TEXT_LINE + j);
} }
} }
} }
@@ -1,24 +1,18 @@
package redone.game.content.skills.agility; package com.rebotted.game.content.skills.agility;
import redone.Constants; import com.rebotted.event.CycleEvent;
import redone.event.CycleEvent; import com.rebotted.event.CycleEventContainer;
import redone.event.CycleEventContainer; import com.rebotted.event.CycleEventHandler;
import redone.event.CycleEventHandler; import com.rebotted.game.players.Player;
import redone.game.players.Client; import com.rebotted.game.players.PlayerHandler;
import redone.game.players.Player; import com.rebotted.util.Misc;
import redone.game.players.PlayerHandler;
import redone.util.Misc;
public class Agility { public class Agility {
/** Player c;
* @author Aintaro
*/
Client c; public Agility(Player player) {
this.c = player;
public Agility(Client c) {
this.c = c;
} }
public boolean[] agilityProgress = new boolean[6]; public boolean[] agilityProgress = new boolean[6];
@@ -61,11 +55,11 @@ public class Agility {
c.isRunning2 = true; c.isRunning2 = true;
} }
private static void setAnimationBack(Client c) { private static void setAnimationBack(Player player) {
c.isRunning2 = true; player.isRunning2 = true;
c.getPlayerAssistant().sendConfig(173, 1); player.getPacketSender().sendConfig(173, 1);
c.playerWalkIndex = 0x333; player.playerWalkIndex = 0x333;
c.getPlayerAssistant().requestUpdates(); player.getPlayerAssistant().requestUpdates();
} }
/** /**
@@ -80,22 +74,22 @@ public class Agility {
destinationReached(EndX, EndY, endingAnimation); destinationReached(EndX, EndY, endingAnimation);
} }
public static void brimhavenSkippingStone(final Client c) { public static void brimhavenSkippingStone(final Player player) {
if (c.stopPlayerPacket) { if (player.stopPlayerPacket) {
return; return;
} }
if (c.playerLevel[c.playerAgility] < 12) { if (player.playerLevel[player.playerAgility] < 12) {
c.getDialogueHandler().sendStatement("You need 12 agility to use these stepping stones"); player.getDialogueHandler().sendStatement("You need 12 agility to use these stepping stones");
c.nextChat = 0; player.nextChat = 0;
return; return;
} }
c.stopPlayerPacket = true; player.stopPlayerPacket = true;
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() { CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
@Override @Override
public void execute(CycleEventContainer container) { public void execute(CycleEventContainer container) {
c.startAnimation(769); player.startAnimation(769);
if (c.absX <= 2997) { if (player.absX <= 2997) {
container.stop(); container.stop();
} }
} }
@@ -105,20 +99,20 @@ public class Agility {
// c.getPlayerAssistant().addSkillXP(100, c.playerAgility); // c.getPlayerAssistant().addSkillXP(100, c.playerAgility);
} }
}, 1); }, 1);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() { CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
@Override @Override
public void execute(CycleEventContainer container) { public void execute(CycleEventContainer container) {
if (c.absX >= 2648) { if (player.absX >= 2648) {
c.teleportToX = c.absX - 2; player.teleportToX = player.absX - 2;
c.teleportToY = c.absY - 5; player.teleportToY = player.absY - 5;
if (c.absX <= 2997) { if (player.absX <= 2997) {
container.stop(); container.stop();
} }
} else if (c.absX <= 2648) { } else if (player.absX <= 2648) {
c.teleportToX = c.absX + 2; player.teleportToX = player.absX + 2;
c.teleportToY = c.absY + 5; player.teleportToY = player.absY + 5;
if (c.absX >= 2645) { if (player.absX >= 2645) {
container.stop(); container.stop();
} }
} }
@@ -128,8 +122,8 @@ public class Agility {
@Override @Override
public void stop() { public void stop() {
// c.getPlayerAssistant().addSkillXP(300, c.playerAgility); // c.getPlayerAssistant().addSkillXP(300, c.playerAgility);
setAnimationBack(c); setAnimationBack(player);
c.stopPlayerPacket = false; player.stopPlayerPacket = false;
} }
}, 3); }, 3);
} }
@@ -503,7 +497,7 @@ public class Agility {
public void lapFinished() { public void lapFinished() {
if (agilityProgress[5]) { if (agilityProgress[5]) {
c.getPlayerAssistant().addSkillXP(lapBonus, c.playerAgility); c.getPlayerAssistant().addSkillXP(lapBonus, c.playerAgility);
c.getActionSender().sendMessage("You received some bonus experience for completing the track!"); c.getPacketSender().sendMessage("You received some bonus experience for completing the track!");
resetAgilityProgress(); resetAgilityProgress();
} }
} }
@@ -653,7 +647,7 @@ public class Agility {
public boolean checkLevel(int objectId) { public boolean checkLevel(int objectId) {
if (getLevelRequired(objectId) > c.playerLevel[c.playerAgility]) { if (getLevelRequired(objectId) > c.playerLevel[c.playerAgility]) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You need atleast " + getLevelRequired(objectId) "You need atleast " + getLevelRequired(objectId)
+ " agility to do this."); + " agility to do this.");
return true; return true;
@@ -686,8 +680,8 @@ public class Agility {
} }
for (Player player : PlayerHandler.players) { for (Player player : PlayerHandler.players) {
if (player != null) { if (player != null) {
Client c = (Client) player; Player c = (Player) player;
c.getActionSender().createObjectHints(newObjectX, c.getPacketSender().createObjectHints(newObjectX,
newObjectY, 130, 2); newObjectY, 130, 2);
System.out.println("Updated"); System.out.println("Updated");
} }
@@ -0,0 +1,252 @@
package com.rebotted.game.content.skills.agility;
import com.rebotted.game.players.Client;
import com.rebotted.game.players.Player;
/**
* Agility Shortcuts
* @author Andrew (I'm A Boss on Rune-Server, Mr Extremez on Moparscape & Runelocus)
*/
public class AgilityShortcut {
private static final int WALK = 1, MOVE = 2, AGILITY = 3;
private static void handleAgility(Player player, int x, int y, int levelReq, int anim, int walk, String message) {
if (player.playerLevel[player.playerAgility] < levelReq) {
player.getPacketSender().sendMessage("You need " + levelReq + " agility to use this shortcut.");
return;
}
switch (walk) {
case 1:
player.getPlayerAssistant().walkTo(x, y);
break;
case 2:
player.getPlayerAssistant().movePlayer(x, y, player.heightLevel);
break;
case 3:
player.getAgility().walk(x, y, anim, -1);
break;
}
if (anim != 0 && anim != -1) {
player.startAnimation(anim);
}
player.getPacketSender().sendMessage(message);
}
public static void processAgilityShortcut(Player player) {
switch (player.objectId) {
case 993:
if (player.absY == 3435) {
handleAgility(player, 2761, 3438, 1, 3067, MOVE, "You jump over the stile.");
} else if (player.absY == 3438) {
handleAgility(player, 2761, 3435, 1, 3067, MOVE, "You jump over the stile.");
}
break;
case 9326:
if (player.absX == 2773) {
handleAgility(player, 2, 0, 81, 3067, WALK, "You jump over the strange floor.");
} else if (player.absX == 2775) {
handleAgility(player, -2, 0, 81, 3067, WALK, "You jump over the strange floor.");
}
break;
case 9321:
if (player.absX == 2735) {
handleAgility(player, -5, 0, 62, 2240, WALK, "You squeeze through the crevice.");
} else if (player.absX == 2730) {
handleAgility(player, 5, 0, 62, 2240, WALK, "You squeeze through the crevice.");
}
break;
case 12127:
if (player.absY == 4403) {
handleAgility(player, 0, -2, 66, 2240, WALK,
"You squeeze past the jutted wall.");
} else if (player.absY == 4401) {
handleAgility(player, 0, 2, 66, 2240, WALK,
"You squeeze past the jutted wall.");
} else if (player.absY == 4404) {
handleAgility(player, 0, -2, 46, 2240, WALK,
"You squeeze past the jutted wall.");
} else if (player.absY == 4402) {
handleAgility(player, 0, 2, 46, 2240, WALK,
"You squeeze past the jutted wall.");
}
break;
case 3933:
if (player.absY == 3232) {
handleAgility(player, 0, 7, 85, 762, WALK,
"You pass through the agility shortcut.");
} else if (player.absY == 3239) {
handleAgility(player, 0, -7, 85, 762, WALK,
"You pass through the agility shortcut.");
}
break;
case 4615:
case 4616:
if (player.absX == 2595) {
handleAgility(player, 2599, player.absY, 1, 3067, MOVE,
"You pass through the agility shortcut.");
} else if (player.absX == 2599) {
handleAgility(player, 2595, player.absY, 1, 3067, MOVE,
"You pass through the agility shortcut.");
}
break;
case 11844:
if (player.absX == 2936) {
handleAgility(player, -2, 0, 5, -1, WALK,
"You pass through the agility shortcut.");
} else if (player.absX == 2934) {
handleAgility(player, 2, 0, 5, -1, WALK,
"You pass through the agility shortcut.");
}
break;
case 5090:
if (player.absX == 2687) {// 2682, 9506
handleAgility(player, -5, 0, 5, 762, WALK,
"You walk across the log balance.");
}
break;
case 5088:
if (player.absX == 2682) {// 2867, 9506
handleAgility(player, 5, 0, 5, 762, WALK,
"You walk across the log balance.");
}
break;
case 14922:
if (player.objectX == 2344 && player.objectY == 3651) {
handleAgility(player, 2344, 3655, 1, 762, MOVE,
"You crawl through the hole.");
} else if (player.objectX == 2344 && player.objectY == 3654) {
handleAgility(player, 2344, 3650, 1, 762, MOVE,
"You crawl through the hole.");
}
break;
case 9330:
if (player.objectX == 2601 && player.objectY == 3336) {
handleAgility(player, -4, 0, 33, player.getAgility()
.getAnimation(Agility.PIPES_EMOTE), AGILITY,
"You pass through the agility shortcut.");
}
case 5100:
if (player.absY == 9566) {
handleAgility(player, 2655, 9573, 17, 762, MOVE,
"You pass through the agility shortcut.");
} else if (player.absY == 9573) {
handleAgility(player, 2655, 9573, 17, 762, MOVE,
"You pass through the agility shortcut.");
}
break;
case 9328:
if (player.objectX == 2599 && player.objectY == 3336) {
handleAgility(player, 4, 0, 33, player.getAgility()
.getAnimation(Agility.PIPES_EMOTE), AGILITY,
"You pass through the agility shortcut.");
}
break;
case 9293:
if (player.absX < player.objectX) {
handleAgility(player, 2892, 9799, 70, player.getAgility()
.getAnimation(Agility.PIPES_EMOTE), MOVE,
"You pass through the agility shortcut.");
} else {
handleAgility(player, 2886, 9799, 70, player.getAgility()
.getAnimation(Agility.PIPES_EMOTE), MOVE,
"You pass through the agility shortcut.");
}
break;
case 9294:
if (player.absX < player.objectX) {
player.getPlayerAssistant().movePlayer(player.objectX + 1,
player.absY, 0);
handleAgility(player, 2880, 9713, 80, 3067, MOVE,
"You jump over the strange wall.");
} else if (player.absX > player.objectX) {
handleAgility(player, 2878, 9713, 80, 3067, MOVE,
"You jump over the strange wall.");
}
break;
case 9302:
if (player.absY == 3112) {
handleAgility(player, 2575, 3107, 16, 844, MOVE,
"You pass through the agility shortcut.");
}
break;
case 9301:
if (player.absY == 3107) {
handleAgility(player, 2575, 3112, 16, 844, MOVE,
"You pass through the agility shortcut.");
}
break;
case 9309:
if (player.absY == 3309) {
handleAgility(player, 2948, 3313, 26, 844, MOVE,
"You pass through the agility shortcut.");
}
break;
case 9310:
if (player.absY == 3313) {
handleAgility(player, 2948, 3309, 26, 844, MOVE,
"You pass through the agility shortcut.");
}
break;
case 2322:
if (player.absX == 2709) {
handleAgility(player, 2704, 3209, 10, 3067, MOVE,
"You pass through the agility shortcut.");
}
break;
case 2323:
if (player.absX == 2705) {
handleAgility(player, 2709, 3205, 10, 3067, MOVE,
"You pass through the agility shortcut.");
}
break;
case 2332:
if (player.absX == 2906) {
handleAgility(player, 4, 0, 1, 762, WALK,
"You pass through the agility shortcut.");
} else if (player.absX == 2910) {
handleAgility(player, -4, 0, 1, 762, WALK,
"You pass through the agility shortcut.");
}
break;
case 3067:
if (player.absX == 2639) {
handleAgility(player, -1, 0, 1, 3067, WALK,
"You pass through the agility shortcut.");
} else if (player.absX == 2638) {
handleAgility(player, -1, 0, 1, 3067, WALK,
"You pass through the agility shortcut.");
}
break;
case 2618:
if (player.absY == 3492) {
handleAgility(player, 0, +2, 1, 3067, WALK,
"You jump over the broken fence.");
} else if (player.absY == 3494) {
handleAgility(player, -0, -2, 1, 3067, WALK,
"You jump over the broken fence.");
}
break;
case 5110:
Agility.brimhavenSkippingStone(player);
break;
case 5111:
Agility.brimhavenSkippingStone(player);
break;
case 2296:
if (player.absX == 2603) {
handleAgility(player, -5, 0, 1, -1, WALK,
"You pass through the agility shortcut.");
} else if (player.absX == 2598) {
handleAgility(player, 5, 0, 1, -1, WALK,
"You pass through the agility shortcut.");
}
break;
}
}
}
@@ -1,16 +1,16 @@
package redone.game.content.skills.agility; package com.rebotted.game.content.skills.agility;
import redone.event.CycleEvent; import com.rebotted.event.CycleEvent;
import redone.event.CycleEventContainer; import com.rebotted.event.CycleEventContainer;
import redone.event.CycleEventHandler; import com.rebotted.event.CycleEventHandler;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class ApeAtollAgility { public class ApeAtollAgility {
private final Client c; private final Player c;
public ApeAtollAgility(Client c) { public ApeAtollAgility(Player player) {
this.c = c; this.c = player;
} }
public static final int APE_ATOLL_STEPPING_STONES_OBJECT = 12568, public static final int APE_ATOLL_STEPPING_STONES_OBJECT = 12568,
@@ -25,7 +25,7 @@ public class ApeAtollAgility {
switch (objectId) { switch (objectId) {
case APE_ATOLL_STEPPING_STONES_OBJECT: case APE_ATOLL_STEPPING_STONES_OBJECT:
if (c.npcId2 != NINJA_MONKEY_NPC) { if (c.npcId2 != NINJA_MONKEY_NPC) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You can't do that! You aren't a monkey."); "You can't do that! You aren't a monkey.");
return false; return false;
} }
@@ -33,7 +33,7 @@ public class ApeAtollAgility {
return false; return false;
} }
if (c.getAgility().hotSpot(2755, 2742)) { if (c.getAgility().hotSpot(2755, 2742)) {
c.getActionSender().sendMessage("You jump the step stone."); c.getPacketSender().sendMessage("You jump the step stone.");
c.getAgility().walk(-2, 0, c.getAgility().walk(-2, 0,
c.getAgility().getAnimation(objectId), -1); c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP( c.getPlayerAssistant().addSkillXP(
@@ -45,7 +45,7 @@ public class ApeAtollAgility {
case APE_ATOLL_TROPICAL_TREE_OBJECT: case APE_ATOLL_TROPICAL_TREE_OBJECT:
if (c.npcId2 != NINJA_MONKEY_NPC) { if (c.npcId2 != NINJA_MONKEY_NPC) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You can't do that! You aren't a monkey."); "You can't do that! You aren't a monkey.");
return false; return false;
} }
@@ -53,7 +53,7 @@ public class ApeAtollAgility {
return false; return false;
} }
if (c.getAgility().hotSpot(2753, 2742) && c.heightLevel == 0) { if (c.getAgility().hotSpot(2753, 2742) && c.heightLevel == 0) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You managed to climb up the Tree."); "You managed to climb up the Tree.");
c.getAgility().climbUpTropicalTree(c.getX(), c.getY(), 2); c.getAgility().climbUpTropicalTree(c.getX(), c.getY(), 2);
c.getPlayerAssistant().addSkillXP( c.getPlayerAssistant().addSkillXP(
@@ -66,7 +66,7 @@ public class ApeAtollAgility {
case APE_ATOLL_MONKEYBARS_OBJECT: case APE_ATOLL_MONKEYBARS_OBJECT:
if (c.npcId2 != NINJA_MONKEY_NPC) { if (c.npcId2 != NINJA_MONKEY_NPC) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You can't do that! You aren't a monkey."); "You can't do that! You aren't a monkey.");
return false; return false;
} }
@@ -74,7 +74,7 @@ public class ApeAtollAgility {
return false; return false;
} }
if (c.getAgility().hotSpot(2752, 2741)) { if (c.getAgility().hotSpot(2752, 2741)) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You swing yourself to the other side"); "You swing yourself to the other side");
c.getAgility().moveHeight = 0; c.getAgility().moveHeight = 0;
c.getAgility().walk(-5, 0, c.getAgility().walk(-5, 0,
@@ -89,7 +89,7 @@ public class ApeAtollAgility {
case APE_ATOLL_SKULL_SLOPE_OBJECT: case APE_ATOLL_SKULL_SLOPE_OBJECT:
if (c.npcId2 != NINJA_MONKEY_NPC) { if (c.npcId2 != NINJA_MONKEY_NPC) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You can't do that! You aren't a monkey."); "You can't do that! You aren't a monkey.");
return false; return false;
} }
@@ -101,7 +101,7 @@ public class ApeAtollAgility {
c.getAgility().getAnimation(objectId), -1); c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP( c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility); c.getAgility().getXp(objectId), c.playerAgility);
c.getActionSender().sendMessage("You climb your way up"); c.getPacketSender().sendMessage("You climb your way up");
if (c.getAgility().agilityProgress[2] == true) { if (c.getAgility().agilityProgress[2] == true) {
c.getAgility().agilityProgress[3] = true; c.getAgility().agilityProgress[3] = true;
} }
@@ -110,7 +110,7 @@ public class ApeAtollAgility {
case APE_ATOLL_SWINGROPE_OBJECT: case APE_ATOLL_SWINGROPE_OBJECT:
if (c.npcId2 != NINJA_MONKEY_NPC) { if (c.npcId2 != NINJA_MONKEY_NPC) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You can't do that! You aren't a monkey."); "You can't do that! You aren't a monkey.");
return false; return false;
} }
@@ -133,7 +133,7 @@ public class ApeAtollAgility {
return; return;
} }
c.getPlayerAssistant().movePlayer(2756, 2731, 0); c.getPlayerAssistant().movePlayer(2756, 2731, 0);
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You swing yourself to the other side"); "You swing yourself to the other side");
container.stop(); container.stop();
} }
@@ -147,7 +147,7 @@ public class ApeAtollAgility {
case APE_ATOLL_BIG_TROPICAL_TREE_OBJECT: case APE_ATOLL_BIG_TROPICAL_TREE_OBJECT:
if (c.npcId2 != NINJA_MONKEY_NPC) { if (c.npcId2 != NINJA_MONKEY_NPC) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You can't do that! You aren't a monkey."); "You can't do that! You aren't a monkey.");
return false; return false;
} }
@@ -1,16 +1,16 @@
package redone.game.content.skills.agility; package com.rebotted.game.content.skills.agility;
import redone.event.CycleEvent; import com.rebotted.event.CycleEvent;
import redone.event.CycleEventContainer; import com.rebotted.event.CycleEventContainer;
import redone.event.CycleEventHandler; import com.rebotted.event.CycleEventHandler;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class BarbarianAgility { public class BarbarianAgility {
private final Client c; private final Player c;
public BarbarianAgility(Client c) { public BarbarianAgility(Player player) {
this.c = c; this.c = player;
} }
public static final int BARBARIAN_ROPE_SWING_OBJECT = 2282, public static final int BARBARIAN_ROPE_SWING_OBJECT = 2282,
@@ -76,7 +76,7 @@ public class BarbarianAgility {
c.getAgility().agilityProgress[2] = true; c.getAgility().agilityProgress[2] = true;
} }
} else { } else {
c.getActionSender().sendMessage("You can't climb the net from here!"); c.getPacketSender().sendMessage("You can't climb the net from here!");
return false; return false;
} }
return true; return true;
@@ -101,14 +101,14 @@ public class BarbarianAgility {
case BARBARIAN_LADDER_OBJECT: case BARBARIAN_LADDER_OBJECT:
if (c.playerLevel[c.playerAgility] < 35 && c.objectX != 2776 if (c.playerLevel[c.playerAgility] < 35 && c.objectX != 2776
&& c.objectY != 3121) { && c.objectY != 3121) {
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You need 35 agility to use this ladder."); "You need 35 agility to use this ladder.");
return false; return false;
} else if (c.objectX == 2776 && c.objectY == 3121) { } else if (c.objectX == 2776 && c.objectY == 3121) {
return true; return true;
} }
c.getAgility().climbDown(c.getX(), c.getY(), 0); c.getAgility().climbDown(c.getX(), c.getY(), 0);
c.getActionSender().sendMessage("You climb down."); c.getPacketSender().sendMessage("You climb down.");
if (c.getAgility().agilityProgress[3] == true) { if (c.getAgility().agilityProgress[3] == true) {
c.getAgility().agilityProgress[4] = true; c.getAgility().agilityProgress[4] = true;
} }
@@ -1,13 +1,13 @@
package redone.game.content.skills.agility; package com.rebotted.game.content.skills.agility;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class GnomeAgility { public class GnomeAgility {
private final Client c; private final Player c;
public GnomeAgility(Client c) { public GnomeAgility(Player player) {
this.c = c; this.c = player;
} }
private static long clickTimer = 0; private static long clickTimer = 0;
@@ -1,16 +1,16 @@
package redone.game.content.skills.agility; package com.rebotted.game.content.skills.agility;
import redone.event.CycleEvent; import com.rebotted.event.CycleEvent;
import redone.event.CycleEventContainer; import com.rebotted.event.CycleEventContainer;
import redone.event.CycleEventHandler; import com.rebotted.event.CycleEventHandler;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class PyramidAgility { public class PyramidAgility {
private final Client c; private final Player c;
public PyramidAgility(Client c) { public PyramidAgility(Player player) {
this.c = c; this.c = player;
} }
public static final int PYRAMID_STAIRCE_OBJECT = 10857, public static final int PYRAMID_STAIRCE_OBJECT = 10857,
@@ -18,9 +18,7 @@ public class PyramidAgility {
PYRAMID_GAP_OBJECT = 10863, PYRAMID_GAP_2 = 10885, PYRAMID_GAP_OBJECT = 10863, PYRAMID_GAP_2 = 10885,
PYRAMID_GAP_3 = 10859, PYRAMID_GAP_4 = 10883, PYRAMID_GAP_3 = 10859, PYRAMID_GAP_4 = 10883,
PYRAMID_GAP_5 = 10862, LEDGE = 10860, LEDGE_2 = 10886, PYRAMID_GAP_5 = 10862, LEDGE = 10860, LEDGE_2 = 10886,
LEDGE_3 = 10888, PYRAMID_ROCKS = 10852; // pyramid LEDGE_3 = 10888, PYRAMID_ROCKS = 10852;
// course
// objects
public boolean pyramidCourse(int objectId) { public boolean pyramidCourse(int objectId) {
switch (objectId) { switch (objectId) {
@@ -43,7 +41,7 @@ public class PyramidAgility {
c.getAgility().climbUp(c.getX(), c.getY() + 3, 3); c.getAgility().climbUp(c.getX(), c.getY() + 3, 3);
} else { } else {
c.getAgility().climbUp(c.getX(), c.getY() - 8, 0); c.getAgility().climbUp(c.getX(), c.getY() - 8, 0);
c.getActionSender() c.getPacketSender()
.sendMessage( .sendMessage(
"Congratulations you completed the pyramid course!"); "Congratulations you completed the pyramid course!");
} }
@@ -57,12 +55,12 @@ public class PyramidAgility {
if (c.absX == 3349) { if (c.absX == 3349) {
c.getAgility().walk(-6, 0, c.getAgility().walk(-6, 0,
c.getAgility().getAnimation(objectId), -1); c.getAgility().getAnimation(objectId), -1);
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You leave the agility pyramid"); "You leave the agility pyramid");
} else if (c.absX == 3343) { } else if (c.absX == 3343) {
c.getAgility() c.getAgility()
.walk(6, 0, c.getAgility().getAnimation(3043), -1); .walk(6, 0, c.getAgility().getAnimation(3043), -1);
c.getActionSender().sendMessage( c.getPacketSender().sendMessage(
"You enter the agility pyramid"); "You enter the agility pyramid");
} }
return true; return true;
@@ -1,16 +1,16 @@
package redone.game.content.skills.agility; package com.rebotted.game.content.skills.agility;
import redone.event.CycleEvent; import com.rebotted.event.CycleEvent;
import redone.event.CycleEventContainer; import com.rebotted.event.CycleEventContainer;
import redone.event.CycleEventHandler; import com.rebotted.event.CycleEventHandler;
import redone.game.players.Client; import com.rebotted.game.players.Player;
public class WerewolfAgility { public class WerewolfAgility {
private final Client c; private final Player c;
public WerewolfAgility(Client c) { public WerewolfAgility(Player player) {
this.c = c; this.c = player;
} }
public static final int WEREWOLF_STEPPING_STONE_OBJECT = 5138, public static final int WEREWOLF_STEPPING_STONE_OBJECT = 5138,
@@ -93,7 +93,7 @@ public class WerewolfAgility {
return; return;
} }
c.getPlayerAssistant().movePlayer(c.getX(), c.getY() + 1, 0); c.getPlayerAssistant().movePlayer(c.getX(), c.getY() + 1, 0);
c.getActionSender().sendMessage("You managed to jump over the hurdle."); c.getPacketSender().sendMessage("You managed to jump over the hurdle.");
container.stop(); container.stop();
} }
@Override @Override

Some files were not shown because too many files have changed in this diff Show More