Merge branch 'master' of https://github.com/paulevsGitch/BetterEnd
This commit is contained in:
commit
0f82dbc35f
7 changed files with 102 additions and 3 deletions
|
@ -5,6 +5,7 @@ import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap;
|
|||
import net.minecraft.client.render.RenderLayer;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
import ru.betterend.registry.BlockEntityRenderRegistry;
|
||||
import ru.betterend.registry.ParticleRegistry;
|
||||
import ru.betterend.registry.ScreensRegistry;
|
||||
|
||||
public class BetterEndClient implements ClientModInitializer {
|
||||
|
@ -13,6 +14,7 @@ public class BetterEndClient implements ClientModInitializer {
|
|||
registerRenderLayers();
|
||||
BlockEntityRenderRegistry.register();
|
||||
ScreensRegistry.register();
|
||||
ParticleRegistry.register();
|
||||
}
|
||||
|
||||
private void registerRenderLayers() {
|
||||
|
|
|
@ -23,7 +23,6 @@ import net.minecraft.world.biome.Biome;
|
|||
import net.minecraft.world.biome.Biome.Category;
|
||||
import ru.betterend.registry.BiomeRegistry;
|
||||
import ru.betterend.util.BackgroundInfo;
|
||||
import ru.betterend.util.MHelper;
|
||||
import ru.betterend.world.biome.EndBiome;
|
||||
|
||||
@Mixin(BackgroundRenderer.class)
|
||||
|
|
|
@ -0,0 +1,56 @@
|
|||
package ru.betterend.particle;
|
||||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.minecraft.client.particle.AnimatedParticle;
|
||||
import net.minecraft.client.particle.Particle;
|
||||
import net.minecraft.client.particle.ParticleFactory;
|
||||
import net.minecraft.client.particle.SpriteProvider;
|
||||
import net.minecraft.client.world.ClientWorld;
|
||||
import net.minecraft.particle.DefaultParticleType;
|
||||
import ru.betterend.util.MHelper;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public class AnimatedTestParticle extends AnimatedParticle {
|
||||
private int ticks;
|
||||
|
||||
protected AnimatedTestParticle(ClientWorld world, double x, double y, double z, SpriteProvider sprites) {
|
||||
super(world, x, y, z, sprites, 0);
|
||||
setSprite(sprites.getSprite(random));
|
||||
this.maxAge = MHelper.randRange(20, 80, random);
|
||||
this.scale = MHelper.randRange(0.1F, 0.3F, random);
|
||||
this.setTargetColor(15916745);
|
||||
this.setSpriteForAge(spriteProvider);
|
||||
this.velocityX = random.nextGaussian() * 0.1F;
|
||||
this.velocityY = random.nextGaussian() * 0.1F;
|
||||
this.velocityZ = random.nextGaussian() * 0.1F;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void tick() {
|
||||
ticks ++;
|
||||
if (ticks > 10) {
|
||||
this.velocityX = random.nextGaussian() * 0.1F;
|
||||
this.velocityY = random.nextGaussian() * 0.1F;
|
||||
this.velocityZ = random.nextGaussian() * 0.1F;
|
||||
ticks = 0;
|
||||
}
|
||||
super.tick();
|
||||
}
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public static class Factory implements ParticleFactory<DefaultParticleType> {
|
||||
|
||||
private final SpriteProvider sprites;
|
||||
|
||||
public Factory(SpriteProvider sprites) {
|
||||
this.sprites = sprites;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Particle createParticle(DefaultParticleType type, ClientWorld world, double x, double y, double z,
|
||||
double vX, double vY, double vZ) {
|
||||
return new AnimatedTestParticle(world, x, y, z, sprites);
|
||||
}
|
||||
}
|
||||
}
|
20
src/main/java/ru/betterend/registry/ParticleRegistry.java
Normal file
20
src/main/java/ru/betterend/registry/ParticleRegistry.java
Normal file
|
@ -0,0 +1,20 @@
|
|||
package ru.betterend.registry;
|
||||
|
||||
import net.fabricmc.fabric.api.client.particle.v1.ParticleFactoryRegistry;
|
||||
import net.fabricmc.fabric.api.particle.v1.FabricParticleTypes;
|
||||
import net.minecraft.particle.DefaultParticleType;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
import ru.betterend.BetterEnd;
|
||||
import ru.betterend.particle.AnimatedTestParticle;
|
||||
|
||||
public class ParticleRegistry {
|
||||
public static final DefaultParticleType TEST = register("test");
|
||||
|
||||
public static void register() {
|
||||
ParticleFactoryRegistry.getInstance().register(TEST, AnimatedTestParticle.Factory::new);
|
||||
}
|
||||
|
||||
private static DefaultParticleType register(String name) {
|
||||
return Registry.register(Registry.PARTICLE_TYPE, BetterEnd.getResId(name), FabricParticleTypes.simple());
|
||||
}
|
||||
}
|
|
@ -8,6 +8,7 @@ import net.minecraft.block.Block;
|
|||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.client.sound.MusicType;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.particle.ParticleEffect;
|
||||
import net.minecraft.sound.BiomeAdditionsSound;
|
||||
import net.minecraft.sound.BiomeMoodSound;
|
||||
import net.minecraft.sound.SoundEvent;
|
||||
|
@ -83,8 +84,8 @@ public class BiomeDefinition {
|
|||
return this;
|
||||
}
|
||||
|
||||
public BiomeDefinition setParticleConfig(BiomeParticleConfig config) {
|
||||
this.particleConfig = config;
|
||||
public BiomeDefinition setParticles(ParticleEffect particle, float probability) {
|
||||
this.particleConfig = new BiomeParticleConfig(particle, probability);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
|
|
@ -2,6 +2,7 @@ package ru.betterend.world.biome;
|
|||
|
||||
import ru.betterend.registry.BlockRegistry;
|
||||
import ru.betterend.registry.FeatureRegistry;
|
||||
import ru.betterend.registry.ParticleRegistry;
|
||||
|
||||
public class BiomeFoggyMushroomland extends EndBiome {
|
||||
public BiomeFoggyMushroomland() {
|
||||
|
@ -11,6 +12,7 @@ public class BiomeFoggyMushroomland extends EndBiome {
|
|||
.setWaterColor(119, 227, 250)
|
||||
.setWaterFogColor(119, 227, 250)
|
||||
.setSurface(BlockRegistry.END_MOSS, BlockRegistry.END_MYCELIUM)
|
||||
.setParticles(ParticleRegistry.TEST, 0.001F)
|
||||
.addFeature(FeatureRegistry.ENDER_ORE)
|
||||
.addFeature(FeatureRegistry.END_LAKE)
|
||||
.addFeature(FeatureRegistry.MOSSY_GLOWSHROOM)
|
||||
|
|
19
src/main/resources/assets/betterend/particles/test.json
Normal file
19
src/main/resources/assets/betterend/particles/test.json
Normal file
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"textures": [
|
||||
"minecraft:spell_0",
|
||||
"minecraft:spell_1",
|
||||
"minecraft:spell_2",
|
||||
"minecraft:spell_3",
|
||||
"minecraft:spell_4",
|
||||
"minecraft:spell_5",
|
||||
"minecraft:spell_6",
|
||||
"minecraft:spell_7",
|
||||
"minecraft:spell_6",
|
||||
"minecraft:spell_5",
|
||||
"minecraft:spell_4",
|
||||
"minecraft:spell_3",
|
||||
"minecraft:spell_2",
|
||||
"minecraft:spell_1",
|
||||
"minecraft:spell_0"
|
||||
]
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue