Skip to content

Commit

Permalink
More more changes
Browse files Browse the repository at this point in the history
  • Loading branch information
ChanceSD committed Oct 27, 2023
1 parent 64b4c75 commit 4f99618
Show file tree
Hide file tree
Showing 10 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,98 +26,70 @@ 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.getActionBarMessage().isEmpty())
map.put("Display Type", getMapEntry("Both"));
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.getActionBarMessage().isEmpty())
map.put("Display Type", getMapEntry("Both"));
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("Towny", "TAB", "NametagEdit", "GriefPrevention", "RedProtect", "GriefDefender", "Citizens");
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("Towny", "TAB", "NametagEdit", "GriefPrevention", "RedProtect", "GriefDefender", "Citizens");
for (final String pl : extra) {
if (Bukkit.getPluginManager().isPluginEnabled(pl)) {
valueMap.put(pl, 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 @@ -39,7 +39,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 @@ -37,6 +37,7 @@
import me.NoChance.PvPManager.Player.ProtectionResult;
import me.NoChance.PvPManager.Settings.Settings;
import me.NoChance.PvPManager.Utils.CombatUtils;
import me.NoChance.PvPManager.Utils.MCVersion;
import me.chancesd.sdutils.utils.Log;
import net.milkbowl.vault.economy.Economy;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,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 @@ -24,8 +24,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.utils.Log;
import me.chancesd.pvpmanager.managers.StorageManager;
import me.chancesd.pvpmanager.managers.UpdateManager;
Expand Down
9 changes: 5 additions & 4 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 All @@ -20,8 +21,8 @@
import me.NoChance.PvPManager.Settings.Messages;
import me.NoChance.PvPManager.Settings.Settings;
import me.NoChance.PvPManager.Tasks.NewbieTask;
import me.NoChance.PvPManager.Utils.ChatUtils;
import me.NoChance.PvPManager.Utils.CombatUtils;
import me.NoChance.PvPManager.Utils.MCVersion;
import me.chancesd.pvpmanager.player.nametag.BukkitNameTag;
import me.chancesd.pvpmanager.player.nametag.NameTag;
import me.chancesd.pvpmanager.storage.fields.UserDataFields;
Expand All @@ -41,8 +42,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 Expand Up @@ -231,7 +232,7 @@ public final void addVictim(final Player victimPlayer) {
public final int getKillAbuseCount(final Player victimPlayer) {
return victim.getOrDefault(victimPlayer.getName(), 0);
}

public final boolean hasItemCooldown(final Material material) {
final Long time = itemCooldown.get(material);
if (time == null)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,6 @@ public enum DropMode {
private static boolean blockInteractInCombat;
private static boolean untagEnemy;
private static boolean killAbuseWarn;
private static ChatColor teamColor;
private static String actionBarMessage;
private static String actionBarSymbol;
private static int actionBarTotalBars;
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 4f99618

Please sign in to comment.