Added config option for setting whether or not to use async chat. (Default true (uses async))
This commit is contained in:
parent
319a701a16
commit
9274570fa4
|
@ -60,7 +60,10 @@ import com.onarandombox.MultiverseCore.destination.PlayerDestination;
|
||||||
import com.onarandombox.MultiverseCore.destination.WorldDestination;
|
import com.onarandombox.MultiverseCore.destination.WorldDestination;
|
||||||
import com.onarandombox.MultiverseCore.event.MVVersionEvent;
|
import com.onarandombox.MultiverseCore.event.MVVersionEvent;
|
||||||
import com.onarandombox.MultiverseCore.exceptions.PropertyDoesNotExistException;
|
import com.onarandombox.MultiverseCore.exceptions.PropertyDoesNotExistException;
|
||||||
|
import com.onarandombox.MultiverseCore.listeners.MVAsyncPlayerChatListener;
|
||||||
|
import com.onarandombox.MultiverseCore.listeners.MVChatListener;
|
||||||
import com.onarandombox.MultiverseCore.listeners.MVEntityListener;
|
import com.onarandombox.MultiverseCore.listeners.MVEntityListener;
|
||||||
|
import com.onarandombox.MultiverseCore.listeners.MVPlayerChatListener;
|
||||||
import com.onarandombox.MultiverseCore.listeners.MVPlayerListener;
|
import com.onarandombox.MultiverseCore.listeners.MVPlayerListener;
|
||||||
import com.onarandombox.MultiverseCore.listeners.MVPluginListener;
|
import com.onarandombox.MultiverseCore.listeners.MVPluginListener;
|
||||||
import com.onarandombox.MultiverseCore.listeners.MVPortalListener;
|
import com.onarandombox.MultiverseCore.listeners.MVPortalListener;
|
||||||
|
@ -199,6 +202,7 @@ public class MultiverseCore extends JavaPlugin implements MVPlugin, Core {
|
||||||
private final MVPluginListener pluginListener = new MVPluginListener(this);
|
private final MVPluginListener pluginListener = new MVPluginListener(this);
|
||||||
private final MVWeatherListener weatherListener = new MVWeatherListener(this);
|
private final MVWeatherListener weatherListener = new MVWeatherListener(this);
|
||||||
private final MVPortalListener portalListener = new MVPortalListener(this);
|
private final MVPortalListener portalListener = new MVPortalListener(this);
|
||||||
|
private MVChatListener chatListener;
|
||||||
|
|
||||||
// HashMap to contain information relating to the Players.
|
// HashMap to contain information relating to the Players.
|
||||||
private HashMap<String, MVPlayerSession> playerSessions;
|
private HashMap<String, MVPlayerSession> playerSessions;
|
||||||
|
@ -305,6 +309,13 @@ public class MultiverseCore extends JavaPlugin implements MVPlugin, Core {
|
||||||
// A test that had no worlds loaded was being run. This should never happen in production
|
// A test that had no worlds loaded was being run. This should never happen in production
|
||||||
}
|
}
|
||||||
this.saveMVConfig();
|
this.saveMVConfig();
|
||||||
|
// Register async or sync player chat according to config
|
||||||
|
if (getMVConfig().getUseAsyncChat()) {
|
||||||
|
this.chatListener = new MVAsyncPlayerChatListener(this, this.playerListener);
|
||||||
|
} else {
|
||||||
|
this.chatListener = new MVPlayerChatListener(this, this.playerListener);
|
||||||
|
}
|
||||||
|
getServer().getPluginManager().registerEvents(this.chatListener, this);
|
||||||
/*
|
/*
|
||||||
// Check to see if spout was already loaded (most likely):
|
// Check to see if spout was already loaded (most likely):
|
||||||
if (this.getServer().getPluginManager().getPlugin("Spout") != null) {
|
if (this.getServer().getPluginManager().getPlugin("Spout") != null) {
|
||||||
|
@ -1085,6 +1096,15 @@ public class MultiverseCore extends JavaPlugin implements MVPlugin, Core {
|
||||||
return this.playerListener;
|
return this.playerListener;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the {@link MVChatListener}.
|
||||||
|
*
|
||||||
|
* @return The {@link MVChatListener}.
|
||||||
|
*/
|
||||||
|
public MVChatListener getChatListener() {
|
||||||
|
return this.chatListener;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the {@link MVEntityListener}.
|
* Gets the {@link MVEntityListener}.
|
||||||
*
|
*
|
||||||
|
|
|
@ -47,6 +47,8 @@ public class MultiverseCoreConfiguration extends SerializationConfig implements
|
||||||
@Property
|
@Property
|
||||||
private boolean prefixchat;
|
private boolean prefixchat;
|
||||||
@Property
|
@Property
|
||||||
|
private boolean useasyncchat;
|
||||||
|
@Property
|
||||||
private boolean teleportintercept;
|
private boolean teleportintercept;
|
||||||
@Property
|
@Property
|
||||||
private boolean firstspawnoverride;
|
private boolean firstspawnoverride;
|
||||||
|
@ -80,6 +82,7 @@ public class MultiverseCoreConfiguration extends SerializationConfig implements
|
||||||
protected void setDefaults() {
|
protected void setDefaults() {
|
||||||
// BEGIN CHECKSTYLE-SUPPRESSION: MagicNumberCheck
|
// BEGIN CHECKSTYLE-SUPPRESSION: MagicNumberCheck
|
||||||
enforceaccess = false;
|
enforceaccess = false;
|
||||||
|
useasyncchat = true;
|
||||||
prefixchat = true;
|
prefixchat = true;
|
||||||
teleportintercept = true;
|
teleportintercept = true;
|
||||||
firstspawnoverride = true;
|
firstspawnoverride = true;
|
||||||
|
@ -292,4 +295,14 @@ public class MultiverseCoreConfiguration extends SerializationConfig implements
|
||||||
public void setTeleportCooldown(int teleportCooldown) {
|
public void setTeleportCooldown(int teleportCooldown) {
|
||||||
this.teleportcooldown = teleportCooldown;
|
this.teleportcooldown = teleportCooldown;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setUseAsyncChat(boolean useAsyncChat) {
|
||||||
|
this.useasyncchat = useAsyncChat;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean getUseAsyncChat() {
|
||||||
|
return this.useasyncchat;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -133,4 +133,16 @@ public interface MultiverseCoreConfig extends ConfigurationSerializable {
|
||||||
* @return enforceAccess.
|
* @return enforceAccess.
|
||||||
*/
|
*/
|
||||||
boolean getEnforceAccess();
|
boolean getEnforceAccess();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets useasyncchat.
|
||||||
|
* @param useAsyncChat The new value.
|
||||||
|
*/
|
||||||
|
void setUseAsyncChat(boolean useAsyncChat);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets useasyncchat.
|
||||||
|
* @return useasyncchat.
|
||||||
|
*/
|
||||||
|
boolean getUseAsyncChat();
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,76 @@
|
||||||
|
/******************************************************************************
|
||||||
|
* Multiverse 2 Copyright (c) the Multiverse Team 2011. *
|
||||||
|
* Multiverse 2 is licensed under the BSD License. *
|
||||||
|
* For more information please check the README.md file included *
|
||||||
|
* with this project. *
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
|
package com.onarandombox.MultiverseCore.listeners;
|
||||||
|
|
||||||
|
import com.onarandombox.MultiverseCore.MultiverseCore;
|
||||||
|
import com.onarandombox.MultiverseCore.api.MVWorldManager;
|
||||||
|
import com.onarandombox.MultiverseCore.api.MultiverseWorld;
|
||||||
|
import org.bukkit.event.EventHandler;
|
||||||
|
import org.bukkit.event.player.AsyncPlayerChatEvent;
|
||||||
|
|
||||||
|
import java.util.logging.Level;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Multiverse's {@link org.bukkit.event.Listener} for players.
|
||||||
|
*/
|
||||||
|
public class MVAsyncPlayerChatListener implements MVChatListener<AsyncPlayerChatEvent> {
|
||||||
|
|
||||||
|
private final MultiverseCore plugin;
|
||||||
|
private final MVWorldManager worldManager;
|
||||||
|
private final MVPlayerListener playerListener;
|
||||||
|
|
||||||
|
public MVAsyncPlayerChatListener(MultiverseCore plugin, MVPlayerListener playerListener) {
|
||||||
|
this.plugin = plugin;
|
||||||
|
this.worldManager = plugin.getMVWorldManager();
|
||||||
|
this.playerListener = playerListener;
|
||||||
|
plugin.log(Level.FINE, "Registered AsyncPlayerChatEvent listener.");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This method is called when a player wants to chat.
|
||||||
|
* @param event The Event that was fired.
|
||||||
|
*/
|
||||||
|
@EventHandler
|
||||||
|
public void playerChat(AsyncPlayerChatEvent event) {
|
||||||
|
if (event.isCancelled()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// Check whether the Server is set to prefix the chat with the World name.
|
||||||
|
// If not we do nothing, if so we need to check if the World has an Alias.
|
||||||
|
if (plugin.getMVConfig().getPrefixChat()) {
|
||||||
|
String world;
|
||||||
|
Thread thread = Thread.currentThread();
|
||||||
|
if (playerListener.worldsLock.isLocked()) {
|
||||||
|
plugin.log(Level.FINEST, "worldsLock is locked when attempting to handle player chat on thread: " + thread);
|
||||||
|
}
|
||||||
|
playerListener.worldsLock.lock();
|
||||||
|
try {
|
||||||
|
plugin.log(Level.FINEST, "Handling player chat on thread: " + thread);
|
||||||
|
world = playerListener.playerWorld.get(event.getPlayer().getName());
|
||||||
|
if (world == null) {
|
||||||
|
world = event.getPlayer().getWorld().getName();
|
||||||
|
playerListener.playerWorld.put(event.getPlayer().getName(), world);
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
playerListener.worldsLock.unlock();
|
||||||
|
}
|
||||||
|
String prefix = "";
|
||||||
|
// If we're not a MV world, don't do anything
|
||||||
|
if (!this.worldManager.isMVWorld(world)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
MultiverseWorld mvworld = this.worldManager.getMVWorld(world);
|
||||||
|
if (mvworld.isHidden()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
prefix = mvworld.getColoredWorldString();
|
||||||
|
String format = event.getFormat();
|
||||||
|
event.setFormat("[" + prefix + "]" + format);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
package com.onarandombox.MultiverseCore.listeners;
|
||||||
|
|
||||||
|
import org.bukkit.event.Event;
|
||||||
|
import org.bukkit.event.EventHandler;
|
||||||
|
import org.bukkit.event.Listener;
|
||||||
|
|
||||||
|
public interface MVChatListener<E extends Event> extends Listener {
|
||||||
|
|
||||||
|
@EventHandler
|
||||||
|
public void playerChat(E event);
|
||||||
|
}
|
|
@ -0,0 +1,76 @@
|
||||||
|
/******************************************************************************
|
||||||
|
* Multiverse 2 Copyright (c) the Multiverse Team 2011. *
|
||||||
|
* Multiverse 2 is licensed under the BSD License. *
|
||||||
|
* For more information please check the README.md file included *
|
||||||
|
* with this project. *
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
|
package com.onarandombox.MultiverseCore.listeners;
|
||||||
|
|
||||||
|
import com.onarandombox.MultiverseCore.MultiverseCore;
|
||||||
|
import com.onarandombox.MultiverseCore.api.MVWorldManager;
|
||||||
|
import com.onarandombox.MultiverseCore.api.MultiverseWorld;
|
||||||
|
import org.bukkit.event.EventHandler;
|
||||||
|
import org.bukkit.event.player.PlayerChatEvent;
|
||||||
|
|
||||||
|
import java.util.logging.Level;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Multiverse's {@link org.bukkit.event.Listener} for players.
|
||||||
|
*/
|
||||||
|
public class MVPlayerChatListener implements MVChatListener<PlayerChatEvent> {
|
||||||
|
|
||||||
|
private final MultiverseCore plugin;
|
||||||
|
private final MVWorldManager worldManager;
|
||||||
|
private final MVPlayerListener playerListener;
|
||||||
|
|
||||||
|
public MVPlayerChatListener(MultiverseCore plugin, MVPlayerListener playerListener) {
|
||||||
|
this.plugin = plugin;
|
||||||
|
this.worldManager = plugin.getMVWorldManager();
|
||||||
|
this.playerListener = playerListener;
|
||||||
|
plugin.log(Level.FINE, "Registered PlayerChatEvent listener.");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This method is called when a player wants to chat.
|
||||||
|
* @param event The Event that was fired.
|
||||||
|
*/
|
||||||
|
@EventHandler
|
||||||
|
public void playerChat(PlayerChatEvent event) {
|
||||||
|
if (event.isCancelled()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// Check whether the Server is set to prefix the chat with the World name.
|
||||||
|
// If not we do nothing, if so we need to check if the World has an Alias.
|
||||||
|
if (plugin.getMVConfig().getPrefixChat()) {
|
||||||
|
String world;
|
||||||
|
Thread thread = Thread.currentThread();
|
||||||
|
if (playerListener.worldsLock.isLocked()) {
|
||||||
|
plugin.log(Level.FINEST, "worldsLock is locked when attempting to handle player chat on thread: " + thread);
|
||||||
|
}
|
||||||
|
playerListener.worldsLock.lock();
|
||||||
|
try {
|
||||||
|
plugin.log(Level.FINEST, "Handling player chat on thread: " + thread);
|
||||||
|
world = playerListener.playerWorld.get(event.getPlayer().getName());
|
||||||
|
if (world == null) {
|
||||||
|
world = event.getPlayer().getWorld().getName();
|
||||||
|
playerListener.playerWorld.put(event.getPlayer().getName(), world);
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
playerListener.worldsLock.unlock();
|
||||||
|
}
|
||||||
|
String prefix = "";
|
||||||
|
// If we're not a MV world, don't do anything
|
||||||
|
if (!this.worldManager.isMVWorld(world)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
MultiverseWorld mvworld = this.worldManager.getMVWorld(world);
|
||||||
|
if (mvworld.isHidden()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
prefix = mvworld.getColoredWorldString();
|
||||||
|
String format = event.getFormat();
|
||||||
|
event.setFormat("[" + prefix + "]" + format);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -20,7 +20,6 @@ import org.bukkit.entity.Player;
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.EventPriority;
|
import org.bukkit.event.EventPriority;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.player.AsyncPlayerChatEvent;
|
|
||||||
import org.bukkit.event.player.PlayerChangedWorldEvent;
|
import org.bukkit.event.player.PlayerChangedWorldEvent;
|
||||||
import org.bukkit.event.player.PlayerJoinEvent;
|
import org.bukkit.event.player.PlayerJoinEvent;
|
||||||
import org.bukkit.event.player.PlayerPortalEvent;
|
import org.bukkit.event.player.PlayerPortalEvent;
|
||||||
|
@ -37,60 +36,18 @@ import java.util.logging.Level;
|
||||||
* Multiverse's {@link Listener} for players.
|
* Multiverse's {@link Listener} for players.
|
||||||
*/
|
*/
|
||||||
public class MVPlayerListener implements Listener {
|
public class MVPlayerListener implements Listener {
|
||||||
private MultiverseCore plugin;
|
private final MultiverseCore plugin;
|
||||||
private MVWorldManager worldManager;
|
private final MVWorldManager worldManager;
|
||||||
private PermissionTools pt;
|
private final PermissionTools pt;
|
||||||
|
|
||||||
private final ReentrantLock worldsLock = new ReentrantLock();
|
final ReentrantLock worldsLock = new ReentrantLock();
|
||||||
private final Map<String, String> playerWorld = new HashMap<String, String>();
|
final Map<String, String> playerWorld = new HashMap<String, String>();
|
||||||
|
|
||||||
public MVPlayerListener(MultiverseCore plugin) {
|
public MVPlayerListener(MultiverseCore plugin) {
|
||||||
this.plugin = plugin;
|
this.plugin = plugin;
|
||||||
worldManager = plugin.getMVWorldManager();
|
worldManager = plugin.getMVWorldManager();
|
||||||
pt = new PermissionTools(plugin);
|
pt = new PermissionTools(plugin);
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* This method is called when a player wants to chat.
|
|
||||||
* @param event The Event that was fired.
|
|
||||||
*/
|
|
||||||
@EventHandler
|
|
||||||
public void playerChat(AsyncPlayerChatEvent event) {
|
|
||||||
if (event.isCancelled()) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// Check whether the Server is set to prefix the chat with the World name.
|
|
||||||
// If not we do nothing, if so we need to check if the World has an Alias.
|
|
||||||
if (plugin.getMVConfig().getPrefixChat()) {
|
|
||||||
String world;
|
|
||||||
Thread thread = Thread.currentThread();
|
|
||||||
if (worldsLock.isLocked()) {
|
|
||||||
plugin.log(Level.FINEST, "worldsLock is locked when attempting to handle player chat on thread: " + thread);
|
|
||||||
}
|
|
||||||
worldsLock.lock();
|
|
||||||
try {
|
|
||||||
plugin.log(Level.FINEST, "Handling player chat on thread: " + thread);
|
|
||||||
world = playerWorld.get(event.getPlayer().getName());
|
|
||||||
if (world == null) {
|
|
||||||
world = event.getPlayer().getWorld().getName();
|
|
||||||
playerWorld.put(event.getPlayer().getName(), world);
|
|
||||||
}
|
|
||||||
} finally {
|
|
||||||
worldsLock.unlock();
|
|
||||||
}
|
|
||||||
String prefix = "";
|
|
||||||
// If we're not a MV world, don't do anything
|
|
||||||
if (!this.worldManager.isMVWorld(world)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
MultiverseWorld mvworld = this.worldManager.getMVWorld(world);
|
|
||||||
if (mvworld.isHidden()) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
prefix = mvworld.getColoredWorldString();
|
|
||||||
String format = event.getFormat();
|
|
||||||
event.setFormat("[" + prefix + "]" + format);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method is called when a player respawns.
|
* This method is called when a player respawns.
|
||||||
|
|
|
@ -7,12 +7,13 @@
|
||||||
|
|
||||||
package com.onarandombox.MultiverseCore.test;
|
package com.onarandombox.MultiverseCore.test;
|
||||||
|
|
||||||
import static org.junit.Assert.*;
|
import com.onarandombox.MultiverseCore.MVWorld;
|
||||||
import static org.mockito.Matchers.any;
|
import com.onarandombox.MultiverseCore.MultiverseCore;
|
||||||
import static org.mockito.Matchers.anyString;
|
import com.onarandombox.MultiverseCore.api.MVWorldManager;
|
||||||
import static org.mockito.Mockito.*;
|
import com.onarandombox.MultiverseCore.api.MultiverseWorld;
|
||||||
|
import com.onarandombox.MultiverseCore.configuration.SpawnLocation;
|
||||||
import java.io.File;
|
import com.onarandombox.MultiverseCore.test.utils.TestInstanceCreator;
|
||||||
|
import com.onarandombox.MultiverseCore.utils.WorldManager;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.Difficulty;
|
import org.bukkit.Difficulty;
|
||||||
|
@ -28,7 +29,6 @@ import org.bukkit.event.entity.EntityRegainHealthEvent;
|
||||||
import org.bukkit.event.entity.EntityRegainHealthEvent.RegainReason;
|
import org.bukkit.event.entity.EntityRegainHealthEvent.RegainReason;
|
||||||
import org.bukkit.event.entity.FoodLevelChangeEvent;
|
import org.bukkit.event.entity.FoodLevelChangeEvent;
|
||||||
import org.bukkit.event.player.AsyncPlayerChatEvent;
|
import org.bukkit.event.player.AsyncPlayerChatEvent;
|
||||||
import org.bukkit.event.player.PlayerChatEvent;
|
|
||||||
import org.bukkit.event.player.PlayerJoinEvent;
|
import org.bukkit.event.player.PlayerJoinEvent;
|
||||||
import org.bukkit.event.player.PlayerRespawnEvent;
|
import org.bukkit.event.player.PlayerRespawnEvent;
|
||||||
import org.bukkit.event.weather.ThunderChangeEvent;
|
import org.bukkit.event.weather.ThunderChangeEvent;
|
||||||
|
@ -45,13 +45,12 @@ import org.powermock.api.mockito.PowerMockito;
|
||||||
import org.powermock.core.classloader.annotations.PrepareForTest;
|
import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||||
import org.powermock.modules.junit4.PowerMockRunner;
|
import org.powermock.modules.junit4.PowerMockRunner;
|
||||||
|
|
||||||
import com.onarandombox.MultiverseCore.MVWorld;
|
import java.io.File;
|
||||||
import com.onarandombox.MultiverseCore.MultiverseCore;
|
|
||||||
import com.onarandombox.MultiverseCore.api.MVWorldManager;
|
import static org.junit.Assert.*;
|
||||||
import com.onarandombox.MultiverseCore.api.MultiverseWorld;
|
import static org.mockito.Matchers.any;
|
||||||
import com.onarandombox.MultiverseCore.configuration.SpawnLocation;
|
import static org.mockito.Matchers.anyString;
|
||||||
import com.onarandombox.MultiverseCore.test.utils.TestInstanceCreator;
|
import static org.mockito.Mockito.*;
|
||||||
import com.onarandombox.MultiverseCore.utils.WorldManager;
|
|
||||||
|
|
||||||
@RunWith(PowerMockRunner.class)
|
@RunWith(PowerMockRunner.class)
|
||||||
@PrepareForTest({ PluginManager.class, MultiverseCore.class, Permission.class, Bukkit.class,
|
@PrepareForTest({ PluginManager.class, MultiverseCore.class, Permission.class, Bukkit.class,
|
||||||
|
@ -168,10 +167,10 @@ public class TestWorldProperties {
|
||||||
|
|
||||||
// call player chat event
|
// call player chat event
|
||||||
core.getMVConfig().setPrefixChat(true);
|
core.getMVConfig().setPrefixChat(true);
|
||||||
core.getPlayerListener().playerChat(playerChatEvent);
|
core.getChatListener().playerChat(playerChatEvent);
|
||||||
verify(playerChatEvent).setFormat("[" + mvWorld.getColoredWorldString() + "]" + "format");
|
verify(playerChatEvent).setFormat("[" + mvWorld.getColoredWorldString() + "]" + "format");
|
||||||
core.getMVConfig().setPrefixChat(false);
|
core.getMVConfig().setPrefixChat(false);
|
||||||
core.getPlayerListener().playerChat(playerChatEvent);
|
core.getChatListener().playerChat(playerChatEvent);
|
||||||
verify(playerChatEvent, times(1)).setFormat(anyString()); // only ONE TIME (not the 2nd time!)
|
verify(playerChatEvent, times(1)).setFormat(anyString()); // only ONE TIME (not the 2nd time!)
|
||||||
|
|
||||||
// call player join events
|
// call player join events
|
||||||
|
@ -262,15 +261,15 @@ public class TestWorldProperties {
|
||||||
|
|
||||||
// call player chat event
|
// call player chat event
|
||||||
core.getMVConfig().setPrefixChat(true);
|
core.getMVConfig().setPrefixChat(true);
|
||||||
core.getPlayerListener().playerChat(playerChatEvent);
|
core.getChatListener().playerChat(playerChatEvent);
|
||||||
// never because it's hidden!
|
// never because it's hidden!
|
||||||
verify(playerChatEvent, never()).setFormat(
|
verify(playerChatEvent, never()).setFormat(
|
||||||
"[" + mvWorld.getColoredWorldString() + "]" + "format");
|
"[" + mvWorld.getColoredWorldString() + "]" + "format");
|
||||||
mvWorld.setHidden(false);
|
mvWorld.setHidden(false);
|
||||||
core.getPlayerListener().playerChat(playerChatEvent);
|
core.getChatListener().playerChat(playerChatEvent);
|
||||||
verify(playerChatEvent).setFormat("[" + mvWorld.getColoredWorldString() + "]" + "format");
|
verify(playerChatEvent).setFormat("[" + mvWorld.getColoredWorldString() + "]" + "format");
|
||||||
core.getMVConfig().setPrefixChat(false);
|
core.getMVConfig().setPrefixChat(false);
|
||||||
core.getPlayerListener().playerChat(playerChatEvent);
|
core.getChatListener().playerChat(playerChatEvent);
|
||||||
verify(playerChatEvent, times(1)).setFormat(anyString()); // only ONE TIME (not the 2nd time!)
|
verify(playerChatEvent, times(1)).setFormat(anyString()); // only ONE TIME (not the 2nd time!)
|
||||||
mvWorld.setHidden(true); // reset hidden-state
|
mvWorld.setHidden(true); // reset hidden-state
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue