Merge pull request #16 from ctrlVnt/fix-reverse-function

Reverse direction Keyboard controller
pull/12/merge
Lunakepio 2024-02-16 14:10:59 +01:00 committed by GitHub
commit 2a78567df5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 19 additions and 2 deletions

View File

@ -121,6 +121,12 @@ export const PlayerControllerKeyboard = ({
} else if (rightPressed && currentSpeed > 0) {
steeringAngle = -currentSteeringSpeed;
targetXPosition = camMaxOffset;
} else if (rightPressed && currentSpeed < 0) {
steeringAngle = currentSteeringSpeed;
targetXPosition = -camMaxOffset;
} else if (leftPressed && currentSpeed < 0) {
steeringAngle = -currentSteeringSpeed;
targetXPosition = camMaxOffset;
} else {
steeringAngle = 0;
targetXPosition = 0;
@ -170,13 +176,24 @@ export const PlayerControllerKeyboard = ({
}
// REVERSING
if (downPressed && currentSpeed < -maxSpeed) {
if (downPressed) {
if (currentSteeringSpeed < MaxSteeringSpeed) {
setCurrentSteeringSpeed(
Math.min(
currentSteeringSpeed + 0.0001 * delta * 144,
MaxSteeringSpeed
)
);
}
}
if (downPressed && currentSpeed <= 0) {
setCurrentSpeed(
Math.max(currentSpeed - acceleration * delta * 144, -maxSpeed)
);
}
// DECELERATING
else if (!upPressed && !downPressed) {
else if (!upPressed) {
if (currentSteeringSpeed > 0) {
setCurrentSteeringSpeed(
Math.max(currentSteeringSpeed - 0.00005 * delta * 144, 0)