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); }
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; } }
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); } }