Fixed wilderness teleblock bug
This commit is contained in:
@@ -51,7 +51,7 @@ public final class AncientTeleportPlugin extends MagicSpell {
|
||||
|
||||
@Override
|
||||
public boolean cast(Entity entity, Node target) {
|
||||
if (entity.getLocks().isTeleportLocked() || !super.meetsRequirements(entity, true, false)) {
|
||||
if (entity.isTeleBlocked() || !super.meetsRequirements(entity, true, false)) {
|
||||
return false;
|
||||
}
|
||||
if (entity.getTeleporter().send(location.transform(0, RandomFunction.random(3), 0), getSpellId() == 28 ? TeleportType.HOME : TeleportType.ANCIENT)) {
|
||||
|
||||
@@ -347,10 +347,6 @@ class LunarListeners : SpellListener("lunar"), Commands {
|
||||
}
|
||||
|
||||
private fun sendTeleport(player: Player, xp: Double, loc: Location){
|
||||
if(player.locks.isTeleportLocked){
|
||||
player.sendMessage("A magical force prevents you from teleporting.")
|
||||
return
|
||||
}
|
||||
if(player.teleporter.send(loc,TeleportManager.TeleportType.LUNAR)) {
|
||||
addXP(player, xp)
|
||||
removeRunes(player)
|
||||
@@ -361,7 +357,7 @@ class LunarListeners : SpellListener("lunar"), Commands {
|
||||
private fun sendGroupTeleport(player: Player, xp: Double, destName: String, loc: Location){
|
||||
RegionManager.getLocalPlayers(player,1).forEach {
|
||||
if(it == player) return@forEach
|
||||
if(it.locks.isTeleportLocked) return@forEach
|
||||
if(it.isTeleBlocked()) return@forEach
|
||||
if(!it.isActive) return@forEach
|
||||
if(!it.settings.isAcceptAid) return@forEach
|
||||
if(it.ironmanManager.isIronman) return@forEach
|
||||
|
||||
@@ -927,7 +927,7 @@ public abstract class Entity extends Node {
|
||||
* @return {@code True} if so.
|
||||
*/
|
||||
public boolean isTeleBlocked() {
|
||||
return timers.getTimer("teleblock") != null;
|
||||
return timers.getTimer("teleblock") != null || getLocks().isTeleportLocked();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -129,6 +129,12 @@ public final class SkullManager {
|
||||
setDeepWilderness(true);
|
||||
else if (deepWilderness && level < 48)
|
||||
setDeepWilderness(false);
|
||||
|
||||
if (level > 20)
|
||||
player.getLocks().lockTeleport (1_000_000);
|
||||
else
|
||||
player.getLocks().unlockTeleport();
|
||||
|
||||
this.level = level;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user