private void SmashPeg(Collider2D pegCollider, Rigidbody2D puckRigidBody) { Vector2 puckVelocity = puckRigidBody.velocity; puckVelocity.Normalize(); Vector2 impactVector = (Vector2)pegCollider.transform.position - puckVelocity; Vector2 impactDir = impactVector / impactVector.magnitude; Peg peg = pegCollider.gameObject.GetComponent <Peg>(); peg.Destroy(pegRespawnDelay); // TODO: Determine how to use pegBreakClip here }
void Update() { if (IsActive && Input.GetMouseButtonDown(0)) { RaycastHit2D hit = Physics2D.Raycast(Camera.main.ScreenToWorldPoint(Input.mousePosition), Vector2.zero); if (hit.collider != null && hit.collider.CompareTag(GameSettings.Instance.pegTag)) { Peg peg = hit.collider.GetComponent <Peg>(); Vector2 pegPosition = peg.transform.position; peg.Destroy(pegRespawnDelay); // handle explosion effect pegsExplodedCount++; if (pegsExplodedCount >= maxExplosionCount) { Deactivate(); } } } }