void OnTriggerEnter2D(Collider2D col) { if (col.CompareTag("Phobia")) { GameObject projectile = col.transform.parent.gameObject; foreach (string phobiaType in PhobiasList) { PhobiaAI phobiaAI = projectile.GetComponent <PhobiaAI>(); if (phobiaAI.CanKill(phobiaType)) { if (!hasAPlayerDie) { if (projectileThrower.playerNumber == 1) { ScoreManager.player2Score++; } else { ScoreManager.player1Score++; } projectileThrower.DropProjectile(); playerMovement.SetCurrentState(PlayerMovement.PlayerState.DIE); } hasAPlayerDie = true; } } } }
public void DropProjectile() { if (projectile) { hasReleaseProjectileCatcherButton = false; scope.SetActive(false); PhobiaAI phobiaAI = projectile.GetComponent <PhobiaAI>(); phobiaAI.DropPhobia(); projectile = null; } }
public void setProjectile(GameObject proj) { if (!projectile) { projectile = proj; projectileRigidBody = projectile.GetComponent <Rigidbody2D> (); projectileRigidBody.velocity = Vector2.zero; PhobiaAI phobiaAI = projectile.GetComponent <PhobiaAI> (); phobiaAI.PlayWalkSound(); phobiaAI.GrabPhobia(); playerMovement.isHolding = true; } }
public void ThrowProjectile() { if (projectile) { int direction = playerMovement.IsWalkingLeft() ? -1 : 1; float ang = Mathf.Deg2Rad * scope.transform.rotation.eulerAngles.z; Vector2 vForce = new Vector2(direction * force * Mathf.Cos(ang), direction * force * Mathf.Sin(ang)); scope.SetActive(false); PhobiaAI phobiaAI = projectile.GetComponent <PhobiaAI> (); phobiaAI.PlayThrowSound(); phobiaAI.ThrowPhobia(vForce); hasReleaseProjectileCatcherButton = false; playerMovement.isHolding = false; projectile = null; } }