diff options
author | Trương Hoàng Long <longtruong2411@gmail.com> | 2022-05-04 03:03:43 +0200 |
---|---|---|
committer | Trương Hoàng Long <longtruong2411@gmail.com> | 2022-05-04 03:03:43 +0200 |
commit | 27ce53e6550da16a8c89401b92f204810cd61eb9 (patch) | |
tree | 95dbb2b7aafcd4e662f9ec864aa933e8e9ebae23 /src/main/java/me/xmrvizzy/skyblocker/skyblock | |
parent | 54912e9c79227f9610c3254098a623ca48f74e6c (diff) | |
download | Skyblocker-27ce53e6550da16a8c89401b92f204810cd61eb9.tar.gz Skyblocker-27ce53e6550da16a8c89401b92f204810cd61eb9.tar.bz2 Skyblocker-27ce53e6550da16a8c89401b92f204810cd61eb9.zip |
Fix some items having the wrong texture
Added variants for some blocks
Added missing enchantment glints
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/skyblock')
-rw-r--r-- | src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemFixerUpper.java | 70 | ||||
-rw-r--r-- | src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemStackBuilder.java | 13 |
2 files changed, 73 insertions, 10 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemFixerUpper.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemFixerUpper.java index b694f451..4c56546d 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemFixerUpper.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemFixerUpper.java @@ -27,12 +27,11 @@ public class ItemFixerUpper { Map.entry("minecraft:netherbrick", "minecraft:nether_brick"), Map.entry("minecraft:stained_hardened_clay", "minecraft:terracotta"), Map.entry("minecraft:quartz_ore", "minecraft:nether_quartz_ore"), - Map.entry("minecraft:fish", "minecraft:cod"), - Map.entry("minecraft:cooked_fish", "minecraft:cooked_cod"), Map.entry("minecraft:red_flower", "minecraft:poppy"), Map.entry("minecraft:tallgrass", "minecraft:grass"), Map.entry("minecraft:stone_slab2", "minecraft:red_sandstone_slab"), - Map.entry("minecraft:waterlily", "minecraft:lily_pad") + Map.entry("minecraft:waterlily", "minecraft:lily_pad"), + Map.entry("minecraft:stone_stairs", "minecraft:cobblestone_stairs") ); private final static String[] DYE_COLORS = { @@ -136,6 +135,63 @@ public class ItemFixerUpper { "minecraft:creeper_head" }; + private final static String[] FISH_VARIANTS = { + "minecraft:cod", + "minecraft:salmon", + "minecraft:tropical_fish", + "minecraft:pufferfish" + }; + + private final static String[] COOKED_FISH_VARIANTS = { + "minecraft:cooked_cod", + "minecraft:cooked_salmon" + }; + + private final static String[] STONE_VARIANTS = { + "minecraft:stone", + "minecraft:granite", + "minecraft:polished_granite", + "minecraft:diorite", + "minecraft:polished_diorite", + "minecraft:andesite", + "minecraft:polished_andesite" + }; + + private final static String[] STONE_SLAB_VARIANTS = { + "minecraft:smooth_stone_slab", + "minecraft:sandstone_slab", + "minecraft:barrier", // doesn't exist + "minecraft:cobblestone_slab", + "minecraft:brick_slab", + "minecraft:stone_brick_slab", + "minecraft:nether_brick_slab", + "minecraft:quartz_slab" + }; + + private final static String[] COBBLESTONE_WALL_VARIANTS = { + "minecraft:cobblestone_wall", + "minecraft:mossy_cobblestone_wall" + }; + + private final static String[] DIRT_VARIANTS = { + "minecraft:dirt", + "minecraft:coarse_dirt", + "minecraft:podzol" + }; + + private final static String[] SPONGE_VARIANTS = { + "minecraft:sponge", + "minecraft:wet_sponge" + }; + + private final static String[] PRISMARINE_VARIANTS = { + "minecraft:prismarine", + "minecraft:prismarine_bricks", + "minecraft:dark_prismarine" + }; + + // TODO: map potions to their correct colors + public static String convertItemId(String id, int damage) { if (id.equals("minecraft:dye")) return DYE_COLORS[damage]; if (id.equals("minecraft:log2")) return "minecraft:" + TREE_VARIANTS[damage + 4] + "log"; @@ -145,6 +201,14 @@ public class ItemFixerUpper { if (id.equals("minecraft:spawn_egg")) return SPAWN_EGG_VARIANTS.getOrDefault(damage, "minecraft:ghast_spawn_egg"); if (id.equals("minecraft:banner")) return "minecraft:" + BLOCK_COLORS[15 - damage] + "banner"; if (id.equals("minecraft:skull")) return SKULL_VARIANTS[damage]; + if (id.equals("minecraft:fish")) return FISH_VARIANTS[damage]; + if (id.equals("minecraft:cooked_fish")) return COOKED_FISH_VARIANTS[damage]; + if (id.equals("minecraft:stone")) return STONE_VARIANTS[damage]; + if (id.equals("minecraft:stone_slab")) return STONE_SLAB_VARIANTS[damage]; + if (id.equals("minecraft:cobblestone_wall")) return COBBLESTONE_WALL_VARIANTS[damage]; + if (id.equals("minecraft:dirt")) return DIRT_VARIANTS[damage]; + if (id.equals("minecraft:sponge")) return SPONGE_VARIANTS[damage]; + if (id.equals("minecraft:prismarine")) return PRISMARINE_VARIANTS[damage]; id = MAPPING.getOrDefault(id, id); if (Registry.ITEM.get(new Identifier(id)).equals(Items.AIR)) { diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemStackBuilder.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemStackBuilder.java index f21c7ccb..fbbd49d7 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemStackBuilder.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/itemlist/ItemStackBuilder.java @@ -47,13 +47,6 @@ public class ItemStackBuilder { tag.put("ExtraAttributes", extra); extra.put("id", NbtString.of(internalName)); - // add enchantment glint - if (internalName.contains("ENCHANTED")) { - NbtList enchantments = new NbtList(); - enchantments.add(new NbtCompound()); - tag.put("Enchantments", enchantments); - } - NbtCompound display = new NbtCompound(); tag.put("display", display); @@ -90,6 +83,12 @@ public class ItemStackBuilder { NbtInt color = NbtInt.of(Integer.parseInt(colorMatcher.group(1))); display.put("color", color); } + // add enchantment glint + if (nbttag.contains("ench:")) { + NbtList enchantments = new NbtList(); + enchantments.add(new NbtCompound()); + tag.put("Enchantments", enchantments); + } return ItemStack.fromNbt(root); } |