Add SignSideMap for easier working with both-side fields
Signed-off-by: Irmo van den Berge <irmo.vandenberge@ziggo.nl>
This commit is contained in:
1 parent
76157d4f4c
commit
3e04ed35f2
1 file changed
+57
@@ -0,0 +1,57 @@
|
||||
package com.bergerkiller.bukkit.common.block;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Stores two values for both sides of a sign. Makes it easier
|
||||
* to track information about both sides of a sign.
|
||||
*/
|
||||
public class SignSideMap<T> {
|
||||
private T front, back;
|
||||
|
||||
public SignSideMap() {
|
||||
}
|
||||
|
||||
public SignSideMap(T front, T back) {
|
||||
this.front = front;
|
||||
this.back = back;
|
||||
}
|
||||
|
||||
public T front() {
|
||||
return front;
|
||||
}
|
||||
|
||||
public T back() {
|
||||
return back;
|
||||
}
|
||||
|
||||
public T side(SignSide side) {
|
||||
return side == SignSide.BACK ? back : front;
|
||||
}
|
||||
|
||||
public void set(T front, T back) {
|
||||
this.front = front;
|
||||
this.back = back;
|
||||
}
|
||||
|
||||
public void setSide(SignSide side, T value) {
|
||||
if (side == SignSide.BACK) {
|
||||
back = value;
|
||||
} else {
|
||||
front = value;
|
||||
}
|
||||
}
|
||||
|
||||
public void setFront(T front) {
|
||||
this.front = front;
|
||||
}
|
||||
|
||||
public void setBack(T back) {
|
||||
this.back = back;
|
||||
}
|
||||
|
||||
public List<T> both() {
|
||||
return Arrays.asList(front, back);
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user