Merge pull request #139 from Nick007J/master

fixes
This commit is contained in:
aap 2019-07-17 12:26:45 +02:00 committed by GitHub
commit 3bda0da403
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 8 additions and 4 deletions

View file

@ -710,7 +710,7 @@ int8 CRunningScript::ProcessCommandsFrom0To99(int32 command)
return 0; return 0;
case COMMAND_SHAKE_CAM: case COMMAND_SHAKE_CAM:
CollectParameters(&m_nIp, 1); CollectParameters(&m_nIp, 1);
TheCamera.CamShake(ScriptParams[0] / 1000.0f); CamShakeNoPos(&TheCamera, ScriptParams[0] / 1000.0f);
return 0; return 0;
case COMMAND_SET_VAR_INT: case COMMAND_SET_VAR_INT:
{ {

View file

@ -23,7 +23,7 @@ WRAPPER void CCamera::DrawBordersForWideScreen(void) { EAXJMP(0x46B430); }
WRAPPER void CCamera::CalculateDerivedValues(void) { EAXJMP(0x46EEA0); } WRAPPER void CCamera::CalculateDerivedValues(void) { EAXJMP(0x46EEA0); }
WRAPPER void CCamera::Restore(void) { EAXJMP(0x46F990); } WRAPPER void CCamera::Restore(void) { EAXJMP(0x46F990); }
WRAPPER void CCamera::SetWidescreenOff(void) { EAXJMP(0x46FF10); } WRAPPER void CCamera::SetWidescreenOff(void) { EAXJMP(0x46FF10); }
WRAPPER void CCamera::CamShake(float) { EAXJMP(0x46B100); } WRAPPER void CamShakeNoPos(CCamera*, float) { EAXJMP(0x46B100); }
bool bool
CCamera::IsSphereVisible(const CVector &center, float radius, const CMatrix *mat) CCamera::IsSphereVisible(const CVector &center, float radius, const CMatrix *mat)

View file

@ -466,7 +466,6 @@ int m_iModeObbeCamIsInForCar;
void DrawBordersForWideScreen(void); void DrawBordersForWideScreen(void);
void Restore(void); void Restore(void);
void SetWidescreenOff(void); void SetWidescreenOff(void);
void CamShake(float);
void dtor(void) { this->CCamera::~CCamera(); } void dtor(void) { this->CCamera::~CCamera(); }
}; };
@ -479,3 +478,5 @@ static_assert(offsetof(CCamera, m_BlurBlue) == 0x9C, "CCamera: error");
static_assert(offsetof(CCamera, Cams) == 0x1A4, "CCamera: error"); static_assert(offsetof(CCamera, Cams) == 0x1A4, "CCamera: error");
static_assert(sizeof(CCamera) == 0xE9D8, "CCamera: wrong size"); static_assert(sizeof(CCamera) == 0xE9D8, "CCamera: wrong size");
extern CCamera &TheCamera; extern CCamera &TheCamera;
void CamShakeNoPos(CCamera*, float);

View file

@ -1255,7 +1255,7 @@ CAutomobile::SpawnFlyingComponent(int32 component, uint32 type)
obj->m_fElasticity = 0.1f; obj->m_fElasticity = 0.1f;
obj->m_fBuoyancy = obj->m_fMass*GRAVITY/0.75f; obj->m_fBuoyancy = obj->m_fMass*GRAVITY/0.75f;
obj->ObjectCreatedBy = TEMP_OBJECT; obj->ObjectCreatedBy = TEMP_OBJECT;
obj->bIsStatic = true; obj->bIsStatic = false;
obj->bIsPickup = false; obj->bIsPickup = false;
obj->bUseVehicleColours = true; obj->bUseVehicleColours = true;
obj->m_colour1 = m_currentColour1; obj->m_colour1 = m_currentColour1;

View file

@ -383,6 +383,9 @@ CVehicle::ProcessDelayedExplosion(void)
if(IsCar() && ((CAutomobile*)this)->m_bombType == 4 && (m_nBombTimer & 0xFE00) != 0xFE00) if(IsCar() && ((CAutomobile*)this)->m_bombType == 4 && (m_nBombTimer & 0xFE00) != 0xFE00)
DMAudio.PlayOneShot(m_audioEntityId, SOUND_CAR_BOMB_TICK, 0.0f); DMAudio.PlayOneShot(m_audioEntityId, SOUND_CAR_BOMB_TICK, 0.0f);
if (m_nBombTimer != 0)
return;
if(FindPlayerVehicle() != this && m_pBlowUpEntity == FindPlayerPed()) if(FindPlayerVehicle() != this && m_pBlowUpEntity == FindPlayerPed())
CWorld::Players[CWorld::PlayerInFocus].AwardMoneyForExplosion(this); CWorld::Players[CWorld::PlayerInFocus].AwardMoneyForExplosion(this);
BlowUpCar(m_pBlowUpEntity); BlowUpCar(m_pBlowUpEntity);