package ru.deadsoftware.cavedroid.game.actions.placeblock
+import ru.deadsoftware.cavedroid.game.GameItemsHolder
import ru.deadsoftware.cavedroid.game.GameScope
+import ru.deadsoftware.cavedroid.game.mobs.MobsController
import ru.deadsoftware.cavedroid.game.model.item.Item
import ru.deadsoftware.cavedroid.game.world.GameWorld
import javax.inject.Inject
class PlaceBlockItemToForegroundAction @Inject constructor(
private val gameWorld: GameWorld,
private val placeSlabAction: PlaceSlabAction,
+ private val gameItemsHolder: GameItemsHolder,
+ private val mobsController: MobsController,
) : IPlaceBlockAction {
override fun place(placeable: Item.Placeable, x: Int, y: Int) {
if (placeable.isSlab()) {
placeSlabAction.place(placeable, x, y)
} else {
- gameWorld.placeToForeground(x, y, placeable.block)
+ if (gameWorld.placeToForeground(x, y, placeable.block)) {
+ mobsController.player.decreaseCurrentItemCount(gameItemsHolder)
+ }
}
}