public void OnBulletHitPosition(Vector3 pos) { Vector3 explosionPos = pos; explosionPos = new Vector3(explosionPos.x, explosionPos.y, -0.001f); Collider[] colliders = Physics.OverlapSphere(explosionPos, radius); foreach (Collider hit in colliders) { Rigidbody rb = hit.GetComponent <Rigidbody>(); if (rb != null) { //rb.velocity = Vector3.zero; //rb.angularVelocity = Vector3.zero; rb.AddExplosionForce(power, explosionPos, radius, upward); DestroyableObject destroyableObject = rb.GetComponent <DestroyableObject>(); if (destroyableObject != null) { rb.useGravity = true; destroyableObject.StartSelfDestroy(); this.gameMgr.OnGotScore(GameUIMgr.GotScoreType.SCORE_10, destroyableObject.gameObject); } //Debug.Log("hit " + rb.gameObject.name); } } }