diff --git a/core/src/ru/deadsoftware/cavedroid/game/world/GameWorld.java b/core/src/ru/deadsoftware/cavedroid/game/world/GameWorld.java
index c038f1541d21822f90c122a75e30961dfee1fa40..d52b50f672039328773896ee12f11072949db368 100644 (file)
setMap(x, y, BACKGROUND_Z, block);
}
setMap(x, y, BACKGROUND_Z, block);
}
+ public boolean canPlaceToForeground(int x, int y, Block value) {
+ return !hasForeAt(x, y) || value == mGameItemsHolder.getFallbackBlock() || !getForeMap(x, y).hasCollision();
+ }
+
public boolean placeToForeground(int x, int y, Block value) {
public boolean placeToForeground(int x, int y, Block value) {
- if (!hasForeAt(x, y) || value == mGameItemsHolder.getFallbackBlock() || !getForeMap(x, y).hasCollision()) {
+ if (canPlaceToForeground(x, y, value)) {
setForeMap(x, y, value);
return true;
} else if (value instanceof Block.Slab && isSameSlab(value, getForeMap(x, y))) {
setForeMap(x, y, value);
return true;
} else if (value instanceof Block.Slab && isSameSlab(value, getForeMap(x, y))) {