X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fgame%2Factions%2Fplaceblock%2FPlaceBlockItemToBackgroundAction.kt;h=72583017e73e32dc4d6408e1dd216525d744508f;hb=456e76ce31c05500ab7d9e78e2b02019143929a4;hp=dd61e0bbd006e8a42112066df985328b51208203;hpb=476b65903ad1082a1847eb2a8076ab1039358790;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavedroid/game/actions/placeblock/PlaceBlockItemToBackgroundAction.kt b/core/src/ru/deadsoftware/cavedroid/game/actions/placeblock/PlaceBlockItemToBackgroundAction.kt index dd61e0b..7258301 100644 --- a/core/src/ru/deadsoftware/cavedroid/game/actions/placeblock/PlaceBlockItemToBackgroundAction.kt +++ b/core/src/ru/deadsoftware/cavedroid/game/actions/placeblock/PlaceBlockItemToBackgroundAction.kt @@ -1,17 +1,25 @@ 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 ru.deadsoftware.cavedroid.misc.annotations.multibinding.BindPlaceBlockAction import javax.inject.Inject @GameScope +@BindPlaceBlockAction(stringKey = PlaceBlockItemToBackgroundAction.ACTION_KEY) class PlaceBlockItemToBackgroundAction @Inject constructor( private val gameWorld: GameWorld, + private val gameItemsHolder: GameItemsHolder, + private val mobsController: MobsController, ) : IPlaceBlockAction { - override fun place(item: Item.Placeable, x: Int, y: Int) { - gameWorld.placeToBackground(x, y, item.block.params.id) + override fun place(placeable: Item.Placeable, x: Int, y: Int) { + if (gameWorld.placeToBackground(x, y, placeable.block)) { + mobsController.player.decreaseCurrentItemCount(gameItemsHolder) + } } companion object {