private void OnCollisionEnter2D(Collision2D other) { var force = BallRigidbody.velocity * 8; var wallforce = 50f; if (other.gameObject.CompareTag("hands") || other.gameObject.CompareTag("wall")) { var dir = other.contacts[0].point - (Vector2)transform.position; dir = -dir.normalized; GetComponent <Rigidbody2D>().WakeUp(); GetComponent <Rigidbody2D>().AddForce(dir * force); Debug.Log("touched " + other.gameObject.tag + " with force " + dir); } else if (other.gameObject.CompareTag("insidePost")) { if (GoalCounted) //so that the goal is not counted on every collision { return; } TouchHandler.GetInstance().HasReleasedShot = false; TurnHandler.GetInstance().PlayerInTurn .CountOfGoal(other.gameObject); TurnHandler.GetInstance().PlayerNotInTurn .CountOfGoal(other.gameObject); //for goaled or ownGoaled UIHandler.GetInstance().Goaled(TurnHandler.GetInstance().GoaledPlayer == TurnHandler.GetInstance().PlayerInTurn); GoalCounted = true; TurnHandler.GetInstance().CanChangeTurn = true; TurnHandler.GetInstance().ChangeTurn(); } }
public void CountOfGoal(GameObject post) { // ReSharper disable once SuspiciousTypeConversion.Global if (MyPost.transform != null && post != MyPost.transform.GetChild(1).gameObject) { Debug.Log("Not my Post i am player " + PlayerName); MyPost.gameObject.transform.GetChild(0) .GetComponent <BoxCollider2D>().enabled = true; //ball lai bahira jana nadina post ko barrier on gareko TurnHandler.GetInstance().GoaledPlayer = gameObject.GetComponent <PlayerScript>(); IncreaseScore(); } else { Debug.Log("My Post i am player " + PlayerName); } }
private void Update() { MySpeed = TouchHandler.GetInstance().RigidBodyBall.velocity.magnitude; if (MySpeed < 0.2f) { BallRigidbody.Sleep(); if (TouchHandler.GetInstance().HasReleasedShot) { TurnHandler.GetInstance().CanChangeTurn = true; TouchHandler.GetInstance().IsInTouch = false; TurnHandler.GetInstance().ChangeTurn(); } } // if (gameObject.GetComponent<CircleCollider2D>().CompareTag("hands")) // { // BallRigidbody.AddTorque(Pole.GetInstance().Arms.transform.rotation.y); // } }
public void ChangeFormationOfCurrentPlayer(int FormationNumber) { TurnHandler.GetInstance().PlayerInTurn.FormationSetter(FormationNumber); }