Stargate/src/main/java/net/knarcraft/stargate/RelativeBlockVector.java

54 lines
1.6 KiB
Java
Raw Normal View History

package net.knarcraft.stargate;
/**
* This stores a block location as a vector relative to a position
*
* <p>A relative block vector stores a vector relative to some origin. The origin in this plugin is usually the
* top-left block of a gate. The right is therefore the distance from the top-left corner towards the top-right corner.
* Depth is the distance from the top-left corner to the bottom-left corner. Distance is the distance outward from the
* gate.</p>
*/
public class RelativeBlockVector {
private int right;
private int depth;
private int distance;
/**
* Instantiates a new relative block vector
* @param right <p>The distance to the right relative to the origin</p>
* @param depth <p>The distance downward relative to the origin</p>
* @param distance <p>The distance outward relative to the origin</p>
*/
public RelativeBlockVector(int right, int depth, int distance) {
this.right = right;
this.depth = depth;
this.distance = distance;
}
/**
* Gets the distance to the right relative to the origin
* @return The distance to the right relative to the origin
*/
public int getRight() {
return right;
}
/**
* Gets the distance downward relative to the origin
* @return The distance downward relative to the origin
*/
public int getDepth() {
return depth;
}
/**
* Gets the distance outward relative to the origin
* @return The distance outward relative to the origin
*/
public int getDistance() {
return distance;
}
}