Use MobArena's global messenger for query commands.
Changes the command output in the query commands to the same approach used in the import/export and delete commands for better consistency (and arguably prettier output). It could probably still do with some fine tuning or maybe custmization options, but that's out of scope for this particular issue. Closes #1
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package org.mobarena.stats.command;
|
||||
|
||||
import com.garbagemule.MobArena.Messenger;
|
||||
import com.garbagemule.MobArena.commands.Command;
|
||||
import com.garbagemule.MobArena.commands.CommandInfo;
|
||||
import com.garbagemule.MobArena.framework.ArenaMaster;
|
||||
@@ -11,8 +12,14 @@ import org.mobarena.stats.MobArenaStatsPlugin;
|
||||
import org.mobarena.stats.store.ArenaStats;
|
||||
import org.mobarena.stats.store.StatsStore;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import static java.lang.String.format;
|
||||
import static org.bukkit.ChatColor.AQUA;
|
||||
import static org.bukkit.ChatColor.RESET;
|
||||
import static org.bukkit.ChatColor.YELLOW;
|
||||
|
||||
@CommandInfo(
|
||||
name = "arena-stats",
|
||||
pattern = "arena-stats",
|
||||
@@ -32,17 +39,21 @@ public class ArenaStatsCommand implements Command {
|
||||
}
|
||||
String slug = Slugs.create(args[0]);
|
||||
|
||||
Messenger messenger = am.getGlobalMessenger();
|
||||
plugin.getAsyncExecutor().execute(() -> {
|
||||
StatsStore store = plugin.getStatsStore();
|
||||
ArenaStats stats = store.getArenaStats(slug);
|
||||
sender.sendMessage("Stats for arena " + slug + ":");
|
||||
sender.sendMessage("- Highest wave: " + stats.highestWave);
|
||||
sender.sendMessage("- Longest duration: " + stats.highestSeconds + " secs");
|
||||
sender.sendMessage("- Most kills: " + stats.highestKills);
|
||||
sender.sendMessage("- Total sessions: " + stats.totalSessions);
|
||||
sender.sendMessage("- Total duration: " + stats.totalSeconds + " secs");
|
||||
sender.sendMessage("- Total kills: " + stats.totalKills);
|
||||
sender.sendMessage("- Total waves: " + stats.totalWaves);
|
||||
List<String> lines = Arrays.asList(
|
||||
format("Stats for arena %s%s%s:", YELLOW, slug, RESET),
|
||||
format("- Highest wave: %s%d%s", AQUA, stats.highestWave, RESET),
|
||||
format("- Longest duration: %s%d%s secs", AQUA, stats.highestSeconds, RESET),
|
||||
format("- Most kills: %s%d%s", AQUA, stats.highestKills, RESET),
|
||||
format("- Total sessions: %s%d%s", AQUA, stats.totalSessions, RESET),
|
||||
format("- Total duration: %s%d%s secs", AQUA, stats.totalSeconds, RESET),
|
||||
format("- Total kills: %s%d%s", AQUA, stats.totalKills, RESET),
|
||||
format("- Total waves: %s%d%s", AQUA, stats.totalWaves, RESET)
|
||||
);
|
||||
messenger.tell(sender, String.join("\n", lines));
|
||||
});
|
||||
|
||||
return true;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package org.mobarena.stats.command;
|
||||
|
||||
import com.garbagemule.MobArena.Messenger;
|
||||
import com.garbagemule.MobArena.commands.Command;
|
||||
import com.garbagemule.MobArena.commands.CommandInfo;
|
||||
import com.garbagemule.MobArena.framework.ArenaMaster;
|
||||
@@ -9,6 +10,14 @@ import org.mobarena.stats.MobArenaStatsPlugin;
|
||||
import org.mobarena.stats.store.GlobalStats;
|
||||
import org.mobarena.stats.store.StatsStore;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import static java.lang.String.format;
|
||||
import static org.bukkit.ChatColor.AQUA;
|
||||
import static org.bukkit.ChatColor.RESET;
|
||||
import static org.bukkit.ChatColor.YELLOW;
|
||||
|
||||
@CommandInfo(
|
||||
name = "global-stats",
|
||||
pattern = "global-stats",
|
||||
@@ -23,14 +32,18 @@ public class GlobalStatsCommand implements Command {
|
||||
// :(
|
||||
MobArenaStats plugin = MobArenaStatsPlugin.getInstance();
|
||||
|
||||
Messenger messenger = am.getGlobalMessenger();
|
||||
plugin.getAsyncExecutor().execute(() -> {
|
||||
StatsStore store = plugin.getStatsStore();
|
||||
GlobalStats stats = store.getGlobalStats();
|
||||
sender.sendMessage("Global stats:");
|
||||
sender.sendMessage("- Total sessions: " + stats.totalSessions);
|
||||
sender.sendMessage("- Total duration: " + stats.totalSeconds + " secs");
|
||||
sender.sendMessage("- Total kills: " + stats.totalKills);
|
||||
sender.sendMessage("- Total waves: " + stats.totalWaves);
|
||||
List<String> lines = Arrays.asList(
|
||||
format("Global stats across %sall arenas%s:", YELLOW, RESET),
|
||||
format("- Total sessions: %s%d%s", AQUA, stats.totalSessions, RESET),
|
||||
format("- Total duration: %s%d%s secs", AQUA, stats.totalSeconds, RESET),
|
||||
format("- Total kills: %s%d%s", AQUA, stats.totalKills, RESET),
|
||||
format("- Total waves: %s%d%s", AQUA, stats.totalWaves, RESET)
|
||||
);
|
||||
messenger.tell(sender, String.join("\n", lines));
|
||||
});
|
||||
|
||||
return true;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package org.mobarena.stats.command;
|
||||
|
||||
import com.garbagemule.MobArena.Messenger;
|
||||
import com.garbagemule.MobArena.commands.Command;
|
||||
import com.garbagemule.MobArena.commands.CommandInfo;
|
||||
import com.garbagemule.MobArena.framework.ArenaMaster;
|
||||
@@ -10,8 +11,14 @@ import org.mobarena.stats.MobArenaStatsPlugin;
|
||||
import org.mobarena.stats.store.PlayerStats;
|
||||
import org.mobarena.stats.store.StatsStore;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import static java.lang.String.format;
|
||||
import static org.bukkit.ChatColor.AQUA;
|
||||
import static org.bukkit.ChatColor.RESET;
|
||||
import static org.bukkit.ChatColor.YELLOW;
|
||||
|
||||
@CommandInfo(
|
||||
name = "player-stats",
|
||||
pattern = "player-stats",
|
||||
@@ -36,14 +43,18 @@ public class PlayerStatsCommand implements Command {
|
||||
name = args[0];
|
||||
}
|
||||
|
||||
Messenger messenger = am.getGlobalMessenger();
|
||||
plugin.getAsyncExecutor().execute(() -> {
|
||||
StatsStore store = plugin.getStatsStore();
|
||||
PlayerStats stats = store.getPlayerStats(name);
|
||||
sender.sendMessage("Stats for player " + name + ":");
|
||||
sender.sendMessage("- Total sessions: " + stats.totalSessions);
|
||||
sender.sendMessage("- Total duration: " + stats.totalSeconds + " secs");
|
||||
sender.sendMessage("- Total kills: " + stats.totalKills);
|
||||
sender.sendMessage("- Total waves: " + stats.totalWaves);
|
||||
List<String> lines = Arrays.asList(
|
||||
format("Stats for player %s%s%s:", YELLOW, name, RESET),
|
||||
format("- Total sessions: %s%d%s", AQUA, stats.totalSessions, RESET),
|
||||
format("- Total duration: %s%d%s secs", AQUA, stats.totalSeconds, RESET),
|
||||
format("- Total kills: %s%d%s", AQUA, stats.totalKills, RESET),
|
||||
format("- Total waves: %s%d%s", AQUA, stats.totalWaves, RESET)
|
||||
);
|
||||
messenger.tell(sender, String.join("\n", lines));
|
||||
});
|
||||
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user