mirror of
https://github.com/halpz/re3.git
synced 2025-07-16 07:08:13 +00:00
Merge remote-tracking branch 'upstream/miami' into miami
This commit is contained in:
@ -638,6 +638,11 @@ void CPad::Clear(bool bResetPlayerControls)
|
||||
ShakeFreq = 0;
|
||||
ShakeDur = 0;
|
||||
|
||||
for (int32 i = 0; i < DRUNK_STEERING_BUFFER_SIZE; i++)
|
||||
SteeringLeftRightBuffer[i] = 0;
|
||||
|
||||
DrunkDrivingBufferUsed = 0;
|
||||
|
||||
if ( bResetPlayerControls )
|
||||
DisablePlayerControls = PLAYERCONTROL_ENABLED;
|
||||
|
||||
@ -1814,6 +1819,9 @@ void CPad::Update(int16 pad)
|
||||
|
||||
bHornHistory[iCurrHornHistory] = GetHorn();
|
||||
|
||||
for (int32 i = DRUNK_STEERING_BUFFER_SIZE - 2; i >= 0; i--) {
|
||||
SteeringLeftRightBuffer[i + 1] = SteeringLeftRightBuffer[i];
|
||||
}
|
||||
|
||||
if ( !bDisplayNoControllerMessage )
|
||||
CGame::bDemoMode = false;
|
||||
@ -1907,6 +1915,7 @@ int16 CPad::GetSteeringLeftRight(void)
|
||||
if ( ArePlayerControlsDisabled() )
|
||||
return 0;
|
||||
|
||||
int16 value;
|
||||
switch (CURMODE)
|
||||
{
|
||||
case 0:
|
||||
@ -1916,9 +1925,12 @@ int16 CPad::GetSteeringLeftRight(void)
|
||||
int16 dpad = (NewState.DPadRight - NewState.DPadLeft) / 2;
|
||||
|
||||
if ( Abs(axis) > Abs(dpad) )
|
||||
return axis;
|
||||
value = axis;
|
||||
else
|
||||
return dpad;
|
||||
value = dpad;
|
||||
|
||||
SteeringLeftRightBuffer[0] = value;
|
||||
value = SteeringLeftRightBuffer[DrunkDrivingBufferUsed];
|
||||
|
||||
break;
|
||||
}
|
||||
@ -1926,13 +1938,18 @@ int16 CPad::GetSteeringLeftRight(void)
|
||||
case 1:
|
||||
case 3:
|
||||
{
|
||||
return NewState.LeftStickX;
|
||||
|
||||
SteeringLeftRightBuffer[0] = NewState.LeftStickX;
|
||||
value = SteeringLeftRightBuffer[DrunkDrivingBufferUsed];
|
||||
break;
|
||||
}
|
||||
default:
|
||||
{
|
||||
value = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
return value;
|
||||
}
|
||||
|
||||
int16 CPad::GetSteeringUpDown(void)
|
||||
|
@ -141,9 +141,12 @@ public:
|
||||
enum
|
||||
{
|
||||
HORNHISTORY_SIZE = 5,
|
||||
DRUNK_STEERING_BUFFER_SIZE = 10,
|
||||
};
|
||||
CControllerState NewState;
|
||||
CControllerState OldState;
|
||||
int16 SteeringLeftRightBuffer[DRUNK_STEERING_BUFFER_SIZE];
|
||||
int32 DrunkDrivingBufferUsed;
|
||||
CControllerState PCTempKeyState;
|
||||
CControllerState PCTempJoyState;
|
||||
CControllerState PCTempMouseState;
|
||||
@ -263,6 +266,7 @@ public:
|
||||
static char *EditString(char *pStr, int32 nSize);
|
||||
static int32 *EditCodesForControls(int32 *pRsKeys, int32 nSize);
|
||||
uint32 InputHowLongAgo(void);
|
||||
void SetDrunkInputDelay(int32 delay) { DrunkDrivingBufferUsed = delay; }
|
||||
|
||||
#ifdef XINPUT
|
||||
void AffectFromXinput(uint32 pad);
|
||||
|
Reference in New Issue
Block a user