From cb65d892974ae3f2013ed9824667a2c276470c4a Mon Sep 17 00:00:00 2001 From: Mr Extremez Date: Thu, 12 Mar 2020 18:13:22 -0500 Subject: [PATCH] Update (#394) Closes #393 - Sophanem city gates now functioning Closes #392 - Improved rug travel, added missing travel options Closes #391 - Added those curtains, along with many more curtains and other functional objects Closes #390 - Dramen branch now untradeable/same with staff Closes #389 - Lumbridge door should no longer get stuck, should fix other doors aswell Closes #388 - Added Rasolo npc spawn Closes #385 - Added missing fishing guild spawns Closes #384 - Added missing port khazard npcs and a few other missing npcs too Closes #379 - Added smelt x option Closes #334 - Fixed dragon dagger store price and fixed high alch/low alch value for it Closes #278 - Fixed strange numbers on runecrafting interface Closes #244 -These were previously fixed Also included: - Added recieving random gems when mining (thanks to ben for pointing this out) - Reduced door usage delay - Random cleanup and deleted some unsued files/code - Fixed many npc item drop names (thanks to iizyy for pointing them out) - Fixed a few wizard tower doors - Did more cleanup with the some of the old boundary methods - Tidied up the discord commands and added the proper urls for them --- 2006Redone Client/bin/.gitignore | 35 ++ 2006Redone Server/data/cfg/spawn-config.cfg | 14 +- 2006Redone Server/data/data/itemdef.json | 4 +- .../main/java/com/rebotted/GameEngine.java | 2 +- .../game/content/combat/npcs/NpcCombat.java | 5 +- .../game/content/minigames/Barrows.java | 9 +- .../minigames/trawler/TrawlerWaitingRoom.java | 6 +- .../minigames/trawler/WaitingRoom.java | 4 +- .../game/content/skills/SkillData.java | 2 +- .../game/content/skills/core/Mining.java | 53 ++- .../skills/crafting/JewelryMaking.java | 22 +- .../game/content/skills/crafting/Pottery.java | 42 +-- .../content/skills/crafting/Spinning.java | 4 +- .../content/skills/firemaking/Firemaking.java | 2 +- .../content/skills/fletching/LogCutting.java | 32 +- .../content/skills/runecrafting/Tiaras.java | 4 +- .../content/skills/smithing/Smelting.java | 11 +- .../content/skills/smithing/Smithing.java | 27 +- .../game/content/traveling/CarpetTravel.java | 59 ++++ .../game/dialogues/DialogueHandler.java | 191 ++++++----- .../game/dialogues/DialogueOptions.java | 279 +++++++++++++++- .../game/globalworldobjects/PassDoor.java | 7 +- .../rebotted/game/items/ItemAssistant.java | 63 +--- .../rebotted/game/items/ItemConstants.java | 3 +- .../com/rebotted/game/npcs/NpcActions.java | 16 +- .../com/rebotted/game/npcs/NpcHandler.java | 2 +- .../rebotted/game/npcs/drops/NPCDrops.java | 36 +- .../rebotted/game/objects/ObjectDefaults.java | 134 ++++++-- .../rebotted/game/objects/ObjectsActions.java | 26 +- .../game/objects/impl/OpenObject.java | 41 +++ .../game/objects/impl/OtherObjects.java | 307 +++++++++++------- .../game/objects/impl/SpecialObjects.java | 118 ------- .../com/rebotted/game/players/Location.java | 21 -- .../com/rebotted/game/players/Player.java | 59 +--- .../game/players/PlayerAssistant.java | 7 +- .../rebotted/game/players/PlayerHandler.java | 2 +- .../java/com/rebotted/game/shops/Shops.java | 179 ++-------- .../integrations/discord/JavaCord.java | 1 - .../discord/commands/Commands.java | 2 - .../integrations/discord/commands/Forum.java | 2 +- .../discord/commands/HeatMap.java | 15 - .../discord/commands/Hiscores.java | 2 +- .../integrations/discord/commands/Vote.java | 2 +- .../discord/commands/Website.java | 2 +- .../rebotted/net/RS2LoginProtocolDecoder.java | 2 +- .../rebotted/net/packets/PacketHandler.java | 4 +- .../net/packets/impl/ChangeRegions.java | 2 +- .../net/packets/impl/ClickingButtons.java | 237 -------------- .../impl/{BankX2.java => InterfaceX.java} | 9 +- .../net/packets/impl/ItemOnObject.java | 3 +- .../java/com/rebotted/world/Boundary.java | 1 - .../com/rebotted/world/ObjectHandler.java | 22 ++ 52 files changed, 1088 insertions(+), 1046 deletions(-) create mode 100644 2006Redone Client/bin/.gitignore create mode 100644 2006Redone Server/src/main/java/com/rebotted/game/content/traveling/CarpetTravel.java create mode 100644 2006Redone Server/src/main/java/com/rebotted/game/objects/impl/OpenObject.java delete mode 100644 2006Redone Server/src/main/java/com/rebotted/game/objects/impl/SpecialObjects.java delete mode 100644 2006Redone Server/src/main/java/com/rebotted/game/players/Location.java delete mode 100644 2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/HeatMap.java rename 2006Redone Server/src/main/java/com/rebotted/net/packets/impl/{BankX2.java => InterfaceX.java} (90%) diff --git a/2006Redone Client/bin/.gitignore b/2006Redone Client/bin/.gitignore new file mode 100644 index 00000000..03a95bfb --- /dev/null +++ b/2006Redone Client/bin/.gitignore @@ -0,0 +1,35 @@ +/Animable.class +/Animable_Sub3.class +/Animable_Sub4.class +/Animable_Sub5.class +/Animation.class +/Background.class +/Censor.class +/Class11.class +/Class13.class +/Class18.class +/Class21.class +/Class29.class +/Class30_Sub1.class +/Class32.class +/Class33.class +/Class36.class +/Class39.class +/Class4.class +/Class40.class +/Class43.class +/Class47.class +/Class56.class +/Class56_Sub1.class +/Class56_Sub1_Sub1.class +/Class56_Sub1_Sub2.class +/Class6.class +/Client.class +/ClientSettings.class +/CollisionMap.class +/Decompressor.class +/DrawingArea.class +/DummyClass.class +/Entity.class +/EntityDef.class +/Flo.class diff --git a/2006Redone Server/data/cfg/spawn-config.cfg b/2006Redone Server/data/cfg/spawn-config.cfg index acec58fc..8976c950 100644 --- a/2006Redone Server/data/cfg/spawn-config.cfg +++ b/2006Redone Server/data/cfg/spawn-config.cfg @@ -180,6 +180,7 @@ spawn = 32 2662 3306 0 1 4 5 10 1 spawn = 32 2659 3308 0 1 4 5 10 1 spawn = 32 2664 3310 0 1 4 5 10 1 spawn = 32 2663 3301 0 1 4 5 10 1 +spawn = 714 2569 3333 0 1 0 0 0 0 Edmond //ardounge zoo spawn = 1216 2611 3285 0 1 0 0 0 Parroty_Pete spawn = 1215 2612 3287 0 3 0 0 0 Parrots @@ -912,7 +913,10 @@ spawn = 2296 3311 3109 0 0 0 0 0 RUG MERCHANT spawn = 2294 3350 3001 0 0 0 0 0 RUG MERCHANT spawn = 2294 3182 3042 0 0 0 0 0 RUG MERCHANT spawn = 2294 3467 3110 0 0 0 0 0 RUG MERCHANT -spawn = 2294 3400 2918 0 0 0 0 0 RUG MERCHANT +spawn = 2293 3400 2918 0 1 0 0 0 RUG MERCHANT +spawn = 2293 3348 2942 0 1 0 0 0 RUG MERCHANT +spawn = 2293 3287 2813 0 1 0 0 0 RUG MERCHANT +spawn = 2293 3243 2814 0 1 0 0 0 RUG MERCHANT spawn = 107 3298 3280 0 1 4 20 20 Scorpion spawn = 107 3300 3287 0 1 4 20 20 Scorpion spawn = 107 3296 3294 0 1 4 20 20 Scorpion @@ -1609,6 +1613,9 @@ spawn = 253 2597 3147 0 1 10 60 210 Khazard Guard spawn = 253 2580 3163 0 1 10 60 210 Khazard Guard spawn = 255 2577 3167 0 1 10 60 210 Khazard Guard spawn = 254 2580 3174 0 1 10 60 210 +spawn = 555 2656 3153 0 1 0 0 0 General Store +spawn = 555 2641 3172 0 1 0 0 0 General Store +spawn = 466 2667 3162 0 1 0 0 0 Murphy //gnome village spawn = 162 2471 3427 0 1 0 0 0 gnome trainer spawn = 162 2476 3423 1 1 0 0 0 gnome trainer @@ -2327,6 +2334,7 @@ spawn = 310 2604 3417 0 0 0 0 0 FISHING SPOT spawn = 311 2612 3415 0 0 0 0 0 FISHING SPOT spawn = 312 2602 3414 0 0 0 0 0 FISHING SPOT spawn = 313 2602 3419 0 0 0 0 0 FISHING SPOT +spawn = 1972 2596 3403 0 0 0 0 0 GUILD SHOP /*karamja fishing*/ spawn = 316 2921 3178 0 0 0 0 0 FISHING SPOT spawn = 316 2924 3181 0 0 0 0 0 FISHING SPOT @@ -2448,4 +2456,6 @@ spawn = 646 3256 3448 0 1 0 0 0 Curator Haig Halen // LEGENDS GUILD spawn = 932 2728 3378 1 1 0 0 0 Fionella spawn = 933 2725 3381 2 0 0 0 0 Siegfried Erkle -[ENDOFSPAWNLIST] +//Near ardougne +spawn = 1972 2535 3433 0 1 0 0 0 Rasolo +[ENDOFSPAWNLIST] \ No newline at end of file diff --git a/2006Redone Server/data/data/itemdef.json b/2006Redone Server/data/data/itemdef.json index 2493b238..a3bf31f0 100644 --- a/2006Redone Server/data/data/itemdef.json +++ b/2006Redone Server/data/data/itemdef.json @@ -1213,8 +1213,8 @@ {name:"Adamant dagger", itemDescription:"Short and deadly.", shopValue:800, lowAlch:320, highAlch:480, isStackable:true, isNoteable:true, weight:4.0, bonuses:[15.0, 8.0, -4.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 14.0, 0.0, 0.0, 0.0], stand:0, walk:0, run:0, turn90left:0, turn90right:0, turn180:0, attack:0, block:0, id:1212} {name:"Rune dagger", itemDescription:"A powerful dagger.", shopValue:8000, lowAlch:3200, highAlch:4800, isStackable:false, isNoteable:false, weight:4.0, bonuses:[25.0, 12.0, -4.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 24.0, 0.0, 0.0, 0.0], stand:0, walk:0, run:0, turn90left:0, turn90right:0, turn180:0, attack:0, block:0, id:1213} {name:"Rune dagger", itemDescription:"A powerful dagger.", shopValue:8000, lowAlch:3200, highAlch:4800, isStackable:true, isNoteable:true, weight:4.0, bonuses:[25.0, 12.0, -4.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 24.0, 0.0, 0.0, 0.0], stand:0, walk:0, run:0, turn90left:0, turn90right:0, turn180:0, attack:0, block:0, id:1214} -{name:"Dragon dagger", itemDescription:"A powerful dagger.", shopValue:30000, lowAlch:0, highAlch:0, isStackable:false, isNoteable:false, weight:4.0, bonuses:[40.0, 25.0, -4.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 40.0, 0.0, 0.0, 0.0], stand:0, walk:0, run:0, turn90left:0, turn90right:0, turn180:0, attack:0, block:0, id:1215} -{name:"Dragon dagger", itemDescription:"A powerful dagger.", shopValue:30000, lowAlch:0, highAlch:0, isStackable:true, isNoteable:true, weight:4.0, bonuses:[40.0, 25.0, -4.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 40.0, 0.0, 0.0, 0.0], stand:0, walk:0, run:0, turn90left:0, turn90right:0, turn180:0, attack:0, block:0, id:1216} +{name:"Dragon dagger", itemDescription:"A powerful dagger.", shopValue:30000, lowAlch:12000, highAlch:18000, isStackable:false, isNoteable:false, weight:4.0, bonuses:[40.0, 25.0, -4.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 40.0, 0.0, 0.0, 0.0], stand:0, walk:0, run:0, turn90left:0, turn90right:0, turn180:0, attack:0, block:0, id:1215} +{name:"Dragon dagger", itemDescription:"A powerful dagger.", shopValue:30000, lowAlch:12000, highAlch:18000, isStackable:true, isNoteable:true, weight:4.0, bonuses:[40.0, 25.0, -4.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 40.0, 0.0, 0.0, 0.0], stand:0, walk:0, run:0, turn90left:0, turn90right:0, turn180:0, attack:0, block:0, id:1216} {name:"Black dagger", itemDescription:"A vicious black dagger.", shopValue:240, lowAlch:96, highAlch:144, isStackable:false, isNoteable:false, weight:4.0, bonuses:[10.0, 5.0, -4.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 7.0, 0.0, 0.0, 0.0], stand:0, walk:0, run:0, turn90left:0, turn90right:0, turn180:0, attack:0, block:0, id:1217} {name:"Black dagger", itemDescription:"A vicious black dagger.", shopValue:240, lowAlch:96, highAlch:144, isStackable:true, isNoteable:true, weight:4.0, bonuses:[10.0, 5.0, -4.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 7.0, 0.0, 0.0, 0.0], stand:0, walk:0, run:0, turn90left:0, turn90right:0, turn180:0, attack:0, block:0, id:1218} {name:"Iron dagger (p)", itemDescription:"Short but pointy.", shopValue:35, lowAlch:14, highAlch:21, isStackable:false, isNoteable:false, weight:4.0, bonuses:[5.0, 3.0, -4.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 4.0, 0.0, 0.0, 0.0], stand:0, walk:0, run:0, turn90left:0, turn90right:0, turn180:0, attack:0, block:0, id:1219} diff --git a/2006Redone Server/src/main/java/com/rebotted/GameEngine.java b/2006Redone Server/src/main/java/com/rebotted/GameEngine.java index 31b8161b..20bc9a66 100644 --- a/2006Redone Server/src/main/java/com/rebotted/GameEngine.java +++ b/2006Redone Server/src/main/java/com/rebotted/GameEngine.java @@ -109,7 +109,7 @@ public class GameEngine { public static int[] cannonsY = new int [50]; public static String[] cannonsO = new String [50]; public static boolean sleeping; - public static boolean UpdateServer = false; + public static boolean updateServer = false; public static long lastMassSave = System.currentTimeMillis(); private static IoAcceptor acceptor; private static ConnectionHandler connectionHandler; diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/combat/npcs/NpcCombat.java b/2006Redone Server/src/main/java/com/rebotted/game/content/combat/npcs/NpcCombat.java index 2ea6cd5b..d6c8eee8 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/combat/npcs/NpcCombat.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/combat/npcs/NpcCombat.java @@ -13,6 +13,7 @@ import com.rebotted.game.players.Client; import com.rebotted.game.players.Player; import com.rebotted.game.players.PlayerHandler; import com.rebotted.util.Misc; +import com.rebotted.world.Boundary; public class NpcCombat { @@ -99,7 +100,7 @@ public class NpcCombat { if (NpcHandler.npcs[i].absY == 3228 && c.absY == 3227 || NpcHandler.npcs[i].absY == 3224 && c.absY == 3225 || NpcHandler.npcs[i].absY == 3226 && c.absY == 3227 - || c.inDraynorBuilding() && (NpcHandler.npcs[i].npcType == 172 || NpcHandler.npcs[i].npcType == 174) + || Boundary.isIn(c, Boundary.DRAYNOR_BUILDING) && (NpcHandler.npcs[i].npcType == 172 || NpcHandler.npcs[i].npcType == 174) || NpcHandler.npcs[i].inLesserNpc() || !c.npcCanAttack || NpcHandler.npcs[i].isDead) { @@ -114,7 +115,7 @@ public class NpcCombat { || NpcHandler.npcs[i].npcType == 752) { return; } - if (NpcHandler.npcs[i].npcType == 1401 && c.isInTut() || c.tutorialProgress < 36) { + if (NpcHandler.npcs[i].npcType == 1401 && Boundary.isIn(c, Boundary.TUTORIAL) || c.tutorialProgress < 36) { return; } if (NpcHandler.npcs[i].npcType == 9 && c.absX == 3180 && c.absY > 3433 && c.absY < 3447) { diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/minigames/Barrows.java b/2006Redone Server/src/main/java/com/rebotted/game/content/minigames/Barrows.java index 08a1e8a1..6ab08c54 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/minigames/Barrows.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/minigames/Barrows.java @@ -4,6 +4,7 @@ import com.rebotted.game.content.quests.QuestRewards; import com.rebotted.game.npcs.NpcHandler; import com.rebotted.game.players.Player; import com.rebotted.util.Misc; +import com.rebotted.world.Boundary; public class Barrows { @@ -106,7 +107,7 @@ public class Barrows { * Stair data */ public void useStairs() { - if (c.isInBarrows2()) { + if (Boundary.isIn(c, Boundary.BARROWS_UNDERGROUND)) { switch(c.objectId) { case 6703: c.getPlayerAssistant().movePlayer(barrowData[0][5], barrowData[0][6], 0); @@ -134,7 +135,7 @@ public class Barrows { public void checkCoffins() { - if (c.isInBarrows2()) { + if (Boundary.isIn(c, Boundary.BARROWS_UNDERGROUND)) { if (c.barrowsKillCount < 5) { c.getPacketSender().sendMessage("You still have to kill the following brothers:"); if (c.barrowsNpcs[2][1] == 0) { @@ -170,7 +171,7 @@ public class Barrows { * Grabs the reward based on random chance depending on what your killcount is. */ public void reward() { - if (c.isInBarrows2()) { + if (Boundary.isIn(c, Boundary.BARROWS_UNDERGROUND)) { c.getItemAssistant().addItem(randomRunes(), Misc.random(150) + 100); c.getItemAssistant().addItem(randomRunes(), Misc.random(150) + 100); c.getItemAssistant().addItem(randomPots(), 1); @@ -214,7 +215,7 @@ public class Barrows { * Using the chest. */ public void useChest() { - if (c.isInBarrows2()) { + if (Boundary.isIn(c, Boundary.BARROWS_UNDERGROUND)) { if (!checkBarrows()) { c.getPacketSender().sendMessage("You haven't killed all the brothers!"); return; diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/minigames/trawler/TrawlerWaitingRoom.java b/2006Redone Server/src/main/java/com/rebotted/game/content/minigames/trawler/TrawlerWaitingRoom.java index 2da1f757..727465bd 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/minigames/trawler/TrawlerWaitingRoom.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/minigames/trawler/TrawlerWaitingRoom.java @@ -1,12 +1,12 @@ package com.rebotted.game.content.minigames.trawler; -import com.rebotted.game.players.Location; import com.rebotted.game.players.Player; +import com.rebotted.world.Boundary; public class TrawlerWaitingRoom extends WaitingRoom { private Trawler trawler; - private Location boat = new Location(2668,2674,3165,3185); + private Boundary boat = new Boundary(2668,2674,3165,3185); //private Location boat = new Location(2808, 2811,3415,3425); @@ -53,7 +53,7 @@ public class TrawlerWaitingRoom extends WaitingRoom { } } - public Location getLocation() { + public Boundary getLocation() { return boat; } diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/minigames/trawler/WaitingRoom.java b/2006Redone Server/src/main/java/com/rebotted/game/content/minigames/trawler/WaitingRoom.java index 56511875..874c81ce 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/minigames/trawler/WaitingRoom.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/minigames/trawler/WaitingRoom.java @@ -4,8 +4,8 @@ import java.util.ArrayList; import com.rebotted.event.CycleEvent; import com.rebotted.event.CycleEventContainer; import com.rebotted.event.CycleEventHandler; -import com.rebotted.game.players.Location; import com.rebotted.game.players.Player; +import com.rebotted.world.Boundary; public abstract class WaitingRoom { @@ -15,7 +15,7 @@ public abstract class WaitingRoom { private int minutes_remaining; private boolean active; - public abstract Location getLocation(); + public abstract Boundary getLocation(); public abstract boolean startGame(); public abstract void onStart(); public abstract void onLeave(Player player); diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/SkillData.java b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/SkillData.java index aa963cf7..10310184 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/SkillData.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/SkillData.java @@ -28,7 +28,7 @@ public enum SkillData { THIEVING(17, 4261, 4263, 4264, 4022, 4023, 4098, 4099), SLAYER(18, 12122, 12123, 12124, 12166, 12167, 12171, 12172), FARMING(19, 12122, 12123, 12124, 13926, 13927, 13921, 13922), - RUNECRAFTING(20, 4267, 4268, 4269, 4152, 4153, 4157, 4158); + RUNECRAFTING(20, 4267, 4268, 4269, 4152, 4153, 4157, 4159); /** * The identifier for this skill. diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/core/Mining.java b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/core/Mining.java index ab4cf412..fa25ed95 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/core/Mining.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/core/Mining.java @@ -10,6 +10,29 @@ import com.rebotted.world.clip.Region; public class Mining { + /** + * Andrew (Mr Extremez) + */ + private static final int[] RANDOM_GEMS = {1617, 1619, 1621, 1623}; + private static final int[] GLORIES = {1706, 1708, 1710, 1712}; + + public boolean giveGem(Player player) { + for (int i = 0; i < GLORIES.length; i++) { + if ((player.playerEquipment[player.playerAmulet] == GLORIES[i] && Misc.random(86) == 1) || Misc.random(256) == 1) { + return true; + } + } + return false; + } + + public void obtainGem(Player player) { + int reward = RANDOM_GEMS[(int)(RANDOM_GEMS.length * Math.random())]; + if (giveGem(player)) { + player.getItemAssistant().addItem(reward, 1); + player.getPacketSender().sendMessage("You found an " + ItemAssistant.getItemName(reward) + "."); + } + } + public final int[][] Pick_Settings = { {1265, 1, 1, 625}, //Bronze {1267, 1, 2, 626}, //Iron @@ -56,7 +79,7 @@ public class Mining { COPPER(new int[] { 3042, 2091, 2090, 9708, 9709, 9710, 11960, 14906, 14907 }, 1, 18, 1, 4, new int[] { 436 }), TIN(new int[] { 2094, 2095, 3043, 9716, 9714, 11958, 11957, 11959, 11933, 11934, 11935, 14903, 14902 }, 1, 18, 1, 4, new int[] { 438 }), BLURITE(new int[] { 10574, 10583, 10584, 2110 }, 10, 20, 1, 42, new int[] { 668 }), - IRON(new int[] { 2093, 2092, 9717, 9718, 9719, 11962, 11956, 11954, 14856, 14857, 14858, 14914, 14913 }, 15, 35, 2, 9, new int[] { 440 }), + IRON(new int[] { 450, 2093, 2092, 9717, 9718, 9719, 11962, 11956, 11954, 14856, 14857, 14858, 14914, 14913 }, 15, 35, 2, 9, new int[] { 440 }), SILVER(new int[] { 2101, 11186, 11187, 11188, 2100 }, 20, 40, 3, 100, new int[] { 442 }), COAL(new int[] { 2096, 2097, 11963, 11964, 14850, 14851, 14852, 11930, 11931, 11932 }, 30, 50, 4, 50, new int[] { 453 }), GOLD(new int[] { 2099, 2098, 11183, 11184, 11185, 9720, 9722 }, 40, 65, 6, 100, new int[] { 444 }), @@ -204,9 +227,13 @@ public class Mining { return; } if (player.isMining) { - player.getItemAssistant().addItem(oreID, 1); - player.getPlayerAssistant().addSkillXP(rock.getXp(), player.playerMining); - player.getPacketSender().sendMessage("You manage to mine some " + ItemAssistant.getItemName(oreID).toLowerCase() + "."); + if (!giveGem(player)) { + player.getItemAssistant().addItem(oreID, 1); + player.getPlayerAssistant().addSkillXP(rock.getXp(), player.playerMining); + player.getPacketSender().sendMessage("You manage to mine some " + ItemAssistant.getItemName(oreID).toLowerCase() + "."); + } else { + obtainGem(player); + } } if (player.tutorialProgress == 17) { if (rock != rockData.TIN) { @@ -303,9 +330,7 @@ public class Mining { @Override public void execute(CycleEventContainer container) { if (player.tutorialProgress == 15) { - player.getPacketSender().sendMessage( - "This rock contains " - + itemName.toLowerCase() + "."); + player.getPacketSender().sendMessage("This rock contains " + itemName.toLowerCase() + "."); player.getPacketSender().chatbox(6180); player.getDialogueHandler() .chatboxText( @@ -320,9 +345,7 @@ public class Mining { container.stop(); return; } else if (player.tutorialProgress == 16) { - player.getPacketSender().sendMessage( - "This rock contains " - + itemName.toLowerCase() + "."); + player.getPacketSender().sendMessage("This rock contains " + itemName.toLowerCase() + "."); player.getPacketSender().chatbox(6180); player.getDialogueHandler() .chatboxText( @@ -335,10 +358,8 @@ public class Mining { container.stop(); return; } - player.getPacketSender().sendMessage( - "This rock contains " - + itemName.toLowerCase() + "."); - stop(); + player.getPacketSender().sendMessage("This rock contains " + itemName.toLowerCase() + "."); + container.stop(); } @Override @@ -365,8 +386,8 @@ public class Mining { public static void prospectNothing(final Player c) { c.getPacketSender().sendMessage("You examine the rock for ores..."); - CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() { - @Override + CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() { + @Override public void execute(CycleEventContainer container) { c.getPacketSender().sendMessage("There is no ore left in this rock."); container.stop(); diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/crafting/JewelryMaking.java b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/crafting/JewelryMaking.java index bb17aca8..1927fd72 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/crafting/JewelryMaking.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/crafting/JewelryMaking.java @@ -58,8 +58,7 @@ public class JewelryMaking { c.getPacketSender().sendString("", 4236); } else { c.getPacketSender().sendFrame246(4235, 120, 1597); - c.getPacketSender().sendString( - "You need a necklace mould to craft necklaces", 4236); + c.getPacketSender().sendString("You need a necklace mould to craft necklaces", 4236); for (int i = 0; i < MOULD_INTERFACE_IDS[1].length; i++) { c.getPacketSender().sendFrame34(-1, i, 4239, 1); } @@ -83,8 +82,7 @@ public class JewelryMaking { } } - public static void stringAmulet(final Player c, final int itemUsed, - final int usedWith) { + public static void stringAmulet(final Player c, final int itemUsed, final int usedWith) { final int amuletId = itemUsed == 1759 ? usedWith : itemUsed; for (final CraftingData.amuletData a : CraftingData.amuletData.values()) { if (amuletId == a.getAmuletId()) { @@ -138,17 +136,14 @@ public class JewelryMaking { return; } if (player.playerLevel[player.playerCrafting] >= lvl) { - if (ItemAssistant.getItemName(itemAdd).toLowerCase() - .contains("gold") + if (ItemAssistant.getItemName(itemAdd).toLowerCase().contains("gold") && !player.getItemAssistant().playerHasItem(GOLD_BAR, 1) || !player.getItemAssistant().playerHasItem(GOLD_BAR, 1)) { - player.getPacketSender().sendMessage( - "You need a Gold bar to make this."); + player.getPacketSender().sendMessage("You need a Gold bar to make this."); return; } else if (!player.getItemAssistant().playerHasItem(gem, 1) && player.getItemAssistant().playerHasItem(GOLD_BAR, 1)) { - player.getPacketSender().sendMessage( - getRequiredMessage(ItemAssistant.getItemName(gem))); + player.getPacketSender().sendMessage(getRequiredMessage(ItemAssistant.getItemName(gem))); return; } player.getPacketSender().closeAllWindows(); @@ -166,9 +161,7 @@ public class JewelryMaking { done++; } if (done == 1) { - player.getPacketSender().sendMessage( - "You craft the gold to form a " - + ItemAssistant.getItemName(itemAdd) + "."); + player.getPacketSender().sendMessage("You craft the gold to form a " + ItemAssistant.getItemName(itemAdd) + "."); } else if (done > 1) { player.getPacketSender().sendMessage( "You craft the gold to form " + done @@ -176,8 +169,7 @@ public class JewelryMaking { + "'s."); } } else { - player.getPacketSender().sendMessage( - "You need a Crafting level of " + lvl + " to craft this."); + player.getPacketSender().sendMessage("You need a Crafting level of " + lvl + " to craft this."); return; } } diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/crafting/Pottery.java b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/crafting/Pottery.java index 328f29ed..bd24af5b 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/crafting/Pottery.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/crafting/Pottery.java @@ -74,24 +74,19 @@ public class Pottery { c.startAnimation(unFire); c.getItemAssistant().deleteItem(softClay, 1); c.getItemAssistant().addItem(id, 1); - c.getPacketSender().sendMessage( - "You make the soft clay into a " - + ItemAssistant.getItemName(id) + "."); + c.getPacketSender().sendMessage("You make the soft clay into a " + ItemAssistant.getItemName(id) + "."); c.getPlayerAssistant().addSkillXP(xp, c.playerCrafting); c.doAmount--; } if (c.playerLevel[12] < level) { container.stop(); - c.getPacketSender().sendMessage( - "You need a crafting level of " + level - + " to make this."); + c.getPacketSender().sendMessage("You need a crafting level of " + level + " to make this."); } if (!c.getItemAssistant().playerHasItem(softClay)) { container.stop(); - c.getPacketSender().sendMessage( - "You need soft clay to do this."); + c.getPacketSender().sendMessage("You need soft clay to do this."); } if (c.isPotCrafting == false) { @@ -123,46 +118,31 @@ public class Pottery { player.getItemAssistant().addItem(finishId, 1); player.startAnimation(Fire); player.getPacketSender().sendSound(469, 100, 0); - player.getPacketSender().sendMessage( - "You put a " + ItemAssistant.getItemName(startId) - + " into the oven."); - player.getPacketSender().sendMessage( - "You retrieve the " + ItemAssistant.getItemName(finishId) - + " from the oven."); + player.getPacketSender().sendMessage("You put a " + ItemAssistant.getItemName(startId) + " into the oven."); + player.getPacketSender().sendMessage("You retrieve the " + ItemAssistant.getItemName(finishId) + " from the oven."); player.getPlayerAssistant().addSkillXP(xp, player.playerCrafting); player.doAmount--; } if (player.playerLevel[12] < level) { - player.getPacketSender().sendMessage( - "You need a crafting level of " + level + " to make this."); + player.getPacketSender().sendMessage("You need a crafting level of " + level + " to make this."); } - if (!player.getItemAssistant().playerHasItem(startId) - && player.playerLevel[12] >= level) { - player.getPacketSender().sendMessage( - "You need an " + ItemAssistant.getItemName(startId) - + " to do this."); + if (!player.getItemAssistant().playerHasItem(startId) && player.playerLevel[12] >= level) { + player.getPacketSender().sendMessage("You need an " + ItemAssistant.getItemName(startId) + " to do this."); } CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { @Override public void execute(CycleEventContainer container) { - if (player.getItemAssistant().playerHasItem(startId) - && player.playerLevel[12] >= level - && player.isPotCrafting && !(player.doAmount <= 0)) { + if (player.getItemAssistant().playerHasItem(startId) && player.playerLevel[12] >= level && player.isPotCrafting && !(player.doAmount <= 0)) { player.getItemAssistant().deleteItem(startId, 1); player.getItemAssistant().addItem(finishId, 1); player.startAnimation(Fire); player.getPacketSender().sendSound(469, 100, 0); - player.getPacketSender().sendMessage( - "You put a " + ItemAssistant.getItemName(startId) - + " into the oven."); - player.getPacketSender().sendMessage( - "You retrieve the " - + ItemAssistant.getItemName(finishId) - + " from the oven."); + player.getPacketSender().sendMessage("You put a " + ItemAssistant.getItemName(startId) + " into the oven."); + player.getPacketSender().sendMessage("You retrieve the " + ItemAssistant.getItemName(finishId) + " from the oven."); player.getPlayerAssistant().addSkillXP(xp, player.playerCrafting); player.doAmount--; } diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/crafting/Spinning.java b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/crafting/Spinning.java index a4d1a301..b6f661b3 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/crafting/Spinning.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/crafting/Spinning.java @@ -43,9 +43,7 @@ public class Spinning extends CraftingData { if (player.isSpinning == true) { if (player.getItemAssistant().playerHasItem(before)) { if (player.playerLevel[player.playerCrafting] < level) { - player.getDialogueHandler().sendStatement( - "You need a crafting level of " + level - + " to do this."); + player.getDialogueHandler().sendStatement("You need a crafting level of " + level + " to do this."); return; } player.startAnimation(896); diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/firemaking/Firemaking.java b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/firemaking/Firemaking.java index 2453cf93..66478a69 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/firemaking/Firemaking.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/firemaking/Firemaking.java @@ -46,7 +46,7 @@ public class Firemaking { c.getPacketSender().sendMessage("You need a firemaking level of " + l.getLevel() + " to light " + ItemAssistant.getItemName(logId)); return; } - if (Boundary.isIn(c, Boundary.BANK_AREA) || c.inLumbBuilding() || c.inDraynorBuilding()) { + if (Boundary.isIn(c, Boundary.BANK_AREA) || Boundary.isIn(c, Boundary.LUMB_BUILDING) || Boundary.isIn(c, Boundary.DRAYNOR_BUILDING)) { c.getPacketSender().sendMessage("You cannot light a fire here."); return; } diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/fletching/LogCutting.java b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/fletching/LogCutting.java index 4baca9f0..266608f0 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/fletching/LogCutting.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/fletching/LogCutting.java @@ -29,8 +29,7 @@ public class LogCutting { player.getPacketSender().sendMessage("You need a fletching level of " + level + " to make this."); return; } - if (!player.playerIsFletching) - { + if (!player.playerIsFletching) { player.playerIsFletching = true; CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { @Override @@ -43,19 +42,14 @@ public class LogCutting { || player.playerIsCooking || player.isPotCrafting) { container.stop(); return; - } - else - { + } else { player.startAnimation(1248); player.getItemAssistant().deleteItem(player.getFletching().log, 1); - if (product == 52) - { + if (product == 52) { player.getItemAssistant().addItem(product, 15); player.getPacketSender().sendMessage("You carefully cut the " + ItemAssistant.getItemName(player.getFletching().log) + " into 15 " + ItemAssistant.getItemName(product) + "s."); - } - else - { + } else { player.getItemAssistant().addItem(product, 1); player.getPacketSender().sendMessage("You carefully cut the " + ItemAssistant.getItemName(player.getFletching().log) + " into a " + ItemAssistant.getItemName(product) + "."); @@ -291,14 +285,11 @@ public class LogCutting { } public static void wolfBoneArrow(Player c) { - if (c.getItemAssistant().playerHasItem(2859) - && c.getItemAssistant().playerHasItem(1755)) { + if (c.getItemAssistant().playerHasItem(2859) && c.getItemAssistant().playerHasItem(1755)) { final int amount = c.getItemAssistant().getItemAmount(2859); - final int makeAmount = c.getItemAssistant().getItemAmount(2859) - + c.getItemAssistant().getItemAmount(2859) * Misc.random(4); + final int makeAmount = c.getItemAssistant().getItemAmount(2859) + c.getItemAssistant().getItemAmount(2859) * Misc.random(4); if (!c.getItemAssistant().playerHasItem(2859)) { - c.getDialogueHandler().sendStatement( - "You don't have any bones left to chisel."); + c.getDialogueHandler().sendStatement("You don't have any bones left to chisel."); c.nextChat = 0; return; } @@ -321,10 +312,8 @@ public class LogCutting { c.nextChat = 0; return; } - if (c.getItemAssistant().playerHasItem(314) - && c.getItemAssistant().playerHasItem(2864)) { - final int feather = c.getItemAssistant().getItemAmount(314), arrowShaft = c - .getItemAssistant().getItemAmount(2864); + if (c.getItemAssistant().playerHasItem(314) && c.getItemAssistant().playerHasItem(2864)) { + final int feather = c.getItemAssistant().getItemAmount(314), arrowShaft = c.getItemAssistant().getItemAmount(2864); if (feather == arrowShaft * 4) { c.startAnimation(1248); c.getItemAssistant().deleteItem(314, feather * 4); @@ -349,8 +338,7 @@ public class LogCutting { return; } final int wolfBoneArrow = c.getItemAssistant().getItemAmount(2861), flightedArrow = c.getItemAssistant().getItemAmount(2865); - if (c.getItemAssistant().playerHasItem(2861) - && c.getItemAssistant().playerHasItem(2865)) { + if (c.getItemAssistant().playerHasItem(2861) && c.getItemAssistant().playerHasItem(2865)) { if (wolfBoneArrow == flightedArrow) { c.startAnimation(1248); c.getItemAssistant().addItem(2866, wolfBoneArrow); diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/runecrafting/Tiaras.java b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/runecrafting/Tiaras.java index 287dfee0..04f5d38e 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/runecrafting/Tiaras.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/runecrafting/Tiaras.java @@ -15,9 +15,7 @@ public class Tiaras { if (player.getItemAssistant().playerHasItem(5525)) { player.getItemAssistant().deleteItem(5525, 1); player.getItemAssistant().addItem(ruin[1], 1); - player.getPacketSender() - .sendMessage( - "You bind the power of the talisman into the tiara."); + player.getPacketSender().sendMessage("You bind the power of the talisman into the tiara."); } return true; } diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/smithing/Smelting.java b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/smithing/Smelting.java index a1c4cd6c..9dc0db78 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/smithing/Smelting.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/smithing/Smelting.java @@ -57,7 +57,12 @@ public class Smelting extends SkillHandler { */ public static void doAmount(Player c, int amount, int bartype) { c.doAmount = amount; - smeltBar(c, bartype); + if (amount == 28) { + c.smeltingItem = bartype; + c.getOutStream().createFrame(27); + } else { + smeltBar(c, bartype); + } } /** @@ -65,7 +70,7 @@ public class Smelting extends SkillHandler { * * @param c */ - private static void smeltBar(final Player c, int bartype) { + public static void smeltBar(final Player c, int bartype) { for (int i = 0; i < data.length; i++) { if (bartype == data[i][0]) { // Check player has the correct smithing level @@ -329,4 +334,4 @@ public class Smelting extends SkillHandler { } } -} +} \ No newline at end of file diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/smithing/Smithing.java b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/smithing/Smithing.java index e19898be..67ea8ae9 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/content/skills/smithing/Smithing.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/skills/smithing/Smithing.java @@ -9,19 +9,23 @@ import com.rebotted.game.players.Player; public class Smithing { private int addItem, xp, removeItem, removeAmount, makeTimes; + + private boolean hasItem(Player player, int type, String string) { + return (ItemAssistant.getItemName(type).contains(string)); + } public void readInput(Player player, int levelReq, int type, int amountToMake) { - if (ItemAssistant.getItemName(type).contains("Bronze")) { + if (hasItem(player, type, "Bronze")) { removeItem = 2349; - } else if (ItemAssistant.getItemName(type).contains("Iron")) { + } else if (hasItem(player, type, "Iron")) { removeItem = 2351; - } else if (ItemAssistant.getItemName(type).contains("Steel")) { + } else if (hasItem(player, type, "Steel")) { removeItem = 2353; - } else if (ItemAssistant.getItemName(type).contains("Mith")) { + } else if (hasItem(player, type, "Mith")) { removeItem = 2359; - } else if (ItemAssistant.getItemName(type).contains("Adam") || ItemAssistant.getItemName(type).contains("Addy")) { + } else if (hasItem(player, type, "Adam") || hasItem(player, type, "Addy")) { removeItem = 2361; - } else if (ItemAssistant.getItemName(type).contains("Rune") || ItemAssistant.getItemName(type).contains("Runite")) { + } else if (hasItem(player, type, "Rune") || hasItem(player, type, "Runite")) { removeItem = 2363; } checkBar(player, levelReq, amountToMake, type); @@ -56,15 +60,8 @@ public class Smithing { @Override public void execute(CycleEventContainer container) { if (player.doAmount <= 0 || !player.getItemAssistant().playerHasItem(removeItem, removeItem2) - || !player.isSmithing || player.isWoodcutting - || player.isCrafting || player.isMoving - || player.isMining || player.isBusy - || player.isShopping || player.isFletching - || player.isFiremaking || player.isSpinning - || player.isPotionMaking || player.playerIsFishing - || player.isBanking || player.isSmelting - || player.isTeleporting || player.isHarvesting - || player.playerIsCooking || player.isPotCrafting) { + || !player.isSmithing || player.isBanking + || player.isSmelting) { container.stop(); } else { player.startAnimation(898); diff --git a/2006Redone Server/src/main/java/com/rebotted/game/content/traveling/CarpetTravel.java b/2006Redone Server/src/main/java/com/rebotted/game/content/traveling/CarpetTravel.java new file mode 100644 index 00000000..faae6f3a --- /dev/null +++ b/2006Redone Server/src/main/java/com/rebotted/game/content/traveling/CarpetTravel.java @@ -0,0 +1,59 @@ +package com.rebotted.game.content.traveling; + +import com.rebotted.event.CycleEvent; +import com.rebotted.event.CycleEventContainer; +import com.rebotted.event.CycleEventHandler; +import com.rebotted.game.players.Player; + +/** + * Aug 31, 2017 : 6:54:30 AM + * CarpetTravel.java + * @author Andrew (Mr Extremez) + */ +public class CarpetTravel { + + public static void carpetTravel(final Player player, final int x, final int y) { + if (!player.getItemAssistant().playerHasItem(995, 200)) { + player.getDialogueHandler().itemMessage("You need 200 gold to ride my rug.", 995, 200); + player.getDialogueHandler().endDialogue(); + return; + } + player.getPacketSender().sendMessage("You travel into the desert on your magic carpet."); + player.getItemAssistant().deleteItem(995, 200); + CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { + @Override + public void execute(CycleEventContainer container) { + // TODO Auto-generated method stub + player.startAnimation(2262); + CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { + @Override + public void execute(CycleEventContainer container) { + // TODO Auto-generated method stub + player.getPlayerAssistant().movePlayer(x, y, 0); + //PlayerAssistant.playerWalk(c,x,y); + player.getPacketSender().closeAllWindows(); + player.getPacketSender().sendMessage("You arrive at your destination."); + container.stop(); + } + + @Override + public void stop() { + // TODO Auto-generated method stub + + } + + }, 1); + container.stop(); + } + + @Override + public void stop() { + // TODO Auto-generated method stub + + } + + }, 2); + player.getPacketSender().closeAllWindows(); + } + +} diff --git a/2006Redone Server/src/main/java/com/rebotted/game/dialogues/DialogueHandler.java b/2006Redone Server/src/main/java/com/rebotted/game/dialogues/DialogueHandler.java index 8aef3704..36d138d6 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/dialogues/DialogueHandler.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/dialogues/DialogueHandler.java @@ -9,10 +9,11 @@ import com.rebotted.game.content.randomevents.RandomEventHandler; import com.rebotted.game.content.skills.SkillHandler; import com.rebotted.game.content.skills.farming.Farmers; import com.rebotted.game.content.skills.slayer.Slayer; +import com.rebotted.game.content.traveling.CarpetTravel; import com.rebotted.game.content.traveling.Sailing; import com.rebotted.game.globalworldobjects.PassDoor; import com.rebotted.game.npcs.NpcHandler; -import com.rebotted.game.objects.impl.SpecialObjects; +import com.rebotted.game.objects.impl.OtherObjects; import com.rebotted.game.players.Player; import com.rebotted.game.players.PlayerAssistant; import com.rebotted.game.shops.Shops.Shop; @@ -30,6 +31,14 @@ public class DialogueHandler { player.nextChat = 0; player.dialogueAction = 0; } + + public void setOptionId(int id) { + player.dialogueAction = id; + } + + public void setNextDialogue(int id) { + player.nextChat = id; + } public void sendDialogues(int dialogue, int npcId) { int MOLE_SKIN = player.getItemAssistant().getItemAmount(7418), MOLE_CLAW = player.getItemAssistant().getItemAmount(7416); @@ -209,73 +218,8 @@ public class DialogueHandler { player.nextChat = 0; break; - case 24: - if (player.getItemAssistant().playerHasItem(995, 200)) { - sendNpcChat3("Hello Fair Traveler.", - "Can i interest you in a ride back to shantay", - "for 200 coins?", player.talkingNpc, "Rug Merchant"); - player.nextChat = 25; - } else { - sendNpcChat1("You need 200 coins to travel my rug.", - player.talkingNpc, "Rug Merchant"); - player.nextChat = 0; - } - break; - - case 25: - sendPlayerChat("Yes please."); - player.getPlayerAssistant().startTeleport(3308, 3108, 0, "modern"); - player.getItemAssistant().deleteItem(995, 200); - player.nextChat = 0; - break; - - case 26: - if (player.getItemAssistant().playerHasItem(995, 200)) { - sendNpcChat2("Hello Fair Traveler.", - "Can i interest you in a ride for 200 coins?", - player.talkingNpc, "Rug Merchant"); - player.nextChat = 27; - } else { - sendNpcChat1("You need 200 coins to travel my rug.", - player.talkingNpc, "Rug Merchant"); - player.nextChat = 0; - } - break; - - case 27: - sendOption("Pollnivneach (North)", "Bedabin Camp", "Uzer", - "Shantay Pass"); - player.dialogueAction = 700; - break; - - case 28: - sendPlayerChat("Pollnivneach please."); - player.getPlayerAssistant().startTeleport(3350, 3004, 0, "modern"); - player.nextChat = 32; - break; - case 29: - sendPlayerChat("Bedabin Camp please."); - player.getPlayerAssistant().startTeleport(3180, 3043, 0, "modern"); - player.nextChat = 32; - break; - case 30: - sendPlayerChat("Uzer please."); - player.getPlayerAssistant().startTeleport(3469, 3111, 0, "modern"); - player.nextChat = 32; - break; - case 31: - sendPlayerChat("Shantay pass please."); - player.getPlayerAssistant().startTeleport(3308, 3108, 0, "modern"); - player.nextChat = 32; - break; - case 32: - sendNpcChat1("Enjoy!", player.talkingNpc, "Rug Merchant"); - player.getItemAssistant().deleteItem(995, 200); - player.nextChat = 0; - break; case 33: - sendNpcChat1("The trip to karamja will cost you 30 coins.", - player.talkingNpc, "Sailor"); + sendNpcChat1("The trip to karamja will cost you 30 coins.", player.talkingNpc, "Sailor"); player.nextChat = 34; break; @@ -4081,16 +4025,10 @@ public class DialogueHandler { case 1027: player.getDialogueHandler().sendStatement( "10 coins are removed from your inventory."); - SpecialObjects.initKharid(player, player.objectId); + OtherObjects.initKharid(player, player.objectId); player.nextChat = 0; break; - /* - * case 1028: client.getDialogueHandlers().sendStatement( - * "10 coins are removed from your inventory."); client.nextChat = 0; - * break; - */ - case 1033: sendOption( "I would like to skip tutorial Island and go to Mainland", @@ -7044,6 +6982,111 @@ public class DialogueHandler { player.getDialogueHandler().sendPlayerChat(ChatEmotes.DEFAULT, "That's all, thanks"); player.getDialogueHandler().endDialogue(); break; + + //24 - 32: + //=700 + case 3555: + player.getDialogueHandler().sendNpcChat(player.npcType, ChatEmotes.DEFAULT, "Hello Fair Traveler.", + "Can I interest you in a ride back to Shantay", + "for 200 coins?"); + player.getDialogueHandler().setNextDialogue(3556); + break; + + case 3556: + player.getDialogueHandler().sendOption("Yes please", "No thanks"); + player.getDialogueHandler().setOptionId(700); + break; + + case 3557: + CarpetTravel.carpetTravel(player, 3308, 3108); + break; + + case 3558: + player.getDialogueHandler().sendPlayerChat(ChatEmotes.DEFAULT, "No thanks."); + player.getDialogueHandler().endDialogue(); + break; + + case 3559: + if (player.getItemAssistant().playerHasItem(995, 200)) { + player.getDialogueHandler().sendNpcChat(player.npcType, ChatEmotes.DEFAULT, "Hello Fair Traveler.", + "Can I interest you in a ride for 200 coins?"); + player.getDialogueHandler().setNextDialogue(3560); + } else { + player.getDialogueHandler().sendNpcChat(player.npcType, ChatEmotes.DEFAULT, "You need 200 coins to travel my rug."); + player.getDialogueHandler().endDialogue(); + } + break; + case 3560: + player.getDialogueHandler().sendOption("Pollnivneach (North)", "Bedabin Camp", "Uzer", "Shantay Pass"); + player.getDialogueHandler().setOptionId(701); + break; + case 3561: + player.getDialogueHandler().sendPlayerChat(ChatEmotes.DEFAULT, "Pollnivneach please."); + CarpetTravel.carpetTravel(player, 3350, 3004); + player.getDialogueHandler().endDialogue(); + break; + case 3562: + player.getDialogueHandler().sendPlayerChat(ChatEmotes.DEFAULT, "Bedabin Camp please."); + CarpetTravel.carpetTravel(player, 3180, 3043); + player.getDialogueHandler().endDialogue(); + break; + case 3563: + player.getDialogueHandler().sendPlayerChat(ChatEmotes.DEFAULT, "Uzer please."); + CarpetTravel.carpetTravel(player, 3469, 3111); + player.getDialogueHandler().endDialogue(); + break; + case 3564: + player.getDialogueHandler().sendPlayerChat(ChatEmotes.DEFAULT, "Shantay pass please."); + CarpetTravel.carpetTravel(player, 3309, 3109); + player.getDialogueHandler().endDialogue(); + break; + + case 3565: + if (player.getItemAssistant().playerHasItem(995, 200)) { + player.getDialogueHandler().sendNpcChat(player.npcType, ChatEmotes.DEFAULT, "Hello Fair Traveler.", + "Can I interest you in a ride for 200 coins?"); + player.getDialogueHandler().setNextDialogue(3566); + } else { + player.getDialogueHandler().sendNpcChat(player.npcType, ChatEmotes.DEFAULT, "You need 200 coins to travel my rug."); + player.getDialogueHandler().endDialogue(); + } + break; + case 3566: + player.getDialogueHandler().sendOption("Sophanem", "Menaphos", "Nardah"); + player.getDialogueHandler().setOptionId(702); + break; + case 3567: + player.getDialogueHandler().sendPlayerChat(ChatEmotes.DEFAULT, "Sophanem please."); + CarpetTravel.carpetTravel(player, 3284, 2813); + player.getDialogueHandler().endDialogue(); + break; + case 3568: + player.getDialogueHandler().sendPlayerChat(ChatEmotes.DEFAULT, "Menaphos please."); + CarpetTravel.carpetTravel(player, 3246, 2813); + player.getDialogueHandler().endDialogue(); + break; + case 3569: + player.getDialogueHandler().sendPlayerChat(ChatEmotes.DEFAULT, "Nardah please."); + CarpetTravel.carpetTravel(player, 3401, 2915); + player.getDialogueHandler().endDialogue(); + break; + case 3570: + player.getDialogueHandler().sendNpcChat(player.npcType, ChatEmotes.DEFAULT, "Hello Fair Traveler.", + "Can I interest you in a ride back to Pollnivneach", + "for 200 coins?"); + player.getDialogueHandler().setNextDialogue(3571); + break; + case 3571: + player.getDialogueHandler().sendOption("Yes please", "No thanks"); + player.getDialogueHandler().setOptionId(703); + break; + case 3572: + CarpetTravel.carpetTravel(player, 3347, 2944); + break; + case 3573: + player.getDialogueHandler().sendPlayerChat(ChatEmotes.DEFAULT, "No thanks."); + player.getDialogueHandler().endDialogue(); + break; } } diff --git a/2006Redone Server/src/main/java/com/rebotted/game/dialogues/DialogueOptions.java b/2006Redone Server/src/main/java/com/rebotted/game/dialogues/DialogueOptions.java index 6d619e6b..79aae9ae 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/dialogues/DialogueOptions.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/dialogues/DialogueOptions.java @@ -14,6 +14,251 @@ public class DialogueOptions { public static void handleDialogueOptions(Player player, int buttonId) { switch (buttonId) { + case 9167: + switch (player.dialogueAction) { + case 63: + player.getDialogueHandler().sendDialogues(166, player.npcType); + return; + case 64: + player.getDialogueHandler().sendDialogues(173, player.npcType); + return; + case 60: + player.getDialogueHandler().sendDialogues(277, player.npcType); + return; + case 61: + player.getDialogueHandler().sendDialogues(295, player.npcType); + return; + case 129: + player.getDialogueHandler().sendDialogues(231, player.npcType); + return; + case 58: + player.getDialogueHandler().sendDialogues(540, player.npcType); + return; + case 68: + player.getDialogueHandler().sendDialogues(39, player.npcType); + return; + case 124: + player.getDialogueHandler().sendDialogues(194, player.npcType); + return; + case 230: + player.getDialogueHandler().sendDialogues(1053, player.npcType); + return; + case 251: + player.getPacketSender().openUpBank(); + player.nextChat = 0; + return; + case 144: + player.getDialogueHandler().sendDialogues(1314, player.npcType); + return; + case 502: + player.getDialogueHandler().sendDialogues(1026, player.npcType); + return; + case 1301: // first option haircut. + player.getDialogueHandler().sendDialogues(1302, 598); + return; + case 53: + if (player.objectId == 1293 || player.objectId == 1317) { + player.getPlayerAssistant().startTeleport(2542, 3169, 0, "modern"); + } else { + player.getPacketSender().sendMessage("You can't teleport there, because you are already there!"); + player.getPacketSender().closeAllWindows(); + } + return; + case 159: + player.getDialogueHandler().sendDialogues(3161, player.npcType); + return; + case 167: + player.getDialogueHandler().sendDialogues(1343, player.npcType); + return; + case 222: + player.getDialogueHandler().sendDialogues(911, player.npcType); + player.dialogueAction = -1; + return; + case 182: + player.getDialogueHandler().sendNpcChat1("No, I was hoping someone could help me find it though.", player.talkingNpc, "Squire"); + player.nextChat = 0; + return; + case 188: + player.getDialogueHandler().sendDialogues(3129, 945); + return; + case 185: + player.getDialogueHandler().sendDialogues(629, player.npcType); + return; + case 186: // Shield of Arrav + player.getDialogueHandler().sendDialogues(629, player.npcType); + return; + case 702: + player.getDialogueHandler().sendDialogues(3567, player.npcType); + return; + } + player.dialogueAction = 0; + player.getPacketSender().closeAllWindows(); + break; + + case 9168: + switch (player.dialogueAction) { + case 63: + player.getDialogueHandler().sendDialogues(167, player.npcType); + return; + case 64: + player.getDialogueHandler().sendDialogues(174, player.npcType); + return; + case 60: + player.getDialogueHandler().sendDialogues(279, player.npcType); + return; + case 61: + player.getDialogueHandler().sendDialogues(297, player.npcType); + return; + case 124: + player.getDialogueHandler().sendDialogues(192, player.npcType); + return; + case 126: + player.getDialogueHandler().sendDialogues(203, player.npcType); + return; + case 58: + player.getDialogueHandler().sendDialogues(538, player.npcType); + return; + case 68: + player.getDialogueHandler().sendDialogues(40, player.npcType); + return; + case 230: + player.getDialogueHandler().sendDialogues(1049, player.npcType); + break; + case 251: + player.getBankPin().bankPinSettings(); + player.nextChat = 0; + return; + case 502: + player.getDialogueHandler().sendDialogues(1022, player.npcType); + return; + case 1301: + player.getDialogueHandler().sendDialogues(1308, 598); + return; + case 144: + player.getDialogueHandler().sendDialogues(1315, player.npcType); + return; + case 53: + if (player.objectId == 1294 || player.objectId == 1317) { + player.getPlayerAssistant().startTeleport(2461, 3444, 0, + "modern"); + } else { + player.getPacketSender().sendMessage("You can't teleport there, because you are already there!"); + player.getPacketSender().closeAllWindows(); + } + return; + case 159: + player.getDialogueHandler().sendDialogues(3195, player.npcType); + return; + case 167: + player.getDialogueHandler().sendDialogues(1344, player.npcType); + return; + case 222: + player.getDialogueHandler().sendDialogues(912, player.npcType); + player.dialogueAction = -1; + return; + case 182: + player.getDialogueHandler().sendDialogues(615, player.npcType); + return; + case 188: + player.getDialogueHandler().sendDialogues(3130, 945); + return; + case 185: + player.getDialogueHandler().sendDialogues(628, player.npcType); + return; + case 186: // Shield of Arrav + player.getDialogueHandler().sendDialogues(628, player.npcType); + return; + case 702: + player.getDialogueHandler().sendDialogues(3568, player.npcType); + return; + } + player.dialogueAction = 0; + player.getPacketSender().closeAllWindows(); + break; + + case 9169: + switch (player.dialogueAction) { + case 63: + player.getDialogueHandler().sendDialogues(168, player.npcType); + return; + case 64: + player.getDialogueHandler().sendDialogues(175, player.npcType); + return; + case 60: + player.getDialogueHandler().sendDialogues(278, player.npcType); + return; + case 61: + player.getDialogueHandler().sendDialogues(296, player.npcType); + return; + case 53: + if (player.objectId == 1294 || player.objectId == 1293) { + player.getPlayerAssistant().startTeleport(3179, 3507, 0, + "modern"); + } else { + player.getPacketSender().sendMessage("You can't teleport there, because you are already there!"); + player.getPacketSender().closeAllWindows(); + } + return; + case 129: + player.getDialogueHandler().sendDialogues(232, player.npcType); + return; + case 126: + player.getDialogueHandler().sendDialogues(204, player.npcType); + return; + case 144: + player.getDialogueHandler().sendDialogues(1316, player.npcType); + return; + case 124: + player.getDialogueHandler().sendDialogues(3193, 741); + return; + case 58: + player.getDialogueHandler().sendDialogues(539, player.npcType); + return; + case 68: + player.getDialogueHandler().sendDialogues(41, player.npcType); + return; + case 230: + player.getDialogueHandler().sendDialogues(1050, player.npcType); + break; + case 251: + player.getDialogueHandler().sendDialogues(1015, 494); + return; + case 502: + player.getDialogueHandler().sendDialogues(1025, player.npcType); + return; + case 1301: + player.getDialogueHandler().sendDialogues(1306, 598); + return; + case 222: + player.getDialogueHandler().sendDialogues(913, player.npcType); + player.dialogueAction = -1; + return; + case 167: + player.getDialogueHandler().sendDialogues(1342, player.npcType); + return; + case 159: + player.getDialogueHandler().sendDialogues(3160, player.npcType); + return; + case 182: + player.getDialogueHandler().sendNpcChat1("Of course he is angry...", player.talkingNpc, "Squire"); + player.nextChat = 0; + return; + case 188: + player.getDialogueHandler().sendDialogues(3131, 945); + return; + case 185: + player.getDialogueHandler().sendDialogues(630, player.npcType); + return; + case 186: // Shield of Arrav + player.getDialogueHandler().sendDialogues(691, player.npcType); + return; + case 702: + player.getDialogueHandler().sendDialogues(3569, player.npcType); + return; + } + player.dialogueAction = 0; + player.getPacketSender().closeAllWindows(); + break; case 9190: switch (player.dialogueAction) { case 112: @@ -307,6 +552,9 @@ public class DialogueOptions { player.getPlayerAssistant().startTeleport(3313, 3234, 0, "modern"); Teles.necklaces(player); return; + } else if (player.dialogueAction == 703) { + player.getDialogueHandler().sendDialogues(3572, player.npcType); + return; } player.dialogueAction = 0; player.getPacketSender().closeAllWindows(); @@ -511,6 +759,12 @@ public class DialogueOptions { } else if (player.dialogueAction == 189) { player.getDialogueHandler().sendDialogues(3212, player.npcType); return; + } else if (player.dialogueAction == 700) { + player.getDialogueHandler().sendDialogues(3558, player.npcType); + return; + } else if (player.dialogueAction == 703) { + player.getDialogueHandler().sendDialogues(3573, player.npcType); + return; } player.dialogueAction = 0; player.getPacketSender().closeAllWindows(); @@ -524,8 +778,8 @@ public class DialogueOptions { player.getPlayerAssistant().startTeleport(3112, 3410, 0, "modern"); } else if (player.objectId == 12165) { if (player.dialogueAction == 122) { - player.getPacketSender().sendMessage("You can't take the canoe to barbarian village because you're already there!"); - player.getPlayerAssistant().handleCanoe(); + player.getPacketSender().sendMessage("You can't take the canoe to barbarian village because you're already there!"); + player.getPlayerAssistant().handleCanoe(); } } if (player.dialogueAction == 4) { @@ -582,8 +836,8 @@ public class DialogueOptions { if (player.dialogueAction == 485) { player.getRangersGuild().buyArrows(); } - if (player.dialogueAction == 700) { - player.getDialogueHandler().sendDialogues(28, player.npcType); + if (player.dialogueAction == 701) { + player.getDialogueHandler().sendDialogues(3561, player.npcType); } break; @@ -651,8 +905,8 @@ public class DialogueOptions { if (player.dialogueAction == 485) { player.getRangersGuild().exchangePoints(); } - if (player.dialogueAction == 700) { - player.getDialogueHandler().sendDialogues(29, player.npcType); + if (player.dialogueAction == 701) { + player.getDialogueHandler().sendDialogues(3562, player.npcType); } break; @@ -702,9 +956,6 @@ public class DialogueOptions { if (player.dialogueAction == 1000) { player.getDialogueHandler().sendDialogues(3523,player.npcType); } - if (player.dialogueAction == 700) { - player.getDialogueHandler().sendDialogues(30, player.npcType); - } if (player.dialogueAction == 228) { player.getDialogueHandler().sendDialogues(1041, player.npcType); } @@ -726,6 +977,9 @@ public class DialogueOptions { if (player.dialogueAction == 69) { player.getDialogueHandler().sendDialogues(1003, player.npcType); } + if (player.dialogueAction == 701) { + player.getDialogueHandler().sendDialogues(3563, player.npcType); + } break; case 9181: @@ -759,9 +1013,6 @@ public class DialogueOptions { if (player.dialogueAction == 1000) { player.getDialogueHandler().sendDialogues(3523, player.npcType); } - if (player.dialogueAction == 700) { - player.getDialogueHandler().sendDialogues(31, player.npcType); - } if (player.dialogueAction == 69) { player.getDialogueHandler().sendDialogues(1004, player.npcType); } @@ -783,8 +1034,8 @@ public class DialogueOptions { if (player.dialogueAction == 485) { player.getPacketSender().closeAllWindows(); } - if (player.dialogueAction == 700) { - player.getDialogueHandler().sendDialogues(28, player.npcType); + if (player.dialogueAction == 701) { + player.getDialogueHandler().sendDialogues(3564, player.npcType); } break; } diff --git a/2006Redone Server/src/main/java/com/rebotted/game/globalworldobjects/PassDoor.java b/2006Redone Server/src/main/java/com/rebotted/game/globalworldobjects/PassDoor.java index f188cec9..0d6f3f53 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/globalworldobjects/PassDoor.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/globalworldobjects/PassDoor.java @@ -16,8 +16,7 @@ public class PassDoor { private static long doorDelay; public static boolean passThroughDoor(final Player player, final int objectType, int face1, final int face2, final int type, int x, int y, final int height) { - if (System.currentTimeMillis() - doorDelay < 1200) { - player.getPacketSender().sendMessage("You must wait longer to pass this door."); + if (System.currentTimeMillis() - doorDelay < 800) { return false; } @@ -76,6 +75,10 @@ public class PassDoor { passThroughDoor(player, objectType, 1, 2, 0, 1, 0, 2); } else if (Position.checkPosition(player, 3108, 3162, 2)) { passThroughDoor(player, objectType, 1, 2, 0, -1, 0, 2); + } else if (Position.checkPosition(player, 3109, 3162, 1)) { + passThroughDoor(player, objectType, 1, 2, 0, 1, 0, 1); + } else if (Position.checkPosition(player, 3110, 3162, 1)) { + passThroughDoor(player, objectType, 1, 2, 0, -1, 0, 1); } else if (Position.checkPosition(player, 3109, 3159, 1)) { passThroughDoor(player, objectType, 1, 2, 0, 1, 0, 1); } else if (Position.checkPosition(player, 3110, 3159, 1)) { diff --git a/2006Redone Server/src/main/java/com/rebotted/game/items/ItemAssistant.java b/2006Redone Server/src/main/java/com/rebotted/game/items/ItemAssistant.java index 03d90494..0f4c96d4 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/items/ItemAssistant.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/items/ItemAssistant.java @@ -80,7 +80,7 @@ public class ItemAssistant { public void dropItem(int itemId) { itemId = c.droppedItem; - GameEngine.itemHandler.createGroundItem(c, itemId, c.absX, c.absY, c.playerItemsN[getItemSlot(itemId)], c.getId()); + GameEngine.itemHandler.createGroundItem(c, itemId, c.getX(), c.getY(), c.playerItemsN[getItemSlot(itemId)], c.getId()); deleteItem(itemId,getItemSlot(itemId), c.playerItemsN[getItemSlot(itemId)]); c.getPacketSender().closeAllWindows(); } @@ -89,11 +89,8 @@ public class ItemAssistant { if (isStackable(item) && hasFreeSlots(1)) { addItem(item, amount); } else if (!hasFreeSlots(amount) && !isStackable(item)) { - GameEngine.itemHandler.createGroundItem(c, item, c.absX, c.absY, - amount, c.playerId); - c.getPacketSender() - .sendMessage( - "You have no inventory space, so the item(s) appear beneath you."); + GameEngine.itemHandler.createGroundItem(c, item, c.getX(), c.getY(), amount, c.playerId); + c.getPacketSender().sendMessage("You have no inventory space, so the item(s) appear beneath you."); } else { addItem(item, amount); } @@ -579,93 +576,63 @@ public class ItemAssistant { // block c.getPacketSender().sendString(weaponName, 5857); } else if (weaponName.endsWith("whip")) { - c.getPacketSender().setSidebarInterface(0, 12290); // flick, - // lash, - // deflect + c.getPacketSender().setSidebarInterface(0, 12290); // flick, lash, deflect c.getPacketSender().sendFrame246(12291, 200, weapon); c.getPacketSender().sendString(weaponName, 12293); } else if (weaponName.endsWith("bow") || weaponName.endsWith("10") || weaponName.endsWith("full") || weaponName.startsWith("seercull")) { - c.getPacketSender().setSidebarInterface(0, 1764); // accurate, - // rapid, - // longrange + c.getPacketSender().setSidebarInterface(0, 1764); // accurate, rapid, longrange c.getPacketSender().sendFrame246(1765, 200, weapon); c.getPacketSender().sendString(weaponName, 1767); } else if (weaponName.startsWith("Staff") || weaponName.endsWith("staff") || weaponName.endsWith("wand")) { - c.getPacketSender().setSidebarInterface(0, 328); // spike, - // impale, - // smash, - // block + c.getPacketSender().setSidebarInterface(0, 328); // spike, impale, smash, block c.getPacketSender().sendFrame246(329, 200, weapon); c.getPacketSender().sendString(weaponName, 331); } else if (newWeapon.startsWith("dart") || newWeapon.startsWith("knife") || newWeapon.startsWith("javelin") || weaponName.equalsIgnoreCase("toktz-xil-ul")) { - c.getPacketSender().setSidebarInterface(0, 4446); // accurate, - // rapid, - // longrange + c.getPacketSender().setSidebarInterface(0, 4446); // accurate, rapid, longrange c.getPacketSender().sendFrame246(4447, 200, weapon); c.getPacketSender().sendString(weaponName, 4449); } else if (newWeapon.startsWith("dagger") || newWeapon.contains("sword")) { - c.getPacketSender().setSidebarInterface(0, 2276); // stab, - // lunge, - // slash, - // block + c.getPacketSender().setSidebarInterface(0, 2276); // stab, lunge, slash, block c.getPacketSender().sendFrame246(2277, 200, weapon); c.getPacketSender().sendString(weaponName, 2279); } else if (newWeapon.startsWith("pickaxe")) { - c.getPacketSender().setSidebarInterface(0, 5570); // spike, - // impale, - // smash, - // block + c.getPacketSender().setSidebarInterface(0, 5570); // spike, impale, smash, block c.getPacketSender().sendFrame246(5571, 200, weapon); c.getPacketSender().sendString(weaponName, 5573); } else if (newWeapon.startsWith("axe") || newWeapon.startsWith("battleaxe")) { - c.getPacketSender().setSidebarInterface(0, 1698); // chop, - // hack, - // smash, - // block + c.getPacketSender().setSidebarInterface(0, 1698); // chop, hack, smash, block c.getPacketSender().sendFrame246(1699, 200, weapon); c.getPacketSender().sendString(weaponName, 1701); } else if (newWeapon.startsWith("halberd")) { - c.getPacketSender().setSidebarInterface(0, 8460); // jab, - // swipe, - // fend + c.getPacketSender().setSidebarInterface(0, 8460); // jab, swipe, fend c.getPacketSender().sendFrame246(8461, 200, weapon); c.getPacketSender().sendString(weaponName, 8463); } else if (newWeapon.startsWith("Scythe")) { - c.getPacketSender().setSidebarInterface(0, 8460); // jab, - // swipe, - // fend + c.getPacketSender().setSidebarInterface(0, 8460); // jab, swipe, fend c.getPacketSender().sendFrame246(8461, 200, weapon); c.getPacketSender().sendString(weaponName, 8463); } else if (newWeapon.startsWith("spear")) { - c.getPacketSender().setSidebarInterface(0, 4679); // lunge, - // swipe, - // pound, - // block + c.getPacketSender().setSidebarInterface(0, 4679); // lunge, swipe, pound, block c.getPacketSender().sendFrame246(4680, 200, weapon); c.getPacketSender().sendString(weaponName, 4682); } else if (newWeapon.toLowerCase().contains("mace")) { c.getPacketSender().setSidebarInterface(0, 3796); c.getPacketSender().sendFrame246(3797, 200, weapon); c.getPacketSender().sendString(weaponName, 3799); - } else if (c.playerEquipment[c.playerWeapon] == 4153) { - c.getPacketSender().setSidebarInterface(0, 425); // war hamer - // equip. + c.getPacketSender().setSidebarInterface(0, 425); // war hamer equip c.getPacketSender().sendFrame246(426, 200, weapon); c.getPacketSender().sendString(weaponName, 428); } else { - c.getPacketSender().setSidebarInterface(0, 2423); // chop, - // slash, - // lunge, - // block + c.getPacketSender().setSidebarInterface(0, 2423); // chop, slash, lung, block c.getPacketSender().sendFrame246(2424, 200, weapon); c.getPacketSender().sendString(weaponName, 2426); } diff --git a/2006Redone Server/src/main/java/com/rebotted/game/items/ItemConstants.java b/2006Redone Server/src/main/java/com/rebotted/game/items/ItemConstants.java index cfad1a9d..37ea8e02 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/items/ItemConstants.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/items/ItemConstants.java @@ -105,6 +105,7 @@ public class ItemConstants { 1560, 1561, 1562, 1563, 1564, 1565, 7585, 7584, 300, 775, 776, 777, 6180, 6181, 6182, 6183, 6184, 6185, 6186, 6187, 6188, 2528, 4447, 290, 666, 667 }; + public final static int[] ITEM_TRADEABLE = { 5317, 3842, 3844, 3840, 8844, 8845, 8846, 8847, 8848, 8849, 8850, 10551, 6570, 7462, 7461, 7460, 7459, 7458, 7457, 7456, 7455, 7454, 8839, 8840, 8842, 11663, 11664, @@ -119,7 +120,7 @@ public class ItemConstants { 4218, 4219, 4220, 4221, 4222, 4223, 4224, 1555, 1556, 1557, 1558, 1559, 1560, 1561, 1562, 1563, 1564, 1565, 7585, 7584, 2714, 432, 433, 290, 5075, 5074, 5073, 5071, 5070, 7413, 6529, 4067, 2996, 1464, 666, 667, - 2412, 2413, 2414 }; + 2412, 2413, 2414, 771, 772}; public final static int[] ITEM_UNALCHABLE = { 995, 1555, 1556, 1557, 1558, 1559, 1560, 1561, 1562, 1563, 1564, 1565, 7583, 1566, 7585, 2528, diff --git a/2006Redone Server/src/main/java/com/rebotted/game/npcs/NpcActions.java b/2006Redone Server/src/main/java/com/rebotted/game/npcs/NpcActions.java index caa0dbfb..4c0a9a96 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/npcs/NpcActions.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/npcs/NpcActions.java @@ -720,16 +720,20 @@ public class NpcActions { * End of Quests */ + case 2293: + if (c.absY >= 2939 && c.absY <= 2945) { + c.getDialogueHandler().sendDialogues(3565, npcType); + } else { + c.getDialogueHandler().sendDialogues(3570, npcType); + } + break; + case 2294: - c.getDialogueHandler().sendDialogues(24, npcType); + c.getDialogueHandler().sendDialogues(3555, npcType); break; case 2296: - c.getDialogueHandler().sendDialogues(26, npcType); - break; - - case 500: - c.getDialogueHandler().sendDialogues(21, npcType); + c.getDialogueHandler().sendDialogues(3559, npcType); break; case 659: diff --git a/2006Redone Server/src/main/java/com/rebotted/game/npcs/NpcHandler.java b/2006Redone Server/src/main/java/com/rebotted/game/npcs/NpcHandler.java index 73acee6e..c47d098f 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/npcs/NpcHandler.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/npcs/NpcHandler.java @@ -873,7 +873,7 @@ public class NpcHandler { } break; case 87: - if (c.isInTut() || c.tutorialProgress < 36) { + if (Boundary.isIn(c, Boundary.TUTORIAL) || c.tutorialProgress < 36) { return false; } break; diff --git a/2006Redone Server/src/main/java/com/rebotted/game/npcs/drops/NPCDrops.java b/2006Redone Server/src/main/java/com/rebotted/game/npcs/drops/NPCDrops.java index 01febb91..c9aa9372 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/npcs/drops/NPCDrops.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/npcs/drops/NPCDrops.java @@ -87,7 +87,7 @@ public class NPCDrops extends NPCDropsHandler { new ItemDrop( i("toadflax seed"), 1, UNCOMMON ), new ItemDrop( i("wildblood seed"), 1, UNCOMMON ), new ItemDrop( i("whiteberry seed"), 1, UNCOMMON ), - new ItemDrop( i("marentill seed"), 1, UNCOMMON ), + new ItemDrop( i("marrentill seed"), 1, UNCOMMON ), new ItemDrop( i("ranarr seed"), 1, RARE ), new ItemDrop( i("dwarf weed seed"), 1, RARE ), new ItemDrop( i("lantadyme seed"), 1, RARE ), @@ -138,7 +138,7 @@ public class NPCDrops extends NPCDropsHandler { new ItemDrop( 161, 1, UNCOMMON ), new ItemDrop( i("tokkul"), new int[]{100, 1900}, COMMON ), new ItemDrop( i("lobster"), 1, UNCOMMON ), - new ItemDrop( i("chilli potato"), new int[]{1, 3}, UNCOMMON ), + new ItemDrop( i("chili potato"), new int[]{1, 3}, UNCOMMON ), new ItemDrop( i("pure essence"), 5, VERY_RARE ), }; @@ -193,7 +193,7 @@ public class NPCDrops extends NPCDropsHandler { new ItemDrop( i("fire rune"), new int[]{10, 80}, COMMON ), new ItemDrop( i("air rune"), new int[]{10, 80}, UNCOMMON ), new ItemDrop( i("water rune"), new int[]{10, 80}, UNCOMMON ), - new ItemDrop( i("choas rune"), new int[]{5, 10}, UNCOMMON ), + new ItemDrop( i("chaos rune"), new int[]{5, 10}, UNCOMMON ), new ItemDrop( i("nature rune"), new int[]{1, 8}, UNCOMMON ), new ItemDrop( i("law rune"), new int[]{2, 5}, UNCOMMON ), new ItemDrop( i("death rune"), new int[]{1, 6}, RARE ), @@ -309,11 +309,11 @@ public class NPCDrops extends NPCDropsHandler { new ItemDrop( 526, new int[]{1, 3}, COMMON ), new ItemDrop( i("banana"), 1, UNCOMMON ), new ItemDrop( i("limpwurt seed"), 1, COMMON ), - new ItemDrop( i("marentill seed"), 1, COMMON ), + new ItemDrop( i("marrentill seed"), 1, COMMON ), new ItemDrop( i("tarromin seed"), 1, COMMON ), new ItemDrop( i("harralander seed"), 1, UNCOMMON ), - new ItemDrop( i("strawberry sed"), 1, UNCOMMON ), - new ItemDrop( i("watermelon seeed"), 1, UNCOMMON ), + new ItemDrop( i("strawberry seed"), 1, UNCOMMON ), + new ItemDrop( i("watermelon seed"), 1, UNCOMMON ), new ItemDrop( i("wildblood seed"), 1, UNCOMMON ), new ItemDrop( i("toadflax seed"), 1, UNCOMMON ), new ItemDrop( i("avantoe seed"), 1, UNCOMMON ), @@ -427,7 +427,7 @@ public class NPCDrops extends NPCDropsHandler { }; public static final ItemDrop[] jelly = { - new ItemDrop( i("choas rune"), 15, UNCOMMON ), + new ItemDrop( i("chaos rune"), 15, UNCOMMON ), new ItemDrop( i("death rune"), 5, UNCOMMON ), new ItemDrop( i("water rune"), new int[]{5, 21}, RARE ), new ItemDrop( i("blood rune"), 7, RARE ), @@ -631,7 +631,7 @@ public class NPCDrops extends NPCDropsHandler { new ItemDrop( 4113, 1, RARE ), new ItemDrop( i("law rune"), 3, COMMON ), new ItemDrop( i("nature rune"), new int[]{15, 45}, UNCOMMON ), - new ItemDrop( i("poision ivy seed"), 1, COMMON ), + new ItemDrop( i("poison ivy seed"), 1, COMMON ), new ItemDrop( i("cactus seed"), 1, COMMON ), new ItemDrop( i("belladonna seed"), 1, COMMON ), new ItemDrop( i("toadflax seed"), 1, COMMON ), @@ -904,8 +904,8 @@ public class NPCDrops extends NPCDropsHandler { }; public static final ItemDrop[] dagannothprime = { - new ItemDrop( i("dagganoth bones"), 1, ALWAYS ), - new ItemDrop( i("dagganoth hide"), 1, ALWAYS ), + new ItemDrop( i("dagannoth bones"), 1, ALWAYS ), + new ItemDrop( i("dagannoth hide"), 1, ALWAYS ), new ItemDrop( i("air battlestaff"), 1, COMMON ), new ItemDrop( i("earth battlestaff"), 1, COMMON ), new ItemDrop( i("water battlestaff"), 1, COMMON ), @@ -944,8 +944,8 @@ public class NPCDrops extends NPCDropsHandler { }; public static final ItemDrop[] daggannothrex = { - new ItemDrop( i("dagganoth bones"), 1, ALWAYS ), - new ItemDrop( i("dagganoth hide"), 1, ALWAYS ), + new ItemDrop( i("dagannoth bones"), 1, ALWAYS ), + new ItemDrop( i("dagannoth hide"), 1, ALWAYS ), new ItemDrop( i("fremennik blade"), 1, COMMON ), new ItemDrop( i("mithril warhammer"), 1, COMMON ), // fremy // blade @@ -1253,7 +1253,7 @@ public class NPCDrops extends NPCDropsHandler { new ItemDrop( i("tarromin seed"), 1, COMMON ), new ItemDrop( i("harralander seed"), 1, COMMON ), new ItemDrop( i("jangerberry seed"), 1, COMMON ), - new ItemDrop( i("marentill seed"), 1, COMMON ), + new ItemDrop( i("marrentill seed"), 1, COMMON ), new ItemDrop( i("belladonna seed"), 1, UNCOMMON ), new ItemDrop( i("limpwurt seed"), 1, UNCOMMON ), new ItemDrop( i("toadflax seed"), 1, UNCOMMON ), @@ -1345,7 +1345,7 @@ public class NPCDrops extends NPCDropsHandler { new ItemDrop( i("steel axe"), 1, COMMON ), new ItemDrop( i("steel battleaxe"), 1, COMMON ), new ItemDrop( i("steel 2h sword"), 1, COMMON ), - new ItemDrop( i("mithril kitesiheld"), 1, UNCOMMON ), + new ItemDrop( i("mithril kiteshield"), 1, UNCOMMON ), new ItemDrop( i("black 2h sword"), 1, UNCOMMON ), new ItemDrop( i("rune full helm"), 1, RARE ), new ItemDrop( i("adamant platelegs"), 1, RARE ), @@ -1442,9 +1442,9 @@ public class NPCDrops extends NPCDropsHandler { new ItemDrop( i("strawberry seed"), 1, COMMON ), new ItemDrop( i("rune longsword"), 1, VERY_RARE ), new ItemDrop( i("jangerberry seed"), 1, COMMON ), - new ItemDrop( i("marentill seed"), 1, UNCOMMON ), + new ItemDrop( i("marrentill seed"), 1, UNCOMMON ), new ItemDrop( i("cadantine seed"), 1, UNCOMMON ), - new ItemDrop( i("bittecape mushroom spore"), 1, UNCOMMON ), + new ItemDrop( i("bittercap mushroom spore"), 1, UNCOMMON ), new ItemDrop( i("irit seed"), 1, UNCOMMON ), new ItemDrop( i("avantoe seed"), 1, UNCOMMON ), new ItemDrop( i("dwarf weed seed"), 1, RARE ), @@ -1506,7 +1506,7 @@ public class NPCDrops extends NPCDropsHandler { new ItemDrop( i("water rune"), new int[]{20, 47}, COMMON ), new ItemDrop( i("body rune"), new int[]{9, 24}, COMMON ), new ItemDrop( i("mind rune"), new int[]{5, 7}, COMMON ), - new ItemDrop( i("choas rune"), new int[]{2, 5}, UNCOMMON ), + new ItemDrop( i("chaos rune"), new int[]{2, 5}, UNCOMMON ), new ItemDrop( i("nature rune"), new int[]{4, 7}, UNCOMMON ), new ItemDrop( i("law rune"), new int[]{2, 5}, RARE ), new ItemDrop( i("blood rune"), new int[]{2, 5}, RARE ), // members @@ -2291,7 +2291,7 @@ public class NPCDrops extends NPCDropsHandler { new ItemDrop( i("snapdragon seed"), 1, UNCOMMON ), new ItemDrop( i("jangerberry seed"), 1, UNCOMMON ), new ItemDrop( i("limpwurt seed"), 1, UNCOMMON ), - new ItemDrop( i("marentill seed"), 1, UNCOMMON ), + new ItemDrop( i("marrentill seed"), 1, UNCOMMON ), new ItemDrop( 5282, 1, UNCOMMON ), new ItemDrop( i("ranarr seed"), 1, UNCOMMON ), new ItemDrop( i("strawberry seed"), 1, UNCOMMON ), diff --git a/2006Redone Server/src/main/java/com/rebotted/game/objects/ObjectDefaults.java b/2006Redone Server/src/main/java/com/rebotted/game/objects/ObjectDefaults.java index f76d3c45..6b27b42b 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/objects/ObjectDefaults.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/objects/ObjectDefaults.java @@ -20,42 +20,118 @@ public class ObjectDefaults { String objectName = ObjectDef.getObjectDef(objectType).name; if (objectName.contains("Wardrobe") || objectName.contains("chest") || objectName.contains("Cupboard") || objectName.contains("Coffin")) { return 10; + } else if (objectName.contains("Curtain")) { + if ((player.getX() >= 3298 && player.getX() <= 3300) && (player.getY() >= 3186 && player.getY() <= 3188)) { + return 9; + } } return 0; } + /** + * object x + * object y + * object face + * object height + */ + private static final int[][] GET_FACE = { + {3209, 3217, 2, 1}, {3382, 3270, 1, 0}, {3381, 3269, 2, 0}, + {3309, 3120, 3, 0}, {3112, 3355, 2, 0}, {3112, 3356, 2, 0}, + {3104, 3360, 2, 0}, {3104, 3356, 2, 0}, {3096, 3356, 2, 0}, + {3096, 3361, 2, 0}, {3114, 3362, 3, 1}, {3118, 3362, 3, 1}, + {3113, 3368, 1, 1}, {3104, 3368, 1, 1}, {3118, 3359, 2, 1}, + {3112, 3360, 2, 2}, {3112, 3358, 2, 2}, {3049, 3383, 2, 0}, + {3042, 3375, 2, 0}, {3042, 3376, 2, 0}, {3046, 3367, 1, 0}, + {3047, 3367, 1, 0}, {3045, 3361, 3, 1}, {3216, 3487, 3, 1}, + {3224, 3493, 2, 1}, {3224, 3495, 2, 1}, {3201, 3483, 1, 0}, + {3201, 3484, 1, 0}, {3203, 3481, 1, 0}, {3192, 3273, 3, 0}, + {3185, 3274, 2, 0}, {3096, 3266, 1, 0}, {3096, 3267, 1, 0}, + {3087, 3261, 1, 0}, {3084, 3256, 3, 0}, {3024, 3259, 3, 0}, + {3023, 3259, 3, 0}, {3027, 3262, 1, 1}, {3026, 3259, 3, 1}, + {3013, 3249, 1, 0}, {3013, 3234, 3, 1}, {3014, 3234, 3, 1}, + {3016, 3205, 3, 1}, {3009, 3206, 1, 1}, {3009, 3207, 1, 1}, + {3016, 3207, 3, 0}, {2657, 3322, 2, 1}, {3090, 3479, 2, 0}, + {3090, 3476, 2, 0}, {3096, 3469, 3, 0}, {2970, 3214, 2, 1}, + {2765, 3505, 1, 1}, {2748, 3495, 2, 2}, {3303, 3172, 2, 0}, + {3300, 3177, 1, 0}, {3282, 3169, 1, 0}, {3282, 3168, 1, 0}, + {3299, 3169, 2, 1}, {3300, 3169, 2, 1}, {3301, 3169, 2, 1}, + {3319, 3137, 3, 0}, {3324, 3137, 3, 0}, {3099, 3373, 1, 0}, + {2620, 3291, 3, 1}, {2578, 3295, 1, 1}, {2575, 3292, 3, 0}, + {2578, 3295, 2, 1}, {2579, 3295, 2, 1}, {3023, 3259, 3, 1}, + {3012, 3452, 3, 0}, {3021, 3449, 3, 0}, {3016, 3256, 2, 0}, + {3016, 3261, 2, 0}, {2649, 3361, 3, 0}, {3090, 9899, 2, 0}, + {3089, 9899, 2, 0} + }; + public static int getObjectFace(Player player, int objectType) { - switch (objectType) { - case 388: - case 389: - if (player.objectX == 3112 || player.objectX == 3104 || player.objectX == 3096) { - return EAST; + //default face + int face = SOUTH; + for (final int[] element : GET_FACE) { + if (player.objectX == element[0] && player.objectY == element[1] && player.getH() == element[3]) { + return face = element[2]; } else { - return SOUTH; + switch (objectType) { + case 6910: + if (player.objectX == 3263) { + return face = WEST; + } + case 1529: + case 1528: + if (getObjectType(player, objectType) == 9 || player.objectX == 3315 || player.objectX == 3172 || player.objectX == 3259) { + return face = WEST; + } else if (player.objectX == 3313 || player.objectX == 3317) { + return face = EAST; + } else if (player.objectX == 3287 || player.objectX == 3292) { + return face = NORTH; + } + case 388: + case 389: + if (player.objectX == 3112 || player.objectX == 3104 || player.objectX == 3096) { + return face = EAST; + } + case 14879: + return face = NORTH; + case 1568: + return face = (player.objectX == 3405) ? EAST : SOUTH; + case 375: + case 376: + case 377: + if (player.objectX == 3096) { + return face = NORTH; + } else if (player.objectX == 3263) { + return face = WEST; + } else if (player.objectX == 2892) { + return face = WEST; + } + case 399: + case 398: + return face = (player.objectX == 3096 && player.objectY == 3469) ? WEST : (player.objectX == 3096) ? SOUTH : EAST; + case 3193: + return face = (player.objectX == 3381) ? EAST : NORTH; + case 378: + if (player.objectX == 3096) { + return face = NORTH; + } else if (player.objectX == 3263) { + return face = WEST; + } else if (player.objectX == 2892) { + return face = WEST; + } + case 3194: + return face = (player.objectX == 3381) ? EAST : NORTH; + case 348: + case 349: + if (player.objectX == 2971) { + return face = NORTH; + } + case 350: + case 351: + if (player.objectY == 3382) { + return face = WEST; + } + } } - case 1528: - case 1529: - return player.objectX == 3172 ? WEST : EAST; - case 14879: - return 1; - case 1568: - return player.objectX == 3405 ? EAST : SOUTH; - case 375: - case 376: - case 377: - return player.objectX == 3096 ? NORTH : SOUTH; - case 399: - return player.objectX == 3096 && player.objectY == 3469 ? WEST : player.objectX == 3096 ? SOUTH : EAST; - case 398: - return player.objectX == 3096 && player.objectY == 3469 ? WEST : player.objectX == 3096 ? SOUTH : EAST; - case 3193: - return player.objectX == 3381 ? EAST : NORTH; - case 378: - return player.objectX == 3096 ? NORTH : SOUTH; - case 3194: - return player.objectX == 3381 ? EAST : NORTH; } - return SOUTH; + return face; } -} +} \ No newline at end of file diff --git a/2006Redone Server/src/main/java/com/rebotted/game/objects/ObjectsActions.java b/2006Redone Server/src/main/java/com/rebotted/game/objects/ObjectsActions.java index 4630c7a1..72531c10 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/objects/ObjectsActions.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/objects/ObjectsActions.java @@ -38,10 +38,10 @@ import com.rebotted.game.objects.impl.BrimhavenVines; import com.rebotted.game.objects.impl.Climbing; import com.rebotted.game.objects.impl.FlourMill; import com.rebotted.game.objects.impl.Levers; +import com.rebotted.game.objects.impl.OpenObject; import com.rebotted.game.objects.impl.OtherObjects; import com.rebotted.game.objects.impl.Pickable; import com.rebotted.game.objects.impl.Searching; -import com.rebotted.game.objects.impl.SpecialObjects; import com.rebotted.game.objects.impl.UseOther; import com.rebotted.game.objects.impl.Webs; import com.rebotted.game.players.Player; @@ -105,6 +105,7 @@ public class ObjectsActions { ClimbOther.useOther(player, objectType); } } + OtherObjects.interactCurtain(player, objectType, objectX, objectY); OtherObjects.searchSpecialObject(player, objectType); Searching.searchObject(player, objectType); Levers.pullLever(player, objectType); @@ -113,6 +114,7 @@ public class ObjectsActions { player.getDoubleGates().useDoubleGate(player, objectType); PassDoor.processDoor(player, objectType); AbyssalHandler.handleAbyssalTeleport(player, objectType); + OpenObject.interactObject(player, objectType, objectType == 399 ? true : false); // if its a rock we can mine, mine it if (Mining.rockExists(objectType)) player.getMining().startMining(player, objectType, player.objectX, player.objectY, player.clickObjectType); @@ -121,6 +123,13 @@ public class ObjectsActions { return; } switch (objectType) { + case 6615: + if (player.absY == 2809) { + player.getPlayerAssistant().movePlayer(player.absX, 2810, 0); + } else if (player.absY == 2810) { + player.getPlayerAssistant().movePlayer(player.absX, 2809, 0); + } + break; case 11163: Ectofuntus.useBoneGrinder(player); break; @@ -792,15 +801,6 @@ public class ObjectsActions { } break; - case 1528:// curtain varrock pray altar - if (player.absY == 3390) { - player.getPlayerAssistant().movePlayer(player.absX, - player.absY + 1, 0); - } else if (player.absY == 3391) { - player.getPlayerAssistant().movePlayer(player.absX, - player.absY - 1, 0); - } - break; case 95: case 94: @@ -1583,11 +1583,7 @@ public class ObjectsActions { break; case 4031: - SpecialObjects.initShantay(player, objectType); - break; - - case 2693: - SpecialObjects.openShantayChest(player, objectType, objectX, objectY, "open"); + OtherObjects.initShantay(player, objectType); break; case 2883: diff --git a/2006Redone Server/src/main/java/com/rebotted/game/objects/impl/OpenObject.java b/2006Redone Server/src/main/java/com/rebotted/game/objects/impl/OpenObject.java new file mode 100644 index 00000000..6e2aec51 --- /dev/null +++ b/2006Redone Server/src/main/java/com/rebotted/game/objects/impl/OpenObject.java @@ -0,0 +1,41 @@ +package com.rebotted.game.objects.impl; + +import com.rebotted.GameEngine; +import com.rebotted.game.objects.ObjectDefaults; +import com.rebotted.game.players.Player; + +/** + * Feb 17, 2018 : 6:44:26 AM + * OpenObject.java + * @author Andrew (Mr Extremez) + */ +public class OpenObject { + + /** + * Object old + * Object new + */ + private static final int[][] OBJECT_DATA = { + {375, 378}, {6910, 378}, {3193, 3194}, + {2693, 3194}, {388, 389}, {350, 351}, + {348, 349}, {5622, 5623}, {2612, 2613}, + {352, 353}, {398, 399}, {376, 379} + }; + + public static void interactObject(Player player, int objectType, boolean open) { + for (final int[] element : OBJECT_DATA) { + if (!open) { + if (objectType == element[0]) { + GameEngine.objectHandler.createAnObject(element[1], player.objectX, player.objectY, player.getH(), ObjectDefaults.getObjectFace(player, objectType), 10); + player.startAnimation(832); + } + } else { + if (objectType == element[1]) { + GameEngine.objectHandler.createAnObject(element[0], player.objectX, player.objectY, player.getH(), ObjectDefaults.getObjectFace(player, objectType), 10); + player.startAnimation(832); + } + } + } + } + +} diff --git a/2006Redone Server/src/main/java/com/rebotted/game/objects/impl/OtherObjects.java b/2006Redone Server/src/main/java/com/rebotted/game/objects/impl/OtherObjects.java index 6754ebc1..d4cb46ab 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/objects/impl/OtherObjects.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/objects/impl/OtherObjects.java @@ -1,25 +1,112 @@ package com.rebotted.game.objects.impl; +import com.rebotted.GameEngine; import com.rebotted.event.CycleEvent; import com.rebotted.event.CycleEventContainer; import com.rebotted.event.CycleEventHandler; +import com.rebotted.game.content.traveling.DesertHeat; import com.rebotted.game.objects.ObjectDefaults; import com.rebotted.game.players.Player; import com.rebotted.util.Misc; import com.rebotted.world.clip.ObjectDef; +import com.rebotted.world.clip.Region; public class OtherObjects { + + public static boolean openKharid(Player player, int objectId) { + return (objectId == 2882 || objectId == 2883); + } + + public static boolean openShantay(Player player, int objectId) { + return (objectId == 4033 || objectId == 4031); + } + + public static void movePlayer(Player player) { + if (Region.getClipping(player.getX() - 1, player.getY(), player.getH(), -1, 0)) { + player.getPlayerAssistant().movePlayer(player.getX() + 1, player.getY(), 0); + } else if (Region.getClipping(player.getX() + 1, player.getY(), player.getH(), 1, 0)) { + player.getPlayerAssistant().movePlayer(player.getX() - 1, player.getY(), 0); + } else if (Region.getClipping(player.getX(), player.getY() - 1, player.getH(), 0, -1)) { + player.getPlayerAssistant().movePlayer(player.getX(), player.getY() + 1, 0); + } else if (Region.getClipping(player.getX(), player.getY() + 1, player.getH(), 0, 1)) { + player.getPlayerAssistant().movePlayer(player.getX(), player.getY() - 1, 0); + } + } + + public static void interactCurtain(Player player, int objectType, int x, int y) { + if (objectType == 1529) { + GameEngine.objectHandler.createAnObject(1528, x, y, player.getH(), ObjectDefaults.getObjectFace(player, objectType), ObjectDefaults.getObjectType(player, objectType)); + } else if (objectType == 1528) { + GameEngine.objectHandler.createAnObject(1529, x, y, player.getH(), ObjectDefaults.getObjectFace(player, objectType), ObjectDefaults.getObjectType(player, objectType)); + } + } + + public static void initKharid(Player player, int objectId) { + if (!player.getItemAssistant().playerHasItem(995, 10)) { + player.getDialogueHandler().itemMessage("You need 10 coins to pass through this gate.", 995, 200); + player.getDialogueHandler().endDialogue(); + return; + } + if (openKharid(player, objectId)) { + GameEngine.objectHandler.createAnObject(player, -1, player.objectX, player.objectY, -1); + final int[] coords = new int[2]; + if (player.getX() == 3267) { + player.getPlayerAssistant().movePlayer(player.getX() + 1, player.getY(), 0); + } else if (player.getX() == 3268) { + player.getPlayerAssistant().movePlayer(player.getX() - 1, player.getY(), 0); + } + player.turnPlayerTo(player.objectX, player.objectY); + coords[0] = player.objectX; + coords[1] = player.objectY; + player.getItemAssistant().deleteItem(995, player.getItemAssistant().getItemSlot(995), 10); + } + } + + private static boolean movePlayer2(Player player) { + if (player.getY() == 3117) { + player.getPlayerAssistant().movePlayer(player.getX(), player.getY() - 2, 0); + return true; + } else if (player.getY() == 3115) { + player.getPlayerAssistant().movePlayer(player.getX(), player.getY() + 2, 0); + return true; + } + player.getPacketSender().sendMessage("Move closer so you can use the gate."); + return false; + } + + public static void initShantay(Player player, int objectId) { + if (!player.getItemAssistant().playerHasItem(1854, 1) && player.getY() == 3117) { + player.getDialogueHandler().sendStatement("You need a Shantay pass to go through."); + return; + } + final int[] coords = new int[2]; + if (openShantay(player, objectId)) { + player.getPacketSender().sendMessage("You pass through the gate."); + movePlayer2(player); + player.turnPlayerTo(player.objectX, player.objectY); + coords[0] = player.objectX; + coords[1] = player.objectY; + if (player.desertWarning == false && player.getY() == 3117) { + DesertHeat.showWarning(player); + player.desertWarning = true; + } + } + if (player.getY() == 3117) { + player.getItemAssistant().deleteItem(1854, player.getItemAssistant().getItemSlot(1854), 1); + } + } + private final static int[] SPECIAL_OBJECTS = {160, 155, 156, 298, 299, 300, 304, 1181, 5253, 5254, 5255, 5256, 5257, 5258}; public static void searchSpecialObject(Player player, int objectType) { for (int i = 0; i < SPECIAL_OBJECTS.length; i++) { if (objectType == SPECIAL_OBJECTS[i]) { - if (System.currentTimeMillis() - player.searchObjectDelay < 1200 || objectType == 160 && player.absX != 3096 || objectType > 154 && objectType < 157 && player.absX != 3098 || player.absY == 3301) { + if (System.currentTimeMillis() - player.getObjectDelay() < 1200 || objectType == 160 && player.getX() != 3096 || objectType > 154 && objectType < 157 && player.getX() != 3098 || player.getY() == 3301) { return; } - player.stopPlayerPacket = true; - player.searchObjectDelay = System.currentTimeMillis(); + player.stopPlayer(true); + player.setObjectDelay(System.currentTimeMillis()); handleSpecialObject(player, objectType); } } @@ -31,120 +118,120 @@ public class OtherObjects { private static void handleSpecialObject(final Player player, final int objectType) { String objectName = ObjectDef.getObjectDef(objectType).name; - if (objectType == 160 && player.absX == 3096) { - player.getPlayerAssistant().walkTo(0, 1); - CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { - @Override - public void execute(CycleEventContainer container) { - player.getPlayerAssistant().movePlayer(3098, player.absY, 0); - container.stop(); - } - @Override - public void stop() { - - } - }, 2); - CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { - @Override - public void execute(CycleEventContainer container) { - object(player, -1, 3097, 3358); - object(player, -1, 3097, 3359); - container.stop(); - CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { - @Override - public void execute(CycleEventContainer container) { - object(player, -1, 3097, 3357); - object(player, -1, 3097, 3360); - container.stop(); - } - @Override - public void stop() { - object(player, 155, 3097, 3358); - object(player, 156, 3097, 3359); - player.stopPlayerPacket = false; - } - }, 2); - } - @Override - public void stop() { - object(player, 155, 3097, 3357); - object(player, 156, 3097, 3360); - } - }, 1); - } else if (objectType > 154 && objectType < 157 && player.absX == 3098) { - player.getPlayerAssistant().walkTo(-2, 0); - CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { - @Override - public void execute(CycleEventContainer container) { - object(player, -1, 3097, 3358); - object(player, -1, 3097, 3359); - container.stop(); - CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { - @Override - public void execute(CycleEventContainer container) { - object(player, -1, 3097, 3357); - object(player, -1, 3097, 3360); - container.stop(); - } - @Override - public void stop() { - object(player, 155, 3097, 3358); - object(player, 156, 3097, 3359); - player.stopPlayerPacket = false; - } - }, 2); - } - @Override - public void stop() { - object(player, 155, 3097, 3357); - object(player, 156, 3097, 3360); - } - }, 1); - } else if (objectName.contains("Nettles")) { - int nettlesDamage = 1 + Misc.random(1); - if (player.playerEquipment[player.playerHands] > 0) { - player.startAnimation(827); - player.getItemAssistant().addItem(4241, 1); - player.stopPlayerPacket = false; - } else { - player.setHitUpdateRequired2(true); - player.setHitDiff2(nettlesDamage); - player.updateRequired = true; - player.poisonMask = 2; - player.dealDamage(nettlesDamage); - player.getPlayerAssistant().refreshSkill(3); - player.getPacketSender().sendMessage("You have been stung by the nettles."); - player.stopPlayerPacket = false; - } - } else if (objectName.startsWith("Hay") || objectName.startsWith("hay")) { - final int damage = 1, random = Misc.random(15); - player.startAnimation(832); - player.getPacketSender().sendMessage("You search the " + objectName.toLowerCase() + "..."); + if (objectType == 160 && player.getX() == 3096) { + player.getPlayerAssistant().walkTo(0, 1); + CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { + @Override + public void execute(CycleEventContainer container) { + player.getPlayerAssistant().movePlayer(3098, player.getY(), 0); + container.stop(); + } + @Override + public void stop() { + + } + }, 2); + CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { + @Override + public void execute(CycleEventContainer container) { + object(player, -1, 3097, 3358); + object(player, -1, 3097, 3359); + container.stop(); CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { @Override public void execute(CycleEventContainer container) { - if (random == 1) { - player.getDialogueHandler().sendStatement("Wow! A needle!", "Now what are the chances of finding that?"); - player.nextChat = 0; - player.getItemAssistant().addItem(1733, 1); - container.stop(); - } else if (random == 9) { - player.handleHitMask(damage); - player.dealDamage(damage); - player.getPlayerAssistant().refreshSkill(3); - container.stop(); - } else { - player.getPacketSender().sendMessage("You find nothing of interest."); - container.stop(); - } + object(player, -1, 3097, 3357); + object(player, -1, 3097, 3360); + container.stop(); } - @Override public void stop() { - player.stopPlayerPacket = false; - } + object(player, 155, 3097, 3358); + object(player, 156, 3097, 3359); + player.stopPlayer(false); + } }, 2); } + @Override + public void stop() { + object(player, 155, 3097, 3357); + object(player, 156, 3097, 3360); + } + }, 1); + } else if (objectType > 154 && objectType < 157 && player.getX() == 3098) { + player.getPlayerAssistant().walkTo(-2, 0); + CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { + @Override + public void execute(CycleEventContainer container) { + object(player, -1, 3097, 3358); + object(player, -1, 3097, 3359); + container.stop(); + CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { + @Override + public void execute(CycleEventContainer container) { + object(player, -1, 3097, 3357); + object(player, -1, 3097, 3360); + container.stop(); + } + @Override + public void stop() { + object(player, 155, 3097, 3358); + object(player, 156, 3097, 3359); + player.stopPlayer(false); + } + }, 2); + } + @Override + public void stop() { + object(player, 155, 3097, 3357); + object(player, 156, 3097, 3360); + } + }, 1); + } else if (objectName.contains("Nettles")) { + int nettlesDamage = 1 + Misc.random(1); + if (player.playerEquipment[player.playerHands] > 0) { + player.startAnimation(827); + player.getItemAssistant().addItem(4241, 1); + player.stopPlayer(false); + } else { + player.setHitUpdateRequired2(true); + player.setHitDiff2(nettlesDamage); + player.updateRequired = true; + player.poisonMask = 2; + player.dealDamage(nettlesDamage); + player.getPlayerAssistant().refreshSkill(3); + player.getPacketSender().sendMessage("You have been stung by the nettles."); + player.stopPlayer(false); } + } else if (objectName.startsWith("Hay") || objectName.startsWith("hay")) { + final int damage = 1, random = Misc.random(15); + player.startAnimation(832); + player.getPacketSender().sendMessage("You search the " + objectName.toLowerCase() + "..."); + CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() { + @Override + public void execute(CycleEventContainer container) { + if (random == 1) { + player.getDialogueHandler().sendStatement("Wow! A needle!", "Now what are the chances of finding that?"); + player.getDialogueHandler().endDialogue(); + player.getItemAssistant().addItem(1733, 1); + container.stop(); + } else if (random == 9) { + player.handleHitMask(damage); + player.dealDamage(damage); + player.getPlayerAssistant().refreshSkill(3); + container.stop(); + } else { + player.getPacketSender().sendMessage("You find nothing of interest."); + container.stop(); + } + } -} + @Override + public void stop() { + player.stopPlayer(false); + } + }, 2); + } + } + +} \ No newline at end of file diff --git a/2006Redone Server/src/main/java/com/rebotted/game/objects/impl/SpecialObjects.java b/2006Redone Server/src/main/java/com/rebotted/game/objects/impl/SpecialObjects.java deleted file mode 100644 index 2d80d5d8..00000000 --- a/2006Redone Server/src/main/java/com/rebotted/game/objects/impl/SpecialObjects.java +++ /dev/null @@ -1,118 +0,0 @@ -package com.rebotted.game.objects.impl; - -import com.rebotted.GameEngine; -import com.rebotted.game.content.traveling.DesertHeat; -import com.rebotted.game.players.Player; -import com.rebotted.world.clip.Region; - -public class SpecialObjects { - - private final static int[] AL_KHARID_GATES = { 2882, 2883 }; - private final static int[] SHANTAY_GATES = { 4031, 4033 }; - - public static void openLumbridgePipe(Player c, int objectType) { - c.isRunning = false; - c.getPacketSender().sendConfig(173, 0); - c.playerWalkIndex = 819; - c.getPlayerAssistant().requestUpdates(); - c.getPlayerAssistant().walkTo(0, -1); - } - - public static boolean openKharid(Player player, int objectId) { - for (int element : AL_KHARID_GATES) { - if (objectId == element) { - return true; - } - } - return false; - } - - public static boolean openShantay(Player c, int objectId) { - for (int element : SHANTAY_GATES) { - if (objectId == element) { - return true; - } - } - return false; - } - - public static void movePlayer(Player c) { - if (Region.getClipping(c.getX() - 1, c.getY(), c.heightLevel, -1, 0)) { - c.getPlayerAssistant().movePlayer(c.absX + 1, c.absY, 0); - } else if (Region.getClipping(c.getX() + 1, c.getY(), c.heightLevel, 1, - 0)) { - c.getPlayerAssistant().movePlayer(c.absX - 1, c.absY, 0); - } else if (Region.getClipping(c.getX(), c.getY() - 1, c.heightLevel, 0, - -1)) { - c.getPlayerAssistant().movePlayer(c.absX, c.absY + 1, 0); - } else if (Region.getClipping(c.getX(), c.getY() + 1, c.heightLevel, 0, - 1)) { - c.getPlayerAssistant().movePlayer(c.absX, c.absY - 1, 0); - } - } - - public static void openShantayChest(Player player, int objectId, int obX, - int obY, String type) { - if (type == "open") { - GameEngine.objectHandler.createAnObject(player, 104, obX, obY, player.heightLevel, -1); - } else if (type == "shut") { - GameEngine.objectHandler.createAnObject(player, 2693, obX, obY, player.heightLevel, -1); - } - } - - public static void initKharid(Player player, int objectId) { - if (!player.getItemAssistant().playerHasItem(995, 10)) { - player.getDialogueHandler().itemMessage("You need 10 coins to pass through this gate.", 995, 200); - player.nextChat = 0; - return; - } - GameEngine.objectHandler.createAnObject(player, -1, player.objectX, player.objectY, player.heightLevel, -1); - final int[] coords = new int[2]; - openKharid(player, objectId); - if (player.absX == 3267) { - player.getPlayerAssistant().movePlayer(player.absX + 1, player.absY, 0); - } else if (player.absX == 3268) { - player.getPlayerAssistant().movePlayer(player.absX - 1, player.absY, 0); - } - player.turnPlayerTo(player.objectX, player.objectY); - coords[0] = player.objectX; - coords[1] = player.objectY; - player.getItemAssistant().deleteItem(995, - player.getItemAssistant().getItemSlot(995), 10); - } - - private static boolean movePlayer2(Player c) { - if (c.absY == 3117) { - c.getPlayerAssistant().movePlayer(c.absX, c.absY - 2, 0); - return true; - } else if (c.absY == 3115) { - c.getPlayerAssistant().movePlayer(c.absX, c.absY + 2, 0); - return true; - } - c.getPacketSender().sendMessage( - "Move closer so you can use the gate."); - return false; - } - - public static void initShantay(Player c, int objectId) { - if (!c.getItemAssistant().playerHasItem(1854, 1) && c.absY == 3117) { - c.getDialogueHandler().sendStatement("You need a Shantay pass to go through."); - return; - } - final int[] coords = new int[2]; - openShantay(c, objectId); - c.getPacketSender().sendMessage("You pass through the gate."); - movePlayer2(c); - c.turnPlayerTo(c.objectX, c.objectY); - coords[0] = c.objectX; - coords[1] = c.objectY; - if (c.desertWarning == false && c.absY == 3117) { - DesertHeat.showWarning(c); - c.desertWarning = true; - } - if (c.absY == 3117) { - c.getItemAssistant().deleteItem(1854, c.getItemAssistant().getItemSlot(1854), 1); - } - } - -} diff --git a/2006Redone Server/src/main/java/com/rebotted/game/players/Location.java b/2006Redone Server/src/main/java/com/rebotted/game/players/Location.java deleted file mode 100644 index 45419608..00000000 --- a/2006Redone Server/src/main/java/com/rebotted/game/players/Location.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.rebotted.game.players; - -public class Location { - - private int x1, x2, y1, y2; - - public Location(int x1, int x2, int y1, int y2) { - this.x1 = x1; - this.x2 = x2; - this.y1 = y1; - this.y2 = y2; - } - - public boolean playerInArea(Player p) { - if(p.inArea(x1, y1, x2, y2)) { - return true; - } - return false; - } - -} \ No newline at end of file diff --git a/2006Redone Server/src/main/java/com/rebotted/game/players/Player.java b/2006Redone Server/src/main/java/com/rebotted/game/players/Player.java index 1710c411..5f6e7210 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/players/Player.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/players/Player.java @@ -462,6 +462,16 @@ public abstract class Player { public boolean stopPlayer(boolean stop) { return (stop ? stopPlayerPacket == true : stopPlayerPacket == false); } + + public long objectDelay; + + public long getObjectDelay() { + return (objectDelay); + } + + public long setObjectDelay(long delay) { + return (objectDelay = delay); + } public boolean isSnowy; @@ -801,7 +811,7 @@ public abstract class Player { } else if(GameEngine.trawler.players.contains(this)) { getPacketSender().walkableInterface(11908); isSnowy = false; - } else if (isInBarrows() || isInBarrows2()) { + } else if (Boundary.isIn(this, Boundary.BARROWS) || Boundary.isIn(this, Boundary.BARROWS_UNDERGROUND)) { getPacketSender().sendString("Kill Count: " + barrowsKillCount, 4536); getPacketSender().walkableInterface(4535); isSnowy = false; @@ -1384,7 +1394,7 @@ public abstract class Player { bankPin1, bankPin2, bankPin3, bankPin4, pinDeleteDateRequested, rememberNpcIndex, ratsCaught, lastLoginDate, selectedSkill, newHerb, newItem, newXp, doingHerb, herbAmount, treeX, treeY, lastH, - cookingItem, cookingObject, summonId, npcId2 = 0, leatherType = -1, + cookingItem, smeltingItem, cookingObject, summonId, npcId2 = 0, leatherType = -1, weightCarried, teleotherType, rockX, rockY, itemUsing, tzKekTimer, bananas, flourAmount, grain, questPoints, questStages, teleGrabItem, teleGrabX, teleGrabY, duelCount, underAttackBy, @@ -1571,16 +1581,8 @@ public abstract class Player { } } - public boolean inZammyWait() { - return isInAreaxxyy(2409, 2431, 9511, 9535); - } - - public boolean inSaraWait() { - return isInAreaxxyy(2368, 2392, 9479, 9498); - } - public boolean inCwGame() { - return isInAreaxxyy(2368, 2431, 9479, 9535) || isInAreaxxyy(2368, 2431, 3072, 3135) && !inSaraWait() && !inZammyWait(); + return isInAreaxxyy(2368, 2431, 9479, 9535) || isInAreaxxyy(2368, 2431, 3072, 3135) && !Boundary.isIn(this, Boundary.SARA_WAIT) && !Boundary.isIn(this, Boundary.ZAMMY_WAIT); } public void gameInterface(int id) { @@ -1736,13 +1738,6 @@ public abstract class Player { return false; } - public boolean isInTut() { - if (absX >= 2625 && absX <= 2687 && absY >= 4670 && absY <= 4735) { - return true; - } - return false; - } - public boolean FightPitsArea() { return absX >= 2378 && absX <= 2415 && absY >= 5133 && absY <= 5167 || absX >= 2394 && absX <= 2404 && absY >= 5169 && absY <= 5174; @@ -1822,20 +1817,6 @@ public abstract class Player { return false; } - public boolean isInBarrows() { - if(absX > 3543 && absX < 3584 && absY > 3265 && absY < 3311) { - return true; - } - return false; - } - - public boolean isInBarrows2() { - if(absX > 3529 && absX < 3581 && absY > 9673 && absY < 9722) { - return true; - } - return false; - } - public boolean inDuelArena() { if (absX > 3322 && absX < 3394 && absY > 3195 && absY < 3291 || absX > 3311 && absX < 3323 && absY > 3223 && absY < 3248) { return true; @@ -1843,20 +1824,6 @@ public abstract class Player { return false; } - public boolean inLumbBuilding() { - return isInAreaxxyy(3205, 3216, 3209, 3228) || isInAreaxxyy(3229, 3233, 3206, 3208) || isInAreaxxyy(3228, 3233, 3201, 3205) || isInAreaxxyy(3230, 3237, 3195, 3198) || isInAreaxxyy(3238, 3229, 3209, 3211) || - isInAreaxxyy(3240, 3247, 3204, 3215) || isInAreaxxyy(3247, 3252, 3190, 3195) || isInAreaxxyy(3227, 3230, 3212, 3216) || isInAreaxxyy(3227, 3230, 3221, 3225) || isInAreaxxyy(3229, 3232, 3236, 3241) || - isInAreaxxyy(3209, 3213, 3243, 3250) || isInAreaxxyy(3222, 3229, 3252, 3257) || isInAreaxxyy(3184, 3192, 3270, 3275) || isInAreaxxyy(3222, 3224, 3292, 3294) || isInAreaxxyy(3225, 3230, 3287, 3228) || - isInAreaxxyy(3243, 3248, 3244, 3248) || isInAreaxxyy(3202, 3205, 3167, 3170) || isInAreaxxyy(3231, 3238, 3151, 3155) || isInAreaxxyy(3233, 3234, 3156, 3156) || isInAreaxxyy(3163, 3170, 3305, 3308) || - isInAreaxxyy(3165, 3168, 3303, 3310); - } - - public boolean inDraynorBuilding() { - return isInAreaxxyy(3097, 3102, 3277, 3281) || isInAreaxxyy(3088, 3092, 3273, 3276) || isInAreaxxyy(3096, 3102, 3266, 3270) || isInAreaxxyy(3089, 3095, 3265, 3268) || isInAreaxxyy(3083, 3088, 3256, 3261) || - isInAreaxxyy(3087, 3094, 3251, 3255) || isInAreaxxyy(3121, 3130, 3240, 3246) || isInAreaxxyy(3102, 3112, 3162, 3165) || isInAreaxxyy(3107, 3111, 3166, 3166) || isInAreaxxyy(3103, 3115, 3157, 3161) || - isInAreaxxyy(3105, 3114, 3156, 3156) || isInAreaxxyy(3105, 3113, 3155, 3155) || isInAreaxxyy(3106, 3112, 3154, 3154) || isInAreaxxyy(3092, 3097, 3240, 3246); - } - public boolean isInArea(final int x1, final int y1, final int x2, final int y2) { return (absX >= x1 && absX <= x2 || absX <= x1 && absX >= x2) && (absY >= y1 && absY <= y2 || absY <= y1 && absY >= y2); } diff --git a/2006Redone Server/src/main/java/com/rebotted/game/players/PlayerAssistant.java b/2006Redone Server/src/main/java/com/rebotted/game/players/PlayerAssistant.java index 3098b4e7..dcbcb2b0 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/players/PlayerAssistant.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/players/PlayerAssistant.java @@ -1151,7 +1151,7 @@ public class PlayerAssistant { switch (spellId) { case 1162: // low alch if (player.inTrade) { - player.getPacketSender().sendMessage("You can't alch while in trade!"); + player.getPacketSender().sendMessage("You can't alch while in a trade!"); return; } if (System.currentTimeMillis() - player.alchDelay > 1000) { @@ -1215,8 +1215,7 @@ public class PlayerAssistant { case 1178: // high alch if (player.inTrade) { - player.getPacketSender().sendMessage( - "You can't alch while in trade!"); + player.getPacketSender().sendMessage("You can't alch while in a trade!"); return; } if (System.currentTimeMillis() - player.alchDelay > 1000) { @@ -1455,7 +1454,7 @@ public class PlayerAssistant { } else if (PestControl.isInGame(player) || Boundary.isIn(player, Boundary.PC_GAME)) { player.getPlayerAssistant().movePlayer(2658, 2609, 0); player.getDialogueHandler().sendDialogues(601, 3790); - } else if (player.tutorialProgress < 36 || player.isInTut()) { + } else if (player.tutorialProgress < 36 || Boundary.isIn(player, Boundary.TUTORIAL)) { player.getPlayerAssistant().movePlayer(3094, 3107, 0); player.diedOnTut = true; player.getDialogueHandler().sendStatement( diff --git a/2006Redone Server/src/main/java/com/rebotted/game/players/PlayerHandler.java b/2006Redone Server/src/main/java/com/rebotted/game/players/PlayerHandler.java index 19a87239..e333a03c 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/players/PlayerHandler.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/players/PlayerHandler.java @@ -263,7 +263,7 @@ public class PlayerHandler { if (updateRunning && !updateAnnounced) { updateAnnounced = true; - GameEngine.UpdateServer = true; + GameEngine.updateServer = true; } if (updateRunning && System.currentTimeMillis() - updateStartTime > updateSeconds * 1000) { diff --git a/2006Redone Server/src/main/java/com/rebotted/game/shops/Shops.java b/2006Redone Server/src/main/java/com/rebotted/game/shops/Shops.java index 3bb5c9da..1b64ab56 100644 --- a/2006Redone Server/src/main/java/com/rebotted/game/shops/Shops.java +++ b/2006Redone Server/src/main/java/com/rebotted/game/shops/Shops.java @@ -13,149 +13,42 @@ import com.rebotted.game.players.Player; public class Shops { public enum Shop { - SHOP1(588, 2), - SHOP2(550, 3), - SHOP3(575, 4), - SHOP4(2356, 5), - SHOP5(3796, 6), - SHOP6(1860, 7), - SHOP7(559, 9), - SHOP8(562, 10), - SHOP9(581, 11), - SHOP10(548, 12), - SHOP11(554, 13), - SHOP12(601, 14), - SHOP13(1301, 15), - SHOP14(1039, 16), - SHOP15(2353, 17), - SHOP16(3166, 18), - SHOP17(2161, 19), - SHOP18(2162, 20), - SHOP19(600, 21), - SHOP20(603, 22), - SHOP21(593, 23), - SHOP22(545, 24), - SHOP23(585, 25), - SHOP24(2305, 26), - SHOP25(2307, 27), - SHOP26(2304, 28), - SHOP27(2306, 29), - SHOP28(517, 30), - SHOP29(558, 31), - SHOP30(576, 32), - SHOP31(1369, 33), - SHOP32(1038, 35), - SHOP33(1433, 36), - SHOP34(584, 37), - SHOP35(540, 38), - SHOP36(2157, 39), - SHOP37(538, 40), - SHOP38(1303, 41), - SHOP39(578, 42), - SHOP40(587, 43), - SHOP41(1398, 44), - SHOP42(556, 45), - SHOP43(1865, 46), - SHOP44(543, 47), - SHOP45(2198, 48), - SHOP46(580, 49), - SHOP47(1862, 50), - SHOP48(583, 51), - SHOP49(553, 52), - SHOP50(461, 53), - SHOP51(903, 54), - SHOP551(2258, 55), - SHOP52(1435, 56), - SHOP53(3800, 57), - SHOP54(2623, 58), - SHOP55(594, 59), - SHOP56(579, 60), - SHOP57(2160, 61), - SHOP58(2191, 61), - SHOP59(589, 62), - SHOP60(549, 63), - SHOP61(542, 64), - SHOP62(3038, 65), - SHOP63(544, 66), - SHOP64(541, 67), - SHOP65(1434, 68), - SHOP66(577, 69), - SHOP67(539, 70), - SHOP68(1980, 71), - SHOP69(546, 72), - SHOP70(382, 73), - SHOP71(3541, 74), - SHOP72(520, 75), - SHOP73(1436, 76), - SHOP74(590, 77), - SHOP75(971, 78), - SHOP76(1917, 79), - SHOP77(1040, 80), - SHOP78(563, 81), - SHOP79(522, 82), - SHOP80(524, 83), - SHOP81(526, 84), - SHOP82(2154, 85), - SHOP83(1334, 86), - SHOP84(2552, 87), - SHOP85(528, 88), - SHOP86(1254, 89), - SHOP87(2086, 90), - SHOP88(3824, 91), - SHOP89(1866, 92), - SHOP90(1699, 93), - SHOP91(1282, 94), - SHOP92(530, 95), - SHOP93(516, 96), - SHOP94(560, 97), - SHOP95(471, 98), - //SHOP96(1208, 99), - SHOP97(532, 100), - SHOP98(3797, 101), - SHOP99(534, 102), - SHOP100(836, 103), - SHOP101(551, 104), - SHOP102(586, 105), - SHOP103(564, 106), - SHOP104(747, 107), - SHOP105(573, 108), - SHOP106(1316, 108), - SHOP107(547, 108), - SHOP114(1787, 110), - SHOP116(1526, 112), - SHOP115(568, 113), - SHOP118(1083, 114), - SHOP119(735, 115), - SHOP120(793, 116), - SHOP121(794, 116), - SHOP122(1079, 117), - SHOP123(682, 119), - SHOP124(683, 120), - SHOP125(692, 121), - SHOP126(1658, 122), - SHOP127(461, 123), - //SHOP128(537, 124), - //SHOP129(536, 125), - SHOP130(904, 126), - SHOP131(2152, 127), - SHOP132(2153, 128), - SHOP133(2151, 129), - SHOP134(2158, 130), - SHOP135(2156, 131), - SHOP136(2159, 132), - SHOP137(851, 133), - SHOP138(602, 134), - SHOP139(596, 135), - SHOP140(597, 136), - SHOP141(1784, 137), - SHOP142(2620, 138), - SHOP143(2622, 139), - SHOP144(552, 88), - SHOP145(1778, 140), - SHOP146(1782, 141), - SHOP147(849, 142), - SHOP148(933, 145), - SHOP149(932, 192); + SHOP1(588, 2), SHOP2(550, 3), SHOP3(575, 4), SHOP4(2356, 5), + SHOP5(3796, 6), SHOP6(1860, 7), SHOP7(559, 9), SHOP8(562, 10), + SHOP9(581, 11), SHOP10(548, 12), SHOP11(554, 13), SHOP12(601, 14), + SHOP13(1301, 15), SHOP14(1039, 16), SHOP15(2353, 17), SHOP16(3166, 18), + SHOP17(2161, 19), SHOP18(2162, 20), SHOP19(600, 21), SHOP20(603, 22), + SHOP21(593, 23), SHOP22(545, 24), SHOP23(585, 25), SHOP24(2305, 26), + SHOP25(2307, 27), SHOP26(2304, 28), SHOP27(2306, 29), SHOP28(517, 30), + SHOP29(558, 31), SHOP30(576, 32), SHOP31(1369, 33), SHOP32(1038, 35), + SHOP33(1433, 36), SHOP34(584, 37), SHOP35(540, 38), SHOP36(2157, 39), + SHOP37(538, 40), SHOP38(1303, 41), SHOP39(578, 42), SHOP40(587, 43), + SHOP41(1398, 44), SHOP42(556, 45), SHOP43(1865, 46), SHOP44(543, 47), + SHOP45(2198, 48), SHOP46(580, 49), SHOP47(1862, 50), SHOP48(583, 51), + SHOP49(553, 52), SHOP50(461, 53), SHOP51(903, 54), SHOP551(2258, 55), + SHOP52(1435, 56), SHOP53(3800, 57), SHOP54(2623, 58), SHOP55(594, 59), + SHOP56(579, 60), SHOP57(2160, 61), SHOP58(2191, 61), SHOP59(589, 62), + SHOP60(549, 63), SHOP61(542, 64), SHOP62(3038, 65), SHOP63(544, 66), + SHOP64(541, 67), SHOP65(1434, 68), SHOP66(577, 69), SHOP67(539, 70), + SHOP68(1980, 71), SHOP69(546, 72), SHOP70(382, 73), SHOP71(3541, 74), + SHOP72(520, 75), SHOP73(1436, 76), SHOP74(590, 77), SHOP75(971, 78), + SHOP76(1917, 79), SHOP77(1040, 80), SHOP78(563, 81), SHOP79(522, 82), + SHOP80(524, 83), SHOP81(526, 84), SHOP82(2154, 85), SHOP83(1334, 86), + SHOP84(2552, 87), SHOP85(528, 88), SHOP86(1254, 89), SHOP87(2086, 90), + SHOP88(3824, 91), SHOP89(1866, 92), SHOP90(1699, 93), SHOP91(1282, 94), + SHOP92(530, 95), SHOP93(516, 96), SHOP94(560, 97), SHOP95(471, 98), + SHOP97(532, 100), SHOP98(3797, 101), SHOP99(534, 102), SHOP100(836, 103), + SHOP101(551, 104), SHOP102(586, 105), SHOP103(564, 106), SHOP104(747, 107), + SHOP105(573, 108), SHOP106(1316, 108), SHOP114(1787, 110), SHOP115(568, 113), + SHOP116(1526, 112), SHOP117(1972, 190), SHOP118(1083, 114), SHOP119(735, 115), + SHOP120(793, 116), SHOP121(794, 116), SHOP122(1079, 117), SHOP123(682, 119), + SHOP124(683, 120), SHOP125(692, 121), SHOP126(1658, 122), SHOP127(461, 123), + SHOP130(904, 126), SHOP131(2152, 127), SHOP132(2153, 128), SHOP133(2151, 129), + SHOP134(2158, 130), SHOP135(2156, 131), SHOP136(2159, 132), SHOP137(851, 133), + SHOP138(602, 134), SHOP139(596, 135), SHOP140(597, 136), SHOP141(1784, 137), + SHOP142(2620, 138), SHOP143(2622, 139), SHOP144(552, 88), SHOP145(1778, 140), + SHOP146(1782, 141), SHOP147(849, 142), SHOP148(970, 145), SHOP149(555, 220); + private final int npcId, shopId; diff --git a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/JavaCord.java b/2006Redone Server/src/main/java/com/rebotted/integrations/discord/JavaCord.java index e530a6af..05c4f363 100644 --- a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/JavaCord.java +++ b/2006Redone Server/src/main/java/com/rebotted/integrations/discord/JavaCord.java @@ -26,7 +26,6 @@ public class JavaCord { //System.out.println("You can invite the bot by using the following url: " + api.createBotInvite()); api.addListener(new Commands()); api.addListener(new Forum()); - api.addListener(new HeatMap()); api.addListener(new Hiscores()); api.addListener(new Issues()); api.addListener(new Online()); diff --git a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Commands.java b/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Commands.java index 8f185e26..5a6393bf 100644 --- a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Commands.java +++ b/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Commands.java @@ -13,8 +13,6 @@ public class Commands implements MessageCreateListener { + System.lineSeparator() + "::forum/::forums" + System.lineSeparator() + - "::heatmap" - + System.lineSeparator() + "::hiscores/::highscores" + System.lineSeparator() + "::issues/::bugs" diff --git a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Forum.java b/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Forum.java index 177f98fb..b9598e61 100644 --- a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Forum.java +++ b/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Forum.java @@ -9,7 +9,7 @@ public class Forum implements MessageCreateListener { public void onMessageCreate(MessageCreateEvent event) { Message message = event.getMessage(); if (message.getContent().equalsIgnoreCase("::forum") || message.getContent().equalsIgnoreCase("::forums")) { - event.getChannel().sendMessage("https://2006rebotted.tk/forums/"); + event.getChannel().sendMessage("https://rsrebotted.com/forums/index.php"); } } } \ No newline at end of file diff --git a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/HeatMap.java b/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/HeatMap.java deleted file mode 100644 index 13e9fbcb..00000000 --- a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/HeatMap.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.rebotted.integrations.discord.commands; - -import org.javacord.api.entity.message.Message; -import org.javacord.api.event.message.MessageCreateEvent; -import org.javacord.api.listener.message.MessageCreateListener; - -public class HeatMap implements MessageCreateListener { - @Override - public void onMessageCreate(MessageCreateEvent event) { - Message message = event.getMessage(); - if (message.getContent().equalsIgnoreCase("::heatmap")) { - event.getChannel().sendMessage("https://2006rebotted.tk/heatmap.html"); - } - } -} \ No newline at end of file diff --git a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Hiscores.java b/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Hiscores.java index 13dee6a6..f514e5b3 100644 --- a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Hiscores.java +++ b/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Hiscores.java @@ -9,7 +9,7 @@ public class Hiscores implements MessageCreateListener { public void onMessageCreate(MessageCreateEvent event) { Message message = event.getMessage(); if (message.getContent().equalsIgnoreCase("::hiscores") || message.getContent().equalsIgnoreCase("::highscores")) { - event.getChannel().sendMessage("https://2006rebotted.tk/hiscores.html"); + event.getChannel().sendMessage("https://rsrebotted.com/hiscores.html"); } } } \ No newline at end of file diff --git a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Vote.java b/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Vote.java index 20c766a9..b53136c2 100644 --- a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Vote.java +++ b/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Vote.java @@ -8,7 +8,7 @@ public class Vote implements MessageCreateListener { public void onMessageCreate(MessageCreateEvent event) { Message message = event.getMessage(); if (message.getContent().equalsIgnoreCase("::vote")) { - event.getChannel().sendMessage("Visit https://2006rebotted.tk/vote.html then type \"::claimvote\" in-game to receive your reward!"); + event.getChannel().sendMessage("Visit https://rsrebotted.com/vote.html then type \"::claimvote\" in-game to receive your reward!"); } } } diff --git a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Website.java b/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Website.java index bc1d8253..a664561a 100644 --- a/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Website.java +++ b/2006Redone Server/src/main/java/com/rebotted/integrations/discord/commands/Website.java @@ -9,7 +9,7 @@ public class Website implements MessageCreateListener { public void onMessageCreate(MessageCreateEvent event) { Message message = event.getMessage(); if (message.getContent().equalsIgnoreCase("::website") || message.getContent().equalsIgnoreCase("::site")) { - event.getChannel().sendMessage("https://2006rebotted.tk/"); + event.getChannel().sendMessage("www.rsrebotted.com"); } } } \ No newline at end of file diff --git a/2006Redone Server/src/main/java/com/rebotted/net/RS2LoginProtocolDecoder.java b/2006Redone Server/src/main/java/com/rebotted/net/RS2LoginProtocolDecoder.java index ff93b882..1c62f597 100644 --- a/2006Redone Server/src/main/java/com/rebotted/net/RS2LoginProtocolDecoder.java +++ b/2006Redone Server/src/main/java/com/rebotted/net/RS2LoginProtocolDecoder.java @@ -217,7 +217,7 @@ public class RS2LoginProtocolDecoder extends CumulativeProtocolDecoder { returnCode = 7; } - if (GameEngine.UpdateServer) { + if (GameEngine.updateServer) { returnCode = 14; } diff --git a/2006Redone Server/src/main/java/com/rebotted/net/packets/PacketHandler.java b/2006Redone Server/src/main/java/com/rebotted/net/packets/PacketHandler.java index 05df9e3c..c7ea24e8 100644 --- a/2006Redone Server/src/main/java/com/rebotted/net/packets/PacketHandler.java +++ b/2006Redone Server/src/main/java/com/rebotted/net/packets/PacketHandler.java @@ -8,7 +8,7 @@ import com.rebotted.net.packets.impl.Bank10; import com.rebotted.net.packets.impl.Bank5; import com.rebotted.net.packets.impl.BankAll; import com.rebotted.net.packets.impl.BankX1; -import com.rebotted.net.packets.impl.BankX2; +import com.rebotted.net.packets.impl.InterfaceX; import com.rebotted.net.packets.impl.ChallengePlayer; import com.rebotted.net.packets.impl.ChangeAppearance; import com.rebotted.net.packets.impl.ChangeRegions; @@ -122,7 +122,7 @@ public class PacketHandler { packetId[95] = pm; packetId[133] = pm; packetId[135] = new BankX1(); - packetId[208] = new BankX2(); + packetId[208] = new InterfaceX(); Walking w = new Walking(); packetId[98] = w; packetId[164] = w; diff --git a/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/ChangeRegions.java b/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/ChangeRegions.java index f330c4b3..9cb57b4e 100644 --- a/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/ChangeRegions.java +++ b/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/ChangeRegions.java @@ -19,9 +19,9 @@ public class ChangeRegions implements PacketType { Music.playMusic(c); } GameEngine.objectHandler.updateObjects(c);//testing - Doors.getSingleton().load(); GameEngine.itemHandler.reloadItems(c); GameEngine.objectManager.loadObjects(c); + Doors.getSingleton().load(); GlobalDropsHandler.reset(c); c.getPlayerAssistant().removeObjects();// testing c.saveFile = true; diff --git a/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/ClickingButtons.java b/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/ClickingButtons.java index ac2dd7ad..63adae2c 100644 --- a/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/ClickingButtons.java +++ b/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/ClickingButtons.java @@ -933,243 +933,6 @@ public class ClickingButtons implements PacketType { } break; - case 9167: - switch (player.dialogueAction) { - case 63: - player.getDialogueHandler().sendDialogues(166, player.npcType); - return; - case 64: - player.getDialogueHandler().sendDialogues(173, player.npcType); - return; - case 60: - player.getDialogueHandler().sendDialogues(277, player.npcType); - return; - case 61: - player.getDialogueHandler().sendDialogues(295, player.npcType); - return; - case 129: - player.getDialogueHandler().sendDialogues(231, player.npcType); - return; - case 58: - player.getDialogueHandler().sendDialogues(540, player.npcType); - return; - case 68: - player.getDialogueHandler().sendDialogues(39, player.npcType); - return; - case 124: - player.getDialogueHandler().sendDialogues(194, player.npcType); - return; - case 230: - player.getDialogueHandler().sendDialogues(1053, player.npcType); - return; - case 251: - player.getPacketSender().openUpBank(); - player.nextChat = 0; - return; - case 144: - player.getDialogueHandler().sendDialogues(1314, player.npcType); - return; - case 502: - player.getDialogueHandler().sendDialogues(1026, player.npcType); - return; - case 1301: // first option haircut. - player.getDialogueHandler().sendDialogues(1302, 598); - return; - case 53: - if (player.objectId == 1293 || player.objectId == 1317) { - player.getPlayerAssistant().startTeleport(2542, 3169, 0, "modern"); - } else { - player.getPacketSender().sendMessage("You can't teleport there, because you are already there!"); - player.getPacketSender().closeAllWindows(); - } - return; - case 159: - player.getDialogueHandler().sendDialogues(3161, player.npcType); - return; - case 167: - player.getDialogueHandler().sendDialogues(1343, player.npcType); - return; - case 222: - player.getDialogueHandler().sendDialogues(911, player.npcType); - player.dialogueAction = -1; - return; - case 182: - player.getDialogueHandler().sendNpcChat1("No, I was hoping someone could help me find it though.", player.talkingNpc, "Squire"); - player.nextChat = 0; - return; - case 188: - player.getDialogueHandler().sendDialogues(3129, 945); - return; - case 185: - player.getDialogueHandler().sendDialogues(629, player.npcType); - return; - case 186: // Shield of Arrav - player.getDialogueHandler().sendDialogues(629, player.npcType); - return; - } - player.dialogueAction = 0; - player.getPacketSender().closeAllWindows(); - break; - - case 9168: - switch (player.dialogueAction) { - case 63: - player.getDialogueHandler().sendDialogues(167, player.npcType); - return; - case 64: - player.getDialogueHandler().sendDialogues(174, player.npcType); - return; - case 60: - player.getDialogueHandler().sendDialogues(279, player.npcType); - return; - case 61: - player.getDialogueHandler().sendDialogues(297, player.npcType); - return; - case 124: - player.getDialogueHandler().sendDialogues(192, player.npcType); - return; - case 126: - player.getDialogueHandler().sendDialogues(203, player.npcType); - return; - case 58: - player.getDialogueHandler().sendDialogues(538, player.npcType); - return; - case 68: - player.getDialogueHandler().sendDialogues(40, player.npcType); - return; - case 230: - player.getDialogueHandler().sendDialogues(1049, player.npcType); - break; - case 251: - player.getBankPin().bankPinSettings(); - player.nextChat = 0; - return; - case 502: - player.getDialogueHandler().sendDialogues(1022, player.npcType); - return; - case 1301: - player.getDialogueHandler().sendDialogues(1308, 598); - return; - case 144: - player.getDialogueHandler().sendDialogues(1315, player.npcType); - return; - case 53: - if (player.objectId == 1294 || player.objectId == 1317) { - player.getPlayerAssistant().startTeleport(2461, 3444, 0, - "modern"); - } else { - player.getPacketSender().sendMessage("You can't teleport there, because you are already there!"); - player.getPacketSender().closeAllWindows(); - } - return; - case 159: - player.getDialogueHandler().sendDialogues(3195, player.npcType); - return; - case 167: - player.getDialogueHandler().sendDialogues(1344, player.npcType); - return; - case 222: - player.getDialogueHandler().sendDialogues(912, player.npcType); - player.dialogueAction = -1; - return; - case 182: - player.getDialogueHandler().sendDialogues(615, player.npcType); - return; - case 188: - player.getDialogueHandler().sendDialogues(3130, 945); - return; - case 185: - player.getDialogueHandler().sendDialogues(628, player.npcType); - return; - case 186: // Shield of Arrav - player.getDialogueHandler().sendDialogues(628, player.npcType); - return; - } - player.dialogueAction = 0; - player.getPacketSender().closeAllWindows(); - break; - - case 9169: - switch (player.dialogueAction) { - case 63: - player.getDialogueHandler().sendDialogues(168, player.npcType); - return; - case 64: - player.getDialogueHandler().sendDialogues(175, player.npcType); - return; - case 60: - player.getDialogueHandler().sendDialogues(278, player.npcType); - return; - case 61: - player.getDialogueHandler().sendDialogues(296, player.npcType); - return; - case 53: - if (player.objectId == 1294 || player.objectId == 1293) { - player.getPlayerAssistant().startTeleport(3179, 3507, 0, - "modern"); - } else { - player.getPacketSender().sendMessage("You can't teleport there, because you are already there!"); - player.getPacketSender().closeAllWindows(); - } - return; - case 129: - player.getDialogueHandler().sendDialogues(232, player.npcType); - return; - case 126: - player.getDialogueHandler().sendDialogues(204, player.npcType); - return; - case 144: - player.getDialogueHandler().sendDialogues(1316, player.npcType); - return; - case 124: - player.getDialogueHandler().sendDialogues(3193, 741); - return; - case 58: - player.getDialogueHandler().sendDialogues(539, player.npcType); - return; - case 68: - player.getDialogueHandler().sendDialogues(41, player.npcType); - return; - case 230: - player.getDialogueHandler().sendDialogues(1050, player.npcType); - break; - case 251: - player.getDialogueHandler().sendDialogues(1015, 494); - return; - case 502: - player.getDialogueHandler().sendDialogues(1025, player.npcType); - return; - case 1301: - player.getDialogueHandler().sendDialogues(1306, 598); - return; - case 222: - player.getDialogueHandler().sendDialogues(913, player.npcType); - player.dialogueAction = -1; - return; - case 167: - player.getDialogueHandler().sendDialogues(1342, player.npcType); - return; - case 159: - player.getDialogueHandler().sendDialogues(3160, player.npcType); - return; - case 182: - player.getDialogueHandler().sendNpcChat1("Of course he is angry...", player.talkingNpc, "Squire"); - player.nextChat = 0; - return; - case 188: - player.getDialogueHandler().sendDialogues(3131, 945); - return; - case 185: - player.getDialogueHandler().sendDialogues(630, player.npcType); - return; - case 186: // Shield of Arrav - player.getDialogueHandler().sendDialogues(691, player.npcType); - return; - } - player.dialogueAction = 0; - player.getPacketSender().closeAllWindows(); - break; - /** Dueling **/ case 26065: // no forfeit case 26040: diff --git a/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/BankX2.java b/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/InterfaceX.java similarity index 90% rename from 2006Redone Server/src/main/java/com/rebotted/net/packets/impl/BankX2.java rename to 2006Redone Server/src/main/java/com/rebotted/net/packets/impl/InterfaceX.java index 84fbf309..d6888c73 100644 --- a/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/BankX2.java +++ b/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/InterfaceX.java @@ -2,13 +2,11 @@ package com.rebotted.net.packets.impl; import com.rebotted.game.content.random.PartyRoom; import com.rebotted.game.content.skills.cooking.Cooking; +import com.rebotted.game.content.skills.smithing.Smelting; import com.rebotted.game.players.Player; import com.rebotted.net.packets.PacketType; -/** - * Bank X Items - **/ -public class BankX2 implements PacketType { +public class InterfaceX implements PacketType { @Override public void processPacket(Player player, int packetType, int packetSize) { @@ -23,6 +21,9 @@ public class BankX2 implements PacketType { if (player.playerIsCooking && player.doAmount > 0) { Cooking.cookItem(player, player.cookingItem, Xamount, player.cookingObject); } + if (player.isSmelting && player.doAmount > 0) { + Smelting.smeltBar(player, player.smeltingItem); + } switch (player.xInterfaceId) { case 5064: if (player.inPartyRoom) { diff --git a/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/ItemOnObject.java b/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/ItemOnObject.java index 7a620b49..bc83df2c 100644 --- a/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/ItemOnObject.java +++ b/2006Redone Server/src/main/java/com/rebotted/net/packets/impl/ItemOnObject.java @@ -10,6 +10,7 @@ import com.rebotted.game.items.UseItem; import com.rebotted.game.items.impl.Fillables; import com.rebotted.game.players.Player; import com.rebotted.net.packets.PacketType; +import com.rebotted.world.Boundary; import com.rebotted.world.clip.Region; public class ItemOnObject implements PacketType { @@ -84,7 +85,7 @@ public class ItemOnObject implements PacketType { && player.absX < 2813 || player.absY > 3437 && player.absY < 3442) { return; } - if (player.tutorialProgress < 36 || player.isInTut()) { + if (player.tutorialProgress < 36 || Boundary.isIn(player, Boundary.TUTORIAL)) { CookingTutorialIsland.cookThisFood(player, itemId, objectId); } else { Cooking.startCooking(player, itemId, objectId); diff --git a/2006Redone Server/src/main/java/com/rebotted/world/Boundary.java b/2006Redone Server/src/main/java/com/rebotted/world/Boundary.java index c2193ec3..f27d138b 100644 --- a/2006Redone Server/src/main/java/com/rebotted/world/Boundary.java +++ b/2006Redone Server/src/main/java/com/rebotted/world/Boundary.java @@ -281,7 +281,6 @@ public class Boundary { public static final Boundary ARDOUGNE_ZOO = new Boundary(2593, 2639, 3265, 3288); public static final Boundary APE_ATOLL = new Boundary(2694, 2811, 2691, 2805); - public static final Boundary TUTORIAL_ISLAND = new Boundary(2625, 2687, 4670, 4735); public static final Boundary BARROWS = new Boundary(3543, 3584, 3265, 3311); public static final Boundary BARROWS_UNDERGROUND = new Boundary(3529, 3581, 9673, 9722); public static final Boundary PC_BOAT = new Boundary(2660, 2663, 2638, 2643); diff --git a/2006Redone Server/src/main/java/com/rebotted/world/ObjectHandler.java b/2006Redone Server/src/main/java/com/rebotted/world/ObjectHandler.java index 0760c796..6e9341c7 100644 --- a/2006Redone Server/src/main/java/com/rebotted/world/ObjectHandler.java +++ b/2006Redone Server/src/main/java/com/rebotted/world/ObjectHandler.java @@ -72,6 +72,28 @@ public class ObjectHandler { } GameEngine.objectHandler.placeObject(OBJECT); } + + public void createAnObject(Player player, int id, int x, int y, int h) { + Objects OBJECT = new Objects(id, x, y, h, 0, 10, 0); + if (id == -1) { + removeObject(OBJECT); + } else { + addObject(OBJECT); + } + GameEngine.objectHandler.placeObject(OBJECT); + } + + + public void createAnObject(int id, int x, int y, int h, int face, int type) { + Objects OBJECT = new Objects(id, x, y, h, face, type, 0); + if (id == -1) { + removeObject(OBJECT); + } else { + addObject(OBJECT); + } + //Server.canLoadObjects = true; + GameEngine.objectHandler.placeObject(OBJECT); + } public void createAnObject(int id, int x, int y) { Objects OBJECT = new Objects(id, x, y, 0, 0, 10, 0);