diff --git a/war/src/main/java/com/tommytony/war/War.java b/war/src/main/java/com/tommytony/war/War.java index e3363fc..1291aea 100644 --- a/war/src/main/java/com/tommytony/war/War.java +++ b/war/src/main/java/com/tommytony/war/War.java @@ -361,6 +361,19 @@ public class War extends JavaPlugin { String loadoutName = namedParams.get("loadout"); HashMap loadout = team.getInventories().getLoadouts().get(loadoutName); if (loadout == null) { + // Check if any loadouts exist, if not gotta use the default inventories then add the newly created one + if(team.getInventories().getLoadouts().isEmpty()) { + Warzone warzone = Warzone.getZoneByTeam(team); + for (String key : warzone.getDefaultInventories().resolveLoadouts().keySet()) { + HashMap transferredLoadout = warzone.getDefaultInventories().resolveLoadouts().get(key); + if (transferredLoadout != null) { + team.getInventories().getLoadouts().put(key, transferredLoadout); + } else { + War.war.log("Failed to transfer loadout " + key + " down to team " + team.getName() + " in warzone " + warzone.getName(), Level.WARNING); + } + } + } + loadout = new HashMap(); team.getInventories().getLoadouts().put(loadoutName, loadout); returnMessage.append(loadoutName + " respawn loadout added."); @@ -430,6 +443,19 @@ public class War extends JavaPlugin { HashMap loadout = warzone.getDefaultInventories().getLoadouts().get(loadoutName); if (loadout == null) { loadout = new HashMap(); + + // Check if any loadouts exist, if not gotta use the default inventories then add the newly created one + if(warzone.getDefaultInventories().getLoadouts().isEmpty()) { + for (String key : warzone.getDefaultInventories().resolveLoadouts().keySet()) { + HashMap transferredLoadout = warzone.getDefaultInventories().resolveLoadouts().get(key); + if (transferredLoadout != null) { + warzone.getDefaultInventories().getLoadouts().put(key, transferredLoadout); + } else { + War.war.log("Failed to transfer loadout " + key + " down to warzone " + warzone.getName(), Level.WARNING); + } + } + } + warzone.getDefaultInventories().getLoadouts().put(loadoutName, loadout); returnMessage.append(loadoutName + " respawn loadout added."); } else { diff --git a/war/src/main/java/com/tommytony/war/Warzone.java b/war/src/main/java/com/tommytony/war/Warzone.java index d30df83..48001e0 100644 --- a/war/src/main/java/com/tommytony/war/Warzone.java +++ b/war/src/main/java/com/tommytony/war/Warzone.java @@ -1,5 +1,6 @@ package com.tommytony.war; +import java.io.File; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; @@ -127,6 +128,18 @@ public class Warzone { return null; } + public static Warzone getZoneByTeam(Team team) { + for (Warzone warzone : War.war.getWarzones()) { + for (Team teamToCheck : warzone.getTeams()) { + if (teamToCheck.getName().equals(team.getName())) { + return warzone; + } + } + + } + return null; + } + public boolean ready() { if (this.volume.hasTwoCorners() && !this.volume.tooSmall() && !this.volume.tooBig()) { return true;