/// <summary> /// ダメージの付与 /// </summary> /// <param name="target">対象</param> private void DealDamage(CharacterBehavior target) { float randomNumber = UnityEngine.Random.value; if (randomNumber <= criticalChance) { target.TakeDamage(damage * 2, GetComponent <Rigidbody2D>().velocity.normalized); GameObject damagePopup = Instantiate(damagePopupPrefab, transform.position, Quaternion.identity); damagePopup.GetComponent <DamagePopupBehaviour>().Initialize(damage * 2, true); GameManager.instance.DealDamage(damage * 2); } else { target.TakeDamage(damage, GetComponent <Rigidbody2D>().velocity.normalized); GameObject damagePopup = Instantiate(damagePopupPrefab, transform.position, Quaternion.identity); damagePopup.GetComponent <DamagePopupBehaviour>().Initialize(damage, false); GameManager.instance.DealDamage(damage); } }