@Override
    public void update(float dt) {
        if (speed.x > 0) {
            speed.x -= drag;
        } else if (speed.x < 0) {
            speed.x += drag;
        }

        if (Math.abs(speed.x) <= drag / 2f) {
            speed.x = 0;
        }

        speed.y -= universe.gravity;

        if (Math.abs(speed.x) > topSpeed.x) {
            speed.x = speed.x > 0 ? topSpeed.x : -topSpeed.x;
        }
        if (Math.abs(speed.y) > topSpeed.y) {
            speed.y = speed.y > 0 ? topSpeed.y : -topSpeed.y;
        }

        position.x += speed.x * dt;
        position.y += speed.y * dt;
    }