Beispiel #1
0
    public override void Combo2Damage()
    {
        Vector3        pos        = RotateAngle == 0.0f ? gameObject.transform.position + Vector3.right : gameObject.transform.position + Vector3.left;
        GameObject     TriggerObj = Instantiate <GameObject>(CResourceMgr.LoadTrigger("DamageCircleTrigger"), pos, Quaternion.identity);
        CDamageTrigger Trigger    = TriggerObj.GetComponent <CDamageTrigger>();

        Trigger.Owner = gameObject;
        CCombo1Ani ani = gameObject.GetComponentInChildren <CCombo1Ani>();

        Trigger.HitMove   = ani.HitMove;
        Trigger.AliveTime = 0.1f;
        Trigger.Damage    = 10;
        Trigger.ApplyAliveTime();
        Trigger.HitAniType = EHitAniType.Type2;
        SoundMgr.PlaySound("Attack2", ESoundType.Motion);
    }
Beispiel #2
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        string Tag = collision.gameObject.tag;

        if (Tag == "DamageTrigger")
        {
            CDamageTrigger DamageTrigger = collision.gameObject.GetComponent <CDamageTrigger>();
            Hit(DamageTrigger.Damage);
        }
        else if (Tag == "PlayerCharacter" || Tag == "EnemyCharacter")
        {
            CBaseCharacter Character = collision.gameObject.GetComponent <CBaseCharacter>();
            Character.Stop();
            collision.gameObject.transform.position = Character.PrePos;
        }
    }
Beispiel #3
0
    public void Hit(int Damage)
    {
        HP -= Damage;
        if (HP < DefaultHP / 2)
        {
            SpriteRender.sprite = NextSprites[0];

            Vector3        pos        = gameObject.transform.position;
            GameObject     TriggerObj = Instantiate <GameObject>(CResourceMgr.LoadTrigger("TrapDamageTrigger"), pos, Quaternion.identity);
            CDamageTrigger Trigger    = TriggerObj.GetComponent <CDamageTrigger>();
            Trigger.Owner     = gameObject;
            Trigger.HitMove   = 0.2f;
            Trigger.AliveTime = 0.5f;
            Trigger.Damage    = 10;
            Trigger.ApplyAliveTime();

            Invoke("EndSprite", 0.5f);
        }
    }