private void CheckInput() { float missedShot = 0.0f; if (shotMade && InputMgr.IsAnyResetButtonDown()) { ball.gameObject.transform.SetPositionAndRotation(ballStartPosition, Quaternion.identity); ballRb.velocity = Vector3.zero; goalkeeper.gameObject.transform.SetPositionAndRotation(goalkeeperStartPosition, Quaternion.identity); goalkeeper.gameObject.transform.Rotate(Vector3.up, 180.0f); shotForce = minShotForce; wallCollider.enabled = false; joy1Shooting = !joy1Shooting; goalScored = false; shotMade = false; if (!joy1Shooting && shotMade) { round++; } } if (InputMgr.IsShotButtonHeld(joy1Shooting)) { shotForce += 0.15f; if (shotForce > maxShotForce) { shotForce = maxShotForce; } } if (InputMgr.IsShotButtonUp(joy1Shooting)) { Vector3 shotVector; Vector3 saveVector; String footballerHorizontal; String footballerVertical; String goalkeeperHorizontal; String goalkeeperVertical; shotMade = true; if (shotForce > maxGoalShotForce) { missedShot = (shotForce - maxGoalShotForce) / 10.0f; if (missedShot < 0.1f) { missedShot = 0.1f; } } if (joy1Shooting) { footballerHorizontal = InputMgr.Joy1Horizontal; footballerVertical = InputMgr.Joy1Vertical; goalkeeperHorizontal = InputMgr.Joy2Horizontal; goalkeeperVertical = InputMgr.Joy2Vertical; } else { footballerHorizontal = InputMgr.Joy2Horizontal; footballerVertical = InputMgr.Joy2Vertical; goalkeeperHorizontal = InputMgr.Joy1Horizontal; goalkeeperVertical = InputMgr.Joy1Vertical; } shotVector = FootballerAction(footballerHorizontal, footballerVertical, missedShot); ballRb.AddForce(shotVector * shotForce, ForceMode.Impulse); saveVector = GoalkeeperAction(goalkeeperHorizontal, goalkeeperVertical); goalkeeperRb.AddForce(saveVector * 250.0f, ForceMode.Impulse); } }