mirror of
https://github.com/GTAmodding/re3.git
synced 2024-11-15 16:39:24 +00:00
fix neo screendroplet moving
This commit is contained in:
parent
ad560ffaf9
commit
c93fb5e443
2 changed files with 15 additions and 1 deletions
|
@ -12,6 +12,7 @@
|
||||||
#include "RwHelper.h"
|
#include "RwHelper.h"
|
||||||
#include "Timer.h"
|
#include "Timer.h"
|
||||||
#include "Camera.h"
|
#include "Camera.h"
|
||||||
|
#include "World.h"
|
||||||
#include "ZoneCull.h"
|
#include "ZoneCull.h"
|
||||||
#include "Weather.h"
|
#include "Weather.h"
|
||||||
#include "ParticleObject.h"
|
#include "ParticleObject.h"
|
||||||
|
@ -416,7 +417,8 @@ ScreenDroplets::ProcessCameraMovement(void)
|
||||||
|
|
||||||
uint16 mode = TheCamera.Cams[TheCamera.ActiveCam].Mode;
|
uint16 mode = TheCamera.Cams[TheCamera.ActiveCam].Mode;
|
||||||
bool isTopDown = mode == CCam::MODE_TOPDOWN || mode == CCam::MODE_GTACLASSIC || mode == CCam::MODE_TOP_DOWN_PED;
|
bool isTopDown = mode == CCam::MODE_TOPDOWN || mode == CCam::MODE_GTACLASSIC || mode == CCam::MODE_TOP_DOWN_PED;
|
||||||
bool isLookingInDirection = CPad::GetPad(0)->GetLookBehindForCar() || CPad::GetPad(0)->GetLookLeft() || CPad::GetPad(0)->GetLookRight();
|
bool isLookingInDirection = FindPlayerVehicle() && mode == CCam::MODE_1STPERSON &&
|
||||||
|
(CPad::GetPad(0)->GetLookBehindForCar() || CPad::GetPad(0)->GetLookLeft() || CPad::GetPad(0)->GetLookRight());
|
||||||
ms_enabled = !isTopDown && !isLookingInDirection;
|
ms_enabled = !isTopDown && !isLookingInDirection;
|
||||||
ms_movingEnabled = !isTopDown && !isLookingInDirection;
|
ms_movingEnabled = !isTopDown && !isLookingInDirection;
|
||||||
|
|
||||||
|
|
|
@ -877,6 +877,7 @@ CVehicle::ProcessWheel(CVector &wheelFwd, CVector &wheelRight, CVector &wheelCon
|
||||||
}
|
}
|
||||||
|
|
||||||
if(fwd != 0.0f || right != 0.0f){
|
if(fwd != 0.0f || right != 0.0f){
|
||||||
|
#if 1
|
||||||
CVector totalSpeed = fwd*wheelFwd + right*wheelRight;
|
CVector totalSpeed = fwd*wheelFwd + right*wheelRight;
|
||||||
|
|
||||||
CVector turnDirection = totalSpeed;
|
CVector turnDirection = totalSpeed;
|
||||||
|
@ -910,6 +911,17 @@ CVehicle::ProcessWheel(CVector &wheelFwd, CVector &wheelRight, CVector &wheelCon
|
||||||
|
|
||||||
ApplyMoveForce(impulse * direction);
|
ApplyMoveForce(impulse * direction);
|
||||||
ApplyTurnForce(turnImpulse * direction, wheelContactPoint);
|
ApplyTurnForce(turnImpulse * direction, wheelContactPoint);
|
||||||
|
#else
|
||||||
|
CVector direction = fwd*wheelFwd + right*wheelRight;
|
||||||
|
float speed = direction.Magnitude();
|
||||||
|
direction.Normalise();
|
||||||
|
|
||||||
|
float impulse = speed*m_fMass;
|
||||||
|
float turnImpulse = speed*GetMass(wheelContactPoint, direction);
|
||||||
|
|
||||||
|
ApplyMoveForce(impulse * direction);
|
||||||
|
ApplyTurnForce(turnImpulse * direction, wheelContactPoint);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue