Exemple #1
0
    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();
        }
    }
Exemple #2
0
    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);
        }
    }
Exemple #3
0
    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);
//        }
    }
Exemple #4
0
 public void ChangeFormationOfCurrentPlayer(int FormationNumber)
 {
     TurnHandler.GetInstance().PlayerInTurn.FormationSetter(FormationNumber);
 }