Example #1
0
    public void UpdateStats()
    {
        currentStats.UpdateStats();

        currentStats.Battle.range        = Stats.Battle.range;
        currentStats.Battle.dmg_dice     = Stats.Battle.dmg_dice;
        currentStats.Equipment.itemsSlot = Stats.Equipment.itemsSlot;
        currentStats.Equipment.bagSlot   = Stats.Equipment.bagSlot;
        Equipment.ItemSlots.Capacity(currentStats.Equipment.itemsSlot + 1);
        Equipment.Backpack.Capacity((currentStats.Equipment.bagSlot + 1) * 3);
        currentStats = CharacterFunctions.CalculateBase(currentStats, Stats.Base);
        currentStats = CharacterFunctions.CalculateAbility(currentStats, Stats.Ability);
        currentStats = CharacterFunctions.CalculateResistance(currentStats, Stats.Resistance);
        currentStats = CharacterFunctions.CalculateOther(currentStats, Stats.Other);
        currentStats = CharacterFunctions.CalculateBattle(currentStats, Stats.Battle);
        currentStats = CharacterFunctions.CalculateEquipment(currentStats, Equipment);
        currentStats = CharacterFunctions.CalculateTraits(currentStats, Traits);
        currentStats = CharacterFunctions.CalculateStates(currentStats, Effects);
        currentStats = CharacterFunctions.CalculateBaseBonus(currentStats, Equipment);
        currentStats = CharacterFunctions.CalculateBattleBonus(currentStats, Equipment, Stats);

        Precent_Stats = CharacterFunctions.PrecentCalculate(Traits, Effects);

        currentStats = CharacterFunctions.Precent(currentStats, Precent_Stats);
        currentStats = CharacterFunctions.Calculate_HpMp(currentStats);
    }
Example #2
0
 public static CharacterStats Precent(CharacterStats current, Precent_Stats precent)
 {
     current = PrecentBase(current, precent.Base);
     current = PrecentBattle(current, precent.Battle);
     current = PrecentOther(current, precent.Other);
     return(current);
 }
Example #3
0
    //Skills

    #region Functions

    public void UpdateStats()
    {
        currentStats.UpdateStats();

        currentStats.Battle.range        = StaticValues.Races.Races[Actor.Race].Stats.Battle.range;
        currentStats.Battle.dmg_dice     = StaticValues.Races.Races[Actor.Race].Stats.Battle.dmg_dice + StaticValues.Classes.Classes[Actor.Class].Stats.Battle.dmg_dice;
        currentStats.Equipment.itemsSlot = Stats.Equipment.itemsSlot;
        currentStats.Equipment.bagSlot   = Stats.Equipment.bagSlot;
        Equipment.ItemSlots.Capacity(currentStats.Equipment.itemsSlot + 1);
        Equipment.Backpack.Capacity((currentStats.Equipment.bagSlot + 1) * 3);

        currentStats = CharacterFunctions.CalculateBase(currentStats, Stats.Base);
        currentStats = CharacterFunctions.CalculateBase(currentStats, Actor.Stats.Base);
        currentStats = CharacterFunctions.CalculateBase(currentStats, StaticValues.Races.Races[Actor.Race].Stats.Base);
        currentStats = CharacterFunctions.CalculateBase(currentStats, StaticValues.Classes.Classes[Actor.Class].Stats.Base);

        currentStats = CharacterFunctions.CalculateAbility(currentStats, Stats.Ability);
        currentStats = CharacterFunctions.CalculateAbility(currentStats, Actor.Stats.Ability);
        currentStats = CharacterFunctions.CalculateAbility(currentStats, StaticValues.Races.Races[Actor.Race].Stats.Ability);
        currentStats = CharacterFunctions.CalculateAbility(currentStats, StaticValues.Classes.Classes[Actor.Class].Stats.Ability);

        currentStats = CharacterFunctions.CalculateResistance(currentStats, Stats.Resistance);
        currentStats = CharacterFunctions.CalculateResistance(currentStats, Actor.Stats.Resistance);
        currentStats = CharacterFunctions.CalculateResistance(currentStats, StaticValues.Races.Races[Actor.Race].Stats.Resistance);
        currentStats = CharacterFunctions.CalculateResistance(currentStats, StaticValues.Classes.Classes[Actor.Class].Stats.Resistance);

        currentStats = CharacterFunctions.CalculateOther(currentStats, Stats.Other);
        currentStats = CharacterFunctions.CalculateOther(currentStats, Actor.Stats.Other);
        currentStats = CharacterFunctions.CalculateOther(currentStats, StaticValues.Races.Races[Actor.Race].Stats.Other);
        currentStats = CharacterFunctions.CalculateOther(currentStats, StaticValues.Classes.Classes[Actor.Class].Stats.Other);

        currentStats = CharacterFunctions.CalculateBattle(currentStats, Stats.Battle);
        currentStats = CharacterFunctions.CalculateBattle(currentStats, Actor.Stats.Battle);
        currentStats = CharacterFunctions.CalculateBattle(currentStats, StaticValues.Races.Races[Actor.Race].Stats.Battle);
        currentStats = CharacterFunctions.CalculateBattle(currentStats, StaticValues.Classes.Classes[Actor.Class].Stats.Battle);

        HpMpIncreaseByLvl();

        currentStats = CharacterFunctions.CalculateEquipment(currentStats, Equipment);

        currentStats = CharacterFunctions.CalculateTraits(currentStats, Traits);
        currentStats = CharacterFunctions.CalculateStates(currentStats, Effects);

        currentStats = CharacterFunctions.CalculateBaseBonus(currentStats, Equipment);
        currentStats = CharacterFunctions.CalculateBattleBonus(currentStats, Equipment, Actor);

        Precent_Stats = CharacterFunctions.PrecentCalculate(Traits, Effects);

        currentStats = CharacterFunctions.Precent(currentStats, Precent_Stats);

        currentStats = CharacterFunctions.Calculate_HpMp(currentStats);//Finish Function
    }
