X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fgame%2Factions%2Fplaceblock%2FPlaceBlockItemToForegroundAction.kt;h=22aafdd98e5c75a75aeb1a5fbc39c2317e5d5111;hb=90507ffd0b00f823f990a3e1eec84e623dde04c4;hp=1f74448ab60dfa012777121d6338e9787593fe9d;hpb=1c004c0ce7e183e773b5b486295c25e39732e899;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavedroid/game/actions/placeblock/PlaceBlockItemToForegroundAction.kt b/core/src/ru/deadsoftware/cavedroid/game/actions/placeblock/PlaceBlockItemToForegroundAction.kt index 1f74448..22aafdd 100644 --- a/core/src/ru/deadsoftware/cavedroid/game/actions/placeblock/PlaceBlockItemToForegroundAction.kt +++ b/core/src/ru/deadsoftware/cavedroid/game/actions/placeblock/PlaceBlockItemToForegroundAction.kt @@ -1,6 +1,8 @@ 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 @@ -8,10 +10,19 @@ import javax.inject.Inject @GameScope 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) { - gameWorld.placeToForeground(x, y, placeable.block) + if (placeable.isSlab()) { + placeSlabAction.place(placeable, x, y) + } else { + if (gameWorld.placeToForeground(x, y, placeable.block)) { + mobsController.player.decreaseCurrentItemCount(gameItemsHolder) + } + } } companion object {