package com.laytonsmith.abstraction; import com.laytonsmith.PureUtilities.Vector3D; import com.laytonsmith.abstraction.blocks.MCBlock; /** * * */ public interface MCLocation extends AbstractionObject{ public double getX(); public double getY(); public double getZ(); public double distance(MCLocation o); public double distanceSquared(MCLocation o); public MCWorld getWorld(); public float getYaw(); public float getPitch(); public int getBlockX(); public int getBlockY(); public int getBlockZ(); public MCChunk getChunk(); public MCBlock getBlock(); public MCLocation add(MCLocation vec); public MCLocation add(Vector3D vec); public MCLocation add(double x, double y, double z); public MCLocation multiply(double m); public Vector3D toVector(); public MCLocation subtract(MCLocation vec); public MCLocation subtract(Vector3D vec); public MCLocation subtract(double x, double y, double z); public void setX(double x); public void setY(double y); public void setZ(double z); public void setPitch(float p); public void setYaw(float y); public void breakBlock(); public Vector3D getDirection(); public MCLocation clone(); }