Cracking safes the the Rogue's Den now repeats

The repetition will stop if you move away, get low health, or run out of inventory space.
This commit is contained in:
randy 2025-02-05 21:32:27 -07:00
parent 579df71848
commit dd35e479c1

View file

@ -81,24 +81,33 @@ public class ThievingGuidePlugin extends OptionHandler {
player.getDialogueInterpreter().sendDialogues(2266, null, "And where do you think you're going? A little too eager", "I think. Come and talk to me before you go wandering", "around in there.");
break;
case "crack":
if (player.getSkills().getLevel(Skills.THIEVING) < 50) {
player.getPacketDispatch().sendMessage("You need to be level " + level + " thief to crack this safe.");
return true;
}
if (player.getInventory().freeSlots() == 0) {
player.getPacketDispatch().sendMessage("Not enough inventory space.");
return true;
}
final boolean success = success(player, Skills.THIEVING);
player.lock(4);
player.getPacketDispatch().sendMessage("You start cracking the safe.");
player.animate(animations[success ? 1 : 0]);
GameWorld.getPulser().submit(new Pulse(3, player) {
@Override
public boolean pulse() {
if (player.getSkills().getLevel(Skills.THIEVING) < 50) {
player.getPacketDispatch().sendMessage("You need to be level " + level + " thief to crack this safe.");
return true;
}
if (player.getInventory().freeSlots() == 0) {
player.getPacketDispatch().sendMessage("Not enough inventory space.");
return true;
}
if (player.getSkills().getLifepoints() <= 6) {
player.getPacketDispatch().sendMessage("You're too injured to be dealing with traps right now.");
return true;
}
if (player.getLocation().getDistance(node.getLocation()) >= 1) {
return true;
}
final boolean success = success(player, Skills.THIEVING);
//player.lock(4);
player.getPacketDispatch().sendMessage("You start cracking the safe.");
player.animate(animations[success ? 1 : 0]);
if (success) {
handleSuccess(player, (Scenery) node);
return true;
return false;
}
final boolean trapped = RandomFunction.random(3) == 1;
if (trapped) {
@ -109,11 +118,12 @@ public class ThievingGuidePlugin extends OptionHandler {
@Override
public boolean pulse() {
player.animate(new Animation(-1, Priority.HIGH));
return true;
return false;
}
});
}
return true;
return false;
}
});
break;