little fixes for animviewer

This commit is contained in:
aap 2020-12-03 09:34:09 +01:00
parent 448ba9b7e8
commit 3c24505990
2 changed files with 15 additions and 1 deletions

View File

@ -49,7 +49,7 @@ CAnimViewer::Render(void) {
if (pTarget) { if (pTarget) {
#ifdef FIX_BUGS #ifdef FIX_BUGS
#ifdef PED_SKIN #ifdef PED_SKIN
if(pTarget->IsPed()) if(pTarget->IsPed() && IsClumpSkinned(pTarget->GetClump()))
((CPed*)pTarget)->UpdateRpHAnim(); ((CPed*)pTarget)->UpdateRpHAnim();
#endif #endif
#endif #endif
@ -100,6 +100,9 @@ CAnimViewer::Initialise(void) {
CRadar::Initialise(); CRadar::Initialise();
CRadar::LoadTextures(); CRadar::LoadTextures();
CVehicleModelInfo::LoadVehicleColours(); CVehicleModelInfo::LoadVehicleColours();
#ifdef FIX_BUGS
CVehicleModelInfo::LoadEnvironmentMaps();
#endif
CAnimManager::LoadAnimFiles(); CAnimManager::LoadAnimFiles();
CWorld::PlayerInFocus = 0; CWorld::PlayerInFocus = 0;
CWeapon::InitialiseWeapons(); CWeapon::InitialiseWeapons();
@ -294,7 +297,12 @@ CAnimViewer::Update(void)
if (pTarget->IsVehicle() || pTarget->IsPed() || pTarget->IsObject()) { if (pTarget->IsVehicle() || pTarget->IsPed() || pTarget->IsObject()) {
((CPhysical*)pTarget)->m_vecMoveSpeed = CVector(0.0f, 0.0f, 0.0f); ((CPhysical*)pTarget)->m_vecMoveSpeed = CVector(0.0f, 0.0f, 0.0f);
} }
#ifdef FIX_BUGS
// so we don't end up in the water
pTarget->GetMatrix().GetPosition().z = 10.0f;
#else
pTarget->GetMatrix().GetPosition().z = 0.0f; pTarget->GetMatrix().GetPosition().z = 0.0f;
#endif
if (modelInfo->GetModelType() == MITYPE_PED) { if (modelInfo->GetModelType() == MITYPE_PED) {
((CPed*)pTarget)->bKindaStayInSamePlace = true; ((CPed*)pTarget)->bKindaStayInSamePlace = true;

View File

@ -4014,6 +4014,12 @@ CCam::Process_ModelView(const CVector &CameraTarget, float, float, float)
Distance += CPad::GetPad(0)->GetLeftStickY()/1000.0f; Distance += CPad::GetPad(0)->GetLeftStickY()/1000.0f;
else else
Distance += CPad::GetPad(0)->GetLeftStickY() * ((Distance - 10.0f)/20.0f + 1.0f) / 1000.0f; Distance += CPad::GetPad(0)->GetLeftStickY() * ((Distance - 10.0f)/20.0f + 1.0f) / 1000.0f;
#ifdef IMPROVED_CAMERA
if(CPad::GetPad(0)->GetLeftMouse()){
Distance += DEGTORAD(CPad::GetPad(0)->GetMouseY()/2.0f);
Angle += DEGTORAD(CPad::GetPad(0)->GetMouseX()/2.0f);
}
#endif
if(Distance < 1.5f) if(Distance < 1.5f)
Distance = 1.5f; Distance = 1.5f;