X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fgame%2Fmodel%2Fmapper%2FItemMapper.kt;h=4d6d5512276af372e5be34f0acacfd98e92dd708;hb=f34df6e5eb1052467333f1461c67e75b21eb0d95;hp=6bcad04d5c454e0f516526d3abb3c8a4c5b7582f;hpb=a21a93fd9fa33adebe52d1f4478866dcc3b66d96;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavedroid/game/model/mapper/ItemMapper.kt b/core/src/ru/deadsoftware/cavedroid/game/model/mapper/ItemMapper.kt index 6bcad04..4d6d551 100644 --- a/core/src/ru/deadsoftware/cavedroid/game/model/mapper/ItemMapper.kt +++ b/core/src/ru/deadsoftware/cavedroid/game/model/mapper/ItemMapper.kt @@ -9,11 +9,14 @@ import ru.deadsoftware.cavedroid.game.model.item.CommonItemParams import ru.deadsoftware.cavedroid.game.model.item.Item import ru.deadsoftware.cavedroid.game.model.item.Item.* import ru.deadsoftware.cavedroid.misc.Assets +import ru.deadsoftware.cavedroid.misc.utils.AssetLoader import ru.deadsoftware.cavedroid.misc.utils.SpriteOrigin import javax.inject.Inject @Reusable -class ItemMapper @Inject constructor() { +class ItemMapper @Inject constructor( + private val assetLoader: AssetLoader, +) { fun map(key: String, dto: ItemDto, block: Block?, slabTopBlock: Block.Slab?, slabBottomBlock: Block.Slab?): Item { val params = mapCommonParams(key, dto) @@ -40,7 +43,8 @@ class ItemMapper @Inject constructor() { inHandSpriteOrigin = SpriteOrigin( x = dto.originX, y = dto.origin_y, - ) + ), + maxStack = dto.maxStack, ) } @@ -49,7 +53,8 @@ class ItemMapper @Inject constructor() { return null } - return Sprite(Assets.itemTextures[dto.texture]) + val texture = Assets.resolveItemTexture(assetLoader, dto.texture) + return Sprite(texture) .apply { flip(false, true) } }