DEADSOFTWARE

f65bcc65f4ef6c3a70a9bd0001b8b012364a7917
[cavedroid.git] /
1 package ru.fredboy.cavedroid.game.controller.mob.factory
2
3 import ru.fredboy.cavedroid.common.di.GameScope
4 import ru.fredboy.cavedroid.common.utils.px
5 import ru.fredboy.cavedroid.domain.items.model.block.Block
6 import ru.fredboy.cavedroid.entity.mob.model.FallingBlock
7 import ru.fredboy.cavedroid.game.controller.mob.MobController
8 import ru.fredboy.cavedroid.game.controller.mob.behavior.FallingBlockMobBehavior
9 import javax.inject.Inject
10
11 @GameScope
12 class FallingBlockFactory @Inject constructor(
13 private val mobController: MobController,
14 ) {
15
16 fun create(x: Int, y: Int, block: Block): FallingBlock {
17 val fallingBlock = FallingBlock(
18 block = block,
19 x = x.px,
20 y = y.px,
21 behavior = FallingBlockMobBehavior(),
22 )
23
24 mobController.addMob(fallingBlock)
25
26 return fallingBlock
27 }
28
29 }