From 05a5960380df46e2b5fef10758ac3afb7bcedea9 Mon Sep 17 00:00:00 2001 From: Sollace Date: Tue, 31 Oct 2023 20:38:28 +0000 Subject: [PATCH] Added fancy beds and bedsheets --- .../unicopia/block/FancyBedBlock.java | 121 ++++++++++++++++++ .../unicopia/block/UBlockEntities.java | 2 +- .../unicopia/block/UBlocks.java | 5 +- .../unicopia/block/cloud/CloudBedBlock.java | 30 +---- .../unicopia/client/URenderers.java | 11 +- .../entity/CloudBedBlockEntityRenderer.java | 29 ++++- .../unicopia/item/BedsheetsItem.java | 52 ++++++++ .../unicopia/item/FancyBedItem.java | 26 ++++ .../minelittlepony/unicopia/item/UItems.java | 14 +- .../unicopia/item/cloud/CloudBedItem.java | 5 +- .../unicopia/blockstates/cloth_bed.json | 5 + .../unicopia/blockstates/cloud_bed.json | 5 + .../blockstates/orange_cloud_bed.json | 5 - .../unicopia/blockstates/white_cloud_bed.json | 5 - .../resources/assets/unicopia/lang/en_us.json | 9 ++ .../unicopia/models/block/cloth_bed.json | 5 + .../{orange_cloud_bed.json => cloud_bed.json} | 0 .../models/block/white_cloud_bed.json | 5 - .../models/item/apple_bed_sheets.json | 6 + .../models/item/barred_bed_sheets.json | 6 + .../unicopia/models/item/blue_bed_sheets.json | 6 + .../models/item/checkered_bed_sheets.json | 6 + .../{white_cloud_bed.json => cloth_bed.json} | 0 .../{orange_cloud_bed.json => cloud_bed.json} | 2 +- .../models/item/orange_bed_sheets.json | 6 + .../unicopia/models/item/pink_bed_sheets.json | 6 + .../models/item/rainbow_bed_sheets.json | 6 + .../unicopia/models/item/red_bed_sheets.json | 6 + .../unicopia/textures/entity/bed/cloth.png | Bin 0 -> 6585 bytes .../{cloud_bed/white.png => bed/cloud.png} | Bin .../textures/entity/bed/sheets/apple.png | Bin 0 -> 5986 bytes .../textures/entity/bed/sheets/bars.png | Bin 0 -> 5892 bytes .../textures/entity/bed/sheets/blue.png | Bin 0 -> 5671 bytes .../textures/entity/bed/sheets/checker.png | Bin 0 -> 6123 bytes .../textures/entity/bed/sheets/orange.png | Bin 0 -> 5620 bytes .../textures/entity/bed/sheets/pink.png | Bin 0 -> 5723 bytes .../textures/entity/bed/sheets/rainbow.png | Bin 0 -> 5790 bytes .../textures/item/apple_bed_sheets.png | Bin 0 -> 7018 bytes .../textures/item/barred_bed_sheets.png | Bin 0 -> 7006 bytes .../textures/item/blue_bed_sheets.png | Bin 0 -> 7034 bytes .../textures/item/checkered_bed_sheets.png | Bin 0 -> 6927 bytes .../textures/item/orange_bed_sheets.png | Bin 0 -> 6885 bytes .../textures/item/pink_bed_sheets.png | Bin 0 -> 6892 bytes .../textures/item/rainbow_bed_sheets.png | Bin 0 -> 7039 bytes .../unicopia/textures/item/red_bed_sheets.png | Bin 0 -> 6879 bytes 45 files changed, 327 insertions(+), 57 deletions(-) create mode 100644 src/main/java/com/minelittlepony/unicopia/block/FancyBedBlock.java create mode 100644 src/main/java/com/minelittlepony/unicopia/item/BedsheetsItem.java create mode 100644 src/main/java/com/minelittlepony/unicopia/item/FancyBedItem.java create mode 100644 src/main/resources/assets/unicopia/blockstates/cloth_bed.json create mode 100644 src/main/resources/assets/unicopia/blockstates/cloud_bed.json delete mode 100644 src/main/resources/assets/unicopia/blockstates/orange_cloud_bed.json delete mode 100644 src/main/resources/assets/unicopia/blockstates/white_cloud_bed.json create mode 100644 src/main/resources/assets/unicopia/models/block/cloth_bed.json rename src/main/resources/assets/unicopia/models/block/{orange_cloud_bed.json => cloud_bed.json} (100%) delete mode 100644 src/main/resources/assets/unicopia/models/block/white_cloud_bed.json create mode 100644 src/main/resources/assets/unicopia/models/item/apple_bed_sheets.json create mode 100644 src/main/resources/assets/unicopia/models/item/barred_bed_sheets.json create mode 100644 src/main/resources/assets/unicopia/models/item/blue_bed_sheets.json create mode 100644 src/main/resources/assets/unicopia/models/item/checkered_bed_sheets.json rename src/main/resources/assets/unicopia/models/item/{white_cloud_bed.json => cloth_bed.json} (100%) rename src/main/resources/assets/unicopia/models/item/{orange_cloud_bed.json => cloud_bed.json} (59%) create mode 100644 src/main/resources/assets/unicopia/models/item/orange_bed_sheets.json create mode 100644 src/main/resources/assets/unicopia/models/item/pink_bed_sheets.json create mode 100644 src/main/resources/assets/unicopia/models/item/rainbow_bed_sheets.json create mode 100644 src/main/resources/assets/unicopia/models/item/red_bed_sheets.json create mode 100644 src/main/resources/assets/unicopia/textures/entity/bed/cloth.png rename src/main/resources/assets/unicopia/textures/entity/{cloud_bed/white.png => bed/cloud.png} (100%) create mode 100644 src/main/resources/assets/unicopia/textures/entity/bed/sheets/apple.png create mode 100644 src/main/resources/assets/unicopia/textures/entity/bed/sheets/bars.png create mode 100644 src/main/resources/assets/unicopia/textures/entity/bed/sheets/blue.png create mode 100644 src/main/resources/assets/unicopia/textures/entity/bed/sheets/checker.png create mode 100644 src/main/resources/assets/unicopia/textures/entity/bed/sheets/orange.png create mode 100644 src/main/resources/assets/unicopia/textures/entity/bed/sheets/pink.png create mode 100644 src/main/resources/assets/unicopia/textures/entity/bed/sheets/rainbow.png create mode 100644 src/main/resources/assets/unicopia/textures/item/apple_bed_sheets.png create mode 100644 src/main/resources/assets/unicopia/textures/item/barred_bed_sheets.png create mode 100644 src/main/resources/assets/unicopia/textures/item/blue_bed_sheets.png create mode 100644 src/main/resources/assets/unicopia/textures/item/checkered_bed_sheets.png create mode 100644 src/main/resources/assets/unicopia/textures/item/orange_bed_sheets.png create mode 100644 src/main/resources/assets/unicopia/textures/item/pink_bed_sheets.png create mode 100644 src/main/resources/assets/unicopia/textures/item/rainbow_bed_sheets.png create mode 100644 src/main/resources/assets/unicopia/textures/item/red_bed_sheets.png diff --git a/src/main/java/com/minelittlepony/unicopia/block/FancyBedBlock.java b/src/main/java/com/minelittlepony/unicopia/block/FancyBedBlock.java new file mode 100644 index 00000000..1ff86b42 --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/block/FancyBedBlock.java @@ -0,0 +1,121 @@ +package com.minelittlepony.unicopia.block; + +import java.util.Locale; + +import com.minelittlepony.unicopia.item.BedsheetsItem; + +import net.minecraft.block.BedBlock; +import net.minecraft.block.Block; +import net.minecraft.block.BlockState; +import net.minecraft.block.entity.BedBlockEntity; +import net.minecraft.block.entity.BlockEntity; +import net.minecraft.block.entity.BlockEntityType; +import net.minecraft.block.enums.BedPart; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NbtCompound; +import net.minecraft.util.DyeColor; +import net.minecraft.util.StringIdentifiable; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.Direction; +import net.minecraft.world.World; + +public class FancyBedBlock extends BedBlock { + + private final String base; + + public FancyBedBlock(String base, Settings settings) { + super(DyeColor.WHITE, settings); + this.base = base; + } + + @Override + public BlockEntity createBlockEntity(BlockPos pos, BlockState state) { + return new Tile(pos, state); + } + + public static void setBedPattern(World world, BlockPos pos, SheetPattern pattern) { + world.getBlockEntity(pos, UBlockEntities.FANCY_BED).ifPresent(tile -> { + ItemStack stack = BedsheetsItem.forPattern(tile.getPattern()).getDefaultStack(); + if (!stack.isEmpty()) { + Block.dropStack(world, pos, stack); + } + tile.setPattern(pattern); + BlockState state = tile.getCachedState(); + BlockPos other = pos.offset(getDirectionTowardsOtherPart(state.get(PART), state.get(FACING))); + world.getBlockEntity(other, UBlockEntities.FANCY_BED).ifPresent(tile2 -> { + tile2.setPattern(pattern); + }); + }); + } + + private static Direction getDirectionTowardsOtherPart(BedPart part, Direction direction) { + return part == BedPart.FOOT ? direction : direction.getOpposite(); + } + + public static class Tile extends BedBlockEntity { + private SheetPattern pattern = SheetPattern.NONE; + + public Tile(BlockPos pos, BlockState state) { + super(pos, state); + } + + @Override + public BlockEntityType getType() { + return UBlockEntities.FANCY_BED; + } + + @Override + public void readNbt(NbtCompound nbt) { + pattern = SheetPattern.byId(nbt.getString("pattern")); + } + + @Override + protected void writeNbt(NbtCompound nbt) { + nbt.putString("pattern", pattern.asString()); + } + + @Override + public NbtCompound toInitialChunkDataNbt() { + return createNbt(); + } + + public String getBase() { + return ((FancyBedBlock)getCachedState().getBlock()).base; + } + + public void setPattern(SheetPattern pattern) { + this.pattern = pattern; + markDirty(); + } + + public SheetPattern getPattern() { + return pattern; + } + } + + public enum SheetPattern implements StringIdentifiable { + NONE, + APPLE, + BARS, + BLUE, + CHECKER, + ORANGE, + PINK, + RAINBOW; + + @SuppressWarnings("deprecation") + public static final Codec CODEC = StringIdentifiable.createCodec(SheetPattern::values); + + private final String name = name().toLowerCase(Locale.ROOT); + + @Override + public String asString() { + return name; + } + + @SuppressWarnings("deprecation") + public static SheetPattern byId(String id) { + return CODEC.byId(id, NONE); + } + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/block/UBlockEntities.java b/src/main/java/com/minelittlepony/unicopia/block/UBlockEntities.java index 0cee11db..cd929491 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/UBlockEntities.java +++ b/src/main/java/com/minelittlepony/unicopia/block/UBlockEntities.java @@ -10,7 +10,7 @@ import net.minecraft.registry.Registries; public interface UBlockEntities { BlockEntityType WEATHER_VANE = create("weather_vane", BlockEntityType.Builder.create(WeatherVaneBlock.WeatherVane::new, UBlocks.WEATHER_VANE)); - BlockEntityType CLOUD_BED = create("cloud_bed", BlockEntityType.Builder.create(CloudBedBlock.Tile::new, UBlocks.WHITE_CLOUD_BED, UBlocks.ORANGE_CLOUD_BED)); + BlockEntityType FANCY_BED = create("fancy_bed", BlockEntityType.Builder.create(CloudBedBlock.Tile::new, UBlocks.CLOTH_BED, UBlocks.CLOUD_BED)); static BlockEntityType create(String id, Builder builder) { return Registry.register(Registries.BLOCK_ENTITY_TYPE, id, builder.build(null)); diff --git a/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java b/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java index 11a76134..7034bfe6 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java +++ b/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java @@ -30,7 +30,6 @@ import net.minecraft.block.enums.Instrument; import net.minecraft.block.piston.PistonBehavior; import net.minecraft.item.*; import net.minecraft.sound.BlockSoundGroup; -import net.minecraft.util.DyeColor; import net.minecraft.util.Identifier; import net.minecraft.util.math.Direction; import net.minecraft.util.shape.VoxelShapes; @@ -175,8 +174,8 @@ public interface UBlocks { Block CARVED_CLOUD = register("carved_cloud", new OrientedCloudBlock(Settings.copy(CLOUD).hardness(0.4F).requiresTool(), false), ItemGroups.BUILDING_BLOCKS); Block UNSTABLE_CLOUD = register("unstable_cloud", new UnstableCloudBlock(Settings.copy(CLOUD)), ItemGroups.NATURAL); Block CLOUD_PILLAR = register("cloud_pillar", new CloudPillarBlock(Settings.create().mapColor(MapColor.GRAY).hardness(0.5F).resistance(0).sounds(BlockSoundGroup.WOOL)), ItemGroups.NATURAL); - Block WHITE_CLOUD_BED = register("white_cloud_bed", new CloudBedBlock(DyeColor.WHITE, CLOUD.getDefaultState(), Settings.copy(Blocks.WHITE_BED).sounds(BlockSoundGroup.WOOL))); - Block ORANGE_CLOUD_BED = register("orange_cloud_bed", new CloudBedBlock(DyeColor.ORANGE, CLOUD.getDefaultState(), Settings.copy(Blocks.ORANGE_BED).sounds(BlockSoundGroup.WOOL))); + Block CLOTH_BED = register("cloth_bed", new FancyBedBlock("cloth", Settings.copy(Blocks.WHITE_BED).sounds(BlockSoundGroup.WOOL))); + Block CLOUD_BED = register("cloud_bed", new CloudBedBlock("cloud", CLOUD.getDefaultState(), Settings.copy(Blocks.WHITE_BED).sounds(BlockSoundGroup.WOOL))); private static T register(String name, T item) { return register(Unicopia.id(name), item); diff --git a/src/main/java/com/minelittlepony/unicopia/block/cloud/CloudBedBlock.java b/src/main/java/com/minelittlepony/unicopia/block/cloud/CloudBedBlock.java index 4745e66b..401e0e46 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/cloud/CloudBedBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/cloud/CloudBedBlock.java @@ -3,20 +3,14 @@ package com.minelittlepony.unicopia.block.cloud; import org.jetbrains.annotations.Nullable; import com.minelittlepony.unicopia.EquineContext; -import com.minelittlepony.unicopia.block.UBlockEntities; - -import net.minecraft.block.BedBlock; +import com.minelittlepony.unicopia.block.FancyBedBlock; import net.minecraft.block.BlockState; import net.minecraft.block.ShapeContext; -import net.minecraft.block.entity.BedBlockEntity; -import net.minecraft.block.entity.BlockEntity; -import net.minecraft.block.entity.BlockEntityType; import net.minecraft.entity.Entity; import net.minecraft.entity.ai.pathing.NavigationType; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.item.ItemPlacementContext; import net.minecraft.util.ActionResult; -import net.minecraft.util.DyeColor; import net.minecraft.util.Hand; import net.minecraft.util.hit.BlockHitResult; import net.minecraft.util.math.BlockPos; @@ -25,12 +19,12 @@ import net.minecraft.util.shape.VoxelShapes; import net.minecraft.world.BlockView; import net.minecraft.world.World; -public class CloudBedBlock extends BedBlock { +public class CloudBedBlock extends FancyBedBlock { private final BlockState baseState; private final CloudBlock baseBlock; - public CloudBedBlock(DyeColor color, BlockState baseState, Settings settings) { - super(color, settings); + public CloudBedBlock(String base, BlockState baseState, Settings settings) { + super(base, settings); this.baseState = baseState; this.baseBlock = (CloudBlock)baseState.getBlock(); } @@ -83,20 +77,4 @@ public class CloudBedBlock extends BedBlock { public boolean canPathfindThrough(BlockState state, BlockView world, BlockPos pos, NavigationType type) { return true; } - - @Override - public BlockEntity createBlockEntity(BlockPos pos, BlockState state) { - return new Tile(pos, state); - } - - public static class Tile extends BedBlockEntity { - public Tile(BlockPos pos, BlockState state) { - super(pos, state); - } - - @Override - public BlockEntityType getType() { - return UBlockEntities.CLOUD_BED; - } - } } diff --git a/src/main/java/com/minelittlepony/unicopia/client/URenderers.java b/src/main/java/com/minelittlepony/unicopia/client/URenderers.java index 4bf43bca..f0c03424 100644 --- a/src/main/java/com/minelittlepony/unicopia/client/URenderers.java +++ b/src/main/java/com/minelittlepony/unicopia/client/URenderers.java @@ -1,5 +1,7 @@ package com.minelittlepony.unicopia.client; +import java.util.function.Supplier; + import org.jetbrains.annotations.Nullable; import com.minelittlepony.unicopia.Unicopia; @@ -24,7 +26,6 @@ import com.minelittlepony.unicopia.entity.mob.UEntities; import com.minelittlepony.unicopia.item.ChameleonItem; import com.minelittlepony.unicopia.item.EnchantableItem; import com.minelittlepony.unicopia.item.UItems; -import com.minelittlepony.unicopia.item.cloud.CloudBedItem; import com.minelittlepony.unicopia.particle.UParticles; import com.terraformersmc.terraform.boat.api.client.TerraformBoatClientHelper; @@ -35,6 +36,7 @@ import net.fabricmc.fabric.api.client.rendering.v1.*; import net.fabricmc.fabric.api.client.rendering.v1.BuiltinItemRendererRegistry.DynamicItemRenderer; import net.minecraft.block.Block; import net.minecraft.block.BlockState; +import net.minecraft.block.entity.BlockEntity; import net.minecraft.client.MinecraftClient; import net.minecraft.client.color.world.BiomeColors; import net.minecraft.client.color.world.FoliageColors; @@ -92,10 +94,10 @@ public interface URenderers { EntityRendererRegistry.register(UEntities.FRIENDLY_CREEPER, FriendlyCreeperEntityRenderer::new); BlockEntityRendererFactories.register(UBlockEntities.WEATHER_VANE, WeatherVaneBlockEntityRenderer::new); - BlockEntityRendererFactories.register(UBlockEntities.CLOUD_BED, CloudBedBlockEntityRenderer::new); + BlockEntityRendererFactories.register(UBlockEntities.FANCY_BED, CloudBedBlockEntityRenderer::new); register(URenderers::renderJarItem, UItems.FILLED_JAR); - register(URenderers::renderBedItem, UItems.WHITE_CLOUD_BED, UItems.ORANGE_CLOUD_BED); + register(URenderers::renderBedItem, UItems.CLOTH_BED, UItems.CLOUD_BED); PolearmRenderer.register(UItems.WOODEN_POLEARM, UItems.STONE_POLEARM, UItems.IRON_POLEARM, UItems.GOLDEN_POLEARM, UItems.DIAMOND_POLEARM, UItems.NETHERITE_POLEARM); ModelPredicateProviderRegistry.register(UItems.GEMSTONE, new Identifier("affinity"), (stack, world, entity, seed) -> EnchantableItem.isEnchanted(stack) ? EnchantableItem.getSpellKey(stack).getAffinity().getAlignment() : 0); ModelPredicateProviderRegistry.register(UItems.ROCK_CANDY, new Identifier("count"), (stack, world, entity, seed) -> stack.getCount() / (float)stack.getMaxCount()); @@ -122,8 +124,9 @@ public interface URenderers { } } + @SuppressWarnings("unchecked") private static void renderBedItem(ItemStack stack, ModelTransformationMode mode, MatrixStack matrices, VertexConsumerProvider vertices, int light, int overlay) { - MinecraftClient.getInstance().getBlockEntityRenderDispatcher().renderEntity(((CloudBedItem)stack.getItem()).getRenderEntity(), matrices, vertices, light, overlay); + MinecraftClient.getInstance().getBlockEntityRenderDispatcher().renderEntity(((Supplier)stack.getItem()).get(), matrices, vertices, light, overlay); } private static void renderJarItem(ItemStack stack, ModelTransformationMode mode, MatrixStack matrices, VertexConsumerProvider vertices, int light, int overlay) { diff --git a/src/main/java/com/minelittlepony/unicopia/client/render/entity/CloudBedBlockEntityRenderer.java b/src/main/java/com/minelittlepony/unicopia/client/render/entity/CloudBedBlockEntityRenderer.java index 8a7e5ad8..6fdcae7a 100644 --- a/src/main/java/com/minelittlepony/unicopia/client/render/entity/CloudBedBlockEntityRenderer.java +++ b/src/main/java/com/minelittlepony/unicopia/client/render/entity/CloudBedBlockEntityRenderer.java @@ -18,6 +18,7 @@ import net.minecraft.client.model.ModelPartBuilder; import net.minecraft.client.model.ModelPartData; import net.minecraft.client.model.ModelTransform; import net.minecraft.client.model.TexturedModelData; +import net.minecraft.client.render.RenderLayer; import net.minecraft.client.render.VertexConsumerProvider; import net.minecraft.client.render.block.entity.BlockEntityRenderer; import net.minecraft.client.render.block.entity.BlockEntityRendererFactory; @@ -64,10 +65,18 @@ public class CloudBedBlockEntityRenderer implements BlockEntityRenderer ITEMS = new HashMap<>(); + + private final CloudBedBlock.SheetPattern pattern; + + public static Item forPattern(CloudBedBlock.SheetPattern pattern) { + return ITEMS.getOrDefault(pattern, Items.AIR); + } + + public BedsheetsItem(CloudBedBlock.SheetPattern pattern, Settings settings) { + super(settings); + this.pattern = pattern; + ITEMS.put(pattern, this); + } + + @Override + public ActionResult useOnBlock(ItemUsageContext context) { + World world = context.getWorld(); + BlockPos pos = context.getBlockPos(); + BlockState state = world.getBlockState(pos); + + if (state.getBlock() instanceof FancyBedBlock) { + FancyBedBlock.setBedPattern(world, context.getBlockPos(), pattern); + context.getStack().decrement(1); + PlayerEntity player = context.getPlayer(); + world.playSound(player, pos, SoundEvents.ITEM_ARMOR_EQUIP_GENERIC, SoundCategory.BLOCKS, 1, 1); + + return ActionResult.success(world.isClient); + } + + return ActionResult.PASS; + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/item/FancyBedItem.java b/src/main/java/com/minelittlepony/unicopia/item/FancyBedItem.java new file mode 100644 index 00000000..4dd2b6a8 --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/item/FancyBedItem.java @@ -0,0 +1,26 @@ +package com.minelittlepony.unicopia.item; + +import java.util.function.Supplier; + +import com.google.common.base.Suppliers; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockEntityProvider; +import net.minecraft.block.entity.BlockEntity; +import net.minecraft.item.BedItem; +import net.minecraft.util.math.BlockPos; + +public class FancyBedItem extends BedItem implements Supplier { + + private final Supplier renderEntity; + + public FancyBedItem(Block block, Settings settings) { + super(block, settings); + this.renderEntity = Suppliers.memoize(() -> ((BlockEntityProvider)block).createBlockEntity(BlockPos.ORIGIN, block.getDefaultState())); + } + + @Override + public BlockEntity get() { + return renderEntity.get(); + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/item/UItems.java b/src/main/java/com/minelittlepony/unicopia/item/UItems.java index 43d54c1d..35caa19d 100644 --- a/src/main/java/com/minelittlepony/unicopia/item/UItems.java +++ b/src/main/java/com/minelittlepony/unicopia/item/UItems.java @@ -4,6 +4,7 @@ import com.google.common.collect.ImmutableMultimap; import com.minelittlepony.unicopia.*; import com.minelittlepony.unicopia.block.UBlocks; import com.minelittlepony.unicopia.block.UWoodTypes; +import com.minelittlepony.unicopia.block.cloud.CloudBedBlock; import com.minelittlepony.unicopia.entity.mob.AirBalloonEntity; import com.minelittlepony.unicopia.entity.mob.UEntities; import com.minelittlepony.unicopia.item.cloud.CloudBedItem; @@ -160,6 +161,14 @@ public interface UItems { Item GIANT_BALLOON = register("giant_balloon", new HotAirBalloonItem(new Item.Settings().maxCount(1)), ItemGroups.TOOLS); + Item APPLE_BED_SHEETS = register("apple_bed_sheets", new BedsheetsItem(CloudBedBlock.SheetPattern.APPLE, new Item.Settings().maxCount(1)), ItemGroups.FUNCTIONAL); + Item BARRED_BED_SHEETS = register("barred_bed_sheets", new BedsheetsItem(CloudBedBlock.SheetPattern.BARS, new Item.Settings().maxCount(1)), ItemGroups.FUNCTIONAL); + Item BLUE_BED_SHEETS = register("blue_bed_sheets", new BedsheetsItem(CloudBedBlock.SheetPattern.BLUE, new Item.Settings().maxCount(1)), ItemGroups.FUNCTIONAL); + Item CHECKERED_BED_SHEETS = register("checkered_bed_sheets", new BedsheetsItem(CloudBedBlock.SheetPattern.CHECKER, new Item.Settings().maxCount(1)), ItemGroups.FUNCTIONAL); + Item ORANGE_BED_SHEETS = register("orange_bed_sheets", new BedsheetsItem(CloudBedBlock.SheetPattern.ORANGE, new Item.Settings().maxCount(1)), ItemGroups.FUNCTIONAL); + Item PINK_BED_SHEETS = register("pink_bed_sheets", new BedsheetsItem(CloudBedBlock.SheetPattern.PINK, new Item.Settings().maxCount(1)), ItemGroups.FUNCTIONAL); + Item RAINBOW_BED_SHEETS = register("rainbow_bed_sheets", new BedsheetsItem(CloudBedBlock.SheetPattern.RAINBOW, new Item.Settings().maxCount(1)), ItemGroups.FUNCTIONAL); + AmuletItem PEGASUS_AMULET = register("pegasus_amulet", new PegasusAmuletItem(new FabricItemSettings() .maxCount(1) .maxDamage(890) @@ -177,10 +186,9 @@ public interface UItems { GlassesItem SUNGLASSES = register("sunglasses", new GlassesItem(new FabricItemSettings().maxCount(1)), ItemGroups.COMBAT); GlassesItem BROKEN_SUNGLASSES = register("broken_sunglasses", new GlassesItem(new FabricItemSettings().maxCount(1)), ItemGroups.COMBAT); - Item CARAPACE = register("carapace", new Item(new Item.Settings()), ItemGroups.INGREDIENTS); - Item WHITE_CLOUD_BED = register("white_cloud_bed", new CloudBedItem(UBlocks.WHITE_CLOUD_BED, new Item.Settings().maxCount(1)), ItemGroups.FUNCTIONAL); - Item ORANGE_CLOUD_BED = register("orange_cloud_bed", new CloudBedItem(UBlocks.ORANGE_CLOUD_BED, new Item.Settings().maxCount(1)), ItemGroups.FUNCTIONAL); + Item CLOTH_BED = register("cloth_bed", new FancyBedItem(UBlocks.CLOTH_BED, new Item.Settings().maxCount(1)), ItemGroups.FUNCTIONAL); + Item CLOUD_BED = register("cloud_bed", new CloudBedItem(UBlocks.CLOUD_BED, new Item.Settings().maxCount(1)), ItemGroups.FUNCTIONAL); Item ALICORN_BADGE = register(Race.ALICORN); Item PEGASUS_BADGE = register(Race.PEGASUS); diff --git a/src/main/java/com/minelittlepony/unicopia/item/cloud/CloudBedItem.java b/src/main/java/com/minelittlepony/unicopia/item/cloud/CloudBedItem.java index 70ddf324..50602d41 100644 --- a/src/main/java/com/minelittlepony/unicopia/item/cloud/CloudBedItem.java +++ b/src/main/java/com/minelittlepony/unicopia/item/cloud/CloudBedItem.java @@ -11,7 +11,7 @@ import net.minecraft.block.entity.BlockEntity; import net.minecraft.item.ItemPlacementContext; import net.minecraft.util.math.BlockPos; -public class CloudBedItem extends CloudBlockItem { +public class CloudBedItem extends CloudBlockItem implements Supplier { private final Supplier renderEntity; @@ -25,7 +25,8 @@ public class CloudBedItem extends CloudBlockItem { return context.getWorld().setBlockState(context.getBlockPos(), state, Block.NOTIFY_LISTENERS | Block.REDRAW_ON_MAIN_THREAD | Block.FORCE_STATE); } - public BlockEntity getRenderEntity() { + @Override + public BlockEntity get() { return renderEntity.get(); } } diff --git a/src/main/resources/assets/unicopia/blockstates/cloth_bed.json b/src/main/resources/assets/unicopia/blockstates/cloth_bed.json new file mode 100644 index 00000000..a86c636b --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/cloth_bed.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "unicopia:block/cloth_bed" } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/cloud_bed.json b/src/main/resources/assets/unicopia/blockstates/cloud_bed.json new file mode 100644 index 00000000..691e8653 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/cloud_bed.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "unicopia:block/cloud_bed" } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/orange_cloud_bed.json b/src/main/resources/assets/unicopia/blockstates/orange_cloud_bed.json deleted file mode 100644 index b4fd7a67..00000000 --- a/src/main/resources/assets/unicopia/blockstates/orange_cloud_bed.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "variants": { - "": { "model": "unicopia:block/orange_cloud_bed" } - } -} diff --git a/src/main/resources/assets/unicopia/blockstates/white_cloud_bed.json b/src/main/resources/assets/unicopia/blockstates/white_cloud_bed.json deleted file mode 100644 index 8f42f596..00000000 --- a/src/main/resources/assets/unicopia/blockstates/white_cloud_bed.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "variants": { - "": { "model": "unicopia:block/white_cloud_bed" } - } -} diff --git a/src/main/resources/assets/unicopia/lang/en_us.json b/src/main/resources/assets/unicopia/lang/en_us.json index 412ec9dd..3ad438b6 100644 --- a/src/main/resources/assets/unicopia/lang/en_us.json +++ b/src/main/resources/assets/unicopia/lang/en_us.json @@ -175,6 +175,14 @@ "item.unicopia.music_disc_crusade.desc": "Danial Ingram - crusade", "item.unicopia.music_disc_funk": "Music Disc", "item.unicopia.music_disc_funk.desc": "funk, just funk", + + "item.unicopia.apple_bed_sheets": "Apple Patterned Bed Sheets", + "item.unicopia.barred_bed_sheets": "Bar Patterned Bed Sheets", + "item.unicopia.blue_bed_sheets": "Blue Bed Sheets", + "item.unicopia.checkered_bed_sheets": "Checker Patterned Bed Sheets", + "item.unicopia.orange_bed_sheets": "Orange Bed Sheets", + "item.unicopia.pink_bed_sheets": "Pink Bed Sheets", + "item.unicopia.rainbow_bed_sheets": "Rainbow Patterned Bed Sheets", "block.unicopia.rocks": "Rocks", "block.unicopia.bananas": "Bananas", @@ -253,6 +261,7 @@ "block.unicopia.dense_cloud_slab": "Dense Cloud Slab", "block.unicopia.dense_cloud_stairs": "Dense Cloud Stairs", "block.unicopia.cloud_pillar": "Cloud Pillar", + "block.unicopia.cloth_bed": "Fancy Cloth Bed", "block.unicopia.cloud_bed": "Cloud Bed", "block.unicopia.oats": "Oats", diff --git a/src/main/resources/assets/unicopia/models/block/cloth_bed.json b/src/main/resources/assets/unicopia/models/block/cloth_bed.json new file mode 100644 index 00000000..d389fff5 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/cloth_bed.json @@ -0,0 +1,5 @@ +{ + "textures": { + "particle": "minecraft:block/white_wool" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/orange_cloud_bed.json b/src/main/resources/assets/unicopia/models/block/cloud_bed.json similarity index 100% rename from src/main/resources/assets/unicopia/models/block/orange_cloud_bed.json rename to src/main/resources/assets/unicopia/models/block/cloud_bed.json diff --git a/src/main/resources/assets/unicopia/models/block/white_cloud_bed.json b/src/main/resources/assets/unicopia/models/block/white_cloud_bed.json deleted file mode 100644 index e30e3f72..00000000 --- a/src/main/resources/assets/unicopia/models/block/white_cloud_bed.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "textures": { - "particle": "unicopia:block/cloud" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/apple_bed_sheets.json b/src/main/resources/assets/unicopia/models/item/apple_bed_sheets.json new file mode 100644 index 00000000..bc1ac46a --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/apple_bed_sheets.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/apple_bed_sheets" + } +} diff --git a/src/main/resources/assets/unicopia/models/item/barred_bed_sheets.json b/src/main/resources/assets/unicopia/models/item/barred_bed_sheets.json new file mode 100644 index 00000000..259f1242 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/barred_bed_sheets.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/barred_bed_sheets" + } +} diff --git a/src/main/resources/assets/unicopia/models/item/blue_bed_sheets.json b/src/main/resources/assets/unicopia/models/item/blue_bed_sheets.json new file mode 100644 index 00000000..bebc30f4 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/blue_bed_sheets.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/blue_bed_sheets" + } +} diff --git a/src/main/resources/assets/unicopia/models/item/checkered_bed_sheets.json b/src/main/resources/assets/unicopia/models/item/checkered_bed_sheets.json new file mode 100644 index 00000000..caa3851c --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/checkered_bed_sheets.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/checkered_bed_sheets" + } +} diff --git a/src/main/resources/assets/unicopia/models/item/white_cloud_bed.json b/src/main/resources/assets/unicopia/models/item/cloth_bed.json similarity index 100% rename from src/main/resources/assets/unicopia/models/item/white_cloud_bed.json rename to src/main/resources/assets/unicopia/models/item/cloth_bed.json diff --git a/src/main/resources/assets/unicopia/models/item/orange_cloud_bed.json b/src/main/resources/assets/unicopia/models/item/cloud_bed.json similarity index 59% rename from src/main/resources/assets/unicopia/models/item/orange_cloud_bed.json rename to src/main/resources/assets/unicopia/models/item/cloud_bed.json index 45ffff33..5d06b91c 100644 --- a/src/main/resources/assets/unicopia/models/item/orange_cloud_bed.json +++ b/src/main/resources/assets/unicopia/models/item/cloud_bed.json @@ -1,6 +1,6 @@ { "parent": "minecraft:item/template_bed", "textures": { - "particle": "minecraft:item/orange_wool" + "particle": "minecraft:item/white_wool" } } diff --git a/src/main/resources/assets/unicopia/models/item/orange_bed_sheets.json b/src/main/resources/assets/unicopia/models/item/orange_bed_sheets.json new file mode 100644 index 00000000..3744c6d5 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/orange_bed_sheets.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/orange_bed_sheets" + } +} diff --git a/src/main/resources/assets/unicopia/models/item/pink_bed_sheets.json b/src/main/resources/assets/unicopia/models/item/pink_bed_sheets.json new file mode 100644 index 00000000..e5a20bc3 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/pink_bed_sheets.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/pink_bed_sheets" + } +} diff --git a/src/main/resources/assets/unicopia/models/item/rainbow_bed_sheets.json b/src/main/resources/assets/unicopia/models/item/rainbow_bed_sheets.json new file mode 100644 index 00000000..2cea2b40 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/rainbow_bed_sheets.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/rainbow_bed_sheets" + } +} diff --git a/src/main/resources/assets/unicopia/models/item/red_bed_sheets.json b/src/main/resources/assets/unicopia/models/item/red_bed_sheets.json new file mode 100644 index 00000000..bc1ac46a --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/red_bed_sheets.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/apple_bed_sheets" + } +} diff --git a/src/main/resources/assets/unicopia/textures/entity/bed/cloth.png b/src/main/resources/assets/unicopia/textures/entity/bed/cloth.png new file mode 100644 index 0000000000000000000000000000000000000000..7f562d9e235299833f7ebf703f339a366940df2c GIT binary patch literal 6585 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/textures/entity/cloud_bed/white.png b/src/main/resources/assets/unicopia/textures/entity/bed/cloud.png similarity index 100% rename from src/main/resources/assets/unicopia/textures/entity/cloud_bed/white.png rename to src/main/resources/assets/unicopia/textures/entity/bed/cloud.png diff --git a/src/main/resources/assets/unicopia/textures/entity/bed/sheets/apple.png b/src/main/resources/assets/unicopia/textures/entity/bed/sheets/apple.png new file mode 100644 index 0000000000000000000000000000000000000000..b04c408b66408a232a31e3b55a05f5e1a4a97e35 GIT binary patch literal 5986 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 Dfcn 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/textures/entity/bed/sheets/checker.png b/src/main/resources/assets/unicopia/textures/entity/bed/sheets/checker.png new file mode 100644 index 0000000000000000000000000000000000000000..db0a9f600956af4a20b3f2e2c74336cd966a4bee GIT binary patch literal 6123 zcmeHKdpwkB`=4P*l0zkwYGx>fXU^x)#)w%4$th7iGxH2n=3r(pc+-+rq)4p}tb}Tp zlI*r^g_3Nd68*Gq+Ppi|mdxPLSsWS_oR2PkZ;=-1fnqOk z7QI>G;Ss>|@W3jRa*9D^!PHJyW_eC_&$9#{vwcFPvHdfDP;W=Wk- zlAUZEpU#L4T25~sjfxCm$zwxWf^XC~Y=l|IAY$ydz1Y04b9k;%?(#;%<|^~jV7o@{ zzLDv3-=HrN^L!TkYG}>wU7l)u>FK7i`a#*1^Y_vVX857LCI0l9Y=TKhU3TTCvpLc; zv3i)IRHvi&kNr>TUjO#>5R`-&j?uUJ723kAj;ekX;ypxp3 ziX^`vVbXdbTZCWYX6&Nj001eXhOruHj7-JRxZ-uV95B`{6Y*G`h|L}PZIxRrZ!=N78S7 z*9ikDKA*#t3*)rr@wl#d?fD#$TqqH7bVC}QEN0QkOo+rJ(;*tdAVC5WnF_HGgo+3R zVuVVAKY-%NRBBizM6^%0)$E@(Wz7jVbK^6jl!Zp0x^RQ326d4gUkfKbm|8X z{z?hRN;u|2tF%xe07YTYg)9b}1~G*!U=58;f!Hht3nI}GItyXbm^2zi2PG16mdTY; z7=%+Ig`*InLKdal&=SsB8o+bKQwXH@D*-XES_~9i@xBsSoaX&TkVJ~CP{Ud_$qY7& z30R;|DNMk|xXn7e5Jag0nW)9o6;GYIHY^7<=T6=l0Ef~I|0`CmM|KYMIoSiOr-1Eb;)0( z0#(4I!c4XpqEM+6h{hBnkbuD^L3D)7q_QYNAtDfdjINT4)d{c?SsDd+1YCji)NzGf zs0-AhkEIi$5p5IzVGx-FQAj~#7KcvZ(CAJivX(I7-|wOb5l|T{3L7F*U=~CZGMEsH zDS|<=iYPR#vut?$!n`B!|KcK*{GT~7;i3ysTNd92)rI(9VILRxppF7+#@9f72IZdk zuHH{@2JHPiKNIQpcOHSoem>-r`29@RXSzO#flm_toL!&k`XmNEN%(Vi{lC#={Qiv* zk%2#Y3E+JY?K}^>wGEBhS7;3uC#iXS z&q;m8^UOI;<}u-CfMOYsyEI7C`S_o=wnj$TTzop195xufe(+{8WvA}~>dprHZ97Gj z)cmi8zg)O%DB$>(;Ig0tpn z=-O#@pnmM!)XLV|r&kWW>FP_oac1>*9qUen9}TJKST~k~IX5yAj|mG4TkA4cAA69y zsIk5tjl;~^W_XodsIpxgpPh2HRlyRaq|EKJMOJp#I0eU<%74>|D5C;vL@U(td8#XC6Icfs`X@}yY-EAy>| z-q&~4*1Fb=S_=(S0#y=uzKyHo4HUlE^>&=y{L;?S=T(O{lFq~2|2W_GDM`}Xa~ zZ1OIImuK&iG;D;!Bo<8<+PA98cFpi4*P_*DBGb+Nt)A^IFR!|RPyfPbX|~0nYxt5y zg_lHnUl`pTxVkaqP0v$np^4{mb7A2VRLZkb;hZV$87` z)%<-IhBmJmG*5HDU*ptwrfsaNsh{(tN|fK9;kMLZ^{bnh?>n1@CX5<%8Lt(iH`Z zQ~4)(J1k=gq}j7l|8+4dE~wT#X7_Vu{NdjhJ}T_de~DgQi069b`e=HM>RPf3 zapg@r?itxF7Ni=KHD?M;`!LPUC_Th7<5_OeuhzRP?yc$I-@7U z=;oc;P;n-{q_p?=KYZ;Nnt>N?%fB@kLs@uvfB(nrim3kUQ8$UI^?fr-2eS|TU{F%% z(6lqV-6A|%_V8AJ@$yq8JKRp$IUmLIXJeS>4O;|Z+~h0NCpPNs8Ed*Qa%Y6x;x%U8Y)ounvFobX zDT6Ni%l#8qFUc{BbdSI@?b2stJIsGw-FnWX>b!E*Z$(`;x%M_UJR=5-97&~OP4qm$ ziTTTmnp>wyP(5hdQ@J?oFTEdrkB>CEiK_Kt8v%vWg<_kZ*#@ZK3cIIRIC zq!d2Jm5M?i1@1|!e2~{@a!{3a`@oO;+U)mtpUS=GRLk8 zBe&V!Fl;z<@MMOwGpp-W-P(?0f&FRctu9p8Gb_gotgLYHm#P`{x9=Yf^{aY76xJ+V zn7S?BD&;BD#o^KqxEogjW*Q9E-smkk({!{8%JM^R+|xeO{Peb6dE3@)DjI}+S_U4_ zCS5`^2)J)BZObw}3PX=%1-l#l)+DQPN*L%j4ZM;&%ZqF?{ngxUN7e=(QF?S?Tc}@q qWjsHdFkU;x9}>D}#p`3QCtW+Y!rlFGQxkZEp?IEt+)DSgY5xYlVE+C9 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/textures/entity/bed/sheets/orange.png b/src/main/resources/assets/unicopia/textures/entity/bed/sheets/orange.png new file mode 100644 index 0000000000000000000000000000000000000000..9bb93f14d2ea3fed2efe2d64339c34d92627e2e0 GIT binary patch literal 5620 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/textures/entity/bed/sheets/rainbow.png b/src/main/resources/assets/unicopia/textures/entity/bed/sheets/rainbow.png new file mode 100644 index 0000000000000000000000000000000000000000..33b0efba6d3aed055008b25ac6a2fdea30c836e8 GIT binary patch literal 5790 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 A6951J literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/textures/item/apple_bed_sheets.png b/src/main/resources/assets/unicopia/textures/item/apple_bed_sheets.png new file mode 100644 index 0000000000000000000000000000000000000000..8e30e71a8a834eb4c1b2065704f473b2d2b6e8fa GIT binary patch literal 7018 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 GV*Uf9(ZE6g literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/textures/item/orange_bed_sheets.png b/src/main/resources/assets/unicopia/textures/item/orange_bed_sheets.png new file mode 100644 index 0000000000000000000000000000000000000000..2ff37969c6be86463cf670ab8b55225792be2460 GIT binary patch literal 6885 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 Q6<^KCHk(LAR=!dH0aJ~w_5c6? literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/textures/item/pink_bed_sheets.png b/src/main/resources/assets/unicopia/textures/item/pink_bed_sheets.png new file mode 100644 index 0000000000000000000000000000000000000000..9fb49484c11f1e0cff58b4724b16028da476bbb7 GIT binary patch literal 6892 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/textures/item/red_bed_sheets.png b/src/main/resources/assets/unicopia/textures/item/red_bed_sheets.png new file mode 100644 index 0000000000000000000000000000000000000000..000f493a757df53e00b96b5ecbee262dcad6cd76 GIT binary patch literal 6879 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 LwUu0G;TQcMMX|K$ literal 0 HcmV?d00001