From 660973371d78910bfcf1414e83977199c917f1b2 Mon Sep 17 00:00:00 2001 From: Sollace Date: Thu, 8 Feb 2024 14:22:52 +0000 Subject: [PATCH 01/12] Fixed stripped zap logs and wood not dropping --- .../unicopia/compat/emi/Main.java | 7 +++---- .../unicopia/item/TransformCropsRecipe.java | 10 +++++++++- .../loot_tables/blocks/stripped_zap_log.json | 20 +++++++++++++++++++ .../loot_tables/blocks/stripped_zap_wood.json | 20 +++++++++++++++++++ 4 files changed, 52 insertions(+), 5 deletions(-) create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/stripped_zap_log.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/stripped_zap_wood.json diff --git a/src/main/java/com/minelittlepony/unicopia/compat/emi/Main.java b/src/main/java/com/minelittlepony/unicopia/compat/emi/Main.java index d4e5c9ed..9523cce2 100644 --- a/src/main/java/com/minelittlepony/unicopia/compat/emi/Main.java +++ b/src/main/java/com/minelittlepony/unicopia/compat/emi/Main.java @@ -27,7 +27,6 @@ import dev.emi.emi.api.render.EmiTexture; import dev.emi.emi.api.stack.Comparison; import dev.emi.emi.api.stack.EmiStack; import dev.emi.emi.recipe.EmiStonecuttingRecipe; -import net.minecraft.block.Block; import net.minecraft.block.Blocks; import net.minecraft.item.ItemStack; import net.minecraft.item.Items; @@ -121,11 +120,11 @@ public class Main implements EmiPlugin { GROWING_CATEGORY, recipe.getId(), new Schematic.Builder() - .fill(0, 0, 0, 6, 0, 6, Block.getBlockFromItem(recipe.getCatalyst().getItem()).getDefaultState()) + .fill(0, 0, 0, 6, 0, 6, recipe.getCatalystState()) .set(3, 0, 3, Blocks.FARMLAND.getDefaultState()) - .set(3, 1, 3, Block.getBlockFromItem(recipe.getTargetAsItem().getItem()).getDefaultState()) + .set(3, 1, 3, recipe.getTargetState()) .build(), - List.of(EmiStack.of(recipe.getTargetAsItem()), EmiStack.of(recipe.getCatalyst(), TransformCropsRecipe.AREA)), + List.of(EmiStack.of(recipe.getTarget()), EmiStack.of(recipe.getCatalyst(), TransformCropsRecipe.AREA)), EmiStack.of(recipe.getOutput()), Unicopia.id("textures/gui/ability/grow.png") )); diff --git a/src/main/java/com/minelittlepony/unicopia/item/TransformCropsRecipe.java b/src/main/java/com/minelittlepony/unicopia/item/TransformCropsRecipe.java index 284665ce..edc9924a 100644 --- a/src/main/java/com/minelittlepony/unicopia/item/TransformCropsRecipe.java +++ b/src/main/java/com/minelittlepony/unicopia/item/TransformCropsRecipe.java @@ -48,7 +48,15 @@ public class TransformCropsRecipe implements Recipe Date: Thu, 8 Feb 2024 14:23:26 +0000 Subject: [PATCH 02/12] Add spectral_clock, curing_joke, and flowering_zap_leaves to the creative tabs for respective tribes --- .../resources/data/unicopia/tags/items/groups/earth_pony.json | 2 ++ .../resources/data/unicopia/tags/items/groups/unicorn.json | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/resources/data/unicopia/tags/items/groups/earth_pony.json b/src/main/resources/data/unicopia/tags/items/groups/earth_pony.json index 54ec96ce..db1c0f0b 100644 --- a/src/main/resources/data/unicopia/tags/items/groups/earth_pony.json +++ b/src/main/resources/data/unicopia/tags/items/groups/earth_pony.json @@ -5,6 +5,7 @@ "unicopia:sweet_apple_leaves", "unicopia:sour_apple_leaves", "unicopia:zap_leaves", + "unicopia:flowering_zap_leaves", "unicopia:zap_log", "unicopia:zap_wood", "unicopia:stripped_zap_log", @@ -27,6 +28,7 @@ "unicopia:sour_apple_sapling", "unicopia:zapling", "unicopia:palm_sapling", + "unicopia:curing_joke", "unicopia:mango", "unicopia:empty_jar", "unicopia:cooked_zap_apple", diff --git a/src/main/resources/data/unicopia/tags/items/groups/unicorn.json b/src/main/resources/data/unicopia/tags/items/groups/unicorn.json index 79b0cb95..09736942 100644 --- a/src/main/resources/data/unicopia/tags/items/groups/unicorn.json +++ b/src/main/resources/data/unicopia/tags/items/groups/unicorn.json @@ -15,6 +15,7 @@ "unicopia:pegasus_amulet", "unicopia:alicorn_amulet", "unicopia:broken_alicorn_amulet", - "unicopia:unicorn_amulet" + "unicopia:unicorn_amulet", + "unicopia:spectral_clock" ] } From 6fd124ed81c28a34e444e0b75887df9000fae7b6 Mon Sep 17 00:00:00 2001 From: Sollace Date: Thu, 8 Feb 2024 14:25:40 +0000 Subject: [PATCH 03/12] Fixed zap blocks destroying item drops --- src/main/java/com/minelittlepony/unicopia/block/ZapBlock.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/com/minelittlepony/unicopia/block/ZapBlock.java b/src/main/java/com/minelittlepony/unicopia/block/ZapBlock.java index c38f0b7a..dcc0e5f7 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/ZapBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/ZapBlock.java @@ -5,6 +5,7 @@ import com.minelittlepony.unicopia.particle.LightningBoltParticleEffect; import com.minelittlepony.unicopia.particle.ParticleUtils; import net.minecraft.block.*; import net.minecraft.entity.EntityType; +import net.minecraft.entity.ItemEntity; import net.minecraft.entity.LightningEntity; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.item.ItemPlacementContext; @@ -66,6 +67,9 @@ public class ZapBlock extends Block { Vec3d center = Vec3d.ofCenter(pos); LightningEntity lightning = EntityType.LIGHTNING_BOLT.create(world); world.getOtherEntities(null, Box.from(center).expand(7)).forEach(other -> { + if (other instanceof ItemEntity) { + return; + } float dist = (float)other.getPos().distanceTo(center); if (dist < 4) { other.onStruckByLightning(serverWorld, lightning); From 2d7eca4d5b62ddb98e3fa091c014c1b8561f6d73 Mon Sep 17 00:00:00 2001 From: Sollace Date: Thu, 8 Feb 2024 14:38:59 +0000 Subject: [PATCH 04/12] Zap leaves now drop zaplings --- .../blocks/flowering_zap_leaves.json | 19 +++++++++++++++++++ .../loot_tables/blocks/zap_leaves.json | 19 +++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/flowering_zap_leaves.json b/src/main/resources/data/unicopia/loot_tables/blocks/flowering_zap_leaves.json index 6e55a32c..2676a033 100644 --- a/src/main/resources/data/unicopia/loot_tables/blocks/flowering_zap_leaves.json +++ b/src/main/resources/data/unicopia/loot_tables/blocks/flowering_zap_leaves.json @@ -38,6 +38,25 @@ } ], "name": "unicopia:flowering_zap_leaves" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + }, + { + "chances": [ + 0.05, + 0.0625, + 0.083333336, + 0.1 + ], + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune" + } + ], + "name": "unicopia:zapling" } ] } diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/zap_leaves.json b/src/main/resources/data/unicopia/loot_tables/blocks/zap_leaves.json index 48082b36..e511233e 100644 --- a/src/main/resources/data/unicopia/loot_tables/blocks/zap_leaves.json +++ b/src/main/resources/data/unicopia/loot_tables/blocks/zap_leaves.json @@ -38,6 +38,25 @@ } ], "name": "unicopia:zap_leaves" + }, + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:survives_explosion" + }, + { + "chances": [ + 0.05, + 0.0625, + 0.083333336, + 0.1 + ], + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune" + } + ], + "name": "unicopia:zapling" } ] } From 4aa088ec1b6f99e3cc4a769b85f9d4e14400861c Mon Sep 17 00:00:00 2001 From: Sollace Date: Thu, 8 Feb 2024 14:53:05 +0000 Subject: [PATCH 05/12] Fix invalid traits --- src/main/resources/data/unicopia/traits/food.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/resources/data/unicopia/traits/food.json b/src/main/resources/data/unicopia/traits/food.json index 0b8e0830..cab40188 100644 --- a/src/main/resources/data/unicopia/traits/food.json +++ b/src/main/resources/data/unicopia/traits/food.json @@ -18,10 +18,10 @@ "unicopia:pineapple_crown": "life:6", "unicopia:banana": "life:5 generosity:3", "unicopia:mango": "earth:2 life:1", - "unicopia:pineapple": "life4 generosity:10", + "unicopia:pineapple": "life:4 generosity:10", "unicopia:pinecone": "life:1 happiness:-1", "#unicopia:oats": "life:1 happiness:1", - "unicopia:apple_pie_slice": "life4 generosity:10", + "unicopia:apple_pie_slice": "life:4 generosity:10", "unicopia:oatmeal": "happiness:4", "unicopia:imported_oats": "life:1 happiness:2", "#unicopia:food_types/candy": "earth:7 strength:3", From a0d6c410884d6cdf5152fe18b650e657c8762879 Mon Sep 17 00:00:00 2001 From: Sollace Date: Thu, 8 Feb 2024 14:59:04 +0000 Subject: [PATCH 06/12] Fixed zap apple logs not placing correctly --- .../com/minelittlepony/unicopia/block/ZapAppleLogBlock.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/minelittlepony/unicopia/block/ZapAppleLogBlock.java b/src/main/java/com/minelittlepony/unicopia/block/ZapAppleLogBlock.java index 64aa32c4..9605412b 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/ZapAppleLogBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/ZapAppleLogBlock.java @@ -38,7 +38,7 @@ public class ZapAppleLogBlock extends PillarBlock { @Override public BlockState getPlacementState(ItemPlacementContext ctx) { - return getDefaultState().with(NATURAL, false); + return super.getPlacementState(ctx).with(NATURAL, false); } @Deprecated From 17cd097d88e08189dc4fdff97daf875a82615d40 Mon Sep 17 00:00:00 2001 From: Sollace Date: Thu, 8 Feb 2024 15:06:51 +0000 Subject: [PATCH 07/12] Move recipes --- .../recipes/blocks/chiselled_chitin.json | 4 ++-- .../recipes/blocks/chiselled_chitin_hull.json | 4 ++-- .../recipes/blocks/chiselled_chitin_slab.json | 4 ++-- .../blocks/chiselled_chitin_stairs.json | 4 ++-- .../recipes/blocks/chitin_spikes.json | 4 ++-- .../recipes/blocks/cloud_brick_slab.json | 4 ++-- .../recipes/blocks/cloud_brick_stairs.json | 4 ++-- .../recipes/blocks/cloud_pillar.json | 4 ++-- .../recipes/blocks/cloud_plank_slab.json | 4 ++-- .../recipes/blocks/cloud_plank_stairs.json | 4 ++-- .../recipes/blocks/cloud_planks.json | 4 ++-- .../recipes/blocks/cloud_slab.json | 4 ++-- .../recipes/blocks/cloud_stairs.json | 4 ++-- .../recipes/blocks/dense_cloud.json | 4 ++-- .../recipes/blocks/dense_cloud_slab.json | 4 ++-- .../recipes/blocks/dense_cloud_stairs.json | 4 ++-- .../unicopia/recipes/blocks/cloud_bed.json | 16 -------------- .../carving/carved_cloud_cutting.json | 0 .../carving/cloud_brick_slab_cutting.json | 0 .../carving/cloud_brick_stairs_cutting.json | 0 .../carving/cloud_bricks_cutting.json | 0 .../carving/cloud_pillar_cutting.json | 0 .../carving/cloud_plank_slab_cutting.json | 0 .../carving/cloud_plank_stairs_cutting.json | 0 .../carving/cloud_planks_cutting.json | 0 .../carving/cloud_slab_cutting.json | 0 .../carving/cloud_stairs_cutting.json | 0 .../carving/dense_cloud_slab_cutting.json | 0 .../carving/dense_cloud_stairs_cutting.json | 0 .../carving/etched_cloud_cutting.json | 0 .../carving/etched_cloud_slab_cutting.json | 0 .../carving/etched_cloud_stairs_cutting.json | 0 .../{blocks => }/chiselled_chitin.json | 0 .../{blocks => }/chiselled_chitin_hull.json | 0 .../{blocks => }/chiselled_chitin_slab.json | 0 .../{blocks => }/chiselled_chitin_stairs.json | 0 .../unicopia/recipes/{blocks => }/chitin.json | 0 .../recipes/{blocks => }/chitin_spikes.json | 0 .../data/unicopia/recipes/cloud_bed.json | 22 ++++++++----------- .../recipes/{blocks => }/cloud_block.json | 0 .../{blocks => }/cloud_brick_slab.json | 0 .../{blocks => }/cloud_brick_stairs.json | 0 .../recipes/{blocks => }/cloud_chest.json | 0 .../recipes/{blocks => }/cloud_door.json | 0 .../recipes/{blocks => }/cloud_pillar.json | 0 .../{blocks => }/cloud_plank_slab.json | 0 .../{blocks => }/cloud_plank_stairs.json | 0 .../recipes/{blocks => }/cloud_planks.json | 0 .../recipes/{blocks => }/cloud_slab.json | 0 .../recipes/{blocks => }/cloud_stairs.json | 0 .../recipes/{blocks => }/dense_cloud.json | 0 .../{blocks => }/dense_cloud_slab.json | 0 .../{blocks => }/dense_cloud_stairs.json | 0 .../recipes/{blocks => }/shaping_bench.json | 0 .../recipes/{blocks => }/unstable_cloud.json | 0 55 files changed, 41 insertions(+), 61 deletions(-) delete mode 100644 src/main/resources/data/unicopia/recipes/blocks/cloud_bed.json rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/carved_cloud_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/cloud_brick_slab_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/cloud_brick_stairs_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/cloud_bricks_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/cloud_pillar_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/cloud_plank_slab_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/cloud_plank_stairs_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/cloud_planks_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/cloud_slab_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/cloud_stairs_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/dense_cloud_slab_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/dense_cloud_stairs_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/etched_cloud_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/etched_cloud_slab_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/carving/etched_cloud_stairs_cutting.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/chiselled_chitin.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/chiselled_chitin_hull.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/chiselled_chitin_slab.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/chiselled_chitin_stairs.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/chitin.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/chitin_spikes.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/cloud_block.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/cloud_brick_slab.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/cloud_brick_stairs.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/cloud_chest.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/cloud_door.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/cloud_pillar.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/cloud_plank_slab.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/cloud_plank_stairs.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/cloud_planks.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/cloud_slab.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/cloud_stairs.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/dense_cloud.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/dense_cloud_slab.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/dense_cloud_stairs.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/shaping_bench.json (100%) rename src/main/resources/data/unicopia/recipes/{blocks => }/unstable_cloud.json (100%) diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin.json index 1610add8..fba2676d 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/chiselled_chitin" + "unicopia:chiselled_chitin" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/chiselled_chitin" + "recipe": "unicopia:chiselled_chitin" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin_hull.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin_hull.json index b6b439a9..ed8d7a6e 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin_hull.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin_hull.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/chiselled_chitin_hull" + "unicopia:chiselled_chitin_hull" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/chiselled_chitin_hull" + "recipe": "unicopia:chiselled_chitin_hull" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin_slab.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin_slab.json index ba30147f..f1e2b4e7 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin_slab.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin_slab.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/chiselled_chitin_slab" + "unicopia:chiselled_chitin_slab" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/chiselled_chitin_slab" + "recipe": "unicopia:chiselled_chitin_slab" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin_stairs.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin_stairs.json index 3e46f0ff..9a08e521 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin_stairs.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/chiselled_chitin_stairs.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/chiselled_chitin_stairs" + "unicopia:chiselled_chitin_stairs" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/chiselled_chitin_stairs" + "recipe": "unicopia:chiselled_chitin_stairs" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/chitin_spikes.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/chitin_spikes.json index 449289ef..6379d4a9 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/chitin_spikes.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/chitin_spikes.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/chitin_spikes" + "unicopia:chitin_spikes" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/chitin_spikes" + "recipe": "unicopia:chitin_spikes" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_brick_slab.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_brick_slab.json index 88c40580..75101d52 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_brick_slab.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_brick_slab.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/cloud_brick_slab" + "unicopia:cloud_brick_slab" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/cloud_brick_slab" + "recipe": "unicopia:cloud_brick_slab" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_brick_stairs.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_brick_stairs.json index 25aed1f6..d7ca8f88 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_brick_stairs.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_brick_stairs.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/cloud_brick_stairs" + "unicopia:cloud_brick_stairs" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/cloud_brick_stairs" + "recipe": "unicopia:cloud_brick_stairs" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_pillar.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_pillar.json index 8c3e6c27..b5248c89 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_pillar.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_pillar.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/cloud_pillar" + "unicopia:cloud_pillar" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/cloud_pillar" + "recipe": "unicopia:cloud_pillar" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_plank_slab.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_plank_slab.json index 5714d8f1..19e93f24 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_plank_slab.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_plank_slab.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/cloud_plank_slab" + "unicopia:cloud_plank_slab" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/cloud_plank_slab" + "recipe": "unicopia:cloud_plank_slab" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_plank_stairs.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_plank_stairs.json index 752478bc..0d7a9c07 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_plank_stairs.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_plank_stairs.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/cloud_plank_stairs" + "unicopia:cloud_plank_stairs" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/cloud_plank_stairs" + "recipe": "unicopia:cloud_plank_stairs" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_planks.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_planks.json index 23419407..20658432 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_planks.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_planks.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/cloud_planks" + "unicopia:cloud_planks" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/cloud_planks" + "recipe": "unicopia:cloud_planks" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_slab.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_slab.json index 33614bd3..762518c1 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_slab.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_slab.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/cloud_slab" + "unicopia:cloud_slab" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/cloud_slab" + "recipe": "unicopia:cloud_slab" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_stairs.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_stairs.json index 66b99dab..d484ad65 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_stairs.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/cloud_stairs.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/cloud_stairs" + "unicopia:cloud_stairs" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/cloud_stairs" + "recipe": "unicopia:cloud_stairs" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/dense_cloud.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/dense_cloud.json index ec70a5ce..51f03735 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/dense_cloud.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/dense_cloud.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/dense_cloud" + "unicopia:dense_cloud" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/dense_cloud" + "recipe": "unicopia:dense_cloud" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/dense_cloud_slab.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/dense_cloud_slab.json index 5b461912..1ca251e5 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/dense_cloud_slab.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/dense_cloud_slab.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/dense_cloud_slab" + "unicopia:dense_cloud_slab" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/dense_cloud_slab" + "recipe": "unicopia:dense_cloud_slab" } } }, diff --git a/src/main/resources/data/unicopia/advancements/recipes/blocks/dense_cloud_stairs.json b/src/main/resources/data/unicopia/advancements/recipes/blocks/dense_cloud_stairs.json index 0551f0e0..aba8906a 100644 --- a/src/main/resources/data/unicopia/advancements/recipes/blocks/dense_cloud_stairs.json +++ b/src/main/resources/data/unicopia/advancements/recipes/blocks/dense_cloud_stairs.json @@ -2,7 +2,7 @@ "parent": "minecraft:recipes/root", "rewards": { "recipes": [ - "unicopia:blocks/dense_cloud_stairs" + "unicopia:dense_cloud_stairs" ] }, "criteria": { @@ -17,7 +17,7 @@ "has_the_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "unicopia:blocks/dense_cloud_stairs" + "recipe": "unicopia:dense_cloud_stairs" } } }, diff --git a/src/main/resources/data/unicopia/recipes/blocks/cloud_bed.json b/src/main/resources/data/unicopia/recipes/blocks/cloud_bed.json deleted file mode 100644 index b1de9a60..00000000 --- a/src/main/resources/data/unicopia/recipes/blocks/cloud_bed.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "pattern": [ - "$$$", - "###" - ], - "key": { - "$": [ - { "item": "unicopia:dense_cloud" } - ], - "#": [ - { "item": "unicopia:cloud_planks" } - ] - }, - "result": { "item": "unicopia:cloud_bed", "count": 1 } -} diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/carved_cloud_cutting.json b/src/main/resources/data/unicopia/recipes/carving/carved_cloud_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/carved_cloud_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/carved_cloud_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/cloud_brick_slab_cutting.json b/src/main/resources/data/unicopia/recipes/carving/cloud_brick_slab_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/cloud_brick_slab_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/cloud_brick_slab_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/cloud_brick_stairs_cutting.json b/src/main/resources/data/unicopia/recipes/carving/cloud_brick_stairs_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/cloud_brick_stairs_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/cloud_brick_stairs_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/cloud_bricks_cutting.json b/src/main/resources/data/unicopia/recipes/carving/cloud_bricks_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/cloud_bricks_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/cloud_bricks_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/cloud_pillar_cutting.json b/src/main/resources/data/unicopia/recipes/carving/cloud_pillar_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/cloud_pillar_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/cloud_pillar_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/cloud_plank_slab_cutting.json b/src/main/resources/data/unicopia/recipes/carving/cloud_plank_slab_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/cloud_plank_slab_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/cloud_plank_slab_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/cloud_plank_stairs_cutting.json b/src/main/resources/data/unicopia/recipes/carving/cloud_plank_stairs_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/cloud_plank_stairs_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/cloud_plank_stairs_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/cloud_planks_cutting.json b/src/main/resources/data/unicopia/recipes/carving/cloud_planks_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/cloud_planks_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/cloud_planks_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/cloud_slab_cutting.json b/src/main/resources/data/unicopia/recipes/carving/cloud_slab_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/cloud_slab_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/cloud_slab_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/cloud_stairs_cutting.json b/src/main/resources/data/unicopia/recipes/carving/cloud_stairs_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/cloud_stairs_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/cloud_stairs_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/dense_cloud_slab_cutting.json b/src/main/resources/data/unicopia/recipes/carving/dense_cloud_slab_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/dense_cloud_slab_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/dense_cloud_slab_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/dense_cloud_stairs_cutting.json b/src/main/resources/data/unicopia/recipes/carving/dense_cloud_stairs_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/dense_cloud_stairs_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/dense_cloud_stairs_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/etched_cloud_cutting.json b/src/main/resources/data/unicopia/recipes/carving/etched_cloud_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/etched_cloud_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/etched_cloud_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/etched_cloud_slab_cutting.json b/src/main/resources/data/unicopia/recipes/carving/etched_cloud_slab_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/etched_cloud_slab_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/etched_cloud_slab_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/carving/etched_cloud_stairs_cutting.json b/src/main/resources/data/unicopia/recipes/carving/etched_cloud_stairs_cutting.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/carving/etched_cloud_stairs_cutting.json rename to src/main/resources/data/unicopia/recipes/carving/etched_cloud_stairs_cutting.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/chiselled_chitin.json b/src/main/resources/data/unicopia/recipes/chiselled_chitin.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/chiselled_chitin.json rename to src/main/resources/data/unicopia/recipes/chiselled_chitin.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/chiselled_chitin_hull.json b/src/main/resources/data/unicopia/recipes/chiselled_chitin_hull.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/chiselled_chitin_hull.json rename to src/main/resources/data/unicopia/recipes/chiselled_chitin_hull.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/chiselled_chitin_slab.json b/src/main/resources/data/unicopia/recipes/chiselled_chitin_slab.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/chiselled_chitin_slab.json rename to src/main/resources/data/unicopia/recipes/chiselled_chitin_slab.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/chiselled_chitin_stairs.json b/src/main/resources/data/unicopia/recipes/chiselled_chitin_stairs.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/chiselled_chitin_stairs.json rename to src/main/resources/data/unicopia/recipes/chiselled_chitin_stairs.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/chitin.json b/src/main/resources/data/unicopia/recipes/chitin.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/chitin.json rename to src/main/resources/data/unicopia/recipes/chitin.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/chitin_spikes.json b/src/main/resources/data/unicopia/recipes/chitin_spikes.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/chitin_spikes.json rename to src/main/resources/data/unicopia/recipes/chitin_spikes.json diff --git a/src/main/resources/data/unicopia/recipes/cloud_bed.json b/src/main/resources/data/unicopia/recipes/cloud_bed.json index 93b131a8..b1de9a60 100644 --- a/src/main/resources/data/unicopia/recipes/cloud_bed.json +++ b/src/main/resources/data/unicopia/recipes/cloud_bed.json @@ -1,20 +1,16 @@ { "type": "minecraft:crafting_shaped", - "group": "bed", "pattern": [ - "^^^", + "$$$", "###" ], "key": { - "^": { - "item": "unicopia:cloud" - }, - "#": { - "item": "unicopia:cloud_planks" - } + "$": [ + { "item": "unicopia:dense_cloud" } + ], + "#": [ + { "item": "unicopia:cloud_planks" } + ] }, - "result": { - "count": 1, - "item": "unicopia:cloud_bed" - } -} \ No newline at end of file + "result": { "item": "unicopia:cloud_bed", "count": 1 } +} diff --git a/src/main/resources/data/unicopia/recipes/blocks/cloud_block.json b/src/main/resources/data/unicopia/recipes/cloud_block.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/cloud_block.json rename to src/main/resources/data/unicopia/recipes/cloud_block.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/cloud_brick_slab.json b/src/main/resources/data/unicopia/recipes/cloud_brick_slab.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/cloud_brick_slab.json rename to src/main/resources/data/unicopia/recipes/cloud_brick_slab.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/cloud_brick_stairs.json b/src/main/resources/data/unicopia/recipes/cloud_brick_stairs.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/cloud_brick_stairs.json rename to src/main/resources/data/unicopia/recipes/cloud_brick_stairs.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/cloud_chest.json b/src/main/resources/data/unicopia/recipes/cloud_chest.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/cloud_chest.json rename to src/main/resources/data/unicopia/recipes/cloud_chest.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/cloud_door.json b/src/main/resources/data/unicopia/recipes/cloud_door.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/cloud_door.json rename to src/main/resources/data/unicopia/recipes/cloud_door.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/cloud_pillar.json b/src/main/resources/data/unicopia/recipes/cloud_pillar.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/cloud_pillar.json rename to src/main/resources/data/unicopia/recipes/cloud_pillar.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/cloud_plank_slab.json b/src/main/resources/data/unicopia/recipes/cloud_plank_slab.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/cloud_plank_slab.json rename to src/main/resources/data/unicopia/recipes/cloud_plank_slab.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/cloud_plank_stairs.json b/src/main/resources/data/unicopia/recipes/cloud_plank_stairs.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/cloud_plank_stairs.json rename to src/main/resources/data/unicopia/recipes/cloud_plank_stairs.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/cloud_planks.json b/src/main/resources/data/unicopia/recipes/cloud_planks.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/cloud_planks.json rename to src/main/resources/data/unicopia/recipes/cloud_planks.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/cloud_slab.json b/src/main/resources/data/unicopia/recipes/cloud_slab.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/cloud_slab.json rename to src/main/resources/data/unicopia/recipes/cloud_slab.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/cloud_stairs.json b/src/main/resources/data/unicopia/recipes/cloud_stairs.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/cloud_stairs.json rename to src/main/resources/data/unicopia/recipes/cloud_stairs.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/dense_cloud.json b/src/main/resources/data/unicopia/recipes/dense_cloud.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/dense_cloud.json rename to src/main/resources/data/unicopia/recipes/dense_cloud.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/dense_cloud_slab.json b/src/main/resources/data/unicopia/recipes/dense_cloud_slab.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/dense_cloud_slab.json rename to src/main/resources/data/unicopia/recipes/dense_cloud_slab.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/dense_cloud_stairs.json b/src/main/resources/data/unicopia/recipes/dense_cloud_stairs.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/dense_cloud_stairs.json rename to src/main/resources/data/unicopia/recipes/dense_cloud_stairs.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/shaping_bench.json b/src/main/resources/data/unicopia/recipes/shaping_bench.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/shaping_bench.json rename to src/main/resources/data/unicopia/recipes/shaping_bench.json diff --git a/src/main/resources/data/unicopia/recipes/blocks/unstable_cloud.json b/src/main/resources/data/unicopia/recipes/unstable_cloud.json similarity index 100% rename from src/main/resources/data/unicopia/recipes/blocks/unstable_cloud.json rename to src/main/resources/data/unicopia/recipes/unstable_cloud.json From c4ab7e1bdf9310d823bd23fd8555ef4b733c1446 Mon Sep 17 00:00:00 2001 From: Sollace Date: Thu, 8 Feb 2024 15:19:41 +0000 Subject: [PATCH 08/12] Zap logs can now be waxed to keep them from zapping you when you mine them --- .../minelittlepony/unicopia/block/UBlocks.java | 11 +++++++++++ .../blockstates/waxed_stripped_zap_log.json | 16 ++++++++++++++++ .../blockstates/waxed_stripped_zap_wood.json | 7 +++++++ .../unicopia/blockstates/waxed_zap_log.json | 16 ++++++++++++++++ .../unicopia/blockstates/waxed_zap_wood.json | 7 +++++++ .../resources/assets/unicopia/lang/en_us.json | 4 ++++ .../models/item/waxed_stripped_zap_log.json | 3 +++ .../models/item/waxed_stripped_zap_wood.json | 3 +++ .../unicopia/models/item/waxed_zap_log.json | 3 +++ .../unicopia/models/item/waxed_zap_wood.json | 3 +++ .../data/minecraft/tags/blocks/logs.json | 6 +++++- .../minecraft/tags/blocks/logs_that_burn.json | 6 +++++- .../data/minecraft/tags/items/logs.json | 6 +++++- .../minecraft/tags/items/logs_that_burn.json | 6 +++++- .../unicopia/recipes/waxed_stripped_zap_log.json | 8 ++++++++ .../recipes/waxed_stripped_zap_wood.json | 8 ++++++++ .../data/unicopia/recipes/waxed_zap_log.json | 8 ++++++++ .../data/unicopia/recipes/waxed_zap_wood.json | 8 ++++++++ .../unicopia/tags/items/groups/earth_pony.json | 4 ++++ 19 files changed, 129 insertions(+), 4 deletions(-) create mode 100644 src/main/resources/assets/unicopia/blockstates/waxed_stripped_zap_log.json create mode 100644 src/main/resources/assets/unicopia/blockstates/waxed_stripped_zap_wood.json create mode 100644 src/main/resources/assets/unicopia/blockstates/waxed_zap_log.json create mode 100644 src/main/resources/assets/unicopia/blockstates/waxed_zap_wood.json create mode 100644 src/main/resources/assets/unicopia/models/item/waxed_stripped_zap_log.json create mode 100644 src/main/resources/assets/unicopia/models/item/waxed_stripped_zap_wood.json create mode 100644 src/main/resources/assets/unicopia/models/item/waxed_zap_log.json create mode 100644 src/main/resources/assets/unicopia/models/item/waxed_zap_wood.json create mode 100644 src/main/resources/data/unicopia/recipes/waxed_stripped_zap_log.json create mode 100644 src/main/resources/data/unicopia/recipes/waxed_stripped_zap_wood.json create mode 100644 src/main/resources/data/unicopia/recipes/waxed_zap_log.json create mode 100644 src/main/resources/data/unicopia/recipes/waxed_zap_wood.json diff --git a/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java b/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java index 7611e7b1..59f50cb0 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java +++ b/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java @@ -28,6 +28,7 @@ import com.minelittlepony.unicopia.item.group.ItemGroupRegistry; import com.minelittlepony.unicopia.server.world.UTreeGen; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.fabricmc.fabric.api.registry.FlammableBlockRegistry; +import net.fabricmc.fabric.api.registry.OxidizableBlocksRegistry; import net.fabricmc.fabric.api.registry.StrippableBlockRegistry; import net.fabricmc.loader.api.FabricLoader; import net.minecraft.block.*; @@ -65,6 +66,12 @@ public interface UBlocks { Block STRIPPED_ZAP_LOG = register("stripped_zap_log", new ZapAppleLogBlock(Blocks.STRIPPED_OAK_LOG, MapColor.LIGHT_GRAY, MapColor.GRAY), ItemGroups.BUILDING_BLOCKS); Block STRIPPED_ZAP_WOOD = register("stripped_zap_wood", new ZapAppleLogBlock(Blocks.STRIPPED_OAK_WOOD, MapColor.GRAY, MapColor.GRAY), ItemGroups.BUILDING_BLOCKS); + Block WAXED_ZAP_LOG = register("waxed_zap_log", BlockConstructionUtils.createLogBlock(MapColor.GRAY, MapColor.DEEPSLATE_GRAY), ItemGroups.BUILDING_BLOCKS); + Block WAXED_ZAP_WOOD = register("waxed_zap_wood", BlockConstructionUtils.createLogBlock(MapColor.DEEPSLATE_GRAY, MapColor.DEEPSLATE_GRAY), ItemGroups.BUILDING_BLOCKS); + + Block WAXED_STRIPPED_ZAP_LOG = register("waxed_stripped_zap_log", BlockConstructionUtils.createLogBlock(MapColor.LIGHT_GRAY, MapColor.GRAY), ItemGroups.BUILDING_BLOCKS); + Block WAXED_STRIPPED_ZAP_WOOD = register("waxed_stripped_zap_wood", BlockConstructionUtils.createLogBlock(MapColor.GRAY, MapColor.GRAY), ItemGroups.BUILDING_BLOCKS); + Block ZAP_LEAVES = register("zap_leaves", new ZapAppleLeavesBlock(), ItemGroups.NATURAL); Block FLOWERING_ZAP_LEAVES = register("flowering_zap_leaves", new BaseZapAppleLeavesBlock(), ItemGroups.NATURAL); Block ZAP_LEAVES_PLACEHOLDER = register("zap_leaves_placeholder", new ZapAppleLeavesPlaceholderBlock()); @@ -268,6 +275,10 @@ public interface UBlocks { StrippableBlockRegistry.register(PALM_LOG, STRIPPED_PALM_LOG); StrippableBlockRegistry.register(ZAP_WOOD, STRIPPED_ZAP_WOOD); StrippableBlockRegistry.register(PALM_WOOD, STRIPPED_PALM_WOOD); + OxidizableBlocksRegistry.registerWaxableBlockPair(ZAP_LOG, WAXED_ZAP_LOG); + OxidizableBlocksRegistry.registerWaxableBlockPair(ZAP_WOOD, WAXED_ZAP_WOOD); + OxidizableBlocksRegistry.registerWaxableBlockPair(STRIPPED_ZAP_LOG, WAXED_STRIPPED_ZAP_LOG); + OxidizableBlocksRegistry.registerWaxableBlockPair(STRIPPED_ZAP_WOOD, WAXED_STRIPPED_ZAP_WOOD); Collections.addAll(TRANSLUCENT_BLOCKS, WEATHER_VANE, CHITIN_SPIKES, PLUNDER_VINE, PLUNDER_VINE_BUD, CLAM_SHELL, SCALLOP_SHELL, TURRET_SHELL, CURING_JOKE, SPECTRAL_FIRE); TintedBlock.REGISTRY.add(PALM_LEAVES); diff --git a/src/main/resources/assets/unicopia/blockstates/waxed_stripped_zap_log.json b/src/main/resources/assets/unicopia/blockstates/waxed_stripped_zap_log.json new file mode 100644 index 00000000..06956a0e --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/waxed_stripped_zap_log.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "unicopia:block/stripped_zap_log_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "unicopia:block/stripped_zap_log" + }, + "axis=z": { + "model": "unicopia:block/stripped_zap_log_horizontal", + "x": 90 + } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/waxed_stripped_zap_wood.json b/src/main/resources/assets/unicopia/blockstates/waxed_stripped_zap_wood.json new file mode 100644 index 00000000..c99ab1cc --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/waxed_stripped_zap_wood.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "unicopia:block/stripped_zap_wood" + } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/waxed_zap_log.json b/src/main/resources/assets/unicopia/blockstates/waxed_zap_log.json new file mode 100644 index 00000000..c3b64c19 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/waxed_zap_log.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "unicopia:block/zap_log_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "unicopia:block/zap_log" + }, + "axis=z": { + "model": "unicopia:block/zap_log_horizontal", + "x": 90 + } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/waxed_zap_wood.json b/src/main/resources/assets/unicopia/blockstates/waxed_zap_wood.json new file mode 100644 index 00000000..30090bc9 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/waxed_zap_wood.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "unicopia:block/zap_wood" + } + } +} diff --git a/src/main/resources/assets/unicopia/lang/en_us.json b/src/main/resources/assets/unicopia/lang/en_us.json index 80b11c0b..fa0d2924 100644 --- a/src/main/resources/assets/unicopia/lang/en_us.json +++ b/src/main/resources/assets/unicopia/lang/en_us.json @@ -232,6 +232,10 @@ "block.unicopia.zap_wood": "Zap Apple Wood", "block.unicopia.stripped_zap_log": "Stripped Zap Apple Log", "block.unicopia.stripped_zap_wood": "Stripped Zap Apple Wood", + "block.unicopia.waxed_zap_log": "Waxed Zap Apple Log", + "block.unicopia.waxed_zap_wood": "Waxed Zap Apple Wood", + "block.unicopia.waxed_stripped_zap_log": "Waxed Stripped Zap Apple Log", + "block.unicopia.waxed_stripped_zap_wood": "Waxed Stripped Zap Apple Wood", "block.unicopia.zap_leaves": "Zap Apple Leaves", "block.unicopia.flowering_zap_leaves": "Flowering Zap Apple Leaves", "block.unicopia.zap_apple": "Zap Apple", diff --git a/src/main/resources/assets/unicopia/models/item/waxed_stripped_zap_log.json b/src/main/resources/assets/unicopia/models/item/waxed_stripped_zap_log.json new file mode 100644 index 00000000..808e8d26 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/waxed_stripped_zap_log.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/stripped_zap_log" +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/waxed_stripped_zap_wood.json b/src/main/resources/assets/unicopia/models/item/waxed_stripped_zap_wood.json new file mode 100644 index 00000000..f1d170f0 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/waxed_stripped_zap_wood.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/stripped_zap_wood" +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/waxed_zap_log.json b/src/main/resources/assets/unicopia/models/item/waxed_zap_log.json new file mode 100644 index 00000000..13676b25 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/waxed_zap_log.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/zap_log" +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/waxed_zap_wood.json b/src/main/resources/assets/unicopia/models/item/waxed_zap_wood.json new file mode 100644 index 00000000..31ae309b --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/waxed_zap_wood.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/zap_wood" +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/blocks/logs.json b/src/main/resources/data/minecraft/tags/blocks/logs.json index f3a91e42..1748acb9 100644 --- a/src/main/resources/data/minecraft/tags/blocks/logs.json +++ b/src/main/resources/data/minecraft/tags/blocks/logs.json @@ -9,6 +9,10 @@ "unicopia:zap_log", "unicopia:zap_wood", "unicopia:stripped_zap_log", - "unicopia:stripped_zap_wood" + "unicopia:stripped_zap_wood", + "unicopia:waxed_zap_log", + "unicopia:waxed_zap_wood", + "unicopia:waxed_stripped_zap_log", + "unicopia:waxed_stripped_zap_wood" ] } diff --git a/src/main/resources/data/minecraft/tags/blocks/logs_that_burn.json b/src/main/resources/data/minecraft/tags/blocks/logs_that_burn.json index 31e49b86..61695d92 100644 --- a/src/main/resources/data/minecraft/tags/blocks/logs_that_burn.json +++ b/src/main/resources/data/minecraft/tags/blocks/logs_that_burn.json @@ -5,6 +5,10 @@ "unicopia:palm_wood", "unicopia:golden_oak_log", "unicopia:stripped_palm_log", - "unicopia:stripped_palm_wood" + "unicopia:stripped_palm_wood", + "unicopia:waxed_zap_log", + "unicopia:waxed_zap_wood", + "unicopia:waxed_stripped_zap_log", + "unicopia:waxed_stripped_zap_wood" ] } diff --git a/src/main/resources/data/minecraft/tags/items/logs.json b/src/main/resources/data/minecraft/tags/items/logs.json index 4e7dd5d0..dbc9931d 100644 --- a/src/main/resources/data/minecraft/tags/items/logs.json +++ b/src/main/resources/data/minecraft/tags/items/logs.json @@ -8,6 +8,10 @@ "unicopia:zap_log", "unicopia:zap_wood", "unicopia:stripped_zap_log", - "unicopia:stripped_zap_wood" + "unicopia:stripped_zap_wood", + "unicopia:waxed_zap_log", + "unicopia:waxed_zap_wood", + "unicopia:waxed_stripped_zap_log", + "unicopia:waxed_stripped_zap_wood" ] } diff --git a/src/main/resources/data/minecraft/tags/items/logs_that_burn.json b/src/main/resources/data/minecraft/tags/items/logs_that_burn.json index 4e7dd5d0..dbc9931d 100644 --- a/src/main/resources/data/minecraft/tags/items/logs_that_burn.json +++ b/src/main/resources/data/minecraft/tags/items/logs_that_burn.json @@ -8,6 +8,10 @@ "unicopia:zap_log", "unicopia:zap_wood", "unicopia:stripped_zap_log", - "unicopia:stripped_zap_wood" + "unicopia:stripped_zap_wood", + "unicopia:waxed_zap_log", + "unicopia:waxed_zap_wood", + "unicopia:waxed_stripped_zap_log", + "unicopia:waxed_stripped_zap_wood" ] } diff --git a/src/main/resources/data/unicopia/recipes/waxed_stripped_zap_log.json b/src/main/resources/data/unicopia/recipes/waxed_stripped_zap_log.json new file mode 100644 index 00000000..49358b05 --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/waxed_stripped_zap_log.json @@ -0,0 +1,8 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { "item": "unicopia:stripped_zap_log" }, + { "item": "minecraft:honeycomb" } + ], + "result": { "item": "unicopia:waxed_stripped_zap_log" } +} diff --git a/src/main/resources/data/unicopia/recipes/waxed_stripped_zap_wood.json b/src/main/resources/data/unicopia/recipes/waxed_stripped_zap_wood.json new file mode 100644 index 00000000..a025fe57 --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/waxed_stripped_zap_wood.json @@ -0,0 +1,8 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { "item": "unicopia:stripped_zap_wood" }, + { "item": "minecraft:honeycomb" } + ], + "result": { "item": "unicopia:waxed_stripped_zap_wood" } +} diff --git a/src/main/resources/data/unicopia/recipes/waxed_zap_log.json b/src/main/resources/data/unicopia/recipes/waxed_zap_log.json new file mode 100644 index 00000000..7196b38f --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/waxed_zap_log.json @@ -0,0 +1,8 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { "item": "unicopia:zap_log" }, + { "item": "minecraft:honeycomb" } + ], + "result": { "item": "unicopia:waxed_zap_log" } +} diff --git a/src/main/resources/data/unicopia/recipes/waxed_zap_wood.json b/src/main/resources/data/unicopia/recipes/waxed_zap_wood.json new file mode 100644 index 00000000..16fb5429 --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/waxed_zap_wood.json @@ -0,0 +1,8 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { "item": "unicopia:zap_wood" }, + { "item": "minecraft:honeycomb" } + ], + "result": { "item": "unicopia:waxed_zap_wood" } +} diff --git a/src/main/resources/data/unicopia/tags/items/groups/earth_pony.json b/src/main/resources/data/unicopia/tags/items/groups/earth_pony.json index db1c0f0b..62d3e0a6 100644 --- a/src/main/resources/data/unicopia/tags/items/groups/earth_pony.json +++ b/src/main/resources/data/unicopia/tags/items/groups/earth_pony.json @@ -10,6 +10,10 @@ "unicopia:zap_wood", "unicopia:stripped_zap_log", "unicopia:stripped_zap_wood", + "unicopia:waxed_zap_log", + "unicopia:waxed_zap_wood", + "unicopia:waxed_stripped_zap_log", + "unicopia:waxed_stripped_zap_wood", "unicopia:candied_apple", "unicopia:stable_door", "unicopia:dark_oak_stable_door", From 400bc19d084b023d6107b4adba902333caf2610f Mon Sep 17 00:00:00 2001 From: Sollace Date: Thu, 8 Feb 2024 16:56:32 +0000 Subject: [PATCH 09/12] Added zap planks, stairs, and slabs --- assets/zap_planks.xcf | Bin 0 -> 4553 bytes .../block/BlockConstructionUtils.java | 2 +- .../unicopia/block/UBlocks.java | 44 ++-- .../unicopia/block/UMapColors.java | 15 ++ .../{ => zap}/BaseZapAppleLeavesBlock.java | 9 +- .../block/{ => zap}/ZapAppleLeavesBlock.java | 4 +- .../ZapAppleLeavesPlaceholderBlock.java | 4 +- .../block/{ => zap}/ZapAppleLogBlock.java | 6 +- .../unicopia/block/{ => zap}/ZapBlock.java | 35 +-- .../unicopia/block/zap/ZapSlabBlock.java | 26 +++ .../block/{ => zap}/ZapStagedBlock.java | 3 +- .../unicopia/block/zap/ZapStairsBlock.java | 22 ++ .../blockstates/waxed_zap_planks.json | 7 + .../unicopia/blockstates/waxed_zap_slab.json | 13 ++ .../blockstates/waxed_zap_stairs.json | 209 ++++++++++++++++++ .../unicopia/blockstates/zap_planks.json | 7 + .../assets/unicopia/blockstates/zap_slab.json | 13 ++ .../unicopia/blockstates/zap_stairs.json | 209 ++++++++++++++++++ .../resources/assets/unicopia/lang/en_us.json | 6 + .../unicopia/models/block/zap_planks.json | 6 + .../unicopia/models/block/zap_slab.json | 8 + .../unicopia/models/block/zap_slab_top.json | 8 + .../unicopia/models/block/zap_stairs.json | 8 + .../models/block/zap_stairs_inner.json | 8 + .../models/block/zap_stairs_outer.json | 8 + .../models/item/waxed_zap_planks.json | 3 + .../unicopia/models/item/waxed_zap_slab.json | 3 + .../models/item/waxed_zap_stairs.json | 3 + .../unicopia/models/item/zap_planks.json | 3 + .../assets/unicopia/models/item/zap_slab.json | 3 + .../unicopia/models/item/zap_stairs.json | 3 + .../unicopia/textures/block/zap_planks.png | Bin 0 -> 7013 bytes .../minecraft/tags/blocks/mineable/axe.json | 3 +- .../data/minecraft/tags/blocks/planks.json | 3 +- .../minecraft/tags/blocks/wooden_slabs.json | 4 +- .../minecraft/tags/blocks/wooden_stairs.json | 4 +- .../data/minecraft/tags/items/planks.json | 3 +- .../minecraft/tags/items/wooden_slabs.json | 4 +- .../minecraft/tags/items/wooden_stairs.json | 4 +- .../blocks/waxed_stripped_zap_log.json | 20 ++ .../blocks/waxed_stripped_zap_wood.json | 20 ++ .../loot_tables/blocks/waxed_zap_log.json | 20 ++ .../loot_tables/blocks/waxed_zap_planks.json | 20 ++ .../loot_tables/blocks/waxed_zap_slab.json | 20 ++ .../loot_tables/blocks/waxed_zap_stairs.json | 20 ++ .../loot_tables/blocks/waxed_zap_wood.json | 20 ++ .../loot_tables/blocks/zap_planks.json | 20 ++ .../unicopia/loot_tables/blocks/zap_slab.json | 20 ++ .../loot_tables/blocks/zap_stairs.json | 20 ++ .../unicopia/recipes/waxed_zap_planks.json | 8 + .../data/unicopia/recipes/waxed_zap_slab.json | 8 + .../unicopia/recipes/waxed_zap_stairs.json | 8 + .../data/unicopia/recipes/zap_planks.json | 12 + .../data/unicopia/recipes/zap_slab.json | 16 ++ .../data/unicopia/recipes/zap_stairs.json | 18 ++ .../data/unicopia/tags/items/zap_logs.json | 9 + 56 files changed, 940 insertions(+), 62 deletions(-) create mode 100644 assets/zap_planks.xcf create mode 100644 src/main/java/com/minelittlepony/unicopia/block/UMapColors.java rename src/main/java/com/minelittlepony/unicopia/block/{ => zap}/BaseZapAppleLeavesBlock.java (90%) rename src/main/java/com/minelittlepony/unicopia/block/{ => zap}/ZapAppleLeavesBlock.java (92%) rename src/main/java/com/minelittlepony/unicopia/block/{ => zap}/ZapAppleLeavesPlaceholderBlock.java (91%) rename src/main/java/com/minelittlepony/unicopia/block/{ => zap}/ZapAppleLogBlock.java (90%) rename src/main/java/com/minelittlepony/unicopia/block/{ => zap}/ZapBlock.java (67%) create mode 100644 src/main/java/com/minelittlepony/unicopia/block/zap/ZapSlabBlock.java rename src/main/java/com/minelittlepony/unicopia/block/{ => zap}/ZapStagedBlock.java (97%) create mode 100644 src/main/java/com/minelittlepony/unicopia/block/zap/ZapStairsBlock.java create mode 100644 src/main/resources/assets/unicopia/blockstates/waxed_zap_planks.json create mode 100644 src/main/resources/assets/unicopia/blockstates/waxed_zap_slab.json create mode 100644 src/main/resources/assets/unicopia/blockstates/waxed_zap_stairs.json create mode 100644 src/main/resources/assets/unicopia/blockstates/zap_planks.json create mode 100644 src/main/resources/assets/unicopia/blockstates/zap_slab.json create mode 100644 src/main/resources/assets/unicopia/blockstates/zap_stairs.json create mode 100644 src/main/resources/assets/unicopia/models/block/zap_planks.json create mode 100644 src/main/resources/assets/unicopia/models/block/zap_slab.json create mode 100644 src/main/resources/assets/unicopia/models/block/zap_slab_top.json create mode 100644 src/main/resources/assets/unicopia/models/block/zap_stairs.json create mode 100644 src/main/resources/assets/unicopia/models/block/zap_stairs_inner.json create mode 100644 src/main/resources/assets/unicopia/models/block/zap_stairs_outer.json create mode 100644 src/main/resources/assets/unicopia/models/item/waxed_zap_planks.json create mode 100644 src/main/resources/assets/unicopia/models/item/waxed_zap_slab.json create mode 100644 src/main/resources/assets/unicopia/models/item/waxed_zap_stairs.json create mode 100644 src/main/resources/assets/unicopia/models/item/zap_planks.json create mode 100644 src/main/resources/assets/unicopia/models/item/zap_slab.json create mode 100644 src/main/resources/assets/unicopia/models/item/zap_stairs.json create mode 100644 src/main/resources/assets/unicopia/textures/block/zap_planks.png create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/waxed_stripped_zap_log.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/waxed_stripped_zap_wood.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/waxed_zap_log.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/waxed_zap_planks.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/waxed_zap_slab.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/waxed_zap_stairs.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/waxed_zap_wood.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/zap_planks.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/zap_slab.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/zap_stairs.json create mode 100644 src/main/resources/data/unicopia/recipes/waxed_zap_planks.json create mode 100644 src/main/resources/data/unicopia/recipes/waxed_zap_slab.json create mode 100644 src/main/resources/data/unicopia/recipes/waxed_zap_stairs.json create mode 100644 src/main/resources/data/unicopia/recipes/zap_planks.json create mode 100644 src/main/resources/data/unicopia/recipes/zap_slab.json create mode 100644 src/main/resources/data/unicopia/recipes/zap_stairs.json create mode 100644 src/main/resources/data/unicopia/tags/items/zap_logs.json diff --git a/assets/zap_planks.xcf b/assets/zap_planks.xcf new file mode 100644 index 0000000000000000000000000000000000000000..dc4a15cdd2cd32172c7307fdd9901487b3e312be GIT binary patch literal 4553 zcmeHKPix#(5Z6j})^Yy0b<-BZ9#q@K$rgLPn_8%>qd-DZr-@VJBs7JE<=NKCLi?}# z2U%;xhPjM0dY_ki97N~PfIJ)of*PdN?=#wDNupbvpQha^C<*FePK{tuU_xmi_3+NkPlSB5WFwADtn(Go9*({xK)A>wTK$zOr( zm1DN^V)(&rn>NX+Uf0C@EUY$PSw)NKjk<1%dVO_WrD)NpRH$l-p?-qzv9Btl&zBN$ z)KrtK5tE=CViA6szi!v6;uEz+^+x^LRDNc5N>uBsjWuxT+SH?mx2NT)>&ozaY^V&2 z;=D;Tu}*60weefFUYWUrDVn*Vn{-KSJs`DaRUKDk5kB)dP(9fsG`y$QHFJGj$@iuG zmA=-O@|P`Lt((Mzr~vvkek`kSmm8@22r@mc6kenM_{d;fxjH+Wd))zF_iwPY-Y^?8 zH?g7~KxIHCPX>RuzENAL6TSNPl7D1&vr%idREl>$u1F_FePr;;jTPqlHi@pSKZ`Gx zZhd~IZmO--byC;V+l^L@z^&x3e%gnJ#~L5i*k>nK*-@1DRqMgVN=2`#4>y~A-avS7 z@RYRl)zEjyYg~T)WU2Sq-~+Uz+iDfc>bO`R*P1h?Ua8C+Ti)}zqo))f@WdEg=q-kS z>&+KFNo>X}c1~=H*yJuO5o)Sy;ytpdwork`FBoTluxoaKK0^Nb7JNfz1wuI*pN)8! zxbXy^N$|r7UQF=k68!lDe<8t-0FUQ!T^KN>f#Od7G4ddO3G-ycqs~M^9(R7UNsKd( z5{oz)kVFPeF$TZpUY~4K}XNTpO*tpyLMHo*#hRWAKLa7}~cP zLqz6toNa@a@3-L`p8vtX3f5!aK9Y_xI z+uN9&9u7F#OAjBU?3b)F$fW`#o_m|rw@LlKRBE>iHQP;dLN~9{iskzO>Ndy!bj35YuL zd3>dsDEGUP zSMCBScY*S}lH$5~!8xD~ZBr^Zd+^^=ah8_}(TJd>$bMT11?{%rbSdxb69)y9IBB}$ zXcQKCM{_9XYlKjTPz0ca(q(}@hbhuW6{=}eqdg;q_9O(vV1zKCM4&qw7)2)XO$yR;m?C{tkqQN=AoYwgQcscvF&H6CC=sNc0vJUoh&u_$ z38S>M8|lNbvNRy?&P9jHg=}Fcdl>r1%PHwVmM|t>K17cp)V(2e7M!9U1jh<1_=t)W-1|x(CC4#Y22BQcCaTftO yVU#v@BYim5G6t;Ot>{pzTq+Nh4nzNVD`gy52FAo&hv+ecx)(>iP%Qov-RVzp+X6fQ literal 0 HcmV?d00001 diff --git a/src/main/java/com/minelittlepony/unicopia/block/BlockConstructionUtils.java b/src/main/java/com/minelittlepony/unicopia/block/BlockConstructionUtils.java index 963d38a2..8d4742d2 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/BlockConstructionUtils.java +++ b/src/main/java/com/minelittlepony/unicopia/block/BlockConstructionUtils.java @@ -15,7 +15,7 @@ import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Direction; import net.minecraft.world.BlockView; -interface BlockConstructionUtils { +public interface BlockConstructionUtils { static ButtonBlock woodenButton() { return woodenButton(BlockSoundGroup.WOOD, BlockSetType.OAK); } diff --git a/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java b/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java index 59f50cb0..a19d2e39 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java +++ b/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java @@ -21,6 +21,13 @@ import com.minelittlepony.unicopia.block.cloud.SoggyCloudBlock; import com.minelittlepony.unicopia.block.cloud.SoggyCloudSlabBlock; import com.minelittlepony.unicopia.block.cloud.SoggyCloudStairsBlock; import com.minelittlepony.unicopia.block.cloud.UnstableCloudBlock; +import com.minelittlepony.unicopia.block.zap.BaseZapAppleLeavesBlock; +import com.minelittlepony.unicopia.block.zap.ZapAppleLeavesBlock; +import com.minelittlepony.unicopia.block.zap.ZapAppleLeavesPlaceholderBlock; +import com.minelittlepony.unicopia.block.zap.ZapAppleLogBlock; +import com.minelittlepony.unicopia.block.zap.ZapBlock; +import com.minelittlepony.unicopia.block.zap.ZapSlabBlock; +import com.minelittlepony.unicopia.block.zap.ZapStairsBlock; import com.minelittlepony.unicopia.entity.effect.UEffects; import com.minelittlepony.unicopia.item.UItems; import com.minelittlepony.unicopia.item.cloud.CloudBlockItem; @@ -60,30 +67,36 @@ public interface UBlocks { Block FROSTED_OBSIDIAN = register("frosted_obsidian", new FrostedObsidianBlock(FabricBlockSettings.copy(Blocks.OBSIDIAN).ticksRandomly())); - Block ZAP_LOG = register("zap_log", new ZapAppleLogBlock(Blocks.OAK_LOG, MapColor.GRAY, MapColor.DEEPSLATE_GRAY), ItemGroups.BUILDING_BLOCKS); - Block ZAP_WOOD = register("zap_wood", new ZapAppleLogBlock(Blocks.OAK_WOOD, MapColor.DEEPSLATE_GRAY, MapColor.DEEPSLATE_GRAY), ItemGroups.BUILDING_BLOCKS); + Block ZAP_LOG = register("zap_log", new ZapAppleLogBlock(Blocks.OAK_LOG, UMapColors.ZAP_LOG_END, UMapColors.ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); + Block ZAP_WOOD = register("zap_wood", new ZapAppleLogBlock(Blocks.OAK_WOOD, UMapColors.ZAP_LOG_SIDE, UMapColors.ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); + Block STRIPPED_ZAP_LOG = register("stripped_zap_log", new ZapAppleLogBlock(Blocks.STRIPPED_OAK_LOG, UMapColors.ZAP_LOG_END, UMapColors.STRIPPED_ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); + Block STRIPPED_ZAP_WOOD = register("stripped_zap_wood", new ZapAppleLogBlock(Blocks.STRIPPED_OAK_WOOD, UMapColors.STRIPPED_ZAP_LOG_SIDE, UMapColors.STRIPPED_ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); - Block STRIPPED_ZAP_LOG = register("stripped_zap_log", new ZapAppleLogBlock(Blocks.STRIPPED_OAK_LOG, MapColor.LIGHT_GRAY, MapColor.GRAY), ItemGroups.BUILDING_BLOCKS); - Block STRIPPED_ZAP_WOOD = register("stripped_zap_wood", new ZapAppleLogBlock(Blocks.STRIPPED_OAK_WOOD, MapColor.GRAY, MapColor.GRAY), ItemGroups.BUILDING_BLOCKS); + Block WAXED_ZAP_LOG = register("waxed_zap_log", BlockConstructionUtils.createLogBlock(UMapColors.ZAP_LOG_END, UMapColors.ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); + Block WAXED_ZAP_WOOD = register("waxed_zap_wood", BlockConstructionUtils.createLogBlock(UMapColors.ZAP_LOG_SIDE, UMapColors.ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); + Block WAXED_STRIPPED_ZAP_LOG = register("waxed_stripped_zap_log", BlockConstructionUtils.createLogBlock(UMapColors.ZAP_LOG_END, UMapColors.STRIPPED_ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); + Block WAXED_STRIPPED_ZAP_WOOD = register("waxed_stripped_zap_wood", BlockConstructionUtils.createLogBlock(UMapColors.STRIPPED_ZAP_LOG_SIDE, UMapColors.STRIPPED_ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); - Block WAXED_ZAP_LOG = register("waxed_zap_log", BlockConstructionUtils.createLogBlock(MapColor.GRAY, MapColor.DEEPSLATE_GRAY), ItemGroups.BUILDING_BLOCKS); - Block WAXED_ZAP_WOOD = register("waxed_zap_wood", BlockConstructionUtils.createLogBlock(MapColor.DEEPSLATE_GRAY, MapColor.DEEPSLATE_GRAY), ItemGroups.BUILDING_BLOCKS); + Block ZAP_PLANKS = register("zap_planks", new ZapBlock(Settings.create().mapColor(UMapColors.ZAP_PLANKS).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); + Block ZAP_STAIRS = register("zap_stairs", new ZapStairsBlock(ZAP_PLANKS.getDefaultState(), Settings.copy(ZAP_PLANKS).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); + Block ZAP_SLAB = register("zap_slab", new ZapSlabBlock(Settings.create().mapColor(ZAP_PLANKS.getDefaultMapColor()).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); - Block WAXED_STRIPPED_ZAP_LOG = register("waxed_stripped_zap_log", BlockConstructionUtils.createLogBlock(MapColor.LIGHT_GRAY, MapColor.GRAY), ItemGroups.BUILDING_BLOCKS); - Block WAXED_STRIPPED_ZAP_WOOD = register("waxed_stripped_zap_wood", BlockConstructionUtils.createLogBlock(MapColor.GRAY, MapColor.GRAY), ItemGroups.BUILDING_BLOCKS); + Block WAXED_ZAP_PLANKS = register("waxed_zap_planks", new Block(Settings.create().mapColor(UMapColors.ZAP_PLANKS).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); + Block WAXED_ZAP_STAIRS = register("waxed_zap_stairs", new StairsBlock(WAXED_ZAP_PLANKS.getDefaultState(), Settings.copy(WAXED_ZAP_PLANKS).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); + Block WAXED_ZAP_SLAB = register("waxed_zap_slab", new ZapSlabBlock(Settings.create().mapColor(WAXED_ZAP_PLANKS.getDefaultMapColor()).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); Block ZAP_LEAVES = register("zap_leaves", new ZapAppleLeavesBlock(), ItemGroups.NATURAL); Block FLOWERING_ZAP_LEAVES = register("flowering_zap_leaves", new BaseZapAppleLeavesBlock(), ItemGroups.NATURAL); Block ZAP_LEAVES_PLACEHOLDER = register("zap_leaves_placeholder", new ZapAppleLeavesPlaceholderBlock()); Block ZAP_BULB = register("zap_bulb", new FruitBlock(Settings.create().mapColor(MapColor.GRAY).strength(500, 1200).sounds(BlockSoundGroup.AZALEA_LEAVES), Direction.DOWN, ZAP_LEAVES, FruitBlock.DEFAULT_SHAPE, false)); - Block ZAP_APPLE = register("zap_apple", new FruitBlock(Settings.create().mapColor(MapColor.GRAY).sounds(BlockSoundGroup.AZALEA_LEAVES), Direction.DOWN, ZAP_LEAVES, FruitBlock.DEFAULT_SHAPE, false)); + Block ZAP_APPLE = register("zap_apple", new FruitBlock(Settings.create().mapColor(MapColor.YELLOW).sounds(BlockSoundGroup.AZALEA_LEAVES), Direction.DOWN, ZAP_LEAVES, FruitBlock.DEFAULT_SHAPE, false)); - Block PALM_LOG = register("palm_log", BlockConstructionUtils.createLogBlock(MapColor.OFF_WHITE, MapColor.SPRUCE_BROWN), ItemGroups.BUILDING_BLOCKS); - Block PALM_WOOD = register("palm_wood", BlockConstructionUtils.createWoodBlock(MapColor.OFF_WHITE), ItemGroups.BUILDING_BLOCKS); - Block STRIPPED_PALM_LOG = register("stripped_palm_log", BlockConstructionUtils.createLogBlock(MapColor.OFF_WHITE, MapColor.OFF_WHITE), ItemGroups.BUILDING_BLOCKS); - Block STRIPPED_PALM_WOOD = register("stripped_palm_wood", BlockConstructionUtils.createWoodBlock(MapColor.OFF_WHITE), ItemGroups.BUILDING_BLOCKS); + Block PALM_LOG = register("palm_log", BlockConstructionUtils.createLogBlock(UMapColors.PALM_LOG_END, UMapColors.PALM_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); + Block PALM_WOOD = register("palm_wood", BlockConstructionUtils.createWoodBlock(UMapColors.PALM_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); + Block STRIPPED_PALM_LOG = register("stripped_palm_log", BlockConstructionUtils.createLogBlock(UMapColors.PALM_LOG_END, UMapColors.STRIPPED_PALM_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); + Block STRIPPED_PALM_WOOD = register("stripped_palm_wood", BlockConstructionUtils.createWoodBlock(UMapColors.STRIPPED_PALM_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); - Block PALM_PLANKS = register("palm_planks", new Block(Settings.create().mapColor(MapColor.OFF_WHITE).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); + Block PALM_PLANKS = register("palm_planks", new Block(Settings.create().mapColor(UMapColors.PALM_PLANKS).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); Block PALM_STAIRS = register("palm_stairs", new StairsBlock(PALM_PLANKS.getDefaultState(), Settings.copy(PALM_PLANKS).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); Block PALM_SLAB = register("palm_slab", new SlabBlock(Settings.create().mapColor(PALM_PLANKS.getDefaultMapColor()).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); Block PALM_FENCE = register("palm_fence", new FenceBlock(Settings.create().mapColor(PALM_PLANKS.getDefaultMapColor()).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); @@ -279,6 +292,9 @@ public interface UBlocks { OxidizableBlocksRegistry.registerWaxableBlockPair(ZAP_WOOD, WAXED_ZAP_WOOD); OxidizableBlocksRegistry.registerWaxableBlockPair(STRIPPED_ZAP_LOG, WAXED_STRIPPED_ZAP_LOG); OxidizableBlocksRegistry.registerWaxableBlockPair(STRIPPED_ZAP_WOOD, WAXED_STRIPPED_ZAP_WOOD); + OxidizableBlocksRegistry.registerWaxableBlockPair(ZAP_PLANKS, WAXED_ZAP_PLANKS); + OxidizableBlocksRegistry.registerWaxableBlockPair(ZAP_STAIRS, WAXED_ZAP_STAIRS); + OxidizableBlocksRegistry.registerWaxableBlockPair(ZAP_SLAB, WAXED_ZAP_SLAB); Collections.addAll(TRANSLUCENT_BLOCKS, WEATHER_VANE, CHITIN_SPIKES, PLUNDER_VINE, PLUNDER_VINE_BUD, CLAM_SHELL, SCALLOP_SHELL, TURRET_SHELL, CURING_JOKE, SPECTRAL_FIRE); TintedBlock.REGISTRY.add(PALM_LEAVES); diff --git a/src/main/java/com/minelittlepony/unicopia/block/UMapColors.java b/src/main/java/com/minelittlepony/unicopia/block/UMapColors.java new file mode 100644 index 00000000..019176e4 --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/block/UMapColors.java @@ -0,0 +1,15 @@ +package com.minelittlepony.unicopia.block; + +import net.minecraft.block.MapColor; + +public interface UMapColors { + MapColor ZAP_LEAVES = MapColor.MAGENTA; + MapColor ZAP_PLANKS = MapColor.MAGENTA; + MapColor ZAP_LOG_SIDE = MapColor.PURPLE; + MapColor ZAP_LOG_END = MapColor.MAGENTA; + MapColor STRIPPED_ZAP_LOG_SIDE = MapColor.PURPLE; + MapColor PALM_PLANKS = MapColor.OFF_WHITE; + MapColor PALM_LOG_END = MapColor.OFF_WHITE; + MapColor PALM_LOG_SIDE = MapColor.SPRUCE_BROWN; + MapColor STRIPPED_PALM_LOG_SIDE = MapColor.OFF_WHITE; +} diff --git a/src/main/java/com/minelittlepony/unicopia/block/BaseZapAppleLeavesBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/BaseZapAppleLeavesBlock.java similarity index 90% rename from src/main/java/com/minelittlepony/unicopia/block/BaseZapAppleLeavesBlock.java rename to src/main/java/com/minelittlepony/unicopia/block/zap/BaseZapAppleLeavesBlock.java index 902b5a11..093f9270 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/BaseZapAppleLeavesBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/BaseZapAppleLeavesBlock.java @@ -1,7 +1,10 @@ -package com.minelittlepony.unicopia.block; +package com.minelittlepony.unicopia.block.zap; import org.jetbrains.annotations.Nullable; +import com.minelittlepony.unicopia.block.BlockConstructionUtils; +import com.minelittlepony.unicopia.block.TintedBlock; +import com.minelittlepony.unicopia.block.UMapColors; import com.minelittlepony.unicopia.entity.player.Pony; import com.minelittlepony.unicopia.server.world.ZapAppleStageStore; @@ -15,9 +18,9 @@ import net.minecraft.world.*; public class BaseZapAppleLeavesBlock extends LeavesBlock implements TintedBlock, ZapStagedBlock { - BaseZapAppleLeavesBlock() { + public BaseZapAppleLeavesBlock() { super(Settings.create() - .mapColor(MapColor.PURPLE) + .mapColor(UMapColors.ZAP_LEAVES) .strength(500, 1200) .ticksRandomly() .sounds(BlockSoundGroup.AZALEA_LEAVES) diff --git a/src/main/java/com/minelittlepony/unicopia/block/ZapAppleLeavesBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapAppleLeavesBlock.java similarity index 92% rename from src/main/java/com/minelittlepony/unicopia/block/ZapAppleLeavesBlock.java rename to src/main/java/com/minelittlepony/unicopia/block/zap/ZapAppleLeavesBlock.java index e94f3475..1fcfc3a6 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/ZapAppleLeavesBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapAppleLeavesBlock.java @@ -1,4 +1,4 @@ -package com.minelittlepony.unicopia.block; +package com.minelittlepony.unicopia.block.zap; import com.minelittlepony.unicopia.server.world.ZapAppleStageStore; @@ -10,7 +10,7 @@ import net.minecraft.state.property.*; public class ZapAppleLeavesBlock extends BaseZapAppleLeavesBlock { public static final EnumProperty STAGE = EnumProperty.of("stage", ZapAppleStageStore.Stage.class); - ZapAppleLeavesBlock() { + public ZapAppleLeavesBlock() { setDefaultState(getDefaultState().with(STAGE, ZapAppleStageStore.Stage.GREENING)); } diff --git a/src/main/java/com/minelittlepony/unicopia/block/ZapAppleLeavesPlaceholderBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapAppleLeavesPlaceholderBlock.java similarity index 91% rename from src/main/java/com/minelittlepony/unicopia/block/ZapAppleLeavesPlaceholderBlock.java rename to src/main/java/com/minelittlepony/unicopia/block/zap/ZapAppleLeavesPlaceholderBlock.java index 40fa9fc2..181bfc88 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/ZapAppleLeavesPlaceholderBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapAppleLeavesPlaceholderBlock.java @@ -1,4 +1,4 @@ -package com.minelittlepony.unicopia.block; +package com.minelittlepony.unicopia.block.zap; import com.minelittlepony.unicopia.server.world.ZapAppleStageStore; import com.minelittlepony.unicopia.server.world.ZapAppleStageStore.Stage; @@ -11,7 +11,7 @@ import net.minecraft.world.World; public class ZapAppleLeavesPlaceholderBlock extends AirBlock implements ZapStagedBlock { - ZapAppleLeavesPlaceholderBlock() { + public ZapAppleLeavesPlaceholderBlock() { super(Settings.create().replaceable().noCollision().dropsNothing().air()); } diff --git a/src/main/java/com/minelittlepony/unicopia/block/ZapAppleLogBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapAppleLogBlock.java similarity index 90% rename from src/main/java/com/minelittlepony/unicopia/block/ZapAppleLogBlock.java rename to src/main/java/com/minelittlepony/unicopia/block/zap/ZapAppleLogBlock.java index 9605412b..e0c117ff 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/ZapAppleLogBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapAppleLogBlock.java @@ -1,4 +1,4 @@ -package com.minelittlepony.unicopia.block; +package com.minelittlepony.unicopia.block.zap; import com.minelittlepony.unicopia.entity.player.Pony; @@ -14,11 +14,11 @@ import net.minecraft.world.BlockView; import net.minecraft.world.World; public class ZapAppleLogBlock extends PillarBlock { - public static final BooleanProperty NATURAL = ZapBlock.NATURAL; + public static final BooleanProperty NATURAL = BooleanProperty.of("natural"); private final Block artifialModelBlock; - ZapAppleLogBlock(Block artifialModelBlock, MapColor topMapColor, MapColor sideMapColor) { + public ZapAppleLogBlock(Block artifialModelBlock, MapColor topMapColor, MapColor sideMapColor) { super(AbstractBlock.Settings.create().mapColor( state -> state.get(PillarBlock.AXIS) == Direction.Axis.Y ? topMapColor : sideMapColor ) diff --git a/src/main/java/com/minelittlepony/unicopia/block/ZapBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapBlock.java similarity index 67% rename from src/main/java/com/minelittlepony/unicopia/block/ZapBlock.java rename to src/main/java/com/minelittlepony/unicopia/block/zap/ZapBlock.java index dcc0e5f7..29ae5f9a 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/ZapBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapBlock.java @@ -1,4 +1,4 @@ -package com.minelittlepony.unicopia.block; +package com.minelittlepony.unicopia.block.zap; import com.minelittlepony.unicopia.entity.player.Pony; import com.minelittlepony.unicopia.particle.LightningBoltParticleEffect; @@ -8,35 +8,15 @@ import net.minecraft.entity.EntityType; import net.minecraft.entity.ItemEntity; import net.minecraft.entity.LightningEntity; import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.item.ItemPlacementContext; import net.minecraft.server.world.ServerWorld; -import net.minecraft.state.StateManager; -import net.minecraft.state.property.BooleanProperty; import net.minecraft.util.math.*; import net.minecraft.world.BlockView; import net.minecraft.world.World; import net.minecraft.world.event.GameEvent; public class ZapBlock extends Block { - public static final BooleanProperty NATURAL = BooleanProperty.of("natural"); - - private final Block artificialModelBlock; - - ZapBlock(Settings settings, Block artificialModelBlock) { - super(settings.strength(500, 1200)); - setDefaultState(getDefaultState().with(NATURAL, true)); - this.artificialModelBlock = artificialModelBlock; - } - - @Override - protected void appendProperties(StateManager.Builder builder) { - super.appendProperties(builder); - builder.add(NATURAL); - } - - @Override - public BlockState getPlacementState(ItemPlacementContext ctx) { - return getDefaultState().with(NATURAL, false); + public ZapBlock(Settings settings) { + super(settings); } @Deprecated @@ -48,12 +28,10 @@ public class ZapBlock extends Block { @Deprecated @Override public float calcBlockBreakingDelta(BlockState state, PlayerEntity player, BlockView world, BlockPos pos) { - if (!state.get(NATURAL)) { - return artificialModelBlock.calcBlockBreakingDelta(artificialModelBlock.getDefaultState(), player, world, pos); - } - - float delta = super.calcBlockBreakingDelta(state, player, world, pos); + return getBlockBreakingDelta(super.calcBlockBreakingDelta(state, player, world, pos), player); + } + public static float getBlockBreakingDelta(float delta, PlayerEntity player) { if (Pony.of(player).getCompositeRace().canUseEarth()) { delta *= 50; } @@ -61,7 +39,6 @@ public class ZapBlock extends Block { return MathHelper.clamp(delta, 0, 0.9F); } - public static void triggerLightning(BlockState state, World world, BlockPos pos, PlayerEntity player) { if (world instanceof ServerWorld serverWorld) { Vec3d center = Vec3d.ofCenter(pos); diff --git a/src/main/java/com/minelittlepony/unicopia/block/zap/ZapSlabBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapSlabBlock.java new file mode 100644 index 00000000..535e9b5d --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapSlabBlock.java @@ -0,0 +1,26 @@ +package com.minelittlepony.unicopia.block.zap; + +import net.minecraft.block.BlockState; +import net.minecraft.block.SlabBlock; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.BlockView; +import net.minecraft.world.World; + +public class ZapSlabBlock extends SlabBlock { + public ZapSlabBlock(Settings settings) { + super(settings); + } + + @Deprecated + @Override + public void onBlockBreakStart(BlockState state, World world, BlockPos pos, PlayerEntity player) { + ZapBlock.triggerLightning(state, world, pos, player); + } + + @Deprecated + @Override + public float calcBlockBreakingDelta(BlockState state, PlayerEntity player, BlockView world, BlockPos pos) { + return ZapBlock.getBlockBreakingDelta(super.calcBlockBreakingDelta(state, player, world, pos), player); + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/block/ZapStagedBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapStagedBlock.java similarity index 97% rename from src/main/java/com/minelittlepony/unicopia/block/ZapStagedBlock.java rename to src/main/java/com/minelittlepony/unicopia/block/zap/ZapStagedBlock.java index 5e3f41d4..72ce0d28 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/ZapStagedBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapStagedBlock.java @@ -1,5 +1,6 @@ -package com.minelittlepony.unicopia.block; +package com.minelittlepony.unicopia.block.zap; +import com.minelittlepony.unicopia.block.UBlocks; import com.minelittlepony.unicopia.server.world.ZapAppleStageStore; import net.minecraft.block.Block; diff --git a/src/main/java/com/minelittlepony/unicopia/block/zap/ZapStairsBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapStairsBlock.java new file mode 100644 index 00000000..8d13fadd --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapStairsBlock.java @@ -0,0 +1,22 @@ +package com.minelittlepony.unicopia.block.zap; + +import net.minecraft.block.BlockState; +import net.minecraft.block.StairsBlock; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.BlockView; + +public class ZapStairsBlock extends StairsBlock { + private final BlockState baseBlock; + + public ZapStairsBlock(BlockState baseBlockState, Settings settings) { + super(baseBlockState, settings); + this.baseBlock = baseBlockState; + } + + @Deprecated + @Override + public float calcBlockBreakingDelta(BlockState state, PlayerEntity player, BlockView world, BlockPos pos) { + return baseBlock.calcBlockBreakingDelta(player, world, pos); + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/waxed_zap_planks.json b/src/main/resources/assets/unicopia/blockstates/waxed_zap_planks.json new file mode 100644 index 00000000..ac083bd3 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/waxed_zap_planks.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "unicopia:block/zap_planks" + } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/waxed_zap_slab.json b/src/main/resources/assets/unicopia/blockstates/waxed_zap_slab.json new file mode 100644 index 00000000..4de01681 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/waxed_zap_slab.json @@ -0,0 +1,13 @@ +{ + "variants": { + "type=bottom": { + "model": "unicopia:block/zap_slab" + }, + "type=double": { + "model": "unicopia:block/zap_planks" + }, + "type=top": { + "model": "unicopia:block/zap_slab_top" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/blockstates/waxed_zap_stairs.json b/src/main/resources/assets/unicopia/blockstates/waxed_zap_stairs.json new file mode 100644 index 00000000..2fdbab92 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/waxed_zap_stairs.json @@ -0,0 +1,209 @@ +{ + "variants": { + "facing=east,half=bottom,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "y": 270 + }, + "facing=east,half=bottom,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner" + }, + "facing=east,half=bottom,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "y": 270 + }, + "facing=east,half=bottom,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer" + }, + "facing=east,half=bottom,shape=straight": { + "model": "unicopia:block/zap_stairs" + }, + "facing=east,half=top,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180 + }, + "facing=east,half=top,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=east,half=top,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180 + }, + "facing=east,half=top,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=east,half=top,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "x": 180 + }, + "facing=north,half=bottom,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "y": 180 + }, + "facing=north,half=bottom,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "y": 270 + }, + "facing=north,half=bottom,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "y": 180 + }, + "facing=north,half=bottom,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "y": 270 + }, + "facing=north,half=bottom,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "y": 270 + }, + "facing=north,half=top,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=north,half=top,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180 + }, + "facing=north,half=top,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=north,half=top,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180 + }, + "facing=north,half=top,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=south,half=bottom,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner" + }, + "facing=south,half=bottom,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "y": 90 + }, + "facing=south,half=bottom,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer" + }, + "facing=south,half=bottom,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "y": 90 + }, + "facing=south,half=bottom,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "y": 90 + }, + "facing=south,half=top,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=south,half=top,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=south,half=top,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=south,half=top,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=south,half=top,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=west,half=bottom,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "y": 90 + }, + "facing=west,half=bottom,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "y": 180 + }, + "facing=west,half=bottom,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "y": 90 + }, + "facing=west,half=bottom,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "y": 180 + }, + "facing=west,half=bottom,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "y": 180 + }, + "facing=west,half=top,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=west,half=top,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=west,half=top,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=west,half=top,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=west,half=top,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "x": 180, + "y": 180 + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/blockstates/zap_planks.json b/src/main/resources/assets/unicopia/blockstates/zap_planks.json new file mode 100644 index 00000000..ac083bd3 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/zap_planks.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "unicopia:block/zap_planks" + } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/zap_slab.json b/src/main/resources/assets/unicopia/blockstates/zap_slab.json new file mode 100644 index 00000000..4de01681 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/zap_slab.json @@ -0,0 +1,13 @@ +{ + "variants": { + "type=bottom": { + "model": "unicopia:block/zap_slab" + }, + "type=double": { + "model": "unicopia:block/zap_planks" + }, + "type=top": { + "model": "unicopia:block/zap_slab_top" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/blockstates/zap_stairs.json b/src/main/resources/assets/unicopia/blockstates/zap_stairs.json new file mode 100644 index 00000000..2fdbab92 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/zap_stairs.json @@ -0,0 +1,209 @@ +{ + "variants": { + "facing=east,half=bottom,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "y": 270 + }, + "facing=east,half=bottom,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner" + }, + "facing=east,half=bottom,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "y": 270 + }, + "facing=east,half=bottom,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer" + }, + "facing=east,half=bottom,shape=straight": { + "model": "unicopia:block/zap_stairs" + }, + "facing=east,half=top,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180 + }, + "facing=east,half=top,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=east,half=top,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180 + }, + "facing=east,half=top,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=east,half=top,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "x": 180 + }, + "facing=north,half=bottom,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "y": 180 + }, + "facing=north,half=bottom,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "y": 270 + }, + "facing=north,half=bottom,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "y": 180 + }, + "facing=north,half=bottom,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "y": 270 + }, + "facing=north,half=bottom,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "y": 270 + }, + "facing=north,half=top,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=north,half=top,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180 + }, + "facing=north,half=top,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=north,half=top,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180 + }, + "facing=north,half=top,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=south,half=bottom,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner" + }, + "facing=south,half=bottom,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "y": 90 + }, + "facing=south,half=bottom,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer" + }, + "facing=south,half=bottom,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "y": 90 + }, + "facing=south,half=bottom,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "y": 90 + }, + "facing=south,half=top,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=south,half=top,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=south,half=top,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=south,half=top,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=south,half=top,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "x": 180, + "y": 90 + }, + "facing=west,half=bottom,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "y": 90 + }, + "facing=west,half=bottom,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "y": 180 + }, + "facing=west,half=bottom,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "y": 90 + }, + "facing=west,half=bottom,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "y": 180 + }, + "facing=west,half=bottom,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "y": 180 + }, + "facing=west,half=top,shape=inner_left": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=west,half=top,shape=inner_right": { + "model": "unicopia:block/zap_stairs_inner", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=west,half=top,shape=outer_left": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180, + "y": 180 + }, + "facing=west,half=top,shape=outer_right": { + "model": "unicopia:block/zap_stairs_outer", + "uvlock": true, + "x": 180, + "y": 270 + }, + "facing=west,half=top,shape=straight": { + "model": "unicopia:block/zap_stairs", + "uvlock": true, + "x": 180, + "y": 180 + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/lang/en_us.json b/src/main/resources/assets/unicopia/lang/en_us.json index fa0d2924..9bf87f93 100644 --- a/src/main/resources/assets/unicopia/lang/en_us.json +++ b/src/main/resources/assets/unicopia/lang/en_us.json @@ -232,10 +232,16 @@ "block.unicopia.zap_wood": "Zap Apple Wood", "block.unicopia.stripped_zap_log": "Stripped Zap Apple Log", "block.unicopia.stripped_zap_wood": "Stripped Zap Apple Wood", + "block.unicopia.zap_planks": "Zap Apple Planks", + "block.unicopia.zap_stairs": "Zap Apple Stairs", + "block.unicopia.zap_slab": "Zap Apple Slab", "block.unicopia.waxed_zap_log": "Waxed Zap Apple Log", "block.unicopia.waxed_zap_wood": "Waxed Zap Apple Wood", "block.unicopia.waxed_stripped_zap_log": "Waxed Stripped Zap Apple Log", "block.unicopia.waxed_stripped_zap_wood": "Waxed Stripped Zap Apple Wood", + "block.unicopia.waxed_zap_planks": "Waxed Zap Apple Planks", + "block.unicopia.waxed_zap_stairs": "Waxed Zap Apple Stairs", + "block.unicopia.waxed_zap_slab": "Waxed Zap Apple Slab", "block.unicopia.zap_leaves": "Zap Apple Leaves", "block.unicopia.flowering_zap_leaves": "Flowering Zap Apple Leaves", "block.unicopia.zap_apple": "Zap Apple", diff --git a/src/main/resources/assets/unicopia/models/block/zap_planks.json b/src/main/resources/assets/unicopia/models/block/zap_planks.json new file mode 100644 index 00000000..a3b0506c --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/zap_planks.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "unicopia:block/zap_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/zap_slab.json b/src/main/resources/assets/unicopia/models/block/zap_slab.json new file mode 100644 index 00000000..019be187 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/zap_slab.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/slab", + "textures": { + "bottom": "unicopia:block/zap_planks", + "side": "unicopia:block/zap_planks", + "top": "unicopia:block/zap_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/zap_slab_top.json b/src/main/resources/assets/unicopia/models/block/zap_slab_top.json new file mode 100644 index 00000000..c842f9e8 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/zap_slab_top.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/slab_top", + "textures": { + "bottom": "unicopia:block/zap_planks", + "side": "unicopia:block/zap_planks", + "top": "unicopia:block/zap_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/zap_stairs.json b/src/main/resources/assets/unicopia/models/block/zap_stairs.json new file mode 100644 index 00000000..56f63e69 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/zap_stairs.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/stairs", + "textures": { + "bottom": "unicopia:block/zap_planks", + "side": "unicopia:block/zap_planks", + "top": "unicopia:block/zap_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/zap_stairs_inner.json b/src/main/resources/assets/unicopia/models/block/zap_stairs_inner.json new file mode 100644 index 00000000..7653e732 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/zap_stairs_inner.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/inner_stairs", + "textures": { + "bottom": "unicopia:block/zap_planks", + "side": "unicopia:block/zap_planks", + "top": "unicopia:block/zap_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/zap_stairs_outer.json b/src/main/resources/assets/unicopia/models/block/zap_stairs_outer.json new file mode 100644 index 00000000..57424f35 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/zap_stairs_outer.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/outer_stairs", + "textures": { + "bottom": "unicopia:block/zap_planks", + "side": "unicopia:block/zap_planks", + "top": "unicopia:block/zap_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/waxed_zap_planks.json b/src/main/resources/assets/unicopia/models/item/waxed_zap_planks.json new file mode 100644 index 00000000..67af01e5 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/waxed_zap_planks.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/zap_planks" +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/waxed_zap_slab.json b/src/main/resources/assets/unicopia/models/item/waxed_zap_slab.json new file mode 100644 index 00000000..f4b16226 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/waxed_zap_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/zap_slab" +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/waxed_zap_stairs.json b/src/main/resources/assets/unicopia/models/item/waxed_zap_stairs.json new file mode 100644 index 00000000..1a16895f --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/waxed_zap_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/zap_stairs" +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/zap_planks.json b/src/main/resources/assets/unicopia/models/item/zap_planks.json new file mode 100644 index 00000000..67af01e5 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/zap_planks.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/zap_planks" +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/zap_slab.json b/src/main/resources/assets/unicopia/models/item/zap_slab.json new file mode 100644 index 00000000..f4b16226 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/zap_slab.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/zap_slab" +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/zap_stairs.json b/src/main/resources/assets/unicopia/models/item/zap_stairs.json new file mode 100644 index 00000000..1a16895f --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/zap_stairs.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/zap_stairs" +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/textures/block/zap_planks.png b/src/main/resources/assets/unicopia/textures/block/zap_planks.png new file mode 100644 index 0000000000000000000000000000000000000000..55b0a5808a47e6f65a70125950f95e613e0d752e GIT binary patch literal 7013 zcmeHLc~}$I7N4*sY|0YUQq&Njj+T&>Y#&jU1PBTxfFjsdC&>h&gv2B)YPEt}iD*@{ zMN3uUMs2lHYg?s@wzz9us&%ipQEh!HYSr3TdFM_5<7>a~)%RZiGkkOB&b{aU&iVb$ zxi=YVva`|x{lfh)3=34JD|6r;gf4~;v;*&S5*WsKNRCz;)aoG^1IECT=7rI^>}YO% z51J?D3FEWj3V}YdL034=79ymy#X!(^qFv950`O{%h#9C zKMWUx`jdEIltuSFO`Vy|62$R&aY8Yy=Ltk|o2zOThF<_PFu>nG;JJ{{-pu~t0|)dEkBDGJ#|>h!W1}J> zaLM3U9$zF94ICs>NCgRTLXiN0(0qM;1N;N}1qSvLL`Fmkp8C_d9Sdflm^^80%p;iQ z8BFVJ#Rfv0-Zbjtq5{tzo?hNQbcU~=KNxHYLP~jhczJqzdwId^RG7!Sg1ti``AI&Z z8iLNA$P`p9Y-B_wH}43`IdUsnsI^x6`t|AC@44`p7Y5;jhlt|E5~)m{qEw}(rK>Y? z^G1%!A6-zW)02jxV&iz5y{x>Va?<1(GiS}7^G1zhQQhJtZ@pc=beVJ2>NRWEHNCg~ zqs0So7SDXcJJA{@91~Oj(>mRIp6F!1v5^78beBVII*3Pe2E%R7?q6OyE%6B9$(f+_|xd0}Jo4&NwY z&aE)5^@v}eXwik34n&P&_ScA2|5waPDr{l$=ilZ60v;J!b zzA^wh&9ZruapxAf2R!>;bvhdBMH~_+2R$`S#mx4hj9*eQM+WSGz&z_uK%2XAkpo}L zM?QJQPRI84_^VFGv8&NQq87Q{4>rQk90$H3@C}$r9^`ZknLX}^Dy-^&3EJkPLt(j3 zAX76sV%IsQW=#K>@wjt!^%aP#z{O0_6)~ltH&c_7^dW@4E-8$uNnhk<=Nc_UR1YKF zQrHgsgW61x^n+s#2fkWu0JUPNctXHaUIFzyA7-K;h9-ds!rh$hbl@J7K}Ca#sVV5U z47eAUjDnccV}Q|OH}Y<|K~mL2qqT+SA^YK=C+?P;Pa)pjYAUj=px#?9`V)Zudxv|p z?LzPg~yr$Mra#1p`=+I`1`Rg@wWg{csML79#6$5EOt5$v{F%x zLnL|$gY~TYg8q6D)s)0HL3!GD>+M;n!@M% zfD`BLBP!-kUKNz$ZsDE*d);cJHk*>y1^NYmzUu{HWFH8}otwHg zkuPLIHxNYh^nn!i(!C1RlQsR%GLxoa<^-bx5xOihP@UC4kYwl)RalC9MWX!GqNt+S z06O1BfmRQ}oeN|3L5XZeqqWIE#l!6iq^id)mDJvSyvX>>zOe!y$n}Rn1~*5}~*ggCG&nt}WUEtBSQe|P1LPh#Fi4i-;=B`l<>3^MdaY3VF#w&TshVfyJ?8sw&8|3vbKlIKFU&QR2wqr|M z+ivag9Xkv1>G?@P|HLMiTXO6RLptB?Q`lN*Is0bC{Q(s>u|^HC?06_$bWZ%;-kJ3W zH#n;D84PwU|G>Tjg7)aa-iJEMdJi0XQ=72=x3eo&jXgLf;8soRL_@u}!>8l!T9f66 zLGw2)`XFRQ=$r4@lP;!he33Kl(#!UOwxz+sy5)oB2hH6XH)>n`k`ePN9n$sV7^+yOY!A4xn8ywO!n{YVefpS9o-u7%awGQniX)OM)2qg;G;cUQX3D^I zy%T3|%Q%P8=WH)t_|XZ)5B;y-_{VwSKORlP4$rn8NL;1Zhhe?O81qKkM`w&&J& zLT}cRag`65Kw?&PdI z-Q)>6nVvmts9!>*8~{wDonTd(N=j|=N(Gz3l|vs5bJ;A)#6Cg69t}S^Q_NP9C5jWp z@i?kVW4VAm)Q^>5)f?nF%G53hcv7&7?RJZt%dM!Wh^r9BnXN@!zDy?L@&sIgfCCmB z+oV!EQOPN_MIi_mhLW`DtVWC7Xf95w_Q03gx>Nu?xRr#3 z%a7x6O(w4U3Y%S34j^3t{pku@-Xsgj%^_{(GOLbMm6N6RD0c|Gu4lca%vwUx(d)Qm z326dT8+heE;S&8g?^%H)C^DKX)G84B2}`@t@K~%TVnZ_&9rr+Bc@ORr*4^AGW3bB1 zlq=1;G8CR#sbC}ja=lq+)XS-^PA?P@QmKI>5t0N)Bo@bW2!SY`qZJCpT8Tg}F-S-^ zD0QjLPL%3M1O?!6M!+HU@qE6PlyYQxy^JH084MhmKqTS_0b9r8OC(aU&<)}xs}ZV_ zC~=PpLFoZXtBWUvI<0`i6B2rkh!E&FQenJ=L-0unDURpKNWF-H((B}@W~+&SbQ(=W z5y`cb7Eu#OaCuU;TEP~?@g9$4mk@RXEKsmV7)#44A5Y{NO=PZ}Kx*cBCR&4M1)DbW>L#gTI4_mge6d&0su7*T;wTMlCYbtd1iBog5C3i)-#<6 z+euH@2_<1C0kr3pEwB5P?L{6>&U1y2;4;m6qhZp2vPPSSl>qjT@^qsO{7<5WTstb4 zoalOTJ(d`$t;Awcn?g?LToi0XIjN`O1T5E-u9zq-BH{GtD%b9DdxV!Jy}84N$B?g3yyPDWM~^vL}Q7 z-zieB@lR4r;G$!(JE;lWKcwAd;C7CJG_El?pW(RY_MG=!nxT{RZ~SzX+u!H`pr1K; zDt({H^-Qj(QsAkKpHaar!sz4UH><^{2sqClBMuNuL9l&n*+~Jg||r`?eH`u z)`|XBezC3&Mtm*l1vU)x4@DOZTh`DI2I+Qnriy;mgV9?Yes4+9ZTOGDU9~bPPr83z z-Hxm?i9xf6eg4C|&_O$Jc81=!+8Ghs(P!!>%YU<`4^=XnX0ALe+I6yd^E;VSn#v=u zt+9Pnaee9QkIeTjpLzSkua+#pF25ghNAHuEU%qwH!L36NZTjuqL+fS?UU+ro%;>Qk z-?N8Khhv2;-s8^o!A}0(%M{3FOl+K~^onf09z2aZkk)i?ww*^dJ;V}DaOvZ3IOy$r z17f1rY{XAXuxfQe`;e_(tdRbgGAQSrc{i`7W+yv0T!_tpRdb1qtA>NA{u!_QdP;Zd z($;AmKeg|z&BED}njI^r1EDWjnmhL^hEce#0zYD{rultFf za{T_x!j>4kY}UD(ds6+yExTTSZR+xl2alA|@(<2b|9q!bJLXYc@3U2x9uB+kImTcg zN%D$>Q0gkL&y}sCee0araZ_t&A0(e`(A?xfBL-IIrYxZlg@r2e!j3p!MePB#x9Y5mG_oY3zX|d zTx_m58M!~z-*InVPCg!~rsv*1e%oB7yRn;}Hx=Y*Y247!w^v*52Xa31 Date: Thu, 8 Feb 2024 19:56:41 +0000 Subject: [PATCH 10/12] Added zap fence and zap fence gate --- .../unicopia/block/UBlocks.java | 36 +++++--- .../unicopia/block/UWoodTypes.java | 1 + .../block/zap/BaseZapAppleLeavesBlock.java | 4 +- .../unicopia/block/zap/ElectrifiedBlock.java | 83 +++++++++++++++++++ .../block/zap/ElectrifiedFenceBlock.java | 43 ++++++++++ .../block/zap/ElectrifiedFenceGateBlock.java | 45 ++++++++++ .../unicopia/block/zap/ZapAppleLogBlock.java | 20 ++--- .../unicopia/block/zap/ZapBlock.java | 43 +--------- .../unicopia/block/zap/ZapSlabBlock.java | 6 +- .../unicopia/blockstates/waxed_zap_fence.json | 48 +++++++++++ .../blockstates/waxed_zap_fence_gate.json | 80 ++++++++++++++++++ .../unicopia/blockstates/zap_fence.json | 48 +++++++++++ .../unicopia/blockstates/zap_fence_gate.json | 80 ++++++++++++++++++ .../resources/assets/unicopia/lang/en_us.json | 4 + .../unicopia/models/block/zap_fence_gate.json | 6 ++ .../models/block/zap_fence_gate_open.json | 6 ++ .../models/block/zap_fence_gate_wall.json | 6 ++ .../block/zap_fence_gate_wall_open.json | 6 ++ .../models/block/zap_fence_inventory.json | 6 ++ .../unicopia/models/block/zap_fence_post.json | 6 ++ .../unicopia/models/block/zap_fence_side.json | 6 ++ .../unicopia/models/item/waxed_zap_fence.json | 3 + .../models/item/waxed_zap_fence_gate.json | 3 + .../unicopia/models/item/zap_fence.json | 3 + .../unicopia/models/item/zap_fence_gate.json | 3 + .../tags/blocks/wooden_fence_gates.json | 4 +- .../minecraft/tags/blocks/wooden_fences.json | 4 +- .../minecraft/tags/items/fence_gates.json | 4 +- .../minecraft/tags/items/wooden_fences.json | 4 +- .../loot_tables/blocks/waxed_zap_fence.json | 20 +++++ .../blocks/waxed_zap_fence_gate.json | 20 +++++ .../loot_tables/blocks/zap_fence.json | 20 +++++ .../loot_tables/blocks/zap_fence_gate.json | 20 +++++ .../unicopia/recipes/waxed_zap_fence.json | 8 ++ .../recipes/waxed_zap_fence_gate.json | 8 ++ .../data/unicopia/recipes/zap_fence.json | 20 +++++ .../data/unicopia/recipes/zap_fence_gate.json | 19 +++++ .../tags/items/groups/earth_pony.json | 10 +++ 38 files changed, 682 insertions(+), 74 deletions(-) create mode 100644 src/main/java/com/minelittlepony/unicopia/block/zap/ElectrifiedBlock.java create mode 100644 src/main/java/com/minelittlepony/unicopia/block/zap/ElectrifiedFenceBlock.java create mode 100644 src/main/java/com/minelittlepony/unicopia/block/zap/ElectrifiedFenceGateBlock.java create mode 100644 src/main/resources/assets/unicopia/blockstates/waxed_zap_fence.json create mode 100644 src/main/resources/assets/unicopia/blockstates/waxed_zap_fence_gate.json create mode 100644 src/main/resources/assets/unicopia/blockstates/zap_fence.json create mode 100644 src/main/resources/assets/unicopia/blockstates/zap_fence_gate.json create mode 100644 src/main/resources/assets/unicopia/models/block/zap_fence_gate.json create mode 100644 src/main/resources/assets/unicopia/models/block/zap_fence_gate_open.json create mode 100644 src/main/resources/assets/unicopia/models/block/zap_fence_gate_wall.json create mode 100644 src/main/resources/assets/unicopia/models/block/zap_fence_gate_wall_open.json create mode 100644 src/main/resources/assets/unicopia/models/block/zap_fence_inventory.json create mode 100644 src/main/resources/assets/unicopia/models/block/zap_fence_post.json create mode 100644 src/main/resources/assets/unicopia/models/block/zap_fence_side.json create mode 100644 src/main/resources/assets/unicopia/models/item/waxed_zap_fence.json create mode 100644 src/main/resources/assets/unicopia/models/item/waxed_zap_fence_gate.json create mode 100644 src/main/resources/assets/unicopia/models/item/zap_fence.json create mode 100644 src/main/resources/assets/unicopia/models/item/zap_fence_gate.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/waxed_zap_fence.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/waxed_zap_fence_gate.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/zap_fence.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/zap_fence_gate.json create mode 100644 src/main/resources/data/unicopia/recipes/waxed_zap_fence.json create mode 100644 src/main/resources/data/unicopia/recipes/waxed_zap_fence_gate.json create mode 100644 src/main/resources/data/unicopia/recipes/zap_fence.json create mode 100644 src/main/resources/data/unicopia/recipes/zap_fence_gate.json diff --git a/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java b/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java index a19d2e39..88a019c3 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java +++ b/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java @@ -22,6 +22,8 @@ import com.minelittlepony.unicopia.block.cloud.SoggyCloudSlabBlock; import com.minelittlepony.unicopia.block.cloud.SoggyCloudStairsBlock; import com.minelittlepony.unicopia.block.cloud.UnstableCloudBlock; import com.minelittlepony.unicopia.block.zap.BaseZapAppleLeavesBlock; +import com.minelittlepony.unicopia.block.zap.ElectrifiedFenceBlock; +import com.minelittlepony.unicopia.block.zap.ElectrifiedFenceGateBlock; import com.minelittlepony.unicopia.block.zap.ZapAppleLeavesBlock; import com.minelittlepony.unicopia.block.zap.ZapAppleLeavesPlaceholderBlock; import com.minelittlepony.unicopia.block.zap.ZapAppleLogBlock; @@ -67,10 +69,10 @@ public interface UBlocks { Block FROSTED_OBSIDIAN = register("frosted_obsidian", new FrostedObsidianBlock(FabricBlockSettings.copy(Blocks.OBSIDIAN).ticksRandomly())); - Block ZAP_LOG = register("zap_log", new ZapAppleLogBlock(Blocks.OAK_LOG, UMapColors.ZAP_LOG_END, UMapColors.ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); - Block ZAP_WOOD = register("zap_wood", new ZapAppleLogBlock(Blocks.OAK_WOOD, UMapColors.ZAP_LOG_SIDE, UMapColors.ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); - Block STRIPPED_ZAP_LOG = register("stripped_zap_log", new ZapAppleLogBlock(Blocks.STRIPPED_OAK_LOG, UMapColors.ZAP_LOG_END, UMapColors.STRIPPED_ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); - Block STRIPPED_ZAP_WOOD = register("stripped_zap_wood", new ZapAppleLogBlock(Blocks.STRIPPED_OAK_WOOD, UMapColors.STRIPPED_ZAP_LOG_SIDE, UMapColors.STRIPPED_ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); + Block ZAP_LOG = register("zap_log", new ZapAppleLogBlock(Blocks.OAK_LOG.getDefaultState(), UMapColors.ZAP_LOG_END, UMapColors.ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); + Block ZAP_WOOD = register("zap_wood", new ZapAppleLogBlock(Blocks.OAK_WOOD.getDefaultState(), UMapColors.ZAP_LOG_SIDE, UMapColors.ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); + Block STRIPPED_ZAP_LOG = register("stripped_zap_log", new ZapAppleLogBlock(Blocks.STRIPPED_OAK_LOG.getDefaultState(), UMapColors.ZAP_LOG_END, UMapColors.STRIPPED_ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); + Block STRIPPED_ZAP_WOOD = register("stripped_zap_wood", new ZapAppleLogBlock(Blocks.STRIPPED_OAK_WOOD.getDefaultState(), UMapColors.STRIPPED_ZAP_LOG_SIDE, UMapColors.STRIPPED_ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); Block WAXED_ZAP_LOG = register("waxed_zap_log", BlockConstructionUtils.createLogBlock(UMapColors.ZAP_LOG_END, UMapColors.ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); Block WAXED_ZAP_WOOD = register("waxed_zap_wood", BlockConstructionUtils.createLogBlock(UMapColors.ZAP_LOG_SIDE, UMapColors.ZAP_LOG_SIDE), ItemGroups.BUILDING_BLOCKS); @@ -80,10 +82,14 @@ public interface UBlocks { Block ZAP_PLANKS = register("zap_planks", new ZapBlock(Settings.create().mapColor(UMapColors.ZAP_PLANKS).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); Block ZAP_STAIRS = register("zap_stairs", new ZapStairsBlock(ZAP_PLANKS.getDefaultState(), Settings.copy(ZAP_PLANKS).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); Block ZAP_SLAB = register("zap_slab", new ZapSlabBlock(Settings.create().mapColor(ZAP_PLANKS.getDefaultMapColor()).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); + Block ZAP_FENCE = register("zap_fence", new ElectrifiedFenceBlock(Settings.create().mapColor(ZAP_PLANKS.getDefaultMapColor()).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); + Block ZAP_FENCE_GATE = register("zap_fence_gate", new ElectrifiedFenceGateBlock(Settings.create().mapColor(ZAP_PLANKS.getDefaultMapColor()).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL), UWoodTypes.ZAP), ItemGroups.BUILDING_BLOCKS); Block WAXED_ZAP_PLANKS = register("waxed_zap_planks", new Block(Settings.create().mapColor(UMapColors.ZAP_PLANKS).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); Block WAXED_ZAP_STAIRS = register("waxed_zap_stairs", new StairsBlock(WAXED_ZAP_PLANKS.getDefaultState(), Settings.copy(WAXED_ZAP_PLANKS).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); - Block WAXED_ZAP_SLAB = register("waxed_zap_slab", new ZapSlabBlock(Settings.create().mapColor(WAXED_ZAP_PLANKS.getDefaultMapColor()).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); + Block WAXED_ZAP_SLAB = register("waxed_zap_slab", new SlabBlock(Settings.create().mapColor(WAXED_ZAP_PLANKS.getDefaultMapColor()).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); + Block WAXED_ZAP_FENCE = register("waxed_zap_fence", new FenceBlock(Settings.create().mapColor(WAXED_ZAP_PLANKS.getDefaultMapColor()).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL)), ItemGroups.BUILDING_BLOCKS); + Block WAXED_ZAP_FENCE_GATE = register("waxed_zap_fence_gate", new FenceGateBlock(Settings.create().mapColor(WAXED_ZAP_PLANKS.getDefaultMapColor()).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL), UWoodTypes.ZAP), ItemGroups.BUILDING_BLOCKS); Block ZAP_LEAVES = register("zap_leaves", new ZapAppleLeavesBlock(), ItemGroups.NATURAL); Block FLOWERING_ZAP_LEAVES = register("flowering_zap_leaves", new BaseZapAppleLeavesBlock(), ItemGroups.NATURAL); @@ -103,7 +109,7 @@ public interface UBlocks { Block PALM_FENCE_GATE = register("palm_fence_gate", new FenceGateBlock(Settings.create().mapColor(PALM_PLANKS.getDefaultMapColor()).strength(2, 3).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.NORMAL), UWoodTypes.PALM), ItemGroups.BUILDING_BLOCKS); Block PALM_DOOR = register("palm_door", new DoorBlock(Settings.create().mapColor(PALM_PLANKS.getDefaultMapColor()).instrument(Instrument.BASS).strength(3.0f).nonOpaque().burnable().pistonBehavior(PistonBehavior.DESTROY), UWoodTypes.PALM.setType()), ItemGroups.FUNCTIONAL); Block PALM_TRAPDOOR = register("palm_trapdoor", new TrapdoorBlock(Settings.create().mapColor(PALM_PLANKS.getDefaultMapColor()).instrument(Instrument.BASS).strength(3).nonOpaque().allowsSpawning(BlockConstructionUtils::never).burnable(), UWoodTypes.PALM.setType()), ItemGroups.FUNCTIONAL); - Block PALM_PRESSURE_PLATE = register("palm_pressure_plate", new PressurePlateBlock(PressurePlateBlock.ActivationRule.EVERYTHING, Settings.create().mapColor(PALM_PLANKS.getDefaultMapColor()).noCollision().strength(0.5f).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.DESTROY), BlockSetType.OAK), ItemGroups.BUILDING_BLOCKS); + Block PALM_PRESSURE_PLATE = register("palm_pressure_plate", new PressurePlateBlock(PressurePlateBlock.ActivationRule.EVERYTHING, Settings.create().mapColor(PALM_PLANKS.getDefaultMapColor()).noCollision().strength(0.5f).sounds(BlockSoundGroup.WOOD).pistonBehavior(PistonBehavior.DESTROY), UWoodTypes.PALM.setType()), ItemGroups.BUILDING_BLOCKS); Block PALM_BUTTON = register("palm_button", BlockConstructionUtils.woodenButton(), ItemGroups.BUILDING_BLOCKS); Block PALM_SIGN = register("palm_sign", new SignBlock(Settings.create().mapColor(PALM_PLANKS.getDefaultMapColor()).solid().instrument(Instrument.BASS).noCollision().strength(1).burnable().sounds(BlockSoundGroup.WOOD), UWoodTypes.PALM), ItemGroups.FUNCTIONAL); Block PALM_WALL_SIGN = register("palm_wall_sign", new WallSignBlock(Settings.create().mapColor(PALM_PLANKS.getDefaultMapColor()).solid().instrument(Instrument.BASS).noCollision().strength(1).dropsLike(PALM_SIGN).burnable(), UWoodTypes.PALM)); @@ -295,6 +301,8 @@ public interface UBlocks { OxidizableBlocksRegistry.registerWaxableBlockPair(ZAP_PLANKS, WAXED_ZAP_PLANKS); OxidizableBlocksRegistry.registerWaxableBlockPair(ZAP_STAIRS, WAXED_ZAP_STAIRS); OxidizableBlocksRegistry.registerWaxableBlockPair(ZAP_SLAB, WAXED_ZAP_SLAB); + OxidizableBlocksRegistry.registerWaxableBlockPair(ZAP_FENCE, WAXED_ZAP_FENCE); + OxidizableBlocksRegistry.registerWaxableBlockPair(ZAP_FENCE_GATE, WAXED_ZAP_FENCE_GATE); Collections.addAll(TRANSLUCENT_BLOCKS, WEATHER_VANE, CHITIN_SPIKES, PLUNDER_VINE, PLUNDER_VINE_BUD, CLAM_SHELL, SCALLOP_SHELL, TURRET_SHELL, CURING_JOKE, SPECTRAL_FIRE); TintedBlock.REGISTRY.add(PALM_LEAVES); @@ -303,14 +311,22 @@ public interface UBlocks { FlammableBlockRegistry.getDefaultInstance().add(SOUR_APPLE_LEAVES, 30, 60); FlammableBlockRegistry.getDefaultInstance().add(GOLDEN_OAK_LEAVES, 60, 120); FlammableBlockRegistry.getDefaultInstance().add(MANGO_LEAVES, 30, 60); - FlammableBlockRegistry.getDefaultInstance().add(PALM_LEAVES, 30, 60); - FlammableBlockRegistry.getDefaultInstance().add(PALM_LOG, 5, 5); - FlammableBlockRegistry.getDefaultInstance().add(PALM_WOOD, 5, 5); + FlammableBlockRegistry.getDefaultInstance().add(GOLDEN_OAK_LOG, 15, 15); + + FlammableBlockRegistry.getDefaultInstance().add(PALM_PLANKS, 5, 20); + FlammableBlockRegistry.getDefaultInstance().add(PALM_SLAB, 5, 20); + FlammableBlockRegistry.getDefaultInstance().add(PALM_FENCE_GATE, 5, 20); + FlammableBlockRegistry.getDefaultInstance().add(PALM_FENCE, 5, 20); + FlammableBlockRegistry.getDefaultInstance().add(PALM_STAIRS, 5, 20); + FlammableBlockRegistry.getDefaultInstance().add(PALM_LOG, 5, 5); FlammableBlockRegistry.getDefaultInstance().add(STRIPPED_PALM_LOG, 5, 5); FlammableBlockRegistry.getDefaultInstance().add(STRIPPED_PALM_WOOD, 5, 5); - FlammableBlockRegistry.getDefaultInstance().add(PALM_PLANKS, 5, 20); + FlammableBlockRegistry.getDefaultInstance().add(PALM_WOOD, 5, 5); + FlammableBlockRegistry.getDefaultInstance().add(PALM_LEAVES, 30, 60); + FlammableBlockRegistry.getDefaultInstance().add(BANANAS, 5, 20); + FlammableBlockRegistry.getDefaultInstance().add(CURING_JOKE, 60, 100); UBlockEntities.bootstrap(); EdibleBlock.bootstrap(); diff --git a/src/main/java/com/minelittlepony/unicopia/block/UWoodTypes.java b/src/main/java/com/minelittlepony/unicopia/block/UWoodTypes.java index 5f76ed97..21c3217e 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/UWoodTypes.java +++ b/src/main/java/com/minelittlepony/unicopia/block/UWoodTypes.java @@ -15,6 +15,7 @@ import net.minecraft.util.Identifier; public interface UWoodTypes { WoodType PALM = register("palm"); + WoodType ZAP = register("zap"); WoodType GOLDEN_OAK = register("golden_oak"); RegistryKey PALM_BOAT_TYPE = TerraformBoatTypeRegistry.createKey(Unicopia.id("palm")); diff --git a/src/main/java/com/minelittlepony/unicopia/block/zap/BaseZapAppleLeavesBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/BaseZapAppleLeavesBlock.java index 093f9270..94e82888 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/zap/BaseZapAppleLeavesBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/BaseZapAppleLeavesBlock.java @@ -16,7 +16,7 @@ import net.minecraft.util.math.*; import net.minecraft.util.math.random.Random; import net.minecraft.world.*; -public class BaseZapAppleLeavesBlock extends LeavesBlock implements TintedBlock, ZapStagedBlock { +public class BaseZapAppleLeavesBlock extends LeavesBlock implements TintedBlock, ZapStagedBlock, ElectrifiedBlock { public BaseZapAppleLeavesBlock() { super(Settings.create() @@ -80,7 +80,7 @@ public class BaseZapAppleLeavesBlock extends LeavesBlock implements TintedBlock, @Override public void onBlockBreakStart(BlockState state, World world, BlockPos pos, PlayerEntity player) { - ZapBlock.triggerLightning(state, world, pos, player); + triggerLightning(state, world, pos); } @Override diff --git a/src/main/java/com/minelittlepony/unicopia/block/zap/ElectrifiedBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/ElectrifiedBlock.java new file mode 100644 index 00000000..bba75e5b --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/ElectrifiedBlock.java @@ -0,0 +1,83 @@ +package com.minelittlepony.unicopia.block.zap; + +import java.util.Optional; + +import com.minelittlepony.unicopia.entity.player.Pony; +import com.minelittlepony.unicopia.particle.LightningBoltParticleEffect; +import com.minelittlepony.unicopia.particle.ParticleUtils; + +import net.minecraft.block.BlockState; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityType; +import net.minecraft.entity.ItemEntity; +import net.minecraft.entity.LightningEntity; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.server.world.ServerWorld; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.Box; +import net.minecraft.util.math.MathHelper; +import net.minecraft.util.math.Vec3d; +import net.minecraft.util.math.random.Random; +import net.minecraft.world.World; +import net.minecraft.world.event.GameEvent; + +public interface ElectrifiedBlock { + + default void spawnElectricalParticles(World world, BlockPos pos, Random random) { + world.addParticle(new LightningBoltParticleEffect(true, 10, 1, 0.6F, Optional.empty()), + pos.getX() + 0.5, + pos.getY() + 0.5, + pos.getZ() + 0.5, + 0, 0, 0 + ); + } + + default float getBlockBreakingDelta(float delta, PlayerEntity player) { + if (Pony.of(player).getCompositeRace().canUseEarth()) { + delta *= 50; + } + + return MathHelper.clamp(delta, 0, 0.9F); + } + + default void triggerLightning(BlockState state, World world, BlockPos pos) { + Vec3d center = pos.toCenterPos(); + if (world instanceof ServerWorld serverWorld) { + LightningEntity lightning = EntityType.LIGHTNING_BOLT.create(world); + world.getOtherEntities(null, Box.from(center).expand(7)).forEach(entity -> { + shockEntity(serverWorld, center, lightning, entity); + }); + } + world.emitGameEvent(GameEvent.LIGHTNING_STRIKE, pos, GameEvent.Emitter.of(state)); + ParticleUtils.spawnParticle(world, LightningBoltParticleEffect.DEFAULT, center, Vec3d.ZERO); + } + + default void triggerLightning(BlockState state, World world, BlockPos pos, LivingEntity entity, boolean knockBack) { + Vec3d center = pos.toCenterPos(); + if (world instanceof ServerWorld serverWorld) { + shockEntity(serverWorld, center, EntityType.LIGHTNING_BOLT.create(world), entity); + } + if (knockBack) { + Vec3d offset = center.subtract(entity.getPos()); + entity.takeKnockback(0.8, offset.x, offset.z); + } + world.emitGameEvent(GameEvent.LIGHTNING_STRIKE, pos, GameEvent.Emitter.of(state)); + ParticleUtils.spawnParticle(world, LightningBoltParticleEffect.DEFAULT, center, Vec3d.ZERO); + } + + private static void shockEntity(ServerWorld serverWorld, Vec3d center, LightningEntity lightning, Entity entity) { + if (entity instanceof ItemEntity) { + return; + } + float dist = (float)entity.getPos().distanceTo(center); + if (dist < 4) { + entity.onStruckByLightning(serverWorld, EntityType.LIGHTNING_BOLT.create(serverWorld)); + } else { + float damage = 3 / dist; + if (damage > 1) { + entity.damage(entity.getDamageSources().lightningBolt(), damage); + } + } + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/block/zap/ElectrifiedFenceBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/ElectrifiedFenceBlock.java new file mode 100644 index 00000000..0130ea35 --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/ElectrifiedFenceBlock.java @@ -0,0 +1,43 @@ +package com.minelittlepony.unicopia.block.zap; + +import net.minecraft.block.BlockState; +import net.minecraft.block.FenceBlock; +import net.minecraft.entity.Entity; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.random.Random; +import net.minecraft.world.BlockView; +import net.minecraft.world.World; + +public class ElectrifiedFenceBlock extends FenceBlock implements ElectrifiedBlock { + + public ElectrifiedFenceBlock(Settings settings) { + super(settings); + } + + @Override + public void randomDisplayTick(BlockState state, World world, BlockPos pos, Random random) { + super.randomDisplayTick(state, world, pos, random); + spawnElectricalParticles(world, pos, random); + } + + @Deprecated + @Override + public void onBlockBreakStart(BlockState state, World world, BlockPos pos, PlayerEntity player) { + triggerLightning(state, world, pos); + } + + @Deprecated + @Override + public float calcBlockBreakingDelta(BlockState state, PlayerEntity player, BlockView world, BlockPos pos) { + return getBlockBreakingDelta(super.calcBlockBreakingDelta(state, player, world, pos), player); + } + + @Override + public void onEntityCollision(BlockState state, World world, BlockPos pos, Entity entity) { + if (entity instanceof LivingEntity l && l.hurtTime == 0 && l.canTakeDamage()) { + triggerLightning(state, world, pos, l, true); + } + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/block/zap/ElectrifiedFenceGateBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/ElectrifiedFenceGateBlock.java new file mode 100644 index 00000000..89de9990 --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/ElectrifiedFenceGateBlock.java @@ -0,0 +1,45 @@ +package com.minelittlepony.unicopia.block.zap; + +import net.minecraft.block.BlockState; +import net.minecraft.block.FenceGateBlock; +import net.minecraft.block.WoodType; +import net.minecraft.entity.Entity; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.random.Random; +import net.minecraft.world.BlockView; +import net.minecraft.world.World; + +public class ElectrifiedFenceGateBlock extends FenceGateBlock implements ElectrifiedBlock { + public ElectrifiedFenceGateBlock(Settings settings, WoodType type) { + super(settings, type); + } + + @Override + public void randomDisplayTick(BlockState state, World world, BlockPos pos, Random random) { + super.randomDisplayTick(state, world, pos, random); + if (!state.get(OPEN)) { + spawnElectricalParticles(world, pos, random); + } + } + + @Deprecated + @Override + public void onBlockBreakStart(BlockState state, World world, BlockPos pos, PlayerEntity player) { + triggerLightning(state, world, pos); + } + + @Deprecated + @Override + public float calcBlockBreakingDelta(BlockState state, PlayerEntity player, BlockView world, BlockPos pos) { + return getBlockBreakingDelta(super.calcBlockBreakingDelta(state, player, world, pos), player); + } + + @Override + public void onEntityCollision(BlockState state, World world, BlockPos pos, Entity entity) { + if (!state.get(OPEN) && entity instanceof LivingEntity l && l.hurtTime == 0 && l.canTakeDamage()) { + triggerLightning(state, world, pos, l, true); + } + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/block/zap/ZapAppleLogBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapAppleLogBlock.java index e0c117ff..fbe53ea9 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/zap/ZapAppleLogBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapAppleLogBlock.java @@ -1,7 +1,5 @@ package com.minelittlepony.unicopia.block.zap; -import com.minelittlepony.unicopia.entity.player.Pony; - import net.minecraft.block.*; import net.minecraft.block.enums.Instrument; import net.minecraft.entity.player.PlayerEntity; @@ -13,12 +11,12 @@ import net.minecraft.util.math.*; import net.minecraft.world.BlockView; import net.minecraft.world.World; -public class ZapAppleLogBlock extends PillarBlock { +public class ZapAppleLogBlock extends PillarBlock implements ElectrifiedBlock { public static final BooleanProperty NATURAL = BooleanProperty.of("natural"); - private final Block artifialModelBlock; + private final BlockState artifialModelBlock; - public ZapAppleLogBlock(Block artifialModelBlock, MapColor topMapColor, MapColor sideMapColor) { + public ZapAppleLogBlock(BlockState artifialModelBlock, MapColor topMapColor, MapColor sideMapColor) { super(AbstractBlock.Settings.create().mapColor( state -> state.get(PillarBlock.AXIS) == Direction.Axis.Y ? topMapColor : sideMapColor ) @@ -44,22 +42,16 @@ public class ZapAppleLogBlock extends PillarBlock { @Deprecated @Override public void onBlockBreakStart(BlockState state, World world, BlockPos pos, PlayerEntity player) { - ZapBlock.triggerLightning(state, world, pos, player); + triggerLightning(state, world, pos); } @Deprecated @Override public float calcBlockBreakingDelta(BlockState state, PlayerEntity player, BlockView world, BlockPos pos) { if (!state.get(NATURAL)) { - return artifialModelBlock.calcBlockBreakingDelta(artifialModelBlock.getDefaultState(), player, world, pos); + return artifialModelBlock.calcBlockBreakingDelta(player, world, pos); } - float delta = super.calcBlockBreakingDelta(state, player, world, pos); - - if (Pony.of(player).getCompositeRace().canUseEarth()) { - delta *= 50; - } - - return MathHelper.clamp(delta, 0, 0.9F); + return getBlockBreakingDelta(super.calcBlockBreakingDelta(state, player, world, pos), player); } } diff --git a/src/main/java/com/minelittlepony/unicopia/block/zap/ZapBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapBlock.java index 29ae5f9a..8208bfdc 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/zap/ZapBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapBlock.java @@ -1,20 +1,12 @@ package com.minelittlepony.unicopia.block.zap; -import com.minelittlepony.unicopia.entity.player.Pony; -import com.minelittlepony.unicopia.particle.LightningBoltParticleEffect; -import com.minelittlepony.unicopia.particle.ParticleUtils; import net.minecraft.block.*; -import net.minecraft.entity.EntityType; -import net.minecraft.entity.ItemEntity; -import net.minecraft.entity.LightningEntity; import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.server.world.ServerWorld; import net.minecraft.util.math.*; import net.minecraft.world.BlockView; import net.minecraft.world.World; -import net.minecraft.world.event.GameEvent; -public class ZapBlock extends Block { +public class ZapBlock extends Block implements ElectrifiedBlock { public ZapBlock(Settings settings) { super(settings); } @@ -22,7 +14,7 @@ public class ZapBlock extends Block { @Deprecated @Override public void onBlockBreakStart(BlockState state, World world, BlockPos pos, PlayerEntity player) { - triggerLightning(state, world, pos, player); + triggerLightning(state, world, pos); } @Deprecated @@ -30,35 +22,4 @@ public class ZapBlock extends Block { public float calcBlockBreakingDelta(BlockState state, PlayerEntity player, BlockView world, BlockPos pos) { return getBlockBreakingDelta(super.calcBlockBreakingDelta(state, player, world, pos), player); } - - public static float getBlockBreakingDelta(float delta, PlayerEntity player) { - if (Pony.of(player).getCompositeRace().canUseEarth()) { - delta *= 50; - } - - return MathHelper.clamp(delta, 0, 0.9F); - } - - public static void triggerLightning(BlockState state, World world, BlockPos pos, PlayerEntity player) { - if (world instanceof ServerWorld serverWorld) { - Vec3d center = Vec3d.ofCenter(pos); - LightningEntity lightning = EntityType.LIGHTNING_BOLT.create(world); - world.getOtherEntities(null, Box.from(center).expand(7)).forEach(other -> { - if (other instanceof ItemEntity) { - return; - } - float dist = (float)other.getPos().distanceTo(center); - if (dist < 4) { - other.onStruckByLightning(serverWorld, lightning); - } else { - float damage = 3 / dist; - if (damage > 1) { - other.damage(world.getDamageSources().lightningBolt(), damage); - } - } - }); - } - world.emitGameEvent(GameEvent.LIGHTNING_STRIKE, pos, GameEvent.Emitter.of(state)); - ParticleUtils.spawnParticle(world, LightningBoltParticleEffect.DEFAULT, Vec3d.ofCenter(pos), Vec3d.ZERO); - } } diff --git a/src/main/java/com/minelittlepony/unicopia/block/zap/ZapSlabBlock.java b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapSlabBlock.java index 535e9b5d..99a8f7d1 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/zap/ZapSlabBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/zap/ZapSlabBlock.java @@ -7,7 +7,7 @@ import net.minecraft.util.math.BlockPos; import net.minecraft.world.BlockView; import net.minecraft.world.World; -public class ZapSlabBlock extends SlabBlock { +public class ZapSlabBlock extends SlabBlock implements ElectrifiedBlock { public ZapSlabBlock(Settings settings) { super(settings); } @@ -15,12 +15,12 @@ public class ZapSlabBlock extends SlabBlock { @Deprecated @Override public void onBlockBreakStart(BlockState state, World world, BlockPos pos, PlayerEntity player) { - ZapBlock.triggerLightning(state, world, pos, player); + triggerLightning(state, world, pos); } @Deprecated @Override public float calcBlockBreakingDelta(BlockState state, PlayerEntity player, BlockView world, BlockPos pos) { - return ZapBlock.getBlockBreakingDelta(super.calcBlockBreakingDelta(state, player, world, pos), player); + return getBlockBreakingDelta(super.calcBlockBreakingDelta(state, player, world, pos), player); } } diff --git a/src/main/resources/assets/unicopia/blockstates/waxed_zap_fence.json b/src/main/resources/assets/unicopia/blockstates/waxed_zap_fence.json new file mode 100644 index 00000000..0bd4ba9a --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/waxed_zap_fence.json @@ -0,0 +1,48 @@ +{ + "multipart": [ + { + "apply": { + "model": "unicopia:block/zap_fence_post" + } + }, + { + "apply": { + "model": "unicopia:block/zap_fence_side", + "uvlock": true + }, + "when": { + "north": "true" + } + }, + { + "apply": { + "model": "unicopia:block/zap_fence_side", + "uvlock": true, + "y": 90 + }, + "when": { + "east": "true" + } + }, + { + "apply": { + "model": "unicopia:block/zap_fence_side", + "uvlock": true, + "y": 180 + }, + "when": { + "south": "true" + } + }, + { + "apply": { + "model": "unicopia:block/zap_fence_side", + "uvlock": true, + "y": 270 + }, + "when": { + "west": "true" + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/blockstates/waxed_zap_fence_gate.json b/src/main/resources/assets/unicopia/blockstates/waxed_zap_fence_gate.json new file mode 100644 index 00000000..05fd9c83 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/waxed_zap_fence_gate.json @@ -0,0 +1,80 @@ +{ + "variants": { + "facing=east,in_wall=false,open=false": { + "model": "unicopia:block/zap_fence_gate", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=false,open=true": { + "model": "unicopia:block/zap_fence_gate_open", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=true,open=false": { + "model": "unicopia:block/zap_fence_gate_wall", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=true,open=true": { + "model": "unicopia:block/zap_fence_gate_wall_open", + "uvlock": true, + "y": 270 + }, + "facing=north,in_wall=false,open=false": { + "model": "unicopia:block/zap_fence_gate", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=false,open=true": { + "model": "unicopia:block/zap_fence_gate_open", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=true,open=false": { + "model": "unicopia:block/zap_fence_gate_wall", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=true,open=true": { + "model": "unicopia:block/zap_fence_gate_wall_open", + "uvlock": true, + "y": 180 + }, + "facing=south,in_wall=false,open=false": { + "model": "unicopia:block/zap_fence_gate", + "uvlock": true + }, + "facing=south,in_wall=false,open=true": { + "model": "unicopia:block/zap_fence_gate_open", + "uvlock": true + }, + "facing=south,in_wall=true,open=false": { + "model": "unicopia:block/zap_fence_gate_wall", + "uvlock": true + }, + "facing=south,in_wall=true,open=true": { + "model": "unicopia:block/zap_fence_gate_wall_open", + "uvlock": true + }, + "facing=west,in_wall=false,open=false": { + "model": "unicopia:block/zap_fence_gate", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=false,open=true": { + "model": "unicopia:block/zap_fence_gate_open", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=true,open=false": { + "model": "unicopia:block/zap_fence_gate_wall", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=true,open=true": { + "model": "unicopia:block/zap_fence_gate_wall_open", + "uvlock": true, + "y": 90 + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/blockstates/zap_fence.json b/src/main/resources/assets/unicopia/blockstates/zap_fence.json new file mode 100644 index 00000000..0bd4ba9a --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/zap_fence.json @@ -0,0 +1,48 @@ +{ + "multipart": [ + { + "apply": { + "model": "unicopia:block/zap_fence_post" + } + }, + { + "apply": { + "model": "unicopia:block/zap_fence_side", + "uvlock": true + }, + "when": { + "north": "true" + } + }, + { + "apply": { + "model": "unicopia:block/zap_fence_side", + "uvlock": true, + "y": 90 + }, + "when": { + "east": "true" + } + }, + { + "apply": { + "model": "unicopia:block/zap_fence_side", + "uvlock": true, + "y": 180 + }, + "when": { + "south": "true" + } + }, + { + "apply": { + "model": "unicopia:block/zap_fence_side", + "uvlock": true, + "y": 270 + }, + "when": { + "west": "true" + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/blockstates/zap_fence_gate.json b/src/main/resources/assets/unicopia/blockstates/zap_fence_gate.json new file mode 100644 index 00000000..05fd9c83 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/zap_fence_gate.json @@ -0,0 +1,80 @@ +{ + "variants": { + "facing=east,in_wall=false,open=false": { + "model": "unicopia:block/zap_fence_gate", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=false,open=true": { + "model": "unicopia:block/zap_fence_gate_open", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=true,open=false": { + "model": "unicopia:block/zap_fence_gate_wall", + "uvlock": true, + "y": 270 + }, + "facing=east,in_wall=true,open=true": { + "model": "unicopia:block/zap_fence_gate_wall_open", + "uvlock": true, + "y": 270 + }, + "facing=north,in_wall=false,open=false": { + "model": "unicopia:block/zap_fence_gate", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=false,open=true": { + "model": "unicopia:block/zap_fence_gate_open", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=true,open=false": { + "model": "unicopia:block/zap_fence_gate_wall", + "uvlock": true, + "y": 180 + }, + "facing=north,in_wall=true,open=true": { + "model": "unicopia:block/zap_fence_gate_wall_open", + "uvlock": true, + "y": 180 + }, + "facing=south,in_wall=false,open=false": { + "model": "unicopia:block/zap_fence_gate", + "uvlock": true + }, + "facing=south,in_wall=false,open=true": { + "model": "unicopia:block/zap_fence_gate_open", + "uvlock": true + }, + "facing=south,in_wall=true,open=false": { + "model": "unicopia:block/zap_fence_gate_wall", + "uvlock": true + }, + "facing=south,in_wall=true,open=true": { + "model": "unicopia:block/zap_fence_gate_wall_open", + "uvlock": true + }, + "facing=west,in_wall=false,open=false": { + "model": "unicopia:block/zap_fence_gate", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=false,open=true": { + "model": "unicopia:block/zap_fence_gate_open", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=true,open=false": { + "model": "unicopia:block/zap_fence_gate_wall", + "uvlock": true, + "y": 90 + }, + "facing=west,in_wall=true,open=true": { + "model": "unicopia:block/zap_fence_gate_wall_open", + "uvlock": true, + "y": 90 + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/lang/en_us.json b/src/main/resources/assets/unicopia/lang/en_us.json index 9bf87f93..c55ccb5b 100644 --- a/src/main/resources/assets/unicopia/lang/en_us.json +++ b/src/main/resources/assets/unicopia/lang/en_us.json @@ -235,6 +235,8 @@ "block.unicopia.zap_planks": "Zap Apple Planks", "block.unicopia.zap_stairs": "Zap Apple Stairs", "block.unicopia.zap_slab": "Zap Apple Slab", + "block.unicopia.zap_fence": "Zap Apple Fence", + "block.unicopia.zap_fence_gate": "Zap Apple Fence Gate", "block.unicopia.waxed_zap_log": "Waxed Zap Apple Log", "block.unicopia.waxed_zap_wood": "Waxed Zap Apple Wood", "block.unicopia.waxed_stripped_zap_log": "Waxed Stripped Zap Apple Log", @@ -242,6 +244,8 @@ "block.unicopia.waxed_zap_planks": "Waxed Zap Apple Planks", "block.unicopia.waxed_zap_stairs": "Waxed Zap Apple Stairs", "block.unicopia.waxed_zap_slab": "Waxed Zap Apple Slab", + "block.unicopia.waxed_zap_fence": "Waxed Zap Apple Fence", + "block.unicopia.waxed_zap_fence_gate": "Waxed Zap Apple Fence Gate", "block.unicopia.zap_leaves": "Zap Apple Leaves", "block.unicopia.flowering_zap_leaves": "Flowering Zap Apple Leaves", "block.unicopia.zap_apple": "Zap Apple", diff --git a/src/main/resources/assets/unicopia/models/block/zap_fence_gate.json b/src/main/resources/assets/unicopia/models/block/zap_fence_gate.json new file mode 100644 index 00000000..0a8e8157 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/zap_fence_gate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate", + "textures": { + "texture": "unicopia:block/zap_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/zap_fence_gate_open.json b/src/main/resources/assets/unicopia/models/block/zap_fence_gate_open.json new file mode 100644 index 00000000..b528c103 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/zap_fence_gate_open.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate_open", + "textures": { + "texture": "unicopia:block/zap_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/zap_fence_gate_wall.json b/src/main/resources/assets/unicopia/models/block/zap_fence_gate_wall.json new file mode 100644 index 00000000..7a4b18ff --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/zap_fence_gate_wall.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate_wall", + "textures": { + "texture": "unicopia:block/zap_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/zap_fence_gate_wall_open.json b/src/main/resources/assets/unicopia/models/block/zap_fence_gate_wall_open.json new file mode 100644 index 00000000..594f73d1 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/zap_fence_gate_wall_open.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/template_fence_gate_wall_open", + "textures": { + "texture": "unicopia:block/zap_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/zap_fence_inventory.json b/src/main/resources/assets/unicopia/models/block/zap_fence_inventory.json new file mode 100644 index 00000000..4972bdf0 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/zap_fence_inventory.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/fence_inventory", + "textures": { + "texture": "unicopia:block/zap_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/zap_fence_post.json b/src/main/resources/assets/unicopia/models/block/zap_fence_post.json new file mode 100644 index 00000000..19a87f0a --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/zap_fence_post.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/fence_post", + "textures": { + "texture": "unicopia:block/zap_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/zap_fence_side.json b/src/main/resources/assets/unicopia/models/block/zap_fence_side.json new file mode 100644 index 00000000..b6d72a37 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/zap_fence_side.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/fence_side", + "textures": { + "texture": "unicopia:block/zap_planks" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/waxed_zap_fence.json b/src/main/resources/assets/unicopia/models/item/waxed_zap_fence.json new file mode 100644 index 00000000..c3ae00eb --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/waxed_zap_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/zap_fence_inventory" +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/waxed_zap_fence_gate.json b/src/main/resources/assets/unicopia/models/item/waxed_zap_fence_gate.json new file mode 100644 index 00000000..cb3f2d6c --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/waxed_zap_fence_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/zap_fence_gate" +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/zap_fence.json b/src/main/resources/assets/unicopia/models/item/zap_fence.json new file mode 100644 index 00000000..c3ae00eb --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/zap_fence.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/zap_fence_inventory" +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/zap_fence_gate.json b/src/main/resources/assets/unicopia/models/item/zap_fence_gate.json new file mode 100644 index 00000000..cb3f2d6c --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/zap_fence_gate.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/zap_fence_gate" +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/blocks/wooden_fence_gates.json b/src/main/resources/data/minecraft/tags/blocks/wooden_fence_gates.json index 5f15d1cf..234e65f0 100644 --- a/src/main/resources/data/minecraft/tags/blocks/wooden_fence_gates.json +++ b/src/main/resources/data/minecraft/tags/blocks/wooden_fence_gates.json @@ -1,6 +1,8 @@ { "replace": false, "values": [ - "unicopia:palm_fence_gate" + "unicopia:palm_fence_gate", + "unicopia:zap_fence_gate", + "unicopia:waxed_zap_fence_gate" ] } \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/blocks/wooden_fences.json b/src/main/resources/data/minecraft/tags/blocks/wooden_fences.json index cc21b278..e5c89b87 100644 --- a/src/main/resources/data/minecraft/tags/blocks/wooden_fences.json +++ b/src/main/resources/data/minecraft/tags/blocks/wooden_fences.json @@ -1,6 +1,8 @@ { "replace": false, "values": [ - "unicopia:palm_fence" + "unicopia:palm_fence", + "unicopia:zap_fence", + "unicopia:waxed_zap_fence" ] } \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/items/fence_gates.json b/src/main/resources/data/minecraft/tags/items/fence_gates.json index 5f15d1cf..234e65f0 100644 --- a/src/main/resources/data/minecraft/tags/items/fence_gates.json +++ b/src/main/resources/data/minecraft/tags/items/fence_gates.json @@ -1,6 +1,8 @@ { "replace": false, "values": [ - "unicopia:palm_fence_gate" + "unicopia:palm_fence_gate", + "unicopia:zap_fence_gate", + "unicopia:waxed_zap_fence_gate" ] } \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/items/wooden_fences.json b/src/main/resources/data/minecraft/tags/items/wooden_fences.json index cc21b278..e5c89b87 100644 --- a/src/main/resources/data/minecraft/tags/items/wooden_fences.json +++ b/src/main/resources/data/minecraft/tags/items/wooden_fences.json @@ -1,6 +1,8 @@ { "replace": false, "values": [ - "unicopia:palm_fence" + "unicopia:palm_fence", + "unicopia:zap_fence", + "unicopia:waxed_zap_fence" ] } \ No newline at end of file diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/waxed_zap_fence.json b/src/main/resources/data/unicopia/loot_tables/blocks/waxed_zap_fence.json new file mode 100644 index 00000000..d8f7aa05 --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/waxed_zap_fence.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:waxed_zap_fence" + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/waxed_zap_fence_gate.json b/src/main/resources/data/unicopia/loot_tables/blocks/waxed_zap_fence_gate.json new file mode 100644 index 00000000..035b8340 --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/waxed_zap_fence_gate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:waxed_zap_fence_gate" + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/zap_fence.json b/src/main/resources/data/unicopia/loot_tables/blocks/zap_fence.json new file mode 100644 index 00000000..ef403726 --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/zap_fence.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:zap_fence" + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/zap_fence_gate.json b/src/main/resources/data/unicopia/loot_tables/blocks/zap_fence_gate.json new file mode 100644 index 00000000..edec2cd1 --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/zap_fence_gate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:zap_fence_gate" + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/recipes/waxed_zap_fence.json b/src/main/resources/data/unicopia/recipes/waxed_zap_fence.json new file mode 100644 index 00000000..d7656e59 --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/waxed_zap_fence.json @@ -0,0 +1,8 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { "item": "unicopia:zap_fence" }, + { "item": "minecraft:honeycomb" } + ], + "result": { "item": "unicopia:waxed_zap_fence" } +} diff --git a/src/main/resources/data/unicopia/recipes/waxed_zap_fence_gate.json b/src/main/resources/data/unicopia/recipes/waxed_zap_fence_gate.json new file mode 100644 index 00000000..d345c274 --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/waxed_zap_fence_gate.json @@ -0,0 +1,8 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { "item": "unicopia:zap_fence_gate" }, + { "item": "minecraft:honeycomb" } + ], + "result": { "item": "unicopia:waxed_zap_fence_gate" } +} diff --git a/src/main/resources/data/unicopia/recipes/zap_fence.json b/src/main/resources/data/unicopia/recipes/zap_fence.json new file mode 100644 index 00000000..78767a33 --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/zap_fence.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "wooden_fence", + "key": { + "#": { + "item": "minecraft:stick" + }, + "W": { + "item": "unicopia:zap_planks" + } + }, + "pattern": [ + "W#W", + "W#W" + ], + "result": { + "count": 3, + "item": "unicopia:zap_fence" + } +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/recipes/zap_fence_gate.json b/src/main/resources/data/unicopia/recipes/zap_fence_gate.json new file mode 100644 index 00000000..af0711f9 --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/zap_fence_gate.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:crafting_shaped", + "group": "wooden_fence_gate", + "key": { + "#": { + "item": "minecraft:stick" + }, + "W": { + "item": "unicopia:zap_planks" + } + }, + "pattern": [ + "#W#", + "#W#" + ], + "result": { + "item": "unicopia:zap_fence_gate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/tags/items/groups/earth_pony.json b/src/main/resources/data/unicopia/tags/items/groups/earth_pony.json index 62d3e0a6..618a0532 100644 --- a/src/main/resources/data/unicopia/tags/items/groups/earth_pony.json +++ b/src/main/resources/data/unicopia/tags/items/groups/earth_pony.json @@ -10,10 +10,20 @@ "unicopia:zap_wood", "unicopia:stripped_zap_log", "unicopia:stripped_zap_wood", + "unicopia:zap_planks", + "unicopia:zap_stairs", + "unicopia:zap_slab", + "unicopia:zap_fence", + "unicopia:zap_fence_gate", "unicopia:waxed_zap_log", "unicopia:waxed_zap_wood", "unicopia:waxed_stripped_zap_log", "unicopia:waxed_stripped_zap_wood", + "unicopia:waxed_zap_planks", + "unicopia:waxed_zap_stairs", + "unicopia:waxed_zap_slab", + "unicopia:waxed_zap_fence", + "unicopia:waxed_zap_fence_gate", "unicopia:candied_apple", "unicopia:stable_door", "unicopia:dark_oak_stable_door", From 5e099aeea5f0569714088d701be3500983659cc7 Mon Sep 17 00:00:00 2001 From: Sollace Date: Thu, 8 Feb 2024 22:16:50 +0000 Subject: [PATCH 11/12] Only load these if the mod is present --- .../data/unicopia/loot_tables/blocks/rice_block.json | 8 ++++++++ .../data/unicopia/loot_tables/blocks/straw_block.json | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/rice_block.json b/src/main/resources/data/unicopia/loot_tables/blocks/rice_block.json index 20a3852d..e79c51d7 100644 --- a/src/main/resources/data/unicopia/loot_tables/blocks/rice_block.json +++ b/src/main/resources/data/unicopia/loot_tables/blocks/rice_block.json @@ -1,5 +1,13 @@ { "type": "minecraft:block", + "fabric:load_conditions": [ + { + "condition": "fabric:all_mods_loaded", + "values": [ + "farmersdelight" + ] + } + ], "pools": [ { "bonus_rolls": 0.0, diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/straw_block.json b/src/main/resources/data/unicopia/loot_tables/blocks/straw_block.json index ab4fa683..ca46ba50 100644 --- a/src/main/resources/data/unicopia/loot_tables/blocks/straw_block.json +++ b/src/main/resources/data/unicopia/loot_tables/blocks/straw_block.json @@ -1,5 +1,13 @@ { "type": "minecraft:block", + "fabric:load_conditions": [ + { + "condition": "fabric:all_mods_loaded", + "values": [ + "farmersdelight" + ] + } + ], "pools": [ { "bonus_rolls": 0.0, From 34566b560e0b439afa1dc87bb49f75fbd0431853 Mon Sep 17 00:00:00 2001 From: Sollace Date: Thu, 8 Feb 2024 22:59:21 +0000 Subject: [PATCH 12/12] Add dev dependencies --- build.gradle | 14 ++++++++------ gradle.properties | 6 ++++++ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/build.gradle b/build.gradle index b3d2c2b2..a31e3671 100644 --- a/build.gradle +++ b/build.gradle @@ -44,6 +44,8 @@ repositories { maven { name 'minelp-snapshot'; url 'https://repo.minelittlepony-mod.com/maven/snapshot' } maven { name 'minelp-releases'; url 'https://repo.minelittlepony-mod.com/maven/release' } maven { name 'TerraformersMC'; url 'https://maven.terraformersmc.com/' } + maven { name 'Modrinth'; url 'https://api.modrinth.com/maven' } + maven { name 'JitPack'; url 'https://jitpack.io'; content { includeGroup "com.github.Virtuoel" } } } dependencies { @@ -72,17 +74,17 @@ dependencies { modImplementation "com.terraformersmc.terraform-api:terraform-wood-api-v1:${project.terraformer_api_version}" include "com.terraformersmc.terraform-api:terraform-wood-api-v1:${project.terraformer_api_version}" + modCompileOnly "maven.modrinth:farmers-delight-fabric:${project.farmers_delight_version}", { exclude group: "net.fabricmc.fabric-api" } + modCompileOnly "maven.modrinth:iris:${project.iris_version}", { exclude group: "net.fabricmc.fabric-api" } + modCompileOnly "maven.modrinth:sodium:${project.sodium_version}", { exclude group: "net.fabricmc.fabric-api" } + modCompileOnly "maven.modrinth:pehkui:${project.pehkui_version}", { exclude group: "net.fabricmc.fabric-api" } + modCompileOnly "com.github.Virtuoel:KanosConfig:0.4.1", { exclude group: "net.fabricmc.fabric-api" } + if (project.tmi_type == 'emi') { modCompileOnly "dev.emi:emi-fabric:${project.emi_version}" } else { modCompileOnly "dev.emi:emi-fabric-dummy:${project.emi_version}" } - - if (project.tmi_type == 'rei') { - // TODO: - } else { - // TODO: - } } processResources { diff --git a/gradle.properties b/gradle.properties index d0bb613b..31bb681e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -28,6 +28,12 @@ org.gradle.daemon=false trinkets_version=3.7.1 terraformer_api_version=7.0.0-beta.1 +# Testing + farmers_delight_version=1.4.3 + pehkui_version=3.7.8+1.14.4-1.20.1 + iris_version=1.6.8+1.20.1 + sodium_version=mc1.20.1-0.5.2 + # TMI Testing tmi_type=emi emi_version=1.0.19+1.20.1