custom armor

This commit is contained in:
Kaupenjoe
2023-08-07 09:04:21 +02:00
parent 265dff67f5
commit e2ff01207c
59 changed files with 785 additions and 3 deletions

View File

@@ -1,14 +1,58 @@
// 1.20.1 2023-08-07T08:23:43.2867865 Item Models: tutorialmod
// 1.20.1 2023-08-07T09:00:54.5654219 Item Models: tutorialmod
93719e53df04c62d91023fe733206eb93b7aac86 assets/tutorialmod/models/item/metal_detector.json
d56de8e6898d1c12a15eca045badafe1947aa387 assets/tutorialmod/models/item/pine_cone.json
d24305376f58c1ef118279a5c8f5b087a07b1d47 assets/tutorialmod/models/item/raw_sapphire.json
0a16bffc527696b64e4304b7efccfda93e2b9422 assets/tutorialmod/models/item/sapphire.json
72e891dd0d4eeff5cd14ecf7f4740f6ba5e7017b assets/tutorialmod/models/item/sapphire_axe.json
4c7ede3e69b2d6ae39f0373cb461b96f53f14b41 assets/tutorialmod/models/item/sapphire_boots.json
39430326fe323bdbad7e33d34e46bbae65d6b0f3 assets/tutorialmod/models/item/sapphire_boots_amethyst_trim.json
712c5c605b07fb656bd3b9b35ae688ad0dfb51d3 assets/tutorialmod/models/item/sapphire_boots_copper_trim.json
9b665f81895cedd3bfc7c9e4073a385a48c0606c assets/tutorialmod/models/item/sapphire_boots_diamond_trim.json
f2e443a335b27a1cb1e5f91c68ef687c7e55affc assets/tutorialmod/models/item/sapphire_boots_emerald_trim.json
91df5fe236a26d56ba5538ec331d110ea6fe018c assets/tutorialmod/models/item/sapphire_boots_gold_trim.json
0536aaad11e1157e015d7ddfed9043179706f095 assets/tutorialmod/models/item/sapphire_boots_iron_trim.json
25d8bee683b77f67ab623b8bc1c8dc16553b87f5 assets/tutorialmod/models/item/sapphire_boots_lapis_trim.json
3ad7a118c503466af5e9dc653d80634aecde1f2b assets/tutorialmod/models/item/sapphire_boots_netherite_trim.json
3e0d94b87536ac8e123a03e798283032baa6d762 assets/tutorialmod/models/item/sapphire_boots_quartz_trim.json
c083f7586a5ee4ffbd9718dbc2e88bec05ff73ca assets/tutorialmod/models/item/sapphire_boots_redstone_trim.json
ee95c0df3b8341e73bc7488bf7b22013e5452930 assets/tutorialmod/models/item/sapphire_button.json
4688aead4336be36740000cce64120a0a0c53639 assets/tutorialmod/models/item/sapphire_chestplate.json
ce8351e70797c10795174d5d35921e32c05a7f65 assets/tutorialmod/models/item/sapphire_chestplate_amethyst_trim.json
019848fea98b1a99d0ae893ef42a5f894271c34e assets/tutorialmod/models/item/sapphire_chestplate_copper_trim.json
ee9c88148e78f2765c354904798162b3918d788e assets/tutorialmod/models/item/sapphire_chestplate_diamond_trim.json
1584a9576edd6353c19632edafbf6585ccff0607 assets/tutorialmod/models/item/sapphire_chestplate_emerald_trim.json
15c84785e3d50957d99d7e38c967d3eef7ca0fe0 assets/tutorialmod/models/item/sapphire_chestplate_gold_trim.json
a0658897c6e3b8df3e95e5390aeaf49d38124232 assets/tutorialmod/models/item/sapphire_chestplate_iron_trim.json
b57886b5093f73bf2932828db2f036fb484a7985 assets/tutorialmod/models/item/sapphire_chestplate_lapis_trim.json
efd147fd9deed31dbef7bf9d74c3876ac1b08d2e assets/tutorialmod/models/item/sapphire_chestplate_netherite_trim.json
e80c6d665b5b3df644d053ae1eddb54483b42db5 assets/tutorialmod/models/item/sapphire_chestplate_quartz_trim.json
fa0275f7daaa0028280be7c103abd1cf81564fc2 assets/tutorialmod/models/item/sapphire_chestplate_redstone_trim.json
5fb321ce210e610f7aa0b54b94dd60600b4799eb assets/tutorialmod/models/item/sapphire_door.json
8f9a97fbc1219f33829e6052616569467b572412 assets/tutorialmod/models/item/sapphire_fence.json
2e3c5e7d4fb6b7c1119a061cffcf78342a084c25 assets/tutorialmod/models/item/sapphire_fence_gate.json
0543b674e771fe34409591a39b4534045918a6b8 assets/tutorialmod/models/item/sapphire_helmet.json
156fba812f34af7492a82ed684350f1e3107ea35 assets/tutorialmod/models/item/sapphire_helmet_amethyst_trim.json
6a27a93c7f410fe6160d676f947386d0139bf86a assets/tutorialmod/models/item/sapphire_helmet_copper_trim.json
96808293a62766e3f89de8c78e22750555411d42 assets/tutorialmod/models/item/sapphire_helmet_diamond_trim.json
d36dd104a6df625a8f54a6a1e51f7fdfda396a7a assets/tutorialmod/models/item/sapphire_helmet_emerald_trim.json
145c1c9cfbc6ee6dda21647567fac6e4b9e6e099 assets/tutorialmod/models/item/sapphire_helmet_gold_trim.json
deca80c0dc280e1190aa81b3b266084cc61282c1 assets/tutorialmod/models/item/sapphire_helmet_iron_trim.json
8d97e789c1a708c084de004066a265f849763c94 assets/tutorialmod/models/item/sapphire_helmet_lapis_trim.json
86baa687bfa62e2b44651baf40db34c4799d94a1 assets/tutorialmod/models/item/sapphire_helmet_netherite_trim.json
3ea438515b9b47c964f39d5d3eb5d1f60e57b5b0 assets/tutorialmod/models/item/sapphire_helmet_quartz_trim.json
7d28c0d5b0cd47b1c695d6a41c33388c8c25dd89 assets/tutorialmod/models/item/sapphire_helmet_redstone_trim.json
31ed8124b1858f3f8fee298ec2b24c988c55764f assets/tutorialmod/models/item/sapphire_hoe.json
7a056f66c70ab0cb2a12243a611b7d8599651060 assets/tutorialmod/models/item/sapphire_leggings.json
7899feb624de99face20c12ffc3f31d5b4f1159f assets/tutorialmod/models/item/sapphire_leggings_amethyst_trim.json
18a38fb93fb94e73e2e6a4cfaef3d3999a3ef720 assets/tutorialmod/models/item/sapphire_leggings_copper_trim.json
74355f995278c314e47e663759d40d8d2d2b3d2a assets/tutorialmod/models/item/sapphire_leggings_diamond_trim.json
9d27283b7127e05c5aebb133a7b3b92d2f04742d assets/tutorialmod/models/item/sapphire_leggings_emerald_trim.json
22404a9285e8f3c781d4d88b469abe3d82bd6707 assets/tutorialmod/models/item/sapphire_leggings_gold_trim.json
4749f7b680137b37a60790a870c70efd1c803a41 assets/tutorialmod/models/item/sapphire_leggings_iron_trim.json
9454168e22c95a9c1a32b357cd200ef4de731bec assets/tutorialmod/models/item/sapphire_leggings_lapis_trim.json
722657eeae166d556bed0d8cf0aef9a5a066fef9 assets/tutorialmod/models/item/sapphire_leggings_netherite_trim.json
bfed913b13b5a2c9bd8882d61569da94b5351cb2 assets/tutorialmod/models/item/sapphire_leggings_quartz_trim.json
a69ead6490ebbc7c527101b4c42c753acacb58cb assets/tutorialmod/models/item/sapphire_leggings_redstone_trim.json
87907e52aad4eae7978977f725c99c834c2bdb23 assets/tutorialmod/models/item/sapphire_pickaxe.json
8adde596706bbd0111ed7a881fbf16718ca981ec assets/tutorialmod/models/item/sapphire_pressure_plate.json
e01fd164f2417618581deb8e7b3f8af8a746c6a7 assets/tutorialmod/models/item/sapphire_shovel.json

