Example #1
0
 public void AddPassive(ScriptableModifier passiveModifier)
 {
     if (!activePassiveModifiers.ContainsKey(passiveModifier))
     {
         Modifier passive = new Modifier(passiveModifier, characterBase);
         passive.IsPassive = true;
         passive.Apply(characterBase);
         activePassiveModifiers.Add(passiveModifier, passive);
     }
 }
Example #2
0
    public bool RemovePassive(ScriptableModifier passiveModifier)
    {
        if (activePassiveModifiers.ContainsKey(passiveModifier))
        {
            activePassiveModifiers[passiveModifier].Remove(characterBase);
            activePassiveModifiers.Remove(passiveModifier);
            return(true);
        }

        return(false);
    }
Example #3
0
    public bool RemovePassive(string passiveName)
    {
        ScriptableModifier modifierToRemove = null;

        foreach (var passiveModifier in activePassiveModifiers)
        {
            if (passiveModifier.Key.ModifierName == passiveName)
            {
                passiveModifier.Value.Remove(characterBase);
                modifierToRemove = passiveModifier.Key;
                break;
            }
        }

        if (modifierToRemove != null)
        {
            return(activePassiveModifiers.Remove(modifierToRemove));
        }

        return(false);
    }