mirror of
https://github.com/garbagemule/MobArena.git
synced 2025-03-10 05:39:26 +01:00
Revamp the announcements system.
This commit transforms the announcements system in the following way: - announcements.yml makes it easier to add missing nodes and remove obsolete ones. This way, users don't have to delete their previous announcements-file to get the new keys. - Color codes are supported in the fact that when an announcement message is "set()", the string value has all of its &-symbols translated. - No need for a defaults-file, because the enum is very easy to compile into a YAML file.
This commit is contained in:
parent
22723d883a
commit
ef9fd267c1
@ -1,7 +1,7 @@
|
||||
name: MobArena
|
||||
author: garbagemule
|
||||
main: com.garbagemule.MobArena.MobArena
|
||||
version: 0.95.5.18
|
||||
version: 0.95.5.19
|
||||
softdepend: [Multiverse-Core,Towny,Heroes,MagicSpells,Vault]
|
||||
commands:
|
||||
ma:
|
||||
|
@ -1,51 +0,0 @@
|
||||
ARENA_START=Let the slaughter begin!
|
||||
ARENA_END=Arena finished.
|
||||
ARENA_DOES_NOT_EXIST=That arena does not exist. Type /ma arenas for a list.
|
||||
JOIN_PLAYER_JOINED=
|
||||
JOIN_NOT_ENABLED=MobArena is not enabled.
|
||||
JOIN_IN_OTHER_ARENA=You are already in an arena! Leave that one first.
|
||||
JOIN_ARENA_NOT_ENABLED=This arena is not enabled.
|
||||
JOIN_ARENA_NOT_SETUP=This arena has not been set up yet.
|
||||
JOIN_ARENA_PERMISSION=You don't have permission to join this arena.
|
||||
JOIN_FEE_REQUIRED=Insufficient funds. Price: %
|
||||
JOIN_FEE_PAID=Price to join was: %
|
||||
JOIN_ARENA_IS_RUNNING=This arena is already in progress.
|
||||
JOIN_ALREADY_PLAYING=You are already playing!
|
||||
JOIN_ARG_NEEDED=You must specify an arena. Type /ma arenas for a list.
|
||||
JOIN_TOO_FAR=You are too far away from the arena to join/spectate.
|
||||
JOIN_EMPTY_INV=You must empty your inventory to join the arena.
|
||||
JOIN_PLAYER_LIMIT_REACHED=The player limit of this arena has been reached.
|
||||
JOIN_STORE_INV_FAIL=Failed to store inventory. Try again.
|
||||
LEAVE_PLAYER_LEFT=You left the arena. Thanks for playing!
|
||||
LEAVE_NOT_PLAYING=You are not in the arena.
|
||||
PLAYER_DIED=% died!
|
||||
SPEC_PLAYER_SPECTATE=Enjoy the show!
|
||||
SPEC_NOT_RUNNING=This arena isn't running.
|
||||
SPEC_ARG_NEEDED=You must specify an arena. Type /ma arenas for a list.
|
||||
SPEC_EMPTY_INV=Empty your inventory first!
|
||||
SPEC_ALREADY_PLAYING=Can't spectate when in the arena!
|
||||
NOT_READY_PLAYERS=Not ready: %
|
||||
FORCE_START_STARTED=Forced arena start.
|
||||
FORCE_START_RUNNING=Arena has already started.
|
||||
FORCE_START_NOT_READY=Can't force start, no players are ready.
|
||||
FORCE_END_ENDED=Forced arena end.
|
||||
FORCE_END_EMPTY=No one is in the arena.
|
||||
FORCE_END_IDLE=You weren't quick enough!
|
||||
REWARDS_GIVE=Here are all of your rewards!
|
||||
LOBBY_CLASS_PICKED=You have chosen % as your class!
|
||||
LOBBY_CLASS_RANDOM=You will get a random class on arena start.
|
||||
LOBBY_CLASS_PERMISSION=You don't have permission to use this class!
|
||||
LOBBY_PLAYER_READY=You have been flagged as ready!
|
||||
LOBBY_DROP_ITEM=No sharing before the arena starts!
|
||||
LOBBY_PICK_CLASS=You must first pick a class!
|
||||
LOBBY_RIGHT_CLICK=Punch the sign. Don't right-click.
|
||||
WARP_TO_ARENA=Can't warp to the arena during battle!
|
||||
WARP_FROM_ARENA=Warping not allowed in the arena!
|
||||
WAVE_DEFAULT=Get ready for wave #%!
|
||||
WAVE_SPECIAL=Get ready for wave #%! [SPECIAL]
|
||||
WAVE_REWARD=You just earned a reward: %
|
||||
MISC_LIST_ARENAS=Available arenas: %
|
||||
MISC_LIST_PLAYERS=Live players: %
|
||||
MISC_COMMAND_NOT_ALLOWED=You can't use that command in the arena!
|
||||
MISC_NO_ACCESS=You don't have access to this command.
|
||||
MISC_NONE=<none>
|
@ -248,14 +248,6 @@ public class ArenaImpl implements Arena
|
||||
return settings.getInt("max-join-distance");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Material getClassLogo(String classname) {
|
||||
ArenaClass arenaClass = classes.get(classname);
|
||||
if (arenaClass == null) return Material.STONE;
|
||||
|
||||
return arenaClass.getLogo();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ItemStack> getEntryFee() {
|
||||
return entryFee;
|
||||
@ -471,7 +463,7 @@ public class ArenaImpl implements Arena
|
||||
leaderboard.initialize();
|
||||
leaderboard.startTracking();
|
||||
|
||||
Messenger.tellAll(this, Msg.ARENA_START);
|
||||
Messenger.announce(this, Msg.ARENA_START);
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -508,10 +500,10 @@ public class ArenaImpl implements Arena
|
||||
// Announce and clean arena floor, etc.
|
||||
if (settings.getBoolean("global-end-announce", false)) {
|
||||
for (Player p : Bukkit.getOnlinePlayers()) {
|
||||
Messenger.tellPlayer(p, Msg.ARENA_END_GLOBAL, configName());
|
||||
Messenger.tell(p, Msg.ARENA_END_GLOBAL, configName());
|
||||
}
|
||||
} else {
|
||||
Messenger.tellAll(this, Msg.ARENA_END, true);
|
||||
Messenger.announce(this, Msg.ARENA_END);
|
||||
}
|
||||
cleanup();
|
||||
|
||||
@ -543,7 +535,7 @@ public class ArenaImpl implements Arena
|
||||
// Force leave.
|
||||
for (Player p : tmp) {
|
||||
playerLeave(p);
|
||||
Messenger.tellPlayer(p, Msg.LEAVE_NOT_READY);
|
||||
Messenger.tell(p, Msg.LEAVE_NOT_READY);
|
||||
}
|
||||
|
||||
startArena();
|
||||
@ -572,7 +564,7 @@ public class ArenaImpl implements Arena
|
||||
if (settings.getBoolean("global-first-join-announce", false)) {
|
||||
if (lobbyPlayers.isEmpty()) {
|
||||
for (Player q : Bukkit.getOnlinePlayers()) {
|
||||
Messenger.tellPlayer(q, Msg.ARENA_JOIN_GLOBAL, configName());
|
||||
Messenger.tell(q, Msg.ARENA_JOIN_GLOBAL, configName());
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -596,11 +588,11 @@ public class ArenaImpl implements Arena
|
||||
autoStartTimer.start();
|
||||
|
||||
// Notify player of joining
|
||||
Messenger.tellPlayer(p, Msg.JOIN_PLAYER_JOINED);
|
||||
Messenger.tell(p, Msg.JOIN_PLAYER_JOINED);
|
||||
|
||||
// Notify player of time left
|
||||
if (autoStartTimer.isRunning()) {
|
||||
Messenger.tellPlayer(p, Msg.ARENA_AUTO_START, "" + autoStartTimer.getRemaining());
|
||||
Messenger.tell(p, Msg.ARENA_AUTO_START, "" + autoStartTimer.getRemaining());
|
||||
}
|
||||
|
||||
return true;
|
||||
@ -614,7 +606,7 @@ public class ArenaImpl implements Arena
|
||||
int minPlayers = getMinPlayers();
|
||||
if (minPlayers > 0 && lobbyPlayers.size() < minPlayers)
|
||||
{
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_NOT_ENOUGH_PLAYERS, "" + minPlayers);
|
||||
Messenger.tell(p, Msg.LOBBY_NOT_ENOUGH_PLAYERS, "" + minPlayers);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -692,8 +684,8 @@ public class ArenaImpl implements Arena
|
||||
|
||||
if (settings.getBoolean("spectate-on-death", true)) {
|
||||
movePlayerToSpec(p);
|
||||
Messenger.tellPlayer(p, Msg.SPEC_FROM_ARENA);
|
||||
Messenger.tellPlayer(p, Msg.MISC_MA_LEAVE_REMINDER);
|
||||
Messenger.tell(p, Msg.SPEC_FROM_ARENA);
|
||||
Messenger.tell(p, Msg.MISC_MA_LEAVE_REMINDER);
|
||||
} else {
|
||||
restoreInvAndExp(p);
|
||||
movePlayerToEntry(p);
|
||||
@ -719,7 +711,7 @@ public class ArenaImpl implements Arena
|
||||
MAUtils.sitPets(p);
|
||||
movePlayerToSpec(p);
|
||||
|
||||
Messenger.tellPlayer(p, Msg.SPEC_PLAYER_SPECTATE);
|
||||
Messenger.tell(p, Msg.SPEC_PLAYER_SPECTATE);
|
||||
}
|
||||
|
||||
private void spawnPets() {
|
||||
@ -1101,7 +1093,7 @@ public class ArenaImpl implements Arena
|
||||
}
|
||||
|
||||
assignClass(p, className);
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_CLASS_PICKED, TextUtils.camelCase(className), getClassLogo(className));
|
||||
Messenger.tell(p, Msg.LOBBY_CLASS_PICKED, TextUtils.camelCase(className));
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -1335,7 +1327,7 @@ public class ArenaImpl implements Arena
|
||||
inv.removeItem(stack);
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(p, Msg.JOIN_FEE_PAID.toString(MAUtils.listToString(entryFee, plugin)));
|
||||
Messenger.tell(p, Msg.JOIN_FEE_PAID.format(MAUtils.listToString(entryFee, plugin)));
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -1361,25 +1353,25 @@ public class ArenaImpl implements Arena
|
||||
@Override
|
||||
public boolean canJoin(Player p) {
|
||||
if (!enabled)
|
||||
Messenger.tellPlayer(p, Msg.JOIN_ARENA_NOT_ENABLED);
|
||||
Messenger.tell(p, Msg.JOIN_ARENA_NOT_ENABLED);
|
||||
else if (!region.isSetup() || waveManager.getRecurrentWaves().isEmpty())
|
||||
Messenger.tellPlayer(p, Msg.JOIN_ARENA_NOT_SETUP);
|
||||
Messenger.tell(p, Msg.JOIN_ARENA_NOT_SETUP);
|
||||
else if (edit)
|
||||
Messenger.tellPlayer(p, Msg.JOIN_ARENA_EDIT_MODE);
|
||||
Messenger.tell(p, Msg.JOIN_ARENA_EDIT_MODE);
|
||||
else if (arenaPlayers.contains(p) || lobbyPlayers.contains(p))
|
||||
Messenger.tellPlayer(p, Msg.JOIN_ALREADY_PLAYING);
|
||||
Messenger.tell(p, Msg.JOIN_ALREADY_PLAYING);
|
||||
else if (running)
|
||||
Messenger.tellPlayer(p, Msg.JOIN_ARENA_IS_RUNNING);
|
||||
Messenger.tell(p, Msg.JOIN_ARENA_IS_RUNNING);
|
||||
else if (!plugin.has(p, "mobarena.arenas." + configName()))
|
||||
Messenger.tellPlayer(p, Msg.JOIN_ARENA_PERMISSION);
|
||||
Messenger.tell(p, Msg.JOIN_ARENA_PERMISSION);
|
||||
else if (getMaxPlayers() > 0 && lobbyPlayers.size() >= getMaxPlayers())
|
||||
Messenger.tellPlayer(p, Msg.JOIN_PLAYER_LIMIT_REACHED);
|
||||
Messenger.tell(p, Msg.JOIN_PLAYER_LIMIT_REACHED);
|
||||
else if (getJoinDistance() > 0 && !region.contains(p.getLocation(), getJoinDistance()))
|
||||
Messenger.tellPlayer(p, Msg.JOIN_TOO_FAR);
|
||||
Messenger.tell(p, Msg.JOIN_TOO_FAR);
|
||||
else if (settings.getBoolean("require-empty-inv-join", true) && !InventoryManager.hasEmptyInventory(p))
|
||||
Messenger.tellPlayer(p, Msg.JOIN_EMPTY_INV);
|
||||
Messenger.tell(p, Msg.JOIN_EMPTY_INV);
|
||||
else if (!canAfford(p))
|
||||
Messenger.tellPlayer(p, Msg.JOIN_FEE_REQUIRED, MAUtils.listToString(entryFee, plugin));
|
||||
Messenger.tell(p, Msg.JOIN_FEE_REQUIRED, MAUtils.listToString(entryFee, plugin));
|
||||
else return true;
|
||||
|
||||
return false;
|
||||
@ -1388,17 +1380,17 @@ public class ArenaImpl implements Arena
|
||||
@Override
|
||||
public boolean canSpec(Player p) {
|
||||
if (!enabled)
|
||||
Messenger.tellPlayer(p, Msg.JOIN_ARENA_NOT_ENABLED);
|
||||
Messenger.tell(p, Msg.JOIN_ARENA_NOT_ENABLED);
|
||||
else if (!region.isSetup())
|
||||
Messenger.tellPlayer(p, Msg.JOIN_ARENA_NOT_SETUP);
|
||||
Messenger.tell(p, Msg.JOIN_ARENA_NOT_SETUP);
|
||||
else if (edit)
|
||||
Messenger.tellPlayer(p, Msg.JOIN_ARENA_EDIT_MODE);
|
||||
Messenger.tell(p, Msg.JOIN_ARENA_EDIT_MODE);
|
||||
else if (arenaPlayers.contains(p) || lobbyPlayers.contains(p))
|
||||
Messenger.tellPlayer(p, Msg.SPEC_ALREADY_PLAYING);
|
||||
Messenger.tell(p, Msg.SPEC_ALREADY_PLAYING);
|
||||
else if (settings.getBoolean("require-empty-inv-spec", true) && !InventoryManager.hasEmptyInventory(p))
|
||||
Messenger.tellPlayer(p, Msg.SPEC_EMPTY_INV);
|
||||
Messenger.tell(p, Msg.SPEC_EMPTY_INV);
|
||||
else if (getJoinDistance() > 0 && !region.contains(p.getLocation(), getJoinDistance()))
|
||||
Messenger.tellPlayer(p, Msg.JOIN_TOO_FAR);
|
||||
Messenger.tell(p, Msg.JOIN_TOO_FAR);
|
||||
else return true;
|
||||
|
||||
return false;
|
||||
|
@ -1,6 +1,5 @@
|
||||
package com.garbagemule.MobArena;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashSet;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
@ -68,9 +67,6 @@ import org.bukkit.metadata.Metadatable;
|
||||
import org.bukkit.potion.PotionEffect;
|
||||
import org.bukkit.potion.PotionEffectType;
|
||||
|
||||
import com.garbagemule.MobArena.MAUtils;
|
||||
import com.garbagemule.MobArena.MobArena;
|
||||
import com.garbagemule.MobArena.Msg;
|
||||
import com.garbagemule.MobArena.framework.Arena;
|
||||
import com.garbagemule.MobArena.leaderboards.Leaderboard;
|
||||
import com.garbagemule.MobArena.listeners.MAGlobalListener.TeleportResponse;
|
||||
@ -310,7 +306,7 @@ public class ArenaListener
|
||||
arena.setLeaderboard(new Leaderboard(plugin, arena, event.getBlock().getLocation()));
|
||||
arena.getRegion().set(RegionPoint.LEADERBOARD, event.getBlock().getLocation());
|
||||
|
||||
Messenger.tellPlayer(event.getPlayer(), "Leaderboard made. Now set up the stat signs!");
|
||||
Messenger.tell(event.getPlayer(), "Leaderboard made. Now set up the stat signs!");
|
||||
}
|
||||
|
||||
public void onCreatureSpawn(CreatureSpawnEvent event) {
|
||||
@ -418,7 +414,7 @@ public class ArenaListener
|
||||
onMountDeath(event);
|
||||
}
|
||||
else if (monsters.removeGolem(event.getEntity())) {
|
||||
Messenger.tellAll(arena, Msg.GOLEM_DIED);
|
||||
Messenger.announce(arena, Msg.GOLEM_DIED);
|
||||
}
|
||||
}
|
||||
|
||||
@ -488,7 +484,7 @@ public class ArenaListener
|
||||
msg += MAUtils.toCamelCase(reward.getType().toString()) + ":" + reward.getAmount();
|
||||
}
|
||||
for (Player q : arena.getPlayersInArena()) {
|
||||
Messenger.tellPlayer(q, msg);
|
||||
Messenger.tell(q, msg);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -792,25 +788,25 @@ public class ArenaListener
|
||||
// If the player is active in the arena, only cancel if sharing is not allowed
|
||||
if (arena.inArena(p)) {
|
||||
if (!canShare) {
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_DROP_ITEM);
|
||||
Messenger.tell(p, Msg.LOBBY_DROP_ITEM);
|
||||
event.setCancelled(true);
|
||||
}
|
||||
}
|
||||
|
||||
// If the player is in the lobby, just cancel
|
||||
else if (arena.inLobby(p)) {
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_DROP_ITEM);
|
||||
Messenger.tell(p, Msg.LOBBY_DROP_ITEM);
|
||||
event.setCancelled(true);
|
||||
}
|
||||
|
||||
// Same if it's a spectator, but...
|
||||
else if (arena.inSpec(p)) {
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_DROP_ITEM);
|
||||
Messenger.tell(p, Msg.LOBBY_DROP_ITEM);
|
||||
event.setCancelled(true);
|
||||
|
||||
// If the spectator isn't in the region, force them to leave
|
||||
if (!region.contains(p.getLocation())) {
|
||||
Messenger.tellPlayer(p, Msg.MISC_MA_LEAVE_REMINDER);
|
||||
Messenger.tell(p, Msg.MISC_MA_LEAVE_REMINDER);
|
||||
arena.playerLeave(p);
|
||||
}
|
||||
}
|
||||
@ -821,7 +817,7 @@ public class ArenaListener
|
||||
* they are trying to drop items when not allowed
|
||||
*/
|
||||
else if (region.contains(p.getLocation())) {
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_DROP_ITEM);
|
||||
Messenger.tell(p, Msg.LOBBY_DROP_ITEM);
|
||||
event.setCancelled(true);
|
||||
}
|
||||
|
||||
@ -882,11 +878,11 @@ public class ArenaListener
|
||||
|
||||
private void handleReadyBlock(Player p) {
|
||||
if (arena.getArenaPlayer(p).getArenaClass() != null) {
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_PLAYER_READY);
|
||||
Messenger.tell(p, Msg.LOBBY_PLAYER_READY);
|
||||
arena.playerReady(p);
|
||||
}
|
||||
else {
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_PICK_CLASS);
|
||||
Messenger.tell(p, Msg.LOBBY_PICK_CLASS);
|
||||
}
|
||||
}
|
||||
|
||||
@ -899,7 +895,7 @@ public class ArenaListener
|
||||
|
||||
// Check for permission.
|
||||
if (!plugin.has(p, "mobarena.classes." + className) && !className.equals("random")) {
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_CLASS_PERMISSION);
|
||||
Messenger.tell(p, Msg.LOBBY_CLASS_PERMISSION);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -913,7 +909,7 @@ public class ArenaListener
|
||||
|
||||
// If the new class is full, inform the player.
|
||||
if (!classLimits.canPlayerJoinClass(newAC)) {
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_CLASS_FULL);
|
||||
Messenger.tell(p, Msg.LOBBY_CLASS_FULL);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -928,7 +924,7 @@ public class ArenaListener
|
||||
/*private boolean cansPlayerJoinClass(ArenaClass ac, Player p) {
|
||||
// If they can not join the class, deny them
|
||||
if (!classLimits.canPlayerJoinClass(ac)) {
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_CLASS_FULL);
|
||||
Messenger.tell(p, Msg.LOBBY_CLASS_FULL);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -985,17 +981,17 @@ public class ArenaListener
|
||||
}
|
||||
arena.assignClassGiveInv(p, className, contents);
|
||||
p.getInventory().setContents(contents);
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_CLASS_PICKED, TextUtils.camelCase(className), arena.getClassLogo(className));
|
||||
Messenger.tell(p, Msg.LOBBY_CLASS_PICKED, TextUtils.camelCase(className));
|
||||
return;
|
||||
}
|
||||
// Otherwise just fall through and use the items from the config-file
|
||||
}
|
||||
arena.assignClass(p, className);
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_CLASS_PICKED, TextUtils.camelCase(className), arena.getClassLogo(className));
|
||||
Messenger.tell(p, Msg.LOBBY_CLASS_PICKED, TextUtils.camelCase(className));
|
||||
}
|
||||
else {
|
||||
arena.addRandomPlayer(p);
|
||||
Messenger.tellPlayer(p, Msg.LOBBY_CLASS_RANDOM);
|
||||
Messenger.tell(p, Msg.LOBBY_CLASS_RANDOM);
|
||||
}
|
||||
}
|
||||
});
|
||||
@ -1065,7 +1061,7 @@ public class ArenaListener
|
||||
return TeleportResponse.ALLOW;
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(p, Msg.WARP_FROM_ARENA);
|
||||
Messenger.tell(p, Msg.WARP_FROM_ARENA);
|
||||
return TeleportResponse.REJECT;
|
||||
}
|
||||
else if (region.contains(to)) {
|
||||
@ -1078,7 +1074,7 @@ public class ArenaListener
|
||||
return TeleportResponse.ALLOW;
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(p, Msg.WARP_TO_ARENA);
|
||||
Messenger.tell(p, Msg.WARP_TO_ARENA);
|
||||
return TeleportResponse.REJECT;
|
||||
}
|
||||
|
||||
@ -1111,7 +1107,7 @@ public class ArenaListener
|
||||
|
||||
// Cancel the event regardless.
|
||||
event.setCancelled(true);
|
||||
Messenger.tellPlayer(p, Msg.MISC_COMMAND_NOT_ALLOWED);
|
||||
Messenger.tell(p, Msg.MISC_COMMAND_NOT_ALLOWED);
|
||||
}
|
||||
|
||||
public void onPlayerPreLogin(PlayerLoginEvent event) {
|
||||
|
@ -1,117 +0,0 @@
|
||||
package com.garbagemule.MobArena;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.BufferedWriter;
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileWriter;
|
||||
import java.io.InputStreamReader;
|
||||
|
||||
import com.garbagemule.MobArena.MobArena;
|
||||
import com.garbagemule.MobArena.Msg;
|
||||
|
||||
public class MAMessages
|
||||
{
|
||||
public static void init(MobArena plugin) {
|
||||
// Grab the file
|
||||
File msgFile = new File(plugin.getDataFolder(), "announcements.properties");
|
||||
|
||||
// If it couldn't be loaded for some reason
|
||||
if (!load(plugin, msgFile))
|
||||
return;
|
||||
|
||||
// Otherwise, start parsing!
|
||||
parseFile(plugin, msgFile);
|
||||
}
|
||||
|
||||
private static boolean load(MobArena plugin, File file) {
|
||||
// If the file exists, continue on!
|
||||
if (file.exists()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// Otherwise, create it, and populate it with the defaults.
|
||||
try {
|
||||
file.createNewFile();
|
||||
BufferedWriter bw = new BufferedWriter(new FileWriter(file));
|
||||
|
||||
for (Msg m : Msg.values()) {
|
||||
if (m.hasSpoutMsg()) {
|
||||
bw.write(m.name() + "=" + m + "|" + m.toSpoutString());
|
||||
}
|
||||
else {
|
||||
bw.write(m.name() + "=" + m);
|
||||
}
|
||||
bw.newLine();
|
||||
}
|
||||
bw.close();
|
||||
|
||||
return true;
|
||||
}
|
||||
catch (Exception e) {
|
||||
Messenger.warning("Couldn't initialize announcements-file. Using defaults.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private static void parseFile(MobArena plugin, File file) {
|
||||
try {
|
||||
FileInputStream fis = new FileInputStream(file);
|
||||
InputStreamReader isr = new InputStreamReader(fis, "UTF-8");
|
||||
BufferedReader br = new BufferedReader(isr);
|
||||
|
||||
// Check for BOM character.
|
||||
br.mark(1);
|
||||
int bom = br.read();
|
||||
if (bom != 65279)
|
||||
br.reset();
|
||||
|
||||
String s;
|
||||
while ((s = br.readLine()) != null)
|
||||
process(plugin, s);
|
||||
|
||||
br.close();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
Messenger.warning("Problem with announcements-file. Using defaults.");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Helper-method for parsing the strings from the
|
||||
* announcements-file.
|
||||
*/
|
||||
private static void process(MobArena plugin, String s) {
|
||||
// If the line ends with = or |, just add a space
|
||||
if (s.endsWith("=") || s.endsWith("|")) {
|
||||
s += " ";
|
||||
}
|
||||
|
||||
// Split the string by the equals-sign.
|
||||
String[] split = s.split("=");
|
||||
if (split.length != 2) {
|
||||
Messenger.warning("Couldn't parse \"" + s + "\". Check announcements-file.");
|
||||
return;
|
||||
}
|
||||
|
||||
// Split the value by the pipe-sign.
|
||||
String[] vals = split[1].split("\\|");
|
||||
|
||||
// For simplicity...
|
||||
String key = split[0];
|
||||
String val = vals.length == 2 ? vals[0] : split[1];
|
||||
String spoutVal = vals.length == 2 ? vals[1] : null;
|
||||
|
||||
try {
|
||||
Msg msg = Msg.valueOf(key);
|
||||
msg.set(val);
|
||||
msg.setSpout(spoutVal);
|
||||
}
|
||||
catch (Exception e) {
|
||||
Messenger.warning(key + " is not a valid key. Check announcements-file.");
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
@ -9,14 +9,9 @@ import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.entity.Creature;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import com.garbagemule.MobArena.ArenaPlayer;
|
||||
import com.garbagemule.MobArena.MAUtils;
|
||||
import com.garbagemule.MobArena.MobArena;
|
||||
import com.garbagemule.MobArena.Msg;
|
||||
import com.garbagemule.MobArena.events.NewWaveEvent;
|
||||
import com.garbagemule.MobArena.framework.Arena;
|
||||
import com.garbagemule.MobArena.region.ArenaRegion;
|
||||
@ -274,7 +269,7 @@ public class MASpawnThread implements Runnable
|
||||
continue;
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(p, "Leaving so soon?");
|
||||
Messenger.tell(p, "Leaving so soon?");
|
||||
p.getInventory().clear();
|
||||
arena.playerLeave(p);
|
||||
}
|
||||
@ -322,19 +317,19 @@ public class MASpawnThread implements Runnable
|
||||
rewardManager.addReward(p, reward);
|
||||
|
||||
if (reward == null) {
|
||||
Messenger.tellPlayer(p, "ERROR! Problem with rewards. Notify server host!");
|
||||
Messenger.tell(p, "ERROR! Problem with rewards. Notify server host!");
|
||||
Messenger.warning("Could not add null reward. Please check the config-file!");
|
||||
}
|
||||
else if (reward.getTypeId() == MobArena.ECONOMY_MONEY_ID) {
|
||||
if (plugin.giveMoney(p, reward)) { // Money already awarded here, not needed at end of match as well
|
||||
Messenger.tellPlayer(p, Msg.WAVE_REWARD, plugin.economyFormat(reward));
|
||||
Messenger.tell(p, Msg.WAVE_REWARD, plugin.economyFormat(reward));
|
||||
}
|
||||
else {
|
||||
Messenger.warning("Tried to add money, but no economy plugin detected!");
|
||||
}
|
||||
}
|
||||
else {
|
||||
Messenger.tellPlayer(p, Msg.WAVE_REWARD, MAUtils.toCamelCase(reward.getType().toString()) + ":" + reward.getAmount(), reward.getType());
|
||||
Messenger.tell(p, Msg.WAVE_REWARD, MAUtils.toCamelCase(reward.getType().toString()) + ":" + reward.getAmount());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -26,16 +26,12 @@ import org.bukkit.entity.Wolf;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
import com.garbagemule.MobArena.MAUtils;
|
||||
import com.garbagemule.MobArena.MobArena;
|
||||
import com.garbagemule.MobArena.Msg;
|
||||
import com.garbagemule.MobArena.framework.Arena;
|
||||
import com.garbagemule.MobArena.framework.ArenaMaster;
|
||||
import com.garbagemule.MobArena.region.ArenaRegion;
|
||||
import com.garbagemule.MobArena.util.EntityPosition;
|
||||
import com.garbagemule.MobArena.util.ItemParser;
|
||||
import com.garbagemule.MobArena.util.TextUtils;
|
||||
import com.garbagemule.MobArena.util.config.ConfigUtils;
|
||||
|
||||
public class MAUtils
|
||||
{
|
||||
@ -59,7 +55,7 @@ public class MAUtils
|
||||
//String arenaPath = "arenas." + arena + ".rewards.waves.";
|
||||
Map<Integer,List<ItemStack>> result = new HashMap<Integer,List<ItemStack>>();
|
||||
|
||||
String typePath = "rewards." + type;
|
||||
String typePath = "rewards.waves." + type;
|
||||
if (!config.contains(typePath)) return result;
|
||||
|
||||
//Set<String> waves = config.getKeys(arenaPath + type);
|
||||
@ -147,7 +143,7 @@ public class MAUtils
|
||||
if (!arena.getWorld().equals(p.getWorld())) {
|
||||
Messenger.info("Player '" + p.getName() + "' is not in the right world. Kicking...");
|
||||
p.kickPlayer("[MobArena] Cheater! (Warped out of the arena world.)");
|
||||
Messenger.tellPlayer(p, "You warped out of the arena world.");
|
||||
Messenger.tell(p, "You warped out of the arena world.");
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -5,7 +5,6 @@ import java.util.List;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
@ -19,51 +18,41 @@ public class Messenger
|
||||
|
||||
private Messenger() {}
|
||||
|
||||
public static boolean tellPlayer(CommandSender p, String msg) {
|
||||
public static boolean tell(CommandSender p, String msg) {
|
||||
// If the input sender is null or the string is empty, return.
|
||||
if (p == null || msg.equals(" "))
|
||||
if (p == null || msg.equals(" ")) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Otherwise, send the message with the [MobArena] tag.
|
||||
p.sendMessage(ChatColor.GREEN + "[MobArena] " + ChatColor.WHITE + msg);
|
||||
p.sendMessage(ChatColor.GREEN + "[MobArena] " + ChatColor.RESET + msg);
|
||||
return true;
|
||||
}
|
||||
|
||||
public static boolean tellPlayer(CommandSender p, Msg msg, String s, boolean spout, Material logo) {
|
||||
return tellPlayer(p, msg.toString(s));
|
||||
public static boolean tell(CommandSender p, Msg msg, String s) {
|
||||
return tell(p, msg.format(s));
|
||||
}
|
||||
|
||||
public static boolean tellPlayer(CommandSender p, Msg msg, String s, Material logo) {
|
||||
return tellPlayer(p, msg.toString(s));
|
||||
public static boolean tell(CommandSender p, Msg msg) {
|
||||
return tell(p, msg.toString());
|
||||
}
|
||||
|
||||
public static boolean tellPlayer(CommandSender p, Msg msg, String s) {
|
||||
return tellPlayer(p, msg.toString(s));
|
||||
}
|
||||
|
||||
public static boolean tellPlayer(CommandSender p, Msg msg) {
|
||||
return tellPlayer(p, msg.toString());
|
||||
}
|
||||
|
||||
public static void tellAll(Arena arena, Msg msg, String s, boolean notifyPlayers) {
|
||||
public static void announce(Arena arena, String msg) {
|
||||
List<Player> players = new ArrayList<Player>();
|
||||
players.addAll(arena.getPlayersInArena());
|
||||
players.addAll(arena.getPlayersInLobby());
|
||||
players.addAll(arena.getSpectators());
|
||||
for (Player p : players)
|
||||
tellPlayer(p, msg, s);
|
||||
for (Player p : players) {
|
||||
tell(p, msg);
|
||||
}
|
||||
}
|
||||
|
||||
public static void tellAll(Arena arena, Msg msg, String s) {
|
||||
tellAll(arena, msg, s, false);
|
||||
public static void announce(Arena arena, Msg msg, String s) {
|
||||
announce(arena, msg.format(s));
|
||||
}
|
||||
|
||||
public static void tellAll(Arena arena, Msg msg, boolean notifyPlayers) {
|
||||
tellAll(arena, msg, null, notifyPlayers);
|
||||
}
|
||||
|
||||
public static void tellAll(Arena arena, Msg msg) {
|
||||
tellAll(arena, msg, null, false);
|
||||
public static void announce(Arena arena, Msg msg) {
|
||||
announce(arena, msg.toString());
|
||||
}
|
||||
|
||||
public static void info(String msg) {
|
||||
|
@ -11,6 +11,7 @@ import net.milkbowl.vault.economy.EconomyResponse.ResponseType;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.command.ConsoleCommandSender;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
@ -59,6 +60,9 @@ public class MobArena extends JavaPlugin
|
||||
public void onEnable() {
|
||||
// Initialize config-file
|
||||
loadConfigFile();
|
||||
|
||||
// Initialize announcements-file
|
||||
loadAnnouncementsFile();
|
||||
|
||||
// Load boss abilities
|
||||
loadAbilities();
|
||||
@ -76,9 +80,6 @@ public class MobArena extends JavaPlugin
|
||||
// Register any inventories to restore.
|
||||
registerInventories();
|
||||
|
||||
// Make sure all the announcements are configured.
|
||||
MAMessages.init(this);
|
||||
|
||||
// Register event listeners
|
||||
registerListeners();
|
||||
|
||||
@ -113,6 +114,31 @@ public class MobArena extends JavaPlugin
|
||||
getConfig().options().header(getHeader());
|
||||
saveConfig();
|
||||
}
|
||||
|
||||
private void loadAnnouncementsFile() {
|
||||
// Create if missing
|
||||
File file = new File(getDataFolder(), "announcements.yml");
|
||||
try {
|
||||
if (file.createNewFile()) {
|
||||
Messenger.info("announcements.yml created.");
|
||||
YamlConfiguration yaml = Msg.toYaml();
|
||||
yaml.save(file);
|
||||
return;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
// Otherwise, load the announcements from the file
|
||||
try {
|
||||
YamlConfiguration yaml = new YamlConfiguration();
|
||||
yaml.load(file);
|
||||
ConfigUtils.addMissingRemoveObsolete(file, Msg.toYaml(), yaml);
|
||||
Msg.load(yaml);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
private void registerListeners() {
|
||||
// Bind the /ma, /mobarena commands to MACommands.
|
||||
|
@ -1,45 +1,46 @@
|
||||
package com.garbagemule.MobArena;
|
||||
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
|
||||
public enum Msg
|
||||
{
|
||||
ARENA_START("Let the slaughter begin!", "Arena started!", Material.REDSTONE_TORCH_ON),
|
||||
ARENA_END("Arena finished.", "Arena finished.", Material.REDSTONE_TORCH_OFF),
|
||||
ARENA_END_GLOBAL("Arena '%' finished! Type /ma j % to join a new game!"),
|
||||
ARENA_JOIN_GLOBAL("Arena '%' is about to start! Type /ma j % to join!"),
|
||||
ARENA_DOES_NOT_EXIST("That arena does not exist. Type /ma arenas for a list.", "Can't find arena."),
|
||||
public enum Msg {
|
||||
ARENA_START("Let the slaughter begin!"),
|
||||
ARENA_END("Arena finished."),
|
||||
ARENA_DOES_NOT_EXIST("That arena does not exist. Type &e/ma arenas&r for a list."),
|
||||
ARENA_END_GLOBAL("Arena &e%&r finished! Type &e/ma j %&r to join a new game!"),
|
||||
ARENA_JOIN_GLOBAL("Arena &e%&r is about to start! Type &e/ma j %&r to join!"),
|
||||
ARENA_LBOARD_NOT_FOUND("That arena does not have a leaderboard set up."),
|
||||
ARENA_AUTO_START("Arena will auto-start in % seconds."),
|
||||
JOIN_NOT_ENABLED("MobArena is not enabled.", "MobArena disabled.", Material.REDSTONE_TORCH_OFF),
|
||||
JOIN_IN_OTHER_ARENA("You are already in an arena! Leave that one first.", "In another arena."),
|
||||
JOIN_ARENA_NOT_ENABLED("This arena is not enabled.", "Arena disabled.", Material.REDSTONE_TORCH_OFF),
|
||||
JOIN_ARENA_NOT_SETUP("This arena has not been set up yet.", "Arena not set up.", Material.REDSTONE_TORCH_OFF),
|
||||
JOIN_ARENA_EDIT_MODE("This arena is in edit mode.", "Arena in edit mode.", Material.IRON_SPADE),
|
||||
JOIN_ARENA_PERMISSION("You don't have permission to join this arena.", "No permission!", Material.FENCE),
|
||||
JOIN_FEE_REQUIRED("Insufficient funds. Price: %", "Price: %", Material.DIAMOND),
|
||||
JOIN_FEE_PAID("Price to join was: %", "Paid: %", Material.DIAMOND),
|
||||
JOIN_ARENA_IS_RUNNING("This arena is in already progress.", "Already running!", Material.GOLD_RECORD),
|
||||
JOIN_ALREADY_PLAYING("You are already playing!", "Already playing!", Material.GOLD_RECORD),
|
||||
ARENA_AUTO_START("Arena will auto-start in &c%&r seconds."),
|
||||
JOIN_NOT_ENABLED("MobArena is not enabled."),
|
||||
JOIN_IN_OTHER_ARENA("You are already in an arena! Leave that one first."),
|
||||
JOIN_ARENA_NOT_ENABLED("This arena is not enabled."),
|
||||
JOIN_ARENA_NOT_SETUP("This arena has not been set up yet."),
|
||||
JOIN_ARENA_EDIT_MODE("This arena is in edit mode."),
|
||||
JOIN_ARENA_PERMISSION("You don't have permission to join this arena."),
|
||||
JOIN_FEE_REQUIRED("Insufficient funds. Price: &c%&r"),
|
||||
JOIN_FEE_PAID("Price to join was: &c%&r"),
|
||||
JOIN_ARENA_IS_RUNNING("This arena is in already progress."),
|
||||
JOIN_ALREADY_PLAYING("You are already playing!"),
|
||||
JOIN_ARG_NEEDED("You must specify an arena."),
|
||||
JOIN_NO_PERMISSION("You don't have permission to join any arenas."),
|
||||
JOIN_TOO_FAR("You are too far away from the arena to join/spectate.", "Too far from arena.", Material.COMPASS),
|
||||
JOIN_EMPTY_INV("You must empty your inventory to join the arena.", "Empty your inventory.", Material.CHEST),
|
||||
JOIN_PLAYER_LIMIT_REACHED("The player limit of this arena has been reached.", "No spots left.", Material.MILK_BUCKET),
|
||||
JOIN_TOO_FAR("You are too far away from the arena to join/spectate."),
|
||||
JOIN_EMPTY_INV("You must empty your inventory to join the arena."),
|
||||
JOIN_PLAYER_LIMIT_REACHED("The player limit of this arena has been reached."),
|
||||
JOIN_STORE_INV_FAIL("Failed to store inventory. Try again."),
|
||||
JOIN_EXISTING_INV_RESTORED("Your old inventory items have been restored."),
|
||||
JOIN_PLAYER_JOINED("You joined the arena. Have fun!", "Joined arena.", Material.IRON_SWORD),
|
||||
LEAVE_NOT_PLAYING("You are not in the arena.", "Not in arena."),
|
||||
JOIN_PLAYER_JOINED("You joined the arena. Have fun!"),
|
||||
LEAVE_NOT_PLAYING("You are not in the arena."),
|
||||
LEAVE_NOT_READY("You did not ready up in time! Next time, ready up by clicking an iron block."),
|
||||
LEAVE_PLAYER_LEFT("You left the arena. Thanks for playing!", "Left arena.", Material.WOOD_DOOR),
|
||||
PLAYER_DIED("% died!", "% died!", Material.BONE),
|
||||
GOLEM_DIED("A friendly Golem has died!", "A Golem has died!", Material.PUMPKIN),
|
||||
SPEC_PLAYER_SPECTATE("Enjoy the show!", "Enjoy the show!"),
|
||||
SPEC_FROM_ARENA("Enjoy the rest of the show!", "Enjoy the show!"),
|
||||
SPEC_NOT_RUNNING("This arena isn't running.", "Arena not running.", Material.REDSTONE_TORCH_OFF),
|
||||
SPEC_EMPTY_INV("Empty your inventory first!", "Empty your inventory.", Material.CHEST),
|
||||
SPEC_ALREADY_PLAYING("Can't spectate when in the arena!", "Already playing!"),
|
||||
NOT_READY_PLAYERS("Not ready: %"),
|
||||
LEAVE_PLAYER_LEFT("You left the arena. Thanks for playing!"),
|
||||
PLAYER_DIED("&c%&r died!"),
|
||||
GOLEM_DIED("A friendly Golem has died!"),
|
||||
SPEC_PLAYER_SPECTATE("Enjoy the show!"),
|
||||
SPEC_FROM_ARENA("Enjoy the rest of the show!"),
|
||||
SPEC_NOT_RUNNING("This arena isn't running."),
|
||||
SPEC_EMPTY_INV("Empty your inventory first!"),
|
||||
SPEC_ALREADY_PLAYING("Can't spectate when in the arena!"),
|
||||
NOT_READY_PLAYERS("Not ready: &c%&r"),
|
||||
FORCE_START_RUNNING("Arena has already started."),
|
||||
FORCE_START_NOT_READY("Can't force start, no players are ready."),
|
||||
FORCE_START_STARTED("Forced arena start."),
|
||||
@ -47,136 +48,70 @@ public enum Msg
|
||||
FORCE_END_ENDED("Forced arena end."),
|
||||
FORCE_END_IDLE("You weren't quick enough!"),
|
||||
REWARDS_GIVE("Here are all of your rewards!"),
|
||||
LOBBY_DROP_ITEM("No sharing allowed at this time!", "Can't drop items here."),
|
||||
LOBBY_PLAYER_READY("You have been flagged as ready!", "Flagged as ready!"),
|
||||
LOBBY_PICK_CLASS("You must first pick a class!", "Pick a class first!"),
|
||||
LOBBY_CLASS_FULL("This class can no longer be selected, class limit reached!", "Class limit reached!"),
|
||||
LOBBY_NOT_ENOUGH_PLAYERS("Not enough players to start. Need at least % players.", "Need more players."),
|
||||
LOBBY_RIGHT_CLICK("Punch the sign. Don't right-click.", "Punch the sign."),
|
||||
LOBBY_CLASS_PICKED("You have chosen % as your class!", "%"),
|
||||
LOBBY_DROP_ITEM("No sharing allowed at this time!"),
|
||||
LOBBY_PLAYER_READY("You have been flagged as ready!"),
|
||||
LOBBY_PICK_CLASS("You must first pick a class!"),
|
||||
LOBBY_CLASS_FULL("This class can no longer be selected, class limit reached!"),
|
||||
LOBBY_NOT_ENOUGH_PLAYERS("Not enough players to start. Need at least &c%&r players."),
|
||||
LOBBY_RIGHT_CLICK("Punch the sign. Don't right-click."),
|
||||
LOBBY_CLASS_PICKED("You have chosen &e%&r as your class!"),
|
||||
LOBBY_CLASS_RANDOM("You will get a random class on arena start."),
|
||||
LOBBY_CLASS_PERMISSION("You don't have permission to use this class!", "No permission!", Material.FENCE),
|
||||
LOBBY_CLASS_PERMISSION("You don't have permission to use this class!"),
|
||||
WARP_TO_ARENA("Warping to the arena not allowed!"),
|
||||
WARP_FROM_ARENA("Warping from the arena not allowed!"),
|
||||
WAVE_DEFAULT("Wave #%!", "Wave #%!", Material.YELLOW_FLOWER),
|
||||
WAVE_SPECIAL("Wave #%! [SPECIAL]", "Wave #%! [SPECIAL]", Material.RED_ROSE),
|
||||
WAVE_SWARM("Wave #%! [SWARM]", "Wave #%! [SWARM]", Material.LONG_GRASS),
|
||||
WAVE_SUPPLY("Wave #%! [SUPPLY]", "Wave #%! [SUPPLY]", Material.BREAD),
|
||||
WAVE_UPGRADE("Wave #%! [UPGRADE]", "Wave #%! [UPGRADE]", Material.DIAMOND),
|
||||
WAVE_BOSS("Wave #%! [BOSS]", "Wave #%! [BOSS]", Material.FIRE),
|
||||
WAVE_BOSS_ABILITY("Boss used ability: %!", "Boss: %", Material.FIRE),
|
||||
WAVE_BOSS_LOW_HEALTH("Boss is almost dead!", "Boss almost dead!", Material.FIRE),
|
||||
WAVE_REWARD("You just earned a reward: %", "Reward: %"),
|
||||
MISC_LIST_PLAYERS("Live players: %"),
|
||||
WAVE_DEFAULT("Wave &b#%&r!"),
|
||||
WAVE_SPECIAL("Wave &b#%&r! [SPECIAL]"),
|
||||
WAVE_SWARM("Wave &b#%&r! [SWARM]"),
|
||||
WAVE_SUPPLY("Wave &b#%&r! [SUPPLY]"),
|
||||
WAVE_UPGRADE("Wave &b#%&r! [UPGRADE]"),
|
||||
WAVE_BOSS("Wave &b#%&r! [BOSS]"),
|
||||
WAVE_BOSS_ABILITY("Boss used ability: &c%&r!"),
|
||||
WAVE_BOSS_LOW_HEALTH("Boss is almost dead!"),
|
||||
WAVE_REWARD("You just earned a reward: &e%&r"),
|
||||
MISC_LIST_PLAYERS("Live players: &a%&r"),
|
||||
MISC_LIST_ARENAS("Available arenas: %"),
|
||||
MISC_COMMAND_NOT_ALLOWED("You can't use that command in the arena!"),
|
||||
MISC_NO_ACCESS("You don't have access to this command."),
|
||||
MISC_NOT_FROM_CONSOLE("You can't use this command from the console."),
|
||||
MISC_HELP("For a list of commands, type /ma help"),
|
||||
MISC_HELP("For a list of commands, type &e/ma help&r"),
|
||||
MISC_MULTIPLE_MATCHES("Did you mean one of these commands?"),
|
||||
MISC_NO_MATCHES("Command not found. Type /ma help"),
|
||||
MISC_MA_LEAVE_REMINDER("Remember to use /ma leave when you are done."),
|
||||
MISC_NONE("<none>");
|
||||
|
||||
private String msg, spoutMsg;
|
||||
private Material logo;
|
||||
|
||||
/**
|
||||
* Default constructor.
|
||||
* @param msg a string for the chat window
|
||||
* @param spoutMsg a string for Spout
|
||||
* @param logo a logo for Spout
|
||||
*/
|
||||
private Msg(String msg, String spoutMsg, Material logo) {
|
||||
this.msg = msg;
|
||||
this.spoutMsg = spoutMsg;
|
||||
this.logo = logo;
|
||||
}
|
||||
|
||||
/**
|
||||
* Custom Spout constructor.
|
||||
* @param msg a string for the chat window
|
||||
* @param spoutMsg a string for Spout
|
||||
*/
|
||||
private Msg(String msg, String spoutMsg) {
|
||||
this(msg, spoutMsg, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Custom normal constructor.
|
||||
* @param msg a string for the chat window
|
||||
*/
|
||||
private Msg(String msg) {
|
||||
this(msg, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Change this enum's chat window string.
|
||||
* @param msg a string for the chat window
|
||||
*/
|
||||
public void set(String msg) {
|
||||
this.msg = msg;
|
||||
}
|
||||
|
||||
/**
|
||||
* Change this enum's Spout string.
|
||||
* @param spoutMsg a string for Spout
|
||||
*/
|
||||
public void setSpout(String spoutMsg) {
|
||||
this.spoutMsg = spoutMsg;
|
||||
|
||||
if (spoutMsg == null)
|
||||
logo = null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if this enum has a Spout string associated with it.
|
||||
* @return true, if a Spout string is available, false otherwise.
|
||||
*/
|
||||
public boolean hasSpoutMsg() {
|
||||
return spoutMsg != null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the logo of this enum.
|
||||
* The default logo is Material.SLIME_BALL if none is specified.
|
||||
* @return the logo for this enum
|
||||
*/
|
||||
public Material getLogo() {
|
||||
return logo == null ? Material.SLIME_BALL : logo;
|
||||
MISC_NO_MATCHES("Command not found. Type &e/ma help&r"),
|
||||
MISC_MA_LEAVE_REMINDER("Remember to use &e/ma leave&r when you are done."),
|
||||
MISC_NONE("&6<none>&r");
|
||||
|
||||
private String value;
|
||||
|
||||
private Msg(String value) {
|
||||
set(value);
|
||||
}
|
||||
|
||||
void set(String value) {
|
||||
this.value = ChatColor.translateAlternateColorCodes('&', value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return msg;
|
||||
return value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as above, just returning the string for Spout instead.
|
||||
* @return the string for Spout
|
||||
*/
|
||||
public String toSpoutString() {
|
||||
return spoutMsg;
|
||||
|
||||
public String format(String s) {
|
||||
return value.replaceAll("%", s);
|
||||
}
|
||||
|
||||
/**
|
||||
* Extended toString method that allows a variable.
|
||||
* @param s the variable value
|
||||
* @return the string for the chat window, with all %'s replaced by the input
|
||||
*/
|
||||
public String toString(String s) {
|
||||
return (s != null) ? msg.replace("%", s) : msg;
|
||||
|
||||
static void load(ConfigurationSection config) {
|
||||
for (Msg msg : values()) {
|
||||
// ARENA_END_GLOBAL => arena-end-global
|
||||
String key = msg.name().toLowerCase().replaceAll("_","-");
|
||||
msg.set(config.getString(key, ""));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as above, but for the Spout string.
|
||||
* @param s the variable value
|
||||
* @return the string for Spout, with all %'s replaced by the input
|
||||
*/
|
||||
public String toSpoutString(String s) {
|
||||
if (spoutMsg == null)
|
||||
return toString(s);
|
||||
|
||||
return (s != null) ? spoutMsg.replace("%", s) : spoutMsg;
|
||||
|
||||
static YamlConfiguration toYaml() {
|
||||
YamlConfiguration yaml = new YamlConfiguration();
|
||||
for (Msg msg : values()) {
|
||||
// ARENA_END_GLOBAL => arena-end-global
|
||||
String key = msg.name().replaceAll("_","-").toLowerCase();
|
||||
yaml.set(key, msg.value);
|
||||
}
|
||||
return yaml;
|
||||
}
|
||||
}
|
@ -1,9 +1,9 @@
|
||||
package com.garbagemule.MobArena.autostart;
|
||||
|
||||
import com.garbagemule.MobArena.Msg;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import com.garbagemule.MobArena.Messenger;
|
||||
import com.garbagemule.MobArena.Msg;
|
||||
import com.garbagemule.MobArena.framework.Arena;
|
||||
|
||||
public class AutoStartTimer {
|
||||
@ -106,7 +106,7 @@ public class AutoStartTimer {
|
||||
}
|
||||
// Otherwise, warn at x seconds left
|
||||
else if (remaining == intervals[countdownIndex]) {
|
||||
Messenger.tellAll(arena, Msg.ARENA_AUTO_START, "" + remaining);
|
||||
Messenger.announce(arena, Msg.ARENA_AUTO_START, ""+remaining);
|
||||
countdownIndex--;
|
||||
}
|
||||
|
||||
|
@ -39,7 +39,7 @@ public class CommandHandler implements CommandExecutor
|
||||
|
||||
// If there's no base argument, show a helpful message.
|
||||
if (base.equals("")) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_HELP);
|
||||
Messenger.tell(sender, Msg.MISC_HELP);
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -54,7 +54,7 @@ public class CommandHandler implements CommandExecutor
|
||||
|
||||
// If there's more than one match, display them.
|
||||
if (matches.size() > 1) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_MULTIPLE_MATCHES);
|
||||
Messenger.tell(sender, Msg.MISC_MULTIPLE_MATCHES);
|
||||
for (Command cmd : matches) {
|
||||
showUsage(cmd, sender);
|
||||
}
|
||||
@ -63,7 +63,7 @@ public class CommandHandler implements CommandExecutor
|
||||
|
||||
// If there are no matches at all, notify.
|
||||
if (matches.size() == 0) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NO_MATCHES);
|
||||
Messenger.tell(sender, Msg.MISC_NO_MATCHES);
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -73,7 +73,7 @@ public class CommandHandler implements CommandExecutor
|
||||
|
||||
// First check if the sender has permission.
|
||||
if (!plugin.has(sender, info.permission())) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NO_ACCESS);
|
||||
Messenger.tell(sender, Msg.MISC_NO_ACCESS);
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -118,7 +118,7 @@ public class CommandHandler implements CommandExecutor
|
||||
CommandInfo info = cmd.getClass().getAnnotation(CommandInfo.class);
|
||||
if (!plugin.has(sender, info.permission())) return;
|
||||
|
||||
Messenger.tellPlayer(sender, info.usage() + " " + ChatColor.YELLOW + info.desc());
|
||||
Messenger.tell(sender, info.usage() + " " + ChatColor.YELLOW + info.desc());
|
||||
}
|
||||
|
||||
/**
|
||||
@ -136,7 +136,7 @@ public class CommandHandler implements CommandExecutor
|
||||
* @param sender a player or the console
|
||||
*/
|
||||
private void showHelp(CommandSender sender) {
|
||||
Messenger.tellPlayer(sender, "Available MobArena commands:");
|
||||
Messenger.tell(sender, "Available MobArena commands:");
|
||||
|
||||
for (Command cmd : commands.values()) {
|
||||
showUsage(cmd, sender);
|
||||
|
@ -20,21 +20,21 @@ public class Commands
|
||||
public static Arena getArenaToJoinOrSpec(ArenaMaster am, Player p, String arg1) {
|
||||
// Check if MobArena is enabled first.
|
||||
if (!am.isEnabled()) {
|
||||
Messenger.tellPlayer(p, Msg.JOIN_NOT_ENABLED);
|
||||
Messenger.tell(p, Msg.JOIN_NOT_ENABLED);
|
||||
return null;
|
||||
}
|
||||
|
||||
// Then check if we have permission at all.
|
||||
List<Arena> arenas = am.getPermittedArenas(p);
|
||||
if (arenas.isEmpty()) {
|
||||
Messenger.tellPlayer(p, Msg.JOIN_NO_PERMISSION);
|
||||
Messenger.tell(p, Msg.JOIN_NO_PERMISSION);
|
||||
return null;
|
||||
}
|
||||
|
||||
// Then check if we have any enabled arenas.
|
||||
arenas = am.getEnabledArenas(arenas);
|
||||
if (arenas.isEmpty()) {
|
||||
Messenger.tellPlayer(p, Msg.JOIN_NOT_ENABLED);
|
||||
Messenger.tell(p, Msg.JOIN_NOT_ENABLED);
|
||||
return null;
|
||||
}
|
||||
|
||||
@ -45,19 +45,19 @@ public class Commands
|
||||
if (arg1 != null) {
|
||||
arena = am.getArenaWithName(arg1);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(p, Msg.ARENA_DOES_NOT_EXIST);
|
||||
Messenger.tell(p, Msg.ARENA_DOES_NOT_EXIST);
|
||||
return null;
|
||||
}
|
||||
|
||||
if (!arenas.contains(arena)) {
|
||||
Messenger.tellPlayer(p, Msg.JOIN_ARENA_NOT_ENABLED);
|
||||
Messenger.tell(p, Msg.JOIN_ARENA_NOT_ENABLED);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (arenas.size() > 1) {
|
||||
Messenger.tellPlayer(p, Msg.JOIN_ARG_NEEDED);
|
||||
Messenger.tellPlayer(p, Msg.MISC_LIST_ARENAS.toString(TextUtils.listToString(arenas)));
|
||||
Messenger.tell(p, Msg.JOIN_ARG_NEEDED);
|
||||
Messenger.tell(p, Msg.MISC_LIST_ARENAS.format(TextUtils.listToString(arenas)));
|
||||
return null;
|
||||
}
|
||||
arena = arenas.get(0);
|
||||
|
@ -32,7 +32,7 @@ public class DisableCommand implements Command
|
||||
if (!arg1.equals("")) {
|
||||
Arena arena = am.getArenaWithName(arg1);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
Messenger.tell(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -42,7 +42,7 @@ public class DisableCommand implements Command
|
||||
|
||||
am.setEnabled(false);
|
||||
am.saveConfig();
|
||||
Messenger.tellPlayer(sender, "MobArena " + ChatColor.RED + "disabled");
|
||||
Messenger.tell(sender, "MobArena " + ChatColor.RED + "disabled");
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -50,6 +50,6 @@ public class DisableCommand implements Command
|
||||
private void disable(Arena arena, CommandSender sender) {
|
||||
arena.setEnabled(false);
|
||||
arena.getPlugin().saveConfig();
|
||||
Messenger.tellPlayer(sender, "Arena '" + arena.configName() + "' " + ChatColor.RED + "disabled");
|
||||
Messenger.tell(sender, "Arena '" + arena.configName() + "' " + ChatColor.RED + "disabled");
|
||||
}
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ public class EnableCommand implements Command
|
||||
if (!arg1.equals("")) {
|
||||
Arena arena = am.getArenaWithName(arg1);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
Messenger.tell(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -42,7 +42,7 @@ public class EnableCommand implements Command
|
||||
|
||||
am.setEnabled(true);
|
||||
am.saveConfig();
|
||||
Messenger.tellPlayer(sender, "MobArena " + ChatColor.GREEN + "enabled");
|
||||
Messenger.tell(sender, "MobArena " + ChatColor.GREEN + "enabled");
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -50,6 +50,6 @@ public class EnableCommand implements Command
|
||||
private void enable(Arena arena, CommandSender sender) {
|
||||
arena.setEnabled(true);
|
||||
arena.getPlugin().saveConfig();
|
||||
Messenger.tellPlayer(sender, "Arena '" + arena.configName() + "' " + ChatColor.GREEN + "enabled");
|
||||
Messenger.tell(sender, "Arena '" + arena.configName() + "' " + ChatColor.GREEN + "enabled");
|
||||
}
|
||||
}
|
||||
|
@ -29,7 +29,7 @@ public class ForceCommand implements Command
|
||||
arena.forceEnd();
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(sender, Msg.FORCE_END_ENDED);
|
||||
Messenger.tell(sender, Msg.FORCE_END_ENDED);
|
||||
am.resetArenaMap();
|
||||
return true;
|
||||
}
|
||||
@ -37,18 +37,18 @@ public class ForceCommand implements Command
|
||||
// Otherwise, grab the arena in question.
|
||||
Arena arena = am.getArenaWithName(arg2);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
Messenger.tell(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (arena.getAllPlayers().isEmpty()) {
|
||||
Messenger.tellPlayer(sender, Msg.FORCE_END_EMPTY);
|
||||
Messenger.tell(sender, Msg.FORCE_END_EMPTY);
|
||||
return false;
|
||||
}
|
||||
|
||||
// And end it!
|
||||
arena.forceEnd();
|
||||
Messenger.tellPlayer(sender, Msg.FORCE_END_ENDED);
|
||||
Messenger.tell(sender, Msg.FORCE_END_ENDED);
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -56,35 +56,35 @@ public class ForceCommand implements Command
|
||||
if (arg1.equals("start")) {
|
||||
// Require argument.
|
||||
if (arg2.equals("")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma force start <arena>");
|
||||
Messenger.tell(sender, "Usage: /ma force start <arena>");
|
||||
return false;
|
||||
}
|
||||
|
||||
// Grab the arena.
|
||||
Arena arena = am.getArenaWithName(arg2);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
Messenger.tell(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (arena.isRunning()) {
|
||||
Messenger.tellPlayer(sender, Msg.FORCE_START_RUNNING);
|
||||
Messenger.tell(sender, Msg.FORCE_START_RUNNING);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (arena.getReadyPlayersInLobby().isEmpty()) {
|
||||
Messenger.tellPlayer(sender, Msg.FORCE_START_NOT_READY);
|
||||
Messenger.tell(sender, Msg.FORCE_START_NOT_READY);
|
||||
return false;
|
||||
}
|
||||
|
||||
// And start it!
|
||||
arena.forceStart();
|
||||
Messenger.tellPlayer(sender, Msg.FORCE_START_STARTED);
|
||||
Messenger.tell(sender, Msg.FORCE_START_STARTED);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(sender, "Usage: /ma force start|end (<arena name>)");
|
||||
Messenger.tell(sender, "Usage: /ma force start|end (<arena name>)");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -24,13 +24,13 @@ public class KickCommand implements Command
|
||||
|
||||
// Require an argument
|
||||
if (arg1.equals("")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma kick <player>");
|
||||
Messenger.tell(sender, "Usage: /ma kick <player>");
|
||||
return false;
|
||||
}
|
||||
|
||||
Arena arena = am.getArenaWithPlayer(arg1);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, "That player is not in an arena.");
|
||||
Messenger.tell(sender, "That player is not in an arena.");
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -40,8 +40,8 @@ public class KickCommand implements Command
|
||||
// Force leave.
|
||||
arena.playerLeave(bp);
|
||||
|
||||
Messenger.tellPlayer(sender, "Player '" + arg1 + "' was kicked from arena '" + arena.configName() + "'.");
|
||||
Messenger.tellPlayer(bp, "You were kicked by " + sender.getName() + ".");
|
||||
Messenger.tell(sender, "Player '" + arg1 + "' was kicked from arena '" + arena.configName() + "'.");
|
||||
Messenger.tell(bp, "You were kicked by " + sender.getName() + ".");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -23,19 +23,19 @@ public class RestoreCommand implements Command
|
||||
|
||||
// Require an argument
|
||||
if (arg1.equals("")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma restore <player>");
|
||||
Messenger.tell(sender, "Usage: /ma restore <player>");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (am.getArenaWithPlayer(arg1) != null) {
|
||||
Messenger.tellPlayer(sender, "Player is currently in an arena.");
|
||||
Messenger.tell(sender, "Player is currently in an arena.");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (InventoryManager.restoreFromFile(am.getPlugin(), am.getPlugin().getServer().getPlayer(arg1))) {
|
||||
Messenger.tellPlayer(sender, "Restored " + arg1 + "'s inventory!");
|
||||
Messenger.tell(sender, "Restored " + arg1 + "'s inventory!");
|
||||
} else {
|
||||
Messenger.tellPlayer(sender, "Failed to restore " + arg1 + "'s inventory.");
|
||||
Messenger.tell(sender, "Failed to restore " + arg1 + "'s inventory.");
|
||||
}
|
||||
|
||||
return true;
|
||||
|
@ -20,7 +20,7 @@ public class AddArenaCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -32,20 +32,20 @@ public class AddArenaCommand implements Command
|
||||
|
||||
// Require an argument
|
||||
if (arg1.equals("")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma addarena <arena>");
|
||||
Messenger.tell(sender, "Usage: /ma addarena <arena>");
|
||||
return true;
|
||||
}
|
||||
|
||||
Arena arena = am.getArenaWithName(arg1);
|
||||
if (arena != null) {
|
||||
Messenger.tellPlayer(sender, "An arena with that name already exists.");
|
||||
Messenger.tell(sender, "An arena with that name already exists.");
|
||||
return true;
|
||||
}
|
||||
|
||||
arena = am.createArenaNode(arg1, p.getWorld());
|
||||
am.setSelectedArena(arena);
|
||||
|
||||
Messenger.tellPlayer(sender, "New arena with name '" + arg1 + "' created!");
|
||||
Messenger.tell(sender, "New arena with name '" + arg1 + "' created!");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -23,25 +23,25 @@ public class AddClassPermCommand implements Command
|
||||
String arg2 = (args.length > 1 ? args[1] : "");
|
||||
|
||||
if (arg1.equals("") || arg2.equals("")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma addclassperm <classname> <permission>");
|
||||
Messenger.tell(sender, "Usage: /ma addclassperm <classname> <permission>");
|
||||
return false;
|
||||
}
|
||||
|
||||
// Grab the arena class
|
||||
ArenaClass arenaClass = am.getClasses().get(arg1);
|
||||
if (arenaClass == null) {
|
||||
Messenger.tellPlayer(sender, "The class '" + TextUtils.camelCase(arg1) + "' does not exist.");
|
||||
Messenger.tell(sender, "The class '" + TextUtils.camelCase(arg1) + "' does not exist.");
|
||||
return false;
|
||||
}
|
||||
|
||||
// Try to add the permission.
|
||||
if (am.addClassPermission(arg1, arg2)) {
|
||||
Messenger.tellPlayer(sender, "Added permission '" + arg2 + "' to class '" + TextUtils.camelCase(arg1) + "'.");
|
||||
Messenger.tell(sender, "Added permission '" + arg2 + "' to class '" + TextUtils.camelCase(arg1) + "'.");
|
||||
return true;
|
||||
}
|
||||
|
||||
// If it wasn't added, notify.
|
||||
Messenger.tellPlayer(sender, "Permission '" + arg2 + "' was NOT added to class '" + TextUtils.camelCase(arg1) + "'.");
|
||||
Messenger.tell(sender, "Permission '" + arg2 + "' was NOT added to class '" + TextUtils.camelCase(arg1) + "'.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ public class AddContainerCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -31,17 +31,17 @@ public class AddContainerCommand implements Command
|
||||
Player p = (Player) sender;
|
||||
|
||||
if (!arg1.matches("^[a-zA-Z][a-zA-Z0-9]*$")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma addcontainer <point name>");
|
||||
Messenger.tell(sender, "Usage: /ma addcontainer <point name>");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!(p.getTargetBlock(null, 50).getState() instanceof InventoryHolder)) {
|
||||
Messenger.tellPlayer(sender, "You must look at container.");
|
||||
Messenger.tell(sender, "You must look at container.");
|
||||
return false;
|
||||
}
|
||||
|
||||
am.getSelectedArena().getRegion().addChest(arg1, p.getTargetBlock(null, 50).getLocation());
|
||||
Messenger.tellPlayer(sender, "Container '" + arg1 + "' added for arena \"" + am.getSelectedArena().configName() + "\"");
|
||||
Messenger.tell(sender, "Container '" + arg1 + "' added for arena \"" + am.getSelectedArena().configName() + "\"");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ public class AddSpawnpointCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -32,7 +32,7 @@ public class AddSpawnpointCommand implements Command
|
||||
Player p = (Player) sender;
|
||||
|
||||
if (!arg1.matches("^[a-zA-Z][a-zA-Z0-9]*$")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma addspawn <point name>");
|
||||
Messenger.tell(sender, "Usage: /ma addspawn <point name>");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -48,9 +48,9 @@ public class AddSpawnpointCommand implements Command
|
||||
// Make sure we're inside the region
|
||||
if (!am.getSelectedArena().getRegion().contains(p.getLocation())) {
|
||||
if (arena.getRegion().isDefined()) {
|
||||
Messenger.tellPlayer(sender, "You must be inside the arena region!");
|
||||
Messenger.tell(sender, "You must be inside the arena region!");
|
||||
} else {
|
||||
Messenger.tellPlayer(sender, "You must first set the region points p1 and p2");
|
||||
Messenger.tell(sender, "You must first set the region points p1 and p2");
|
||||
}
|
||||
|
||||
// Restore the world reference in the arena
|
||||
@ -61,13 +61,13 @@ public class AddSpawnpointCommand implements Command
|
||||
|
||||
// Notify the player if world changed
|
||||
if (changeWorld) {
|
||||
Messenger.tellPlayer(sender, "Changed world of arena '" + arena.configName() +
|
||||
Messenger.tell(sender, "Changed world of arena '" + arena.configName() +
|
||||
"' from '" + aw.getName() +
|
||||
"' to '" + pw.getName() + "'");
|
||||
}
|
||||
|
||||
// Then notify about point set
|
||||
Messenger.tellPlayer(sender, "Spawnpoint '" + arg1 + "' added for arena '" + am.getSelectedArena().configName() + "'");
|
||||
Messenger.tell(sender, "Spawnpoint '" + arg1 + "' added for arena '" + am.getSelectedArena().configName() + "'");
|
||||
arena.getRegion().checkData(am.getPlugin(), sender, false, false, false, true);
|
||||
}
|
||||
return true;
|
||||
|
@ -19,7 +19,7 @@ public class ArenaCommand implements Command
|
||||
{
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
Messenger.tellPlayer(sender, "Currently selected arena: " + ChatColor.GREEN + am.getSelectedArena().configName());
|
||||
Messenger.tell(sender, "Currently selected arena: " + ChatColor.GREEN + am.getSelectedArena().configName());
|
||||
|
||||
StringBuffer buffy = new StringBuffer();
|
||||
if (am.getArenas().size() > 1) {
|
||||
@ -31,7 +31,7 @@ public class ArenaCommand implements Command
|
||||
}
|
||||
else buffy.append(Msg.MISC_NONE);
|
||||
|
||||
Messenger.tellPlayer(sender, "Other arenas: " + buffy.toString());
|
||||
Messenger.tell(sender, "Other arenas: " + buffy.toString());
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -23,28 +23,28 @@ public class AutoDegenerateCommand implements Command
|
||||
|
||||
// Require an argument
|
||||
if (arg1.equals("")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma autodegenerate <arena>");
|
||||
Messenger.tell(sender, "Usage: /ma autodegenerate <arena>");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (am.getArenas().size() < 2) {
|
||||
Messenger.tellPlayer(sender, "At least one arena must exist!");
|
||||
Messenger.tell(sender, "At least one arena must exist!");
|
||||
return true;
|
||||
}
|
||||
|
||||
// Check if arena exists.
|
||||
Arena arena = am.getArenaWithName(arg1);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
Messenger.tell(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!MAUtils.undoItHippieMonster(arg1, am.getPlugin(), true)) {
|
||||
Messenger.tellPlayer(sender, "Could not degenerate arena.");
|
||||
Messenger.tell(sender, "Could not degenerate arena.");
|
||||
return true;
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(sender, "Arena with name '" + arg1 + "' degenerated.");
|
||||
Messenger.tell(sender, "Arena with name '" + arg1 + "' degenerated.");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ public class AutoGenerateCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -32,23 +32,23 @@ public class AutoGenerateCommand implements Command
|
||||
|
||||
// Require an argument
|
||||
if (arg1.equals("")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma autogenerate <arena>");
|
||||
Messenger.tell(sender, "Usage: /ma autogenerate <arena>");
|
||||
return true;
|
||||
}
|
||||
|
||||
// Check if arena already exists.
|
||||
Arena arena = am.getArenaWithName(arg1);
|
||||
if (arena != null) {
|
||||
Messenger.tellPlayer(sender, "An arena with that name already exists.");
|
||||
Messenger.tell(sender, "An arena with that name already exists.");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!MAUtils.doooooItHippieMonster(p.getLocation(), 13, arg1, am.getPlugin())) {
|
||||
Messenger.tellPlayer(sender, "Could not auto-generate arena.");
|
||||
Messenger.tell(sender, "Could not auto-generate arena.");
|
||||
return true;
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(sender, "Arena with name '" + arg1 + "' generated.");
|
||||
Messenger.tell(sender, "Arena with name '" + arg1 + "' generated.");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ public class CheckDataCommand implements Command
|
||||
|
||||
Arena arena = arg1.equals("") ? am.getSelectedArena() : am.getArenaWithName(arg1);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
Messenger.tell(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -22,7 +22,7 @@ public class CheckSpawnsCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -41,7 +41,7 @@ public class CheckSpawnsCommand implements Command
|
||||
}
|
||||
|
||||
if (arena.getRegion().getSpawnpoints().isEmpty()) {
|
||||
Messenger.tellPlayer(sender, "There are no spawnpoints in the selected arena.");
|
||||
Messenger.tell(sender, "There are no spawnpoints in the selected arena.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@ -49,7 +49,7 @@ public class CheckSpawnsCommand implements Command
|
||||
arena = am.getArenaWithName(arg1);
|
||||
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
Messenger.tell(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -22,18 +22,18 @@ public class ClassChestCommand implements Command {
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (args.length != 1) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma classchest <class>");
|
||||
Messenger.tell(sender, "Usage: /ma classchest <class>");
|
||||
return true;
|
||||
}
|
||||
|
||||
ArenaClass ac = am.getClasses().get(args[0].toLowerCase());
|
||||
if (ac == null) {
|
||||
Messenger.tellPlayer(sender, "Class not found.");
|
||||
Messenger.tell(sender, "Class not found.");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -47,13 +47,13 @@ public class ClassChestCommand implements Command {
|
||||
case TRAPPED_CHEST:
|
||||
break;
|
||||
default:
|
||||
Messenger.tellPlayer(sender, "You must look at a chest.");
|
||||
Messenger.tell(sender, "You must look at a chest.");
|
||||
return true;
|
||||
}
|
||||
|
||||
am.getPlugin().getConfig().set("classes." + ac.getConfigName() + ".classchest", b.getLocation());
|
||||
am.saveConfig();
|
||||
Messenger.tellPlayer(sender, "Class chest updated for class " + ac.getConfigName());
|
||||
Messenger.tell(sender, "Class chest updated for class " + ac.getConfigName());
|
||||
am.loadClasses();
|
||||
return true;
|
||||
}
|
||||
|
@ -22,18 +22,18 @@ public class ConfigCommand implements Command
|
||||
|
||||
if (arg1.equals("reload")) {
|
||||
am.reloadConfig();
|
||||
Messenger.tellPlayer(sender, "Config reloaded.");
|
||||
Messenger.tell(sender, "Config reloaded.");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (arg1.equals("save")) {
|
||||
am.saveConfig();
|
||||
Messenger.tellPlayer(sender, "Config saved.");
|
||||
Messenger.tell(sender, "Config saved.");
|
||||
return true;
|
||||
}
|
||||
|
||||
// Requires an argument.
|
||||
Messenger.tellPlayer(sender, "Usage: /ma config reload|save");
|
||||
Messenger.tell(sender, "Usage: /ma config reload|save");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ public class ContainersCommand implements Command
|
||||
buffy.append(Msg.MISC_NONE);
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(sender, "Containers for arena '" + am.getSelectedArena().configName() + "': " + buffy.toString());
|
||||
Messenger.tell(sender, "Containers for arena '" + am.getSelectedArena().configName() + "': " + buffy.toString());
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -42,9 +42,9 @@ public class EditArenaCommand implements Command
|
||||
else {
|
||||
arena = am.getArenaWithName(arg1);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, "There is no arena with that name.");
|
||||
Messenger.tellPlayer(sender, "Usage: /ma editarena (true|false)");
|
||||
Messenger.tellPlayer(sender, " or /ma editarena <arena> (true|false)");
|
||||
Messenger.tell(sender, "There is no arena with that name.");
|
||||
Messenger.tell(sender, "Usage: /ma editarena (true|false)");
|
||||
Messenger.tell(sender, " or /ma editarena <arena> (true|false)");
|
||||
return true;
|
||||
}
|
||||
arena.setEditMode(!arena.inEditMode());
|
||||
@ -54,22 +54,22 @@ public class EditArenaCommand implements Command
|
||||
// Two arguments
|
||||
else {
|
||||
if (!(arg2.matches("true|on") || arg2.matches("false|off"))) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma editarena (true|false)");
|
||||
Messenger.tellPlayer(sender, " or /ma editarena <arena> (true|false)");
|
||||
Messenger.tell(sender, "Usage: /ma editarena (true|false)");
|
||||
Messenger.tell(sender, " or /ma editarena <arena> (true|false)");
|
||||
return true;
|
||||
}
|
||||
arena = am.getArenaWithName(arg1);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, "There is no arena with that name.");
|
||||
Messenger.tellPlayer(sender, "Usage: /ma editarena (true|false)");
|
||||
Messenger.tellPlayer(sender, " or /ma editarena <arena> (true|false)");
|
||||
Messenger.tell(sender, "There is no arena with that name.");
|
||||
Messenger.tell(sender, "Usage: /ma editarena (true|false)");
|
||||
Messenger.tell(sender, " or /ma editarena <arena> (true|false)");
|
||||
return true;
|
||||
}
|
||||
arena.setEditMode(arg2.equals("true"));
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(sender, "Edit mode for arena '" + arena.configName() + "': " + ((arena.inEditMode()) ? ChatColor.GREEN + "true" : ChatColor.RED + "false"));
|
||||
if (arena.inEditMode()) Messenger.tellPlayer(sender, "Remember to turn it back off after editing!");
|
||||
Messenger.tell(sender, "Edit mode for arena '" + arena.configName() + "': " + ((arena.inEditMode()) ? ChatColor.GREEN + "true" : ChatColor.RED + "false"));
|
||||
if (arena.inEditMode()) Messenger.tell(sender, "Remember to turn it back off after editing!");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -22,12 +22,12 @@ public class ExpandLobbyRegionCommand implements Command
|
||||
String arg2 = (args.length > 1 ? args[1] : "");
|
||||
|
||||
if (args.length != 2 || !arg1.matches("(-)?[0-9]+")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma expandlobbyregion <amount> up|down|out");
|
||||
Messenger.tell(sender, "Usage: /ma expandlobbyregion <amount> up|down|out");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!am.getSelectedArena().getRegion().isLobbyDefined()) {
|
||||
Messenger.tellPlayer(sender, "You must first define l1 and l2");
|
||||
Messenger.tell(sender, "You must first define l1 and l2");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -41,14 +41,14 @@ public class ExpandLobbyRegionCommand implements Command
|
||||
am.getSelectedArena().getRegion().expandLobbyOut(Integer.parseInt(arg1));
|
||||
}
|
||||
else {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma expandlobbyregion <amount> up|down|out");
|
||||
Messenger.tell(sender, "Usage: /ma expandlobbyregion <amount> up|down|out");
|
||||
return true;
|
||||
}
|
||||
|
||||
// In case of a "negative" region, fix it!
|
||||
am.getSelectedArena().getRegion().fixLobbyRegion();
|
||||
|
||||
Messenger.tellPlayer(sender, "Lobby region for '" + am.getSelectedArena().configName() + "' expanded " + arg2 + " by " + arg1 + " blocks.");
|
||||
Messenger.tell(sender, "Lobby region for '" + am.getSelectedArena().configName() + "' expanded " + arg2 + " by " + arg1 + " blocks.");
|
||||
am.getSelectedArena().getRegion().save();
|
||||
|
||||
return true;
|
||||
|
@ -22,12 +22,12 @@ public class ExpandRegionCommand implements Command
|
||||
String arg2 = (args.length > 1 ? args[1] : "");
|
||||
|
||||
if (args.length != 2 || !arg1.matches("(-)?[0-9]+")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma expandregion <amount> up|down|out");
|
||||
Messenger.tell(sender, "Usage: /ma expandregion <amount> up|down|out");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!am.getSelectedArena().getRegion().isDefined()) {
|
||||
Messenger.tellPlayer(sender, "You must first define p1 and p2");
|
||||
Messenger.tell(sender, "You must first define p1 and p2");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -41,14 +41,14 @@ public class ExpandRegionCommand implements Command
|
||||
am.getSelectedArena().getRegion().expandOut(Integer.parseInt(arg1));
|
||||
}
|
||||
else {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma expandregion <amount> up|down|out");
|
||||
Messenger.tell(sender, "Usage: /ma expandregion <amount> up|down|out");
|
||||
return true;
|
||||
}
|
||||
|
||||
// In case of a "negative" region, fix it!
|
||||
am.getSelectedArena().getRegion().fixRegion();
|
||||
|
||||
Messenger.tellPlayer(sender, "Region for '" + am.getSelectedArena().configName() + "' expanded " + arg2 + " by " + arg1 + " blocks.");
|
||||
Messenger.tell(sender, "Region for '" + am.getSelectedArena().configName() + "' expanded " + arg2 + " by " + arg1 + " blocks.");
|
||||
am.getSelectedArena().getRegion().save();
|
||||
|
||||
return true;
|
||||
|
@ -26,7 +26,7 @@ public class ListClassPermsCommand implements Command
|
||||
|
||||
// Require an argument.
|
||||
if (arg1.equals("")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma listclassperms <classname>");
|
||||
Messenger.tell(sender, "Usage: /ma listclassperms <classname>");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -34,14 +34,14 @@ public class ListClassPermsCommand implements Command
|
||||
String className = TextUtils.camelCase(arg1);
|
||||
|
||||
if (arenaClass == null) {
|
||||
Messenger.tellPlayer(sender, "The class '" + className + "' does not exist.");
|
||||
Messenger.tell(sender, "The class '" + className + "' does not exist.");
|
||||
return true;
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(sender, "Permissions for '" + className + "':");
|
||||
Messenger.tell(sender, "Permissions for '" + className + "':");
|
||||
Map<String,Boolean> perms = arenaClass.getPermissions();
|
||||
if (perms.isEmpty()) {
|
||||
Messenger.tellPlayer(sender, "<none>");
|
||||
Messenger.tell(sender, "<none>");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -50,7 +50,7 @@ public class ListClassPermsCommand implements Command
|
||||
if (!entry.getValue()) {
|
||||
perm = "^" + perm;
|
||||
}
|
||||
Messenger.tellPlayer(sender, "- " + perm);
|
||||
Messenger.tell(sender, "- " + perm);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
@ -19,15 +19,15 @@ public class ListClassesCommand implements Command
|
||||
{
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
Messenger.tellPlayer(sender, "Current classes:");
|
||||
Messenger.tell(sender, "Current classes:");
|
||||
Set<String> classes = am.getClasses().keySet();
|
||||
if (classes == null || classes.isEmpty()) {
|
||||
Messenger.tellPlayer(sender, "<none>");
|
||||
Messenger.tell(sender, "<none>");
|
||||
return true;
|
||||
}
|
||||
|
||||
for (String c : classes) {
|
||||
Messenger.tellPlayer(sender, "- " + c);
|
||||
Messenger.tell(sender, "- " + c);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
@ -42,9 +42,9 @@ public class ProtectCommand implements Command
|
||||
else {
|
||||
arena = am.getArenaWithName(arg1);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, "There is no arena with that name.");
|
||||
Messenger.tellPlayer(sender, "Usage: /ma protect (true|false)");
|
||||
Messenger.tellPlayer(sender, " or /ma protect <arena> (true|false)");
|
||||
Messenger.tell(sender, "There is no arena with that name.");
|
||||
Messenger.tell(sender, "Usage: /ma protect (true|false)");
|
||||
Messenger.tell(sender, " or /ma protect <arena> (true|false)");
|
||||
return true;
|
||||
}
|
||||
arena.setProtected(!arena.isProtected());
|
||||
@ -54,22 +54,22 @@ public class ProtectCommand implements Command
|
||||
// Two arguments
|
||||
else {
|
||||
if (!(arg2.matches("true|on") || arg2.matches("false|off"))) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma protect (true|false)");
|
||||
Messenger.tellPlayer(sender, " or /ma protect <arena name> (true|false)");
|
||||
Messenger.tell(sender, "Usage: /ma protect (true|false)");
|
||||
Messenger.tell(sender, " or /ma protect <arena name> (true|false)");
|
||||
return true;
|
||||
}
|
||||
arena = am.getArenaWithName(arg1);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, "There is no arena with that name.");
|
||||
Messenger.tellPlayer(sender, "Usage: /ma protect (true|false)");
|
||||
Messenger.tellPlayer(sender, " or /ma protect <arena name> (true|false)");
|
||||
Messenger.tell(sender, "There is no arena with that name.");
|
||||
Messenger.tell(sender, "Usage: /ma protect (true|false)");
|
||||
Messenger.tell(sender, " or /ma protect <arena name> (true|false)");
|
||||
return true;
|
||||
}
|
||||
arena.setProtected(arg2.equals("true"));
|
||||
}
|
||||
|
||||
arena.getPlugin().saveConfig();
|
||||
Messenger.tellPlayer(sender, "Protection for arena '" + arena.configName() + "': " + ((arena.isProtected()) ? ChatColor.GREEN + "on" : ChatColor.RED + "off"));
|
||||
Messenger.tell(sender, "Protection for arena '" + arena.configName() + "': " + ((arena.isProtected()) ? ChatColor.GREEN + "on" : ChatColor.RED + "off"));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -23,18 +23,18 @@ public class RemoveArenaCommand implements Command
|
||||
|
||||
// Require an argument
|
||||
if (arg1.equals("")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma removearena <arena>");
|
||||
Messenger.tell(sender, "Usage: /ma removearena <arena>");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (am.getArenas().size() == 1) {
|
||||
Messenger.tellPlayer(sender, "At least one arena must exist.");
|
||||
Messenger.tell(sender, "At least one arena must exist.");
|
||||
return false;
|
||||
}
|
||||
|
||||
Arena arena = am.getArenaWithName(arg1);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, "There is no arena with that name.");
|
||||
Messenger.tell(sender, "There is no arena with that name.");
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -44,7 +44,7 @@ public class RemoveArenaCommand implements Command
|
||||
am.setSelectedArena(am.getArenas().get(0));
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(sender, "Arena '" + arena.configName() + "' deleted.");
|
||||
Messenger.tell(sender, "Arena '" + arena.configName() + "' deleted.");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ public class RemoveClassCommand implements Command
|
||||
|
||||
// Require an argument.
|
||||
if (arg1.equals("")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma removeclass <classname>");
|
||||
Messenger.tell(sender, "Usage: /ma removeclass <classname>");
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -31,12 +31,12 @@ public class RemoveClassCommand implements Command
|
||||
ArenaClass arenaClass = am.getClasses().get(arg1);
|
||||
String className = TextUtils.camelCase(arg1);
|
||||
if (arenaClass == null) {
|
||||
Messenger.tellPlayer(sender, "The class '" + className + "' does not exist.");
|
||||
Messenger.tell(sender, "The class '" + className + "' does not exist.");
|
||||
return false;
|
||||
}
|
||||
|
||||
am.removeClassNode(className);
|
||||
Messenger.tellPlayer(sender, "Removed class '" + className + "'.");
|
||||
Messenger.tell(sender, "Removed class '" + className + "'.");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -23,25 +23,25 @@ public class RemoveClassPermCommand implements Command
|
||||
String arg2 = (args.length > 1 ? args[1] : "");
|
||||
|
||||
if (arg1.equals("") || arg2.equals("")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma removeclassperm <classname> <permission>");
|
||||
Messenger.tell(sender, "Usage: /ma removeclassperm <classname> <permission>");
|
||||
return false;
|
||||
}
|
||||
|
||||
// Grab the arena class
|
||||
ArenaClass arenaClass = am.getClasses().get(arg1);
|
||||
if (arenaClass == null) {
|
||||
Messenger.tellPlayer(sender, "The class '" + TextUtils.camelCase(arg1) + "' does not exist.");
|
||||
Messenger.tell(sender, "The class '" + TextUtils.camelCase(arg1) + "' does not exist.");
|
||||
return false;
|
||||
}
|
||||
|
||||
// Remove the permission.
|
||||
if (am.removeClassPermission(arg1, arg2)) {
|
||||
Messenger.tellPlayer(sender, "Removed permission '" + arg2 + "' from class '" + TextUtils.camelCase(arg1) + "'.");
|
||||
Messenger.tell(sender, "Removed permission '" + arg2 + "' from class '" + TextUtils.camelCase(arg1) + "'.");
|
||||
return true;
|
||||
}
|
||||
|
||||
// If it wasn't removed, notify.
|
||||
Messenger.tellPlayer(sender, "Permission '" + arg2 + "' was NOT removed from class '" + TextUtils.camelCase(arg1) + "'.");
|
||||
Messenger.tell(sender, "Permission '" + arg2 + "' was NOT removed from class '" + TextUtils.camelCase(arg1) + "'.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -22,14 +22,14 @@ public class RemoveContainerCommand implements Command
|
||||
|
||||
// Require an argument
|
||||
if (!arg1.matches("^[a-zA-Z][a-zA-Z0-9]*$")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma removecontainer <point name>");
|
||||
Messenger.tell(sender, "Usage: /ma removecontainer <point name>");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (am.getSelectedArena().getRegion().removeChest(arg1))
|
||||
Messenger.tellPlayer(sender, "Container " + arg1 + " removed for arena '" + am.getSelectedArena().configName() + "'");
|
||||
Messenger.tell(sender, "Container " + arg1 + " removed for arena '" + am.getSelectedArena().configName() + "'");
|
||||
else
|
||||
Messenger.tellPlayer(sender, "Could not find the container " + arg1 + "for the arena '" + am.getSelectedArena().configName() + "'");
|
||||
Messenger.tell(sender, "Could not find the container " + arg1 + "for the arena '" + am.getSelectedArena().configName() + "'");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -26,26 +26,26 @@ public class RemoveLeaderboardCommand implements Command{
|
||||
if (arg1.equals("")) {
|
||||
if (am.getSelectedArena().getRegion().getLeaderboard() != null) {
|
||||
am.getSelectedArena().getRegion().set("leaderboard", null);
|
||||
Messenger.tellPlayer(sender, "Leaderboard for " + am.getSelectedArena().arenaName() + " successfully removed!");
|
||||
Messenger.tell(sender, "Leaderboard for " + am.getSelectedArena().arenaName() + " successfully removed!");
|
||||
return true;
|
||||
}
|
||||
else {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_LBOARD_NOT_FOUND);
|
||||
Messenger.tell(sender, Msg.ARENA_LBOARD_NOT_FOUND);
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (am.getArenaWithName(arg1) != null) {
|
||||
if (am.getSelectedArena().getRegion().getLeaderboard() != null) {
|
||||
am.getArenaWithName(arg1).getRegion().set("leaderboard", null);
|
||||
Messenger.tellPlayer(sender, "Leaderboard for " + am.getArenaWithName(arg1).arenaName() + " successfully removed!");
|
||||
Messenger.tell(sender, "Leaderboard for " + am.getArenaWithName(arg1).arenaName() + " successfully removed!");
|
||||
return true;
|
||||
}
|
||||
else {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_LBOARD_NOT_FOUND);
|
||||
Messenger.tell(sender, Msg.ARENA_LBOARD_NOT_FOUND);
|
||||
}
|
||||
}
|
||||
else {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma removeleaderboard <arenaname>");
|
||||
Messenger.tell(sender, "Usage: /ma removeleaderboard <arenaname>");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -22,14 +22,14 @@ public class RemoveSpawnpointCommand implements Command
|
||||
|
||||
// Require an argument
|
||||
if (!arg1.matches("^[a-zA-Z][a-zA-Z0-9]*$")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma removespawn <point name>");
|
||||
Messenger.tell(sender, "Usage: /ma removespawn <point name>");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (am.getSelectedArena().getRegion().removeSpawn(arg1))
|
||||
Messenger.tellPlayer(sender, "Spawnpoint " + arg1 + " removed for arena '" + am.getSelectedArena().configName() + "'");
|
||||
Messenger.tell(sender, "Spawnpoint " + arg1 + " removed for arena '" + am.getSelectedArena().configName() + "'");
|
||||
else
|
||||
Messenger.tellPlayer(sender, "Could not find the spawnpoint " + arg1 + "for the arena '" + am.getSelectedArena().configName() + "'");
|
||||
Messenger.tell(sender, "Could not find the spawnpoint " + arg1 + "for the arena '" + am.getSelectedArena().configName() + "'");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -23,17 +23,17 @@ public class SetArenaCommand implements Command
|
||||
|
||||
// Require an argument
|
||||
if (arg1.equals("")) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma setarena <arena>");
|
||||
Messenger.tell(sender, "Usage: /ma setarena <arena>");
|
||||
return false;
|
||||
}
|
||||
|
||||
Arena arena = am.getArenaWithName(arg1);
|
||||
if (arena != null) {
|
||||
am.setSelectedArena(arena);
|
||||
Messenger.tellPlayer(sender, "Currently selected arena: " + arena.configName());
|
||||
Messenger.tell(sender, "Currently selected arena: " + arena.configName());
|
||||
}
|
||||
else {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
Messenger.tell(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
@ -20,7 +20,7 @@ public class SetClassCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -33,7 +33,7 @@ public class SetClassCommand implements Command
|
||||
|
||||
// Require an argument.
|
||||
if (arg1.equals("")) {
|
||||
Messenger.tellPlayer(p, "Usage: /ma setclass (safe) <classname>");
|
||||
Messenger.tell(p, "Usage: /ma setclass (safe) <classname>");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -41,7 +41,7 @@ public class SetClassCommand implements Command
|
||||
boolean safe = arg1.equals("safe");
|
||||
|
||||
if (safe && arg2.equals("")) {
|
||||
Messenger.tellPlayer(p, "Usage: /ma setclass (safe) <classname>");
|
||||
Messenger.tell(p, "Usage: /ma setclass (safe) <classname>");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -53,13 +53,13 @@ public class SetClassCommand implements Command
|
||||
|
||||
// If the class is null, it was not created.
|
||||
if (arenaClass == null) {
|
||||
Messenger.tellPlayer(p, "That class already exists!");
|
||||
Messenger.tellPlayer(p, "To overwrite, omit the 'safe' parameter.");
|
||||
Messenger.tell(p, "That class already exists!");
|
||||
Messenger.tell(p, "To overwrite, omit the 'safe' parameter.");
|
||||
return true;
|
||||
}
|
||||
|
||||
// Otherwise, yay!
|
||||
Messenger.tellPlayer(p, "Class '" + className + "' set with your current inventory.");
|
||||
Messenger.tell(p, "Class '" + className + "' set with your current inventory.");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ public class SetLobbyRegionCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -32,7 +32,7 @@ public class SetLobbyRegionCommand implements Command
|
||||
Player p = (Player) sender;
|
||||
|
||||
if (!(arg1.equals("l1") || arg1.equals("l2"))) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma setlobbyregion l1|l2");
|
||||
Messenger.tell(sender, "Usage: /ma setlobbyregion l1|l2");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -42,12 +42,12 @@ public class SetLobbyRegionCommand implements Command
|
||||
|
||||
if (!aw.getName().equals(pw.getName())) {
|
||||
String msg = String.format("Changing world of arena '%s' from '%s' to '%s'", arena.configName(), aw.getName(), pw.getName());
|
||||
Messenger.tellPlayer(sender, msg);
|
||||
Messenger.tell(sender, msg);
|
||||
}
|
||||
|
||||
arena.setWorld(p.getWorld());
|
||||
arena.getRegion().set(arg1, p.getLocation());
|
||||
Messenger.tellPlayer(sender, "Lobby region point " + arg1 + " for arena '" + am.getSelectedArena().configName() + "' set.");
|
||||
Messenger.tell(sender, "Lobby region point " + arg1 + " for arena '" + am.getSelectedArena().configName() + "' set.");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ public class SetRegionCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -32,7 +32,7 @@ public class SetRegionCommand implements Command
|
||||
Player p = (Player) sender;
|
||||
|
||||
if (!(arg1.equals("p1") || arg1.equals("p2"))) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma setregion p1|p2");
|
||||
Messenger.tell(sender, "Usage: /ma setregion p1|p2");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -42,12 +42,12 @@ public class SetRegionCommand implements Command
|
||||
|
||||
if (!aw.getName().equals(pw.getName())) {
|
||||
String msg = String.format("Changing world of arena '%s' from '%s' to '%s'", arena.configName(), aw.getName(), pw.getName());
|
||||
Messenger.tellPlayer(sender, msg);
|
||||
Messenger.tell(sender, msg);
|
||||
}
|
||||
|
||||
arena.setWorld(p.getWorld());
|
||||
arena.getRegion().set(arg1, p.getLocation());
|
||||
Messenger.tellPlayer(sender, "Region point " + arg1 + " for arena '" + am.getSelectedArena().configName() + "' set.");
|
||||
Messenger.tell(sender, "Region point " + arg1 + " for arena '" + am.getSelectedArena().configName() + "' set.");
|
||||
arena.getRegion().checkData(am.getPlugin(), sender, true, true, false, false);
|
||||
return true;
|
||||
}
|
||||
|
@ -26,7 +26,7 @@ public class SetWarpCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -40,7 +40,7 @@ public class SetWarpCommand implements Command
|
||||
if (arg1.equals("spec")) arg1 = "spectator";
|
||||
|
||||
if (!WARPS.contains(arg1)) {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma setwarp arena|lobby|spectator|exit");
|
||||
Messenger.tell(sender, "Usage: /ma setwarp arena|lobby|spectator|exit");
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -56,9 +56,9 @@ public class SetWarpCommand implements Command
|
||||
// Make sure the arena warp is inside the region
|
||||
if (arg1.equals("arena") && !arena.getRegion().contains(p.getLocation())) {
|
||||
if (arena.getRegion().isDefined()) {
|
||||
Messenger.tellPlayer(sender, "You must be inside the arena region!");
|
||||
Messenger.tell(sender, "You must be inside the arena region!");
|
||||
} else {
|
||||
Messenger.tellPlayer(sender, "You must first set the region points p1 and p2");
|
||||
Messenger.tell(sender, "You must first set the region points p1 and p2");
|
||||
}
|
||||
|
||||
// Restore the world reference in the arena
|
||||
@ -70,11 +70,11 @@ public class SetWarpCommand implements Command
|
||||
// Notify the player if world changed
|
||||
if (changeWorld) {
|
||||
String msg = String.format("Changed world of arena '%s' from '%s' to '%s'", arena.configName(), aw.getName(), pw.getName());
|
||||
Messenger.tellPlayer(sender, msg);
|
||||
Messenger.tell(sender, msg);
|
||||
}
|
||||
|
||||
// Then notify about point set
|
||||
Messenger.tellPlayer(sender, "Warp point '" + arg1 + "' was set for arena '" + am.getSelectedArena().configName() + "'");
|
||||
Messenger.tell(sender, "Warp point '" + arg1 + "' was set for arena '" + am.getSelectedArena().configName() + "'");
|
||||
arena.getRegion().checkData(am.getPlugin(), sender, true, false, true, false);
|
||||
}
|
||||
return true;
|
||||
|
@ -20,7 +20,7 @@ public class ShowRegionCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -39,7 +39,7 @@ public class ShowRegionCommand implements Command
|
||||
}
|
||||
|
||||
if (!arena.getRegion().isDefined()) {
|
||||
Messenger.tellPlayer(sender, "The region is not defined for the selected arena.");
|
||||
Messenger.tell(sender, "The region is not defined for the selected arena.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@ -47,14 +47,14 @@ public class ShowRegionCommand implements Command
|
||||
arena = am.getArenaWithName(arg1);
|
||||
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
Messenger.tell(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// Show an error message if we aren't in the right world
|
||||
if (!arena.getWorld().getName().equals(arena.getWorld().getName())) {
|
||||
Messenger.tellPlayer(sender, "Arena '" + arena.configName() +
|
||||
Messenger.tell(sender, "Arena '" + arena.configName() +
|
||||
"' is in world '" + arena.getWorld().getName() +
|
||||
"' and you are in world '" + p.getWorld().getName() + "'");
|
||||
return false;
|
||||
|
@ -22,7 +22,7 @@ public class ShowSpawnsCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -41,7 +41,7 @@ public class ShowSpawnsCommand implements Command
|
||||
}
|
||||
|
||||
if (arena.getRegion().getSpawnpoints().isEmpty()) {
|
||||
Messenger.tellPlayer(sender, "There are no spawnpoints in the selected arena.");
|
||||
Messenger.tell(sender, "There are no spawnpoints in the selected arena.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@ -49,7 +49,7 @@ public class ShowSpawnsCommand implements Command
|
||||
arena = am.getArenaWithName(arg1);
|
||||
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
Messenger.tell(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ public class SpawnpointsCommand implements Command
|
||||
buffy.append(Msg.MISC_NONE);
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(sender, "Spawnpoints for arena '" + am.getSelectedArena().configName() + "': " + buffy.toString());
|
||||
Messenger.tell(sender, "Spawnpoints for arena '" + am.getSelectedArena().configName() + "': " + buffy.toString());
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -31,7 +31,7 @@ public class ArenaListCommand implements Command
|
||||
}
|
||||
|
||||
String list = MAUtils.listToString(arenas, am.getPlugin());
|
||||
Messenger.tellPlayer(sender, Msg.MISC_LIST_ARENAS.toString(list));
|
||||
Messenger.tell(sender, Msg.MISC_LIST_ARENAS.format(list));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ public class JoinCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -37,7 +37,7 @@ public class JoinCommand implements Command
|
||||
|
||||
// Deny joining from other arenas
|
||||
if (fromArena != null && (fromArena.inArena(p) || fromArena.inLobby(p))) {
|
||||
Messenger.tellPlayer(p, Msg.JOIN_ALREADY_PLAYING);
|
||||
Messenger.tell(p, Msg.JOIN_ALREADY_PLAYING);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -20,7 +20,7 @@ public class LeaveCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -31,13 +31,13 @@ public class LeaveCommand implements Command
|
||||
if (arena == null) {
|
||||
arena = am.getArenaWithSpectator(p);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(p, Msg.LEAVE_NOT_PLAYING);
|
||||
Messenger.tell(p, Msg.LEAVE_NOT_PLAYING);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (arena.playerLeave(p)) {
|
||||
Messenger.tellPlayer(p, Msg.LEAVE_PLAYER_LEFT);
|
||||
Messenger.tell(p, Msg.LEAVE_PLAYER_LEFT);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
@ -28,7 +28,7 @@ public class NotReadyCommand implements Command
|
||||
if (!arg1.equals("")) {
|
||||
arena = am.getArenaWithName(arg1);
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
Messenger.tell(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@ -37,17 +37,17 @@ public class NotReadyCommand implements Command
|
||||
arena = am.getArenaWithPlayer(p);
|
||||
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, Msg.LEAVE_NOT_PLAYING);
|
||||
Messenger.tell(sender, Msg.LEAVE_NOT_PLAYING);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else {
|
||||
Messenger.tellPlayer(sender, "Usage: /ma notready <arena name>");
|
||||
Messenger.tell(sender, "Usage: /ma notready <arena name>");
|
||||
return false;
|
||||
}
|
||||
|
||||
String list = MAUtils.listToString(arena.getNonreadyPlayers(), am.getPlugin());
|
||||
Messenger.tellPlayer(sender, Msg.MISC_LIST_PLAYERS.toString(list));
|
||||
Messenger.tell(sender, Msg.MISC_LIST_PLAYERS.format(list));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -30,7 +30,7 @@ public class PlayerListCommand implements Command
|
||||
Arena arena = am.getArenaWithName(arg1);
|
||||
|
||||
if (arena == null) {
|
||||
Messenger.tellPlayer(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
Messenger.tell(sender, Msg.ARENA_DOES_NOT_EXIST);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -48,7 +48,7 @@ public class PlayerListCommand implements Command
|
||||
list = buffy.toString();
|
||||
}
|
||||
|
||||
Messenger.tellPlayer(sender, Msg.MISC_LIST_PLAYERS.toString(list));
|
||||
Messenger.tell(sender, Msg.MISC_LIST_PLAYERS.format(list));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ public class SpecCommand implements Command
|
||||
@Override
|
||||
public boolean execute(ArenaMaster am, CommandSender sender, String... args) {
|
||||
if (!Commands.isPlayer(sender)) {
|
||||
Messenger.tellPlayer(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
Messenger.tell(sender, Msg.MISC_NOT_FROM_CONSOLE);
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -37,7 +37,7 @@ public class SpecCommand implements Command
|
||||
|
||||
// Deny spectating from other arenas
|
||||
if (fromArena != null && (fromArena.inArena(p) || fromArena.inLobby(p))) {
|
||||
Messenger.tellPlayer(p, Msg.SPEC_ALREADY_PLAYING);
|
||||
Messenger.tell(p, Msg.SPEC_ALREADY_PLAYING);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -54,8 +54,6 @@ public interface Arena
|
||||
|
||||
public void setEditMode(boolean value);
|
||||
|
||||
public Material getClassLogo(String classname);
|
||||
|
||||
public List<ItemStack> getEntryFee();
|
||||
|
||||
public Set<Map.Entry<Integer,List<ItemStack>>> getEveryWaveEntrySet();
|
||||
|
@ -93,7 +93,7 @@ public class MAGlobalListener implements Listener
|
||||
}
|
||||
else if ((stat = Stats.getByShortName(text)) != null) {
|
||||
setSignLines(event, ChatColor.GREEN + "", "", ChatColor.AQUA + stat.getFullName(), "---------------");
|
||||
Messenger.tellPlayer(event.getPlayer(), "Stat sign created.");
|
||||
Messenger.tell(event.getPlayer(), "Stat sign created.");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -127,7 +127,7 @@ public class ArenaRegion
|
||||
if (p1 == null) list.add("p1");
|
||||
if (p2 == null) list.add("p2");
|
||||
if (!list.isEmpty()) {
|
||||
Messenger.tellPlayer(s, "Missing region points: " + MAUtils.listToString(list, plugin));
|
||||
Messenger.tell(s, "Missing region points: " + MAUtils.listToString(list, plugin));
|
||||
list.clear();
|
||||
}
|
||||
}
|
||||
@ -138,7 +138,7 @@ public class ArenaRegion
|
||||
if (lobbyWarp == null) list.add("lobby");
|
||||
if (specWarp == null) list.add("spectator");
|
||||
if (!list.isEmpty()) {
|
||||
Messenger.tellPlayer(s, "Missing warps: " + MAUtils.listToString(list, plugin));
|
||||
Messenger.tell(s, "Missing warps: " + MAUtils.listToString(list, plugin));
|
||||
list.clear();
|
||||
}
|
||||
}
|
||||
@ -146,13 +146,13 @@ public class ArenaRegion
|
||||
// Spawnpoints
|
||||
if (spawns) {
|
||||
if (spawnpoints.isEmpty()) {
|
||||
Messenger.tellPlayer(s, "Missing spawnpoints");
|
||||
Messenger.tell(s, "Missing spawnpoints");
|
||||
}
|
||||
}
|
||||
|
||||
// Ready?
|
||||
if (ready && setup) {
|
||||
Messenger.tellPlayer(s, "Arena is ready to be used!");
|
||||
Messenger.tell(s, "Arena is ready to be used!");
|
||||
}
|
||||
}
|
||||
|
||||
@ -599,12 +599,12 @@ public class ArenaRegion
|
||||
}
|
||||
|
||||
if (map.isEmpty()) {
|
||||
Messenger.tellPlayer(p, "No spawnpoints cover your location!");
|
||||
Messenger.tell(p, "No spawnpoints cover your location!");
|
||||
return;
|
||||
}
|
||||
|
||||
// Notify the player
|
||||
Messenger.tellPlayer(p, "The following points cover your location:");
|
||||
Messenger.tell(p, "The following points cover your location:");
|
||||
for (Map.Entry<String,Location> entry : map.entrySet()) {
|
||||
Location l = entry.getValue();
|
||||
String coords = l.getBlockX() + "," + l.getBlockY() + "," + l.getBlockZ();
|
||||
|
@ -58,8 +58,8 @@ public class VersionChecker
|
||||
Messenger.info("MobArena v" + latestVersion + " is now available!");
|
||||
Messenger.info("Your version: v" + currentVersion);
|
||||
} else if (player.isOnline()) {
|
||||
Messenger.tellPlayer(player, "MobArena v" + latestVersion + " is now available!");
|
||||
Messenger.tellPlayer(player, "Your version: v" + currentVersion);
|
||||
Messenger.tell(player, "MobArena v" + latestVersion + " is now available!");
|
||||
Messenger.tell(player, "Your version: v" + currentVersion);
|
||||
}
|
||||
}
|
||||
}, (player == null ? 0 : 60));
|
||||
|
@ -4,9 +4,12 @@ import org.bukkit.Bukkit;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
import org.bukkit.configuration.file.FileConfiguration;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.InputStream;
|
||||
import java.text.DecimalFormat;
|
||||
import java.util.Set;
|
||||
|
||||
@ -20,32 +23,44 @@ public class ConfigUtils
|
||||
process(plugin, resource, section, false, true);
|
||||
}
|
||||
|
||||
public static void addMissingRemoveObsolete(File file, YamlConfiguration defaults, FileConfiguration config) {
|
||||
try {
|
||||
process(defaults, config, false, true);
|
||||
config.save(file);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
private static void process(Plugin plugin, String resource, ConfigurationSection section, boolean addOnlyIfEmpty, boolean removeObsolete) {
|
||||
try {
|
||||
YamlConfiguration defaults = new YamlConfiguration();
|
||||
defaults.load(plugin.getResource("res/" + resource));
|
||||
|
||||
Set<String> present = section.getKeys(true);
|
||||
Set<String> required = defaults.getKeys(true);
|
||||
|
||||
if (!addOnlyIfEmpty || present.isEmpty()) {
|
||||
for (String req : required) {
|
||||
if (!present.remove(req)) {
|
||||
section.set(req, defaults.get(req));
|
||||
}
|
||||
}
|
||||
}
|
||||
if (removeObsolete) {
|
||||
for (String obs : present) {
|
||||
section.set(obs, null);
|
||||
}
|
||||
}
|
||||
process(defaults, section, addOnlyIfEmpty, removeObsolete);
|
||||
plugin.saveConfig();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
private static void process(YamlConfiguration defaults, ConfigurationSection section, boolean addOnlyIfEmpty, boolean removeObsolete) {
|
||||
Set<String> present = section.getKeys(true);
|
||||
Set<String> required = defaults.getKeys(true);
|
||||
if (!addOnlyIfEmpty || present.isEmpty()) {
|
||||
for (String req : required) {
|
||||
if (!present.remove(req)) {
|
||||
section.set(req, defaults.get(req));
|
||||
}
|
||||
}
|
||||
}
|
||||
if (removeObsolete) {
|
||||
for (String obs : present) {
|
||||
section.set(obs, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static ConfigurationSection makeSection(ConfigurationSection config, String section) {
|
||||
if (!config.contains(section)) {
|
||||
return config.createSection(section);
|
||||
|
@ -10,42 +10,42 @@ public enum WaveType
|
||||
DEFAULT {
|
||||
@Override
|
||||
public void announce(Arena arena, int wave) {
|
||||
Messenger.tellAll(arena, Msg.WAVE_DEFAULT, ""+wave);
|
||||
Messenger.announce(arena, Msg.WAVE_DEFAULT, "" + wave);
|
||||
}
|
||||
},
|
||||
|
||||
SPECIAL {
|
||||
@Override
|
||||
public void announce(Arena arena, int wave) {
|
||||
Messenger.tellAll(arena, Msg.WAVE_SPECIAL, ""+wave);
|
||||
Messenger.announce(arena, Msg.WAVE_SPECIAL, "" + wave);
|
||||
}
|
||||
},
|
||||
|
||||
SWARM {
|
||||
@Override
|
||||
public void announce(Arena arena, int wave) {
|
||||
Messenger.tellAll(arena, Msg.WAVE_SWARM, ""+wave);
|
||||
Messenger.announce(arena, Msg.WAVE_SWARM, "" + wave);
|
||||
}
|
||||
},
|
||||
|
||||
SUPPLY {
|
||||
@Override
|
||||
public void announce(Arena arena, int wave) {
|
||||
Messenger.tellAll(arena, Msg.WAVE_SUPPLY, ""+wave);
|
||||
Messenger.announce(arena, Msg.WAVE_SUPPLY, "" + wave);
|
||||
}
|
||||
},
|
||||
|
||||
BOSS {
|
||||
@Override
|
||||
public void announce(Arena arena, int wave) {
|
||||
Messenger.tellAll(arena, Msg.WAVE_BOSS, ""+wave);
|
||||
Messenger.announce(arena, Msg.WAVE_BOSS, "" + wave);
|
||||
}
|
||||
},
|
||||
|
||||
UPGRADE {
|
||||
@Override
|
||||
public void announce(Arena arena, int wave) {
|
||||
Messenger.tellAll(arena, Msg.WAVE_UPGRADE, ""+wave);
|
||||
Messenger.announce(arena, Msg.WAVE_UPGRADE, "" + wave);
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -138,7 +138,7 @@ public class BossWave extends AbstractWave
|
||||
public void announceAbility(Ability ability, MABoss boss, Arena arena) {
|
||||
if(getAbilityAnnounce()) {
|
||||
AbilityInfo info = ability.getClass().getAnnotation(AbilityInfo.class);
|
||||
Messenger.tellAll(arena, Msg.WAVE_BOSS_ABILITY, info.name());
|
||||
Messenger.announce(arena, Msg.WAVE_BOSS_ABILITY, info.name());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user