Example #1
0
    //Character gains a light injury that will go away after some time
    void MinorInjury(float roll)
    {
        Injury newInjury = gameObject.AddComponent <Injury>();

        newInjury.Victim   = GetComponent <RPGClass>();
        newInjury.Severity = Injury.InjuryLevel.Minor;
        newInjury.Name     = newInjury.Severity.ToString() + ": " + roll;

        if (newInjury.Victim != null)
        {
            newInjury.AffectedStats = new Injury.StatPenalty[2]
            {
                new Injury.StatPenalty(RPGClass.Stat.Strength, -1),
                new Injury.StatPenalty(RPGClass.Stat.Magic, -1)
            };
            newInjury.ApplyDebuff();
        }
    }
Example #2
0
    //Character gains a permanent injury
    void PermanentInjury(float roll)
    {
        Injury newInjury = gameObject.AddComponent <Injury>();

        newInjury.Victim   = GetComponent <RPGClass>();
        newInjury.Severity = Injury.InjuryLevel.Permanent;
        newInjury.Name     = newInjury.Severity.ToString() + ": " + roll;

        if (newInjury.Victim != null)
        {
            newInjury.AffectedStats = new Injury.StatPenalty[3]
            {
                new Injury.StatPenalty(RPGClass.Stat.Speed, -2),
                new Injury.StatPenalty(RPGClass.Stat.Skill, -2),
                new Injury.StatPenalty(RPGClass.Stat.Move, -1)
            };
            newInjury.ApplyDebuff();
        }
    }