// Adds amount to the status effect. public override void ApplyStatusEffect(BattleManager.StatusEffectEnum status, int amount) { Debug.Log("Status effect applied: " + status.ToString() + " w/ power " + amount); if (statusEffects.ContainsKey(status)) { StatusEffectDataHolder x = statusEffects[status]; // we have the status effect. Add to it. x.EffectValue += amount; // If the value is <= 0, we need to remove it. if (x.EffectValue <= 0) { puim.RemoveStatusEffect(x); statusEffects.Remove(status); } } else { // We don't have the status effect. Add it. statusEffects.Add(status, puim.AddNewStatusEffect(status, amount)); } if (statusEffects.TryGetValue(status, out var val)) { Debug.Log("We now have " + val.EffectValue + " power"); } }