Fix for bug #728. Multiverse + WorldGuard region exit flag.

This commit is contained in:
skeight 2012-02-10 09:06:05 -08:00
parent 16da53ae4e
commit 2eea5c7bf7

View File

@ -283,6 +283,7 @@ public void onPlayerMove(PlayerMoveEvent event) {
if (event.getFrom().getBlockX() != event.getTo().getBlockX()
|| event.getFrom().getBlockY() != event.getTo().getBlockY()
|| event.getFrom().getBlockZ() != event.getTo().getBlockZ()) {
PlayerFlagState state = plugin.getFlagStateManager().getState(player);
LocalPlayer localPlayer = plugin.wrapPlayer(player);
boolean hasBypass = plugin.getGlobalRegionManager().hasBypass(player, world);
@ -303,6 +304,12 @@ public void onPlayerMove(PlayerMoveEvent event) {
return;
}
//Fix for bug #728
if (state.lastWorld != null && !state.lastWorld.equals(world)) {
plugin.getFlagStateManager().forget(player);
return;
}
// Have to set this state
if (state.lastExitAllowed == null) {
state.lastExitAllowed = mgr.getApplicableRegions(toVector(event.getFrom()))