From 1e495cdf1acd1d33ad7f90dacc64590401febfb3 Mon Sep 17 00:00:00 2001 From: HypherionMC Date: Fri, 5 Aug 2022 00:49:26 +0200 Subject: [PATCH] Finish Colored Flames --- .../particles/ParticleRegistryHandler.java | 5 +- .../common/blocks/AdvancedTorchBlock.java | 10 ++- .../common/init/FlameParticles.java | 57 ++++++++++++++++++ .../hyperlighting/common/init/HLBlocks.java | 2 +- .../common/init/HLParticles.java | 6 +- .../assets/hyperlighting/lang/en_us.json | 2 + .../particles/colored_flame.json | 5 -- .../hyperlighting/particles/flame_black.json | 5 ++ .../hyperlighting/particles/flame_blue.json | 5 ++ .../hyperlighting/particles/flame_brown.json | 5 ++ .../hyperlighting/particles/flame_cyan.json | 5 ++ .../hyperlighting/particles/flame_gray.json | 5 ++ .../hyperlighting/particles/flame_green.json | 5 ++ .../particles/flame_light_blue.json | 5 ++ .../particles/flame_light_gray.json | 5 ++ .../hyperlighting/particles/flame_lime.json | 5 ++ .../particles/flame_magenta.json | 5 ++ .../hyperlighting/particles/flame_orange.json | 5 ++ .../hyperlighting/particles/flame_pink.json | 5 ++ .../hyperlighting/particles/flame_purple.json | 5 ++ .../hyperlighting/particles/flame_red.json | 5 ++ .../hyperlighting/particles/flame_white.json | 5 ++ .../hyperlighting/particles/flame_yellow.json | 5 ++ .../particle/flames/colored_flame_red.png | Bin 541 -> 0 bytes .../textures/particle/flames/flame_black.png | Bin 0 -> 592 bytes .../textures/particle/flames/flame_blue.png | Bin 0 -> 584 bytes .../textures/particle/flames/flame_brown.png | Bin 0 -> 592 bytes .../textures/particle/flames/flame_cyan.png | Bin 0 -> 596 bytes .../textures/particle/flames/flame_gray.png | Bin 0 -> 589 bytes .../textures/particle/flames/flame_green.png | Bin 0 -> 592 bytes .../particle/flames/flame_light_blue.png | Bin 0 -> 596 bytes .../particle/flames/flame_light_gray.png | Bin 0 -> 590 bytes .../textures/particle/flames/flame_lime.png | Bin 0 -> 599 bytes .../particle/flames/flame_magenta.png | Bin 0 -> 596 bytes .../textures/particle/flames/flame_orange.png | Bin 0 -> 594 bytes .../textures/particle/flames/flame_pink.png | Bin 0 -> 594 bytes .../textures/particle/flames/flame_purple.png | Bin 0 -> 594 bytes .../textures/particle/flames/flame_white.png | Bin 0 -> 586 bytes .../textures/particle/flames/flame_yellow.png | Bin 0 -> 626 bytes .../hyperlighting/HyperLightingFabric.java | 5 ++ .../client/HyperLightingFabricClient.java | 8 +++ .../hyperlighting/HyperLightingForge.java | 14 +++++ 42 files changed, 178 insertions(+), 16 deletions(-) create mode 100644 Common/src/main/java/me/hypherionmc/hyperlighting/common/init/FlameParticles.java delete mode 100644 Common/src/main/resources/assets/hyperlighting/particles/colored_flame.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_black.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_blue.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_brown.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_cyan.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_gray.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_green.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_light_blue.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_light_gray.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_lime.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_magenta.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_orange.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_pink.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_purple.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_red.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_white.json create mode 100644 Common/src/main/resources/assets/hyperlighting/particles/flame_yellow.json delete mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/colored_flame_red.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_black.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_blue.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_brown.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_cyan.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_gray.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_green.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_light_blue.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_light_gray.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_lime.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_magenta.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_orange.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_pink.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_purple.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_white.png create mode 100644 Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_yellow.png diff --git a/Common/src/main/java/me/hypherionmc/hyperlighting/client/particles/ParticleRegistryHandler.java b/Common/src/main/java/me/hypherionmc/hyperlighting/client/particles/ParticleRegistryHandler.java index 91680f1..0f8198c 100644 --- a/Common/src/main/java/me/hypherionmc/hyperlighting/client/particles/ParticleRegistryHandler.java +++ b/Common/src/main/java/me/hypherionmc/hyperlighting/client/particles/ParticleRegistryHandler.java @@ -1,5 +1,6 @@ package me.hypherionmc.hyperlighting.client.particles; +import me.hypherionmc.hyperlighting.common.init.FlameParticles; import me.hypherionmc.hyperlighting.common.init.HLParticles; import net.minecraft.client.particle.ParticleEngine; import net.minecraft.core.particles.ParticleOptions; @@ -8,7 +9,9 @@ import net.minecraft.core.particles.ParticleType; public class ParticleRegistryHandler { public static void registerParticles(ParticleStrategy strategy) { - strategy.register(HLParticles.COLORED_FLAME.get(), ColoredFlameParticle.Factory::new); + for (FlameParticles value : FlameParticles.values()) { + strategy.register(value.getParticle().get(), ColoredFlameParticle.Factory::new); + } } public interface ParticleStrategy { diff --git a/Common/src/main/java/me/hypherionmc/hyperlighting/common/blocks/AdvancedTorchBlock.java b/Common/src/main/java/me/hypherionmc/hyperlighting/common/blocks/AdvancedTorchBlock.java index fe11ee2..48e8194 100644 --- a/Common/src/main/java/me/hypherionmc/hyperlighting/common/blocks/AdvancedTorchBlock.java +++ b/Common/src/main/java/me/hypherionmc/hyperlighting/common/blocks/AdvancedTorchBlock.java @@ -8,6 +8,7 @@ import me.hypherionmc.craterlib.util.BlockStateUtils; import me.hypherionmc.craterlib.util.RenderUtils; import me.hypherionmc.hyperlighting.api.LightableBlock; import me.hypherionmc.hyperlighting.common.init.CommonRegistration; +import me.hypherionmc.hyperlighting.common.init.FlameParticles; import me.hypherionmc.hyperlighting.common.init.HLItems; import me.hypherionmc.hyperlighting.common.init.HLSounds; import me.hypherionmc.hyperlighting.util.StackUtil; @@ -63,14 +64,11 @@ public class AdvancedTorchBlock extends HorizontalDirectionalBlock implements Dy Direction.UP, Block.box(6.0D, 0.0D, 6.0D, 10.0D, 10.0D, 10.0D) )); - private final Supplier particleType; - private DyeColor color; - public AdvancedTorchBlock(String name, DyeColor color, CreativeModeTab tab, Supplier type) { + public AdvancedTorchBlock(String name, DyeColor color, CreativeModeTab tab) { super(Properties.of(Material.WOOD).noCollission().instabreak().lightLevel(BlockStateUtils.createLightLevelFromLitBlockState(15))); this.registerDefaultState(this.defaultBlockState().setValue(FACING, Direction.NORTH).setValue(LIT, CommonRegistration.config.torchConfig.litByDefault).setValue(COLOR, color)); - this.particleType = type; this.color = color; HLItems.register(name, () -> new BlockItemDyable(this, new Item.Properties().tab(tab))); @@ -191,7 +189,7 @@ public class AdvancedTorchBlock extends HorizontalDirectionalBlock implements Dy double d1 = (double) pos.getY() + 0.7D; double d2 = (double) pos.getZ() + 0.5D; levelIn.addParticle(ParticleTypes.SMOKE, d0, d1, d2, 0.0D, 0.0D, 0.0D); - levelIn.addParticle(particleType.get(), d0, d1, d2, 0D, 0D, 0D); + levelIn.addParticle(FlameParticles.getParticleByColor(color).get(), d0, d1, d2, 0D, 0D, 0D); } else { Direction direction = stateIn.getValue(FACING); double d0 = (double) pos.getX() + 0.5D; @@ -199,7 +197,7 @@ public class AdvancedTorchBlock extends HorizontalDirectionalBlock implements Dy double d2 = (double) pos.getZ() + 0.5D; Direction direction1 = direction.getOpposite(); levelIn.addParticle(ParticleTypes.SMOKE, d0 + 0.37D * (double) direction1.getStepX(), d1 + 0.15D, d2 + 0.37D * (double) direction1.getStepZ(), 0.0D, 0.0D, 0.0D); - levelIn.addParticle(particleType.get(), d0 + 0.37D * (double) direction1.getStepX(), d1 + 0.15D, d2 + 0.37D * (double) direction1.getStepZ(), 0D, 0D, 0D); + levelIn.addParticle(FlameParticles.getParticleByColor(color).get(), d0 + 0.37D * (double) direction1.getStepX(), d1 + 0.15D, d2 + 0.37D * (double) direction1.getStepZ(), 0D, 0D, 0D); } } } diff --git a/Common/src/main/java/me/hypherionmc/hyperlighting/common/init/FlameParticles.java b/Common/src/main/java/me/hypherionmc/hyperlighting/common/init/FlameParticles.java new file mode 100644 index 0000000..a89343d --- /dev/null +++ b/Common/src/main/java/me/hypherionmc/hyperlighting/common/init/FlameParticles.java @@ -0,0 +1,57 @@ +package me.hypherionmc.hyperlighting.common.init; + +import me.hypherionmc.craterlib.common.particles.WrappedSimpleParticleType; +import me.hypherionmc.craterlib.systems.reg.RegistrationProvider; +import me.hypherionmc.craterlib.systems.reg.RegistryObject; +import me.hypherionmc.hyperlighting.Constants; +import net.minecraft.core.Registry; +import net.minecraft.core.particles.ParticleType; +import net.minecraft.core.particles.SimpleParticleType; +import net.minecraft.world.item.DyeColor; +import net.minecraft.world.level.material.MaterialColor; + +import java.util.Arrays; +import java.util.function.Supplier; + +import static me.hypherionmc.hyperlighting.common.init.HLParticles.register; + +/** + * @author HypherionSA + * @date 05/08/2022 + */ +public enum FlameParticles { + WHITE(DyeColor.WHITE), + ORANGE(DyeColor.ORANGE), + MAGENTA(DyeColor.MAGENTA), + LIGHT_BLUE(DyeColor.LIGHT_BLUE), + YELLOW(DyeColor.YELLOW), + LIME(DyeColor.LIME), + PINK(DyeColor.PINK), + GRAY(DyeColor.GRAY), + LIGHT_GRAY(DyeColor.LIGHT_GRAY), + CYAN(DyeColor.CYAN), + PURPLE(DyeColor.PURPLE), + BLUE(DyeColor.BLUE), + BROWN(DyeColor.BROWN), + GREEN(DyeColor.GREEN), + RED(DyeColor.RED), + BLACK(DyeColor.BLACK); + + private final RegistryObject PARTICLE; + private final DyeColor color; + + private FlameParticles(DyeColor color) { + PARTICLE = register("flame_" + color.getName().toLowerCase(), () -> new WrappedSimpleParticleType(false)); + this.color = color; + } + + public RegistryObject getParticle() { + return PARTICLE; + } + + public static RegistryObject getParticleByColor(DyeColor color) { + return Arrays.stream(FlameParticles.values()).filter(p -> p.color == color).findFirst().get().getParticle(); + } + + public static void loadAll() {} +} diff --git a/Common/src/main/java/me/hypherionmc/hyperlighting/common/init/HLBlocks.java b/Common/src/main/java/me/hypherionmc/hyperlighting/common/init/HLBlocks.java index ed81494..a9e4ed9 100644 --- a/Common/src/main/java/me/hypherionmc/hyperlighting/common/init/HLBlocks.java +++ b/Common/src/main/java/me/hypherionmc/hyperlighting/common/init/HLBlocks.java @@ -16,7 +16,7 @@ public class HLBlocks { public static RegistrationProvider BLOCKS = RegistrationProvider.get(Registry.BLOCK_REGISTRY, Constants.MOD_ID); /* Torches */ - public static BlockRegistryObject ADVANCED_TORCH = register("advanced_torch", () -> new AdvancedTorchBlock("advanced_torch", DyeColor.ORANGE, CommonRegistration.LIGHTS_TAB, HLParticles.COLORED_FLAME)); + public static BlockRegistryObject ADVANCED_TORCH = register("advanced_torch", () -> new AdvancedTorchBlock("advanced_torch", DyeColor.ORANGE, CommonRegistration.LIGHTS_TAB)); public static void loadAll() {} diff --git a/Common/src/main/java/me/hypherionmc/hyperlighting/common/init/HLParticles.java b/Common/src/main/java/me/hypherionmc/hyperlighting/common/init/HLParticles.java index a2a7b94..75d821e 100644 --- a/Common/src/main/java/me/hypherionmc/hyperlighting/common/init/HLParticles.java +++ b/Common/src/main/java/me/hypherionmc/hyperlighting/common/init/HLParticles.java @@ -14,12 +14,12 @@ public class HLParticles { public static final RegistrationProvider> PARTICLES = RegistrationProvider.get(Registry.PARTICLE_TYPE_REGISTRY, Constants.MOD_ID); - public static RegistryObject COLORED_FLAME = register("colored_flame", () -> new WrappedSimpleParticleType(false)); - public static > RegistryObject register(String name, Supplier particle) { return PARTICLES.register(name, particle); } - public static void loadAll() {} + public static void loadAll() { + FlameParticles.loadAll(); + } } diff --git a/Common/src/main/resources/assets/hyperlighting/lang/en_us.json b/Common/src/main/resources/assets/hyperlighting/lang/en_us.json index f304140..bf46739 100644 --- a/Common/src/main/resources/assets/hyperlighting/lang/en_us.json +++ b/Common/src/main/resources/assets/hyperlighting/lang/en_us.json @@ -3,6 +3,8 @@ "subtitles.torch_ignite": "Torch Ignite Sound", + "entity.hyperlighting.firefly": "Neon Fly", + "cl.hyperlightingconfig.title": "Hyper Lighting Config", "cl.torchconfig.litbydefault": "Lit when Placed", "cl.torchconfig.requirestool": "Requires Torch Lighter" diff --git a/Common/src/main/resources/assets/hyperlighting/particles/colored_flame.json b/Common/src/main/resources/assets/hyperlighting/particles/colored_flame.json deleted file mode 100644 index 3fecae4..0000000 --- a/Common/src/main/resources/assets/hyperlighting/particles/colored_flame.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "textures": [ - "hyperlighting:flames/colored_flame_red" - ] -} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_black.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_black.json new file mode 100644 index 0000000..b00153e --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_black.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_black" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_blue.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_blue.json new file mode 100644 index 0000000..46af443 --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_blue.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_blue" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_brown.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_brown.json new file mode 100644 index 0000000..1c18377 --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_brown.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_brown" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_cyan.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_cyan.json new file mode 100644 index 0000000..43053a0 --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_cyan.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_cyan" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_gray.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_gray.json new file mode 100644 index 0000000..53025aa --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_gray.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_gray" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_green.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_green.json new file mode 100644 index 0000000..5f5392a --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_green.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_green" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_light_blue.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_light_blue.json new file mode 100644 index 0000000..9c6d868 --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_light_blue.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_light_blue" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_light_gray.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_light_gray.json new file mode 100644 index 0000000..d36fd30 --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_light_gray.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_light_gray" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_lime.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_lime.json new file mode 100644 index 0000000..bd8062d --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_lime.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_lime" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_magenta.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_magenta.json new file mode 100644 index 0000000..e13c003 --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_magenta.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_magenta" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_orange.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_orange.json new file mode 100644 index 0000000..d0ac047 --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_orange.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_orange" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_pink.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_pink.json new file mode 100644 index 0000000..e4ef56f --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_pink.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_pink" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_purple.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_purple.json new file mode 100644 index 0000000..9e2f8d0 --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_purple.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_purple" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_red.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_red.json new file mode 100644 index 0000000..9b88dc3 --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_red.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_red" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_white.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_white.json new file mode 100644 index 0000000..4379c3e --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_white.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_white" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/particles/flame_yellow.json b/Common/src/main/resources/assets/hyperlighting/particles/flame_yellow.json new file mode 100644 index 0000000..66e6d0b --- /dev/null +++ b/Common/src/main/resources/assets/hyperlighting/particles/flame_yellow.json @@ -0,0 +1,5 @@ +{ + "textures": [ + "hyperlighting:flames/flame_yellow" + ] +} diff --git a/Common/src/main/resources/assets/hyperlighting/textures/particle/flames/colored_flame_red.png b/Common/src/main/resources/assets/hyperlighting/textures/particle/flames/colored_flame_red.png deleted file mode 100644 index ab69792eb16d3c091319a9e5dec6c886fbab27c4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 541 zcmV+&0^1VIr*to#AK8jJzMjZa8%{e z%fg4k{f-<^_)6=UGCyn1mib+?lS+<3K=+Jgt2k4|D(B>d`-HpmR!RMxN8coD6lQ0n zcFOF+CCLN{Vq_?>f`vz1YC$rq?Hl;@O;Z$)lE2LwjySU9#M>`wNxB+RP0nXI&L;DT1ES9tSTj%5+QtR?W*RZz_y|O>D^aJHRXa0bz zxXS+*gno1H*riDPR+jB|&_ULYPT#H+)&O9K~@w fVUch-ydDJrC+8T@0w<|H00000NkvXXu0mjfT_osS diff --git a/Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_black.png b/Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_black.png new file mode 100644 index 0000000000000000000000000000000000000000..545d4c92739d12b475b6ea8cd59ba04bd5a29fba GIT binary patch literal 592 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 b#bE#dcQha~hSKo400000NkvXXu0mjf{lNG& literal 0 HcmV?d00001 diff --git a/Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_green.png b/Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_green.png new file mode 100644 index 0000000000000000000000000000000000000000..2f7dfa2904ab3038cdb6f72b3e4467d2406424aa GIT binary patch literal 592 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 literal 0 HcmV?d00001 diff --git a/Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_pink.png b/Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_pink.png new file mode 100644 index 0000000000000000000000000000000000000000..568552e0d6879b3d0861820e1ec29c500cdd7831 GIT binary patch literal 594 zcmV-Y0At;EYL@-UXNFo@uNj5Jbk7YMO#8$Ae2v~?V zz6$?=wt}sKASi-}l|R5&BVoN`0tu4LGJ8MH%(={*0ed*F6-;LU3dOP!2?f2&@fEM@ zjc%L_5MU&snfgL>K1Rp!{eVr?`w7*n^S-vDH-?%XTjx*3Ml3Q1cGc6HZQ*1KYdNDJJTB}jNGgFiG?(QITy;#=AD7f~ZR<*336U(Zdg5w#kicNn>a+>)Pz1q}#N8s6pi|eMA z+=t5@7<|$bM&eI$$h2oN@O}<`ap=E;p4EC*jdji*A+{w?bPETEFedvwYrhpJXcSsC zEo1-y010qNS#tmY3labT3lag+-G2N4004?fL_t(IPh()f0k&pL_z%Lkehx54qxq$dux^xq{&IyiF%5*y~Vktlj7b^*?G08i^smzXd>(gix8z6)S} gMYjAt;EYL@-UXNFo@uNj5Jbk7YMO#8$Ae2v~?V zz6$?=wt}sKASi-}l|R5&BVoN`0tu4LGJ8MH%(={*0ed*F6-;LU3dOP!2?f2&@fEM@ zjc%L_5MU&snfgL>K1Rp!{eVr?`w7*n^S-vDH-?%XTjx*3Ml3Q1cGc6HZQ*1KYdNDJJTB}jNGgFiG?(QITy;#=AD7f~ZR<*336U(Zdg5w#kicNn>a+>)Pz1q}#N8s6pi|eMA z+=t5@7<|$bM&eI$$h2oN@O}<`ap=E;p4EC*jdji*A+{w?bPETEFedvwYrhpJXcSsC zEo1-y010qNS#tmY3labT3lag+-G2N4004?fL_t(IPh()f0Tz2*_z%LkK#V%mMAt;EYL@-UXNFo@uNj5Jbk7YMO#8$Ae2v~?V zz6$?=wt}sKASi-}l|R5&BVoN`0tu4LGJ8MH%(={*0ed*F6-;LU3dOP!2?f2&@fEM@ zjc%L_5MU&snfgL>K1Rp!{eVr?`w7*n^S-vDH-?%XTjx*3Ml3Q1cGc6HZQ*1KYdNDJJTB}jNGgFiG?(QITy;#=AD7f~ZR<*336U(Zdg5w#kicNn>a+>)Pz1q}#N8s6pi|eMA z+=t5@7<|$bM&eI$$h2oN@O}<`ap=E;p4EC*jdji*A+{w?bPETEFedvwYrhpJXcSsC zEo1-y010qNS#tmY3labT3lag+-G2N4004qXL_t(IPh()f0e0@(`5%OF$-~5%2q_>W z&xlLG@#DwAwtxEc39Q83-5sl1ie12h%LVfC@?fcl4qoaq4OXP8T976uqDz?JfFiBlW~ Y0EUAjpuzwipa1{>07*qoM6N<$g71v`g#Z8m literal 0 HcmV?d00001 diff --git a/Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_yellow.png b/Common/src/main/resources/assets/hyperlighting/textures/particle/flames/flame_yellow.png new file mode 100644 index 0000000000000000000000000000000000000000..2513e8589e954354ba2a4f76c0d92116e938cb56 GIT binary patch literal 626 zcmV-&0*(ENP)At;EYL@-UXNFo@uNj5Jbk7YMO#8$Ae2v~?V zz6$?=wt}sKASi-}l|R5&BVoN`0tu4LGJ8MH%(={*0ed*F6-;LU3dOP!2?f2&@fEM@ zjc%L_5MU&snfgL>K1Rp!{eVr?`w7*n^S-vDH-?%XTjx*3Ml3Q1cGc6HZQ*1KYdNDJJTB}jNGgFiG?(QITy;#=AD7f~ZR<*336U(Zdg5w#kicNn>a+>)Pz1q}#N8s6pi|eMA z+=t5@7<|$bM&eI$$h2oN@O}<`ap=E;p4EC*jdji*A+{w?bPETEFedvwYrhpJXcSsC zEo1-y010qNS#tmY3labT3lag+-G2N40062E z{l9;_4FCUQ#yW-pAipv)GBSvZL;McW%*F8P)midmfsyeSR?Q$m07~5^T=6!GF8}}l M07*qoM6N<$g23_#(EtDd literal 0 HcmV?d00001 diff --git a/Fabric/src/main/java/me/hypherionmc/hyperlighting/HyperLightingFabric.java b/Fabric/src/main/java/me/hypherionmc/hyperlighting/HyperLightingFabric.java index 29825b0..a0ab425 100644 --- a/Fabric/src/main/java/me/hypherionmc/hyperlighting/HyperLightingFabric.java +++ b/Fabric/src/main/java/me/hypherionmc/hyperlighting/HyperLightingFabric.java @@ -1,12 +1,17 @@ package me.hypherionmc.hyperlighting; +import me.hypherionmc.hyperlighting.common.entities.NeonFlyEntity; import me.hypherionmc.hyperlighting.common.init.CommonRegistration; +import me.hypherionmc.hyperlighting.common.init.HLEntities; import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.object.builder.v1.entity.FabricDefaultAttributeRegistry; public class HyperLightingFabric implements ModInitializer { @Override public void onInitialize() { CommonRegistration.registerAll(); + + FabricDefaultAttributeRegistry.register(HLEntities.FIREFLY.get(), NeonFlyEntity.prepareAttributes()); } } diff --git a/Fabric/src/main/java/me/hypherionmc/hyperlighting/client/HyperLightingFabricClient.java b/Fabric/src/main/java/me/hypherionmc/hyperlighting/client/HyperLightingFabricClient.java index cf445f9..edb28ea 100644 --- a/Fabric/src/main/java/me/hypherionmc/hyperlighting/client/HyperLightingFabricClient.java +++ b/Fabric/src/main/java/me/hypherionmc/hyperlighting/client/HyperLightingFabricClient.java @@ -1,9 +1,14 @@ package me.hypherionmc.hyperlighting.client; import me.hypherionmc.hyperlighting.client.init.ClientRegistration; +import me.hypherionmc.hyperlighting.client.model.NeonFlyModel; import me.hypherionmc.hyperlighting.client.particles.ParticleRegistryHandler; +import me.hypherionmc.hyperlighting.client.renderer.entity.NeonFlyRenderer; +import me.hypherionmc.hyperlighting.common.init.HLEntities; import net.fabricmc.api.ClientModInitializer; import net.fabricmc.fabric.api.client.particle.v1.ParticleFactoryRegistry; +import net.fabricmc.fabric.api.client.rendering.v1.EntityModelLayerRegistry; +import net.fabricmc.fabric.api.client.rendering.v1.EntityRendererRegistry; import net.minecraft.client.particle.ParticleEngine; import net.minecraft.core.particles.ParticleOptions; import net.minecraft.core.particles.ParticleType; @@ -20,5 +25,8 @@ public class HyperLightingFabricClient implements ClientModInitializer { ParticleFactoryRegistry.getInstance().register(particle, provider::create); } }); + + EntityRendererRegistry.register(HLEntities.FIREFLY.get(), NeonFlyRenderer::new); + EntityModelLayerRegistry.registerModelLayer(NeonFlyModel.LAYER_LOCATION, NeonFlyModel::createBodyLayer); } } diff --git a/Forge/src/main/java/me/hypherionmc/hyperlighting/HyperLightingForge.java b/Forge/src/main/java/me/hypherionmc/hyperlighting/HyperLightingForge.java index 264db15..9d758a0 100644 --- a/Forge/src/main/java/me/hypherionmc/hyperlighting/HyperLightingForge.java +++ b/Forge/src/main/java/me/hypherionmc/hyperlighting/HyperLightingForge.java @@ -2,11 +2,18 @@ package me.hypherionmc.hyperlighting; import me.hypherionmc.craterlib.client.gui.config.CraterConfigScreen; import me.hypherionmc.hyperlighting.client.init.ClientRegistration; +import me.hypherionmc.hyperlighting.client.renderer.entity.NeonFlyRenderer; +import me.hypherionmc.hyperlighting.common.entities.NeonFlyEntity; import me.hypherionmc.hyperlighting.common.init.CommonRegistration; +import me.hypherionmc.hyperlighting.common.init.HLEntities; +import net.minecraft.client.renderer.entity.EntityRenderers; +import net.minecraft.world.entity.SpawnPlacements; +import net.minecraft.world.level.levelgen.Heightmap; import net.minecraftforge.client.ConfigScreenHandler; import net.minecraftforge.fml.ModLoadingContext; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; +import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; @Mod(Constants.MOD_ID) @@ -14,11 +21,18 @@ public class HyperLightingForge { public HyperLightingForge() { FMLJavaModLoadingContext.get().getModEventBus().addListener(this::clientInit); + FMLJavaModLoadingContext.get().getModEventBus().addListener(this::commonInit); CommonRegistration.registerAll(); } public void clientInit(FMLClientSetupEvent event) { new ClientRegistration().registerAll(); ModLoadingContext.get().registerExtensionPoint(ConfigScreenHandler.ConfigScreenFactory.class, () -> new ConfigScreenHandler.ConfigScreenFactory((mc, screen) -> new CraterConfigScreen(CommonRegistration.config, screen))); + + EntityRenderers.register(HLEntities.FIREFLY.get(), NeonFlyRenderer::new); + } + + public void commonInit(FMLCommonSetupEvent event) { + } }