2020-09-22 15:11:20 +02:00
|
|
|
package com.minelittlepony.unicopia.particle;
|
2020-04-22 16:28:20 +02:00
|
|
|
|
2022-08-27 15:14:00 +02:00
|
|
|
import com.minelittlepony.unicopia.Unicopia;
|
|
|
|
|
2020-04-22 16:28:20 +02:00
|
|
|
import net.fabricmc.fabric.api.particle.v1.FabricParticleTypes;
|
2024-01-31 15:04:29 +01:00
|
|
|
import net.minecraft.particle.BlockStateParticleEffect;
|
2020-04-22 16:28:20 +02:00
|
|
|
import net.minecraft.particle.ParticleType;
|
2024-09-26 22:36:35 +02:00
|
|
|
import net.minecraft.particle.SimpleParticleType;
|
2022-12-18 22:07:24 +01:00
|
|
|
import net.minecraft.registry.Registry;
|
|
|
|
import net.minecraft.registry.Registries;
|
2020-04-22 16:28:20 +02:00
|
|
|
|
|
|
|
public interface UParticles {
|
2024-09-29 23:54:24 +02:00
|
|
|
ParticleType<MagicParticleEffect> UNICORN_MAGIC = register("unicorn_magic", FabricParticleTypes.complex(MagicParticleEffect.CODEC, MagicParticleEffect.PACKET_CODEC));
|
2024-09-26 22:36:35 +02:00
|
|
|
SimpleParticleType CHANGELING_MAGIC = register("changeling_magic", FabricParticleTypes.simple());
|
|
|
|
SimpleParticleType BUBBLE = register("bubble", FabricParticleTypes.simple());
|
2024-09-29 23:54:24 +02:00
|
|
|
ParticleType<FootprintParticleEffect> FOOTPRINT = register("footprint", FabricParticleTypes.complex(FootprintParticleEffect.CODEC, FootprintParticleEffect.PACKET_CODEC));
|
|
|
|
ParticleType<BlockStateParticleEffect> DUST_CLOUD = register("dust_cloud", FabricParticleTypes.complex(BlockStateParticleEffect::createCodec, BlockStateParticleEffect::createPacketCodec));
|
2020-04-22 16:28:20 +02:00
|
|
|
|
2024-09-29 23:54:24 +02:00
|
|
|
ParticleType<OrientedBillboardParticleEffect> RAINBOOM_RING = register("rainboom_ring", FabricParticleTypes.complex(OrientedBillboardParticleEffect::createCodec, OrientedBillboardParticleEffect::createPacketCodec));
|
|
|
|
ParticleType<TargetBoundParticleEffect> RAINBOOM_TRAIL = register("rainboom_trail", FabricParticleTypes.complex(TargetBoundParticleEffect::createCodec, TargetBoundParticleEffect::createPacketCodec));
|
|
|
|
ParticleType<TargetBoundParticleEffect> WIND = register("wind", FabricParticleTypes.complex(TargetBoundParticleEffect::createCodec, TargetBoundParticleEffect::createPacketCodec));
|
2020-10-13 17:44:49 +02:00
|
|
|
|
2024-09-26 22:36:35 +02:00
|
|
|
SimpleParticleType RAIN_DROPS = register("rain_drops", FabricParticleTypes.simple());
|
2020-04-22 16:28:20 +02:00
|
|
|
|
2024-09-29 23:54:24 +02:00
|
|
|
ParticleType<SphereParticleEffect> SPHERE = register("sphere", FabricParticleTypes.complex(true, SphereParticleEffect::createCodec, SphereParticleEffect::createPacketCodec));
|
|
|
|
ParticleType<SphereParticleEffect> DISK = register("disk", FabricParticleTypes.complex(true, SphereParticleEffect::createCodec, SphereParticleEffect::createPacketCodec));
|
2020-04-22 16:28:20 +02:00
|
|
|
|
2024-09-29 23:54:24 +02:00
|
|
|
ParticleType<FollowingParticleEffect> HEALTH_DRAIN = register("health_drain", FabricParticleTypes.complex(true, FollowingParticleEffect::createCodec, FollowingParticleEffect::createPacketCodec));
|
|
|
|
ParticleType<SpiralParticleEffect> SPIRAL = register("spiral", FabricParticleTypes.complex(true, SpiralParticleEffect.CODEC, SpiralParticleEffect.PACKET_CODEC));
|
2021-02-02 11:52:50 +01:00
|
|
|
|
2024-09-26 22:36:35 +02:00
|
|
|
SimpleParticleType GROUND_POUND = register("ground_pound", FabricParticleTypes.simple());
|
|
|
|
SimpleParticleType CLOUDS_ESCAPING = register("clouds_escaping", FabricParticleTypes.simple(true));
|
2021-02-05 20:19:41 +01:00
|
|
|
|
2024-09-29 23:54:24 +02:00
|
|
|
ParticleType<LightningBoltParticleEffect> LIGHTNING_BOLT = register("lightning_bolt", FabricParticleTypes.complex(true, LightningBoltParticleEffect.CODEC, LightningBoltParticleEffect.PACKET_CODEC));
|
2024-09-26 22:36:35 +02:00
|
|
|
SimpleParticleType SHOCKWAVE = register("shockwave", FabricParticleTypes.simple(true));
|
2021-12-28 01:19:26 +01:00
|
|
|
|
2020-04-27 18:09:19 +02:00
|
|
|
static <T extends ParticleType<?>> T register(String name, T type) {
|
2022-12-18 22:07:24 +01:00
|
|
|
return Registry.register(Registries.PARTICLE_TYPE, Unicopia.id(name), type);
|
2020-04-22 16:28:20 +02:00
|
|
|
}
|
2022-08-27 16:37:37 +02:00
|
|
|
|
|
|
|
static void bootstrap() {}
|
2020-04-22 16:28:20 +02:00
|
|
|
}
|