private void move() { physVel.x = getMoveVel(values.getDirectionalX()); float increasedFall = getIncreasedFallVell(values.getDirectionalY()); values.grounded = checkGrounded(); if (values.grounded) { values.jumps = 0; } else { _rigidbody.AddForce(-Vector3.up * (values.fallVel)); } // jumpS if (values.getJumps() == PlayerValues.inputState.Jump) { if (values.jumps < values.maxJumps) { values.jumps += 1; _rigidbody.velocity = new Vector2(physVel.x, values.jumpVel); } } // actually move the player _rigidbody.velocity = new Vector2(physVel.x, _rigidbody.velocity.y * increasedFall); }