View File

@@ -1 +1,2 @@
// 1.20.1 2023-07-28T17:37:52.3060132 Tags for minecraft:item mod id tutorialmod
// 1.20.1 2023-08-07T09:00:54.5654219 Tags for minecraft:item mod id tutorialmod
2514998bb25494de346fa0d088b7e216d8165efd data/minecraft/tags/items/trimmable_armor.json

View File

@@ -0,0 +1,68 @@
{
"parent": "minecraft:item/generated",
"overrides": [
{
"model": "tutorialmod:item/sapphire_boots_quartz_trim",
"predicate": {
"minecraft:trim_type": 0.1
}
},
{
"model": "tutorialmod:item/sapphire_boots_iron_trim",
"predicate": {
"minecraft:trim_type": 0.2
}
},
{
"model": "tutorialmod:item/sapphire_boots_netherite_trim",
"predicate": {
"minecraft:trim_type": 0.3
}
},
{
"model": "tutorialmod:item/sapphire_boots_redstone_trim",
"predicate": {
"minecraft:trim_type": 0.4
}
},
{
"model": "tutorialmod:item/sapphire_boots_copper_trim",
"predicate": {
"minecraft:trim_type": 0.5
}
},
{
"model": "tutorialmod:item/sapphire_boots_gold_trim",
"predicate": {
"minecraft:trim_type": 0.6
}
},
{
"model": "tutorialmod:item/sapphire_boots_emerald_trim",
"predicate": {
"minecraft:trim_type": 0.7
}
},
{
"model": "tutorialmod:item/sapphire_boots_diamond_trim",
"predicate": {
"minecraft:trim_type": 0.8
}
},
{
"model": "tutorialmod:item/sapphire_boots_lapis_trim",
"predicate": {
"minecraft:trim_type": 0.9
}
},
{
"model": "tutorialmod:item/sapphire_boots_amethyst_trim",
"predicate": {
"minecraft:trim_type": 1.0
}
}
],
"textures": {
"layer0": "tutorialmod:item/sapphire_boots"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_boots",
"layer1": "minecraft:trims/items/boots_trim_amethyst"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_boots",
"layer1": "minecraft:trims/items/boots_trim_copper"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_boots",
"layer1": "minecraft:trims/items/boots_trim_diamond"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_boots",
"layer1": "minecraft:trims/items/boots_trim_emerald"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_boots",
"layer1": "minecraft:trims/items/boots_trim_gold"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_boots",
"layer1": "minecraft:trims/items/boots_trim_iron"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_boots",
"layer1": "minecraft:trims/items/boots_trim_lapis"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_boots",
"layer1": "minecraft:trims/items/boots_trim_netherite"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_boots",
"layer1": "minecraft:trims/items/boots_trim_quartz"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_boots",
"layer1": "minecraft:trims/items/boots_trim_redstone"
}
}

