mirror of
https://github.com/Multiverse/Multiverse-Core.git
synced 2025-02-16 20:41:59 +01:00
Fix Signportals not going anywhere
This commit is contained in:
parent
f0ae8cbb8e
commit
ea6e94d99d
@ -380,7 +380,9 @@ public class MVWorld {
|
||||
this.setMonsters(value);
|
||||
} else if (name.equalsIgnoreCase("memory") || name.equalsIgnoreCase("spawnmemory")) {
|
||||
this.setSpawnInMemory(value);
|
||||
} else if (name.equalsIgnoreCase("weather") || name.equalsIgnoreCase("storm")) {
|
||||
} else if (name.equalsIgnoreCase("hunger")) {
|
||||
this.setHunger(value);
|
||||
}else if (name.equalsIgnoreCase("weather") || name.equalsIgnoreCase("storm")) {
|
||||
this.setEnableWeather(value);
|
||||
} else {
|
||||
return false;
|
||||
|
@ -129,6 +129,10 @@ public class MVPlayerListener extends PlayerListener {
|
||||
if (event.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
// Handle the Players GameMode setting for the new world.
|
||||
if (this.plugin.getConfig().getBoolean("enforcegamemodes", true)) {
|
||||
this.handleGameMode(event.getPlayer(), event.getTo().getWorld());
|
||||
}
|
||||
MVWorld fromWorld = this.worldManager.getMVWorld(event.getFrom().getWorld().getName());
|
||||
MVWorld toWorld = this.worldManager.getMVWorld(event.getTo().getWorld().getName());
|
||||
event.setCancelled(checkWorldPermissions(fromWorld, toWorld, event.getPlayer()));
|
||||
@ -145,9 +149,14 @@ public class MVPlayerListener extends PlayerListener {
|
||||
|
||||
@Override
|
||||
public void onPlayerPortal(PlayerPortalEvent event) {
|
||||
|
||||
if (event.isCancelled() || event.getTo() == null || event.getFrom() == null) {
|
||||
return;
|
||||
}
|
||||
// Handle the Players GameMode setting for the new world.
|
||||
if (this.plugin.getConfig().getBoolean("enforcegamemodes", true)) {
|
||||
this.handleGameMode(event.getPlayer(), event.getTo().getWorld());
|
||||
}
|
||||
MVWorld fromWorld = this.worldManager.getMVWorld(event.getFrom().getWorld().getName());
|
||||
MVWorld toWorld = this.worldManager.getMVWorld(event.getTo().getWorld().getName());
|
||||
event.setCancelled(checkWorldPermissions(fromWorld, toWorld, event.getPlayer()));
|
||||
@ -171,27 +180,19 @@ public class MVPlayerListener extends PlayerListener {
|
||||
player.sendMessage("You don't have access to go here...");
|
||||
return true;
|
||||
}
|
||||
} else {
|
||||
// The toworld is not handled by MV, we don't care about payments
|
||||
return false;
|
||||
}
|
||||
if (fromWorld != null) {
|
||||
if (toWorld == null) {
|
||||
return true;
|
||||
}
|
||||
if (fromWorld.getWorldBlacklist().contains(toWorld.getName())) {
|
||||
player.sendMessage("You don't have access to go to " + toWorld.getColoredWorldString() + " from " + fromWorld.getColoredWorldString());
|
||||
return true;
|
||||
}
|
||||
}
|
||||
if (toWorld == null) {
|
||||
// The toworld is not handled by MV, we don't care about payments
|
||||
return false;
|
||||
}
|
||||
|
||||
// Only check payments if it's a different world:
|
||||
if (!toWorld.equals(fromWorld)) {
|
||||
// Handle the Players GameMode setting for the new world.
|
||||
if (this.plugin.getConfig().getBoolean("enforcegamemodes", true)) {
|
||||
this.handleGameMode(player, toWorld);
|
||||
}
|
||||
|
||||
// If the player does not have to pay, return now.
|
||||
if (toWorld.isExempt(player)) {
|
||||
return false;
|
||||
|
Loading…
Reference in New Issue
Block a user