Esempio n. 1
0
    public TriggerPhase Trigger(Player owner)
    {
        bool fireEvent = false;

        switch (m_type)
        {
        case TriggerType.Instant:
            if (m_currentPhase == TriggerPhase.Idle)
            {
                m_currentPhase = TriggerPhase.Ended;
                fireEvent      = true;
            }
            break;

        case TriggerType.OverTime:
            if (m_currentPhase == TriggerPhase.Idle)
            {
                m_currentPhase = TriggerPhase.Began;
                m_timer        = 0;
                fireEvent      = true;
            }
            else if (m_currentPhase == TriggerPhase.Began || m_currentPhase == TriggerPhase.InProgress)
            {
                m_currentPhase = TriggerPhase.InProgress;
                m_timer       += Time.deltaTime;
                if (m_timer >= m_duration)
                {
                    m_currentPhase = TriggerPhase.Ended;
                }
                fireEvent = true;
            }

            break;
        }


        if (fireEvent && OnTrigger != null)
        {
            OnTrigger(owner, m_currentPhase);
        }

        return(m_currentPhase);
    }
Esempio n. 2
0
 public Skills (int id,int groupID, string name, string description, RequiredStat statName, int statValue, RequiredWeapon weapon, 
                TriggerPhase phase, AnimationType animation, string location, bool projectile, float cost, float cd, bool interupt, int duration, float trigRate,
                float damage, float enemySTRate, int enemyST, float playerSTRate, int playerST,
                float damageUp, float strengthUp, float defenseUp, float speedUp, float intelligenceUp, float healthUp, 
                float hpUp, float hp5Up, float manaUp, float mpUp, float mp5Up, float crit, int knockback) {
     skillID = id;
     groupNumber = groupID;
     skillName = name;
     skillDescription = description;
     requiredStatName = statName;
     requiredStatValue = statValue;
     requiredWeapon = weapon;
     triggerPhase = phase;
     animationType = animation;
     locationInScene = location;
     projectileFired = projectile;
     manaCost = cost;
     cooldown = cd;
     interuptable = interupt;
     skillDuration = duration;
     triggerRate = trigRate;
     damageDelt = damage;
     enemyStateRate = enemySTRate;
     enemyStateInflicted = enemyST;
     playerStateRate = playerSTRate;
     playerStateInflicted = playerST;
     damageIncrease = damageUp;
     strengthincrease = strengthUp;
     defenseIncrease = defenseUp;
     speedIncrease = speedUp;
     intelligenceIncrease = intelligenceUp;
     healthIncrease = healthUp;
     hpIncrease = hpUp;
     hp5Increase = hp5Up;
     manaIncrease = manaUp;
     mpIncrease = mpUp;
     mp5Increase = mp5Up;
     critModifier = crit;
     knockbackForce = knockback;
 }
Esempio n. 3
0
 public void Complete()
 {
     m_currentPhase = TriggerPhase.Ended;
 }
Esempio n. 4
0
 public void Reset()
 {
     m_currentPhase = TriggerPhase.Idle;
     m_timer        = 0;
 }