Add characteristic + common / special / magic skill to detail panel.
This commit is contained in:
parent
b6b135cd40
commit
b6d02c21be
28 changed files with 633 additions and 135 deletions
|
|
@ -4,6 +4,7 @@ import kotlinx.serialization.Serializable
|
|||
|
||||
@Serializable
|
||||
data class UpdateSkillUsageMessage(
|
||||
val characterId: String,
|
||||
val characterSheetId: String,
|
||||
val skillId: String,
|
||||
val used: Boolean,
|
||||
) : MessagePayload
|
||||
|
|
@ -89,16 +89,17 @@ class CharacterSheetUseCase {
|
|||
fun updateSkillUsage(
|
||||
character: CharacterSheet,
|
||||
skillId: String,
|
||||
used: Boolean,
|
||||
): CharacterSheet {
|
||||
return character.copy(
|
||||
commonSkills = character.commonSkills.map { skill ->
|
||||
skill.takeIf { skill.id == skillId }?.copy(used = skill.used.not()) ?: skill
|
||||
skill.takeIf { skill.id == skillId }?.copy(used = used) ?: skill
|
||||
},
|
||||
specialSkills = character.specialSkills.map { skill ->
|
||||
skill.takeIf { skill.id == skillId }?.copy(used = skill.used.not()) ?: skill
|
||||
skill.takeIf { skill.id == skillId }?.copy(used = used) ?: skill
|
||||
},
|
||||
magicSkills = character.magicSkills.map { skill ->
|
||||
skill.takeIf { skill.id == skillId }?.copy(used = skill.used.not()) ?: skill
|
||||
skill.takeIf { skill.id == skillId }?.copy(used = used) ?: skill
|
||||
},
|
||||
)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue