Пример #1
0
    public RecoveryCooldown(float cooldown, Ability parentAbility, AbilityRecoveryManager manager) : base(parentAbility, manager)
    {
        Stats = new StatCollection(ParentAbility.Source, OnStatChanged);
        Stats.AddStat(BaseStat.StatType.CoolDown, cooldown);

        coolDownTimer = new Timer("Cooldown", cooldown, true, Refresh);
    }
Пример #2
0
    public Ability(AbilityData data, GameObject source)
    {
        abilityData     = data;
        AbilityID       = IDFactory.GenerateAbilityID();
        Source          = source;
        EffectManager   = new EffectManager(this);
        RecoveryManager = new AbilityRecoveryManager(this);

        useTimer = new Timer("Use Timer", UseDuration, true, PopUseTimer);
        SetUpAbilityData();
    }
Пример #3
0
    private void DrawRecoveryMethod(AbilityRecoveryManager entry, Constants.SpecialAbilityRecoveryType recoveryType)
    {
        switch (recoveryType)
        {
        case Constants.SpecialAbilityRecoveryType.Timed:
            entry.recoveryCooldown.cooldown     = EditorGUILayout.FloatField("Cooldown", entry.recoveryCooldown.cooldown);
            entry.recoveryCooldown.recoveryType = Constants.SpecialAbilityRecoveryType.Timed;
            break;
        }



        //if (entry is RecoveryCooldown) {
        //    RecoveryCooldown cooldown = entry as RecoveryCooldown;
        //    cooldown.cooldown = EditorGUILayout.FloatField("Cooldown", cooldown.cooldown);
        //}
    }
Пример #4
0
    public Ability(AbilityData data, GameObject source, List <AbilityData> sequenceData = null, Ability parent = null)
    {
        abilityData     = data;
        AbilityID       = IDFactory.GenerateAbilityID();
        Source          = source;
        EffectManager   = new EffectManager(this);
        RecoveryManager = new AbilityRecoveryManager(this);
        ParentAbility   = parent;


        SetUpAbilityData();
        SetupAbilitySequences(sequenceData);


        useTimer = new Timer(UseDuration, PopUseTimer, true, "Use");

        GameManager.RegisterAbility(this);
    }
Пример #5
0
 public AbilityRecovery(Ability parentAbility, AbilityRecoveryManager manager)
 {
     //IsReady = true;
     this.ParentAbility = parentAbility;
     this.manager       = manager;
 }