Basic reformat, hit once, hope never again
This commit is contained in:
@@ -32,9 +32,19 @@ import net.minecraft.world.World;
|
||||
public class LightningFX extends EntityFX
|
||||
{
|
||||
|
||||
final int steps = this.getSteps();
|
||||
private static final Random RANDOM_GENERATOR = new Random();
|
||||
final int steps = this.getSteps();
|
||||
final double[][] Steps;
|
||||
final double[] I = new double[3];
|
||||
final double[] K = new double[3];
|
||||
float currentPoint = 0;
|
||||
boolean hasData = false;
|
||||
|
||||
public LightningFX( World w, double x, double y, double z, double r, double g, double b )
|
||||
{
|
||||
this( w, x, y, z, r, g, b, 6 );
|
||||
this.regen();
|
||||
}
|
||||
|
||||
protected LightningFX( World w, double x, double y, double z, double r, double g, double b, int maxAge )
|
||||
{
|
||||
@@ -47,19 +57,24 @@ public class LightningFX extends EntityFX
|
||||
this.noClip = true;
|
||||
}
|
||||
|
||||
protected void regen()
|
||||
{
|
||||
double lastDirectionX = ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9;
|
||||
double lastDirectionY = ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9;
|
||||
double lastDirectionZ = ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9;
|
||||
for( int s = 0; s < this.steps; s++ )
|
||||
{
|
||||
this.Steps[s][0] = lastDirectionX = ( lastDirectionX + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9 ) / 2.0;
|
||||
this.Steps[s][1] = lastDirectionY = ( lastDirectionY + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9 ) / 2.0;
|
||||
this.Steps[s][2] = lastDirectionZ = ( lastDirectionZ + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9 ) / 2.0;
|
||||
}
|
||||
}
|
||||
|
||||
private int getSteps()
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
|
||||
public LightningFX( World w, double x, double y, double z, double r, double g, double b )
|
||||
{
|
||||
this( w, x, y, z, r, g, b, 6 );
|
||||
this.regen();
|
||||
}
|
||||
|
||||
float currentPoint = 0;
|
||||
|
||||
@Override
|
||||
public int getBrightnessForRender( float par1 )
|
||||
{
|
||||
@@ -67,25 +82,12 @@ public class LightningFX extends EntityFX
|
||||
return j1 << 20 | j1 << 4;
|
||||
}
|
||||
|
||||
protected void regen()
|
||||
{
|
||||
double lastDirectionX = ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9;
|
||||
double lastDirectionY = ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9;
|
||||
double lastDirectionZ = ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9;
|
||||
for ( int s = 0; s < this.steps; s++ )
|
||||
{
|
||||
this.Steps[s][0] = lastDirectionX = ( lastDirectionX + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9 ) / 2.0;
|
||||
this.Steps[s][1] = lastDirectionY = ( lastDirectionY + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9 ) / 2.0;
|
||||
this.Steps[s][2] = lastDirectionZ = ( lastDirectionZ + ( RANDOM_GENERATOR.nextDouble() - 0.5 ) * 0.9 ) / 2.0;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderParticle( Tessellator tess, float l, float rX, float rY, float rZ, float rYZ, float rXY )
|
||||
{
|
||||
float j = 1.0f;
|
||||
tess.setColorRGBA_F( this.particleRed * j * 0.9f, this.particleGreen * j * 0.95f, this.particleBlue * j, this.particleAlpha );
|
||||
if ( this.particleAge == 3 )
|
||||
if( this.particleAge == 3 )
|
||||
{
|
||||
this.regen();
|
||||
}
|
||||
@@ -108,12 +110,12 @@ public class LightningFX extends EntityFX
|
||||
|
||||
EntityPlayer p = Minecraft.getMinecraft().thePlayer;
|
||||
double offX = -rZ;
|
||||
double offY = MathHelper.cos( ( float ) ( Math.PI / 2.0f + p.rotationPitch * 0.017453292F ) );
|
||||
double offY = MathHelper.cos( (float) ( Math.PI / 2.0f + p.rotationPitch * 0.017453292F ) );
|
||||
double offZ = rX;
|
||||
|
||||
for ( int layer = 0; layer < 2; layer++ )
|
||||
for( int layer = 0; layer < 2; layer++ )
|
||||
{
|
||||
if ( layer == 0 )
|
||||
if( layer == 0 )
|
||||
{
|
||||
scale = 0.04;
|
||||
offX *= 0.001;
|
||||
@@ -130,7 +132,7 @@ public class LightningFX extends EntityFX
|
||||
tess.setColorRGBA_F( this.particleRed * j * 0.9f, this.particleGreen * j * 0.65f, this.particleBlue * j * 0.85f, this.particleAlpha );
|
||||
}
|
||||
|
||||
for ( int cycle = 0; cycle < 3; cycle++ )
|
||||
for( int cycle = 0; cycle < 3; cycle++ )
|
||||
{
|
||||
this.clear();
|
||||
|
||||
@@ -138,7 +140,7 @@ public class LightningFX extends EntityFX
|
||||
double y = ( this.prevPosY + ( this.posY - this.prevPosY ) * l - interpPosY ) - offY;
|
||||
double z = ( this.prevPosZ + ( this.posZ - this.prevPosZ ) * l - interpPosZ ) - offZ;
|
||||
|
||||
for ( int s = 0; s < this.steps; s++ )
|
||||
for( int s = 0; s < this.steps; s++ )
|
||||
{
|
||||
double xN = x + this.Steps[s][0];
|
||||
double yN = y + this.Steps[s][1];
|
||||
@@ -148,26 +150,26 @@ public class LightningFX extends EntityFX
|
||||
double yD = yN - y;
|
||||
double zD = zN - z;
|
||||
|
||||
if ( cycle == 0 )
|
||||
if( cycle == 0 )
|
||||
{
|
||||
ox = ( yD * 0 ) - ( 1 * zD );
|
||||
oy = ( zD * 0 ) - ( 0 * xD );
|
||||
oz = ( xD * 1 ) - ( 0 * yD );
|
||||
}
|
||||
if ( cycle == 1 )
|
||||
if( cycle == 1 )
|
||||
{
|
||||
ox = ( yD * 1 ) - ( 0 * zD );
|
||||
oy = ( zD * 0 ) - ( 1 * xD );
|
||||
oz = ( xD * 0 ) - ( 0 * yD );
|
||||
}
|
||||
if ( cycle == 2 )
|
||||
if( cycle == 2 )
|
||||
{
|
||||
ox = ( yD * 0 ) - ( 0 * zD );
|
||||
oy = ( zD * 1 ) - ( 0 * xD );
|
||||
oz = ( xD * 0 ) - ( 1 * yD );
|
||||
}
|
||||
|
||||
double ss = Math.sqrt( ox * ox + oy * oy + oz * oz ) / ( ( ( ( double ) this.steps - ( double ) s ) / this.steps ) * scale );
|
||||
double ss = Math.sqrt( ox * ox + oy * oy + oz * oz ) / ( ( ( (double) this.steps - (double) s ) / this.steps ) * scale );
|
||||
ox /= ss;
|
||||
oy /= ss;
|
||||
oz /= ss;
|
||||
@@ -194,13 +196,14 @@ public class LightningFX extends EntityFX
|
||||
*/
|
||||
}
|
||||
|
||||
boolean hasData = false;
|
||||
final double[] I = new double[3];
|
||||
final double[] K = new double[3];
|
||||
private void clear()
|
||||
{
|
||||
this.hasData = false;
|
||||
}
|
||||
|
||||
private void draw( Tessellator tess, double[] a, double[] b, double f6, double f8 )
|
||||
{
|
||||
if ( this.hasData )
|
||||
if( this.hasData )
|
||||
{
|
||||
tess.addVertexWithUV( a[0], a[1], a[2], f6, f8 );
|
||||
tess.addVertexWithUV( this.I[0], this.I[1], this.I[2], f6, f8 );
|
||||
@@ -208,15 +211,10 @@ public class LightningFX extends EntityFX
|
||||
tess.addVertexWithUV( b[0], b[1], b[2], f6, f8 );
|
||||
}
|
||||
this.hasData = true;
|
||||
for ( int x = 0; x < 3; x++ )
|
||||
for( int x = 0; x < 3; x++ )
|
||||
{
|
||||
this.I[x] = a[x];
|
||||
this.K[x] = b[x];
|
||||
}
|
||||
}
|
||||
|
||||
private void clear()
|
||||
{
|
||||
this.hasData = false;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user