diff --git a/src/main/java/net/Chipperfluff/chipi/ChipiMod.java b/src/main/java/net/Chipperfluff/chipi/ChipiMod.java index bf7d155..3c8c6c2 100644 --- a/src/main/java/net/Chipperfluff/chipi/ChipiMod.java +++ b/src/main/java/net/Chipperfluff/chipi/ChipiMod.java @@ -1,47 +1,41 @@ package net.Chipperfluff.chipi; - +import net.Chipperfluff.chipi.advancement.ModCriteria; +import net.Chipperfluff.chipi.block.ChipperPortalBlock; +import net.Chipperfluff.chipi.block.ModBlocks; +import net.Chipperfluff.chipi.command.ChpCommand; +import net.Chipperfluff.chipi.effect.ChipiBlessingEvents; +import net.Chipperfluff.chipi.effect.ChipiHungerHandler; +import net.Chipperfluff.chipi.effect.ModEffects; +import net.Chipperfluff.chipi.entity.ModEntities; +import net.Chipperfluff.chipi.entity.custom.MepEntity; +import net.Chipperfluff.chipi.item.ModItemGroups; +import net.Chipperfluff.chipi.item.ModItems; +import net.Chipperfluff.chipi.world.gen.ChipiDungeonGenerator; import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.biome.v1.BiomeModifications; +import net.fabricmc.fabric.api.biome.v1.BiomeSelectors; import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback; -import net.fabricmc.fabric.api.event.lifecycle.v1.ServerWorldEvents; import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; -import net.minecraft.server.world.ServerWorld; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerWorldEvents; +import net.fabricmc.fabric.api.object.builder.v1.entity.FabricDefaultAttributeRegistry; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.registry.RegistryKey; +import net.minecraft.registry.RegistryKeys; import net.minecraft.structure.StructurePlacementData; import net.minecraft.structure.StructureTemplate; import net.minecraft.util.Identifier; import net.minecraft.util.math.BlockPos; -import net.minecraft.entity.player.PlayerEntity; import net.minecraft.world.GameRules; -import net.fabricmc.fabric.api.biome.v1.BiomeModifications; -import net.fabricmc.fabric.api.biome.v1.BiomeSelectors; -import net.minecraft.registry.RegistryKey; -import net.minecraft.registry.RegistryKeys; import net.minecraft.world.gen.GenerationStep; -import net.fabricmc.fabric.api.object.builder.v1.entity.FabricDefaultAttributeRegistry; - -import net.Chipperfluff.chipi.effect.ModEffects; -import net.Chipperfluff.chipi.effect.ChipiBlessingEvents; -import net.Chipperfluff.chipi.effect.ChipiHungerHandler; -import net.Chipperfluff.chipi.item.ModItems; -import net.Chipperfluff.chipi.block.ModBlocks; -import net.Chipperfluff.chipi.entity.ModEntities; -import net.Chipperfluff.chipi.item.ModItemGroups; -import net.Chipperfluff.chipi.advancement.ModCriteria; - -import net.Chipperfluff.chipi.world.gen.ChipiDungeonGenerator; -import net.Chipperfluff.chipi.block.ChipperPortalBlock; -import net.Chipperfluff.chipi.command.ChpCommand; -import net.Chipperfluff.chipi.entity.custom.MepEntity; public class ChipiMod implements ModInitializer { public static final String MOD_ID = "chipi"; - private static final Identifier CHIPI_DIM = - new Identifier("chipi", "chipi_dimension"); + private static final Identifier CHIPI_DIM = new Identifier("chipi", "chipi_dimension"); - private static final Identifier SPAWN_STRUCTURE = - new Identifier("chipi", "spawn"); + private static final Identifier SPAWN_STRUCTURE = new Identifier("chipi", "spawn"); @Override public void onInitialize() { @@ -55,82 +49,72 @@ public class ChipiMod implements ModInitializer { ChipiBlessingEvents.register(); ChipiHungerHandler.register(); - FabricDefaultAttributeRegistry.register( - ModEntities.MEP, - MepEntity.createMepAttributes() - ); - + FabricDefaultAttributeRegistry.register(ModEntities.MEP, MepEntity.createMepAttributes()); BiomeModifications.addFeature( BiomeSelectors.foundInOverworld(), GenerationStep.Feature.UNDERGROUND_ORES, RegistryKey.of( - RegistryKeys.PLACED_FEATURE, - new Identifier("chipi", "chipper_ore") - ) - ); + RegistryKeys.PLACED_FEATURE, new Identifier("chipi", "chipper_ore"))); CommandRegistrationCallback.EVENT.register( - (dispatcher, registryAccess, environment) -> - ChpCommand.register(dispatcher) - ); + (dispatcher, registryAccess, environment) -> ChpCommand.register(dispatcher)); - ServerTickEvents.END_WORLD_TICK.register(world -> { - if (!world.getRegistryKey().getValue().equals(CHIPI_DIM)) return; + ServerTickEvents.END_WORLD_TICK.register( + world -> { + if (!world.getRegistryKey().getValue().equals(CHIPI_DIM)) return; - for (PlayerEntity player : world.getPlayers()) { - if (player.getBlockY() >= 50) continue; + for (PlayerEntity player : world.getPlayers()) { + if (player.getBlockY() >= 50) continue; - ChipperPortalBlock.teleportToChipiSpawn(world, player); - } - }); + ChipperPortalBlock.teleportToChipiSpawn(world, player); + } + }); - ServerWorldEvents.LOAD.register((server, world) -> { - if (!world.getRegistryKey().getValue().equals(CHIPI_DIM)) return; + ServerWorldEvents.LOAD.register( + (server, world) -> { + if (!world.getRegistryKey().getValue().equals(CHIPI_DIM)) return; - world.setTimeOfDay(18000); - world.getGameRules() - .get(GameRules.DO_DAYLIGHT_CYCLE) - .set(false, server); + world.setTimeOfDay(18000); + world.getGameRules().get(GameRules.DO_DAYLIGHT_CYCLE).set(false, server); - SpawnPlacedState state = world.getPersistentStateManager() - .getOrCreate( - SpawnPlacedState::fromNbt, - SpawnPlacedState::new, - "chipi_spawn" - ); + SpawnPlacedState state = + world.getPersistentStateManager() + .getOrCreate( + SpawnPlacedState::fromNbt, + SpawnPlacedState::new, + "chipi_spawn"); - if (state.placed) return; + if (state.placed) return; - StructureTemplate spawnTemplate = world - .getStructureTemplateManager() - .getTemplate(SPAWN_STRUCTURE) - .orElse(null); + StructureTemplate spawnTemplate = + world.getStructureTemplateManager() + .getTemplate(SPAWN_STRUCTURE) + .orElse(null); - if (spawnTemplate == null) { - System.err.println("[CHIPI] spawn.nbt not found!"); - return; - } + if (spawnTemplate == null) { + System.err.println("[CHIPI] spawn.nbt not found!"); + return; + } - BlockPos spawnCenter = new BlockPos(0, 80, 0); + BlockPos spawnCenter = new BlockPos(0, 80, 0); - spawnTemplate.place( - world, - spawnCenter, - spawnCenter, - new StructurePlacementData(), - world.getRandom(), - 2 - ); + spawnTemplate.place( + world, + spawnCenter, + spawnCenter, + new StructurePlacementData(), + world.getRandom(), + 2); - world.setSpawnPos(spawnCenter.up(), 0.0f); + world.setSpawnPos(spawnCenter.up(), 0.0f); - ChipiDungeonGenerator.generateInitialLayout(world, spawnCenter); + ChipiDungeonGenerator.generateInitialLayout(world, spawnCenter); - state.placed = true; - state.markDirty(); + state.placed = true; + state.markDirty(); - System.out.println("[CHIPI] Spawn + initial dungeon generated"); - }); + System.out.println("[CHIPI] Spawn + initial dungeon generated"); + }); } } diff --git a/src/main/java/net/Chipperfluff/chipi/advancement/PortalActivatedTrigger.java b/src/main/java/net/Chipperfluff/chipi/advancement/PortalActivatedTrigger.java index d0a12f0..a5ab3aa 100644 --- a/src/main/java/net/Chipperfluff/chipi/advancement/PortalActivatedTrigger.java +++ b/src/main/java/net/Chipperfluff/chipi/advancement/PortalActivatedTrigger.java @@ -1,6 +1,7 @@ package net.Chipperfluff.chipi.advancement; import com.google.gson.JsonObject; + import net.minecraft.advancement.criterion.AbstractCriterion; import net.minecraft.advancement.criterion.AbstractCriterionConditions; import net.minecraft.predicate.entity.AdvancementEntityPredicateDeserializer; @@ -8,11 +9,9 @@ import net.minecraft.predicate.entity.LootContextPredicate; import net.minecraft.server.network.ServerPlayerEntity; import net.minecraft.util.Identifier; -public class PortalActivatedTrigger - extends AbstractCriterion { +public class PortalActivatedTrigger extends AbstractCriterion { - public static final Identifier ID = - new Identifier("chipi", "portal_activated"); + public static final Identifier ID = new Identifier("chipi", "portal_activated"); @Override public Identifier getId() { @@ -20,11 +19,7 @@ public class PortalActivatedTrigger } @Override - public Conditions conditionsFromJson( - JsonObject json, - LootContextPredicate player, - AdvancementEntityPredicateDeserializer deserializer - ) { + public Conditions conditionsFromJson(JsonObject json, LootContextPredicate player, AdvancementEntityPredicateDeserializer deserializer) { return new Conditions(player); } diff --git a/src/main/java/net/Chipperfluff/chipi/advancement/PortalDestroyedTrigger.java b/src/main/java/net/Chipperfluff/chipi/advancement/PortalDestroyedTrigger.java index 019a215..2ca796d 100644 --- a/src/main/java/net/Chipperfluff/chipi/advancement/PortalDestroyedTrigger.java +++ b/src/main/java/net/Chipperfluff/chipi/advancement/PortalDestroyedTrigger.java @@ -1,19 +1,17 @@ package net.Chipperfluff.chipi.advancement; import com.google.gson.JsonObject; + import net.minecraft.advancement.criterion.AbstractCriterion; import net.minecraft.advancement.criterion.AbstractCriterionConditions; import net.minecraft.predicate.entity.AdvancementEntityPredicateDeserializer; import net.minecraft.predicate.entity.LootContextPredicate; import net.minecraft.server.network.ServerPlayerEntity; import net.minecraft.util.Identifier; -import net.minecraft.world.BlockView; -public class PortalDestroyedTrigger - extends AbstractCriterion { +public class PortalDestroyedTrigger extends AbstractCriterion { - public static final Identifier ID = - new Identifier("chipi", "portal_destroyed"); + public static final Identifier ID = new Identifier("chipi", "portal_destroyed"); @Override public Identifier getId() { @@ -21,11 +19,7 @@ public class PortalDestroyedTrigger } @Override - public Conditions conditionsFromJson( - JsonObject json, - LootContextPredicate player, - AdvancementEntityPredicateDeserializer deserializer - ) { + public Conditions conditionsFromJson(JsonObject json, LootContextPredicate player, AdvancementEntityPredicateDeserializer deserializer) { return new Conditions(player); } diff --git a/src/main/java/net/Chipperfluff/chipi/advancement/VoidConsumedFireTrigger.java b/src/main/java/net/Chipperfluff/chipi/advancement/VoidConsumedFireTrigger.java index 55419e3..cf46f80 100644 --- a/src/main/java/net/Chipperfluff/chipi/advancement/VoidConsumedFireTrigger.java +++ b/src/main/java/net/Chipperfluff/chipi/advancement/VoidConsumedFireTrigger.java @@ -1,6 +1,7 @@ package net.Chipperfluff.chipi.advancement; import com.google.gson.JsonObject; + import net.minecraft.advancement.criterion.AbstractCriterion; import net.minecraft.advancement.criterion.AbstractCriterionConditions; import net.minecraft.predicate.entity.AdvancementEntityPredicateDeserializer; @@ -8,11 +9,9 @@ import net.minecraft.predicate.entity.LootContextPredicate; import net.minecraft.server.network.ServerPlayerEntity; import net.minecraft.util.Identifier; -public class VoidConsumedFireTrigger - extends AbstractCriterion { +public class VoidConsumedFireTrigger extends AbstractCriterion { - public static final Identifier ID = - new Identifier("chipi", "void_consumed_fire"); + public static final Identifier ID = new Identifier("chipi", "void_consumed_fire"); @Override public Identifier getId() { @@ -20,11 +19,7 @@ public class VoidConsumedFireTrigger } @Override - protected Conditions conditionsFromJson( - JsonObject json, - LootContextPredicate player, - AdvancementEntityPredicateDeserializer deserializer - ) { + protected Conditions conditionsFromJson(JsonObject json, LootContextPredicate player, AdvancementEntityPredicateDeserializer deserializer) { return new Conditions(player); } diff --git a/src/main/java/net/Chipperfluff/chipi/advancement/VoidConsumedTrigger.java b/src/main/java/net/Chipperfluff/chipi/advancement/VoidConsumedTrigger.java index af8290d..b42cb1d 100644 --- a/src/main/java/net/Chipperfluff/chipi/advancement/VoidConsumedTrigger.java +++ b/src/main/java/net/Chipperfluff/chipi/advancement/VoidConsumedTrigger.java @@ -1,6 +1,7 @@ package net.Chipperfluff.chipi.advancement; import com.google.gson.JsonObject; + import net.minecraft.advancement.criterion.AbstractCriterion; import net.minecraft.advancement.criterion.AbstractCriterionConditions; import net.minecraft.predicate.entity.AdvancementEntityPredicateDeserializer; @@ -8,11 +9,9 @@ import net.minecraft.predicate.entity.LootContextPredicate; import net.minecraft.server.network.ServerPlayerEntity; import net.minecraft.util.Identifier; -public class VoidConsumedTrigger - extends AbstractCriterion { +public class VoidConsumedTrigger extends AbstractCriterion { - public static final Identifier ID = - new Identifier("chipi", "void_consumed"); + public static final Identifier ID = new Identifier("chipi", "void_consumed"); @Override public Identifier getId() { @@ -20,11 +19,7 @@ public class VoidConsumedTrigger } @Override - protected Conditions conditionsFromJson( - JsonObject json, - LootContextPredicate player, - AdvancementEntityPredicateDeserializer deserializer - ) { + protected Conditions conditionsFromJson(JsonObject json, LootContextPredicate player, AdvancementEntityPredicateDeserializer deserializer) { return new Conditions(player); } diff --git a/src/main/java/net/Chipperfluff/chipi/block/ChipperFrameBlock.java b/src/main/java/net/Chipperfluff/chipi/block/ChipperFrameBlock.java index 645555a..a238c6e 100644 --- a/src/main/java/net/Chipperfluff/chipi/block/ChipperFrameBlock.java +++ b/src/main/java/net/Chipperfluff/chipi/block/ChipperFrameBlock.java @@ -1,14 +1,13 @@ package net.Chipperfluff.chipi.block; +import net.Chipperfluff.chipi.advancement.ModCriteria; import net.minecraft.block.BlockState; import net.minecraft.block.PillarBlock; import net.minecraft.entity.LivingEntity; -import net.minecraft.entity.player.PlayerEntity; import net.minecraft.item.ItemStack; import net.minecraft.server.network.ServerPlayerEntity; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; -import net.Chipperfluff.chipi.advancement.ModCriteria; public class ChipperFrameBlock extends PillarBlock { @@ -18,12 +17,7 @@ public class ChipperFrameBlock extends PillarBlock { @Override public void onPlaced( - World world, - BlockPos pos, - BlockState state, - LivingEntity placer, - ItemStack stack - ) { + World world, BlockPos pos, BlockState state, LivingEntity placer, ItemStack stack) { if (!world.isClient) { ChipperPortalShape.tryCreate(world, pos); } @@ -31,19 +25,12 @@ public class ChipperFrameBlock extends PillarBlock { @Override public void onStateReplaced( - BlockState state, - World world, - BlockPos pos, - BlockState newState, - boolean moved - ) { + BlockState state, World world, BlockPos pos, BlockState newState, boolean moved) { if (!world.isClient && state.getBlock() != newState.getBlock()) { ChipperPortalShape.destroyNearby(world, pos); - if (world.getClosestPlayer( - pos.getX(), pos.getY(), pos.getZ(), - 10, false - ) instanceof ServerPlayerEntity serverPlayer) { + if (world.getClosestPlayer(pos.getX(), pos.getY(), pos.getZ(), 10, false) + instanceof ServerPlayerEntity serverPlayer) { ModCriteria.PORTAL_DESTROYED.trigger(serverPlayer); } } diff --git a/src/main/java/net/Chipperfluff/chipi/block/ChipperPortalBlock.java b/src/main/java/net/Chipperfluff/chipi/block/ChipperPortalBlock.java index acc22b3..ed5dc52 100644 --- a/src/main/java/net/Chipperfluff/chipi/block/ChipperPortalBlock.java +++ b/src/main/java/net/Chipperfluff/chipi/block/ChipperPortalBlock.java @@ -1,7 +1,5 @@ package net.Chipperfluff.chipi.block; -import java.util.EnumSet; - import net.minecraft.block.Block; import net.minecraft.block.BlockState; import net.minecraft.block.ShapeContext; @@ -18,6 +16,8 @@ import net.minecraft.util.shape.VoxelShapes; import net.minecraft.world.BlockView; import net.minecraft.world.World; +import java.util.EnumSet; + public class ChipperPortalBlock extends Block { private static final BlockPos DEFAULT_SPAWN = new BlockPos(5, 90, 6); @@ -30,21 +30,12 @@ public class ChipperPortalBlock extends Block { // Walk-through portal @Override public VoxelShape getCollisionShape( - BlockState state, - BlockView world, - BlockPos pos, - ShapeContext context - ) { + BlockState state, BlockView world, BlockPos pos, ShapeContext context) { return VoxelShapes.empty(); } @Override - public void onEntityCollision( - BlockState state, - World world, - BlockPos pos, - Entity entity - ) { + public void onEntityCollision(BlockState state, World world, BlockPos pos, Entity entity) { if (world.isClient) return; if (!(entity instanceof PlayerEntity player)) return; @@ -56,14 +47,8 @@ public class ChipperPortalBlock extends Block { @Override public float calcBlockBreakingDelta( - BlockState state, - PlayerEntity player, - BlockView world, - BlockPos pos - ) { - return player.isCreative() - ? super.calcBlockBreakingDelta(state, player, world, pos) - : 0.0F; + BlockState state, PlayerEntity player, BlockView world, BlockPos pos) { + return player.isCreative() ? super.calcBlockBreakingDelta(state, player, world, pos) : 0.0F; } public static void teleportToChipiSpawn(ServerWorld targetWorld, PlayerEntity player) { @@ -76,8 +61,7 @@ public class ChipperPortalBlock extends Block { spawn.getZ() + 0.5, EnumSet.noneOf(PositionFlag.class), player.getYaw(), - player.getPitch() - ); + player.getPitch()); } public static BlockPos resolveSafeSpawn(ServerWorld targetWorld) { diff --git a/src/main/java/net/Chipperfluff/chipi/block/ChipperPortalShape.java b/src/main/java/net/Chipperfluff/chipi/block/ChipperPortalShape.java index 8e950db..8dfd789 100644 --- a/src/main/java/net/Chipperfluff/chipi/block/ChipperPortalShape.java +++ b/src/main/java/net/Chipperfluff/chipi/block/ChipperPortalShape.java @@ -1,11 +1,11 @@ package net.Chipperfluff.chipi.block; +import net.Chipperfluff.chipi.advancement.ModCriteria; import net.minecraft.block.BlockState; import net.minecraft.server.world.ServerWorld; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.Direction; import net.minecraft.world.World; -import net.Chipperfluff.chipi.advancement.ModCriteria; public class ChipperPortalShape { @@ -22,18 +22,14 @@ public class ChipperPortalShape { public static boolean tryCreate(World world, BlockPos placedPos) { if (!(world instanceof ServerWorld serverWorld)) return false; - for (Direction.Axis axis : new Direction.Axis[]{Direction.Axis.X, Direction.Axis.Z}) { + for (Direction.Axis axis : new Direction.Axis[] {Direction.Axis.X, Direction.Axis.Z}) { ChipperPortalShape shape = new ChipperPortalShape(world, placedPos, axis); if (shape.isValid()) { shape.placePortal(); if (serverWorld.getClosestPlayer( - placedPos.getX(), - placedPos.getY(), - placedPos.getZ(), - 10, - false - ) instanceof net.minecraft.server.network.ServerPlayerEntity serverPlayer) { + placedPos.getX(), placedPos.getY(), placedPos.getZ(), 10, false) + instanceof net.minecraft.server.network.ServerPlayerEntity serverPlayer) { ModCriteria.PORTAL_ACTIVATED.trigger(serverPlayer); } @@ -44,7 +40,6 @@ public class ChipperPortalShape { return false; } - private boolean isValid() { BlockPos base = findBottomLeft(); if (base == null) return false; @@ -79,9 +74,7 @@ public class ChipperPortalShape { } private BlockPos offset(BlockPos pos, int x, int y) { - return axis == Direction.Axis.X - ? pos.add(0, y, x) - : pos.add(x, y, 0); + return axis == Direction.Axis.X ? pos.add(0, y, x) : pos.add(x, y, 0); } private void placePortal() { @@ -91,10 +84,7 @@ public class ChipperPortalShape { for (int x = 1; x <= 2; x++) { for (int y = 1; y <= 3; y++) { world.setBlockState( - offset(base, x, y), - ModBlocks.CHIPPER_PORTAL.getDefaultState(), - 3 - ); + offset(base, x, y), ModBlocks.CHIPPER_PORTAL.getDefaultState(), 3); } } } diff --git a/src/main/java/net/Chipperfluff/chipi/block/ModBlocks.java b/src/main/java/net/Chipperfluff/chipi/block/ModBlocks.java index 4ccbf8c..a9ae7c9 100644 --- a/src/main/java/net/Chipperfluff/chipi/block/ModBlocks.java +++ b/src/main/java/net/Chipperfluff/chipi/block/ModBlocks.java @@ -1,68 +1,57 @@ package net.Chipperfluff.chipi.block; -import net.minecraft.block.Block; +import net.Chipperfluff.chipi.ChipiMod; +import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.minecraft.block.AbstractBlock; +import net.minecraft.block.Block; import net.minecraft.block.Blocks; import net.minecraft.block.MapColor; +import net.minecraft.block.piston.PistonBehavior; import net.minecraft.registry.Registries; import net.minecraft.registry.Registry; import net.minecraft.util.Identifier; -import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; -import net.Chipperfluff.chipi.ChipiMod; -import net.minecraft.block.piston.PistonBehavior; public class ModBlocks { - public static final Block VOID_BLOCK = Registry.register( - Registries.BLOCK, - new Identifier(ChipiMod.MOD_ID, "void_block"), - new VoidBlock( - AbstractBlock.Settings.create() - .strength(-1.0F, 3600000.0F) - .mapColor(MapColor.BLACK) - .dropsNothing() - .pistonBehavior(PistonBehavior.BLOCK) - ) - ); + public static final Block VOID_BLOCK = + Registry.register( + Registries.BLOCK, + new Identifier(ChipiMod.MOD_ID, "void_block"), + new VoidBlock( + AbstractBlock.Settings.create() + .strength(-1.0F, 3600000.0F) + .mapColor(MapColor.BLACK) + .dropsNothing() + .pistonBehavior(PistonBehavior.BLOCK))); - public static final Block CHIPPER_FRAME = Registry.register( - Registries.BLOCK, - new Identifier(ChipiMod.MOD_ID, "chipper_frame"), - new ChipperFrameBlock( - FabricBlockSettings.create() - .strength(3.0f) - .requiresTool() - ) - ); + public static final Block CHIPPER_FRAME = + Registry.register( + Registries.BLOCK, + new Identifier(ChipiMod.MOD_ID, "chipper_frame"), + new ChipperFrameBlock( + FabricBlockSettings.create().strength(3.0f).requiresTool())); - public static final Block CHIPPER_PORTAL = Registry.register( - Registries.BLOCK, - new Identifier(ChipiMod.MOD_ID, "chipper_portal"), - new ChipperPortalBlock( - FabricBlockSettings.create() - .noCollision() - .luminance(3) - .strength(-1.0f) - ) - ); + public static final Block CHIPPER_PORTAL = + Registry.register( + Registries.BLOCK, + new Identifier(ChipiMod.MOD_ID, "chipper_portal"), + new ChipperPortalBlock( + FabricBlockSettings.create() + .noCollision() + .luminance(3) + .strength(-1.0f))); - public static final Block CHIPPER_ORE = Registry.register( - Registries.BLOCK, - new Identifier(ChipiMod.MOD_ID, "chipper_ore"), - new Block(AbstractBlock.Settings - .copy(Blocks.IRON_ORE) - .requiresTool() - ) - ); + public static final Block CHIPPER_ORE = + Registry.register( + Registries.BLOCK, + new Identifier(ChipiMod.MOD_ID, "chipper_ore"), + new Block(AbstractBlock.Settings.copy(Blocks.IRON_ORE).requiresTool())); - public static final Block CHIPPER_ALLOY_BLOCK = Registry.register( - Registries.BLOCK, - new Identifier(ChipiMod.MOD_ID, "chipper_alloy_block"), - new Block(AbstractBlock.Settings - .copy(Blocks.IRON_BLOCK) - .requiresTool() - ) - ); + public static final Block CHIPPER_ALLOY_BLOCK = + Registry.register( + Registries.BLOCK, + new Identifier(ChipiMod.MOD_ID, "chipper_alloy_block"), + new Block(AbstractBlock.Settings.copy(Blocks.IRON_BLOCK).requiresTool())); public static void register() {} } diff --git a/src/main/java/net/Chipperfluff/chipi/block/VoidBlock.java b/src/main/java/net/Chipperfluff/chipi/block/VoidBlock.java index 94d217c..fe63281 100644 --- a/src/main/java/net/Chipperfluff/chipi/block/VoidBlock.java +++ b/src/main/java/net/Chipperfluff/chipi/block/VoidBlock.java @@ -1,21 +1,21 @@ package net.Chipperfluff.chipi.block; +import net.Chipperfluff.chipi.advancement.ModCriteria; import net.minecraft.block.Block; import net.minecraft.block.BlockState; import net.minecraft.entity.Entity; import net.minecraft.entity.ItemEntity; import net.minecraft.entity.LivingEntity; -import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.damage.DamageSource; import net.minecraft.entity.damage.DamageType; +import net.minecraft.entity.player.PlayerEntity; import net.minecraft.registry.RegistryKey; import net.minecraft.registry.RegistryKeys; import net.minecraft.registry.entry.RegistryEntry; +import net.minecraft.server.network.ServerPlayerEntity; import net.minecraft.util.Identifier; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; -import net.Chipperfluff.chipi.advancement.ModCriteria; -import net.minecraft.server.network.ServerPlayerEntity; public class VoidBlock extends Block { @@ -41,19 +41,15 @@ public class VoidBlock extends Block { boolean burning = living.isOnFire(); - Identifier damageId = burning - ? new Identifier("chipi", "void_block_fire") - : new Identifier("chipi", "void_block"); + Identifier damageId = + burning + ? new Identifier("chipi", "void_block_fire") + : new Identifier("chipi", "void_block"); - RegistryEntry damageType = world - .getRegistryManager() - .get(RegistryKeys.DAMAGE_TYPE) - .entryOf( - RegistryKey.of( - RegistryKeys.DAMAGE_TYPE, - damageId - ) - ); + RegistryEntry damageType = + world.getRegistryManager() + .get(RegistryKeys.DAMAGE_TYPE) + .entryOf(RegistryKey.of(RegistryKeys.DAMAGE_TYPE, damageId)); DamageSource source = new DamageSource(damageType); @@ -70,22 +66,12 @@ public class VoidBlock extends Block { } @Override - public void onEntityCollision( - BlockState state, - World world, - BlockPos pos, - Entity entity - ) { + public void onEntityCollision(BlockState state, World world, BlockPos pos, Entity entity) { voidKill(world, entity); } @Override - public void onSteppedOn( - World world, - BlockPos pos, - BlockState state, - Entity entity - ) { + public void onSteppedOn(World world, BlockPos pos, BlockState state, Entity entity) { voidKill(world, entity); } } diff --git a/src/main/java/net/Chipperfluff/chipi/client/ChipiClient.java b/src/main/java/net/Chipperfluff/chipi/client/ChipiClient.java index 87a49de..6c8fcb1 100644 --- a/src/main/java/net/Chipperfluff/chipi/client/ChipiClient.java +++ b/src/main/java/net/Chipperfluff/chipi/client/ChipiClient.java @@ -12,9 +12,7 @@ public class ChipiClient implements ClientModInitializer { public void onInitializeClient() { BlockRenderLayerMap.INSTANCE.putBlock( - ModBlocks.CHIPPER_PORTAL, - RenderLayer.getTranslucent() - ); + ModBlocks.CHIPPER_PORTAL, RenderLayer.getTranslucent()); ModEntityRenderers.register(); } diff --git a/src/main/java/net/Chipperfluff/chipi/client/entity/MepRenderer.java b/src/main/java/net/Chipperfluff/chipi/client/entity/MepRenderer.java index a69534f..ffbc6f4 100644 --- a/src/main/java/net/Chipperfluff/chipi/client/entity/MepRenderer.java +++ b/src/main/java/net/Chipperfluff/chipi/client/entity/MepRenderer.java @@ -14,9 +14,7 @@ public class MepRenderer extends BipedEntityRenderer(ctx.getPart(EntityModelLayers.PLAYER)), - 0.5f); + super(ctx, new BipedEntityModel<>(ctx.getPart(EntityModelLayers.PLAYER)), 0.5f); } @Override diff --git a/src/main/java/net/Chipperfluff/chipi/client/entity/ModEntityRenderers.java b/src/main/java/net/Chipperfluff/chipi/client/entity/ModEntityRenderers.java index e71be10..d388b34 100644 --- a/src/main/java/net/Chipperfluff/chipi/client/entity/ModEntityRenderers.java +++ b/src/main/java/net/Chipperfluff/chipi/client/entity/ModEntityRenderers.java @@ -6,9 +6,6 @@ import net.fabricmc.fabric.api.client.rendering.v1.EntityRendererRegistry; public class ModEntityRenderers { public static void register() { - EntityRendererRegistry.register( - ModEntities.MEP, - MepRenderer::new - ); + EntityRendererRegistry.register(ModEntities.MEP, MepRenderer::new); } } diff --git a/src/main/java/net/Chipperfluff/chipi/command/ChpCommand.java b/src/main/java/net/Chipperfluff/chipi/command/ChpCommand.java index cfd2ff6..4b294a6 100644 --- a/src/main/java/net/Chipperfluff/chipi/command/ChpCommand.java +++ b/src/main/java/net/Chipperfluff/chipi/command/ChpCommand.java @@ -6,7 +6,6 @@ import com.mojang.brigadier.arguments.StringArgumentType; import com.mojang.brigadier.context.CommandContext; import net.Chipperfluff.chipi.world.gen.struct.ChipiStructures; - import net.minecraft.command.CommandSource; import net.minecraft.command.argument.BlockPosArgumentType; import net.minecraft.server.command.CommandManager; @@ -20,33 +19,38 @@ public class ChpCommand { public static void register(CommandDispatcher dispatcher) { dispatcher.register( - CommandManager.literal("chp") - .then(CommandManager.argument("name", StringArgumentType.word()) - // autocomplete structure names - .suggests((ctx, builder) -> - CommandSource.suggestMatching( - ChipiStructures.getNames(), - builder - ) - ) - .then(CommandManager.argument("pos", BlockPosArgumentType.blockPos()) - // default: no marker - .executes(ctx -> execute(ctx, false)) - // optional marker flag - .then(CommandManager.argument("marker", BoolArgumentType.bool()) - .executes(ctx -> - execute(ctx, BoolArgumentType.getBool(ctx, "marker")) - ) - ) - ) - ) - ); + CommandManager.literal("chp") + .then( + CommandManager.argument("name", StringArgumentType.word()) + // autocomplete structure names + .suggests( + (ctx, builder) -> + CommandSource.suggestMatching( + ChipiStructures.getNames(), + builder)) + .then( + CommandManager.argument( + "pos", + BlockPosArgumentType.blockPos()) + // default: no marker + .executes(ctx -> execute(ctx, false)) + // optional marker flag + .then( + CommandManager.argument( + "marker", + BoolArgumentType + .bool()) + .executes( + ctx -> + execute( + ctx, + BoolArgumentType + .getBool( + ctx, + "marker"))))))); } - private static int execute( - CommandContext ctx, - boolean marker - ) { + private static int execute(CommandContext ctx, boolean marker) { ServerCommandSource source = ctx.getSource(); ServerWorld world = source.getWorld(); @@ -64,12 +68,12 @@ public class ChpCommand { structure.placeCommand(world, pos, marker); source.sendFeedback( - () -> Text.literal( - "Placed structure '" + name + - (marker ? "' with structure block" : "'") - ), - false - ); + () -> + Text.literal( + "Placed structure '" + + name + + (marker ? "' with structure block" : "'")), + false); return 1; } diff --git a/src/main/java/net/Chipperfluff/chipi/effect/ChipiBlessingEffect.java b/src/main/java/net/Chipperfluff/chipi/effect/ChipiBlessingEffect.java index 875e671..c2b37d6 100644 --- a/src/main/java/net/Chipperfluff/chipi/effect/ChipiBlessingEffect.java +++ b/src/main/java/net/Chipperfluff/chipi/effect/ChipiBlessingEffect.java @@ -3,7 +3,6 @@ package net.Chipperfluff.chipi.effect; import net.minecraft.entity.LivingEntity; import net.minecraft.entity.effect.StatusEffect; import net.minecraft.entity.effect.StatusEffectCategory; -import net.minecraft.entity.player.PlayerEntity; public class ChipiBlessingEffect extends StatusEffect { diff --git a/src/main/java/net/Chipperfluff/chipi/effect/ChipiBlessingEvents.java b/src/main/java/net/Chipperfluff/chipi/effect/ChipiBlessingEvents.java index 485acbe..7ccbd41 100644 --- a/src/main/java/net/Chipperfluff/chipi/effect/ChipiBlessingEvents.java +++ b/src/main/java/net/Chipperfluff/chipi/effect/ChipiBlessingEvents.java @@ -21,7 +21,6 @@ public class ChipiBlessingEvents { } public static boolean cancelFallDamage(ServerPlayerEntity player, DamageSource source) { - return source.isOf(DamageTypes.FALL) - && player.hasStatusEffect(ModEffects.CHIPI_BLESSING); + return source.isOf(DamageTypes.FALL) && player.hasStatusEffect(ModEffects.CHIPI_BLESSING); } } diff --git a/src/main/java/net/Chipperfluff/chipi/effect/ModEffects.java b/src/main/java/net/Chipperfluff/chipi/effect/ModEffects.java index bf7d776..56b5b7f 100644 --- a/src/main/java/net/Chipperfluff/chipi/effect/ModEffects.java +++ b/src/main/java/net/Chipperfluff/chipi/effect/ModEffects.java @@ -1,21 +1,19 @@ package net.Chipperfluff.chipi.effect; +import net.Chipperfluff.chipi.ChipiMod; import net.minecraft.entity.effect.StatusEffect; import net.minecraft.registry.Registries; import net.minecraft.registry.Registry; import net.minecraft.util.Identifier; -import net.Chipperfluff.chipi.ChipiMod; public class ModEffects { - public static final StatusEffect CHIPI_BLESSING = - new ChipiBlessingEffect(); + public static final StatusEffect CHIPI_BLESSING = new ChipiBlessingEffect(); public static void register() { Registry.register( - Registries.STATUS_EFFECT, - new Identifier(ChipiMod.MOD_ID, "chipi_blessing"), - CHIPI_BLESSING - ); + Registries.STATUS_EFFECT, + new Identifier(ChipiMod.MOD_ID, "chipi_blessing"), + CHIPI_BLESSING); } } diff --git a/src/main/java/net/Chipperfluff/chipi/entity/ModEntities.java b/src/main/java/net/Chipperfluff/chipi/entity/ModEntities.java index 45d8f1c..ffdbfd8 100644 --- a/src/main/java/net/Chipperfluff/chipi/entity/ModEntities.java +++ b/src/main/java/net/Chipperfluff/chipi/entity/ModEntities.java @@ -11,14 +11,14 @@ import net.minecraft.util.Identifier; public class ModEntities { - public static final EntityType MEP = Registry.register( - Registries.ENTITY_TYPE, - new Identifier(ChipiMod.MOD_ID, "mep"), - FabricEntityTypeBuilder.createMob() - .entityFactory(MepEntity::new) - .dimensions(EntityDimensions.fixed(0.6f, 1.95f)) - .build() - ); + public static final EntityType MEP = + Registry.register( + Registries.ENTITY_TYPE, + new Identifier(ChipiMod.MOD_ID, "mep"), + FabricEntityTypeBuilder.createMob() + .entityFactory(MepEntity::new) + .dimensions(EntityDimensions.fixed(0.6f, 1.95f)) + .build()); public static void register() { // called from mod init diff --git a/src/main/java/net/Chipperfluff/chipi/entity/custom/MepEntity.java b/src/main/java/net/Chipperfluff/chipi/entity/custom/MepEntity.java index 799be66..91cd1ab 100644 --- a/src/main/java/net/Chipperfluff/chipi/entity/custom/MepEntity.java +++ b/src/main/java/net/Chipperfluff/chipi/entity/custom/MepEntity.java @@ -36,13 +36,15 @@ public class MepEntity extends PathAwareEntity { this.goalSelector.add(4, new LookAtEntityGoal(this, PlayerEntity.class, 8.0F)); this.goalSelector.add(5, new LookAroundGoal(this)); - this.targetSelector.add(1, new ActiveTargetGoal<>( - this, - PlayerEntity.class, - true, - target -> target instanceof PlayerEntity player - && (angryAtPlayer || !isPlayerProtected(player)) - )); + this.targetSelector.add( + 1, + new ActiveTargetGoal<>( + this, + PlayerEntity.class, + true, + target -> + target instanceof PlayerEntity player + && (angryAtPlayer || !isPlayerProtected(player)))); } public static DefaultAttributeContainer.Builder createMepAttributes() { @@ -88,7 +90,6 @@ public class MepEntity extends PathAwareEntity { return false; } - return state.getBlock() instanceof StairsBlock - || state.getBlock() instanceof SlabBlock; + return state.getBlock() instanceof StairsBlock || state.getBlock() instanceof SlabBlock; } } diff --git a/src/main/java/net/Chipperfluff/chipi/item/ModFoodComponents.java b/src/main/java/net/Chipperfluff/chipi/item/ModFoodComponents.java index 58e84fa..ad5e4ab 100644 --- a/src/main/java/net/Chipperfluff/chipi/item/ModFoodComponents.java +++ b/src/main/java/net/Chipperfluff/chipi/item/ModFoodComponents.java @@ -4,9 +4,6 @@ import net.minecraft.item.FoodComponent; public class ModFoodComponents { - public static final FoodComponent NUT = new FoodComponent.Builder() - .hunger(4) - .saturationModifier(0.3f) - .snack() - .build(); + public static final FoodComponent NUT = + new FoodComponent.Builder().hunger(4).saturationModifier(0.3f).snack().build(); } diff --git a/src/main/java/net/Chipperfluff/chipi/item/ModItemGroups.java b/src/main/java/net/Chipperfluff/chipi/item/ModItemGroups.java index a8d1d2c..92ed95f 100644 --- a/src/main/java/net/Chipperfluff/chipi/item/ModItemGroups.java +++ b/src/main/java/net/Chipperfluff/chipi/item/ModItemGroups.java @@ -1,5 +1,7 @@ package net.Chipperfluff.chipi.item; +import net.Chipperfluff.chipi.ChipiMod; +import net.Chipperfluff.chipi.block.ModBlocks; import net.fabricmc.fabric.api.itemgroup.v1.FabricItemGroup; import net.minecraft.item.ItemGroup; import net.minecraft.item.ItemStack; @@ -7,42 +9,40 @@ import net.minecraft.registry.Registries; import net.minecraft.registry.Registry; import net.minecraft.text.Text; import net.minecraft.util.Identifier; -import net.Chipperfluff.chipi.ChipiMod; -import net.Chipperfluff.chipi.block.ModBlocks; -import net.Chipperfluff.chipi.item.ModItems; public class ModItemGroups { - public static final ItemGroup CHIPI_GROUP = Registry.register( - Registries.ITEM_GROUP, - new Identifier(ChipiMod.MOD_ID, "chipi"), - FabricItemGroup.builder() - .displayName(Text.translatable("itemGroup.chipi.chipi")) - .icon(() -> new ItemStack(ModBlocks.VOID_BLOCK.asItem())) - .entries((context, entries) -> { + public static final ItemGroup CHIPI_GROUP = + Registry.register( + Registries.ITEM_GROUP, + new Identifier(ChipiMod.MOD_ID, "chipi"), + FabricItemGroup.builder() + .displayName(Text.translatable("itemGroup.chipi.chipi")) + .icon(() -> new ItemStack(ModBlocks.VOID_BLOCK.asItem())) + .entries( + (context, entries) -> { - // Blocks - entries.add(ModBlocks.VOID_BLOCK); - entries.add(ModBlocks.CHIPPER_FRAME); - entries.add(ModBlocks.CHIPPER_PORTAL); - entries.add(ModBlocks.CHIPPER_ORE); - entries.add(ModBlocks.CHIPPER_ALLOY_BLOCK); + // Blocks + entries.add(ModBlocks.VOID_BLOCK); + entries.add(ModBlocks.CHIPPER_FRAME); + entries.add(ModBlocks.CHIPPER_PORTAL); + entries.add(ModBlocks.CHIPPER_ORE); + entries.add(ModBlocks.CHIPPER_ALLOY_BLOCK); - // Items - entries.add(ModItems.NUT); - entries.add(ModItems.RAW_CHIPPER_ORE); - entries.add(ModItems.CHIPPER_INGOT); - entries.add(ModItems.CHIPPER_ALLOY); - entries.add(ModItems.MEP_SPAWN_EGG); + // Items + entries.add(ModItems.NUT); + entries.add(ModItems.RAW_CHIPPER_ORE); + entries.add(ModItems.CHIPPER_INGOT); + entries.add(ModItems.CHIPPER_ALLOY); + entries.add(ModItems.MEP_SPAWN_EGG); - // Armor - entries.add(ModItems.CHIPPER_HELMET); - entries.add(ModItems.CHIPPER_CHESTPLATE); - entries.add(ModItems.CHIPPER_LEGGINGS); - entries.add(ModItems.CHIPPER_BOOTS); - }) - .build() - ); + // Armor + entries.add(ModItems.CHIPPER_HELMET); + entries.add(ModItems.CHIPPER_CHESTPLATE); + entries.add(ModItems.CHIPPER_LEGGINGS); + entries.add(ModItems.CHIPPER_BOOTS); + }) + .build()); public static void register() { // force class load diff --git a/src/main/java/net/Chipperfluff/chipi/item/ModItems.java b/src/main/java/net/Chipperfluff/chipi/item/ModItems.java index d7552f9..efd0d04 100644 --- a/src/main/java/net/Chipperfluff/chipi/item/ModItems.java +++ b/src/main/java/net/Chipperfluff/chipi/item/ModItems.java @@ -1,115 +1,118 @@ package net.Chipperfluff.chipi.item; +import net.Chipperfluff.chipi.ChipiMod; +import net.Chipperfluff.chipi.block.ModBlocks; +import net.Chipperfluff.chipi.entity.ModEntities; +import net.Chipperfluff.chipi.item.armor.ChipperArmorMaterial; +import net.fabricmc.fabric.api.item.v1.FabricItemSettings; +import net.minecraft.item.ArmorItem; import net.minecraft.item.BlockItem; import net.minecraft.item.Item; +import net.minecraft.item.SpawnEggItem; import net.minecraft.registry.Registries; import net.minecraft.registry.Registry; import net.minecraft.util.Identifier; -import net.fabricmc.fabric.api.item.v1.FabricItemSettings; -import net.Chipperfluff.chipi.ChipiMod; -import net.Chipperfluff.chipi.block.ModBlocks; -import net.minecraft.item.SpawnEggItem; -import net.Chipperfluff.chipi.entity.ModEntities; -import net.minecraft.item.ArmorItem; -import net.Chipperfluff.chipi.item.armor.ChipperArmorMaterial; - public class ModItems { // ===== BLOCK ITEMS ===== - public static final Item VOID_BLOCK = Registry.register( - Registries.ITEM, - new Identifier(ChipiMod.MOD_ID, "void_block"), - new BlockItem(ModBlocks.VOID_BLOCK, new FabricItemSettings()) - ); + public static final Item VOID_BLOCK = + Registry.register( + Registries.ITEM, + new Identifier(ChipiMod.MOD_ID, "void_block"), + new BlockItem(ModBlocks.VOID_BLOCK, new FabricItemSettings())); - public static final Item CHIPPER_FRAME = Registry.register( - Registries.ITEM, - new Identifier(ChipiMod.MOD_ID, "chipper_frame"), - new BlockItem(ModBlocks.CHIPPER_FRAME, new FabricItemSettings()) - ); + public static final Item CHIPPER_FRAME = + Registry.register( + Registries.ITEM, + new Identifier(ChipiMod.MOD_ID, "chipper_frame"), + new BlockItem(ModBlocks.CHIPPER_FRAME, new FabricItemSettings())); - public static final Item CHIPPER_PORTAL = Registry.register( - Registries.ITEM, - new Identifier(ChipiMod.MOD_ID, "chipper_portal"), - new BlockItem(ModBlocks.CHIPPER_PORTAL, new FabricItemSettings()) - ); + public static final Item CHIPPER_PORTAL = + Registry.register( + Registries.ITEM, + new Identifier(ChipiMod.MOD_ID, "chipper_portal"), + new BlockItem(ModBlocks.CHIPPER_PORTAL, new FabricItemSettings())); - public static final Item CHIPPER_ORE = Registry.register( - Registries.ITEM, - new Identifier(ChipiMod.MOD_ID, "chipper_ore"), - new BlockItem(ModBlocks.CHIPPER_ORE, new FabricItemSettings()) - ); + public static final Item CHIPPER_ORE = + Registry.register( + Registries.ITEM, + new Identifier(ChipiMod.MOD_ID, "chipper_ore"), + new BlockItem(ModBlocks.CHIPPER_ORE, new FabricItemSettings())); - public static final Item CHIPPER_ALLOY_BLOCK = Registry.register( - Registries.ITEM, - new Identifier(ChipiMod.MOD_ID, "chipper_alloy_block"), - new BlockItem(ModBlocks.CHIPPER_ALLOY_BLOCK, new FabricItemSettings()) - ); + public static final Item CHIPPER_ALLOY_BLOCK = + Registry.register( + Registries.ITEM, + new Identifier(ChipiMod.MOD_ID, "chipper_alloy_block"), + new BlockItem(ModBlocks.CHIPPER_ALLOY_BLOCK, new FabricItemSettings())); - public static final Item MEP_SPAWN_EGG = Registry.register( - Registries.ITEM, - new Identifier(ChipiMod.MOD_ID, "mep_spawn_egg"), - new SpawnEggItem( - ModEntities.MEP, - 0x1E3A5F, - 0x6BB6FF, - new Item.Settings() - ) - ); + public static final Item MEP_SPAWN_EGG = + Registry.register( + Registries.ITEM, + new Identifier(ChipiMod.MOD_ID, "mep_spawn_egg"), + new SpawnEggItem(ModEntities.MEP, 0x1E3A5F, 0x6BB6FF, new Item.Settings())); // ===== NORMAL ITEMS ===== - public static final Item NUT = Registry.register( - Registries.ITEM, - new Identifier(ChipiMod.MOD_ID, "nut"), - new Item(new FabricItemSettings() - .food(ModFoodComponents.NUT) - ) - ); + public static final Item NUT = + Registry.register( + Registries.ITEM, + new Identifier(ChipiMod.MOD_ID, "nut"), + new Item(new FabricItemSettings().food(ModFoodComponents.NUT))); - public static final Item RAW_CHIPPER_ORE = Registry.register( - Registries.ITEM, - new Identifier(ChipiMod.MOD_ID, "raw_chipper_ore"), - new Item(new FabricItemSettings()) - ); + public static final Item RAW_CHIPPER_ORE = + Registry.register( + Registries.ITEM, + new Identifier(ChipiMod.MOD_ID, "raw_chipper_ore"), + new Item(new FabricItemSettings())); - public static final Item CHIPPER_INGOT = Registry.register( - Registries.ITEM, - new Identifier(ChipiMod.MOD_ID, "chipper_ingot"), - new Item(new FabricItemSettings()) - ); + public static final Item CHIPPER_INGOT = + Registry.register( + Registries.ITEM, + new Identifier(ChipiMod.MOD_ID, "chipper_ingot"), + new Item(new FabricItemSettings())); - public static final Item CHIPPER_ALLOY = Registry.register( - Registries.ITEM, - new Identifier(ChipiMod.MOD_ID, "chipper_alloy"), - new Item(new FabricItemSettings()) - ); + public static final Item CHIPPER_ALLOY = + Registry.register( + Registries.ITEM, + new Identifier(ChipiMod.MOD_ID, "chipper_alloy"), + new Item(new FabricItemSettings())); - public static final Item CHIPPER_HELMET = Registry.register( - Registries.ITEM, - new Identifier("chipi", "chipper_helmet"), - new ArmorItem(ChipperArmorMaterial.INSTANCE, ArmorItem.Type.HELMET, new Item.Settings()) - ); + public static final Item CHIPPER_HELMET = + Registry.register( + Registries.ITEM, + new Identifier("chipi", "chipper_helmet"), + new ArmorItem( + ChipperArmorMaterial.INSTANCE, + ArmorItem.Type.HELMET, + new Item.Settings())); - public static final Item CHIPPER_CHESTPLATE = Registry.register( - Registries.ITEM, - new Identifier("chipi", "chipper_chestplate"), - new ArmorItem(ChipperArmorMaterial.INSTANCE, ArmorItem.Type.CHESTPLATE, new Item.Settings()) - ); + public static final Item CHIPPER_CHESTPLATE = + Registry.register( + Registries.ITEM, + new Identifier("chipi", "chipper_chestplate"), + new ArmorItem( + ChipperArmorMaterial.INSTANCE, + ArmorItem.Type.CHESTPLATE, + new Item.Settings())); - public static final Item CHIPPER_LEGGINGS = Registry.register( - Registries.ITEM, - new Identifier("chipi", "chipper_leggings"), - new ArmorItem(ChipperArmorMaterial.INSTANCE, ArmorItem.Type.LEGGINGS, new Item.Settings()) - ); - - public static final Item CHIPPER_BOOTS = Registry.register( - Registries.ITEM, - new Identifier("chipi", "chipper_boots"), - new ArmorItem(ChipperArmorMaterial.INSTANCE, ArmorItem.Type.BOOTS, new Item.Settings()) - ); + public static final Item CHIPPER_LEGGINGS = + Registry.register( + Registries.ITEM, + new Identifier("chipi", "chipper_leggings"), + new ArmorItem( + ChipperArmorMaterial.INSTANCE, + ArmorItem.Type.LEGGINGS, + new Item.Settings())); + public static final Item CHIPPER_BOOTS = + Registry.register( + Registries.ITEM, + new Identifier("chipi", "chipper_boots"), + new ArmorItem( + ChipperArmorMaterial.INSTANCE, + ArmorItem.Type.BOOTS, + new Item.Settings())); public static void register() {} } diff --git a/src/main/java/net/Chipperfluff/chipi/item/armor/ChipperArmorMaterial.java b/src/main/java/net/Chipperfluff/chipi/item/armor/ChipperArmorMaterial.java index ed94e5e..3d82850 100644 --- a/src/main/java/net/Chipperfluff/chipi/item/armor/ChipperArmorMaterial.java +++ b/src/main/java/net/Chipperfluff/chipi/item/armor/ChipperArmorMaterial.java @@ -14,15 +14,15 @@ public class ChipperArmorMaterial implements ArmorMaterial { public static final ChipperArmorMaterial INSTANCE = new ChipperArmorMaterial(); - private static final Map PROTECTION = Util.make( - new EnumMap<>(ArmorItem.Type.class), - map -> { - map.put(ArmorItem.Type.HELMET, 2); - map.put(ArmorItem.Type.CHESTPLATE, 5); - map.put(ArmorItem.Type.LEGGINGS, 4); - map.put(ArmorItem.Type.BOOTS, 2); - } - ); + private static final Map PROTECTION = + Util.make( + new EnumMap<>(ArmorItem.Type.class), + map -> { + map.put(ArmorItem.Type.HELMET, 2); + map.put(ArmorItem.Type.CHESTPLATE, 5); + map.put(ArmorItem.Type.LEGGINGS, 4); + map.put(ArmorItem.Type.BOOTS, 2); + }); @Override public int getDurability(ArmorItem.Type type) { diff --git a/src/main/java/net/Chipperfluff/chipi/world/gen/ChipiDungeonGenerator.java b/src/main/java/net/Chipperfluff/chipi/world/gen/ChipiDungeonGenerator.java index 1d30dc4..a68296b 100644 --- a/src/main/java/net/Chipperfluff/chipi/world/gen/ChipiDungeonGenerator.java +++ b/src/main/java/net/Chipperfluff/chipi/world/gen/ChipiDungeonGenerator.java @@ -1,6 +1,5 @@ package net.Chipperfluff.chipi.world.gen; -import net.Chipperfluff.chipi.world.gen.DungeonContext; import net.Chipperfluff.chipi.world.gen.struct.CorridorEWStructure; import net.Chipperfluff.chipi.world.gen.struct.CorridorNSStructure; import net.Chipperfluff.chipi.world.gen.struct.RoomBaseStructure; @@ -23,12 +22,16 @@ public class ChipiDungeonGenerator { // Corridors are 10 long; they should overwrite 1 block into each room (-1 on both ends). private static final int CORRIDOR_LENGTH = 10; - // Center-to-center step so corridors start 1 block inside the north room and end 1 block inside the south room. - private static final int STEP_Z = ROOM_EXTENT_SOUTH + CORRIDOR_LENGTH + ROOM_EXTENT_NORTH - 1; // 25 - private static final int STEP_X = ROOM_EXTENT_EAST + CORRIDOR_LENGTH + ROOM_EXTENT_WEST - 1; // 25 + // Center-to-center step so corridors start 1 block inside the north room and end 1 block inside + // the south room. + private static final int STEP_Z = + ROOM_EXTENT_SOUTH + CORRIDOR_LENGTH + ROOM_EXTENT_NORTH - 1; // 25 + private static final int STEP_X = + ROOM_EXTENT_EAST + CORRIDOR_LENGTH + ROOM_EXTENT_WEST - 1; // 25 - private static final int ROWS_SOUTH = 40; // rows of rooms south of spawn (spawn room itself is already placed) - private static final int COLS_EW = 40; // columns across X (split roughly evenly around center) + private static final int ROWS_SOUTH = + 40; // rows of rooms south of spawn (spawn room itself is already placed) + private static final int COLS_EW = 40; // columns across X (split roughly evenly around center) private ChipiDungeonGenerator() {} @@ -37,7 +40,8 @@ public class ChipiDungeonGenerator { // Spawn is already placed. Fixed anchors (not relative to portal): // first corridor origin, then the first generated room center is south of spawn. BlockPos firstCorridorAnchor = new BlockPos(5, CORRIDOR_Y, 11); - BlockPos firstGeneratedRoomCenter = new BlockPos(5, ROOM_Y, 24); // explicit first floor anchor + BlockPos firstGeneratedRoomCenter = + new BlockPos(5, ROOM_Y, 24); // explicit first floor anchor // First room/corridor use direct instances as requested. RoomBaseStructure firstRoom = WorldMaster.getDefaultRoom(); @@ -48,58 +52,54 @@ public class ChipiDungeonGenerator { // Place the fixed corridor leaving spawn intact. firstCorridor.placeAt(world, firstCorridorAnchor); - + // Column range centered on x=5 for a 40-wide grid (approx. 20 each side). int minCol = -(COLS_EW / 2) + 1; // -19 for 40 cols -> -19..20 inclusive - int maxCol = (COLS_EW / 2); // 20 + int maxCol = (COLS_EW / 2); // 20 // Place rooms strictly southward (Z never decreases), across X in both directions. for (int row = 0; row < ROWS_SOUTH; row++) { for (int col = minCol; col <= maxCol; col++) { - int gridX = col; // grid 0,0 is the first generated room; -X -> negative gridX, +X -> positive gridX + int gridX = + col; // grid 0,0 is the first generated room; -X -> negative gridX, +X -> + // positive gridX int gridY = row; // gridY increases southward only - BlockPos center = new BlockPos( - firstGeneratedRoomCenter.getX() + (col * STEP_X), - ROOM_Y, - firstGeneratedRoomCenter.getZ() + (row * STEP_Z) - ); + BlockPos center = + new BlockPos( + firstGeneratedRoomCenter.getX() + (col * STEP_X), + ROOM_Y, + firstGeneratedRoomCenter.getZ() + (row * STEP_Z)); - RoomBaseStructure room = WorldMaster.resolveRoom( - ctx(gridX, gridY, center, null) - ); + RoomBaseStructure room = WorldMaster.resolveRoom(ctx(gridX, gridY, center, null)); room.placeAt(world, center); - WorldMaster.afterPlaceRoom( - ctx(gridX, gridY, center, room) - ); + WorldMaster.afterPlaceRoom(ctx(gridX, gridY, center, room)); } } - // Connect each room to the next one south with a corridor at fixed Y (no northward connections). + // Connect each room to the next one south with a corridor at fixed Y (no northward + // connections). for (int row = 0; row < ROWS_SOUTH - 1; row++) { for (int col = minCol; col <= maxCol; col++) { int gridX = col; int gridY = row; - BlockPos currentCenter = new BlockPos( - firstGeneratedRoomCenter.getX() + (col * STEP_X), - ROOM_Y, - firstGeneratedRoomCenter.getZ() + (row * STEP_Z) - ); + BlockPos currentCenter = + new BlockPos( + firstGeneratedRoomCenter.getX() + (col * STEP_X), + ROOM_Y, + firstGeneratedRoomCenter.getZ() + (row * STEP_Z)); - BlockPos anchorSouth = new BlockPos( - currentCenter.getX(), - CORRIDOR_Y, - currentCenter.getZ() + ROOM_EXTENT_SOUTH - ); + BlockPos anchorSouth = + new BlockPos( + currentCenter.getX(), + CORRIDOR_Y, + currentCenter.getZ() + ROOM_EXTENT_SOUTH); - CorridorNSStructure corridorNS = WorldMaster.resolveCorridorNS( - ctx(gridX, gridY, anchorSouth, null) - ); + CorridorNSStructure corridorNS = + WorldMaster.resolveCorridorNS(ctx(gridX, gridY, anchorSouth, null)); corridorNS.placeAt(world, anchorSouth); - WorldMaster.afterPlaceCorridorNS( - ctx(gridX, gridY, anchorSouth, corridorNS) - ); + WorldMaster.afterPlaceCorridorNS(ctx(gridX, gridY, anchorSouth, corridorNS)); } } @@ -109,25 +109,22 @@ public class ChipiDungeonGenerator { int gridX = col; int gridY = row; - BlockPos currentCenter = new BlockPos( - firstGeneratedRoomCenter.getX() + (col * STEP_X), - ROOM_Y, - firstGeneratedRoomCenter.getZ() + (row * STEP_Z) - ); + BlockPos currentCenter = + new BlockPos( + firstGeneratedRoomCenter.getX() + (col * STEP_X), + ROOM_Y, + firstGeneratedRoomCenter.getZ() + (row * STEP_Z)); - BlockPos anchorEast = new BlockPos( - currentCenter.getX() + ROOM_EXTENT_EAST, - CORRIDOR_Y, - currentCenter.getZ() - ); + BlockPos anchorEast = + new BlockPos( + currentCenter.getX() + ROOM_EXTENT_EAST, + CORRIDOR_Y, + currentCenter.getZ()); - CorridorEWStructure corridorEW = WorldMaster.resolveCorridorEW( - ctx(gridX, gridY, anchorEast, null) - ); + CorridorEWStructure corridorEW = + WorldMaster.resolveCorridorEW(ctx(gridX, gridY, anchorEast, null)); corridorEW.placeAt(world, anchorEast); - WorldMaster.afterPlaceCorridorEW( - ctx(gridX, gridY, anchorEast, corridorEW) - ); + WorldMaster.afterPlaceCorridorEW(ctx(gridX, gridY, anchorEast, corridorEW)); } } @@ -139,10 +136,18 @@ public class ChipiDungeonGenerator { runInChipi(world, "fill 7 87 15 3 91 16 minecraft:air"); - runInChipi(world, "setblock 4 88 15 minecraft:deepslate_tile_stairs[facing=west,waterlogged=true]"); - runInChipi(world, "setblock 4 88 16 minecraft:deepslate_tile_stairs[facing=west,waterlogged=true]"); - runInChipi(world, "setblock 6 88 15 minecraft:deepslate_tile_stairs[facing=east,waterlogged=true]"); - runInChipi(world, "setblock 6 88 16 minecraft:deepslate_tile_stairs[facing=east,waterlogged=true]"); + runInChipi( + world, + "setblock 4 88 15 minecraft:deepslate_tile_stairs[facing=west,waterlogged=true]"); + runInChipi( + world, + "setblock 4 88 16 minecraft:deepslate_tile_stairs[facing=west,waterlogged=true]"); + runInChipi( + world, + "setblock 6 88 15 minecraft:deepslate_tile_stairs[facing=east,waterlogged=true]"); + runInChipi( + world, + "setblock 6 88 16 minecraft:deepslate_tile_stairs[facing=east,waterlogged=true]"); runInChipi(world, "fill 7 88 15 7 91 16 minecraft:deepslate_tiles"); runInChipi(world, "fill 3 88 16 3 91 15 minecraft:deepslate_tiles"); @@ -156,8 +161,8 @@ public class ChipiDungeonGenerator { runInChipi(world, "fill 5 91 16 5 91 15 minecraft:deepslate_tiles"); } - private static void fillBox(ServerWorld world, int x1, int y1, int z1, - int x2, int y2, int z2, BlockState state) { + private static void fillBox( + ServerWorld world, int x1, int y1, int z1, int x2, int y2, int z2, BlockState state) { int minX = Math.min(x1, x2); int maxX = Math.max(x1, x2); int minY = Math.min(y1, y2); @@ -176,14 +181,14 @@ public class ChipiDungeonGenerator { private static void runInChipi(ServerWorld world, String command) { world.getServer() - .getCommandManager() - .executeWithPrefix( - world.getServer().getCommandSource(), - "execute in chipi:chipi_dimension run " + command - ); + .getCommandManager() + .executeWithPrefix( + world.getServer().getCommandSource(), + "execute in chipi:chipi_dimension run " + command); } - private static DungeonContext ctx(int gridX, int gridY, BlockPos origin, ChipiStructure structure) { + private static DungeonContext ctx( + int gridX, int gridY, BlockPos origin, ChipiStructure structure) { return DungeonContext.of(gridX, gridY, origin, structure); } } diff --git a/src/main/java/net/Chipperfluff/chipi/world/gen/ChipiStructure.java b/src/main/java/net/Chipperfluff/chipi/world/gen/ChipiStructure.java index 55726c5..7e9529c 100644 --- a/src/main/java/net/Chipperfluff/chipi/world/gen/ChipiStructure.java +++ b/src/main/java/net/Chipperfluff/chipi/world/gen/ChipiStructure.java @@ -18,6 +18,7 @@ public abstract class ChipiStructure { /** Offset from STRUCTURE BLOCK → actual structure origin */ protected final int deltaX; + protected final int deltaY; protected final int deltaZ; @@ -30,8 +31,7 @@ public abstract class ChipiStructure { /** REAL size from NBT */ public BlockPos getSize(ServerWorld world) { - Optional opt = - world.getStructureTemplateManager().getTemplate(id); + Optional opt = world.getStructureTemplateManager().getTemplate(id); if (opt.isEmpty()) return BlockPos.ORIGIN; @@ -41,39 +41,27 @@ public abstract class ChipiStructure { /** Pure structure placement */ public void placeAt(ServerWorld world, BlockPos centerPos) { - Optional opt = - world.getStructureTemplateManager().getTemplate(id); + Optional opt = world.getStructureTemplateManager().getTemplate(id); if (opt.isEmpty()) { System.out.println("[CHIPI] Missing structure: " + id); return; } - BlockPos origin = centerPos.add( - new BlockPos(deltaX, deltaY, deltaZ) - ); + BlockPos origin = centerPos.add(new BlockPos(deltaX, deltaY, deltaZ)); StructureTemplate template = opt.get(); - template.place( - world, - origin, - origin, - new StructurePlacementData(), - world.getRandom(), - 2 - ); + template.place(world, origin, origin, new StructurePlacementData(), world.getRandom(), 2); } /** Command placement (structure + optional marker) */ public void placeCommand(ServerWorld world, BlockPos placePos, boolean marker) { - - placeAt(world, placePos); - BlockPos origin = placePos.add( - new BlockPos(deltaX, deltaY, deltaZ) - ); - + placeAt(world, placePos); + + BlockPos origin = placePos.add(new BlockPos(deltaX, deltaY, deltaZ)); + if (!marker) return; world.setBlockState(origin, Blocks.STRUCTURE_BLOCK.getDefaultState(), 3); diff --git a/src/main/java/net/Chipperfluff/chipi/world/gen/DungeonContext.java b/src/main/java/net/Chipperfluff/chipi/world/gen/DungeonContext.java index 9f00603..c42187d 100644 --- a/src/main/java/net/Chipperfluff/chipi/world/gen/DungeonContext.java +++ b/src/main/java/net/Chipperfluff/chipi/world/gen/DungeonContext.java @@ -1,7 +1,6 @@ package net.Chipperfluff.chipi.world.gen; import net.minecraft.util.math.BlockPos; -import net.Chipperfluff.chipi.world.gen.ChipiStructure; public final class DungeonContext { public static final DungeonContext EMPTY = new DungeonContext(); @@ -13,14 +12,16 @@ public final class DungeonContext { private DungeonContext() {} - private DungeonContext(Integer grid_x, Integer grid_y, BlockPos structure_origin, ChipiStructure structure) { + private DungeonContext( + Integer grid_x, Integer grid_y, BlockPos structure_origin, ChipiStructure structure) { this.grid_x = grid_x; this.grid_y = grid_y; this.structure_origin = structure_origin; this.structure = structure; } - public static DungeonContext of(Integer grid_x, Integer grid_y, BlockPos structure_origin, ChipiStructure structure) { + public static DungeonContext of( + Integer grid_x, Integer grid_y, BlockPos structure_origin, ChipiStructure structure) { return new DungeonContext(grid_x, grid_y, structure_origin, structure); } diff --git a/src/main/java/net/Chipperfluff/chipi/world/gen/struct/ChipiStructures.java b/src/main/java/net/Chipperfluff/chipi/world/gen/struct/ChipiStructures.java index dea2d48..6480115 100644 --- a/src/main/java/net/Chipperfluff/chipi/world/gen/struct/ChipiStructures.java +++ b/src/main/java/net/Chipperfluff/chipi/world/gen/struct/ChipiStructures.java @@ -1,6 +1,7 @@ package net.Chipperfluff.chipi.world.gen.struct; import net.Chipperfluff.chipi.world.gen.ChipiStructure; // <-- THIS WAS MISSING + import java.util.HashMap; import java.util.Map; import java.util.Set; @@ -20,7 +21,6 @@ public class ChipiStructures { return REGISTRY.keySet(); } - public static ChipiStructure get(String name) { return REGISTRY.get(name); } diff --git a/src/main/java/net/Chipperfluff/chipi/world/gen/struct/CorridorEWStructure.java b/src/main/java/net/Chipperfluff/chipi/world/gen/struct/CorridorEWStructure.java index 65769e0..c9ae40b 100644 --- a/src/main/java/net/Chipperfluff/chipi/world/gen/struct/CorridorEWStructure.java +++ b/src/main/java/net/Chipperfluff/chipi/world/gen/struct/CorridorEWStructure.java @@ -1,10 +1,7 @@ package net.Chipperfluff.chipi.world.gen.struct; import net.Chipperfluff.chipi.world.gen.ChipiStructure; -import net.minecraft.structure.StructureTemplate; import net.minecraft.util.Identifier; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3i; public class CorridorEWStructure extends ChipiStructure { diff --git a/src/main/java/net/Chipperfluff/chipi/world/gen/struct/CorridorNSStructure.java b/src/main/java/net/Chipperfluff/chipi/world/gen/struct/CorridorNSStructure.java index c9c933b..4e1dd6d 100644 --- a/src/main/java/net/Chipperfluff/chipi/world/gen/struct/CorridorNSStructure.java +++ b/src/main/java/net/Chipperfluff/chipi/world/gen/struct/CorridorNSStructure.java @@ -1,10 +1,7 @@ package net.Chipperfluff.chipi.world.gen.struct; import net.Chipperfluff.chipi.world.gen.ChipiStructure; -import net.minecraft.structure.StructureTemplate; import net.minecraft.util.Identifier; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3i; public class CorridorNSStructure extends ChipiStructure { diff --git a/src/main/java/net/Chipperfluff/chipi/world/gen/struct/RoomBaseStructure.java b/src/main/java/net/Chipperfluff/chipi/world/gen/struct/RoomBaseStructure.java index 9a72277..9c6e0ff 100644 --- a/src/main/java/net/Chipperfluff/chipi/world/gen/struct/RoomBaseStructure.java +++ b/src/main/java/net/Chipperfluff/chipi/world/gen/struct/RoomBaseStructure.java @@ -1,10 +1,7 @@ package net.Chipperfluff.chipi.world.gen.struct; import net.Chipperfluff.chipi.world.gen.ChipiStructure; -import net.minecraft.structure.StructureTemplate; import net.minecraft.util.Identifier; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3i; public class RoomBaseStructure extends ChipiStructure { diff --git a/src/main/java/net/Chipperfluff/chipi/world/gen/struct/SpawnStructure.java b/src/main/java/net/Chipperfluff/chipi/world/gen/struct/SpawnStructure.java index 0650149..fdd116e 100644 --- a/src/main/java/net/Chipperfluff/chipi/world/gen/struct/SpawnStructure.java +++ b/src/main/java/net/Chipperfluff/chipi/world/gen/struct/SpawnStructure.java @@ -1,10 +1,7 @@ package net.Chipperfluff.chipi.world.gen.struct; import net.Chipperfluff.chipi.world.gen.ChipiStructure; -import net.minecraft.structure.StructureTemplate; import net.minecraft.util.Identifier; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3i; public class SpawnStructure extends ChipiStructure {