Fixed regression - the restless ghost is now able to be completed by adding the skull to the coffin
Fixed regression - house teleport and teletabs not working due to being teleblocked by the cast Fixed regression - WildernessGateHandler now only prompts the player and applies the skull when interacting with the gates in the wilderness and not other gates
This commit is contained in:
+5
-2
@@ -1,11 +1,14 @@
|
||||
package content.region.misthalin.lumbridge.quest.therestlessghost;
|
||||
|
||||
import core.api.Container;
|
||||
import core.game.interaction.NodeUsageEvent;
|
||||
import core.game.interaction.UseWithHandler;
|
||||
import core.game.node.item.Item;
|
||||
import core.game.node.scenery.Scenery;
|
||||
import core.plugin.Initializable;
|
||||
import core.plugin.Plugin;
|
||||
import org.rs09.consts.Items;
|
||||
|
||||
import static core.api.ContentAPIKt.removeItem;
|
||||
|
||||
/**
|
||||
* Represents the plugin used to add the skull to the cofin.
|
||||
@@ -37,7 +40,7 @@ public final class RestlessGhostSkull extends UseWithHandler {
|
||||
event.getPlayer().getDialogueInterpreter().sendDialogue("Maybe I should open it first.");
|
||||
return true;
|
||||
}
|
||||
if (event.getPlayer().getInventory().remove(new Item(964, 24))) {
|
||||
if (removeItem(event.getPlayer(), Items.SKULL_964, Container.INVENTORY)) {
|
||||
event.getPlayer().getPacketDispatch().sendMessage("You put the skull in the coffin.");
|
||||
event.getPlayer().getQuestRepository().getQuest(RestlessGhost.NAME).finish(event.getPlayer());
|
||||
}
|
||||
|
||||
@@ -17,18 +17,20 @@ class WildernessGateHandler : InteractionListener {
|
||||
}
|
||||
|
||||
private fun handleGate (player: Player, node: Node) : Boolean {
|
||||
val isEntering = !player.skullManager.isDeepWilderness()
|
||||
if (player.location.y > 3890) {
|
||||
val isEntering = !player.skullManager.isDeepWilderness()
|
||||
|
||||
if (isEntering)
|
||||
openDialogue (player, GateDialogue(node.asScenery()))
|
||||
else {
|
||||
if (player.properties.combatPulse.isInCombat)
|
||||
sendMessage (player, "You cannot leave while you are under attack.")
|
||||
if (isEntering)
|
||||
openDialogue(player, GateDialogue(node.asScenery()))
|
||||
else {
|
||||
DoorActionHandler.handleAutowalkDoor (player, node.asScenery())
|
||||
player.skullManager.isDeepWilderness = false
|
||||
if (player.properties.combatPulse.isInCombat)
|
||||
sendMessage(player, "You cannot leave while you are under attack.")
|
||||
else {
|
||||
DoorActionHandler.handleAutowalkDoor(player, node.asScenery())
|
||||
player.skullManager.isDeepWilderness = false
|
||||
}
|
||||
}
|
||||
}
|
||||
} else DoorActionHandler.handleAutowalkDoor (player, node.asScenery())
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
@@ -64,7 +64,6 @@ public final class ActionLocks {
|
||||
*/
|
||||
public void lock(int ticks) {
|
||||
lockMovement(ticks);
|
||||
lockTeleport(ticks);
|
||||
lockInteractions(ticks);
|
||||
}
|
||||
|
||||
@@ -73,7 +72,6 @@ public final class ActionLocks {
|
||||
*/
|
||||
public void unlock() {
|
||||
unlockMovement();
|
||||
unlockTeleport();
|
||||
unlockInteraction();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user