package net.minecraft.village; public class VillageDoorInfo { public final int posX; public final int posY; public final int posZ; public final int insideDirectionX; public final int insideDirectionZ; public int lastActivityTimestamp; public boolean isDetachedFromVillageFlag = false; private int doorOpeningRestrictionCounter = 0; public VillageDoorInfo(int par1, int par2, int par3, int par4, int par5, int par6) { this.posX = par1; this.posY = par2; this.posZ = par3; this.insideDirectionX = par4; this.insideDirectionZ = par5; this.lastActivityTimestamp = par6; } /** * Returns the squared distance between this door and the given coordinate. */ public int getDistanceSquared(int par1, int par2, int par3) { int l = par1 - this.posX; int i1 = par2 - this.posY; int j1 = par3 - this.posZ; return l * l + i1 * i1 + j1 * j1; } /** * Get the square of the distance from a location 2 blocks away from the door considered 'inside' and the given * arguments */ public int getInsideDistanceSquare(int par1, int par2, int par3) { int l = par1 - this.posX - this.insideDirectionX; int i1 = par2 - this.posY; int j1 = par3 - this.posZ - this.insideDirectionZ; return l * l + i1 * i1 + j1 * j1; } public int getInsidePosX() { return this.posX + this.insideDirectionX; } public int getInsidePosY() { return this.posY; } public int getInsidePosZ() { return this.posZ + this.insideDirectionZ; } public boolean isInside(int par1, int par2) { int k = par1 - this.posX; int l = par2 - this.posZ; return k * this.insideDirectionX + l * this.insideDirectionZ >= 0; } public void resetDoorOpeningRestrictionCounter() { this.doorOpeningRestrictionCounter = 0; } public void incrementDoorOpeningRestrictionCounter() { ++this.doorOpeningRestrictionCounter; } public int getDoorOpeningRestrictionCounter() { return this.doorOpeningRestrictionCounter; } }