summaryrefslogtreecommitdiffstats
path: root/src/vehicles/Boat.cpp
diff options
context:
space:
mode:
authoreray orçunus <erayorcunus@gmail.com>2020-10-07 23:21:44 +0200
committereray orçunus <erayorcunus@gmail.com>2020-10-07 23:26:24 +0200
commitda39624f1c694dbeaefc6762fd6867715cdb77bc (patch)
tree58d34e45cba86fba08992f522e34fc182f215eb2 /src/vehicles/Boat.cpp
parentFix build on clang (diff)
downloadre3-da39624f1c694dbeaefc6762fd6867715cdb77bc.tar
re3-da39624f1c694dbeaefc6762fd6867715cdb77bc.tar.gz
re3-da39624f1c694dbeaefc6762fd6867715cdb77bc.tar.bz2
re3-da39624f1c694dbeaefc6762fd6867715cdb77bc.tar.lz
re3-da39624f1c694dbeaefc6762fd6867715cdb77bc.tar.xz
re3-da39624f1c694dbeaefc6762fd6867715cdb77bc.tar.zst
re3-da39624f1c694dbeaefc6762fd6867715cdb77bc.zip
Diffstat (limited to '')
-rw-r--r--src/vehicles/Boat.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/vehicles/Boat.cpp b/src/vehicles/Boat.cpp
index 1664ffd0..8c9dd241 100644
--- a/src/vehicles/Boat.cpp
+++ b/src/vehicles/Boat.cpp
@@ -959,17 +959,24 @@ CBoat::PreRender(void)
matrix.Translate(pos);
matrix.UpdateRW();
}
+ // FIX: Planes can also be controlled with GetCarGunUpDown
+#ifdef FIX_BUGS
+ static float steeringUpDown = 0.0f;
+ steeringUpDown += ((Abs(CPad::GetPad(0)->GetCarGunUpDown()) > 1.0f ? (-CPad::GetPad(0)->GetCarGunUpDown() / 128.0f) : (-CPad::GetPad(0)->GetSteeringUpDown() / 128.0f)) - steeringUpDown) * Min(1.f, CTimer::GetTimeStep() / 5.f);
+#else
+ float steeringUpDown = -CPad::GetPad(0)->GetSteeringUpDown()/128.0f;
+#endif
if(m_aBoatNodes[BOAT_REARFLAP_LEFT]){
matrix.Attach(RwFrameGetMatrix(m_aBoatNodes[BOAT_REARFLAP_LEFT]));
pos = matrix.GetPosition();
- matrix.SetRotateX(-CPad::GetPad(0)->GetSteeringUpDown()/128.0f);
+ matrix.SetRotateX(steeringUpDown);
matrix.Translate(pos);
matrix.UpdateRW();
}
if(m_aBoatNodes[BOAT_REARFLAP_RIGHT]){
matrix.Attach(RwFrameGetMatrix(m_aBoatNodes[BOAT_REARFLAP_RIGHT]));
pos = matrix.GetPosition();
- matrix.SetRotateX(-CPad::GetPad(0)->GetSteeringUpDown()/128.0f);
+ matrix.SetRotateX(steeringUpDown);
matrix.Translate(pos);
matrix.UpdateRW();
}