Fix conflicts

This commit is contained in:
dginovker
2020-05-07 18:33:56 -04:00
parent b4371d3129
commit 3387cd5f07
28 changed files with 1115 additions and 1026 deletions
@@ -328,10 +328,11 @@ public class Specials {
case 29063:
if (player2.playerEquipment[player2.playerWeapon] == 1377) {
if (player2.getCombatAssistant().checkSpecAmount(1377)) {
if (player2.specAmount >= 5) {
player2.gfx0(246);
player2.forcedChat("Raarrrrrgggggghhhhhhh!");
player2.startAnimation(1056);
player2.specAmount -= 5;
player2.playerLevel[2] = player2.getLevelForXP(player2.playerXP[2]) + player2.getLevelForXP(player2.playerXP[2]) * 15 / 100;
player2.getPlayerAssistant().refreshSkill(2);
player2.getItemAssistant().updateSpecialBar();
@@ -213,20 +213,27 @@ public class Pickpocket extends SkillHandler {
}
return false;
}
public static void attemptPickpocket(final Player player, final int npcId) {
private static boolean canSteal(Player player, int npcId) {
if (System.currentTimeMillis() - player.lastThieve < 2000 || player.playerStun) {
return;
return false;
}
if (player.underAttackBy > 0 || player.underAttackBy2 > 0) {
player.getPacketSender().sendMessage("You can't pickpocket while in combat!");
return;
return false;
}
if (System.currentTimeMillis() - player.logoutDelay < 4000) {
return;
return false;
}
if (!THIEVING) {
player.getPacketSender().sendMessage("This skill is currently disabled.");
return false;
}
return true;
}
public static void attemptPickpocket(final Player player, final int npcId) {
if (!canSteal(player, npcId)) {
return;
}
for (final npcData n : npcData.values()) {
@@ -258,12 +265,12 @@ public class Pickpocket extends SkillHandler {
if (NpcHandler.npcs[i] != null) {
if (NpcHandler.npcs[i].npcType == npcId) {
if (player.goodDistance(player.absX, player.absY, NpcHandler.npcs[i].absX, NpcHandler.npcs[i].absY, 1) && player.heightLevel == NpcHandler.npcs[i].heightLevel) {
if (!NpcHandler.npcs[i].underAttack) {
NpcHandler.npcs[i].forceChat("What do you think you're doing?");
NpcHandler.npcs[i].facePlayer(player.playerId);
}
if (!NpcHandler.npcs[i].underAttack) {
NpcHandler.npcs[i].forceChat("What do you think you're doing?");
NpcHandler.npcs[i].facePlayer(player.playerId);
}
}
}
}
}
player.lastThieve = System.currentTimeMillis() + 5000;
@@ -314,4 +321,5 @@ public class Pickpocket extends SkillHandler {
}
}
}
}
}
@@ -7085,6 +7085,21 @@ public class DialogueHandler {
player.getDialogueHandler().sendPlayerChat(ChatEmotes.DEFAULT, "No thanks.");
player.getDialogueHandler().endDialogue();
break;
case 3574:
player.getDialogueHandler().sendNpcChat(player.talkingNpc, ChatEmotes.DEFAULT, "Hello there, would you like me to enchant a battlestaff", "for 40k coins for you?");
break;
case 3575:
player.getDialogueHandler().sendOption("Yes.", "No thanks.");
player.dialogueAction = 3575;
break;
case 3576:
player.getDialogueHandler().endDialogue();
player.getPacketSender().showInterface(205);
break;
case 3577:
player.getDialogueHandler().sendPlayerChat(ChatEmotes.HAPPY_JOYFUL, "No thanks.");
player.getDialogueHandler().endDialogue();
break;
}
}
@@ -478,6 +478,10 @@ public class DialogueOptions {
} else if (player.dialogueAction == 3111) {
player.getDialogueHandler().sendDialogues(3112, 946);
return;
} else if (player.dialogueAction == 161) {// rod
player.getPlayerAssistant().startTeleport(3313, 3234, 0, "modern");
Teles.necklaces(player);
return;
} else if (player.dialogueAction == 162) {
player.getDialogueHandler().sendDialogues(3170, player.npcType);
return;
@@ -548,13 +552,12 @@ public class DialogueOptions {
} else if (player.dialogueAction == 189) {
player.getDialogueHandler().sendDialogues(3210, player.npcType);
return;
} else if (player.dialogueAction == 161) {// rod
player.getPlayerAssistant().startTeleport(3313, 3234, 0, "modern");
Teles.necklaces(player);
return;
} else if (player.dialogueAction == 703) {
player.getDialogueHandler().sendDialogues(3572, player.npcType);
return;
} else if (player.dialogueAction == 3575) {
player.getDialogueHandler().sendDialogues(3577, player.npcType);
return;
}
player.dialogueAction = 0;
player.getPacketSender().closeAllWindows();
@@ -765,6 +768,9 @@ public class DialogueOptions {
} else if (player.dialogueAction == 703) {
player.getDialogueHandler().sendDialogues(3573, player.npcType);
return;
} else if (player.dialogueAction == 3575) {
player.getDialogueHandler().sendDialogues(3576, player.npcType);
return;
}
player.dialogueAction = 0;
player.getPacketSender().closeAllWindows();
@@ -0,0 +1,69 @@
package com.rebotted.game.items.impl;
import java.util.HashMap;
import com.rebotted.game.items.Item;
import com.rebotted.game.players.Player;
public class EnchantStaff {
public static boolean staffButtons(Player player, int button) {
final staffData staff = staffData.forId(button);
if (staff != null) {
if(!player.getInventory().playerHasItem(staff.getBattlestaff())){
player.getPacketSender().sendMessage("You need a battlestaff to do this!");
return true;
}
if(!player.getItemAssistant().playerHasItem(995, 40000)) {
player.getPacketSender().sendMessage("You don't have enough coins with you!");
return true;
}
player.getInventory().removeItem(new Item(staff.getBattlestaff(), 1));
player.getInventory().removeItem(new Item(995, 40000));
player.getInventory().addItem(new Item(staff.getMysticstaff(), 1));
player.getPacketSender().sendMessage("Thormac enchants your staff into a mystic staff.");
player.getPacketSender().closeAllWindows();
return true;
}
return false;
}
public static enum staffData {// button, battlestaff, mystic staff
AIR(1734, 1397, 1405), WATER(1735, 1395, 1403), EARTH(1736, 1399, 1407), FIRE(1737, 1393, 1401), LAVA(1738, 3053, 3054), MUD(15348, 6562, 6563);
private int button;
private int battlestaff;
private int mysticstaff;
public static HashMap<Integer, staffData> craftingStaff = new HashMap<Integer, staffData>();
public static staffData forId(int id) {
return craftingStaff.get(id);
}
static {
for (staffData c : staffData.values()) {
craftingStaff.put(c.getButton(), c);
}
}
private staffData(int button, int battlestaff, int mysticstaff) {
this.button = button;
this.battlestaff = battlestaff;
this.mysticstaff = mysticstaff;
}
public int getButton() {
return button;
}
public int getBattlestaff() {
return battlestaff;
}
public int getMysticstaff() {
return mysticstaff;
}
}
}
File diff suppressed because it is too large Load Diff
@@ -1515,8 +1515,6 @@ public class ObjectsActions {
case 3030:
if (player.tutorialProgress == 26) {
// client.getPacketDispatcher().tutorialIslandInterface(55,
// 12);
player.getDialogueHandler().sendDialogues(3078, -1);
player.getPlayerAssistant().movePlayer(3111, 3125, 0);
player.startAnimation(828);
@@ -1644,7 +1642,7 @@ public class ObjectsActions {
break;
case 9358:
player.getPlayerAssistant().movePlayer(2444, 5171, 0);
player.getPlayerAssistant().movePlayer(2480, 5175, 0);
break;
case 9359:
@@ -1641,7 +1641,7 @@ public class PlayerAssistant {
int x = NpcHandler.npcs[player.followId2].getX();
int y = NpcHandler.npcs[player.followId2].getY();
if (!player.goodDistance(x, y, player.getX(), player.getY(),25)) {
if (!player.goodDistance(x, y, player.getX(), player.getY(), 25)) {
player.followId2 = 0;
resetFollow();
return;
@@ -13,22 +13,21 @@ public class BankX1 implements PacketType {
public int XremoveSlot, XinterfaceID, XremoveID, Xamount;
@Override
public void processPacket(Player c, int packetType, int packetSize) {
c.endCurrentTask();
public void processPacket(Player player, int packetType, int packetSize) {
player.endCurrentTask();
if (packetType == 135) {
c.xRemoveSlot = c.getInStream().readSignedWordBigEndian();
c.xInterfaceId = c.getInStream().readUnsignedWordA();
c.xRemoveId = c.getInStream().readSignedWordBigEndian();
}
else {
if (c.xInterfaceId == 7423) {
c.getItemAssistant().bankItem(c.xRemoveId, c.xRemoveSlot, Xamount);// Depo 1
c.getItemAssistant().resetItems(7423);
player.xRemoveSlot = player.getInStream().readSignedWordBigEndian();
player.xInterfaceId = player.getInStream().readUnsignedWordA();
player.xRemoveId = player.getInStream().readSignedWordBigEndian();
} else {
if (player.xInterfaceId == 7423) {
player.getItemAssistant().bankItem(player.xRemoveId, player.xRemoveSlot, Xamount);// Depo 1
player.getItemAssistant().resetItems(7423);
}
}
if (packetType == PART1) {
synchronized (c) {
c.getOutStream().createFrame(27);
synchronized (player) {
player.getOutStream().createFrame(27);
}
}
@@ -10,19 +10,19 @@ import com.rebotted.net.packets.PacketType;
public class ChallengePlayer implements PacketType {
@Override
public void processPacket(Player c, int packetType, int packetSize) {
public void processPacket(Player player, int packetType, int packetSize) {
switch (packetType) {
case 128:
int answerPlayer = c.getInStream().readUnsignedWord();
if(PlayerHandler.players[answerPlayer] == null || answerPlayer == c.playerId)
int answerPlayer = player.getInStream().readUnsignedWord();
if(PlayerHandler.players[answerPlayer] == null || answerPlayer == player.playerId)
return;
if (c.duelingArena() || c.duelStatus == 5) {
c.getPacketSender().sendMessage("You can't challenge inside the arena!");
if (player.duelingArena() || player.duelStatus == 5) {
player.getPacketSender().sendMessage("You can't challenge inside the arena!");
return;
}
if (c.inDuelArena()) {
c.getDueling().requestDuel(answerPlayer);
if (player.inDuelArena()) {
player.getDueling().requestDuel(answerPlayer);
}
break;
}
@@ -35,18 +35,16 @@ public class ChangeAppearance implements PacketType {
};
@Override
public void processPacket(final Player client, final int packetType, final int packetSize) {
final int gender = client.getInStream().readSignedByte();
public void processPacket(final Player player, final int packetType, final int packetSize) {
final int gender = player.getInStream().readSignedByte();
if (gender != 0 && gender != 1) {
return;
}
final int[] apperances = new int[MALE_VALUES.length]; // apperance's
// value
// check
final int[] apperances = new int[MALE_VALUES.length]; // appearance values check
for (int i = 0; i < apperances.length; i++) {
int value = client.getInStream().readSignedByte();
int value = player.getInStream().readSignedByte();
if (value < (gender == 0 ? MALE_VALUES[i][0] : FEMALE_VALUES[i][0])
|| value > (gender == 0 ? MALE_VALUES[i][1]
: FEMALE_VALUES[i][1])) {
@@ -55,35 +53,34 @@ public class ChangeAppearance implements PacketType {
apperances[i] = value;
}
final int[] colors = new int[ALLOWED_COLORS.length]; // color value
// check
final int[] colors = new int[ALLOWED_COLORS.length]; // color value check
for (int i = 0; i < colors.length; i++) {
int value = client.getInStream().readSignedByte();
int value = player.getInStream().readSignedByte();
if (value < ALLOWED_COLORS[i][0] || value > ALLOWED_COLORS[i][1]) {
value = ALLOWED_COLORS[i][0];
}
colors[i] = value;
}
if (client.canChangeAppearance) {
client.playerAppearance[0] = gender; // gender
client.playerAppearance[1] = apperances[0]; // head
client.playerAppearance[2] = apperances[2]; // torso
client.playerAppearance[3] = apperances[3]; // arms
client.playerAppearance[4] = apperances[4]; // hands
client.playerAppearance[5] = apperances[5]; // legs
client.playerAppearance[6] = apperances[6]; // feet
client.playerAppearance[7] = apperances[1]; // beard
client.playerAppearance[8] = colors[0]; // hair colour
client.playerAppearance[9] = colors[1]; // torso colour
client.playerAppearance[10] = colors[2]; // legs colour
client.playerAppearance[11] = colors[3]; // feet colour
client.playerAppearance[12] = colors[4]; // skin colour
if (player.canChangeAppearance) {
player.playerAppearance[0] = gender; // gender
player.playerAppearance[1] = apperances[0]; // head
player.playerAppearance[2] = apperances[2]; // torso
player.playerAppearance[3] = apperances[3]; // arms
player.playerAppearance[4] = apperances[4]; // hands
player.playerAppearance[5] = apperances[5]; // legs
player.playerAppearance[6] = apperances[6]; // feet
player.playerAppearance[7] = apperances[1]; // beard
player.playerAppearance[8] = colors[0]; // hair colour
player.playerAppearance[9] = colors[1]; // torso colour
player.playerAppearance[10] = colors[2]; // legs colour
player.playerAppearance[11] = colors[3]; // feet colour
player.playerAppearance[12] = colors[4]; // skin colour
client.endCurrentTask();
client.getPacketSender().closeAllWindows();
client.getPlayerAssistant().requestUpdates();
client.canChangeAppearance = false;
player.endCurrentTask();
player.getPacketSender().closeAllWindows();
player.getPlayerAssistant().requestUpdates();
player.canChangeAppearance = false;
}
}
@@ -14,21 +14,21 @@ import com.rebotted.world.GlobalDropsHandler;
public class ChangeRegions implements PacketType {
@Override
public void processPacket(Player c, int packetType, int packetSize) {
if (GameConstants.SOUND && c.musicOn) {
Music.playMusic(c);
public void processPacket(Player player, int packetType, int packetSize) {
if (GameConstants.SOUND && player.musicOn) {
Music.playMusic(player);
}
GameEngine.objectHandler.updateObjects(c);//testing
GameEngine.itemHandler.reloadItems(c);
GameEngine.objectManager.loadObjects(c);
GameEngine.objectHandler.updateObjects(player);//testing
GameEngine.itemHandler.reloadItems(player);
GameEngine.objectManager.loadObjects(player);
Doors.getSingleton().load();
GlobalDropsHandler.reset(c);
c.getPlayerAssistant().removeObjects();// testing
c.saveFile = true;
if (c.skullTimer > 0) {
c.isSkulled = true;
c.headIconPk = 0;
c.getPlayerAssistant().requestUpdates();
GlobalDropsHandler.reset(player);
player.getPlayerAssistant().removeObjects();// testing
player.saveFile = true;
if (player.skullTimer > 0) {
player.isSkulled = true;
player.headIconPk = 0;
player.getPlayerAssistant().requestUpdates();
}
}
}
@@ -20,140 +20,140 @@ public class ClickNPC implements PacketType {
SECOND_CLICK = 17, THIRD_CLICK = 21;
@Override
public void processPacket(final Player client, int packetType, int packetSize) {
client.npcIndex = 0;
client.npcClickIndex = 0;
client.playerIndex = 0;
client.clickNpcType = 0;
client.getPlayerAssistant().resetFollow();
client.getCombatAssistant().resetPlayerAttack();
client.getPlayerAssistant().requestUpdates();
client.endCurrentTask();
public void processPacket(final Player player, int packetType, int packetSize) {
player.npcIndex = 0;
player.npcClickIndex = 0;
player.playerIndex = 0;
player.clickNpcType = 0;
player.getPlayerAssistant().resetFollow();
player.getCombatAssistant().resetPlayerAttack();
player.getPlayerAssistant().requestUpdates();
player.endCurrentTask();
switch (packetType) {
/**
* Attack npc melee or range
**/
case ATTACK_NPC:
if (client.tutorialProgress == 24) {
client.getPacketSender().chatbox(6180);
client.getDialogueHandler()
if (player.tutorialProgress == 24) {
player.getPacketSender().chatbox(6180);
player.getDialogueHandler()
.chatboxText(
"While you are fighting you will see a bar over your head. The",
"bar shows how much health you have left. Your opponent will",
"have one too. You will continue to attack the rat until it's dead",
"or you do something else.",
"Sit back and watch");
client.getPacketSender().chatbox(6179);
player.getPacketSender().chatbox(6179);
}
if (client.tutorialProgress == 33) {
client.getPacketSender()
if (player.tutorialProgress == 33) {
player.getPacketSender()
.sendMessage(
"You can't range these chickens you have to mage them!");
return;
}
if (!client.mageAllowed) {
client.mageAllowed = true;
client.getPacketSender().sendMessage("I can't reach that.");
if (!player.mageAllowed) {
player.mageAllowed = true;
player.getPacketSender().sendMessage("I can't reach that.");
break;
}
client.npcIndex = client.getInStream().readUnsignedWordA();
if (NpcHandler.npcs[client.npcIndex] == null) {
client.npcIndex = 0;
player.npcIndex = player.getInStream().readUnsignedWordA();
if (NpcHandler.npcs[player.npcIndex] == null) {
player.npcIndex = 0;
break;
}
if (NpcHandler.npcs[client.npcIndex].MaxHP == 0) {
client.npcIndex = 0;
if (NpcHandler.npcs[player.npcIndex].MaxHP == 0) {
player.npcIndex = 0;
break;
}
if (NpcHandler.npcs[client.npcIndex] == null) {
if (NpcHandler.npcs[player.npcIndex] == null) {
break;
}
if (client.autocastId > 0) {
client.autocasting = true;
if (player.autocastId > 0) {
player.autocasting = true;
}
if (!client.autocasting && client.spellId > 0) {
client.spellId = 0;
if (!player.autocasting && player.spellId > 0) {
player.spellId = 0;
}
client.faceUpdate(client.npcIndex);
client.usingMagic = false;
player.faceUpdate(player.npcIndex);
player.usingMagic = false;
boolean usingBow = false;
boolean usingOtherRangeWeapons = false;
boolean usingArrows = false;
boolean usingCross = client.playerEquipment[client.playerWeapon] == 9185;
if (client.playerEquipment[client.playerWeapon] >= 4214
&& client.playerEquipment[client.playerWeapon] <= 4223) {
boolean usingCross = player.playerEquipment[player.playerWeapon] == 9185;
if (player.playerEquipment[player.playerWeapon] >= 4214
&& player.playerEquipment[player.playerWeapon] <= 4223) {
usingBow = true;
}
for (int bowId : RangeData.BOWS) {
if (client.playerEquipment[client.playerWeapon] == bowId) {
if (player.playerEquipment[player.playerWeapon] == bowId) {
usingBow = true;
for (int arrowId : RangeData.ARROWS) {
if (client.playerEquipment[client.playerArrows] == arrowId) {
if (player.playerEquipment[player.playerArrows] == arrowId) {
usingArrows = true;
}
}
}
}
for (int otherRangeId : RangeData.OTHER_RANGE_WEAPONS) {
if (client.playerEquipment[client.playerWeapon] == otherRangeId) {
if (player.playerEquipment[player.playerWeapon] == otherRangeId) {
usingOtherRangeWeapons = true;
}
}
if ((usingBow || client.autocasting)
&& client.goodDistance(client.getX(), client.getY(),
NpcHandler.npcs[client.npcIndex].getX(),
NpcHandler.npcs[client.npcIndex].getY(), 7)) {
client.stopMovement();
if ((usingBow || player.autocasting)
&& player.goodDistance(player.getX(), player.getY(),
NpcHandler.npcs[player.npcIndex].getX(),
NpcHandler.npcs[player.npcIndex].getY(), 7)) {
player.stopMovement();
}
if (usingOtherRangeWeapons
&& client.goodDistance(client.getX(), client.getY(),
NpcHandler.npcs[client.npcIndex].getX(),
NpcHandler.npcs[client.npcIndex].getY(), 4)) {
client.stopMovement();
&& player.goodDistance(player.getX(), player.getY(),
NpcHandler.npcs[player.npcIndex].getX(),
NpcHandler.npcs[player.npcIndex].getY(), 4)) {
player.stopMovement();
}
if (!usingCross && !usingArrows && usingBow
&& client.playerEquipment[client.playerWeapon] < 4212
&& client.playerEquipment[client.playerWeapon] > 4223 && !usingCross) {
client.getPacketSender().sendMessage(
&& player.playerEquipment[player.playerWeapon] < 4212
&& player.playerEquipment[player.playerWeapon] > 4223 && !usingCross) {
player.getPacketSender().sendMessage(
"You have run out of arrows!");
break;
}
if (RangeData.correctBowAndArrows(client) < client.playerEquipment[client.playerArrows]
if (RangeData.correctBowAndArrows(player) < player.playerEquipment[player.playerArrows]
&& CombatConstants.CORRECT_ARROWS
&& usingBow
&& !RangeData.usingCrystalBow(client)
&& client.playerEquipment[client.playerWeapon] != 9185) {
client.getPacketSender().sendMessage(
&& !RangeData.usingCrystalBow(player)
&& player.playerEquipment[player.playerWeapon] != 9185) {
player.getPacketSender().sendMessage(
"You can't use "
+ ItemAssistant.getItemName(
client.playerEquipment[client.playerArrows])
player.playerEquipment[player.playerArrows])
.toLowerCase()
+ "s with a "
+ ItemAssistant.getItemName(
client.playerEquipment[client.playerWeapon])
player.playerEquipment[player.playerWeapon])
.toLowerCase() + ".");
client.stopMovement();
client.getCombatAssistant().resetPlayerAttack();
player.stopMovement();
player.getCombatAssistant().resetPlayerAttack();
return;
}
if (client.playerEquipment[client.playerWeapon] == 9185
&& !client.getCombatAssistant().properBolts()) {
client.getPacketSender().sendMessage(
if (player.playerEquipment[player.playerWeapon] == 9185
&& !player.getCombatAssistant().properBolts()) {
player.getPacketSender().sendMessage(
"You must use bolts with a crossbow.");
client.stopMovement();
client.getCombatAssistant().resetPlayerAttack();
player.stopMovement();
player.getCombatAssistant().resetPlayerAttack();
return;
}
if (client.followId > 0) {
client.getPlayerAssistant().resetFollow();
if (player.followId > 0) {
player.getPlayerAssistant().resetFollow();
}
if (client.attackTimer <= 0) {
client.getCombatAssistant().attackNpc(client.npcIndex);
client.attackTimer++;
if (player.attackTimer <= 0) {
player.getCombatAssistant().attackNpc(player.npcIndex);
player.attackTimer++;
}
break;
@@ -162,190 +162,190 @@ public class ClickNPC implements PacketType {
* Attack npc with magic
**/
case MAGE_NPC:
if (client.tutorialProgress == 33) {
client.getPacketSender().chatbox(6180);
client.getDialogueHandler()
if (player.tutorialProgress == 33) {
player.getPacketSender().chatbox(6180);
player.getDialogueHandler()
.chatboxText(
"",
"All you need to do is move on to the mainland. Just speak",
"with Terrova and he'll teleport you to Lumbridge Castle.",
"", "You have almost completed the tutorial!");
client.getPacketSender().chatbox(6179);
player.getPacketSender().chatbox(6179);
// c.getDialogues().sendStatement4("You have almost completed the tutorial!",
// "All you need to do is move on to the mainland. Just speak",
// "with Terrova and he'll teleport you to Lumbridge.", "");
client.tutorialProgress = 34;
client.getPacketSender().createArrow(1, 9);
player.tutorialProgress = 34;
player.getPacketSender().createArrow(1, 9);
}
if (!client.mageAllowed) {
client.mageAllowed = true;
client.getPacketSender().sendMessage("I can't reach that.");
if (!player.mageAllowed) {
player.mageAllowed = true;
player.getPacketSender().sendMessage("I can't reach that.");
break;
}
// c.usingSpecial = false;
// c.getItems().updateSpecialBar();
client.npcIndex = client.getInStream().readSignedWordBigEndianA();
int castingSpellId = client.getInStream().readSignedWordA();
client.usingMagic = false;
player.npcIndex = player.getInStream().readSignedWordBigEndianA();
int castingSpellId = player.getInStream().readSignedWordA();
player.usingMagic = false;
if (NpcHandler.npcs[client.npcIndex] == null) {
if (NpcHandler.npcs[player.npcIndex] == null) {
break;
}
if (NpcHandler.npcs[client.npcIndex].MaxHP == 0
|| NpcHandler.npcs[client.npcIndex].npcType == 944) {
client.getPacketSender().sendMessage(
if (NpcHandler.npcs[player.npcIndex].MaxHP == 0
|| NpcHandler.npcs[player.npcIndex].npcType == 944) {
player.getPacketSender().sendMessage(
"You can't attack this npc.");
break;
}
for (int i = 0; i < MagicData.MAGIC_SPELLS.length; i++) {
if (castingSpellId == MagicData.MAGIC_SPELLS[i][0]) {
client.spellId = i;
client.usingMagic = true;
player.spellId = i;
player.usingMagic = true;
break;
}
}
if (client.autocasting) {
client.autocasting = false;
if (player.autocasting) {
player.autocasting = false;
}
if (client.usingMagic) {
if (client.goodDistance(client.getX(), client.getY(),
NpcHandler.npcs[client.npcIndex].getX(),
NpcHandler.npcs[client.npcIndex].getY(), 6)) {
client.stopMovement();
if (player.usingMagic) {
if (player.goodDistance(player.getX(), player.getY(),
NpcHandler.npcs[player.npcIndex].getX(),
NpcHandler.npcs[player.npcIndex].getY(), 6)) {
player.stopMovement();
}
if (client.attackTimer <= 0) {
client.getCombatAssistant().attackNpc(client.npcIndex);
client.attackTimer++;
if (player.attackTimer <= 0) {
player.getCombatAssistant().attackNpc(player.npcIndex);
player.attackTimer++;
}
}
break;
case FIRST_CLICK:
client.npcClickIndex = client.inStream.readSignedWordBigEndian();
client.npcType = NpcHandler.npcs[client.npcClickIndex].npcType;
if (client.goodDistance(NpcHandler.npcs[client.npcClickIndex].getX(),
NpcHandler.npcs[client.npcClickIndex].getY(), client.getX(),
client.getY(), 2)) {
client.turnPlayerTo(NpcHandler.npcs[client.npcClickIndex].getX(),
NpcHandler.npcs[client.npcClickIndex].getY());
NpcHandler.npcs[client.npcClickIndex].facePlayer(client.playerId);
client.getNpcs().firstClickNpc(client.npcType);
player.npcClickIndex = player.inStream.readSignedWordBigEndian();
player.npcType = NpcHandler.npcs[player.npcClickIndex].npcType;
if (player.goodDistance(NpcHandler.npcs[player.npcClickIndex].getX(),
NpcHandler.npcs[player.npcClickIndex].getY(), player.getX(),
player.getY(), 2)) {
player.turnPlayerTo(NpcHandler.npcs[player.npcClickIndex].getX(),
NpcHandler.npcs[player.npcClickIndex].getY());
NpcHandler.npcs[player.npcClickIndex].facePlayer(player.playerId);
player.getNpcs().firstClickNpc(player.npcType);
} else {
client.clickNpcType = 1;
CycleEventHandler.getSingleton().addEvent(client, new CycleEvent() {
player.clickNpcType = 1;
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (client.clickNpcType == 1
&& NpcHandler.npcs[client.npcClickIndex] != null) {
if (client.goodDistance(client.getX(), client.getY(),
NpcHandler.npcs[client.npcClickIndex].getX(),
NpcHandler.npcs[client.npcClickIndex].getY(), 1)) {
client.turnPlayerTo(
NpcHandler.npcs[client.npcClickIndex].getX(),
NpcHandler.npcs[client.npcClickIndex].getY());
NpcHandler.npcs[client.npcClickIndex]
.facePlayer(client.playerId);
client.getNpcs().firstClickNpc(client.npcType);
if (player.clickNpcType == 1
&& NpcHandler.npcs[player.npcClickIndex] != null) {
if (player.goodDistance(player.getX(), player.getY(),
NpcHandler.npcs[player.npcClickIndex].getX(),
NpcHandler.npcs[player.npcClickIndex].getY(), 1)) {
player.turnPlayerTo(
NpcHandler.npcs[player.npcClickIndex].getX(),
NpcHandler.npcs[player.npcClickIndex].getY());
NpcHandler.npcs[player.npcClickIndex]
.facePlayer(player.playerId);
player.getNpcs().firstClickNpc(player.npcType);
container.stop();
}
}
if (client.clickNpcType == 0 || client.clickNpcType > 1) {
if (player.clickNpcType == 0 || player.clickNpcType > 1) {
container.stop();
}
}
@Override
public void stop() {
client.clickNpcType = 0;
player.clickNpcType = 0;
}
}, 1);
}
break;
case SECOND_CLICK:
client.npcClickIndex = client.inStream.readUnsignedWordBigEndianA();
client.npcType = NpcHandler.npcs[client.npcClickIndex].npcType;
if (client.goodDistance(NpcHandler.npcs[client.npcClickIndex].getX(),
NpcHandler.npcs[client.npcClickIndex].getY(), client.getX(),
client.getY(), 2)) {
client.turnPlayerTo(NpcHandler.npcs[client.npcClickIndex].getX(),
NpcHandler.npcs[client.npcClickIndex].getY());
NpcHandler.npcs[client.npcClickIndex].facePlayer(client.playerId);
client.getNpcs().secondClickNpc(client.npcType);
player.npcClickIndex = player.inStream.readUnsignedWordBigEndianA();
player.npcType = NpcHandler.npcs[player.npcClickIndex].npcType;
if (player.goodDistance(NpcHandler.npcs[player.npcClickIndex].getX(),
NpcHandler.npcs[player.npcClickIndex].getY(), player.getX(),
player.getY(), 2)) {
player.turnPlayerTo(NpcHandler.npcs[player.npcClickIndex].getX(),
NpcHandler.npcs[player.npcClickIndex].getY());
NpcHandler.npcs[player.npcClickIndex].facePlayer(player.playerId);
player.getNpcs().secondClickNpc(player.npcType);
} else {
client.clickNpcType = 2;
CycleEventHandler.getSingleton().addEvent(client, new CycleEvent() {
player.clickNpcType = 2;
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (client.clickNpcType == 2
&& NpcHandler.npcs[client.npcClickIndex] != null) {
if (client.goodDistance(client.getX(), client.getY(),
NpcHandler.npcs[client.npcClickIndex].getX(),
NpcHandler.npcs[client.npcClickIndex].getY(), 1)) {
client.turnPlayerTo(
NpcHandler.npcs[client.npcClickIndex].getX(),
NpcHandler.npcs[client.npcClickIndex].getY());
NpcHandler.npcs[client.npcClickIndex]
.facePlayer(client.playerId);
client.getNpcs().secondClickNpc(client.npcType);
if (player.clickNpcType == 2
&& NpcHandler.npcs[player.npcClickIndex] != null) {
if (player.goodDistance(player.getX(), player.getY(),
NpcHandler.npcs[player.npcClickIndex].getX(),
NpcHandler.npcs[player.npcClickIndex].getY(), 1)) {
player.turnPlayerTo(
NpcHandler.npcs[player.npcClickIndex].getX(),
NpcHandler.npcs[player.npcClickIndex].getY());
NpcHandler.npcs[player.npcClickIndex]
.facePlayer(player.playerId);
player.getNpcs().secondClickNpc(player.npcType);
container.stop();
}
}
if (client.clickNpcType < 2 || client.clickNpcType > 2) {
if (player.clickNpcType < 2 || player.clickNpcType > 2) {
container.stop();
}
}
@Override
public void stop() {
client.clickNpcType = 0;
player.clickNpcType = 0;
}
}, 1);
}
break;
case THIRD_CLICK:
client.npcClickIndex = client.inStream.readSignedWord();
client.npcType = NpcHandler.npcs[client.npcClickIndex].npcType;
if (client.goodDistance(NpcHandler.npcs[client.npcClickIndex].getX(),
NpcHandler.npcs[client.npcClickIndex].getY(), client.getX(),
client.getY(), 2)) {
client.turnPlayerTo(NpcHandler.npcs[client.npcClickIndex].getX(),
NpcHandler.npcs[client.npcClickIndex].getY());
NpcHandler.npcs[client.npcClickIndex].facePlayer(client.playerId);
client.getNpcs().thirdClickNpc(client.npcType);
player.npcClickIndex = player.inStream.readSignedWord();
player.npcType = NpcHandler.npcs[player.npcClickIndex].npcType;
if (player.goodDistance(NpcHandler.npcs[player.npcClickIndex].getX(),
NpcHandler.npcs[player.npcClickIndex].getY(), player.getX(),
player.getY(), 2)) {
player.turnPlayerTo(NpcHandler.npcs[player.npcClickIndex].getX(),
NpcHandler.npcs[player.npcClickIndex].getY());
NpcHandler.npcs[player.npcClickIndex].facePlayer(player.playerId);
player.getNpcs().thirdClickNpc(player.npcType);
} else {
client.clickNpcType = 3;
CycleEventHandler.getSingleton().addEvent(client, new CycleEvent() {
player.clickNpcType = 3;
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (client.clickNpcType == 3
&& NpcHandler.npcs[client.npcClickIndex] != null) {
if (client.goodDistance(client.getX(), client.getY(),
NpcHandler.npcs[client.npcClickIndex].getX(),
NpcHandler.npcs[client.npcClickIndex].getY(), 1)) {
client.turnPlayerTo(
NpcHandler.npcs[client.npcClickIndex].getX(),
NpcHandler.npcs[client.npcClickIndex].getY());
NpcHandler.npcs[client.npcClickIndex]
.facePlayer(client.playerId);
client.getNpcs().thirdClickNpc(client.npcType);
if (player.clickNpcType == 3
&& NpcHandler.npcs[player.npcClickIndex] != null) {
if (player.goodDistance(player.getX(), player.getY(),
NpcHandler.npcs[player.npcClickIndex].getX(),
NpcHandler.npcs[player.npcClickIndex].getY(), 1)) {
player.turnPlayerTo(
NpcHandler.npcs[player.npcClickIndex].getX(),
NpcHandler.npcs[player.npcClickIndex].getY());
NpcHandler.npcs[player.npcClickIndex]
.facePlayer(player.playerId);
player.getNpcs().thirdClickNpc(player.npcType);
container.stop();
}
}
if (client.clickNpcType < 3) {
if (player.clickNpcType < 3) {
container.stop();
}
}
@Override
public void stop() {
client.clickNpcType = 0;
player.clickNpcType = 0;
}
}, 1);
}
@@ -113,53 +113,53 @@ public class ClickObject implements PacketType {
}
}
public void completeObjectClick(final Player p, int objectOption) {
p.turnPlayerTo(p.objectX, p.objectY);
public void completeObjectClick(final Player player, int objectOption) {
player.turnPlayerTo(player.objectX, player.objectY);
switch (objectOption) {
case 1:
if (p.playerRights == 3 || p.debugMode) {
p.getPacketSender().sendMessage("ObjectId: " + p.objectId + " ObjectX: " + p.objectX + " ObjectY: " + p.objectY + " Objectclick = 1, Xoff: " + (p.getX() - p.objectX) + " Yoff: " + (p.getY() - p.objectY));
if (player.playerRights == 3 || player.debugMode) {
player.getPacketSender().sendMessage("ObjectId: " + player.objectId + " ObjectX: " + player.objectX + " ObjectY: " + player.objectY + " Objectclick = 1, Xoff: " + (player.getX() - player.objectX) + " Yoff: " + (player.getY() - player.objectY));
}
//todo: check if it's a door before fire handle
Doors.getSingleton().handleDoor(p, p.objectId, p.objectX, p.objectY, p.heightLevel);
Doors.getSingleton().handleDoor(player, player.objectId, player.objectX, player.objectY, player.heightLevel);
if (p.teleTimer > 0) {
p.getPacketSender().sendMessage("You cannot use objects while teleporting.");
if (player.teleTimer > 0) {
player.getPacketSender().sendMessage("You cannot use objects while teleporting.");
return;
}
if (Math.abs(p.getX() - p.objectX) > 25 || Math.abs(p.getY() - p.objectY) > 25) {
p.resetWalkingQueue();
if (Math.abs(player.getX() - player.objectX) > 25 || Math.abs(player.getY() - player.objectY) > 25) {
player.resetWalkingQueue();
break;
}
if (Woodcutting.playerTrees(p, p.objectId) && p.objectId != 1292) {
Woodcutting.startWoodcutting(p, p.objectId, p.objectX, p.objectY, p.clickObjectType);
if (Woodcutting.playerTrees(player, player.objectId) && player.objectId != 1292) {
Woodcutting.startWoodcutting(player, player.objectId, player.objectX, player.objectY, player.clickObjectType);
}
switch (p.objectId) {
switch (player.objectId) {
case 1292:
if (p.spiritTree == false && p.clickedTree) {
p.getPacketSender().sendMessage("You have already spawned a tree spirit.");
if (player.spiritTree == false && player.clickedTree) {
player.getPacketSender().sendMessage("You have already spawned a tree spirit.");
return;
}
if (p.spiritTree == false && p.clickedTree == false) {
p.getPacketSender().sendMessage("You attempt to chop the tree, and a tree spirit appears.");
NpcHandler.spawnNpc(p, 655, p.getX(), p.getY(), 0, 0, 225, 20, 80, 80, true, false);
p.clickedTree = true;
} else if (p.spiritTree) {
Woodcutting.startWoodcutting(p, p.objectId, p.objectX, p.objectY, p.clickObjectType);
if (player.spiritTree == false && player.clickedTree == false) {
player.getPacketSender().sendMessage("You attempt to chop the tree, and a tree spirit appears.");
NpcHandler.spawnNpc(player, 655, player.getX(), player.getY(), 0, 0, 225, 20, 80, 80, true, false);
player.clickedTree = true;
} else if (player.spiritTree) {
Woodcutting.startWoodcutting(player, player.objectId, player.objectX, player.objectY, player.clickObjectType);
}
break;
case 1294:
case 1293:
case 1317:
p.getPlayerAssistant().spiritTree();
player.getPlayerAssistant().spiritTree();
break;
case 2164:
case 2165:
GameEngine.trawler.fixNet(p);
GameEngine.trawler.fixNet(player);
break;
case 4462:
@@ -168,55 +168,55 @@ public class ClickObject implements PacketType {
case 4463:
case 4464:
case 4459:
if (!CastleWars.isInCw(p)) {
p.getPacketSender().sendMessage("You have to be in castle wars to use these objects.");
CastleWars.resetPlayer(p);
if (!CastleWars.isInCw(player)) {
player.getPacketSender().sendMessage("You have to be in castle wars to use these objects.");
CastleWars.resetPlayer(player);
return;
}
CastleWarObjects.handleObject(p, p.objectId, p.objectX, p.objectY);
CastleWarObjects.handleObject(player, player.objectId, player.objectX, player.objectY);
break;
case 2513:
p.getRangersGuild().fireAtTarget();
player.getRangersGuild().fireAtTarget();
break;
case 8930:
p.fade(1975, 4409, 3);
player.fade(1975, 4409, 3);
break;
case 8929:
p.fade(2442, 10147, 0);
player.fade(2442, 10147, 0);
break;
case 1568:
if (p.objectX == 2399 && p.objectY == 3099) {
p.getPacketSender()
if (player.objectX == 2399 && player.objectY == 3099) {
player.getPacketSender()
.object(9472, 2399, 3099, 0, 10);
}
if (p.objectX == 2400 && p.objectY == 3108) {
p.getPacketSender()
if (player.objectX == 2400 && player.objectY == 3108) {
player.getPacketSender()
.object(9472, 2400, 3108, 2, 10);
}
break;
case 4437:
if (p.getItemAssistant().playerHasItem(1265, 1)) {
p.getPacketSender().sendMessage(
if (player.getItemAssistant().playerHasItem(1265, 1)) {
player.getPacketSender().sendMessage(
"You start to break up the rocks...");
p.startAnimation(625);
CycleEventHandler.getSingleton().addEvent(p, new CycleEvent() {
player.startAnimation(625);
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
container.stop();
p.startAnimation(65535);
player.startAnimation(65535);
}
@Override
public void stop() {
p.getPacketSender().object(-1,
p.objectX, p.objectY, 0, 10);
p.getPacketSender().object(4438,
p.objectX, p.objectY, 0, 10);
p.getPacketSender().sendMessage(
player.getPacketSender().object(-1,
player.objectX, player.objectY, 0, 10);
player.getPacketSender().object(4438,
player.objectX, player.objectY, 0, 10);
player.getPacketSender().sendMessage(
"You break up the rocks.");
}
}, 3);
@@ -224,22 +224,22 @@ public class ClickObject implements PacketType {
break;
case 4438:
if (p.getItemAssistant().playerHasItem(1265, 1)) {
p.getPacketSender().sendMessage(
if (player.getItemAssistant().playerHasItem(1265, 1)) {
player.getPacketSender().sendMessage(
"You start to break up the rocks...");
p.startAnimation(625);
CycleEventHandler.getSingleton().addEvent(p, new CycleEvent() {
player.startAnimation(625);
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
stop();
p.startAnimation(65535);
player.startAnimation(65535);
}
@Override
public void stop() {
p.getPacketSender().object(-1,
p.objectX, p.objectY, 0, 10);
p.getPacketSender().sendMessage(
player.getPacketSender().object(-1,
player.objectX, player.objectY, 0, 10);
player.getPacketSender().sendMessage(
"You break up the rocks.");
}
}, 3);
@@ -247,58 +247,58 @@ public class ClickObject implements PacketType {
break;
case 4448:
if (p.getItemAssistant().playerHasItem(1265, 1)) {
p.getPacketSender().sendMessage(
if (player.getItemAssistant().playerHasItem(1265, 1)) {
player.getPacketSender().sendMessage(
"You start to mine the wall...");
p.startAnimation(625);
CycleEventHandler.getSingleton().addEvent(p, new CycleEvent() {
player.startAnimation(625);
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
stop();
p.startAnimation(65535);
p.getPacketSender().sendMessage(
player.startAnimation(65535);
player.getPacketSender().sendMessage(
"You collapse the cave wall.");
}
@Override
public void stop() {
if ((p.objectX == 2390 || p.objectX == 2393)
&& (p.objectY == 9503 || p.objectY == 9500)) { // east
if ((player.objectX == 2390 || player.objectX == 2393)
&& (player.objectY == 9503 || player.objectY == 9500)) { // east
// cave
// side
p.getPacketSender().object(-1, 2391,
player.getPacketSender().object(-1, 2391,
9501, 0, 10);
p.getPacketSender().object(4437, 2391,
player.getPacketSender().object(4437, 2391,
9501, 0, 10);
CastleWars.collapseCave(1);
}
if ((p.objectX == 2399 || p.objectX == 2402)
&& (p.objectY == 9511 || p.objectY == 9514)) { // north
if ((player.objectX == 2399 || player.objectX == 2402)
&& (player.objectY == 9511 || player.objectY == 9514)) { // north
// cave
// side
p.getPacketSender().object(-1, 2400,
player.getPacketSender().object(-1, 2400,
9512, 1, 10);
p.getPacketSender().object(4437, 2400,
player.getPacketSender().object(4437, 2400,
9512, 1, 10);
CastleWars.collapseCave(0);
}
if ((p.objectX == 2408 || p.objectX == 2411)
&& (p.objectY == 9502 || p.objectY == 9505)) { // west
if ((player.objectX == 2408 || player.objectX == 2411)
&& (player.objectY == 9502 || player.objectY == 9505)) { // west
// cave
// side
p.getPacketSender().object(-1, 2409,
player.getPacketSender().object(-1, 2409,
9503, 0, 10);
p.getPacketSender().object(4437, 2409,
player.getPacketSender().object(4437, 2409,
9503, 0, 10);
CastleWars.collapseCave(3);
}
if ((p.objectX == 2400 || p.objectX == 2403)
&& (p.objectY == 9496 || p.objectY == 9493)) { // south
if ((player.objectX == 2400 || player.objectX == 2403)
&& (player.objectY == 9496 || player.objectY == 9493)) { // south
// cave
// side
p.getPacketSender().object(-1, 2401,
player.getPacketSender().object(-1, 2401,
9494, 1, 10);
p.getPacketSender().object(4437, 2401,
player.getPacketSender().object(4437, 2401,
9494, 1, 10);
CastleWars.collapseCave(2);
}
@@ -308,31 +308,31 @@ public class ClickObject implements PacketType {
break;
case 1733:
if (p.objectX == 3058 && p.objectY == 3376) {
p.getPlayerAssistant().movePlayer(3058, 9776, 0);
} else if (p.objectX == 2603 && p.objectY == 3078) {
if (player.objectX == 3058 && player.objectY == 3376) {
player.getPlayerAssistant().movePlayer(3058, 9776, 0);
} else if (player.objectX == 2603 && player.objectY == 3078) {
}
break;
case 55:
if (p.objectX == 3061 && p.objectY == 3374) {
p.getPlayerAssistant().movePlayer(3058, 9776, 0);
if (player.objectX == 3061 && player.objectY == 3374) {
player.getPlayerAssistant().movePlayer(3058, 9776, 0);
}
break;
case 9472:
if (p.objectX == 2399 && p.objectY == 3099) {
p.startAnimation(828);
p.stopMovement();
p.resetWalkingQueue();
p.getPlayerAssistant().requestUpdates();
p.getPacketSender().closeAllWindows();
CycleEventHandler.getSingleton().addEvent(p, new CycleEvent() {
if (player.objectX == 2399 && player.objectY == 3099) {
player.startAnimation(828);
player.stopMovement();
player.resetWalkingQueue();
player.getPlayerAssistant().requestUpdates();
player.getPacketSender().closeAllWindows();
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
container.stop();
p.startAnimation(65535);
p.getPlayerAssistant().movePlayer(2400, 9507,
player.startAnimation(65535);
player.getPlayerAssistant().movePlayer(2400, 9507,
0);
}
@@ -342,18 +342,18 @@ public class ClickObject implements PacketType {
}
}, 1);
}
if (p.objectX == 2400 && p.objectY == 3108) {
p.startAnimation(828);
p.stopMovement();
p.resetWalkingQueue();
p.getPlayerAssistant().requestUpdates();
p.getPacketSender().closeAllWindows();
CycleEventHandler.getSingleton().addEvent(p, new CycleEvent() {
if (player.objectX == 2400 && player.objectY == 3108) {
player.startAnimation(828);
player.stopMovement();
player.resetWalkingQueue();
player.getPlayerAssistant().requestUpdates();
player.getPacketSender().closeAllWindows();
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
stop();
p.startAnimation(65535);
p.getPlayerAssistant().movePlayer(2399, 9500, 0);
player.startAnimation(65535);
player.getPlayerAssistant().movePlayer(2399, 9500, 0);
}
@Override
@@ -365,47 +365,47 @@ public class ClickObject implements PacketType {
break;
case 4387:
CastleWars.addToWaitRoom(p, 1); // saradomin
CastleWars.addToWaitRoom(player, 1); // saradomin
break;
case 4388:
CastleWars.addToWaitRoom(p, 2); // zamorak
CastleWars.addToWaitRoom(player, 2); // zamorak
break;
case 4408:
CastleWars.addToWaitRoom(p, 3); // guthix
CastleWars.addToWaitRoom(player, 3); // guthix
break;
case 4389: // sara
case 4390: // zammy waiting room portal
CastleWars.leaveWaitingRoom(p);
CastleWars.leaveWaitingRoom(player);
break;
}
p.getObjects().firstClickObject(p.objectId, p.objectX, p.objectY);
player.getObjects().firstClickObject(player.objectId, player.objectX, player.objectY);
break;
case 2:
if (p.playerRights == 3) {
p.getPacketSender().sendMessage("ObjectId: " + p.objectId + " ObjectX: " + p.objectX + " ObjectY: " + p.objectY + " Objectclick = 2, Xoff: " + (p.getX() - p.objectX) + " Yoff: " + (p.getY() - p.objectY));
if (player.playerRights == 3) {
player.getPacketSender().sendMessage("ObjectId: " + player.objectId + " ObjectX: " + player.objectX + " ObjectY: " + player.objectY + " Objectclick = 2, Xoff: " + (player.getX() - player.objectX) + " Yoff: " + (player.getY() - player.objectY));
}
p.getObjects().secondClickObject(p.objectId, p.objectX, p.objectY);
player.getObjects().secondClickObject(player.objectId, player.objectX, player.objectY);
break;
case 3: // 'F'
if (p.playerRights == 3) {
p.getPacketSender().sendMessage("ObjectId: " + p.objectId + " ObjectX: " + p.objectX + " ObjectY: " + p.objectY + " Objectclick = 3, Xoff: " + (p.getX() - p.objectX) + " Yoff: " + (p.getY() - p.objectY));
if (player.playerRights == 3) {
player.getPacketSender().sendMessage("ObjectId: " + player.objectId + " ObjectX: " + player.objectX + " ObjectY: " + player.objectY + " Objectclick = 3, Xoff: " + (player.getX() - player.objectX) + " Yoff: " + (player.getY() - player.objectY));
}
p.getObjects().thirdClickObject(p.objectId, p.objectX, p.objectY);
player.getObjects().thirdClickObject(player.objectId, player.objectX, player.objectY);
break;
case 4:
if (p.playerRights == 3) {
p.getPacketSender().sendMessage("ObjectId: " + p.objectId + " ObjectX: " + p.objectX + " ObjectY: " + p.objectY + " Objectclick = 4, Xoff: " + (p.getX() - p.objectX) + " Yoff: " + (p.getY() - p.objectY));
if (player.playerRights == 3) {
player.getPacketSender().sendMessage("ObjectId: " + player.objectId + " ObjectX: " + player.objectX + " ObjectY: " + player.objectY + " Objectclick = 4, Xoff: " + (player.getX() - player.objectX) + " Yoff: " + (player.getY() - player.objectY));
}
p.getObjects().fourthClickObject(p.objectId, p.objectX, p.objectY);
player.getObjects().fourthClickObject(player.objectId, player.objectX, player.objectY);
break;
}
}
@@ -7,128 +7,128 @@ import com.rebotted.net.packets.PacketType;
public class ClickTab implements PacketType {
@Override
public void processPacket(final Player c, int packetType, int packetSize) {
public void processPacket(final Player player, int packetType, int packetSize) {
switch (packetSize) {
case 1:// first part.
if (c.tutorialProgress == 0) { // wrench
c.getPacketSender().chatbox(6180);
c.getDialogueHandler()
if (player.tutorialProgress == 0) { // wrench
player.getPacketSender().chatbox(6180);
player.getDialogueHandler()
.chatboxText(
"On the side panel you can now see a variety of options from",
"changing your graphic settings and audio and music volume",
"to selecting whether your player should accept help from",
"other players. Don't worry about these too much for now.",
"@blu@Player controls");
c.getPacketSender().chatbox(6179);
c.tutorialProgress = 1;
} else if (c.tutorialProgress == 3) { // backpack
c.getPacketSender().chatbox(6180);
c.getDialogueHandler()
player.getPacketSender().chatbox(6179);
player.tutorialProgress = 1;
} else if (player.tutorialProgress == 3) { // backpack
player.getPacketSender().chatbox(6180);
player.getDialogueHandler()
.chatboxText(
"You can click on the backpack icon at any time to view the",
"items that you currently have in your inventory. You will see",
"that you now have an axe in your inventory. Use this to get",
"some logs by clicking on one of the trees in the area.",
"Cut down a tree");
c.getPacketSender().createArrow(3099, 3095, c.getH(), 2);
c.getPacketSender().chatbox(6179);
} else if (c.tutorialProgress == 4) { // Skills tab
c.getPacketSender().chatbox(6180);
c.getDialogueHandler()
player.getPacketSender().createArrow(3099, 3095, player.getH(), 2);
player.getPacketSender().chatbox(6179);
} else if (player.tutorialProgress == 4) { // Skills tab
player.getPacketSender().chatbox(6180);
player.getDialogueHandler()
.chatboxText(
"Here you will see how good your skills are. As you move your",
"mouse over any of the icons in this panel, the small yellow",
"popup box will show you the exact amount of experience you",
"have and how much is needed to get to the next level.",
"Your skill stats");
c.tutorialProgress = 5;
c.getPacketSender().chatbox(6179);
c.getPacketSender().createArrow(1, 2);
} else if (c.tutorialProgress == 9) { // Music tab
c.getPacketSender().chatbox(6180);
c.getDialogueHandler()
player.tutorialProgress = 5;
player.getPacketSender().chatbox(6179);
player.getPacketSender().createArrow(1, 2);
} else if (player.tutorialProgress == 9) { // Music tab
player.getPacketSender().chatbox(6180);
player.getDialogueHandler()
.chatboxText(
"From this interface you can control the music that is played.",
"As you explore the world, more of the tunes will become",
"unlocked. Once you've examined this menu use the next door",
"to continue. If you need a recap, talk to the Master Chef",
"The music player");
c.getPacketSender().createArrow(3073, 3090, c.getH(), 2);
c.tutorialProgress = 10;
c.getPacketSender().chatbox(6179);
} else if (c.tutorialProgress == 10) { // Emotes aNd running
c.getPacketSender().chatbox(6180);
c.getDialogueHandler()
player.getPacketSender().createArrow(3073, 3090, player.getH(), 2);
player.tutorialProgress = 10;
player.getPacketSender().chatbox(6179);
} else if (player.tutorialProgress == 10) { // Emotes aNd running
player.getPacketSender().chatbox(6180);
player.getDialogueHandler()
.chatboxText(
"For those situations where words don't quite describe how you",
"feel, try an emote. Go ahead, try one out! You might notice",
"that some of the emotes are grey and cannot be used now.",
"As you progress further into the game you'll gain more.",
"Emotes");
c.getPacketSender().chatbox(6179);
} else if (c.tutorialProgress == 12) { // Quest Tab
c.getPacketSender().chatbox(6180);
c.getDialogueHandler()
player.getPacketSender().chatbox(6179);
} else if (player.tutorialProgress == 12) { // Quest Tab
player.getPacketSender().chatbox(6180);
player.getDialogueHandler()
.chatboxText(
"",
"This is your Quest Journal, a list of all the quests in the game.",
"Talk to the Quest Guide again for an explaination.",
"", "Your Quest Journal");
c.tutorialProgress = 13;
c.getPacketSender().chatbox(6179);
} else if (c.tutorialProgress == 21) { // Worn inventory
c.getPacketSender().chatbox(6180);
c.getDialogueHandler()
player.tutorialProgress = 13;
player.getPacketSender().chatbox(6179);
} else if (player.tutorialProgress == 21) { // Worn inventory
player.getPacketSender().chatbox(6180);
player.getDialogueHandler()
.chatboxText(
"You can see what items you are wearing in the worn inventory",
"to the left of the screen with their combined statistics on the",
"right. Let's add something. Left click your dagger to 'wield' it.",
"", "Worn interface");
c.getPacketSender().chatbox(6179);
c.tutorialProgress = 22;
} else if (c.tutorialProgress == 23) { // Attack syle tabs
c.getPacketSender().chatbox(6180);
c.getDialogueHandler()
player.getPacketSender().chatbox(6179);
player.tutorialProgress = 22;
} else if (player.tutorialProgress == 23) { // Attack syle tabs
player.getPacketSender().chatbox(6180);
player.getDialogueHandler()
.chatboxText(
"From this interface you can select the type of attack your",
"character will use. Different monsters have different",
"weaknesses. If you hover your mouse over the buttons, you",
"will see the type of XP you will receive when using each attack.",
"This is your combat interface");
c.tutorialProgress = 24;
c.getPacketSender().chatbox(6179);
c.getItemAssistant()
player.tutorialProgress = 24;
player.getPacketSender().chatbox(6179);
player.getItemAssistant()
.sendWeapon(
c.playerEquipment[c.playerWeapon],
player.playerEquipment[player.playerWeapon],
ItemAssistant
.getItemName(c.playerEquipment[c.playerWeapon]));
c.getPacketSender().createArrow(3111, 9518, c.getH(), 2);
} else if (c.tutorialProgress == 29) { // Prayer
c.getDialogueHandler().sendDialogues(3092, 222);
} else if (c.tutorialProgress == 30) { // friends tab
c.getPacketSender().chatbox(6180);
c.getDialogueHandler()
.getItemName(player.playerEquipment[player.playerWeapon]));
player.getPacketSender().createArrow(3111, 9518, player.getH(), 2);
} else if (player.tutorialProgress == 29) { // Prayer
player.getDialogueHandler().sendDialogues(3092, 222);
} else if (player.tutorialProgress == 30) { // friends tab
player.getPacketSender().chatbox(6180);
player.getDialogueHandler()
.chatboxText(
"This will be explaing by Brother Brace shortly, but first click",
"on the other flashing face to the right of your screen.",
"", "", "This is your friends list");
c.getPacketSender().setSidebarInterface(9, 5715);
c.getPacketSender().flashSideBarIcon(-9);
c.tutorialProgress = 31;
c.getPacketSender().chatbox(6179);
} else if (c.tutorialProgress == 31) { // ignores tab
c.getPacketSender().chatbox(6180);
c.getDialogueHandler()
player.getPacketSender().setSidebarInterface(9, 5715);
player.getPacketSender().flashSideBarIcon(-9);
player.tutorialProgress = 31;
player.getPacketSender().chatbox(6179);
} else if (player.tutorialProgress == 31) { // ignores tab
player.getPacketSender().chatbox(6180);
player.getDialogueHandler()
.chatboxText(
"The two lists - friends and ignore - can be very helpful for",
"keeping track of when your friends are online or for blocking",
"messages from people you simply don't like. Speak with",
"Brother Brace and he will tell you more.",
"This is your ignore list");
c.getPacketSender().chatbox(6179);
} else if (c.tutorialProgress == 32) { // Final magic tab
c.tutorialProgress = 33;
c.getDialogueHandler().sendDialogues(3108, 946);
player.getPacketSender().chatbox(6179);
} else if (player.tutorialProgress == 32) { // Final magic tab
player.tutorialProgress = 33;
player.getDialogueHandler().sendDialogues(3108, 946);
}
break;
@@ -25,6 +25,7 @@ import com.rebotted.game.content.traveling.GnomeGlider;
import com.rebotted.game.dialogues.DialogueOptions;
import com.rebotted.game.items.GameItem;
import com.rebotted.game.items.ItemAssistant;
import com.rebotted.game.items.impl.EnchantStaff;
import com.rebotted.game.items.impl.ExperienceLamp;
import com.rebotted.game.items.impl.LightSources;
import com.rebotted.game.objects.impl.Climbing;
@@ -57,6 +58,9 @@ public class ClickingButtons implements PacketType {
Specials.specialClicking(player, actionButtonId);
DialogueOptions.handleDialogueOptions(player, actionButtonId);
DairyChurn.churnItem(player, actionButtonId);
if (EnchantStaff.staffButtons(player, actionButtonId)) {
return;
}
if (player.musicOn) {
player.getPlayList().handleButton(actionButtonId);
}
@@ -69,16 +73,12 @@ public class ClickingButtons implements PacketType {
if (player.isDead) {
return;
}
if (player.playerRights == 3) {
player.getPacketSender().sendMessage(
player.playerName + " - actionbutton: " + actionButtonId);
player.getPacketSender().sendMessage(player.playerName + " - actionbutton: " + actionButtonId);
}
if (player.isAutoButton(actionButtonId)) {
player.assignAutocast(actionButtonId);
}
switch (actionButtonId) {
@@ -3,13 +3,10 @@ package com.rebotted.net.packets.impl;
import com.rebotted.game.players.Player;
import com.rebotted.net.packets.PacketType;
/**
* Clicking in game
**/
public class ClickingInGame implements PacketType {
@Override
public void processPacket(Player c, int packetType, int packetSize) {
public void processPacket(Player player, int packetType, int packetSize) {
}
@@ -7,18 +7,18 @@ import com.rebotted.net.packets.PacketType;
public class FollowPlayer implements PacketType {
@Override
public void processPacket(Player c, int packetType, int packetSize) {
int followPlayer = c.getInStream().readUnsignedWordBigEndian();
public void processPacket(Player player, int packetType, int packetSize) {
int followPlayer = player.getInStream().readUnsignedWordBigEndian();
if (PlayerHandler.players[followPlayer] == null) {
return;
}
c.playerIndex = 0;
c.npcIndex = 0;
c.mageFollow = false;
c.usingBow = false;
c.usingRangeWeapon = false;
c.followDistance = 1;
c.followId = followPlayer;
c.endCurrentTask();
player.playerIndex = 0;
player.npcIndex = 0;
player.mageFollow = false;
player.usingBow = false;
player.usingRangeWeapon = false;
player.followDistance = 1;
player.followId = followPlayer;
player.endCurrentTask();
}
}
@@ -12,23 +12,23 @@ import com.rebotted.net.packets.PacketType;
public class ItemClick2 implements PacketType {
@Override
public void processPacket(Player c, int packetType, int packetSize) {
int itemId = c.getInStream().readSignedWordA();
public void processPacket(Player player, int packetType, int packetSize) {
int itemId = player.getInStream().readSignedWordA();
if (!c.getItemAssistant().playerHasItem(itemId, 1)) {
if (!player.getItemAssistant().playerHasItem(itemId, 1)) {
return;
}
c.endCurrentTask();
player.endCurrentTask();
if (HandleEmpty.canEmpty(c, itemId)) {
HandleEmpty.handleEmptyItem(c, itemId, HandleEmpty.filledToEmpty(c, itemId));
if (HandleEmpty.canEmpty(player, itemId)) {
HandleEmpty.handleEmptyItem(player, itemId, HandleEmpty.filledToEmpty(player, itemId));
return;
}
switch (itemId) {
case 4079:
c.startAnimation(1459);
player.startAnimation(1459);
break;
}
@@ -8,19 +8,19 @@ import com.rebotted.net.packets.PacketType;
public class ItemClick2OnGroundItem implements PacketType {
@Override
public void processPacket(Player c, int packetType, int packetSize) {
final int itemX = c.getInStream().readSignedWordBigEndian();
final int itemY = c.getInStream().readSignedWordBigEndianA();
final int itemId = c.getInStream().readUnsignedWordA();
System.out.println("ItemClick2OnGroundItem - " + c.playerName + " - " + itemId + " - " + itemX + " - " + itemY);
if (c.absX != itemX || c.absY != itemY) {
c.getPacketSender().sendMessage("You can't do that there!");
public void processPacket(Player player, int packetType, int packetSize) {
final int itemX = player.getInStream().readSignedWordBigEndian();
final int itemY = player.getInStream().readSignedWordBigEndianA();
final int itemId = player.getInStream().readUnsignedWordA();
System.out.println("ItemClick2OnGroundItem - " + player.playerName + " - " + itemId + " - " + itemX + " - " + itemY);
if (player.absX != itemX || player.absY != itemY) {
player.getPacketSender().sendMessage("You can't do that there!");
return;
}
c.endCurrentTask();
player.endCurrentTask();
for (LogData l : LogData.values()) {
if (itemId == l.getLogId()) {
Firemaking.attemptFire(c, 590, itemId, itemX, itemY, true);
Firemaking.attemptFire(player, 590, itemId, itemX, itemY, true);
return;
}
}
@@ -13,43 +13,43 @@ import com.rebotted.util.Misc;
public class ItemOnPlayer implements PacketType {
@Override
public void processPacket(Player c, int packetType, int packetSize) {
int playerId = c.inStream.readUnsignedWord();
int itemId = c.playerItems[c.inStream.readSignedWordBigEndian()] - 1;
c.endCurrentTask();
public void processPacket(Player player, int packetType, int packetSize) {
int playerId = player.inStream.readUnsignedWord();
int itemId = player.playerItems[player.inStream.readSignedWordBigEndian()] - 1;
player.endCurrentTask();
switch (itemId) {
case 962:
Player o = (Player) PlayerHandler.players[playerId];
if (RareProtection.CRACKERS) {
int delete = c.getItemAssistant().getItemAmount(962);
c.getItemAssistant().deleteItem(962, delete);
c.getPacketSender().sendMessage("You can't do that!");
int delete = player.getItemAssistant().getItemAmount(962);
player.getItemAssistant().deleteItem(962, delete);
player.getPacketSender().sendMessage("You can't do that!");
return;
}
c.turnPlayerTo(o.absX, o.absY);
o.turnPlayerTo(c.absX, c.absY);
player.turnPlayerTo(o.absX, o.absY);
o.turnPlayerTo(player.absX, player.absY);
o.gfx0(176);
c.gfx0(176);
c.startAnimation(451);
player.gfx0(176);
player.startAnimation(451);
o.startAnimation(451);
c.getPacketSender().sendMessage(
player.getPacketSender().sendMessage(
"You pull the Christmas Cracker...");
o.getPacketSender().sendMessage(
c.playerName.toUpperCase() + " need your help... You pull the Christmas Cracker...");
c.getItemAssistant().deleteItem(962, 1);
player.playerName.toUpperCase() + " need your help... You pull the Christmas Cracker...");
player.getItemAssistant().deleteItem(962, 1);
if (Misc.random(3) == 1) {
o.forcedText = "Yay! I got the Cracker!";
o.forcedChatUpdateRequired = true;
o.getItemAssistant().addItem(1038 + Misc.random(5) * 2, 1);
} else {
c.forcedText = "Yay! I got the Cracker!";
c.forcedChatUpdateRequired = true;
c.getItemAssistant().addItem(1038 + Misc.random(5) * 2, 1);
player.forcedText = "Yay! I got the Cracker!";
player.forcedChatUpdateRequired = true;
player.getItemAssistant().addItem(1038 + Misc.random(5) * 2, 1);
}
break;
default:
c.getPacketSender().sendMessage("Nothing interesting happens.");
player.getPacketSender().sendMessage("Nothing interesting happens.");
break;
}
}
@@ -16,64 +16,64 @@ import com.rebotted.net.packets.PacketType;
public class MagicOnFloorItems implements PacketType {
@Override
public void processPacket(final Player c, int packetType, int packetSize) {
final int itemY = c.getInStream().readSignedWordBigEndian();
int itemId = c.getInStream().readUnsignedWord();
final int itemX = c.getInStream().readSignedWordBigEndian();
c.getInStream().readUnsignedWordA();
public void processPacket(final Player player, int packetType, int packetSize) {
final int itemY = player.getInStream().readSignedWordBigEndian();
int itemId = player.getInStream().readUnsignedWord();
final int itemX = player.getInStream().readSignedWordBigEndian();
player.getInStream().readUnsignedWordA();
if (!GameEngine.itemHandler.itemExists(itemId, itemX, itemY)) {
c.stopMovement();
player.stopMovement();
return;
}
c.usingMagic = true;
c.endCurrentTask();
if (!c.getCombatAssistant().checkMagicReqs(51)) {
c.stopMovement();
player.usingMagic = true;
player.endCurrentTask();
if (!player.getCombatAssistant().checkMagicReqs(51)) {
player.stopMovement();
return;
}
if ((c.getItemAssistant().freeSlots() >= 1 || c.getItemAssistant()
if ((player.getItemAssistant().freeSlots() >= 1 || player.getItemAssistant()
.playerHasItem(itemId, 1))
&& ItemData.itemStackable[itemId]
|| c.getItemAssistant().freeSlots() > 0
|| player.getItemAssistant().freeSlots() > 0
&& !ItemData.itemStackable[itemId]) {
if (c.goodDistance(c.getX(), c.getY(), itemX, itemY, 12)) {
c.walkingToItem = true;
int offY = (c.getX() - itemX) * -1;
int offX = (c.getY() - itemY) * -1;
c.teleGrabX = itemX;
c.teleGrabY = itemY;
c.teleGrabItem = itemId;
c.turnPlayerTo(itemX, itemY);
c.teleGrabDelay = System.currentTimeMillis();
c.startAnimation(MagicData.MAGIC_SPELLS[51][2]);
c.gfx100(MagicData.MAGIC_SPELLS[51][3]);
c.getPlayerAssistant().createPlayersStillGfx(144, itemX, itemY,
if (player.goodDistance(player.getX(), player.getY(), itemX, itemY, 12)) {
player.walkingToItem = true;
int offY = (player.getX() - itemX) * -1;
int offX = (player.getY() - itemY) * -1;
player.teleGrabX = itemX;
player.teleGrabY = itemY;
player.teleGrabItem = itemId;
player.turnPlayerTo(itemX, itemY);
player.teleGrabDelay = System.currentTimeMillis();
player.startAnimation(MagicData.MAGIC_SPELLS[51][2]);
player.gfx100(MagicData.MAGIC_SPELLS[51][3]);
player.getPlayerAssistant().createPlayersStillGfx(144, itemX, itemY,
0, 72);
c.getPlayerAssistant().createPlayersProjectile(c.getX(),
c.getY(), offX, offY, 50, 70,
player.getPlayerAssistant().createPlayersProjectile(player.getX(),
player.getY(), offX, offY, 50, 70,
MagicData.MAGIC_SPELLS[51][4], 50, 10, 0, 50);
c.getPlayerAssistant().addSkillXP(
player.getPlayerAssistant().addSkillXP(
MagicData.MAGIC_SPELLS[51][7], 6);
c.getPlayerAssistant().refreshSkill(6);
c.stopMovement();
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
player.getPlayerAssistant().refreshSkill(6);
player.stopMovement();
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (!c.walkingToItem) {
if (!player.walkingToItem) {
stop();
}
if (System.currentTimeMillis() - c.teleGrabDelay > 1550
&& c.usingMagic) {
if (GameEngine.itemHandler.itemExists(c.teleGrabItem,
c.teleGrabX, c.teleGrabY)
&& c.goodDistance(c.getX(), c.getY(),
if (System.currentTimeMillis() - player.teleGrabDelay > 1550
&& player.usingMagic) {
if (GameEngine.itemHandler.itemExists(player.teleGrabItem,
player.teleGrabX, player.teleGrabY)
&& player.goodDistance(player.getX(), player.getY(),
itemX, itemY, 12)) {
GameEngine.itemHandler.removeGroundItem(c,
c.teleGrabItem, c.teleGrabX,
c.teleGrabY, true);
c.usingMagic = false;
GameEngine.itemHandler.removeGroundItem(player,
player.teleGrabItem, player.teleGrabX,
player.teleGrabY, true);
player.usingMagic = false;
container.stop();
}
}
@@ -81,34 +81,34 @@ public class MagicOnFloorItems implements PacketType {
@Override
public void stop() {
c.walkingToItem = false;
player.walkingToItem = false;
}
}, 1);
}
} else {
c.getPacketSender().sendMessage(
player.getPacketSender().sendMessage(
"You don't have enough space in your inventory.");
c.stopMovement();
player.stopMovement();
}
if (c.goodDistance(c.getX(), c.getY(), itemX, itemY, 12)) {
int offY = (c.getX() - itemX) * -1;
int offX = (c.getY() - itemY) * -1;
c.teleGrabX = itemX;
c.teleGrabY = itemY;
c.teleGrabItem = itemId;
c.turnPlayerTo(itemX, itemY);
c.teleGrabDelay = System.currentTimeMillis();
c.startAnimation(MagicData.MAGIC_SPELLS[51][2]);
c.gfx100(MagicData.MAGIC_SPELLS[51][3]);
c.getPlayerAssistant().createPlayersStillGfx(144, itemX, itemY, 0,
if (player.goodDistance(player.getX(), player.getY(), itemX, itemY, 12)) {
int offY = (player.getX() - itemX) * -1;
int offX = (player.getY() - itemY) * -1;
player.teleGrabX = itemX;
player.teleGrabY = itemY;
player.teleGrabItem = itemId;
player.turnPlayerTo(itemX, itemY);
player.teleGrabDelay = System.currentTimeMillis();
player.startAnimation(MagicData.MAGIC_SPELLS[51][2]);
player.gfx100(MagicData.MAGIC_SPELLS[51][3]);
player.getPlayerAssistant().createPlayersStillGfx(144, itemX, itemY, 0,
72);
c.getPlayerAssistant().createPlayersProjectile(c.getX(), c.getY(),
player.getPlayerAssistant().createPlayersProjectile(player.getX(), player.getY(),
offX, offY, 50, 70, MagicData.MAGIC_SPELLS[51][4], 50, 10,
0, 50);
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[51][7], 6);
c.getPlayerAssistant().refreshSkill(6);
c.stopMovement();
player.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[51][7], 6);
player.getPlayerAssistant().refreshSkill(6);
player.stopMovement();
}
}
@@ -9,25 +9,24 @@ import com.rebotted.net.packets.PacketType;
public class MoveItems implements PacketType {
@Override
public void processPacket(Player c, int packetType, int packetSize) {
int interfaceId = c.getInStream().readSignedWordBigEndianA();
boolean insertMode = c.getInStream().readSignedByteC() == 1;
int from = c.getInStream().readSignedWordBigEndianA();
int to = c.getInStream().readSignedWordBigEndian();
// c.sendMessage("junk: " + somejunk);
if (c.inTrade) {
c.getTrading().declineTrade();
public void processPacket(Player player, int packetType, int packetSize) {
int interfaceId = player.getInStream().readSignedWordBigEndianA();
boolean insertMode = player.getInStream().readSignedByteC() == 1;
int from = player.getInStream().readSignedWordBigEndianA();
int to = player.getInStream().readSignedWordBigEndian();
if (player.inTrade) {
player.getTrading().declineTrade();
return;
}
if (c.tradeStatus == 1) {
c.getTrading().declineTrade();
if (player.tradeStatus == 1) {
player.getTrading().declineTrade();
return;
}
if (c.duelStatus == 1) {
c.getDueling().declineDuel();
if (player.duelStatus == 1) {
player.getDueling().declineDuel();
return;
}
c.getItemAssistant().moveItems(from, to, interfaceId, insertMode);
c.endCurrentTask();
player.getItemAssistant().moveItems(from, to, interfaceId, insertMode);
player.endCurrentTask();
}
}
@@ -6,9 +6,9 @@ import com.rebotted.net.packets.PacketType;
public class Report implements PacketType {
@Override
public void processPacket(Player c, int packetType, int packetSize) {
public void processPacket(Player player, int packetType, int packetSize) {
try {
ReportHandler.handleReport(c);
ReportHandler.handleReport(player);
} catch (Exception e) {
e.printStackTrace();
}
@@ -9,7 +9,7 @@ import com.rebotted.net.packets.PacketType;
public class SilentPacket implements PacketType {
@Override
public void processPacket(Player c, int packetType, int packetSize) {
public void processPacket(Player player, int packetType, int packetSize) {
}
}
@@ -11,28 +11,28 @@ import com.rebotted.net.packets.PacketType;
public class Trade implements PacketType {
@Override
public void processPacket(Player c, int packetType, int packetSize) {
int tradeId = c.getInStream().readSignedWordBigEndian();
c.getPlayerAssistant().resetFollow();
c.endCurrentTask();
if (c.disconnected) {
c.tradeStatus = 0;
public void processPacket(Player player, int packetType, int packetSize) {
int tradeId = player.getInStream().readSignedWordBigEndian();
player.getPlayerAssistant().resetFollow();
player.endCurrentTask();
if (player.disconnected) {
player.tradeStatus = 0;
}
if (c.duelingArena()) {
c.getPacketSender().sendMessage("You can't trade inside the arena!");
if (player.duelingArena()) {
player.getPacketSender().sendMessage("You can't trade inside the arena!");
return;
}
if (c.playerRights == 2 && !GameConstants.ADMIN_CAN_TRADE) {
c.getPacketSender().sendMessage("Trading as an admin has been disabled.");
if (player.playerRights == 2 && !GameConstants.ADMIN_CAN_TRADE) {
player.getPacketSender().sendMessage("Trading as an admin has been disabled.");
return;
}
if(tradeId < 1) {
return;
}
if (tradeId != c.playerId) {
c.getTrading().requestTrade(tradeId);
if (tradeId != player.playerId) {
player.getTrading().requestTrade(tradeId);
}
}
@@ -181,7 +181,7 @@ public class Boundary {
public static final Boundary[] BANK_AREA = new Boundary[] {
new Boundary(3205, 3212, 3217, 3224, 2), //Lumbridge
new Boundary(3162, 3271, 3266, 3272),//Al Kharid
new Boundary(3161, 3173, 3269, 3272),//Al Kharid
new Boundary(2436, 2453, 5174, 5186),//TzHaar
new Boundary(2842, 2860, 2950, 2957),//Shilo
new Boundary(3456, 3492, 3200, 3215),//Burgh d rott
@@ -209,7 +209,7 @@ public class Boundary {
new Boundary(2834, 2841, 10204, 10215),//Keldagrim
new Boundary(2379, 2386, 4453, 4462),//Zanaris
new Boundary(2582, 2591, 3417, 3423),//Fishing Guild
new Boundary(3509, 3516, 3417, 3423),//Canifis
new Boundary(3509, 3515, 3475, 3483),//Canifis
new Boundary(3297, 3311, 3115, 3133),//Shantay Pass
new Boundary(3035, 3049, 4967, 4977, 1),//Rogues Den
};
@@ -142,25 +142,21 @@ public class Region {
public static boolean canShoot(int x, int y, int z, int direction) {
if (direction == 0) {
return !projectileBlockedNorthWest(x, y, z) && !projectileBlockedNorth(x, y, z)
&& !projectileBlockedWest(x, y, z);
return !projectileBlockedNorthWest(x, y, z) && !projectileBlockedNorth(x, y, z) && !projectileBlockedWest(x, y, z);
} else if (direction == 1) {
return !projectileBlockedNorth(x, y, z);
} else if (direction == 2) {
return !projectileBlockedNorthEast(x, y, z) && !projectileBlockedNorth(x, y, z)
&& !projectileBlockedEast(x, y, z);
return !projectileBlockedNorthEast(x, y, z) && !projectileBlockedNorth(x, y, z) && !projectileBlockedEast(x, y, z);
} else if (direction == 3) {
return !projectileBlockedWest(x, y, z);
} else if (direction == 4) {
return !projectileBlockedEast(x, y, z);
} else if (direction == 5) {
return !projectileBlockedSouthWest(x, y, z) && !projectileBlockedSouth(x, y, z)
&& !projectileBlockedWest(x, y, z);
return !projectileBlockedSouthWest(x, y, z) && !projectileBlockedSouth(x, y, z) && !projectileBlockedWest(x, y, z);
} else if (direction == 6) {
return !projectileBlockedSouth(x, y, z);
} else if (direction == 7) {
return !projectileBlockedSouthEast(x, y, z) && !projectileBlockedSouth(x, y, z)
&& !projectileBlockedEast(x, y, z);
return !projectileBlockedSouthEast(x, y, z) && !projectileBlockedSouth(x, y, z) && !projectileBlockedEast(x, y, z);
}
return false;
}