Adds condition immunities to monster cards.

This commit is contained in:
2020-09-01 22:59:38 -07:00
committed by Tom Hicks
parent 94edc44044
commit 15973a79f0
4 changed files with 58 additions and 1 deletions

View File

@@ -81,6 +81,8 @@ public class MonsterFragment extends Fragment {
monster.addDamageType(new DamageType("necrotic", " (Vulnerable)", "v"));
monster.addDamageType(new DamageType("piercing", " (Resistant)", "r"));
monster.addDamageType(new DamageType("poison", " (Immune)", "i"));
// Condition Immunities
monster.addConditionImmunity("blinded");
// Challenge Rating
monster.setChallengeRating("*");
@@ -244,6 +246,19 @@ public class MonsterFragment extends Fragment {
}
});
final TextView monsterConditionImmunities = root.findViewById(R.id.condition_immunities);
monsterViewModel.getConditionImmunities().observe(getViewLifecycleOwner(), new Observer<String>() {
@Override
public void onChanged(String conditionImmunities) {
if (StringHelper.isNullOrEmpty(conditionImmunities)) {
monsterConditionImmunities.setVisibility(View.GONE);
} else {
monsterConditionImmunities.setVisibility(View.VISIBLE);
}
monsterConditionImmunities.setText(Html.fromHtml("<b>Condition Immunities</b> " + conditionImmunities));
}
});
return root;
}
}

View File

@@ -42,6 +42,8 @@ public class MonsterViewModel extends ViewModel {
mDamageResistances.setValue("");
mDamageImmunities = new MutableLiveData<>();
mDamageImmunities.setValue("");
mConditionImmunities = new MutableLiveData<>();
mConditionImmunities.setValue("");
}
private MutableLiveData<String> mName;
@@ -108,6 +110,10 @@ public class MonsterViewModel extends ViewModel {
public LiveData<String> getDamageImmunities() {
return mDamageImmunities;
}
private MutableLiveData<String> mConditionImmunities;
public LiveData<String> getConditionImmunities() {
return mConditionImmunities;
}
private Monster mMonster;
public void setMonster(Monster monster) {
@@ -128,6 +134,6 @@ public class MonsterViewModel extends ViewModel {
mDamageVulnerabilities.setValue(mMonster.getDamageVulnerabilitiesDescription());
mDamageResistances.setValue(mMonster.getDamageResistancesDescription());
mDamageImmunities.setValue(mMonster.getDamageImmunitiesDescription());
mConditionImmunities.setValue(mMonster.getConditionImmunitiesDescription());
}
}