001package net.minecraft.world;
002
003import net.minecraft.util.MathHelper;
004import net.minecraft.util.Vec3;
005
006public class ChunkPosition
007{
008    /** The x coordinate of this ChunkPosition */
009    public final int x;
010
011    /** The y coordinate of this ChunkPosition */
012    public final int y;
013
014    /** The z coordinate of this ChunkPosition */
015    public final int z;
016
017    public ChunkPosition(int par1, int par2, int par3)
018    {
019        this.x = par1;
020        this.y = par2;
021        this.z = par3;
022    }
023
024    public ChunkPosition(Vec3 par1Vec3)
025    {
026        this(MathHelper.floor_double(par1Vec3.xCoord), MathHelper.floor_double(par1Vec3.yCoord), MathHelper.floor_double(par1Vec3.zCoord));
027    }
028
029    public boolean equals(Object par1Obj)
030    {
031        if (!(par1Obj instanceof ChunkPosition))
032        {
033            return false;
034        }
035        else
036        {
037            ChunkPosition var2 = (ChunkPosition)par1Obj;
038            return var2.x == this.x && var2.y == this.y && var2.z == this.z;
039        }
040    }
041
042    public int hashCode()
043    {
044        return this.x * 8976890 + this.y * 981131 + this.z;
045    }
046}