fix: fix terrible vector handling
This commit is contained in:
parent
e9b4bc5f58
commit
996addcaf8
@ -79,7 +79,9 @@ public class IntVector2 implements Serializable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public IntVector2 sub(int x, int y) {
|
public IntVector2 sub(int x, int y) {
|
||||||
return new IntVector2(this.x - x, this.y - y);
|
this.x -= x;
|
||||||
|
this.y -= y;
|
||||||
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public IntVector2 sub(IntVector2 v) {
|
public IntVector2 sub(IntVector2 v) {
|
||||||
|
@ -711,7 +711,7 @@ public class GameLogic {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for(IntVector2 dir: IntVector2.CardinalDirections) {
|
for(IntVector2 dir: IntVector2.CardinalDirections) {
|
||||||
IntVector2 pos = start.add(dir);
|
IntVector2 pos = start.copy().add(dir);
|
||||||
if(pos.getX() < 0 || pos.getX() >= state.mapSize.getX() || pos.getY() < 0 || pos.getY() >= state.mapSize.getY()) {
|
if(pos.getX() < 0 || pos.getX() >= state.mapSize.getX() || pos.getY() < 0 || pos.getY() >= state.mapSize.getY()) {
|
||||||
return options;
|
return options;
|
||||||
}
|
}
|
||||||
@ -721,7 +721,7 @@ public class GameLogic {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(options.size() == 0) {
|
if(options.size() == 0) {
|
||||||
return getFreeNeighbour(state, start.add(IntVector2.CardinalDirections[rand.nextInt(IntVector2.CardinalDirections.length)]));
|
return getFreeNeighbour(state, start.copy().add(IntVector2.CardinalDirections[rand.nextInt(IntVector2.CardinalDirections.length)]));
|
||||||
}else {
|
}else {
|
||||||
return options;
|
return options;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user