Example #4
0
    public CharacterAi(CharacterAi character)
    {
        Name  = character.Name;
        Stats = new Stats();
        Stats.AddStats(character.Stats);
        Equipment = character.Equipment;
        Exp       = character.Exp;
        Traits    = new List <int>(character.Traits);

        currentStats  = new CharacterStats();
        Precent_Stats = new Precent_Stats();
        Effects       = new List <Effect>();
    }
Example #5
0
    public static Precent_Stats PrecentCalculate(List <int> Traits, List <Effect> Effects)
    {
        Precent_Stats precent_Stats = new Precent_Stats();

        for (int i = 0; i < Traits.Count; i++)
        {
            precent_Stats = PrecentSummary(precent_Stats, StaticValues.Traits.Traits[Traits[i]].Precent_Stats);
        }
        for (int i = 0; i < Effects.Count; i++)
        {
            precent_Stats = PrecentSummary(precent_Stats, Effects[i].Precent_Stats);
        }
        return(precent_Stats);
    }
Example #6
0
    void PrecentSummary(Precent_Stats stat)
    {
        Precent_Stats.Base.agility      += stat.Base.agility;
        Precent_Stats.Base.charisma     += stat.Base.charisma;
        Precent_Stats.Base.intelligence += stat.Base.intelligence;
        Precent_Stats.Base.perception   += stat.Base.perception;
        Precent_Stats.Base.strength     += stat.Base.strength;
        Precent_Stats.Base.willpower    += stat.Base.willpower;

        Precent_Stats.Battle.armor_magicial += stat.Battle.armor_magicial;
        Precent_Stats.Battle.armor_phisical += stat.Battle.armor_phisical;
        Precent_Stats.Battle.dmg            += stat.Battle.dmg;
        Precent_Stats.Battle.iniciative     += stat.Battle.iniciative;
        Precent_Stats.Battle.move           += stat.Battle.move;

        Precent_Stats.Other.hp += stat.Other.hp;
        Precent_Stats.Other.mp += stat.Other.mp;
    }
Example #7
0
    public static Precent_Stats PrecentSummary(Precent_Stats precent_Stats, Precent_Stats stat)
    {
        precent_Stats.Base.agility      += stat.Base.agility;
        precent_Stats.Base.charisma     += stat.Base.charisma;
        precent_Stats.Base.intelligence += stat.Base.intelligence;
        precent_Stats.Base.perception   += stat.Base.perception;
        precent_Stats.Base.strength     += stat.Base.strength;
        precent_Stats.Base.willpower    += stat.Base.willpower;

        precent_Stats.Battle.armor_magicial += stat.Battle.armor_magicial;
        precent_Stats.Battle.armor_phisical += stat.Battle.armor_phisical;
        precent_Stats.Battle.dmg            += stat.Battle.dmg;
        precent_Stats.Battle.iniciative     += stat.Battle.iniciative;
        precent_Stats.Battle.move           += stat.Battle.move;

        precent_Stats.Other.hp += stat.Other.hp;
        precent_Stats.Other.mp += stat.Other.mp;
        return(precent_Stats);
    }