Пример #1
0
 private void Start()
 {
     HeroAbility = HeroAbilities.instance.GenerateAbility(HeroAbilities.instance.GenerateSeed());
 }
Пример #2
0
        //cost

        //used for generating a random ability
        public AbilityBase GenerateAbility(string seed)
        {
            AbilityBase ability = new AbilityBase();

            //make sure that it is all uppercase
            seed = seed.ToLower();

            //seeds consist of 7 letters
            //effect; damage, heal
            if (seed.Length > 0)
            {
                for (int ability_number = 0; ability_number < seed.Length; ability_number++)
                {
                    //convert letter to int
                    int integer = ConvertAlphabetToInteger(seed[ability_number].ToString());

                    //loop for going through the alphabet
                    for (int number = 0; number < 27; number++)
                    {
                        if (integer == number)
                        {
                            switch (ability_number)
                            {
                            case 0:     //ability effect
                                Ability_effect = (AbilityEffect)number;
                                break;

                            case 1:     //ability target
                                Ability_target = (AbilityTarget)number;
                                break;

                            case 2:     //ability aoe
                                Ability_aoe = (AbilityAOE)number;
                                break;

                            case 3:     //strength
                                strength = number;
                                break;

                            case 4:     //duration
                                duration = number;
                                break;

                            case 5:     //delay
                                delay = number;
                                break;
                            }

                            //break out of loop
                            break;
                        }
                    }
                }

                ability = new AbilityBase(
                    Ability_effect,
                    Ability_target,
                    Ability_aoe,
                    strength,
                    duration,
                    delay
                    );

                /* Debug.Log(
                 * "Effect: " + ability.Ability_effect + "\n" +
                 * "Target: " + ability.Ability_target + "\n" +
                 * "AoE: " + ability.Ability_aoe + "\n" +
                 * "Strength: " + ability.strength + "\n" +
                 * "Duration: " + ability.duration + "\n" +
                 * "Delay: " + ability.delay
                 * );
                 */
            }

            return(ability);
        }