Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static void getFXLayers() {
- //fxLayers
- Field field = null;
- try {
- field = (EffectRenderer.class).getDeclaredField("b");
- field.setAccessible(true);
- fxLayers = (List[])field.get(ModLoader.getMinecraftInstance().effectRenderer);
- } catch (Exception ex) {
- try {
- field = (EffectRenderer.class).getDeclaredField("fxLayers");
- field.setAccessible(true);
- fxLayers = (List[])field.get(ModLoader.getMinecraftInstance().effectRenderer);
- } catch (Exception ex2) {
- ex2.printStackTrace();
- }
- }
- }
- public static void gatherParticles() {
- //Particles
- if (fxLayers != null) {
- for (int layer = 0; layer < 4; layer++) {
- for(int i = 0; i < fxLayers[layer].size(); i++) {
- Entity entity1 = (Entity)fxLayers[layer].get(i);
- //if (player.canEntityBeSeen(entity1)) {
- if ((entity1 instanceof EntityFlameFX)) {
- //((EntityFX)entity1).particleAge-=2;
- //if (((EntityFX)entity1).particleAge < 0) {
- if (((EntityFX)entity1).particleAge % 2 == 0) {
- ((EntityFX)entity1).particleAge -= 1;
- ((EntityFX)entity1).renderDistanceWeight = 10D;
- }
- } else if (((EntityFX)entity1).particleAge % 2 == 0) {
- //((EntityFX)entity1).particleAge+=1;
- }
- //rustle!
- if (entity1.onGround) {
- //entity1.onGround = false;
- //entity1.motionY += entity1.rand.nextDouble() * entity1.motionX;
- }
- if (entity1.motionX < 0.01F && entity1.motionZ < 0.01F) {
- //entity1.motionY += entity1.rand.nextDouble() * 0.05;
- }
- //entity1.motionX += entity1.rand.nextDouble() * 0.03;
- //entity1.motionZ += entity1.rand.nextDouble() * 0.03;
- //entity1.motionY += entity1.rand.nextDouble() * 0.04;
- //if (canPushEntity(entity1)) {
- //if (!(entity1 instanceof EntityFlameFX)) {
- moveEnt(entity1, player);
- //}
- }
- }
- }
- }
- public static void moveEnt(Entity ent, Entity center) {
- float look = 0F;
- //int height = 10;
- double dist = 2F;
- double gatherX = center.posX + ((double)(-Math.sin((center.rotationYaw+look) / 180.0F * 3.1415927F) * Math.cos(center.rotationPitch / 180.0F * 3.1415927F)) * dist);
- double gatherY = center.posY - 0D;
- double gatherZ = center.posZ + ((double)(Math.cos((center.rotationYaw+look) / 180.0F * 3.1415927F) * Math.cos(center.rotationPitch / 180.0F * 3.1415927F)) * dist);
- double entDist = ent.getDistanceToEntity(center);
- double vecX = gatherX - ent.posX;
- double vecY = gatherY - ent.posY;// + (double)(tNode.nextNode.bodyPiece.height / 2.0F) - (tNode.bodyPiece.posY + (double)(tNode.bodyPiece.height / 2.0F));
- double vecZ = gatherZ - ent.posZ;
- float f = (float)((Math.atan2(vecZ, vecX) * 180D) / 3.1415927410125732D);
- float angle;
- for(angle = f; angle < -180F; angle += 360F) { }
- for(; angle >= 180F; angle -= 360F) { }
- //vecX = center.posX - ent.posX;
- //vecY = center.posY - ent.posY;// + (double)(tNode.nextNode.bodyPiece.height / 2.0F) - (tNode.bodyPiece.posY + (double)(tNode.bodyPiece.height / 2.0F));
- //vecZ = center.posZ - ent.posZ;
- //mod_MovePlus.displayMessage(new StringBuilder().append("vecX: " + vecX).toString());
- //tNode.bodyPiece.vecX = vecX;//tNode.bodyPiece.posX - tNode.nextNode.bodyPiece.posX;
- //tNode.bodyPiece.vecY = vecY;//tNode.bodyPiece.posY - tNode.nextNode.bodyPiece.posY;
- //tNode.bodyPiece.vecZ = vecZ;//tNode.bodyPiece.posZ - tNode.nextNode.bodyPiece.posZ;
- double var9 = (double)MathHelper.sqrt_double(vecX * vecX + vecY * vecY + vecZ * vecZ);
- //double speed = 0.2D * (Math.sqrt(dist)/10.0F);
- double speed = 0.01D;
- double newspeed = speed;// * (Math.sqrt(entDist)/1.0F);
- //tNode.bodyPiece.posX += vecX / var9 * newspeed;
- //tNode.bodyPiece.posY += vecY / var9 * newspeed;
- //tNode.bodyPiece.posZ += vecZ / var9 * newspeed;
- //tNode.bodyPiece.setPosition(tNode.bodyPiece.posX, tNode.bodyPiece.posY, tNode.bodyPiece.posZ);
- angle = angle - 10;
- float f3 = (float)Math.cos(-angle * 0.01745329F - 3.141593F);
- float f4 = (float)Math.sin(-angle * 0.01745329F - 3.141593F);
- ent.motionX += -f3 * speed;//vecX / var9 * newspeed;
- ent.motionY += vecY / var9 * newspeed;
- ent.motionZ += f4 * speed;// / var9 * newspeed;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement