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=c515330d8b51261d55249ab746b25c0c2f2ea3fb;hpb=6a71a9abc5bc34547c0e4bea7ab19a6bee628a3c;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 c515330..e92b9e2 100644 --- a/core/src/ru/deadsoftware/cavedroid/game/world/GameWorldBlocksLogicControllerTask.kt +++ b/core/src/ru/deadsoftware/cavedroid/game/world/GameWorldBlocksLogicControllerTask.kt @@ -25,10 +25,15 @@ class GameWorldBlocksLogicControllerTask @Inject constructor( } private fun updateBlock(x: Int, y: Int) { - val block = gameWorld.getForeMapBlock(x, y) + 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) }