X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fgame%2Fworld%2FGameWorldBlocksLogicControllerTask.kt;h=e92b9e2ffb6f6278a01a2fe9d4d82c63454368a4;hb=0d6ab84418440a30f2de555cb30ce21af8dac12e;hp=f0f4af907499745719466741018db1abbc53f12a;hpb=1c004c0ce7e183e773b5b486295c25e39732e899;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavedroid/game/world/GameWorldBlocksLogicControllerTask.kt b/core/src/ru/deadsoftware/cavedroid/game/world/GameWorldBlocksLogicControllerTask.kt index f0f4af9..e92b9e2 100644 --- a/core/src/ru/deadsoftware/cavedroid/game/world/GameWorldBlocksLogicControllerTask.kt +++ b/core/src/ru/deadsoftware/cavedroid/game/world/GameWorldBlocksLogicControllerTask.kt @@ -26,9 +26,14 @@ class GameWorldBlocksLogicControllerTask @Inject constructor( private fun updateBlock(x: Int, y: Int) { val block = gameWorld.getForeMap(x, y) + + if (block.isNone()) { + return + } + val blockKey = block.params.key val action = updateBlockActions[blockKey] - ?: updateBlockActions.getRequiresBlockAction().takeIf { block.params.requiresBlock } + ?: updateBlockActions.getRequiresBlockAction().takeIf { block.params.run { requiresBlock || isFallable } } action?.update(x, y) }