Allow the per world Game Modes to not be enforced.

This commit is contained in:
Rigby 2011-09-16 10:11:30 +01:00
parent 97168043ff
commit 133810550f
2 changed files with 16 additions and 8 deletions

View File

@ -654,14 +654,16 @@ public class MVWorld {
}
private boolean setGameMode(GameMode mode) {
this.gameMode = mode;
config.setProperty("worlds." + this.name + ".gamemode", this.gameMode.toString());
saveConfig();
for(Player p : this.plugin.getServer().getWorld(this.getName()).getPlayers()) {
this.plugin.log(Level.FINER, "Setting " + p.getName() + "'s GameMode to " + this.gameMode.toString());
this.plugin.getPlayerListener().handleGameMode(p, this);
if (this.plugin.getConfig().getBoolean("enforcegamemodes", true)) {
for (Player p : this.plugin.getServer().getWorld(this.getName()).getPlayers()) {
this.plugin.log(Level.FINER, "Setting " + p.getName() + "'s GameMode to " + this.gameMode.toString());
this.plugin.getPlayerListener().handleGameMode(p, this);
}
}
return true;
}

View File

@ -72,7 +72,9 @@ public class MVPlayerListener extends PlayerListener {
if(event.isBedSpawn() && this.plugin.getConfig().getBoolean("bedrespawn", true)) {
// Handle the Players GameMode setting for the new world.
this.handleGameMode(event.getPlayer(), event.getRespawnLocation().getWorld());
if (this.plugin.getConfig().getBoolean("enforcegamemodes", true)) {
this.handleGameMode(event.getPlayer(), event.getRespawnLocation().getWorld());
}
this.plugin.log(Level.FINE, "Spawning " + event.getPlayer().getName() + " at their bed");
return;
}
@ -98,7 +100,9 @@ public class MVPlayerListener extends PlayerListener {
event.setRespawnLocation(respawnEvent.getPlayersRespawnLocation());
// Handle the Players GameMode setting for the new world.
this.handleGameMode(event.getPlayer(), respawnEvent.getPlayersRespawnLocation().getWorld());
if (this.plugin.getConfig().getBoolean("enforcegamemodes", true)) {
this.handleGameMode(event.getPlayer(), respawnEvent.getPlayersRespawnLocation().getWorld());
}
}
private Location getMostAccurateRespawnLocation(World w) {
@ -118,7 +122,9 @@ public class MVPlayerListener extends PlayerListener {
event.getPlayer().sendMessage("If you just wanna see all of the Multiverse Help, type: " + ChatColor.GREEN + "/mv");
}
// Handle the Players GameMode setting for the new world.
this.handleGameMode(event.getPlayer(), event.getPlayer().getWorld());
if (this.plugin.getConfig().getBoolean("enforcegamemodes", true)) {
this.handleGameMode(event.getPlayer(), event.getPlayer().getWorld());
}
}
@Override