View File

@@ -0,0 +1,68 @@
{
"parent": "minecraft:item/generated",
"overrides": [
{
"model": "tutorialmod:item/sapphire_chestplate_quartz_trim",
"predicate": {
"minecraft:trim_type": 0.1
}
},
{
"model": "tutorialmod:item/sapphire_chestplate_iron_trim",
"predicate": {
"minecraft:trim_type": 0.2
}
},
{
"model": "tutorialmod:item/sapphire_chestplate_netherite_trim",
"predicate": {
"minecraft:trim_type": 0.3
}
},
{
"model": "tutorialmod:item/sapphire_chestplate_redstone_trim",
"predicate": {
"minecraft:trim_type": 0.4
}
},
{
"model": "tutorialmod:item/sapphire_chestplate_copper_trim",
"predicate": {
"minecraft:trim_type": 0.5
}
},
{
"model": "tutorialmod:item/sapphire_chestplate_gold_trim",
"predicate": {
"minecraft:trim_type": 0.6
}
},
{
"model": "tutorialmod:item/sapphire_chestplate_emerald_trim",
"predicate": {
"minecraft:trim_type": 0.7
}
},
{
"model": "tutorialmod:item/sapphire_chestplate_diamond_trim",
"predicate": {
"minecraft:trim_type": 0.8
}
},
{
"model": "tutorialmod:item/sapphire_chestplate_lapis_trim",
"predicate": {
"minecraft:trim_type": 0.9
}
},
{
"model": "tutorialmod:item/sapphire_chestplate_amethyst_trim",
"predicate": {
"minecraft:trim_type": 1.0
}
}
],
"textures": {
"layer0": "tutorialmod:item/sapphire_chestplate"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_chestplate",
"layer1": "minecraft:trims/items/chestplate_trim_amethyst"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_chestplate",
"layer1": "minecraft:trims/items/chestplate_trim_copper"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_chestplate",
"layer1": "minecraft:trims/items/chestplate_trim_diamond"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_chestplate",
"layer1": "minecraft:trims/items/chestplate_trim_emerald"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_chestplate",
"layer1": "minecraft:trims/items/chestplate_trim_gold"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_chestplate",
"layer1": "minecraft:trims/items/chestplate_trim_iron"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_chestplate",
"layer1": "minecraft:trims/items/chestplate_trim_lapis"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_chestplate",
"layer1": "minecraft:trims/items/chestplate_trim_netherite"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_chestplate",
"layer1": "minecraft:trims/items/chestplate_trim_quartz"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_chestplate",
"layer1": "minecraft:trims/items/chestplate_trim_redstone"
}
}

