|
|
|
@ -3,6 +3,8 @@ package net.minecraft.src;
|
|
|
|
|
import java.io.ByteArrayInputStream;
|
|
|
|
|
import java.io.DataInputStream;
|
|
|
|
|
import java.io.IOException;
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
|
|
|
|
|
|
|
import org.mcmodule.math.BigInteger;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.Iterator;
|
|
|
|
@ -39,13 +41,13 @@ public class NetServerHandler extends NetHandler
|
|
|
|
|
private int creativeItemCreationSpamThresholdTally = 0;
|
|
|
|
|
|
|
|
|
|
/** The last known x position for this connection. */
|
|
|
|
|
private double lastPosX;
|
|
|
|
|
private BigDecimal lastPosX = BigDecimal.ZERO;
|
|
|
|
|
|
|
|
|
|
/** The last known y position for this connection. */
|
|
|
|
|
private double lastPosY;
|
|
|
|
|
|
|
|
|
|
/** The last known z position for this connection. */
|
|
|
|
|
private double lastPosZ;
|
|
|
|
|
private BigDecimal lastPosZ = BigDecimal.ZERO;
|
|
|
|
|
private boolean field_72587_r = true;
|
|
|
|
|
private IntHashMap field_72586_s = new IntHashMap();
|
|
|
|
|
|
|
|
|
@ -128,7 +130,7 @@ public class NetServerHandler extends NetHandler
|
|
|
|
|
{
|
|
|
|
|
var3 = par1Packet10Flying.yPosition - this.lastPosY;
|
|
|
|
|
|
|
|
|
|
if (par1Packet10Flying.xPosition == this.lastPosX && var3 * var3 < 0.01D && par1Packet10Flying.zPosition == this.lastPosZ)
|
|
|
|
|
if (par1Packet10Flying.xPosition.compareTo(this.lastPosX) == 0 && var3 * var3 < 0.01D && par1Packet10Flying.zPosition.compareTo(this.lastPosZ) == 0)
|
|
|
|
|
{
|
|
|
|
|
this.field_72587_r = true;
|
|
|
|
|
}
|
|
|
|
@ -136,9 +138,9 @@ public class NetServerHandler extends NetHandler
|
|
|
|
|
|
|
|
|
|
if (this.field_72587_r)
|
|
|
|
|
{
|
|
|
|
|
double var5;
|
|
|
|
|
BigDecimal var5;
|
|
|
|
|
double var7;
|
|
|
|
|
double var9;
|
|
|
|
|
BigDecimal var9;
|
|
|
|
|
double var13;
|
|
|
|
|
|
|
|
|
|
if (this.playerEntity.ridingEntity != null)
|
|
|
|
@ -146,9 +148,9 @@ public class NetServerHandler extends NetHandler
|
|
|
|
|
float var34 = this.playerEntity.rotationYaw;
|
|
|
|
|
float var4 = this.playerEntity.rotationPitch;
|
|
|
|
|
this.playerEntity.ridingEntity.updateRiderPosition();
|
|
|
|
|
var5 = this.playerEntity.posX;
|
|
|
|
|
var5 = this.playerEntity.posXBig;
|
|
|
|
|
var7 = this.playerEntity.posY;
|
|
|
|
|
var9 = this.playerEntity.posZ;
|
|
|
|
|
var9 = this.playerEntity.posZBig;
|
|
|
|
|
double var35 = 0.0D;
|
|
|
|
|
var13 = 0.0D;
|
|
|
|
|
|
|
|
|
@ -160,15 +162,15 @@ public class NetServerHandler extends NetHandler
|
|
|
|
|
|
|
|
|
|
if (par1Packet10Flying.moving && par1Packet10Flying.yPosition == -999.0D && par1Packet10Flying.stance == -999.0D)
|
|
|
|
|
{
|
|
|
|
|
if (Math.abs(par1Packet10Flying.xPosition) > 1.0D || Math.abs(par1Packet10Flying.zPosition) > 1.0D)
|
|
|
|
|
if (par1Packet10Flying.xPosition.abs().compareTo(BigDecimal.ONE) > 0 || par1Packet10Flying.zPosition.abs().compareTo(BigDecimal.ONE) > 0)
|
|
|
|
|
{
|
|
|
|
|
System.err.println(this.playerEntity.username + " was caught trying to crash the server with an invalid position.");
|
|
|
|
|
this.kickPlayerFromServer("Nope!");
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var35 = par1Packet10Flying.xPosition;
|
|
|
|
|
var13 = par1Packet10Flying.zPosition;
|
|
|
|
|
var35 = par1Packet10Flying.xPosition.doubleValue();
|
|
|
|
|
var13 = par1Packet10Flying.zPosition.doubleValue();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.playerEntity.onGround = par1Packet10Flying.onGround;
|
|
|
|
@ -189,9 +191,9 @@ public class NetServerHandler extends NetHandler
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.mcServer.getConfigurationManager().func_72358_d(this.playerEntity);
|
|
|
|
|
this.lastPosX = this.playerEntity.posX;
|
|
|
|
|
this.lastPosX = this.playerEntity.posXBig;
|
|
|
|
|
this.lastPosY = this.playerEntity.posY;
|
|
|
|
|
this.lastPosZ = this.playerEntity.posZ;
|
|
|
|
|
this.lastPosZ = this.playerEntity.posZBig;
|
|
|
|
|
var2.updateEntity(this.playerEntity);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
@ -205,12 +207,12 @@ public class NetServerHandler extends NetHandler
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var3 = this.playerEntity.posY;
|
|
|
|
|
this.lastPosX = this.playerEntity.posX;
|
|
|
|
|
this.lastPosX = this.playerEntity.posXBig;
|
|
|
|
|
this.lastPosY = this.playerEntity.posY;
|
|
|
|
|
this.lastPosZ = this.playerEntity.posZ;
|
|
|
|
|
var5 = this.playerEntity.posX;
|
|
|
|
|
this.lastPosZ = this.playerEntity.posZBig;
|
|
|
|
|
var5 = this.playerEntity.posXBig;
|
|
|
|
|
var7 = this.playerEntity.posY;
|
|
|
|
|
var9 = this.playerEntity.posZ;
|
|
|
|
|
var9 = this.playerEntity.posZBig;
|
|
|
|
|
float var11 = this.playerEntity.rotationYaw;
|
|
|
|
|
float var12 = this.playerEntity.rotationPitch;
|
|
|
|
|
|
|
|
|
@ -255,9 +257,9 @@ public class NetServerHandler extends NetHandler
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var13 = var5 - this.playerEntity.posX;
|
|
|
|
|
var13 = var5.subtract(this.playerEntity.posXBig).doubleValue();
|
|
|
|
|
double var15 = var7 - this.playerEntity.posY;
|
|
|
|
|
double var17 = var9 - this.playerEntity.posZ;
|
|
|
|
|
double var17 = var9.subtract(this.playerEntity.posZBig).doubleValue();
|
|
|
|
|
double var19 = Math.min(Math.abs(var13), Math.abs(this.playerEntity.motionX));
|
|
|
|
|
double var21 = Math.min(Math.abs(var15), Math.abs(this.playerEntity.motionY));
|
|
|
|
|
double var23 = Math.min(Math.abs(var17), Math.abs(this.playerEntity.motionZ));
|
|
|
|
@ -282,7 +284,7 @@ public class NetServerHandler extends NetHandler
|
|
|
|
|
this.playerEntity.onGround = par1Packet10Flying.onGround;
|
|
|
|
|
this.playerEntity.addMovementStat(var13, var15, var17);
|
|
|
|
|
double var29 = var15;
|
|
|
|
|
var13 = var5 - this.playerEntity.posX;
|
|
|
|
|
var13 = var5.subtract(this.playerEntity.posXBig).doubleValue();
|
|
|
|
|
var15 = var7 - this.playerEntity.posY;
|
|
|
|
|
|
|
|
|
|
if (var15 > -0.5D || var15 < 0.5D)
|
|
|
|
@ -290,7 +292,7 @@ public class NetServerHandler extends NetHandler
|
|
|
|
|
var15 = 0.0D;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var17 = var9 - this.playerEntity.posZ;
|
|
|
|
|
var17 = var9.subtract(this.playerEntity.posZBig).doubleValue();
|
|
|
|
|
var25 = var13 * var13 + var15 * var15 + var17 * var17;
|
|
|
|
|
boolean var31 = false;
|
|
|
|
|
|
|
|
|
@ -337,7 +339,11 @@ public class NetServerHandler extends NetHandler
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void setPlayerLocation(double par1, double par3, double par5, float par7, float par8)
|
|
|
|
|
public void setPlayerLocation(double par1, double par3, double par5, float par7, float par8) {
|
|
|
|
|
this.setPlayerLocation(BigDecimal.valueOf(par1), par3, BigDecimal.valueOf(par5), par7, par8);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void setPlayerLocation(BigDecimal par1, double par3, BigDecimal par5, float par7, float par8)
|
|
|
|
|
{
|
|
|
|
|
this.field_72587_r = false;
|
|
|
|
|
this.lastPosX = par1;
|
|
|
|
|