From 5ff0c3d58ba6a6d804d4c54679b15aa106228089 Mon Sep 17 00:00:00 2001 From: Bernhard Bonigl Date: Fri, 26 Sep 2014 18:06:50 +0200 Subject: [PATCH] Fix modifiers on bows rendering with minimal stuff and bla --- .../java/tconstruct/items/tools/BowBase.java | 57 +++++++++++-------- .../tconstruct/library/tools/ToolCore.java | 16 +++--- 2 files changed, 40 insertions(+), 33 deletions(-) diff --git a/src/main/java/tconstruct/items/tools/BowBase.java b/src/main/java/tconstruct/items/tools/BowBase.java index 18422ac5626..2d65129832b 100644 --- a/src/main/java/tconstruct/items/tools/BowBase.java +++ b/src/main/java/tconstruct/items/tools/BowBase.java @@ -262,6 +262,7 @@ public void registerIcons (IIconRegister iconRegister) effectIcons2.clear(); effectIcons3.clear(); for(Map.Entry entry : effectStrings.entrySet()) { + effectIcons.put(entry.getKey(), iconRegister.registerIcon(entry.getValue())); effectIcons1.put(entry.getKey(), iconRegister.registerIcon(entry.getValue() + "_1")); effectIcons2.put(entry.getKey(), iconRegister.registerIcon(entry.getValue() + "_2")); effectIcons3.put(entry.getKey(), iconRegister.registerIcon(entry.getValue() + "_3")); @@ -433,37 +434,37 @@ else if (renderPass == 3) // Extra if (renderPass == getPartAmount()) { if (tags.hasKey("Effect1")) - return getCorrectIcon(effectIcons, tags.getInteger("Effect1")); + return getCorrectIcon2(effectIcons, tags.getInteger("Effect1")); } else if (renderPass == getPartAmount() + 1) { if (tags.hasKey("Effect2")) - return getCorrectIcon(effectIcons, tags.getInteger("Effect2")); + return getCorrectIcon2(effectIcons, tags.getInteger("Effect2")); } else if (renderPass == getPartAmount() + 2) { if (tags.hasKey("Effect3")) - return getCorrectIcon(effectIcons, tags.getInteger("Effect3")); + return getCorrectIcon2(effectIcons, tags.getInteger("Effect3")); } else if (renderPass == getPartAmount() + 3) { if (tags.hasKey("Effect4")) - return getCorrectIcon(effectIcons, tags.getInteger("Effect4")); + return getCorrectIcon2(effectIcons, tags.getInteger("Effect4")); } else if (renderPass == getPartAmount() + 4) { if (tags.hasKey("Effect5")) - return getCorrectIcon(effectIcons, tags.getInteger("Effect5")); + return getCorrectIcon2(effectIcons, tags.getInteger("Effect5")); } else if (renderPass == getPartAmount() + 5) { if (tags.hasKey("Effect6")) - return getCorrectIcon(effectIcons, tags.getInteger("Effect6")); + return getCorrectIcon2(effectIcons, tags.getInteger("Effect6")); } } return blankSprite; @@ -471,6 +472,14 @@ else if (renderPass == getPartAmount() + 5) return emptyIcon; } + protected IIcon getCorrectIcon2(Map icons, int id) + { + if(!icons.containsKey(id)) + return blankSprite; + + return icons.get(id); + } + /* Animations */ @Override public void registerPartPaths (int index, String[] location) @@ -574,37 +583,37 @@ else if (renderPass == 3) // Extra if (renderPass == getPartAmount()) { if (tags.hasKey("Effect1")) - return getCorrectIcon(effectIcons1, tags.getInteger("Effect1")); + return getCorrectIcon2(effectIcons1, tags.getInteger("Effect1")); } else if (renderPass == getPartAmount() + 1) { if (tags.hasKey("Effect2")) - return getCorrectIcon(effectIcons1, tags.getInteger("Effect2")); + return getCorrectIcon2(effectIcons1, tags.getInteger("Effect2")); } else if (renderPass == getPartAmount() + 2) { if (tags.hasKey("Effect3")) - return getCorrectIcon(effectIcons1, tags.getInteger("Effect3")); + return getCorrectIcon2(effectIcons1, tags.getInteger("Effect3")); } else if (renderPass == getPartAmount() + 3) { if (tags.hasKey("Effect4")) - return getCorrectIcon(effectIcons1, tags.getInteger("Effect4")); + return getCorrectIcon2(effectIcons1, tags.getInteger("Effect4")); } else if (renderPass == getPartAmount() + 4) { if (tags.hasKey("Effect5")) - return getCorrectIcon(effectIcons1, tags.getInteger("Effect5")); + return getCorrectIcon2(effectIcons1, tags.getInteger("Effect5")); } else if (renderPass == getPartAmount() + 5) { if (tags.hasKey("Effect6")) - return getCorrectIcon(effectIcons1, tags.getInteger("Effect6")); + return getCorrectIcon2(effectIcons1, tags.getInteger("Effect6")); } else { @@ -651,37 +660,37 @@ else if (renderPass == 3) // Extra if (renderPass == getPartAmount()) { if (tags.hasKey("Effect1")) - return getCorrectIcon(effectIcons2, tags.getInteger("Effect1")); + return getCorrectIcon2(effectIcons2, tags.getInteger("Effect1")); } else if (renderPass == getPartAmount() + 1) { if (tags.hasKey("Effect2")) - return getCorrectIcon(effectIcons2, tags.getInteger("Effect2")); + return getCorrectIcon2(effectIcons2, tags.getInteger("Effect2")); } else if (renderPass == getPartAmount() + 2) { if (tags.hasKey("Effect3")) - return getCorrectIcon(effectIcons2, tags.getInteger("Effect3")); + return getCorrectIcon2(effectIcons2, tags.getInteger("Effect3")); } else if (renderPass == getPartAmount() + 3) { if (tags.hasKey("Effect4")) - return getCorrectIcon(effectIcons2, tags.getInteger("Effect4")); + return getCorrectIcon2(effectIcons2, tags.getInteger("Effect4")); } else if (renderPass == getPartAmount() + 4) { if (tags.hasKey("Effect5")) - return getCorrectIcon(effectIcons2, tags.getInteger("Effect5")); + return getCorrectIcon2(effectIcons2, tags.getInteger("Effect5")); } else if (renderPass == getPartAmount() + 5) { if (tags.hasKey("Effect6")) - return getCorrectIcon(effectIcons2, tags.getInteger("Effect6")); + return getCorrectIcon2(effectIcons2, tags.getInteger("Effect6")); } else { @@ -728,37 +737,37 @@ else if (renderPass == 3) // Extra if (renderPass == getPartAmount()) { if (tags.hasKey("Effect1")) - return getCorrectIcon(effectIcons3, tags.getInteger("Effect1")); + return getCorrectIcon2(effectIcons3, tags.getInteger("Effect1")); } else if (renderPass == getPartAmount() + 1) { if (tags.hasKey("Effect2")) - return getCorrectIcon(effectIcons3, tags.getInteger("Effect2")); + return getCorrectIcon2(effectIcons3, tags.getInteger("Effect2")); } else if (renderPass == getPartAmount() + 2) { if (tags.hasKey("Effect3")) - return getCorrectIcon(effectIcons3, tags.getInteger("Effect3")); + return getCorrectIcon2(effectIcons3, tags.getInteger("Effect3")); } else if (renderPass == getPartAmount() + 3) { if (tags.hasKey("Effect4")) - return getCorrectIcon(effectIcons3, tags.getInteger("Effect4")); + return getCorrectIcon2(effectIcons3, tags.getInteger("Effect4")); } else if (renderPass == getPartAmount() + 4) { if (tags.hasKey("Effect5")) - return getCorrectIcon(effectIcons3, tags.getInteger("Effect5")); + return getCorrectIcon2(effectIcons3, tags.getInteger("Effect5")); } else if (renderPass == getPartAmount() + 5) { if (tags.hasKey("Effect6")) - return getCorrectIcon(effectIcons3, tags.getInteger("Effect6")); + return getCorrectIcon2(effectIcons3, tags.getInteger("Effect6")); } else { diff --git a/src/main/java/tconstruct/library/tools/ToolCore.java b/src/main/java/tconstruct/library/tools/ToolCore.java index 777ab4882ca..13a438dfc8e 100644 --- a/src/main/java/tconstruct/library/tools/ToolCore.java +++ b/src/main/java/tconstruct/library/tools/ToolCore.java @@ -215,16 +215,14 @@ public void registerIcons (IIconRegister iconRegister) private void addIcons(HashMap textures, HashMap icons, IIconRegister iconRegister, String standard) { - // compatibility mode: no specific textures - if(PHConstruct.minimalTextures) - textures.clear(); - icons.clear(); - for(Map.Entry entry : textures.entrySet()) - { - if(TextureHelper.itemTextureExists(entry.getValue())) - icons.put(entry.getKey(), iconRegister.registerIcon(entry.getValue())); - } + + if(!PHConstruct.minimalTextures) // compatibility mode: no specific textures + for(Map.Entry entry : textures.entrySet()) + { + if(TextureHelper.itemTextureExists(entry.getValue())) + icons.put(entry.getKey(), iconRegister.registerIcon(entry.getValue())); + } if(standard != null && !standard.isEmpty()) { standard = getDefaultTexturePath() + "/" + standard;