Example #1
0
    /// <summary>
    /// Returns dialogue text associated with the given progress type.
    /// </summary>
    /// <param name="typeArg"></param>
    /// <returns></returns>
    private string GetProgressTypeDialogueText(CharacterProgressionType typeArg)
    {
        switch (typeArg)
        {
        case CharacterProgressionType.Stamina:
            return("Health");

        case CharacterProgressionType.Strength:
            return("Weapon Damage");

        case CharacterProgressionType.Dexterity:
            return("Health");

        case CharacterProgressionType.AbilityProficiency:
            return("Ability Proficiency");

        default:
            // print warning to console
            Debug.LogWarning("Problem in GetProgressTypeDialogueText(), No case " +
                             $"for enum: {typeArg.ToString()}");

            // return some default value
            return(string.Empty);
        }
    }
    /// <summary>
    /// Improves character's stats/properties based on given progress values.
    /// </summary>
    /// <param name="progTypeArg"></param>
    /// <param name="progValueArg"></param>
    public void ImproveCharacterAttribute(CharacterProgressionType progTypeArg, float progValueArg)
    {
        // round value to int for cases that require an integer
        int progInt = Mathf.RoundToInt(progValueArg);

        switch (progTypeArg)
        {
        case CharacterProgressionType.Stamina:
            statStamina += progInt;
            break;

        default:
            // print warning to console
            Debug.LogWarning($"Unknown case for AddCharacterProgression(): {progTypeArg.ToString()}");
            break;
        }
    }
 private void Setup(SerializableDataCharacterProgressionTypeAndFloat templateArg)
 {
     typeValue  = templateArg.typeValue;
     floatValue = templateArg.floatValue;
 }
 private void Setup(CharacterProgressionType typeValueArg, float floatValueArg)
 {
     typeValue  = typeValueArg;
     floatValue = floatValueArg;
 }
 private void Setup()
 {
     typeValue  = CharacterProgressionType.None;
     floatValue = 0f;
 }
 public SerializableDataCharacterProgressionTypeAndFloat(
     CharacterProgressionType typeValueArg, float floatValueArg)
 {
     Setup(typeValueArg, floatValueArg);
 }