Adds damage immunities to the monster editor.

This commit is contained in:
2021-03-22 18:00:40 -07:00
parent c8f18a00dd
commit 09a16c85b7
2 changed files with 10 additions and 0 deletions

View File

@@ -51,6 +51,7 @@ class MonsterViewModel: ObservableObject {
@Published var charismaSavingThrowProficiency: ProficiencyType
@Published var charismaSavingThrowAdvantage: AdvantageType
@Published var skills: [SkillViewModel]
@Published var damageImmunities: [DamageTypeViewModel]
@Published var conditionImmunities: [DamageTypeViewModel]
init(_ rawMonster: Monster?) {
@@ -93,6 +94,7 @@ class MonsterViewModel: ObservableObject {
self.charismaSavingThrowAdvantage = .none
self.charismaSavingThrowProficiency = .none
self.skills = []
self.damageImmunities = []
self.conditionImmunities = []
if (rawMonster != nil) {
@@ -141,6 +143,10 @@ class MonsterViewModel: ObservableObject {
self.charismaSavingThrowAdvantage = monster.charismaSavingThrowAdvantageEnum
self.charismaSavingThrowProficiency = monster.charismaSavingThrowProficiencyEnum
self.skills = (monster.skills?.allObjects.map {SkillViewModel(($0 as! Skill))})!.sorted()
self.damageImmunities = monster.damageImmunitiesArray
.map {DamageTypeViewModel($0)}
.sorted()
self.conditionImmunities = monster.conditionImmunitiesArray
.map {DamageTypeViewModel($0)}

View File

@@ -44,6 +44,10 @@ struct EditMonster: View {
"Skills",
destination: EditSkills(monsterViewModel: monsterViewModel))
NavigationLink(
"Damage Immunities",
destination: EditDamageTypes(viewModel: monsterViewModel, path: \.damageImmunities))
NavigationLink(
"Condition Immunities",
destination: EditDamageTypes(viewModel: monsterViewModel, path: \.conditionImmunities))