View File

@@ -0,0 +1,68 @@
{
"parent": "minecraft:item/generated",
"overrides": [
{
"model": "tutorialmod:item/sapphire_helmet_quartz_trim",
"predicate": {
"minecraft:trim_type": 0.1
}
},
{
"model": "tutorialmod:item/sapphire_helmet_iron_trim",
"predicate": {
"minecraft:trim_type": 0.2
}
},
{
"model": "tutorialmod:item/sapphire_helmet_netherite_trim",
"predicate": {
"minecraft:trim_type": 0.3
}
},
{
"model": "tutorialmod:item/sapphire_helmet_redstone_trim",
"predicate": {
"minecraft:trim_type": 0.4
}
},
{
"model": "tutorialmod:item/sapphire_helmet_copper_trim",
"predicate": {
"minecraft:trim_type": 0.5
}
},
{
"model": "tutorialmod:item/sapphire_helmet_gold_trim",
"predicate": {
"minecraft:trim_type": 0.6
}
},
{
"model": "tutorialmod:item/sapphire_helmet_emerald_trim",
"predicate": {
"minecraft:trim_type": 0.7
}
},
{
"model": "tutorialmod:item/sapphire_helmet_diamond_trim",
"predicate": {
"minecraft:trim_type": 0.8
}
},
{
"model": "tutorialmod:item/sapphire_helmet_lapis_trim",
"predicate": {
"minecraft:trim_type": 0.9
}
},
{
"model": "tutorialmod:item/sapphire_helmet_amethyst_trim",
"predicate": {
"minecraft:trim_type": 1.0
}
}
],
"textures": {
"layer0": "tutorialmod:item/sapphire_helmet"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_helmet",
"layer1": "minecraft:trims/items/helmet_trim_amethyst"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_helmet",
"layer1": "minecraft:trims/items/helmet_trim_copper"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_helmet",
"layer1": "minecraft:trims/items/helmet_trim_diamond"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_helmet",
"layer1": "minecraft:trims/items/helmet_trim_emerald"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_helmet",
"layer1": "minecraft:trims/items/helmet_trim_gold"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_helmet",
"layer1": "minecraft:trims/items/helmet_trim_iron"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_helmet",
"layer1": "minecraft:trims/items/helmet_trim_lapis"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_helmet",
"layer1": "minecraft:trims/items/helmet_trim_netherite"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_helmet",
"layer1": "minecraft:trims/items/helmet_trim_quartz"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_helmet",
"layer1": "minecraft:trims/items/helmet_trim_redstone"
}
}

View File

@@ -0,0 +1,68 @@
{
"parent": "minecraft:item/generated",
"overrides": [
{
"model": "tutorialmod:item/sapphire_leggings_quartz_trim",
"predicate": {
"minecraft:trim_type": 0.1
}
},
{
"model": "tutorialmod:item/sapphire_leggings_iron_trim",
"predicate": {
"minecraft:trim_type": 0.2
}
},
{
"model": "tutorialmod:item/sapphire_leggings_netherite_trim",
"predicate": {
"minecraft:trim_type": 0.3
}
},
{
"model": "tutorialmod:item/sapphire_leggings_redstone_trim",
"predicate": {
"minecraft:trim_type": 0.4
}
},
{
"model": "tutorialmod:item/sapphire_leggings_copper_trim",
"predicate": {
"minecraft:trim_type": 0.5
}
},
{
"model": "tutorialmod:item/sapphire_leggings_gold_trim",
"predicate": {
"minecraft:trim_type": 0.6
}
},
{
"model": "tutorialmod:item/sapphire_leggings_emerald_trim",
"predicate": {
"minecraft:trim_type": 0.7
}
},
{
"model": "tutorialmod:item/sapphire_leggings_diamond_trim",
"predicate": {
"minecraft:trim_type": 0.8
}
},
{
"model": "tutorialmod:item/sapphire_leggings_lapis_trim",
"predicate": {
"minecraft:trim_type": 0.9
}
},
{
"model": "tutorialmod:item/sapphire_leggings_amethyst_trim",
"predicate": {
"minecraft:trim_type": 1.0
}
}
],
"textures": {
"layer0": "tutorialmod:item/sapphire_leggings"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_leggings",
"layer1": "minecraft:trims/items/leggings_trim_amethyst"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_leggings",
"layer1": "minecraft:trims/items/leggings_trim_copper"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_leggings",
"layer1": "minecraft:trims/items/leggings_trim_diamond"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_leggings",
"layer1": "minecraft:trims/items/leggings_trim_emerald"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_leggings",
"layer1": "minecraft:trims/items/leggings_trim_gold"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_leggings",
"layer1": "minecraft:trims/items/leggings_trim_iron"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_leggings",
"layer1": "minecraft:trims/items/leggings_trim_lapis"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_leggings",
"layer1": "minecraft:trims/items/leggings_trim_netherite"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_leggings",
"layer1": "minecraft:trims/items/leggings_trim_quartz"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tutorialmod:item/sapphire_leggings",
"layer1": "minecraft:trims/items/leggings_trim_redstone"
}
}

View File

@@ -0,0 +1,8 @@
{
"values": [
"tutorialmod:sapphire_helmet",
"tutorialmod:sapphire_chestplate",
"tutorialmod:sapphire_leggings",
"tutorialmod:sapphire_boots"
]
}

View File

