[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / game / actions / useitem / UseWaterBucketAction.kt
diff --git a/core/src/ru/deadsoftware/cavedroid/game/actions/useitem/UseWaterBucketAction.kt b/core/src/ru/deadsoftware/cavedroid/game/actions/useitem/UseWaterBucketAction.kt
index fecb77f51f0cf98db42187684a11b1758cac7f49..15e08fc77bd78962ec8fd6ccfd389a917cd66699 100644 (file)
package ru.deadsoftware.cavedroid.game.actions.useitem
-import ru.deadsoftware.cavedroid.game.GameItems
+import ru.deadsoftware.cavedroid.game.GameItemsHolder
import ru.deadsoftware.cavedroid.game.GameScope
import ru.deadsoftware.cavedroid.game.mobs.MobsController
-import ru.deadsoftware.cavedroid.game.objects.Item
+import ru.deadsoftware.cavedroid.game.model.item.Item
import ru.deadsoftware.cavedroid.game.world.GameWorld
import javax.inject.Inject
class UseWaterBucketAction @Inject constructor(
private val gameWorld: GameWorld,
private val mobsController: MobsController,
+ private val gameItemsHolder: GameItemsHolder,
) : IUseItemAction {
- override fun perform(item: Item, x: Int, y: Int) {
- gameWorld.placeToForeground(x, y, GameItems.getBlockId("water"))
- mobsController.player.setCurrentInventorySlotItem(GameItems.getItemId("bucket_empty"))
+ override fun perform(item: Item.Usable, x: Int, y: Int) {
+ gameWorld.placeToForeground(x, y, gameItemsHolder.getBlock("water"))
+ if (mobsController.player.gameMode != 1) {
+ mobsController.player.setCurrentInventorySlotItem(gameItemsHolder.getItem("bucket_empty"))
+ }
}
companion object {