aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTec <daniel112092@gmail.com>2019-07-17 00:29:58 +0200
committerTec <daniel112092@gmail.com>2019-07-17 00:29:58 +0200
commitfdd4cdac351079dbb661ec9097068b95ab0cd527 (patch)
tree537525ab79f01987033422e021928963b1a79c43
parentec335befdb0c2e03a33f4fbf42587b5585cf3796 (diff)
downloadGT5-Unofficial-fdd4cdac351079dbb661ec9097068b95ab0cd527.tar.gz
GT5-Unofficial-fdd4cdac351079dbb661ec9097068b95ab0cd527.tar.bz2
GT5-Unofficial-fdd4cdac351079dbb661ec9097068b95ab0cd527.zip
Adjust some particles
-rw-r--r--src/main/java/com/github/technus/tectech/entity/fx/WeightlessParticleFX.java51
-rw-r--r--src/main/java/com/github/technus/tectech/proxy/ClientProxy.java64
-rw-r--r--src/main/java/com/github/technus/tectech/proxy/CommonProxy.java10
-rw-r--r--src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugPollutor.java26
4 files changed, 105 insertions, 46 deletions
diff --git a/src/main/java/com/github/technus/tectech/entity/fx/WeightlessParticleFX.java b/src/main/java/com/github/technus/tectech/entity/fx/WeightlessParticleFX.java
new file mode 100644
index 0000000000..22b72463f8
--- /dev/null
+++ b/src/main/java/com/github/technus/tectech/entity/fx/WeightlessParticleFX.java
@@ -0,0 +1,51 @@
+package com.github.technus.tectech.entity.fx;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import net.minecraft.client.particle.EntityFX;
+import net.minecraft.world.World;
+
+@SideOnly(Side.CLIENT)
+public class WeightlessParticleFX extends EntityFX
+{
+ private static final String __OBFID = "CL_00000903";
+
+ public WeightlessParticleFX(World p_i1205_1_, double p_i1205_2_, double p_i1205_4_, double p_i1205_6_, double p_i1205_8_, double p_i1205_10_, double p_i1205_12_)
+ {
+ super(p_i1205_1_, p_i1205_2_, p_i1205_4_, p_i1205_6_, p_i1205_8_, p_i1205_10_, p_i1205_12_);
+ this.motionX = p_i1205_8_ + (double)((float)(Math.random() * 2.0D - 1.0D) * 0.05F);
+ this.motionY = p_i1205_10_ + (double)((float)(Math.random() * 2.0D - 1.0D) * 0.05F);
+ this.motionZ = p_i1205_12_ + (double)((float)(Math.random() * 2.0D - 1.0D) * 0.05F);
+ this.particleRed = this.particleGreen = this.particleBlue = this.rand.nextFloat() * 0.3F + 0.7F;
+ this.particleScale = this.rand.nextFloat() * this.rand.nextFloat() * 6.0F + 1.0F;
+ this.particleMaxAge = (int)(16.0D / ((double)this.rand.nextFloat() * 0.8D + 0.2D)) + 2;
+ }
+
+ /**
+ * Called to update the entity's position/logic.
+ */
+ public void onUpdate()
+ {
+ this.prevPosX = this.posX;
+ this.prevPosY = this.posY;
+ this.prevPosZ = this.posZ;
+
+ if (this.particleAge++ >= this.particleMaxAge)
+ {
+ this.setDead();
+ }
+
+ this.setParticleTextureIndex(7 - this.particleAge * 8 / this.particleMaxAge);
+ //this.motionY += 0.004D;
+ this.moveEntity(this.motionX, this.motionY, this.motionZ);
+ this.motionX *= 0.8999999761581421D;
+ this.motionY *= 0.8999999761581421D;
+ this.motionZ *= 0.8999999761581421D;
+
+ if (this.onGround)
+ {
+ this.motionX *= 0.699999988079071D;
+ this.motionZ *= 0.699999988079071D;
+ }
+ }
+}
diff --git a/src/main/java/com/github/technus/tectech/proxy/ClientProxy.java b/src/main/java/com/github/technus/tectech/proxy/ClientProxy.java
index 5ab81d8283..232beebfb6 100644
--- a/src/main/java/com/github/technus/tectech/proxy/ClientProxy.java
+++ b/src/main/java/com/github/technus/tectech/proxy/ClientProxy.java
@@ -4,6 +4,7 @@ import com.github.technus.tectech.Reference;
import com.github.technus.tectech.TecTech;
import com.github.technus.tectech.compatibility.openmodularturrets.TT_turret_loader;
import com.github.technus.tectech.entity.fx.BlockHint;
+import com.github.technus.tectech.entity.fx.WeightlessParticleFX;
import com.github.technus.tectech.thing.block.QuantumGlassBlock;
import com.github.technus.tectech.thing.block.QuantumGlassRender;
import com.github.technus.tectech.thing.block.QuantumStuffBlock;
@@ -17,7 +18,6 @@ import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.EntityClientPlayerMP;
import net.minecraft.client.gui.FontRenderer;
import net.minecraft.client.gui.GuiNewChat;
-import net.minecraft.client.particle.EntityExplodeFX;
import net.minecraft.client.particle.EntityFX;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.AxisAlignedBB;
@@ -41,10 +41,10 @@ public class ClientProxy extends CommonProxy {
}
@Override
- public void hint_particle(World world, int x, int y, int z, Block block, int meta) {
- Minecraft.getMinecraft().effectRenderer.addEffect(new BlockHint(world,x,y,z,block,meta));
+ public void hint_particle(World w,int x, int y, int z, Block block, int meta) {
+ Minecraft.getMinecraft().effectRenderer.addEffect(new BlockHint(w,x,y,z,block,meta));
- EntityFX particle = new EntityExplodeFX(world, x + TecTech.RANDOM.nextFloat() * 0.5F, y + TecTech.RANDOM.nextFloat() * 0.5F, z + TecTech.RANDOM.nextFloat() * 0.5F, 0, 0, 0);
+ EntityFX particle = new WeightlessParticleFX(w, x + TecTech.RANDOM.nextFloat() * 0.5F, y + TecTech.RANDOM.nextFloat() * 0.5F, z + TecTech.RANDOM.nextFloat() * 0.5F, 0, 0, 0);
particle.setRBGColorF(0, 0.6F * TecTech.RANDOM.nextFloat(), 0.8f);
Minecraft.getMinecraft().effectRenderer.addEffect(particle);
}
@@ -56,23 +56,60 @@ public class ClientProxy extends CommonProxy {
float yPos = aDir.offsetY * 0.76F + aMuffler.getYCoord() + 0.25F;
float zPos = aDir.offsetZ * 0.76F + aMuffler.getZCoord() + 0.25F;
- float ySpd = 0;
- //aDir.offsetY*0.1F+0.2F+0.1F*floatGen.nextFloat();
- float xSpd = 0;
- float zSpd = 0;
- EntityFX particle = new EntityExplodeFX(aMuffler.getWorld(), xPos + TecTech.RANDOM.nextFloat() * 0.5F, yPos + TecTech.RANDOM.nextFloat() * 0.5F, zPos + TecTech.RANDOM.nextFloat() * 0.5F, xSpd, ySpd, zSpd);
+ EntityFX particle = new WeightlessParticleFX(aMuffler.getWorld(), xPos + TecTech.RANDOM.nextFloat() * 0.5F, yPos + TecTech.RANDOM.nextFloat() * 0.5F, zPos + TecTech.RANDOM.nextFloat() * 0.5F, 0, 0, 0);
particle.setRBGColorF(0, 0.6F * TecTech.RANDOM.nextFloat(), 0.8f);
Minecraft.getMinecraft().effectRenderer.addEffect(particle);
}
@Override
- public void em_particle(World w,double x,double y,double z) {//CUTE!
- EntityFX particle = new EntityExplodeFX(w, x + TecTech.RANDOM.nextFloat() * 0.5F, y + TecTech.RANDOM.nextFloat() * 0.5F, z + TecTech.RANDOM.nextFloat() * 0.5F, 0, 0, 0);
+ public void pollutor_particle(IGregTechTileEntity aMuffler, byte facing) {
+ ForgeDirection aDir = ForgeDirection.getOrientation(facing);
+ float xPos = aDir.offsetX * 0.76F + aMuffler.getXCoord() + 0.25F;
+ float yPos = aDir.offsetY * 0.76F + aMuffler.getYCoord() + 0.25F;
+ float zPos = aDir.offsetZ * 0.76F + aMuffler.getZCoord() + 0.25F;
+
+ float ySpd = aDir.offsetY * 0.1F + 0.2F + 0.1F * (float)TecTech.RANDOM.nextGaussian();
+ float xSpd;
+ float zSpd;
+
+ if (aDir.offsetY == -1) {
+ float temp = TecTech.RANDOM.nextFloat() * 2 * (float) Math.PI;
+ xSpd = (float) Math.sin(temp) * 0.1F*(float)TecTech.RANDOM.nextGaussian();
+ zSpd = (float) Math.cos(temp) * 0.1F*(float)TecTech.RANDOM.nextGaussian();
+ } else {
+ xSpd = aDir.offsetX * (0.1F + 0.2F *(float)TecTech.RANDOM.nextGaussian());
+ zSpd = aDir.offsetZ * (0.1F + 0.2F *(float)TecTech.RANDOM.nextGaussian());
+ }
+ aMuffler.getWorld().spawnParticle("largesmoke", xPos + TecTech.RANDOM.nextFloat() * 0.5F, yPos + TecTech.RANDOM.nextFloat() * 0.5F, zPos + TecTech.RANDOM.nextFloat() * 0.5F, xSpd, ySpd, zSpd);
+ aMuffler.getWorld().spawnParticle("largesmoke", xPos + TecTech.RANDOM.nextFloat() * 0.5F, yPos + TecTech.RANDOM.nextFloat() * 0.5F, zPos + TecTech.RANDOM.nextFloat() * 0.5F, xSpd, ySpd, zSpd);
+ aMuffler.getWorld().spawnParticle("largesmoke", xPos + TecTech.RANDOM.nextFloat() * 0.5F, yPos + TecTech.RANDOM.nextFloat() * 0.5F, zPos + TecTech.RANDOM.nextFloat() * 0.5F, xSpd, ySpd, zSpd);
+ }
+
+ @Override
+ public void em_particle(World w,double x, double y, double z) {//CUTE!
+ EntityFX particle = new WeightlessParticleFX(w,
+ x + TecTech.RANDOM.nextFloat() * 0.5F,
+ y + TecTech.RANDOM.nextFloat() * 0.5F,
+ z + TecTech.RANDOM.nextFloat() * 0.5F,
+ 0,
+ 0,
+ 0);
particle.setRBGColorF(0, 0.6F * TecTech.RANDOM.nextFloat(), 0.8f);
Minecraft.getMinecraft().effectRenderer.addEffect(particle);
}
@Override
+ public void pollutor_particle(World w,double x, double y, double z) {
+ w.spawnParticle("largesmoke",
+ x + TecTech.RANDOM.nextFloat() * 0.5F,
+ y + TecTech.RANDOM.nextFloat() * 0.5F,
+ z + TecTech.RANDOM.nextFloat() * 0.5F,
+ 0,
+ 0,
+ 0);
+ }
+
+ @Override
public Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) {
return null;
}
@@ -136,11 +173,6 @@ public class ClientProxy extends CommonProxy {
}
@Override
- public void renderAABB(AxisAlignedBB box) {
- renderAABB(Minecraft.getMinecraft().theWorld,box);
- }
-
- @Override
public EntityClientPlayerMP getPlayer(){
return Minecraft.getMinecraft().thePlayer;
}
diff --git a/src/main/java/com/github/technus/tectech/proxy/CommonProxy.java b/src/main/java/com/github/technus/tectech/proxy/CommonProxy.java
index 59d2b95150..296002b527 100644
--- a/src/main/java/com/github/technus/tectech/proxy/CommonProxy.java
+++ b/src/main/java/com/github/technus/tectech/proxy/CommonProxy.java
@@ -13,9 +13,12 @@ import net.minecraft.world.WorldServer;
public class CommonProxy implements IGuiHandler {
public void registerRenderInfo() {}
- public void hint_particle(World world, int x, int y, int z, Block block, int meta){}
+ public void hint_particle(World w,int x, int y, int z, Block block, int meta){}
public void em_particle(IGregTechTileEntity aMuffler, byte facing) {}//CUTE!
- public void em_particle(World w,double x,double y,double z){}
+ public void pollutor_particle(IGregTechTileEntity aPollutor, byte facing) {}//CUTE!
+ public void em_particle(World w,double x, double y, double z){}
+ public void pollutor_particle(World w,double x, double y, double z){}
+ public void renderAABB(World w,AxisAlignedBB box){}
@Override
public Object getServerGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) {
@@ -46,9 +49,6 @@ public class CommonProxy implements IGuiHandler {
public void playSound(IGregTechTileEntity base,String name){}
- public void renderAABB(AxisAlignedBB box){}
- public void renderAABB(World w,AxisAlignedBB box){}
-
public String getUUID(String name) {
for(WorldServer worldServer:MinecraftServer.getServer().worldServers){
for(Object o:worldServer.playerEntities){
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugPollutor.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugPollutor.java
index ab68393dee..0e1c389006 100644
--- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugPollutor.java
+++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugPollutor.java
@@ -118,7 +118,7 @@ public class GT_MetaTileEntity_DebugPollutor extends GT_MetaTileEntity_TieredMac
for(byte i=0;i<6;i++){
if(i!=aBaseMetaTileEntity.getFrontFacing()){
TecTech.proxy.em_particle(aBaseMetaTileEntity, i);
- pollutionParticles(aBaseMetaTileEntity.getWorld(),"largesmoke",i);
+ TecTech.proxy.pollutor_particle(aBaseMetaTileEntity,i);
}
}
}
@@ -157,28 +157,4 @@ public class GT_MetaTileEntity_DebugPollutor extends GT_MetaTileEntity_TieredMac
return false;
}
- @SideOnly(Side.CLIENT)
- public void pollutionParticles(World aWorld, String name,byte face) {
- IGregTechTileEntity aMuffler = this.getBaseMetaTileEntity();
- ForgeDirection aDir = ForgeDirection.getOrientation(face);
- float xPos = aDir.offsetX * 0.76F + aMuffler.getXCoord() + 0.25F;
- float yPos = aDir.offsetY * 0.76F + aMuffler.getYCoord() + 0.25F;
- float zPos = aDir.offsetZ * 0.76F + aMuffler.getZCoord() + 0.25F;
-
- float ySpd = aDir.offsetY * 0.1F + 0.2F + 0.1F * TecTech.RANDOM.nextFloat();
- float xSpd;
- float zSpd;
-
- if (aDir.offsetY == -1) {
- float temp = TecTech.RANDOM.nextFloat() * 2 * (float) Math.PI;
- xSpd = (float) Math.sin(temp) * 0.1F;
- zSpd = (float) Math.cos(temp) * 0.1F;
- } else {
- xSpd = aDir.offsetX * (0.1F + 0.2F * TecTech.RANDOM.nextFloat());
- zSpd = aDir.offsetZ * (0.1F + 0.2F * TecTech.RANDOM.nextFloat());
- }
- aWorld.spawnParticle(name, xPos + TecTech.RANDOM.nextFloat() * 0.5F, yPos + TecTech.RANDOM.nextFloat() * 0.5F, zPos + TecTech.RANDOM.nextFloat() * 0.5F, xSpd, ySpd, zSpd);
- aWorld.spawnParticle(name, xPos + TecTech.RANDOM.nextFloat() * 0.5F, yPos + TecTech.RANDOM.nextFloat() * 0.5F, zPos + TecTech.RANDOM.nextFloat() * 0.5F, xSpd, ySpd, zSpd);
- aWorld.spawnParticle(name, xPos + TecTech.RANDOM.nextFloat() * 0.5F, yPos + TecTech.RANDOM.nextFloat() * 0.5F, zPos + TecTech.RANDOM.nextFloat() * 0.5F, xSpd, ySpd, zSpd);
- }
}