You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
86 lines
2.3 KiB
Java
86 lines
2.3 KiB
Java
package net.minecraft.util;
|
|
|
|
public class ChunkCoordinates implements Comparable
|
|
{
|
|
public int posX;
|
|
/** the y coordinate */
|
|
public int posY;
|
|
/** the z coordinate */
|
|
public int posZ;
|
|
private static final String __OBFID = "CL_00001555";
|
|
|
|
public ChunkCoordinates() {}
|
|
|
|
public ChunkCoordinates(int x, int y, int z)
|
|
{
|
|
this.posX = x;
|
|
this.posY = y;
|
|
this.posZ = z;
|
|
}
|
|
|
|
public ChunkCoordinates(ChunkCoordinates coords)
|
|
{
|
|
this.posX = coords.posX;
|
|
this.posY = coords.posY;
|
|
this.posZ = coords.posZ;
|
|
}
|
|
|
|
public boolean equals(Object p_equals_1_)
|
|
{
|
|
if (!(p_equals_1_ instanceof ChunkCoordinates))
|
|
{
|
|
return false;
|
|
}
|
|
else
|
|
{
|
|
ChunkCoordinates chunkcoordinates = (ChunkCoordinates)p_equals_1_;
|
|
return this.posX == chunkcoordinates.posX && this.posY == chunkcoordinates.posY && this.posZ == chunkcoordinates.posZ;
|
|
}
|
|
}
|
|
|
|
public int hashCode()
|
|
{
|
|
return this.posX + this.posZ << 8 + this.posY << 16;
|
|
}
|
|
|
|
public int compareTo(ChunkCoordinates p_compareTo_1_)
|
|
{
|
|
return this.posY == p_compareTo_1_.posY ? (this.posZ == p_compareTo_1_.posZ ? this.posX - p_compareTo_1_.posX : this.posZ - p_compareTo_1_.posZ) : this.posY - p_compareTo_1_.posY;
|
|
}
|
|
|
|
public void set(int x, int y, int z)
|
|
{
|
|
this.posX = x;
|
|
this.posY = y;
|
|
this.posZ = z;
|
|
}
|
|
|
|
/**
|
|
* Returns the squared distance between this coordinates and the coordinates given as argument.
|
|
*/
|
|
public float getDistanceSquared(int x, int y, int z)
|
|
{
|
|
float f = (float)(this.posX - x);
|
|
float f1 = (float)(this.posY - y);
|
|
float f2 = (float)(this.posZ - z);
|
|
return f * f + f1 * f1 + f2 * f2;
|
|
}
|
|
|
|
/**
|
|
* Return the squared distance between this coordinates and the ChunkCoordinates given as argument.
|
|
*/
|
|
public float getDistanceSquaredToChunkCoordinates(ChunkCoordinates other)
|
|
{
|
|
return this.getDistanceSquared(other.posX, other.posY, other.posZ);
|
|
}
|
|
|
|
public String toString()
|
|
{
|
|
return "Pos{x=" + this.posX + ", y=" + this.posY + ", z=" + this.posZ + '}';
|
|
}
|
|
|
|
public int compareTo(Object p_compareTo_1_)
|
|
{
|
|
return this.compareTo((ChunkCoordinates)p_compareTo_1_);
|
|
}
|
|
} |