mirror of
https://github.com/Multiverse/Multiverse-Core.git
synced 2024-09-28 23:27:27 +02:00
Move GameMode check to onPlayerChangeWorld, fix difficulty case settings
This commit is contained in:
parent
c566ead9ef
commit
091c5a9621
@ -743,7 +743,7 @@ public class MVWorld {
|
|||||||
|
|
||||||
public boolean setDifficulty(String difficulty) {
|
public boolean setDifficulty(String difficulty) {
|
||||||
try {
|
try {
|
||||||
World.Difficulty worlddiff = World.Difficulty.valueOf(difficulty);
|
World.Difficulty worlddiff = World.Difficulty.valueOf(difficulty.toUpperCase());
|
||||||
this.getCBWorld().setDifficulty(worlddiff);
|
this.getCBWorld().setDifficulty(worlddiff);
|
||||||
return true;
|
return true;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
@ -204,6 +204,7 @@ public class MultiverseCore extends JavaPlugin implements LoggablePlugin {
|
|||||||
pm.registerEvent(Event.Type.PLAYER_RESPAWN, this.playerListener, Priority.Low, this); // Let plugins which specialize in (re)spawning carry more weight.
|
pm.registerEvent(Event.Type.PLAYER_RESPAWN, this.playerListener, Priority.Low, this); // Let plugins which specialize in (re)spawning carry more weight.
|
||||||
pm.registerEvent(Event.Type.PLAYER_CHAT, this.playerListener, Priority.Normal, this); // To prepend the world name
|
pm.registerEvent(Event.Type.PLAYER_CHAT, this.playerListener, Priority.Normal, this); // To prepend the world name
|
||||||
pm.registerEvent(Event.Type.PLAYER_PORTAL, this.playerListener, Priority.Monitor, this); // To switch gamemode
|
pm.registerEvent(Event.Type.PLAYER_PORTAL, this.playerListener, Priority.Monitor, this); // To switch gamemode
|
||||||
|
pm.registerEvent(Event.Type.PLAYER_CHANGED_WORLD, this.playerListener, Priority.Monitor, this); // To switch gamemode
|
||||||
|
|
||||||
pm.registerEvent(Event.Type.ENTITY_REGAIN_HEALTH, this.entityListener, Priority.Normal, this);
|
pm.registerEvent(Event.Type.ENTITY_REGAIN_HEALTH, this.entityListener, Priority.Normal, this);
|
||||||
pm.registerEvent(Event.Type.ENTITY_DAMAGE, this.entityListener, Priority.Normal, this); // To Allow/Disallow fake PVP
|
pm.registerEvent(Event.Type.ENTITY_DAMAGE, this.entityListener, Priority.Normal, this); // To Allow/Disallow fake PVP
|
||||||
|
@ -63,10 +63,6 @@ public class MVPlayerListener extends PlayerListener {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (event.isBedSpawn() && this.plugin.getConfig().getBoolean("bedrespawn", true)) {
|
if (event.isBedSpawn() && this.plugin.getConfig().getBoolean("bedrespawn", true)) {
|
||||||
// Handle the Players GameMode setting for the new world.
|
|
||||||
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");
|
this.plugin.log(Level.FINE, "Spawning " + event.getPlayer().getName() + " at their bed");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -90,11 +86,6 @@ public class MVPlayerListener extends PlayerListener {
|
|||||||
MVRespawnEvent respawnEvent = new MVRespawnEvent(respawnLocation, event.getPlayer(), "compatability");
|
MVRespawnEvent respawnEvent = new MVRespawnEvent(respawnLocation, event.getPlayer(), "compatability");
|
||||||
this.plugin.getServer().getPluginManager().callEvent(respawnEvent);
|
this.plugin.getServer().getPluginManager().callEvent(respawnEvent);
|
||||||
event.setRespawnLocation(respawnEvent.getPlayersRespawnLocation());
|
event.setRespawnLocation(respawnEvent.getPlayersRespawnLocation());
|
||||||
|
|
||||||
// Handle the Players GameMode setting for the new world.
|
|
||||||
if (this.plugin.getConfig().getBoolean("enforcegamemodes", true)) {
|
|
||||||
this.handleGameMode(event.getPlayer(), respawnEvent.getPlayersRespawnLocation().getWorld());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private Location getMostAccurateRespawnLocation(World w) {
|
private Location getMostAccurateRespawnLocation(World w) {
|
||||||
@ -119,6 +110,14 @@ public class MVPlayerListener extends PlayerListener {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onPlayerChangedWorld(PlayerChangedWorldEvent event) {
|
||||||
|
// Handle the Players GameMode setting for the new world.
|
||||||
|
if (this.plugin.getConfig().getBoolean("enforcegamemodes", true)) {
|
||||||
|
this.handleGameMode(event.getPlayer(), event.getPlayer().getWorld());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onPlayerQuit(PlayerQuitEvent event) {
|
public void onPlayerQuit(PlayerQuitEvent event) {
|
||||||
this.plugin.removePlayerSession(event.getPlayer());
|
this.plugin.removePlayerSession(event.getPlayer());
|
||||||
@ -129,10 +128,6 @@ public class MVPlayerListener extends PlayerListener {
|
|||||||
if (event.isCancelled()) {
|
if (event.isCancelled()) {
|
||||||
return;
|
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 fromWorld = this.worldManager.getMVWorld(event.getFrom().getWorld().getName());
|
||||||
MVWorld toWorld = this.worldManager.getMVWorld(event.getTo().getWorld().getName());
|
MVWorld toWorld = this.worldManager.getMVWorld(event.getTo().getWorld().getName());
|
||||||
event.setCancelled(checkWorldPermissions(fromWorld, toWorld, event.getPlayer()));
|
event.setCancelled(checkWorldPermissions(fromWorld, toWorld, event.getPlayer()));
|
||||||
@ -144,10 +139,6 @@ public class MVPlayerListener extends PlayerListener {
|
|||||||
if (event.isCancelled() || event.getTo() == null || event.getFrom() == null) {
|
if (event.isCancelled() || event.getTo() == null || event.getFrom() == null) {
|
||||||
return;
|
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 fromWorld = this.worldManager.getMVWorld(event.getFrom().getWorld().getName());
|
||||||
MVWorld toWorld = this.worldManager.getMVWorld(event.getTo().getWorld().getName());
|
MVWorld toWorld = this.worldManager.getMVWorld(event.getTo().getWorld().getName());
|
||||||
event.setCancelled(checkWorldPermissions(fromWorld, toWorld, event.getPlayer()));
|
event.setCancelled(checkWorldPermissions(fromWorld, toWorld, event.getPlayer()));
|
||||||
|
Loading…
Reference in New Issue
Block a user