| 259 | } |
| 260 | |
| 261 | void StatusController::setPersistentEffects( |
| 262 | String const& statusEffectCategory, List<PersistentStatusEffect> const& effectList) { |
| 263 | if (effectList.empty()) { |
| 264 | if (auto groupId = m_persistentEffects[statusEffectCategory].modifierEffectsGroupId) |
| 265 | m_statCollection.removeStatModifierGroup(*groupId); |
| 266 | m_persistentEffects.remove(statusEffectCategory); |
| 267 | |
| 268 | updatePersistentUniqueEffects(); |
| 269 | } else { |
| 270 | auto& persistentEffectCategory = m_persistentEffects[statusEffectCategory]; |
| 271 | persistentEffectCategory.statModifiers.clear(); |
| 272 | persistentEffectCategory.uniqueEffects.clear(); |
| 273 | addPersistentEffects(statusEffectCategory, effectList); |
| 274 | } |
| 275 | } |
| 276 | |
| 277 | void StatusController::clearPersistentEffects(String const& statusEffectCategory) { |
| 278 | setPersistentEffects(statusEffectCategory, {}); |
no test coverage detected