@@ -4,16 +4,38 @@ import net.kaupenjoe.tutorialmod.TutorialMod;
import net.kaupenjoe.tutorialmod.block.ModBlocks;
import net.kaupenjoe.tutorialmod.item.ModItems;
import net.minecraft.data.PackOutput;
import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.packs.PackType;
import net.minecraft.world.item.ArmorItem;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.armortrim.TrimMaterial;
import net.minecraft.world.item.armortrim.TrimMaterials;
import net.minecraft.world.level.block.Block;
import net.minecraftforge.client.model.generators.ItemModelBuilder;
import net.minecraftforge.client.model.generators.ItemModelProvider;
import net.minecraftforge.client.model.generators.ModelFile;
import net.minecraftforge.common.data.ExistingFileHelper;
import net.minecraftforge.registries.ForgeRegistries;
import net.minecraftforge.registries.RegistryObject;
import java.util.LinkedHashMap;
public class ModItemModelProvider extends ItemModelProvider {
private static LinkedHashMap<ResourceKey<TrimMaterial>, Float> trimMaterials = new LinkedHashMap<>();
static {
trimMaterials.put(TrimMaterials.QUARTZ, 0.1F);
trimMaterials.put(TrimMaterials.IRON, 0.2F);
trimMaterials.put(TrimMaterials.NETHERITE, 0.3F);
trimMaterials.put(TrimMaterials.REDSTONE, 0.4F);
trimMaterials.put(TrimMaterials.COPPER, 0.5F);
trimMaterials.put(TrimMaterials.GOLD, 0.6F);
trimMaterials.put(TrimMaterials.EMERALD, 0.7F);
trimMaterials.put(TrimMaterials.DIAMOND, 0.8F);
trimMaterials.put(TrimMaterials.LAPIS, 0.9F);
trimMaterials.put(TrimMaterials.AMETHYST, 1.0F);
}
public ModItemModelProvider(PackOutput output, ExistingFileHelper existingFileHelper) {
super(output, TutorialMod.MOD_ID, existingFileHelper);
}
@@ -45,6 +67,59 @@ public class ModItemModelProvider extends ItemModelProvider {
handheldItem(ModItems.SAPPHIRE_AXE);
handheldItem(ModItems.SAPPHIRE_SHOVEL);
handheldItem(ModItems.SAPPHIRE_HOE);
trimmedArmorItem(ModItems.SAPPHIRE_HELMET);
trimmedArmorItem(ModItems.SAPPHIRE_CHESTPLATE);
trimmedArmorItem(ModItems.SAPPHIRE_LEGGINGS);
trimmedArmorItem(ModItems.SAPPHIRE_BOOTS);
}
// Shoutout to El_Redstoniano for making this
private void trimmedArmorItem(RegistryObject<Item> itemRegistryObject) {
final String MOD_ID = TutorialMod.MOD_ID; // Change this to your mod id
if(itemRegistryObject.get() instanceof ArmorItem armorItem) {
trimMaterials.entrySet().forEach(entry -> {
ResourceKey<TrimMaterial> trimMaterial = entry.getKey();
float trimValue = entry.getValue();
String armorType = switch (armorItem.getEquipmentSlot()) {
case HEAD -> "helmet";
case CHEST -> "chestplate";
case LEGS -> "leggings";
case FEET -> "boots";
default -> "";
};
String armorItemPath = "item/" + armorItem;
String trimPath = "trims/items/" + armorType + "_trim_" + trimMaterial.location().getPath();
String currentTrimName = armorItemPath + "_" + trimMaterial.location().getPath() + "_trim";
ResourceLocation armorItemResLoc = new ResourceLocation(MOD_ID, armorItemPath);
ResourceLocation trimResLoc = new ResourceLocation(trimPath); // minecraft namespace
ResourceLocation trimNameResLoc = new ResourceLocation(MOD_ID, currentTrimName);
// This is used for making the ExistingFileHelper acknowledge that this texture exist, so this will
// avoid an IllegalArgumentException
existingFileHelper.trackGenerated(trimResLoc, PackType.CLIENT_RESOURCES, ".png", "textures");
// Trimmed armorItem files
getBuilder(currentTrimName)
.parent(new ModelFile.UncheckedModelFile("item/generated"))
.texture("layer0", armorItemResLoc)
.texture("layer1", trimResLoc);
// Non-trimmed armorItem file (normal variant)
this.withExistingParent(itemRegistryObject.getId().getPath(),
mcLoc("item/generated"))
.override()
.model(new ModelFile.UncheckedModelFile(trimNameResLoc))
.predicate(mcLoc("trim_type"), trimValue).end()
.texture("layer0",
new ResourceLocation(MOD_ID,
"item/" + itemRegistryObject.getId().getPath()));
});
}
}
private ItemModelBuilder simpleItem(RegistryObject<Item> item) {

View File

@@ -1,9 +1,11 @@
package net.kaupenjoe.tutorialmod.datagen;
import net.kaupenjoe.tutorialmod.TutorialMod;
import net.kaupenjoe.tutorialmod.item.ModItems;
import net.minecraft.core.HolderLookup;
import net.minecraft.data.PackOutput;
import net.minecraft.data.tags.ItemTagsProvider;
import net.minecraft.tags.ItemTags;
import net.minecraft.world.level.block.Block;
import net.minecraftforge.common.data.ExistingFileHelper;
import org.jetbrains.annotations.Nullable;
@@ -18,6 +20,10 @@ public class ModItemTagGenerator extends ItemTagsProvider {
@Override
protected void addTags(HolderLookup.Provider pProvider) {
this.tag(ItemTags.TRIMMABLE_ARMOR)
.add(ModItems.SAPPHIRE_HELMET.get(),
ModItems.SAPPHIRE_CHESTPLATE.get(),
ModItems.SAPPHIRE_LEGGINGS.get(),
ModItems.SAPPHIRE_BOOTS.get());
}
}

View File

@@ -0,0 +1,78 @@
package net.kaupenjoe.tutorialmod.item;
import net.kaupenjoe.tutorialmod.TutorialMod;
import net.minecraft.sounds.SoundEvent;
import net.minecraft.sounds.SoundEvents;
import net.minecraft.world.item.ArmorItem;
import net.minecraft.world.item.ArmorMaterial;
import net.minecraft.world.item.crafting.Ingredient;
import java.util.function.Supplier;
public enum ModArmorMaterials implements ArmorMaterial {
SAPPHIRE("sapphire", 26, new int[]{ 5, 7, 5, 4 }, 25,
SoundEvents.ARMOR_EQUIP_GOLD, 1f, 0f, () -> Ingredient.of(ModItems.SAPPHIRE.get()));
private final String name;
private final int durabilityMultiplier;
private final int[] protectionAmounts;
private final int enchantmentValue;
private final SoundEvent equipSound;
private final float toughness;
private final float knockbackResistance;
private final Supplier<Ingredient> repairIngredient;
private static final int[] BASE_DURABILITY = { 11, 16, 16, 13 };
ModArmorMaterials(String name, int durabilityMultiplier, int[] protectionAmounts, int enchantmentValue, SoundEvent equipSound,
float toughness, float knockbackResistance, Supplier<Ingredient> repairIngredient) {
this.name = name;
this.durabilityMultiplier = durabilityMultiplier;
this.protectionAmounts = protectionAmounts;
this.enchantmentValue = enchantmentValue;
this.equipSound = equipSound;
this.toughness = toughness;
this.knockbackResistance = knockbackResistance;
this.repairIngredient = repairIngredient;
}
@Override
public int getDurabilityForType(ArmorItem.Type pType) {
return BASE_DURABILITY[pType.ordinal()] * this.durabilityMultiplier;
}
@Override
public int getDefenseForType(ArmorItem.Type pType) {
return this.protectionAmounts[pType.ordinal()];
}
@Override
public int getEnchantmentValue() {
return enchantmentValue;
}
@Override
public SoundEvent getEquipSound() {
return this.equipSound;
}
@Override
public Ingredient getRepairIngredient() {
return this.repairIngredient.get();
}
@Override
public String getName() {
return TutorialMod.MOD_ID + ":" + this.name;
}
@Override
public float getToughness() {
return this.toughness;
}
@Override
public float getKnockbackResistance() {
return this.knockbackResistance;
}
}

View File

@@ -36,6 +36,11 @@ public class ModCreativeModTabs {
pOutput.accept(ModItems.SAPPHIRE_SHOVEL.get());
pOutput.accept(ModItems.SAPPHIRE_HOE.get());
pOutput.accept(ModItems.SAPPHIRE_HELMET.get());
pOutput.accept(ModItems.SAPPHIRE_CHESTPLATE.get());
pOutput.accept(ModItems.SAPPHIRE_LEGGINGS.get());
pOutput.accept(ModItems.SAPPHIRE_BOOTS.get());
pOutput.accept(ModBlocks.SAPPHIRE_BLOCK.get());
pOutput.accept(ModBlocks.RAW_SAPPHIRE_BLOCK.get());

View File

@@ -42,6 +42,14 @@ public class ModItems {
public static final RegistryObject<Item> SAPPHIRE_HOE = ITEMS.register("sapphire_hoe",
() -> new HoeItem(ModToolTiers.SAPPHIRE, 0, 0, new Item.Properties()));
public static final RegistryObject<Item> SAPPHIRE_HELMET = ITEMS.register("sapphire_helmet",
() -> new ArmorItem(ModArmorMaterials.SAPPHIRE, ArmorItem.Type.HELMET, new Item.Properties()));
public static final RegistryObject<Item> SAPPHIRE_CHESTPLATE = ITEMS.register("sapphire_chestplate",
() -> new ArmorItem(ModArmorMaterials.SAPPHIRE, ArmorItem.Type.CHESTPLATE, new Item.Properties()));
public static final RegistryObject<Item> SAPPHIRE_LEGGINGS = ITEMS.register("sapphire_leggings",
() -> new ArmorItem(ModArmorMaterials.SAPPHIRE, ArmorItem.Type.LEGGINGS, new Item.Properties()));
public static final RegistryObject<Item> SAPPHIRE_BOOTS = ITEMS.register("sapphire_boots",
() -> new ArmorItem(ModArmorMaterials.SAPPHIRE, ArmorItem.Type.BOOTS, new Item.Properties()));
public static void register(IEventBus eventBus) {

View File

@@ -13,6 +13,11 @@
"item.tutorialmod.sapphire_shovel": "Sapphire Shovel",
"item.tutorialmod.sapphire_hoe": "Sapphire Hoe",
"item.tutorialmod.sapphire_helmet": "Sapphire Helmet",
"item.tutorialmod.sapphire_chestplate": "Sapphire Chestplate",
"item.tutorialmod.sapphire_leggings": "Sapphire Leggings",
"item.tutorialmod.sapphire_boots": "Sapphire Boots",
"block.tutorialmod.sapphire_block": "Block of Sapphire",
"block.tutorialmod.raw_sapphire_block": "Block of Raw Sapphire",

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 673 B