Beispiel #1
0
        public static ICombatStat[] Create(ICharacteristicController characteristicController, ICombatStat[] combatStats)
        {
            combatStats[0] = new WarriorStat(CombatStatType.CriticalStrikeChance,
                                             characteristicController.Attributes.Agility,
                                             characteristicController.Attributes.NULL);

            combatStats[1] = new WarriorStat(CombatStatType.DodgeChance,
                                             characteristicController.Attributes.Agility,
                                             characteristicController.Attributes.NULL);

            combatStats[2] = new WarriorStat(CombatStatType.PhysicalDamage,
                                             characteristicController.Attributes.Strength,
                                             characteristicController.Attributes.Agility);

            combatStats[3] = new WarriorStat(CombatStatType.MagicalDamage,
                                             characteristicController.Attributes.Wisdom,
                                             characteristicController.Attributes.Agility);

            combatStats[4] = new WarriorStat(CombatStatType.MovementSpeed,
                                             characteristicController.Attributes.Agility,
                                             characteristicController.Attributes.NULL);

            combatStats[5] = new WarriorStat(CombatStatType.AttackSpeed,
                                             characteristicController.Attributes.Agility,
                                             characteristicController.Attributes.NULL);

            combatStats[6] = new WarriorStat(CombatStatType.PhysicalDefense,
                                             characteristicController.Attributes.Endurance,
                                             characteristicController.Attributes.Strength);

            combatStats[7] = new WarriorStat(CombatStatType.MagicDefense,
                                             characteristicController.Attributes.Wisdom,
                                             characteristicController.Attributes.NULL);

            combatStats[8] = new WarriorStat(CombatStatType.MaxHealth,
                                             characteristicController.Attributes.Endurance,
                                             characteristicController.Attributes.Strength);

            combatStats[9] = new WarriorStat(CombatStatType.Health_RegenerationRate,
                                             characteristicController.Attributes.Strength,
                                             characteristicController.Attributes.Wisdom);

            combatStats[10] = new WarriorStat(CombatStatType.M_E_F_Base,
                                              characteristicController.Attributes.Strength,
                                              characteristicController.Attributes.NULL);

            combatStats[11] = new WarriorStat(CombatStatType.M_E_F_RegenerationRate,
                                              characteristicController.Attributes.Agility,
                                              characteristicController.Attributes.Endurance);

            combatStats[12] = new WarriorStat(CombatStatType.Stamina_Base,
                                              characteristicController.Attributes.Endurance,
                                              characteristicController.Attributes.NULL);

            combatStats[13] = new WarriorStat(CombatStatType.Stamina_RegenerationRate,
                                              characteristicController.Attributes.Endurance,
                                              characteristicController.Attributes.NULL);

            return(combatStats);
        }
Beispiel #2
0
 void Start()
 {
     character = GetComponent <Character>();
     characteristicController = character.CharacteristicController;
     leagueType = character.CharacterSheet.League.LeagueType;
     primaryAttributeEffectiveness   = CharacteristicsManager.Instance.LeagueSettings[character.CharacterSheet.League.LeagueType].primaryAttributeGlobalModifier;
     secondaryAttributeEffectiveness = CharacteristicsManager.Instance.LeagueSettings[character.CharacterSheet.League.LeagueType].secondaryAttributeGlobalModifier;
 }
Beispiel #3
0
 public static ICombatStatsHandler Create(ICharacteristicController characteristicController, ICharacterLeague leagueType)
 {
     GenerateCombatStats(characteristicController, leagueType);
     if (_combatStats != null)
     {
         return(new CombatStatsHandler(_combatStats));
     }
     Logger.Say("Null list received by CharacterStatHandler Factory.");
     return(null);
 }
Beispiel #4
0
 public ICharacter Construct(ICharacteristicController characteristicController)
 {
     CharacteristicController = characteristicController;
     health     = new UnitHealth(this);
     gameobject = this.gameObject;
     CharacteristicController.Attributes.UpdateAttribute(AttributeType.Agility, 1);
     CharacteristicController.Attributes.UpdateAttribute(AttributeType.Strength, 1);
     CharacteristicController.Attributes.UpdateAttribute(AttributeType.Wisdom, 1);
     CharacteristicController.Attributes.UpdateAttribute(AttributeType.Endurance, 1);
     return(this);
 }
Beispiel #5
0
 public abstract ICombatStat[] GenerateCombatStats(ICharacteristicController characteristicController, ICombatStat[] emptyArrayToPopulate);
Beispiel #6
0
 private static void GenerateCombatStats(ICharacteristicController characteristicController, ICharacterLeague leagueType)
 {
     _combatStats = leagueType.GenerateCombatStats(characteristicController, _combatStats);
 }
Beispiel #7
0
 public override ICombatStat[] GenerateCombatStats(ICharacteristicController characteristicController, ICombatStat[] emptyArrayToPopulate)
 {
     return(RogueCombatStatFactory.Create(characteristicController, emptyArrayToPopulate));
 }