diff --git a/src/main/java/com/minelittlepony/unicopia/block/BlockCloudDoor.java b/src/main/java/com/minelittlepony/unicopia/block/BlockCloudDoor.java index ebe53b51..1644de39 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/BlockCloudDoor.java +++ b/src/main/java/com/minelittlepony/unicopia/block/BlockCloudDoor.java @@ -1,20 +1,16 @@ package com.minelittlepony.unicopia.block; -import java.util.Random; +import java.util.function.Supplier; import com.minelittlepony.unicopia.CloudType; -import com.minelittlepony.unicopia.init.UItems; -import net.minecraft.block.BlockDoor; import net.minecraft.block.SoundType; import net.minecraft.block.material.MapColor; import net.minecraft.block.material.Material; import net.minecraft.block.state.IBlockState; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; import net.minecraft.util.BlockRenderLayer; import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumHand; @@ -22,13 +18,11 @@ import net.minecraft.util.math.BlockPos; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; -public class BlockCloudDoor extends BlockDoor implements ICloudBlock { +public class BlockCloudDoor extends UDoor implements ICloudBlock { - public BlockCloudDoor(Material material, String domain, String name) { - super(material); + public BlockCloudDoor(Material material, String domain, String name, Supplier theItem) { + super(material, domain, name, theItem); - setTranslationKey(name); - setRegistryName(domain, name); setSoundType(SoundType.CLOTH); setHardness(3); setResistance(200); @@ -88,16 +82,6 @@ public class BlockCloudDoor extends BlockDoor implements ICloudBlock { return getCanInteract(state, entity) && super.canEntityDestroy(state, world, pos, entity); } - @Override - public Item getItemDropped(IBlockState state, Random rand, int fortune) { - return state.getValue(HALF) == BlockDoor.EnumDoorHalf.UPPER ? Items.AIR : UItems.mist_door; - } - - @Override - public ItemStack getItem(World world, BlockPos pos, IBlockState state) { - return new ItemStack(UItems.mist_door); - } - @Deprecated @Override public float getPlayerRelativeBlockHardness(IBlockState state, EntityPlayer player, World worldIn, BlockPos pos) { diff --git a/src/main/java/com/minelittlepony/unicopia/block/BlockDutchDoor.java b/src/main/java/com/minelittlepony/unicopia/block/BlockDutchDoor.java new file mode 100644 index 00000000..b9c855d5 --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/block/BlockDutchDoor.java @@ -0,0 +1,110 @@ +package com.minelittlepony.unicopia.block; + +import java.util.function.Supplier; + +import net.minecraft.block.BlockDoor; +import net.minecraft.block.material.Material; +import net.minecraft.block.state.IBlockState; +import net.minecraft.item.Item; +import net.minecraft.util.EnumFacing; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; + +public class BlockDutchDoor extends UDoor { + + public BlockDutchDoor(Material material, String domain, String name, Supplier theItem) { + super(material, domain, name, theItem); + } + + @Override + protected BlockPos getPrimaryDoorPos(IBlockState state, BlockPos pos) { + return pos; + } + + @Override + public boolean isPassable(IBlockAccess world, BlockPos pos) { + return world.getBlockState(pos).getValue(OPEN); + } + + @Override + protected boolean onPowerStateChanged(World world, IBlockState state, BlockPos pos, boolean powered) { + boolean result = super.onPowerStateChanged(world, state, pos, powered); + + IBlockState upper = world.getBlockState(pos.up()); + if (upper.getBlock() == this && upper.getValue(OPEN) != powered) { + world.setBlockState(pos.up(), upper.withProperty(OPEN, powered)); + + return true; + } + + return result; + } + + // UPPER - HALF/HINGE/POWER{/OPEN} + // LOWER - HALF/FACING/FACING/OPEN + + @Override + public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { + + // copy properties in stored by the sibling block + if (state.getValue(HALF) == BlockDoor.EnumDoorHalf.LOWER) { + IBlockState other = world.getBlockState(pos.up()); + + if (other.getBlock() == this) { + return state.withProperty(HINGE, other.getValue(HINGE)) + .withProperty(POWERED, other.getValue(POWERED)); + } + } else { + IBlockState other = world.getBlockState(pos.down()); + + if (other.getBlock() == this) { + return state.withProperty(FACING, other.getValue(FACING)); + } + } + + + return state; + } + + @Override + public IBlockState getStateFromMeta(int meta) { + boolean upper = (meta & 8) != 0; + + IBlockState state = getDefaultState() + .withProperty(HALF, upper ? EnumDoorHalf.UPPER : EnumDoorHalf.LOWER) + .withProperty(OPEN, (meta & 4) != 0); + + if (upper) { + return state.withProperty(POWERED, (meta & 1) != 0) + .withProperty(HINGE, (meta & 2) != 0 ? EnumHingePosition.RIGHT : EnumHingePosition.LEFT); + } + + return state.withProperty(FACING, EnumFacing.byHorizontalIndex(meta & 3).rotateYCCW()); + } + + @Override + public int getMetaFromState(IBlockState state) { + int i = 0; + + if (state.getValue(HALF) == BlockDoor.EnumDoorHalf.UPPER) { + i |= 8; + + if (state.getValue(POWERED)) { + i |= 1; + } + + if (state.getValue(HINGE) == BlockDoor.EnumHingePosition.RIGHT) { + i |= 2; + } + } else { + i |= state.getValue(FACING).rotateY().getHorizontalIndex(); + } + + if (state.getValue(OPEN)) { + i |= 4; + } + + return i; + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/block/UDoor.java b/src/main/java/com/minelittlepony/unicopia/block/UDoor.java new file mode 100644 index 00000000..a35aa706 --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/block/UDoor.java @@ -0,0 +1,186 @@ +package com.minelittlepony.unicopia.block; + +import java.util.Random; +import java.util.function.Supplier; + +import javax.annotation.Nullable; + +import com.minelittlepony.util.WorldEvent; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockDoor; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; +import net.minecraft.block.state.IBlockState; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.init.Items; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumFacing; +import net.minecraft.util.EnumHand; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.World; + +public abstract class UDoor extends BlockDoor { + + private final Supplier theItem; + + protected UDoor(Material material, String domain, String name, Supplier theItem) { + super(material); + disableStats(); + setTranslationKey(name); + setRegistryName(domain, name); + + this.theItem = theItem; + } + + @Override + public Block setSoundType(SoundType sound) { + return super.setSoundType(sound); + } + + @Override + public Item getItemDropped(IBlockState state, Random rand, int fortune) { + return state.getValue(HALF) == BlockDoor.EnumDoorHalf.UPPER ? Items.AIR : getItem(); + } + + @Override + public ItemStack getItem(World world, BlockPos pos, IBlockState state) { + return new ItemStack(getItem()); + } + + protected Item getItem() { + return theItem.get(); + } + + protected WorldEvent getCloseSound() { + return material == Material.IRON ? WorldEvent.IRON_DOOR_SLAM : WorldEvent.WOODEN_DOOR_SLAM; + } + + protected WorldEvent getOpenSound() { + return material == Material.IRON ? WorldEvent.IRON_DOOR_OPEN : WorldEvent.WOODEN_DOOR_OPEN; + } + + @Override + public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { + return toggleDoor(world, pos, false, true, player); + } + + @Override + public void toggleDoor(World world, BlockPos pos, boolean open) { + toggleDoor(world, pos, open, false, null); + } + + protected boolean toggleDoor(World world, BlockPos pos, boolean open, boolean force, @Nullable EntityPlayer player) { + if (player != null && material == Material.IRON) { + return false; + } + + IBlockState state = world.getBlockState(pos); + + if (state.getBlock() != this) { + return false; + } + + BlockPos lower = getPrimaryDoorPos(state, pos); + + IBlockState mainDoor = pos == lower ? state : world.getBlockState(lower); + + if (mainDoor.getBlock() != this) { + return false; + } + + if (!force && mainDoor.getValue(OPEN) == open) { + return false; + } + + state = mainDoor.cycleProperty(OPEN); + + world.setBlockState(lower, state, 10); + + world.markBlockRangeForRenderUpdate(lower, pos); + + WorldEvent sound = state.getValue(OPEN) ? getOpenSound() : getCloseSound(); + + world.playEvent(player, sound.getId(), pos, 0); + + return true; + } + + protected BlockPos getPrimaryDoorPos(IBlockState state, BlockPos pos) { + return state.getValue(HALF) == BlockDoor.EnumDoorHalf.LOWER ? pos : pos.down(); + } + + @Override + public void neighborChanged(IBlockState state, World world, BlockPos pos, Block sender, BlockPos fromPos) { + if (state.getValue(HALF) == BlockDoor.EnumDoorHalf.UPPER) { + BlockPos lower = pos.down(); + + IBlockState lowerDoor = world.getBlockState(lower); + + // pop us off if we don't have a lower door + if (lowerDoor.getBlock() != this) { + world.setBlockToAir(pos); + } else if (sender != this) { + lowerDoor.neighborChanged(world, lower, sender, fromPos); + } + + return; + } + + boolean destroyed = false; + + BlockPos upper = pos.up(); + IBlockState upperDoor = world.getBlockState(upper); + + // pop us off if we don't have an upper door + if (upperDoor.getBlock() != this) { + world.setBlockToAir(pos); + destroyed = true; + } + + // pop us off if we don't have support + if (!world.getBlockState(pos.down()).isSideSolid(world, pos.down(), EnumFacing.UP)) { + world.setBlockToAir(pos); + + destroyed = true; + + if (upperDoor.getBlock() == this) { + world.setBlockToAir(upper); + } + } + + if (destroyed) { + if (!world.isRemote) { + dropBlockAsItem(world, pos, state, 0); + } + } else { + boolean powered = world.isBlockPowered(pos) || world.isBlockPowered(upper); + + if (sender != this && (powered || sender.getDefaultState().canProvidePower()) && powered != upperDoor.getValue(POWERED)) { + world.setBlockState(upper, upperDoor.withProperty(POWERED, powered), 2); + + if (onPowerStateChanged(world, state, pos, powered)) { + world.markBlockRangeForRenderUpdate(pos, upper); + + WorldEvent sound = powered ? getOpenSound() : getCloseSound(); + + world.playEvent(null, sound.getId(), pos, 0); + } + } + } + } + + /** + * Called by the lower block when the powered state changes. + */ + protected boolean onPowerStateChanged(World world, IBlockState state, BlockPos pos, boolean powered) { + if (powered != state.getValue(OPEN)) { + world.setBlockState(pos, state.withProperty(OPEN, powered), 2); + + return true; + } + + return false; + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/init/UBlocks.java b/src/main/java/com/minelittlepony/unicopia/init/UBlocks.java index b6251905..5a84c8c6 100644 --- a/src/main/java/com/minelittlepony/unicopia/init/UBlocks.java +++ b/src/main/java/com/minelittlepony/unicopia/init/UBlocks.java @@ -9,6 +9,7 @@ import com.minelittlepony.unicopia.block.BlockCloudAnvil; import com.minelittlepony.unicopia.block.BlockCloudBanister; import com.minelittlepony.unicopia.block.BlockCloudSlab; import com.minelittlepony.unicopia.block.BlockCloudStairs; +import com.minelittlepony.unicopia.block.BlockDutchDoor; import com.minelittlepony.unicopia.block.BlockSugar; import com.minelittlepony.unicopia.block.BlockTomatoPlant; import com.minelittlepony.unicopia.block.IColourful; @@ -21,6 +22,8 @@ import com.minelittlepony.unicopia.block.BlockCloudFence; import com.minelittlepony.unicopia.block.BlockCloud; import net.minecraft.block.Block; +import net.minecraft.block.SoundType; +import net.minecraft.block.material.Material; import net.minecraft.block.state.IBlockState; import net.minecraft.client.renderer.color.BlockColors; import net.minecraft.client.renderer.color.ItemColors; @@ -45,7 +48,13 @@ public class UBlocks { public static final BlockCloudSlab.Single enchanted_cloud_slab = new BlockCloudSlab.Single<>(enchanted_cloud, UMaterials.cloud, Unicopia.MODID, "enchanted_cloud_slab"); public static final BlockCloudSlab.Single packed_cloud_slab = new BlockCloudSlab.Single<>(enchanted_cloud, UMaterials.cloud, Unicopia.MODID, "packed_cloud_slab"); - public static final BlockCloudDoor mist_door = new BlockCloudDoor(UMaterials.cloud, Unicopia.MODID, "mist_door"); + public static final BlockCloudDoor mist_door = new BlockCloudDoor(UMaterials.cloud, Unicopia.MODID, "mist_door", () -> UItems.mist_door); + public static final Block library_door = new BlockDutchDoor(Material.WOOD, Unicopia.MODID, "library_door", () -> UItems.library_door) + .setSoundType(SoundType.WOOD) + .setHardness(3); + public static final Block bakery_door = new BlockDutchDoor(Material.WOOD, Unicopia.MODID, "bakery_door", () -> UItems.bakery_door) + .setSoundType(SoundType.WOOD) + .setHardness(3); public static final BlockGlowingGem enchanted_torch = new BlockGlowingGem(Unicopia.MODID, "enchanted_torch"); @@ -78,7 +87,8 @@ public class UBlocks { enchanted_cloud_slab, enchanted_cloud_slab.doubleSlab, packed_cloud_slab, packed_cloud_slab.doubleSlab, cloud_fence, cloud_banister, - mist_door, anvil, cloud_farmland, + mist_door, library_door, bakery_door, + anvil, cloud_farmland, sugar_block, flower_pot, alfalfa, tomato_plant, diff --git a/src/main/java/com/minelittlepony/unicopia/init/UItems.java b/src/main/java/com/minelittlepony/unicopia/init/UItems.java index 809cd38a..bcfee2d5 100644 --- a/src/main/java/com/minelittlepony/unicopia/init/UItems.java +++ b/src/main/java/com/minelittlepony/unicopia/init/UItems.java @@ -98,6 +98,12 @@ public class UItems { public static final Item mist_door = new ItemDoor(UBlocks.mist_door) .setTranslationKey("mist_door") .setRegistryName(Unicopia.MODID, "mist_door"); + public static final Item library_door = new ItemDoor(UBlocks.library_door) + .setTranslationKey("library_door") + .setRegistryName(Unicopia.MODID, "library_door"); + public static final Item bakery_door = new ItemDoor(UBlocks.bakery_door) + .setTranslationKey("bakery_door") + .setRegistryName(Unicopia.MODID, "bakery_door"); public static final Item sugar_block = new UItemDecoration(UBlocks.sugar_block); @@ -213,7 +219,7 @@ public class UItems { cloud_stairs, cloud_slab, enchanted_cloud_slab, packed_cloud_slab, cloud_fence, cloud_banister, - cloud_farmland, mist_door, anvil, + cloud_farmland, mist_door, library_door, bakery_door, anvil, bag_of_holding, spell, curse, spellbook, mug, enchanted_torch, staff_meadow_brook, alicorn_amulet, @@ -244,7 +250,7 @@ public class UItems { cloud_stairs, cloud_slab, enchanted_cloud_slab, packed_cloud_slab, cloud_fence, cloud_banister, - cloud_farmland, mist_door, anvil, + cloud_farmland, mist_door, library_door, bakery_door, anvil, bag_of_holding, spell, curse, spellbook, mug, enchanted_torch, staff_meadow_brook, alicorn_amulet, diff --git a/src/main/resources/assets/unicopia/blockstates/bakery_door.json b/src/main/resources/assets/unicopia/blockstates/bakery_door.json new file mode 100644 index 00000000..72faabed --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/bakery_door.json @@ -0,0 +1,68 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:door/bakery_bottom" }, + "facing=south,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:door/bakery_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:door/bakery_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:door/bakery_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:door/bakery_bottom_rh" }, + "facing=south,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:door/bakery_bottom_rh", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:door/bakery_bottom_rh", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:door/bakery_bottom_rh", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:door/bakery_bottom_rh", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:door/bakery_bottom_rh", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:door/bakery_bottom_rh", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:door/bakery_bottom_rh" }, + "facing=east,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:door/bakery_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:door/bakery_bottom" }, + "facing=west,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:door/bakery_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:door/bakery_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:door/bakery_top" }, + "facing=south,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:door/bakery_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:door/bakery_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:door/bakery_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:door/bakery_top_rh" }, + "facing=south,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:door/bakery_top_rh", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:door/bakery_top_rh", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:door/bakery_top_rh", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:door/bakery_top_rh", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:door/bakery_top_rh", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:door/bakery_top_rh", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:door/bakery_top_rh" }, + "facing=east,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:door/bakery_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:door/bakery_top" }, + "facing=west,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:door/bakery_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:door/bakery_top", "y": 180 }, + "facing=east,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:door/bakery_bottom" }, + "facing=south,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:door/bakery_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:door/bakery_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:door/bakery_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:door/bakery_bottom_rh" }, + "facing=south,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:door/bakery_bottom_rh", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:door/bakery_bottom_rh", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:door/bakery_bottom_rh", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:door/bakery_bottom_rh", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:door/bakery_bottom_rh", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:door/bakery_bottom_rh", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:door/bakery_bottom_rh" }, + "facing=east,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:door/bakery_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:door/bakery_bottom" }, + "facing=west,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:door/bakery_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:door/bakery_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:door/bakery_top" }, + "facing=south,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:door/bakery_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:door/bakery_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:door/bakery_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:door/bakery_top_rh" }, + "facing=south,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:door/bakery_top_rh", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:door/bakery_top_rh", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:door/bakery_top_rh", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:door/bakery_top_rh", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:door/bakery_top_rh", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:door/bakery_top_rh", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:door/bakery_top_rh" }, + "facing=east,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:door/bakery_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:door/bakery_top" }, + "facing=west,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:door/bakery_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:door/bakery_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/library_door.json b/src/main/resources/assets/unicopia/blockstates/library_door.json new file mode 100644 index 00000000..aec9f468 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/library_door.json @@ -0,0 +1,68 @@ +{ + "variants": { + "facing=east,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:door/library_bottom" }, + "facing=south,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:door/library_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:door/library_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:door/library_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:door/library_bottom_rh" }, + "facing=south,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:door/library_bottom_rh", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:door/library_bottom_rh", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:door/library_bottom_rh", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:door/library_bottom_rh", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:door/library_bottom_rh", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:door/library_bottom_rh", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:door/library_bottom_rh" }, + "facing=east,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:door/library_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:door/library_bottom" }, + "facing=west,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:door/library_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:door/library_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:door/library_top" }, + "facing=south,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:door/library_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:door/library_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:door/library_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:door/library_top_rh" }, + "facing=south,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:door/library_top_rh", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:door/library_top_rh", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:door/library_top_rh", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:door/library_top_rh", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:door/library_top_rh", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:door/library_top_rh", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:door/library_top_rh" }, + "facing=east,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:door/library_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:door/library_top" }, + "facing=west,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:door/library_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:door/library_top", "y": 180 }, + "facing=east,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:door/library_bottom" }, + "facing=south,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:door/library_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:door/library_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:door/library_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:door/library_bottom_rh" }, + "facing=south,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:door/library_bottom_rh", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:door/library_bottom_rh", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:door/library_bottom_rh", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:door/library_bottom_rh", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:door/library_bottom_rh", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:door/library_bottom_rh", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:door/library_bottom_rh" }, + "facing=east,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:door/library_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:door/library_bottom" }, + "facing=west,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:door/library_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:door/library_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:door/library_top" }, + "facing=south,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:door/library_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:door/library_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:door/library_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:door/library_top_rh" }, + "facing=south,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:door/library_top_rh", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:door/library_top_rh", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:door/library_top_rh", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:door/library_top_rh", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:door/library_top_rh", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:door/library_top_rh", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:door/library_top_rh" }, + "facing=east,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:door/library_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:door/library_top" }, + "facing=west,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:door/library_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:door/library_top", "y": 180 } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/mist_door.json b/src/main/resources/assets/unicopia/blockstates/mist_door.json index 5635fe43..e7212f17 100644 --- a/src/main/resources/assets/unicopia/blockstates/mist_door.json +++ b/src/main/resources/assets/unicopia/blockstates/mist_door.json @@ -1,68 +1,68 @@ { "variants": { - "facing=east,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:mist_door_bottom" }, - "facing=south,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:mist_door_bottom", "y": 90 }, - "facing=west,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:mist_door_bottom", "y": 180 }, - "facing=north,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:mist_door_bottom", "y": 270 }, - "facing=east,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:mist_door_bottom_rh" }, - "facing=south,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:mist_door_bottom_rh", "y": 90 }, - "facing=west,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:mist_door_bottom_rh", "y": 180 }, - "facing=north,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:mist_door_bottom_rh", "y": 270 }, - "facing=east,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:mist_door_bottom_rh", "y": 90 }, - "facing=south,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:mist_door_bottom_rh", "y": 180 }, - "facing=west,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:mist_door_bottom_rh", "y": 270 }, - "facing=north,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:mist_door_bottom_rh" }, - "facing=east,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:mist_door_bottom", "y": 270 }, - "facing=south,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:mist_door_bottom" }, - "facing=west,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:mist_door_bottom", "y": 90 }, - "facing=north,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:mist_door_bottom", "y": 180 }, - "facing=east,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:mist_door_top" }, - "facing=south,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:mist_door_top", "y": 90 }, - "facing=west,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:mist_door_top", "y": 180 }, - "facing=north,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:mist_door_top", "y": 270 }, - "facing=east,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:mist_door_top_rh" }, - "facing=south,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:mist_door_top_rh", "y": 90 }, - "facing=west,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:mist_door_top_rh", "y": 180 }, - "facing=north,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:mist_door_top_rh", "y": 270 }, - "facing=east,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:mist_door_top_rh", "y": 90 }, - "facing=south,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:mist_door_top_rh", "y": 180 }, - "facing=west,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:mist_door_top_rh", "y": 270 }, - "facing=north,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:mist_door_top_rh" }, - "facing=east,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:mist_door_top", "y": 270 }, - "facing=south,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:mist_door_top" }, - "facing=west,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:mist_door_top", "y": 90 }, - "facing=north,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:mist_door_top", "y": 180 }, - "facing=east,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:mist_door_bottom" }, - "facing=south,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:mist_door_bottom", "y": 90 }, - "facing=west,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:mist_door_bottom", "y": 180 }, - "facing=north,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:mist_door_bottom", "y": 270 }, - "facing=east,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:mist_door_bottom_rh" }, - "facing=south,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:mist_door_bottom_rh", "y": 90 }, - "facing=west,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:mist_door_bottom_rh", "y": 180 }, - "facing=north,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:mist_door_bottom_rh", "y": 270 }, - "facing=east,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:mist_door_bottom_rh", "y": 90 }, - "facing=south,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:mist_door_bottom_rh", "y": 180 }, - "facing=west,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:mist_door_bottom_rh", "y": 270 }, - "facing=north,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:mist_door_bottom_rh" }, - "facing=east,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:mist_door_bottom", "y": 270 }, - "facing=south,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:mist_door_bottom" }, - "facing=west,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:mist_door_bottom", "y": 90 }, - "facing=north,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:mist_door_bottom", "y": 180 }, - "facing=east,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:mist_door_top" }, - "facing=south,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:mist_door_top", "y": 90 }, - "facing=west,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:mist_door_top", "y": 180 }, - "facing=north,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:mist_door_top", "y": 270 }, - "facing=east,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:mist_door_top_rh" }, - "facing=south,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:mist_door_top_rh", "y": 90 }, - "facing=west,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:mist_door_top_rh", "y": 180 }, - "facing=north,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:mist_door_top_rh", "y": 270 }, - "facing=east,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:mist_door_top_rh", "y": 90 }, - "facing=south,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:mist_door_top_rh", "y": 180 }, - "facing=west,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:mist_door_top_rh", "y": 270 }, - "facing=north,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:mist_door_top_rh" }, - "facing=east,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:mist_door_top", "y": 270 }, - "facing=south,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:mist_door_top" }, - "facing=west,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:mist_door_top", "y": 90 }, - "facing=north,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:mist_door_top", "y": 180 } + "facing=east,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:door/mist_bottom" }, + "facing=south,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:door/mist_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:door/mist_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false,powered=false": { "model": "unicopia:door/mist_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:door/mist_bottom_rh" }, + "facing=south,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:door/mist_bottom_rh", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:door/mist_bottom_rh", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false,powered=false": { "model": "unicopia:door/mist_bottom_rh", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:door/mist_bottom_rh", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:door/mist_bottom_rh", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:door/mist_bottom_rh", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true,powered=false": { "model": "unicopia:door/mist_bottom_rh" }, + "facing=east,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:door/mist_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:door/mist_bottom" }, + "facing=west,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:door/mist_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true,powered=false": { "model": "unicopia:door/mist_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:door/mist_top" }, + "facing=south,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:door/mist_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:door/mist_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false,powered=false": { "model": "unicopia:door/mist_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:door/mist_top_rh" }, + "facing=south,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:door/mist_top_rh", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:door/mist_top_rh", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false,powered=false": { "model": "unicopia:door/mist_top_rh", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:door/mist_top_rh", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:door/mist_top_rh", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:door/mist_top_rh", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true,powered=false": { "model": "unicopia:door/mist_top_rh" }, + "facing=east,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:door/mist_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:door/mist_top" }, + "facing=west,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:door/mist_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true,powered=false": { "model": "unicopia:door/mist_top", "y": 180 }, + "facing=east,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:door/mist_bottom" }, + "facing=south,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:door/mist_bottom", "y": 90 }, + "facing=west,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:door/mist_bottom", "y": 180 }, + "facing=north,half=lower,hinge=left,open=false,powered=true": { "model": "unicopia:door/mist_bottom", "y": 270 }, + "facing=east,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:door/mist_bottom_rh" }, + "facing=south,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:door/mist_bottom_rh", "y": 90 }, + "facing=west,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:door/mist_bottom_rh", "y": 180 }, + "facing=north,half=lower,hinge=right,open=false,powered=true": { "model": "unicopia:door/mist_bottom_rh", "y": 270 }, + "facing=east,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:door/mist_bottom_rh", "y": 90 }, + "facing=south,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:door/mist_bottom_rh", "y": 180 }, + "facing=west,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:door/mist_bottom_rh", "y": 270 }, + "facing=north,half=lower,hinge=left,open=true,powered=true": { "model": "unicopia:door/mist_bottom_rh" }, + "facing=east,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:door/mist_bottom", "y": 270 }, + "facing=south,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:door/mist_bottom" }, + "facing=west,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:door/mist_bottom", "y": 90 }, + "facing=north,half=lower,hinge=right,open=true,powered=true": { "model": "unicopia:door/mist_bottom", "y": 180 }, + "facing=east,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:door/mist_top" }, + "facing=south,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:door/mist_top", "y": 90 }, + "facing=west,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:door/mist_top", "y": 180 }, + "facing=north,half=upper,hinge=left,open=false,powered=true": { "model": "unicopia:door/mist_top", "y": 270 }, + "facing=east,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:door/mist_top_rh" }, + "facing=south,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:door/mist_top_rh", "y": 90 }, + "facing=west,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:door/mist_top_rh", "y": 180 }, + "facing=north,half=upper,hinge=right,open=false,powered=true": { "model": "unicopia:door/mist_top_rh", "y": 270 }, + "facing=east,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:door/mist_top_rh", "y": 90 }, + "facing=south,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:door/mist_top_rh", "y": 180 }, + "facing=west,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:door/mist_top_rh", "y": 270 }, + "facing=north,half=upper,hinge=left,open=true,powered=true": { "model": "unicopia:door/mist_top_rh" }, + "facing=east,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:door/mist_top", "y": 270 }, + "facing=south,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:door/mist_top" }, + "facing=west,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:door/mist_top", "y": 90 }, + "facing=north,half=upper,hinge=right,open=true,powered=true": { "model": "unicopia:door/mist_top", "y": 180 } } } diff --git a/src/main/resources/assets/unicopia/lang/en_US.lang b/src/main/resources/assets/unicopia/lang/en_US.lang index 4833bdaa..84ab48d6 100644 --- a/src/main/resources/assets/unicopia/lang/en_US.lang +++ b/src/main/resources/assets/unicopia/lang/en_US.lang @@ -27,6 +27,8 @@ item.cloud.medium.name=Construction Cloud item.cloud.large.name=Wild Cloud item.mist_door.name=Cloud Door +item.library_door.name=Dutch Library Door +item.bakery_door.name=Dutch Bakery Door item.dew_drop.name=Dew Drop item.cloud_anvil.name=Anvilhead Anvil diff --git a/src/main/resources/assets/unicopia/models/block/door/bakery_bottom.json b/src/main/resources/assets/unicopia/models/block/door/bakery_bottom.json new file mode 100644 index 00000000..20af668b --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/door/bakery_bottom.json @@ -0,0 +1,7 @@ +{ + "parent": "unicopia:block/door/bottom", + "textures": { + "bottom": "unicopia:blocks/door_bakery_lower", + "top": "unicopia:blocks/door_bakery_upper" + } +} diff --git a/src/main/resources/assets/unicopia/models/block/door/bakery_bottom_rh.json b/src/main/resources/assets/unicopia/models/block/door/bakery_bottom_rh.json new file mode 100644 index 00000000..f82e8191 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/door/bakery_bottom_rh.json @@ -0,0 +1,7 @@ +{ + "parent": "unicopia:block/door/bottom_rh", + "textures": { + "bottom": "unicopia:blocks/door_bakery_lower", + "top": "unicopia:blocks/door_bakery_upper" + } +} diff --git a/src/main/resources/assets/unicopia/models/block/door/bakery_top.json b/src/main/resources/assets/unicopia/models/block/door/bakery_top.json new file mode 100644 index 00000000..ea3a51b0 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/door/bakery_top.json @@ -0,0 +1,7 @@ +{ + "parent": "unicopia:block/door/top", + "textures": { + "bottom": "unicopia:blocks/door_bakery_lower", + "top": "unicopia:blocks/door_bakery_upper" + } +} diff --git a/src/main/resources/assets/unicopia/models/block/door/bakery_top_rh.json b/src/main/resources/assets/unicopia/models/block/door/bakery_top_rh.json new file mode 100644 index 00000000..38cc28ce --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/door/bakery_top_rh.json @@ -0,0 +1,7 @@ +{ + "parent": "unicopia:block/door/top_rh", + "textures": { + "bottom": "unicopia:blocks/door_bakery_lower", + "top": "unicopia:blocks/door_bakery_upper" + } +} diff --git a/src/main/resources/assets/unicopia/models/block/door/bottom.json b/src/main/resources/assets/unicopia/models/block/door/bottom.json new file mode 100644 index 00000000..3b908ce3 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/door/bottom.json @@ -0,0 +1,19 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#bottom" + }, + "elements": [ + { "from": [ 0, 0, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "up": { "uv": [ 13, 0, 16, 16 ], "texture": "#bottom", "cullface": "up" }, + "down": { "uv": [ 13, 0, 16, 16 ], "texture": "#bottom", "cullface": "down" }, + "north": { "uv": [ 3, 0, 0, 16 ], "texture": "#bottom", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 16 ], "texture": "#bottom", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom", "cullface": "west" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#bottom" } + } + } + ] +} diff --git a/src/main/resources/assets/unicopia/models/block/door/bottom_rh.json b/src/main/resources/assets/unicopia/models/block/door/bottom_rh.json new file mode 100644 index 00000000..b5093774 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/door/bottom_rh.json @@ -0,0 +1,19 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#bottom" + }, + "elements": [ + { "from": [ 0, 0, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "up": { "uv": [ 13, 0, 16, 16 ], "texture": "#bottom", "cullface": "up" }, + "down": { "uv": [ 13, 0, 16, 16 ], "texture": "#bottom", "cullface": "down" }, + "north": { "uv": [ 3, 0, 0, 16 ], "texture": "#bottom", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 16 ], "texture": "#bottom", "cullface": "south" }, + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#bottom", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#bottom" } + } + } + ] +} diff --git a/src/main/resources/assets/unicopia/models/block/door/library_bottom.json b/src/main/resources/assets/unicopia/models/block/door/library_bottom.json new file mode 100644 index 00000000..9696a7f6 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/door/library_bottom.json @@ -0,0 +1,7 @@ +{ + "parent": "unicopia:block/door/bottom", + "textures": { + "bottom": "unicopia:blocks/door_library_lower", + "top": "unicopia:blocks/door_library_upper" + } +} diff --git a/src/main/resources/assets/unicopia/models/block/door/library_bottom_rh.json b/src/main/resources/assets/unicopia/models/block/door/library_bottom_rh.json new file mode 100644 index 00000000..b06d234d --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/door/library_bottom_rh.json @@ -0,0 +1,7 @@ +{ + "parent": "unicopia:block/door/bottom_rh", + "textures": { + "bottom": "unicopia:blocks/door_library_lower", + "top": "unicopia:blocks/door_library_upper" + } +} diff --git a/src/main/resources/assets/unicopia/models/block/door/library_top.json b/src/main/resources/assets/unicopia/models/block/door/library_top.json new file mode 100644 index 00000000..e230b4df --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/door/library_top.json @@ -0,0 +1,7 @@ +{ + "parent": "unicopia:block/door/top", + "textures": { + "bottom": "unicopia:blocks/door_library_lower", + "top": "unicopia:blocks/door_library_upper" + } +} diff --git a/src/main/resources/assets/unicopia/models/block/door/library_top_rh.json b/src/main/resources/assets/unicopia/models/block/door/library_top_rh.json new file mode 100644 index 00000000..13422e83 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/door/library_top_rh.json @@ -0,0 +1,7 @@ +{ + "parent": "unicopia:block/door/top_rh", + "textures": { + "bottom": "unicopia:blocks/door_library_lower", + "top": "unicopia:blocks/door_library_upper" + } +} diff --git a/src/main/resources/assets/unicopia/models/block/mist_door_bottom.json b/src/main/resources/assets/unicopia/models/block/door/mist_bottom.json similarity index 100% rename from src/main/resources/assets/unicopia/models/block/mist_door_bottom.json rename to src/main/resources/assets/unicopia/models/block/door/mist_bottom.json diff --git a/src/main/resources/assets/unicopia/models/block/mist_door_bottom_rh.json b/src/main/resources/assets/unicopia/models/block/door/mist_bottom_rh.json similarity index 100% rename from src/main/resources/assets/unicopia/models/block/mist_door_bottom_rh.json rename to src/main/resources/assets/unicopia/models/block/door/mist_bottom_rh.json diff --git a/src/main/resources/assets/unicopia/models/block/mist_door_top.json b/src/main/resources/assets/unicopia/models/block/door/mist_top.json similarity index 100% rename from src/main/resources/assets/unicopia/models/block/mist_door_top.json rename to src/main/resources/assets/unicopia/models/block/door/mist_top.json diff --git a/src/main/resources/assets/unicopia/models/block/mist_door_top_rh.json b/src/main/resources/assets/unicopia/models/block/door/mist_top_rh.json similarity index 100% rename from src/main/resources/assets/unicopia/models/block/mist_door_top_rh.json rename to src/main/resources/assets/unicopia/models/block/door/mist_top_rh.json diff --git a/src/main/resources/assets/unicopia/models/block/door/top.json b/src/main/resources/assets/unicopia/models/block/door/top.json new file mode 100644 index 00000000..77b93084 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/door/top.json @@ -0,0 +1,19 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#top" + }, + "elements": [ + { "from": [ 0, 0, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "up": { "uv": [ 13, 0, 16, 16 ], "texture": "#bottom", "cullface": "up" }, + "down": { "uv": [ 13, 0, 16, 16 ], "texture": "#bottom", "cullface": "down" }, + "north": { "uv": [ 3, 0, 0, 16 ], "texture": "#top", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 16 ], "texture": "#top", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#top", "cullface": "west" }, + "east": { "uv": [ 16, 0, 0, 16 ], "texture": "#top" } + } + } + ] +} diff --git a/src/main/resources/assets/unicopia/models/block/door/top_rh.json b/src/main/resources/assets/unicopia/models/block/door/top_rh.json new file mode 100644 index 00000000..9bea9d05 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/door/top_rh.json @@ -0,0 +1,19 @@ +{ + "ambientocclusion": false, + "textures": { + "particle": "#top" + }, + "elements": [ + { "from": [ 0, 0, 0 ], + "to": [ 3, 16, 16 ], + "faces": { + "up": { "uv": [ 13, 0, 16, 16 ], "texture": "#bottom", "cullface": "up" }, + "down": { "uv": [ 13, 0, 16, 16 ], "texture": "#bottom", "cullface": "down" }, + "north": { "uv": [ 3, 0, 0, 16 ], "texture": "#top", "cullface": "north" }, + "south": { "uv": [ 0, 0, 3, 16 ], "texture": "#top", "cullface": "south" }, + "west": { "uv": [ 16, 0, 0, 16 ], "texture": "#top", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#top" } + } + } + ] +} diff --git a/src/main/resources/assets/unicopia/models/item/bakery_door.json b/src/main/resources/assets/unicopia/models/item/bakery_door.json new file mode 100644 index 00000000..f468dcc0 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/bakery_door.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:items/door_bakery" + } +} diff --git a/src/main/resources/assets/unicopia/models/item/library_door.json b/src/main/resources/assets/unicopia/models/item/library_door.json new file mode 100644 index 00000000..69f1018c --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/library_door.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:items/door_library" + } +} diff --git a/src/main/resources/assets/unicopia/recipes/bakery_door.json b/src/main/resources/assets/unicopia/recipes/bakery_door.json new file mode 100644 index 00000000..bfa3fbed --- /dev/null +++ b/src/main/resources/assets/unicopia/recipes/bakery_door.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "**", + "##", + "**" + ], + "key": { + "#": [ + { "item": "unicopia:sugar_block" } + ], + "*": [ + { "item": "minecraft:dye", "data": 9 } + ] + }, + "result": { "item": "unicopia:bakery_door", "count": 3 } +} diff --git a/src/main/resources/assets/unicopia/recipes/library_door.json b/src/main/resources/assets/unicopia/recipes/library_door.json new file mode 100644 index 00000000..a049147b --- /dev/null +++ b/src/main/resources/assets/unicopia/recipes/library_door.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "##", + "**", + "**" + ], + "key": { + "#": [ + { "item": "minecraft:planks", "data": 5 } + ], + "*": [ + { "item": "minecraft:planks", "data": 1 } + ] + }, + "result": { "item": "unicopia:library_door", "count": 3 } +} diff --git a/src/main/resources/assets/unicopia/textures/blocks/door_bakery_lower.png b/src/main/resources/assets/unicopia/textures/blocks/door_bakery_lower.png new file mode 100644 index 00000000..cf8b541b Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/blocks/door_bakery_lower.png differ diff --git a/src/main/resources/assets/unicopia/textures/blocks/door_bakery_upper.png b/src/main/resources/assets/unicopia/textures/blocks/door_bakery_upper.png new file mode 100644 index 00000000..69ef5b6a Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/blocks/door_bakery_upper.png differ diff --git a/src/main/resources/assets/unicopia/textures/blocks/door_library_lower.png b/src/main/resources/assets/unicopia/textures/blocks/door_library_lower.png new file mode 100644 index 00000000..e044dc31 Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/blocks/door_library_lower.png differ diff --git a/src/main/resources/assets/unicopia/textures/blocks/door_library_upper.png b/src/main/resources/assets/unicopia/textures/blocks/door_library_upper.png new file mode 100644 index 00000000..b558a995 Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/blocks/door_library_upper.png differ diff --git a/src/main/resources/assets/unicopia/textures/items/door_bakery.png b/src/main/resources/assets/unicopia/textures/items/door_bakery.png new file mode 100644 index 00000000..d3db43a8 Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/items/door_bakery.png differ diff --git a/src/main/resources/assets/unicopia/textures/items/door_library.png b/src/main/resources/assets/unicopia/textures/items/door_library.png new file mode 100644 index 00000000..a9bbe2ea Binary files /dev/null and b/src/main/resources/assets/unicopia/textures/items/door_library.png differ