Skip to content

Commit

Permalink
More more changes
Browse files Browse the repository at this point in the history
  • Loading branch information
ChanceSD committed Mar 26, 2024
1 parent f2237de commit 4e67938
Show file tree
Hide file tree
Showing 8 changed files with 76 additions and 110 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ private String pvpList(final Player sender, final boolean enabled, final boolean
final StringBuilder list = new StringBuilder();
for (final PvPlayer p : ph.getPlayers().values()) {
final Player player = p.getPlayer();
if (enabled == p.hasPvPEnabled() && player != null && (console || sender.canSee(player))) {
if (enabled == p.hasPvPEnabled() && (console || sender.canSee(player))) {
list.append(p.getName()).append(", ");
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.concurrent.Callable;

import org.bukkit.Bukkit;

Expand All @@ -27,101 +26,73 @@ private void initMetrics(final PvPManager plugin) {

final Metrics metrics = new Metrics(plugin, 5653, Settings.isOptOutMetrics());

metrics.addCustomChart(new Metrics.SimplePie("time_in_combat", new Callable<String>() {
@Override
public String call() {
return Settings.isInCombatEnabled() ? Settings.getTimeInCombat() + " seconds" : "Disabled";
}
}));

metrics.addCustomChart(new Metrics.DrilldownPie("features", new Callable<Map<String, Map<String, Integer>>>() {
@Override
public Map<String, Map<String, Integer>> call() {
final Map<String, Map<String, Integer>> map = new HashMap<>();

map.put("Newbie Protection", getMapEntry(Settings.isNewbieProtectionEnabled() ? "Enabled" : "Disabled"));
map.put("Kill Abuse", getMapEntry(Settings.isKillAbuseEnabled() ? "Enabled" : "Disabled"));
map.put("Update Check", getMapEntry(!Settings.isUpdateCheck() ? "Disabled" : !Settings.isAutoUpdate() ? "Update Check" : "Auto Update"));
map.put("PvP Blood", getMapEntry(Settings.isPvpBlood() ? "Enabled" : "Disabled"));
map.put("Drop Mode", getMapEntry(Settings.getDropMode().toString()));
map.put("Combat Nametags", getMapEntry(Settings.useNameTag() ? "Enabled" : "Disabled"));
map.put("Database Type", getMapEntry(plugin.getStorageManager().getStorage().getDatabaseType().toString()));
if (Settings.isBossBarEnabled() && Settings.isActionBarEnabled())
map.put("Display Type", getMapEntry("Both"));
else if (!Settings.isBossBarEnabled() && !Settings.isActionBarEnabled())
map.put("Display Type", getMapEntry("None"));
else
map.put("Display Type", getMapEntry(Settings.isBossBarEnabled() ? "Only Bossbar" : "Only Actionbar"));
return map;
}
metrics.addCustomChart(
new Metrics.SimplePie("time_in_combat", () -> Settings.isInCombatEnabled() ? Settings.getTimeInCombat() + " seconds" : "Disabled"));

metrics.addCustomChart(new Metrics.DrilldownPie("features", () -> {
final Map<String, Map<String, Integer>> map = new HashMap<>();

map.put("Newbie Protection", getMapEntry(Settings.isNewbieProtectionEnabled() ? "Enabled" : "Disabled"));
map.put("Kill Abuse", getMapEntry(Settings.isKillAbuseEnabled() ? "Enabled" : "Disabled"));
map.put("Update Check", getMapEntry(!Settings.isUpdateCheck() ? "Disabled" : !Settings.isAutoUpdate() ? "Update Check" : "Auto Update"));
map.put("PvP Blood", getMapEntry(Settings.isPvpBlood() ? "Enabled" : "Disabled"));
map.put("Drop Mode", getMapEntry(Settings.getDropMode().toString()));
map.put("Combat Nametags", getMapEntry(Settings.useNameTag() ? "Enabled" : "Disabled"));
map.put("Database Type", getMapEntry(plugin.getStorageManager().getStorage().getDatabaseType().toString()));
if (Settings.isBossBarEnabled() && Settings.isActionBarEnabled())
map.put("Display Type", getMapEntry("Both"));
else if (!Settings.isBossBarEnabled() && !Settings.isActionBarEnabled())
map.put("Display Type", getMapEntry("None"));
else
map.put("Display Type", getMapEntry(Settings.isBossBarEnabled() ? "Only Bossbar" : "Only Actionbar"));
return map;
}));

if (Settings.isInCombatEnabled()) {
metrics.addCustomChart(new Metrics.SimplePie("player_drops_on_logout", new Callable<String>() {
@Override
public String call() {
if (!Settings.isKillOnLogout())
return "Kill On Logout Disabled";
else if (!Settings.isDropInventory() && !Settings.isDropExp() && !Settings.isDropArmor())
return "Keep Everything";
else if (Settings.isDropInventory() && Settings.isDropExp() && Settings.isDropArmor())
return "Drop Everything";
else if (!Settings.isDropInventory() && !Settings.isDropArmor() && Settings.isDropExp())
return "Only Drop Exp";
else if (!Settings.isDropInventory() && !Settings.isDropExp() && Settings.isDropArmor())
return "Only Drop Armor";
else if (Settings.isDropInventory() && !Settings.isDropExp() && !Settings.isDropArmor())
return "Only Drop Inventory";
else if (!Settings.isDropInventory() && Settings.isDropExp() && Settings.isDropArmor())
return "Only Keep Inventory";
else if (Settings.isDropInventory() && Settings.isDropExp() && !Settings.isDropArmor())
return "Only Keep Armor";
else if (Settings.isDropInventory() && !Settings.isDropExp() && Settings.isDropArmor())
return "Only Keep Exp";
return "";
}
metrics.addCustomChart(new Metrics.SimplePie("player_drops_on_logout", () -> {
if (!Settings.isKillOnLogout())
return "Kill On Logout Disabled";
else if (!Settings.isDropInventory() && !Settings.isDropExp() && !Settings.isDropArmor())
return "Keep Everything";
else if (Settings.isDropInventory() && Settings.isDropExp() && Settings.isDropArmor())
return "Drop Everything";
else if (!Settings.isDropInventory() && !Settings.isDropArmor() && Settings.isDropExp())
return "Only Drop Exp";
else if (!Settings.isDropInventory() && !Settings.isDropExp() && Settings.isDropArmor())
return "Only Drop Armor";
else if (Settings.isDropInventory() && !Settings.isDropExp() && !Settings.isDropArmor())
return "Only Drop Inventory";
else if (!Settings.isDropInventory() && Settings.isDropExp() && Settings.isDropArmor())
return "Only Keep Inventory";
else if (Settings.isDropInventory() && Settings.isDropExp() && !Settings.isDropArmor())
return "Only Keep Armor";
else if (Settings.isDropInventory() && !Settings.isDropExp() && Settings.isDropArmor())
return "Only Keep Exp";
return "";
}));

}

metrics.addCustomChart(new Metrics.AdvancedPie("hooks", new Callable<Map<String, Integer>>() {
@Override
public Map<String, Integer> call() {
final Map<String, Integer> valueMap = new HashMap<>();
for (final Entry<Hook, Dependency> entry : plugin.getDependencyManager().getDependencies().entrySet()) {
valueMap.put(entry.getValue().getName(), 1);
}
final List<String> extra = Arrays.asList("GSit", "NametagEdit", "GriefPrevention", "RedProtect", "GriefDefender", "Citizens",
"KingdomsX", "CMI", "TAB");
for (final String plugin : extra) {
if (Bukkit.getPluginManager().isPluginEnabled(plugin)) {
valueMap.put(plugin, 1);
}
metrics.addCustomChart(new Metrics.AdvancedPie("hooks", () -> {
final Map<String, Integer> valueMap = new HashMap<>();
for (final Entry<Hook, Dependency> entry : plugin.getDependencyManager().getDependencies().entrySet()) {
valueMap.put(entry.getValue().getName(), 1);
}
final List<String> extra = Arrays.asList("GSit", "NametagEdit", "RedProtect", "GriefDefender", "Citizens",
"KingdomsX", "CMI", "TAB");
for (final String extraPlugin : extra) {
if (Bukkit.getPluginManager().isPluginEnabled(extraPlugin)) {
valueMap.put(extraPlugin, 1);
}
return valueMap;
}
return valueMap;
}));

metrics.addCustomChart(new Metrics.SimplePie("auto_soup", new Callable<String>() {
@Override
public String call() {
return Settings.isAutoSoupEnabled() ? "Enabled" : "Disabled";
}
}));
metrics.addCustomChart(new Metrics.SimplePie("auto_soup", () -> Settings.isAutoSoupEnabled() ? "Enabled" : "Disabled"));

metrics.addCustomChart(new Metrics.SimplePie("locale", new Callable<String>() {
@Override
public String call() throws Exception {
return Settings.getLocale();
}
}));
metrics.addCustomChart(new Metrics.SimplePie("locale", Settings::getLocale));

metrics.addCustomChart(new Metrics.SingleLineChart("players_in_combat", new Callable<Integer>() {
@Override
public Integer call() throws Exception {
return PvPManager.getInstance().getPlayerHandler().getPlayersInCombat().size();
}
}));
metrics.addCustomChart(
new Metrics.SingleLineChart("players_in_combat", () -> PvPManager.getInstance().getPlayerHandler().getPlayersInCombat().size()));
}

private Map<String, Integer> getMapEntry(final String key) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,6 @@
import me.NoChance.PvPManager.Player.ProtectionResult;
import me.NoChance.PvPManager.Settings.Messages;
import me.NoChance.PvPManager.Settings.Settings;
import me.NoChance.PvPManager.Utils.ChatUtils;
import me.NoChance.PvPManager.Utils.CombatUtils;
import me.chancesd.pvpmanager.utils.ScheduleUtils;
import me.NoChance.PvPManager.Utils.MCVersion;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,6 @@

import me.NoChance.PvPManager.PvPManager;
import me.NoChance.PvPManager.PvPlayer;
import me.NoChance.PvPManager.Dependencies.Hook;
import me.NoChance.PvPManager.Dependencies.Interfaces.WorldGuardDependency;
import me.NoChance.PvPManager.Events.PlayerCombatLogEvent;
import me.NoChance.PvPManager.Player.ProtectionResult;
import me.NoChance.PvPManager.Settings.Settings;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,6 @@
import me.NoChance.PvPManager.Managers.DisplayManager;
import me.NoChance.PvPManager.Managers.PlayerHandler;
import me.NoChance.PvPManager.Settings.Messages;
import me.NoChance.PvPManager.Settings.Settings;
import me.NoChance.PvPManager.Utils.CombatUtils;
import me.chancesd.sdutils.library.PluginLibraries;
import me.chancesd.sdutils.utils.Log;
import me.chancesd.pvpmanager.managers.StorageManager;
Expand Down
5 changes: 3 additions & 2 deletions pvpmanager/src/main/java/me/NoChance/PvPManager/PvPlayer.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package me.NoChance.PvPManager;

import java.util.EnumMap;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ExecutorService;
Expand Down Expand Up @@ -43,8 +44,8 @@ public class PvPlayer extends EcoPlayer {
private long taggedTime;
private NewbieTask newbieTask;
private PvPlayer enemy;
private final HashMap<String, Integer> victim = new HashMap<>();
private final HashMap<Material, Long> itemCooldown = new HashMap<>();
private final Map<String, Integer> victim = new HashMap<>();
private final Map<Material, Long> itemCooldown = new EnumMap<>(Material.class);
private final PvPManager plugin;
private NameTag nametag;
private static ExecutorService executor;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@
public class BukkitNameTag extends NameTag {

private Team inCombat;
private Team pvpOn;
private Team pvpOff;
private Team pvpOnTeam;
private Team pvpOffTeam;
private Team previousTeam;
private String previousTeamName;
private final String combatTeamID;
Expand Down Expand Up @@ -53,30 +53,30 @@ private void setup() {
if (Settings.isToggleNametagsEnabled()) {
if (!pvpOnPrefix.isEmpty()) {
if (scoreboard.getTeam(PVPON) != null) {
pvpOn = scoreboard.getTeam(PVPON);
pvpOnTeam = scoreboard.getTeam(PVPON);
} else {
pvpOn = scoreboard.registerNewTeam(PVPON);
pvpOn.setCanSeeFriendlyInvisibles(false);
pvpOn.setPrefix(pvpOnPrefix);
pvpOnTeam = scoreboard.registerNewTeam(PVPON);
pvpOnTeam.setCanSeeFriendlyInvisibles(false);
pvpOnTeam.setPrefix(pvpOnPrefix);
if (MCVersion.isAtLeast(MCVersion.V1_13)) {
final ChatColor nameColor = getLastColor(pvpOnPrefix);
if (nameColor != null) {
pvpOn.setColor(nameColor);
pvpOnTeam.setColor(nameColor);
}
}
}
}
if (!pvpOffPrefix.isEmpty()) {
if (scoreboard.getTeam(PVPOFF) != null) {
pvpOff = scoreboard.getTeam(PVPOFF);
pvpOffTeam = scoreboard.getTeam(PVPOFF);
} else {
pvpOff = scoreboard.registerNewTeam(PVPOFF);
pvpOff.setCanSeeFriendlyInvisibles(false);
pvpOff.setPrefix(pvpOffPrefix);
pvpOffTeam = scoreboard.registerNewTeam(PVPOFF);
pvpOffTeam.setCanSeeFriendlyInvisibles(false);
pvpOffTeam.setPrefix(pvpOffPrefix);
if (MCVersion.isAtLeast(MCVersion.V1_13)) {
final ChatColor nameColor = getLastColor(pvpOffPrefix);
if (nameColor != null) {
pvpOff.setColor(nameColor);
pvpOffTeam.setColor(nameColor);
}
}
}
Expand Down Expand Up @@ -159,15 +159,15 @@ public final void restoreNametag() {
@Override
public final void setPvP(final boolean state) {
if (state) {
if (pvpOn == null) {
if (pvpOnTeam == null) {
restoreNametag();
} else {
pvpOn.addEntry(pvPlayer.getName());
pvpOnTeam.addEntry(pvPlayer.getName());
}
} else if (pvpOff == null) {
} else if (pvpOffTeam == null) {
restoreNametag();
} else {
pvpOff.addEntry(pvPlayer.getName());
pvpOffTeam.addEntry(pvPlayer.getName());
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,10 +76,9 @@ void onPlayerLogoutTest() {

listener.onPlayerLogout(new PlayerQuitEvent(player, ""));
verify(player, times(1)).setHealth(0);
assertFalse(pvPlayer.isInCombat());

assertEquals(2, ph.getPlayers().size()); // attacker and defender
listener.onPlayerLogoutMonitor(new PlayerQuitEvent(defender, ""));
listener.onPlayerLogoutMonitor(new PlayerQuitEvent(player, ""));
assertEquals(1, ph.getPlayers().size());
}

Expand Down

0 comments on commit 4e67938

Please sign in to comment.