Esempio n. 1
0
    void OnTriggerEnter(Collider other)
    {
        if (mAttackActionInfo == null)
        {
            return;
        }

        if (other.gameObject == mOwner.gameObject)
        {
            return;
        }

        HitCollider hitObj = other.gameObject.GetComponent <HitCollider>();

        if (hitObj == null)
        {
            return;
        }

        CharacterProperty character = hitObj.mOwner;

        if (character)
        {
            float hitTime = Time.time - t;

            character.Hit(mOwner, mAttackActionInfo.value);
            //character.HitRate
            GameObject hitEffect = Instantiate(Resources.Load("Effects/Hits/SimpleHitFlash"), CheckCollider.ClosestPointOnBounds(other.transform.position), Quaternion.identity) as GameObject;
            Destroy(hitEffect, 3.0f);

            mAttackActionInfo     = null;
            CheckCollider.enabled = false;
        }
    }
Esempio n. 2
0
    protected override void Execute(CharacterProperty target)
    {
        int t = Mathf.FloorToInt(LivedTime);

        if (t != damageTime)
        {
            target.Hit(target, mDPS);
            damageTime = t;
        }
    }