Advertisement
Guest User

Untitled

a guest
Nov 21st, 2024
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.97 KB | Source Code | 0 0
  1. package net.mcreator.invisiblelight.client.particle;
  2.  
  3. import net.minecraftforge.api.distmarker.OnlyIn;
  4. import net.minecraftforge.api.distmarker.Dist;
  5.  
  6. import net.minecraft.particles.BasicParticleType;
  7. import net.minecraft.client.world.ClientWorld;
  8. import net.minecraft.client.particle.SpriteTexturedParticle;
  9. import net.minecraft.client.particle.Particle;
  10. import net.minecraft.client.particle.IParticleRenderType;
  11. import net.minecraft.client.particle.IParticleFactory;
  12. import net.minecraft.client.particle.IAnimatedSprite;
  13.  
  14. @OnlyIn(Dist.CLIENT)
  15. public class Light15ParticleParticle extends SpriteTexturedParticle {
  16.     public static Light15ParticleIParticleFactory factory(IAnimatedSprite spriteSet) {
  17.         return new Light15ParticleIParticleFactory(spriteSet);
  18.     }
  19.  
  20.     @OnlyIn(Dist.CLIENT)
  21.     public static class Light15ParticleIParticleFactory implements IParticleFactory<BasicParticleType> {
  22.         private final IAnimatedSprite spriteSet;
  23.  
  24.         public Light15ParticleIParticleFactory(IAnimatedSprite spriteSet) {
  25.             this.spriteSet = spriteSet;
  26.         }
  27.  
  28.         public Particle makeParticle(BasicParticleType typeIn, ClientWorld worldIn, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) {
  29.             return new Light15ParticleParticle(worldIn, x, y, z, xSpeed, ySpeed, zSpeed, this.spriteSet);
  30.         }
  31.     }
  32.  
  33.     private final IAnimatedSprite spriteSet;
  34.  
  35.     protected Light15ParticleParticle(ClientWorld world, double x, double y, double z, double vx, double vy, double vz, IAnimatedSprite spriteSet) {
  36.         super(world, x, y, z);
  37.         this.spriteSet = spriteSet;
  38.         this.setSize(0.2f, 0.2f);
  39.         this.particleScale *= 2f;
  40.         this.maxAge = 20;
  41.         this.particleGravity = 0f;
  42.         this.canCollide = false;
  43.         this.motionX = vx * 0;
  44.         this.motionY = vy * 0;
  45.         this.motionZ = vz * 0;
  46.         this.selectSpriteRandomly(spriteSet);
  47.     }
  48.  
  49.     @Override
  50.     public IParticleRenderType getRenderType() {
  51.         return IParticleRenderType.PARTICLE_SHEET_OPAQUE;
  52.     }
  53.  
  54.     @Override
  55.     public void tick() {
  56.         super.tick();
  57.     }
  58. }
  59.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement