mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2025-01-19 08:55:26 +01:00
Modify custom items loading to permit registering of repairables from these configs.
Move loading of the main repairables to below the custom items so that repair.*.yml will over-write any custom items when the list is processed and repairables registered.
This commit is contained in:
parent
9546cc42b2
commit
0a15cb1e13
@ -11,6 +11,7 @@ import org.bukkit.inventory.ItemStack;
|
|||||||
|
|
||||||
import com.gmail.nossr50.mcMMO;
|
import com.gmail.nossr50.mcMMO;
|
||||||
import com.gmail.nossr50.datatypes.mods.CustomItem;
|
import com.gmail.nossr50.datatypes.mods.CustomItem;
|
||||||
|
import com.gmail.nossr50.skills.repair.Repairable;
|
||||||
|
|
||||||
public class CustomArmorConfig extends ModConfigLoader{
|
public class CustomArmorConfig extends ModConfigLoader{
|
||||||
private static CustomArmorConfig instance;
|
private static CustomArmorConfig instance;
|
||||||
@ -23,6 +24,8 @@ public class CustomArmorConfig extends ModConfigLoader{
|
|||||||
return instance;
|
return instance;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private List<Repairable> repairables;
|
||||||
|
|
||||||
public List<Integer> customBootIDs = new ArrayList<Integer>();
|
public List<Integer> customBootIDs = new ArrayList<Integer>();
|
||||||
public List<Integer> customChestplateIDs = new ArrayList<Integer>();
|
public List<Integer> customChestplateIDs = new ArrayList<Integer>();
|
||||||
public List<Integer> customHelmetIDs = new ArrayList<Integer>();
|
public List<Integer> customHelmetIDs = new ArrayList<Integer>();
|
||||||
@ -51,6 +54,7 @@ public class CustomArmorConfig extends ModConfigLoader{
|
|||||||
@Override
|
@Override
|
||||||
protected void loadKeys() {
|
protected void loadKeys() {
|
||||||
plugin.getLogger().info("Loading mcMMO armor.yml File...");
|
plugin.getLogger().info("Loading mcMMO armor.yml File...");
|
||||||
|
repairables = new ArrayList<Repairable>();
|
||||||
|
|
||||||
loadArmor("Boots", customBootIDs);
|
loadArmor("Boots", customBootIDs);
|
||||||
loadArmor("Chestplates", customChestplateIDs);
|
loadArmor("Chestplates", customChestplateIDs);
|
||||||
@ -99,4 +103,9 @@ public class CustomArmorConfig extends ModConfigLoader{
|
|||||||
customArmor.put(id, armor);
|
customArmor.put(id, armor);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<Repairable> getLoadedRepairables() {
|
||||||
|
if(repairables == null) return new ArrayList<Repairable>();
|
||||||
|
return repairables;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -11,6 +11,7 @@ import org.bukkit.inventory.ItemStack;
|
|||||||
|
|
||||||
import com.gmail.nossr50.mcMMO;
|
import com.gmail.nossr50.mcMMO;
|
||||||
import com.gmail.nossr50.datatypes.mods.CustomTool;
|
import com.gmail.nossr50.datatypes.mods.CustomTool;
|
||||||
|
import com.gmail.nossr50.skills.repair.Repairable;
|
||||||
|
|
||||||
public class CustomToolsConfig extends ModConfigLoader {
|
public class CustomToolsConfig extends ModConfigLoader {
|
||||||
private static CustomToolsConfig instance;
|
private static CustomToolsConfig instance;
|
||||||
@ -23,6 +24,8 @@ public class CustomToolsConfig extends ModConfigLoader {
|
|||||||
return instance;
|
return instance;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private List<Repairable> repairables;
|
||||||
|
|
||||||
public List<Integer> customAxeIDs = new ArrayList<Integer>();
|
public List<Integer> customAxeIDs = new ArrayList<Integer>();
|
||||||
public List<Integer> customBowIDs = new ArrayList<Integer>();
|
public List<Integer> customBowIDs = new ArrayList<Integer>();
|
||||||
public List<Integer> customHoeIDs = new ArrayList<Integer>();
|
public List<Integer> customHoeIDs = new ArrayList<Integer>();
|
||||||
@ -53,6 +56,7 @@ public class CustomToolsConfig extends ModConfigLoader {
|
|||||||
@Override
|
@Override
|
||||||
protected void loadKeys() {
|
protected void loadKeys() {
|
||||||
plugin.getLogger().info("Loading mcMMO tools.yml File...");
|
plugin.getLogger().info("Loading mcMMO tools.yml File...");
|
||||||
|
repairables = new ArrayList<Repairable>();
|
||||||
|
|
||||||
loadTool("Axes", customAxeIDs);
|
loadTool("Axes", customAxeIDs);
|
||||||
loadTool("Bows", customBowIDs);
|
loadTool("Bows", customBowIDs);
|
||||||
@ -106,4 +110,9 @@ public class CustomToolsConfig extends ModConfigLoader {
|
|||||||
customTools.put(id, tool);
|
customTools.put(id, tool);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<Repairable> getLoadedRepairables() {
|
||||||
|
if(repairables == null) return new ArrayList<Repairable>();
|
||||||
|
return repairables;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -36,6 +36,7 @@ import net.shatteredlands.shatt.backup.ZipLibrary;
|
|||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -84,24 +85,28 @@ public class mcMMO extends JavaPlugin {
|
|||||||
TreasuresConfig.getInstance();
|
TreasuresConfig.getInstance();
|
||||||
HiddenConfig.getInstance();
|
HiddenConfig.getInstance();
|
||||||
|
|
||||||
//Load repair configs and register them
|
List<Repairable> repairables = new ArrayList<Repairable>();
|
||||||
RepairConfigManager rManager = new RepairConfigManager(this);
|
|
||||||
List<Repairable> repairables = rManager.getLoadedRepairables();
|
|
||||||
repairManager = RepairManagerFactory.getRepairManager(repairables.size());
|
|
||||||
repairManager.registerRepairables(repairables);
|
|
||||||
|
|
||||||
if (configInstance.getToolModsEnabled()) {
|
if (configInstance.getToolModsEnabled()) {
|
||||||
CustomToolsConfig.getInstance().load();
|
CustomToolsConfig.getInstance().load();
|
||||||
|
repairables.addAll(CustomToolsConfig.getInstance().getLoadedRepairables());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (configInstance.getArmorModsEnabled()) {
|
if (configInstance.getArmorModsEnabled()) {
|
||||||
CustomArmorConfig.getInstance().load();
|
CustomArmorConfig.getInstance().load();
|
||||||
|
repairables.addAll(CustomArmorConfig.getInstance().getLoadedRepairables());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (configInstance.getBlockModsEnabled()) {
|
if (configInstance.getBlockModsEnabled()) {
|
||||||
CustomBlocksConfig.getInstance().load();
|
CustomBlocksConfig.getInstance().load();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Load repair configs, make manager, and register them at this time
|
||||||
|
RepairConfigManager rManager = new RepairConfigManager(this);
|
||||||
|
repairables.addAll(rManager.getLoadedRepairables());
|
||||||
|
repairManager = RepairManagerFactory.getRepairManager(repairables.size());
|
||||||
|
repairManager.registerRepairables(repairables);
|
||||||
|
|
||||||
if (!configInstance.getUseMySQL()) {
|
if (!configInstance.getUseMySQL()) {
|
||||||
Users.loadUsers();
|
Users.loadUsers();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user