From 7e7fe9ba50a66906681103724c430b045b7b2123 Mon Sep 17 00:00:00 2001 From: SD Date: Wed, 17 Feb 2021 11:50:48 +0530 Subject: [PATCH] Model particles, unbreakable rifts, no instamine doors --- .../block/DimensionalPortalBlock.java | 9 +++--- .../org/dimdev/dimdoors/block/ModBlocks.java | 29 ++++++++++++------- .../models/block/gold_door_bottom.json | 11 +++---- .../models/block/gold_door_bottom_rh.json | 11 +++---- .../dimdoors/models/block/gold_door_top.json | 11 +++---- .../models/block/gold_door_top_rh.json | 11 +++---- .../block/iron_dimensional_door_bottom.json | 11 +++---- .../iron_dimensional_door_bottom_rh.json | 11 +++---- .../block/iron_dimensional_door_top.json | 11 +++---- .../block/iron_dimensional_door_top_rh.json | 11 +++---- .../block/oak_dimensional_door_bottom.json | 3 +- .../block/oak_dimensional_door_bottom_rh.json | 3 +- .../block/oak_dimensional_door_top.json | 3 +- .../block/oak_dimensional_door_top_rh.json | 3 +- .../models/block/quartz_door_bottom.json | 3 +- .../models/block/quartz_door_bottom_rh.json | 3 +- .../models/block/quartz_door_top.json | 3 +- .../models/block/quartz_door_top_rh.json | 3 +- .../data/fabric/tags/items/swords.json | 6 ++++ 19 files changed, 93 insertions(+), 63 deletions(-) create mode 100644 src/main/resources/data/fabric/tags/items/swords.json diff --git a/src/main/java/org/dimdev/dimdoors/block/DimensionalPortalBlock.java b/src/main/java/org/dimdev/dimdoors/block/DimensionalPortalBlock.java index 18cb52bc..4cedb8ff 100644 --- a/src/main/java/org/dimdev/dimdoors/block/DimensionalPortalBlock.java +++ b/src/main/java/org/dimdev/dimdoors/block/DimensionalPortalBlock.java @@ -23,9 +23,10 @@ import net.minecraft.world.World; public class DimensionalPortalBlock extends Block implements RiftProvider { public static DirectionProperty FACING = HorizontalFacingBlock.FACING; + public DimensionalPortalBlock(Settings settings) { super(settings); - setDefaultState(this.stateManager.getDefaultState().with(FACING, Direction.NORTH)); + this.setDefaultState(this.stateManager.getDefaultState().with(FACING, Direction.NORTH)); } @Override @@ -52,18 +53,18 @@ public class DimensionalPortalBlock extends Block implements RiftProvider builder) { diff --git a/src/main/java/org/dimdev/dimdoors/block/ModBlocks.java b/src/main/java/org/dimdev/dimdoors/block/ModBlocks.java index f4c18b5e..e3c8660e 100644 --- a/src/main/java/org/dimdev/dimdoors/block/ModBlocks.java +++ b/src/main/java/org/dimdev/dimdoors/block/ModBlocks.java @@ -16,22 +16,23 @@ import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; +import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags; public final class ModBlocks { private static final Map BLOCKS = Maps.newLinkedHashMap(); public static final Map FABRIC_BLOCKS = new HashMap<>(); - public static final Map ANCIENT_FABRIC_BLOCKS = new HashMap<>(); + private static final Map ANCIENT_FABRIC_BLOCKS = new HashMap<>(); - public static final Block GOLD_DOOR = register("dimdoors:gold_door", new DoorBlock(FabricBlockSettings.of(Material.METAL, MapColor.GOLD).nonOpaque())); - public static final Block QUARTZ_DOOR = register("dimdoors:quartz_door", new DoorBlock(FabricBlockSettings.of(Material.STONE, MapColor.OFF_WHITE).nonOpaque())); - public static final Block OAK_DIMENSIONAL_DOOR = register("dimdoors:oak_dimensional_door", new DimensionalDoorBlock(FabricBlockSettings.of(Material.WOOD, MapColor.OAK_TAN).nonOpaque().lightLevel(state -> 10))); - public static final Block IRON_DIMENSIONAL_DOOR = register("dimdoors:iron_dimensional_door", new DimensionalDoorBlock(FabricBlockSettings.of(Material.METAL, MapColor.IRON_GRAY).nonOpaque().lightLevel(state -> 10))); - public static final Block GOLD_DIMENSIONAL_DOOR = register("dimdoors:gold_dimensional_door", new DimensionalDoorBlock(FabricBlockSettings.of(Material.METAL, MapColor.GOLD).nonOpaque().lightLevel(state -> 10))); - public static final Block QUARTZ_DIMENSIONAL_DOOR = register("dimdoors:quartz_dimensional_door", new DimensionalDoorBlock(FabricBlockSettings.of(Material.STONE, MapColor.OFF_WHITE).nonOpaque().lightLevel(state -> 10))); - public static final Block OAK_DIMENSIONAL_TRAPDOOR = register("dimdoors:wood_dimensional_trapdoor", new DimensionalTrapdoorBlock(FabricBlockSettings.of(Material.WOOD, MapColor.OAK_TAN).nonOpaque())); + public static final Block GOLD_DOOR = register("dimdoors:gold_door", new DoorBlock(FabricBlockSettings.of(Material.METAL, MapColor.GOLD).strength(5.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).nonOpaque())); + public static final Block QUARTZ_DOOR = register("dimdoors:quartz_door", new DoorBlock(FabricBlockSettings.of(Material.STONE, MapColor.OFF_WHITE).strength(5.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).nonOpaque())); + public static final Block OAK_DIMENSIONAL_DOOR = register("dimdoors:oak_dimensional_door", new DimensionalDoorBlock(FabricBlockSettings.of(Material.WOOD, MapColor.OAK_TAN).strength(3.0F).breakByTool(FabricToolTags.AXES).breakByHand(true).nonOpaque().luminance(state -> 10))); + public static final Block IRON_DIMENSIONAL_DOOR = register("dimdoors:iron_dimensional_door", new DimensionalDoorBlock(FabricBlockSettings.of(Material.METAL, MapColor.IRON_GRAY).strength(5.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).nonOpaque().luminance(state -> 10))); + public static final Block GOLD_DIMENSIONAL_DOOR = register("dimdoors:gold_dimensional_door", new DimensionalDoorBlock(FabricBlockSettings.of(Material.METAL, MapColor.GOLD).strength(5.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).nonOpaque().luminance(state -> 10))); + public static final Block QUARTZ_DIMENSIONAL_DOOR = register("dimdoors:quartz_dimensional_door", new DimensionalDoorBlock(FabricBlockSettings.of(Material.STONE, MapColor.OFF_WHITE).strength(5.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).nonOpaque().luminance(state -> 10))); + public static final Block OAK_DIMENSIONAL_TRAPDOOR = register("dimdoors:wood_dimensional_trapdoor", new DimensionalTrapdoorBlock(FabricBlockSettings.of(Material.WOOD, MapColor.OAK_TAN).strength(3.0F).breakByTool(FabricToolTags.AXES).breakByHand(true).nonOpaque())); - public static final Block DIMENSIONAL_PORTAL = register("dimdoors:dimensional_portal", new DimensionalPortalBlock(FabricBlockSettings.of(Material.AIR).collidable(false).nonOpaque().dropsNothing().lightLevel(10))); - public static final Block DETACHED_RIFT = register("dimdoors:detached_rift", new DetachedRiftBlock(FabricBlockSettings.of(Material.AIR).noCollision().nonOpaque())); + public static final Block DIMENSIONAL_PORTAL = register("dimdoors:dimensional_portal", new DimensionalPortalBlock(FabricBlockSettings.of(Material.AIR).collidable(false).strength(-1.0F, 3600000.0F).nonOpaque().dropsNothing().luminance(10))); + public static final Block DETACHED_RIFT = register("dimdoors:detached_rift", new DetachedRiftBlock(FabricBlockSettings.of(Material.AIR).strength(-1.0F, 3600000.0F).noCollision().nonOpaque())); public static final Block WHITE_FABRIC = registerFabric("dimdoors:white_fabric", DyeColor.WHITE); public static final Block ORANGE_FABRIC = registerFabric("dimdoors:orange_fabric", DyeColor.ORANGE); @@ -98,7 +99,13 @@ public final class ModBlocks { @Environment(EnvType.CLIENT) public static void initClient() { - BlockRenderLayerMap.INSTANCE.putBlocks(RenderLayer.getCutout(), ModBlocks.OAK_DIMENSIONAL_DOOR, ModBlocks.GOLD_DIMENSIONAL_DOOR, ModBlocks.IRON_DIMENSIONAL_DOOR, ModBlocks.OAK_DIMENSIONAL_TRAPDOOR, ModBlocks.QUARTZ_DIMENSIONAL_DOOR, ModBlocks.QUARTZ_DOOR); + BlockRenderLayerMap.INSTANCE.putBlocks(RenderLayer.getCutout(), + ModBlocks.OAK_DIMENSIONAL_DOOR, + ModBlocks.GOLD_DIMENSIONAL_DOOR, + ModBlocks.IRON_DIMENSIONAL_DOOR, + ModBlocks.OAK_DIMENSIONAL_TRAPDOOR, + ModBlocks.QUARTZ_DIMENSIONAL_DOOR, + ModBlocks.QUARTZ_DOOR); } public static Block ancientFabricFromDye(DyeColor color) { diff --git a/src/main/resources/assets/dimdoors/models/block/gold_door_bottom.json b/src/main/resources/assets/dimdoors/models/block/gold_door_bottom.json index a6022432..043b8879 100644 --- a/src/main/resources/assets/dimdoors/models/block/gold_door_bottom.json +++ b/src/main/resources/assets/dimdoors/models/block/gold_door_bottom.json @@ -1,7 +1,8 @@ { - "parent": "block/door_bottom", - "textures": { - "bottom": "dimdoors:block/gold_door_lower", - "top": "dimdoors:block/gold_door_upper" - } + "parent": "block/door_bottom", + "textures": { + "bottom": "dimdoors:block/gold_door_lower", + "top": "dimdoors:block/gold_door_upper", + "particle": "dimdoors:block/gold_door_lower" + } } diff --git a/src/main/resources/assets/dimdoors/models/block/gold_door_bottom_rh.json b/src/main/resources/assets/dimdoors/models/block/gold_door_bottom_rh.json index 5250aa62..3b82c250 100644 --- a/src/main/resources/assets/dimdoors/models/block/gold_door_bottom_rh.json +++ b/src/main/resources/assets/dimdoors/models/block/gold_door_bottom_rh.json @@ -1,7 +1,8 @@ { - "parent": "block/door_bottom_rh", - "textures": { - "bottom": "dimdoors:block/gold_door_lower", - "top": "dimdoors:block/gold_door_upper" - } + "parent": "block/door_bottom_rh", + "textures": { + "bottom": "dimdoors:block/gold_door_lower", + "top": "dimdoors:block/gold_door_upper", + "particle": "dimdoors:block/gold_door_lower" + } } diff --git a/src/main/resources/assets/dimdoors/models/block/gold_door_top.json b/src/main/resources/assets/dimdoors/models/block/gold_door_top.json index 66259d6f..39162404 100644 --- a/src/main/resources/assets/dimdoors/models/block/gold_door_top.json +++ b/src/main/resources/assets/dimdoors/models/block/gold_door_top.json @@ -1,7 +1,8 @@ { - "parent": "block/door_top", - "textures": { - "bottom": "dimdoors:block/gold_door_lower", - "top": "dimdoors:block/gold_door_upper" - } + "parent": "block/door_top", + "textures": { + "bottom": "dimdoors:block/gold_door_lower", + "top": "dimdoors:block/gold_door_upper", + "particle": "dimdoors:block/gold_door_lower" + } } diff --git a/src/main/resources/assets/dimdoors/models/block/gold_door_top_rh.json b/src/main/resources/assets/dimdoors/models/block/gold_door_top_rh.json index a874f87b..c55a457d 100644 --- a/src/main/resources/assets/dimdoors/models/block/gold_door_top_rh.json +++ b/src/main/resources/assets/dimdoors/models/block/gold_door_top_rh.json @@ -1,7 +1,8 @@ { - "parent": "block/door_top_rh", - "textures": { - "bottom": "dimdoors:block/gold_door_lower", - "top": "dimdoors:block/gold_door_upper" - } + "parent": "block/door_top_rh", + "textures": { + "bottom": "dimdoors:block/gold_door_lower", + "top": "dimdoors:block/gold_door_upper", + "particle": "dimdoors:block/gold_door_lower" + } } diff --git a/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_bottom.json b/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_bottom.json index a391275e..a0293fba 100644 --- a/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_bottom.json +++ b/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_bottom.json @@ -1,7 +1,8 @@ { - "parent": "block/door_bottom", - "textures": { - "bottom": "dimdoors:block/iron_dimensional_door_lower", - "top": "dimdoors:block/iron_dimensional_door_upper" - } + "parent": "block/door_bottom", + "textures": { + "bottom": "dimdoors:block/iron_dimensional_door_lower", + "top": "dimdoors:block/iron_dimensional_door_upper", + "particle": "dimdoors:block/iron_dimensional_door_lower" + } } diff --git a/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_bottom_rh.json b/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_bottom_rh.json index 862b3032..75eacb8c 100644 --- a/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_bottom_rh.json +++ b/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_bottom_rh.json @@ -1,7 +1,8 @@ { - "parent": "block/door_bottom_rh", - "textures": { - "bottom": "dimdoors:block/iron_dimensional_door_lower", - "top": "dimdoors:block/iron_dimensional_door_upper" - } + "parent": "block/door_bottom_rh", + "textures": { + "bottom": "dimdoors:block/iron_dimensional_door_lower", + "top": "dimdoors:block/iron_dimensional_door_upper", + "particle": "dimdoors:block/iron_dimensional_door_lower" + } } diff --git a/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_top.json b/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_top.json index cffd8f77..fd8571e0 100644 --- a/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_top.json +++ b/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_top.json @@ -1,7 +1,8 @@ { - "parent": "block/door_top", - "textures": { - "bottom": "dimdoors:block/iron_dimensional_door_lower", - "top": "dimdoors:block/iron_dimensional_door_upper" - } + "parent": "block/door_top", + "textures": { + "bottom": "dimdoors:block/iron_dimensional_door_lower", + "top": "dimdoors:block/iron_dimensional_door_upper", + "particle": "dimdoors:block/iron_dimensional_door_lower" + } } diff --git a/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_top_rh.json b/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_top_rh.json index f3b0735d..0bd4d8b9 100644 --- a/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_top_rh.json +++ b/src/main/resources/assets/dimdoors/models/block/iron_dimensional_door_top_rh.json @@ -1,7 +1,8 @@ { - "parent": "block/door_top_rh", - "textures": { - "bottom": "dimdoors:block/iron_dimensional_door_lower", - "top": "dimdoors:block/iron_dimensional_door_upper" - } + "parent": "block/door_top_rh", + "textures": { + "bottom": "dimdoors:block/iron_dimensional_door_lower", + "top": "dimdoors:block/iron_dimensional_door_upper", + "particle": "dimdoors:block/iron_dimensional_door_lower" + } } diff --git a/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_bottom.json b/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_bottom.json index f2a150d2..ef5912f6 100644 --- a/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_bottom.json +++ b/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_bottom.json @@ -2,6 +2,7 @@ "parent": "block/door_bottom", "textures": { "bottom": "dimdoors:block/oak_dimensional_door_lower", - "top": "dimdoors:block/oak_dimensional_door_upper" + "top": "dimdoors:block/oak_dimensional_door_upper", + "particle": "dimdoors:block/oak_dimensional_door_lower" } } diff --git a/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_bottom_rh.json b/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_bottom_rh.json index 67e001b5..f3df5bff 100644 --- a/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_bottom_rh.json +++ b/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_bottom_rh.json @@ -2,6 +2,7 @@ "parent": "block/door_bottom_rh", "textures": { "bottom": "dimdoors:block/oak_dimensional_door_lower", - "top": "dimdoors:block/oak_dimensional_door_upper" + "top": "dimdoors:block/oak_dimensional_door_upper", + "particle": "dimdoors:block/oak_dimensional_door_lower" } } diff --git a/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_top.json b/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_top.json index d4314a53..3a3068df 100644 --- a/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_top.json +++ b/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_top.json @@ -2,6 +2,7 @@ "parent": "block/door_top", "textures": { "bottom": "dimdoors:block/oak_dimensional_door_lower", - "top": "dimdoors:block/oak_dimensional_door_upper" + "top": "dimdoors:block/oak_dimensional_door_upper", + "particle": "dimdoors:block/oak_dimensional_door_lower" } } diff --git a/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_top_rh.json b/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_top_rh.json index 759bf92e..53d3c1f8 100644 --- a/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_top_rh.json +++ b/src/main/resources/assets/dimdoors/models/block/oak_dimensional_door_top_rh.json @@ -2,6 +2,7 @@ "parent": "block/door_top_rh", "textures": { "bottom": "dimdoors:block/oak_dimensional_door_lower", - "top": "dimdoors:block/oak_dimensional_door_upper" + "top": "dimdoors:block/oak_dimensional_door_upper", + "particle": "dimdoors:block/oak_dimensional_door_lower" } } diff --git a/src/main/resources/assets/dimdoors/models/block/quartz_door_bottom.json b/src/main/resources/assets/dimdoors/models/block/quartz_door_bottom.json index ff6c390c..523eeaf5 100644 --- a/src/main/resources/assets/dimdoors/models/block/quartz_door_bottom.json +++ b/src/main/resources/assets/dimdoors/models/block/quartz_door_bottom.json @@ -2,6 +2,7 @@ "parent": "block/door_bottom", "textures": { "bottom": "dimdoors:block/quartz_door_lower", - "top": "dimdoors:block/quartz_door_upper" + "top": "dimdoors:block/quartz_door_upper", + "particle": "dimdoors:block/quartz_door_lower" } } diff --git a/src/main/resources/assets/dimdoors/models/block/quartz_door_bottom_rh.json b/src/main/resources/assets/dimdoors/models/block/quartz_door_bottom_rh.json index 291c12cf..b492c5cc 100644 --- a/src/main/resources/assets/dimdoors/models/block/quartz_door_bottom_rh.json +++ b/src/main/resources/assets/dimdoors/models/block/quartz_door_bottom_rh.json @@ -2,6 +2,7 @@ "parent": "block/door_bottom_rh", "textures": { "bottom": "dimdoors:block/quartz_door_lower", - "top": "dimdoors:block/quartz_door_upper" + "top": "dimdoors:block/quartz_door_upper", + "particle": "dimdoors:block/quartz_door_lower" } } diff --git a/src/main/resources/assets/dimdoors/models/block/quartz_door_top.json b/src/main/resources/assets/dimdoors/models/block/quartz_door_top.json index c79ef4f8..be316260 100644 --- a/src/main/resources/assets/dimdoors/models/block/quartz_door_top.json +++ b/src/main/resources/assets/dimdoors/models/block/quartz_door_top.json @@ -2,6 +2,7 @@ "parent": "block/door_top", "textures": { "bottom": "dimdoors:block/quartz_door_lower", - "top": "dimdoors:block/quartz_door_upper" + "top": "dimdoors:block/quartz_door_upper", + "particle": "dimdoors:block/quartz_door_lower" } } diff --git a/src/main/resources/assets/dimdoors/models/block/quartz_door_top_rh.json b/src/main/resources/assets/dimdoors/models/block/quartz_door_top_rh.json index df661843..5f00c475 100644 --- a/src/main/resources/assets/dimdoors/models/block/quartz_door_top_rh.json +++ b/src/main/resources/assets/dimdoors/models/block/quartz_door_top_rh.json @@ -2,6 +2,7 @@ "parent": "block/door_top_rh", "textures": { "bottom": "dimdoors:block/quartz_door_lower", - "top": "dimdoors:block/quartz_door_upper" + "top": "dimdoors:block/quartz_door_upper", + "particle": "dimdoors:block/quartz_door_lower" } } diff --git a/src/main/resources/data/fabric/tags/items/swords.json b/src/main/resources/data/fabric/tags/items/swords.json new file mode 100644 index 00000000..c7687e0a --- /dev/null +++ b/src/main/resources/data/fabric/tags/items/swords.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "dimdoors:rift_blade" + ] +}