private IEnumerator Attack(HpComponent component) { if (IsAttacking) { yield break; } Vector2 moveDirection = component.transform.position - transform.position; if (moveDirection != Vector2.zero) { float angle = Mathf.Atan2(moveDirection.y, moveDirection.x) * Mathf.Rad2Deg; transform.rotation = Quaternion.AngleAxis(angle, Vector3.forward); } IsAttacking = true; component.GetHit(Weapon.AttackDamage, gameObject); if (Weapon.SounfFX != null) { myAudioSource.clip = Weapon.SounfFX; myAudioSource.Play(); } yield return(new WaitForSeconds(Weapon.AttackCooldown)); IsAttacking = false; }
private void OnCollisionEnter2D(Collision2D collision) { HpComponent hpComponent = collision.gameObject.GetComponent <HpComponent>(); if (hpComponent != null) { hpComponent.Set(-1); } }
static public void SetHpComponentData(HpComponent hpComponent, int id) { hpComponent.baseMaxHp = float.Parse(ODSetting.hpTable[id]["baseMaxHp"]); hpComponent.ChangeMaxPoint(ODSetting.settingDic["maxHpAddedValue"], ODSetting.settingDic["maxHpRate"]); hpComponent.minMaxHp = ODSetting.settingDic["minMaxHp"]; hpComponent.maxMaxHp = ODSetting.settingDic["maxMaxHp"]; hpComponent.baseHpRecover = float.Parse(ODSetting.hpTable[id]["baseHpRecover"]); hpComponent.ChangePointRecover(ODSetting.settingDic["hpRecoverAddedValue"], ODSetting.settingDic["hpRecoverRate"]); }
private void Awake() { mySeeker = GetComponent <Seeker>(); myAttackComponent = GetComponent <AttackComponent>(); myRigidbody2D = GetComponent <Rigidbody2D>(); weaponRenderer.sprite = myAttackComponent.Weapon.ToolSprite; myTargets = new HashSet <GameObject>(); mySpriteRenderer = GetComponent <SpriteRenderer>(); myHpComponent = GetComponent <HpComponent>(); }
private void OnCollisionEnter2D(Collision2D collision) { GameObject collidedWith = collision.gameObject; HpComponent hpComponent = collidedWith.GetComponent <HpComponent>(); if (hpComponent != null) { if (!alreadyHit.Contains(collidedWith)) { alreadyHit.Add(collidedWith); hpComponent.Dec(dmgToDeal()); } } }
protected void Awake() { _hpComponent = GetComponent <HpComponent>(); }
protected void Awake() { _hpComponent = GetComponent<HpComponent>(); }
protected void Awake() { base.Awake(); hpComponent = GetComponent<HpComponent>(); armorComponent = GetComponent<ArmorComponent>(); }