X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fgame%2Fmodel%2Fmapper%2FItemMapper.kt;h=a0949a05d2c082c427cb6ccec26524c6a87a047c;hb=6bb7e1d207c640ff3b8e41ce2fb1c6203985bdb1;hp=4d6d5512276af372e5be34f0acacfd98e92dd708;hpb=409a22b3fe7c43b7f686f33cc2f01b6277edec78;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 4d6d551..a0949a0 100644 --- a/core/src/ru/deadsoftware/cavedroid/game/model/mapper/ItemMapper.kt +++ b/core/src/ru/deadsoftware/cavedroid/game/model/mapper/ItemMapper.kt @@ -11,6 +11,7 @@ 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 ru.deadsoftware.cavedroid.misc.utils.colorFromHexString import javax.inject.Inject @Reusable @@ -22,7 +23,8 @@ class ItemMapper @Inject constructor( val params = mapCommonParams(key, dto) return when (dto.type) { - "bucket" -> Bucket(params, requireNotNull(loadSprite(dto)), requireNotNull(dto.actionKey)) + "normal" -> Normal(params, requireNotNull(loadSprite(dto))) + "usable" -> Usable(params, requireNotNull(loadSprite(dto)), requireNotNull(dto.actionKey)) "shovel" -> Shovel(params, requireNotNull(loadSprite(dto)), dto.mobDamageMultiplier, dto.blockDamageMultiplier, requireNotNull(dto.toolLevel)) "sword" -> Sword(params, requireNotNull(loadSprite(dto)), dto.mobDamageMultiplier, dto.blockDamageMultiplier, requireNotNull(dto.toolLevel)) "pickaxe" -> Pickaxe(params, requireNotNull(loadSprite(dto)), dto.mobDamageMultiplier, dto.blockDamageMultiplier, requireNotNull(dto.toolLevel)) @@ -37,7 +39,6 @@ class ItemMapper @Inject constructor( private fun mapCommonParams(key: String, dto: ItemDto): CommonItemParams { return CommonItemParams( - id = dto.id, key = key, name = dto.name, inHandSpriteOrigin = SpriteOrigin( @@ -45,6 +46,8 @@ class ItemMapper @Inject constructor( y = dto.origin_y, ), maxStack = dto.maxStack, + burningTimeMs = dto.burningTime, + smeltProductKey = dto.smeltProduct, ) } @@ -55,7 +58,12 @@ class ItemMapper @Inject constructor( val texture = Assets.resolveItemTexture(assetLoader, dto.texture) return Sprite(texture) - .apply { flip(false, true) } + .apply { + flip(false, true) + dto.tint?.let { + color = colorFromHexString(it) + } + } } } \ No newline at end of file