Removed CAM_TYPE_DIALOG
parent
9feea63086
commit
942f746a21
|
@ -40,6 +40,7 @@ enum PauseType
|
|||
PAUSE_PHOTO = (1<<2), //!< photo mode, TODO: remove
|
||||
PAUSE_OBJECT_UPDATES = (1<<3), //!< do not send events to objects
|
||||
PAUSE_MUTE_SOUND = (1<<4), //!< mute sound
|
||||
PAUSE_CAMERA = (1<<5), //!< freeze camera
|
||||
};
|
||||
inline PauseType& operator|=(PauseType& a, const PauseType& b)
|
||||
{
|
||||
|
|
|
@ -1163,6 +1163,9 @@ void CCamera::EventMouseButton(const Event &event)
|
|||
|
||||
bool CCamera::EventFrame(const Event &event)
|
||||
{
|
||||
if (m_freeze)
|
||||
return true;
|
||||
|
||||
Math::Point newDelta = m_mouseDeltaEdge * m_speed * event.rTime;
|
||||
if (m_cameraInvertX)
|
||||
newDelta.x = -newDelta.x;
|
||||
|
@ -1177,9 +1180,6 @@ bool CCamera::EventFrame(const Event &event)
|
|||
m_type == CAM_TYPE_EDIT)
|
||||
return EventFrameFree(event, m_type != CAM_TYPE_EDIT);
|
||||
|
||||
if (m_type == CAM_TYPE_DIALOG)
|
||||
return EventFrameDialog(event);
|
||||
|
||||
if (m_type == CAM_TYPE_BACK)
|
||||
return EventFrameBack(event);
|
||||
|
||||
|
@ -1262,11 +1262,6 @@ bool CCamera::EventFrameFree(const Event &event, bool keysAllowed)
|
|||
return true;
|
||||
}
|
||||
|
||||
bool CCamera::EventFrameDialog(const Event &event)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CCamera::EventFrameBack(const Event &event)
|
||||
{
|
||||
Math::Vector cameraMove = CalculateCameraMovement(event);
|
||||
|
@ -1625,4 +1620,9 @@ Math::Vector CCamera::CalculateCameraMovement(const Event &event, bool keysAllow
|
|||
return delta;
|
||||
}
|
||||
|
||||
void CCamera::SetFreeze(bool freeze)
|
||||
{
|
||||
m_freeze = freeze;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -63,8 +63,6 @@ enum CameraType
|
|||
CAM_TYPE_INFO = 8,
|
||||
//! Visit instead of an error
|
||||
CAM_TYPE_VISIT = 9,
|
||||
//! Camera for dialog
|
||||
CAM_TYPE_DIALOG = 10,
|
||||
//! Static camera height
|
||||
CAM_TYPE_PLANE = 11,
|
||||
};
|
||||
|
@ -211,6 +209,9 @@ public:
|
|||
void SetCameraInvertY(bool invert);
|
||||
bool GetCameraInvertY();
|
||||
|
||||
//! Temporarily freeze camera movement
|
||||
void SetFreeze(bool freeze);
|
||||
|
||||
void SetCameraSpeed(float speed);
|
||||
|
||||
protected:
|
||||
|
@ -225,8 +226,6 @@ protected:
|
|||
//! Moves the point of view
|
||||
bool EventFrameFree(const Event &event, bool keysAllowed);
|
||||
//! Moves the point of view
|
||||
bool EventFrameDialog(const Event &event);
|
||||
//! Moves the point of view
|
||||
bool EventFrameBack(const Event &event);
|
||||
//! Moves the point of view
|
||||
bool EventFrameFix(const Event &event);
|
||||
|
@ -389,6 +388,9 @@ protected:
|
|||
bool m_cameraInvertX;
|
||||
//! Y inversion in the edges?
|
||||
bool m_cameraInvertY;
|
||||
|
||||
//! Is camera frozen?
|
||||
bool m_freeze = false;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -456,7 +456,7 @@ void CRobotMain::ChangePhase(Phase phase)
|
|||
FlushNewScriptName();
|
||||
m_sound->SetListener(Math::Vector(0.0f, 0.0f, 0.0f), Math::Vector(0.0f, 0.0f, 1.0f));
|
||||
m_sound->StopAll();
|
||||
m_camera->SetType(Gfx::CAM_TYPE_DIALOG);
|
||||
m_camera->SetType(Gfx::CAM_TYPE_NULL);
|
||||
m_movie->Flush();
|
||||
m_movieInfoIndex = -1;
|
||||
m_cameraPan = 0.0f;
|
||||
|
@ -1589,7 +1589,7 @@ void CRobotMain::StartSuspend()
|
|||
{
|
||||
m_sound->MuteAll(true);
|
||||
ClearInterface();
|
||||
m_suspend = m_pause->ActivatePause(PAUSE_ENGINE|PAUSE_HIDE_SHORTCUTS|PAUSE_MUTE_SOUND);
|
||||
m_suspend = m_pause->ActivatePause(PAUSE_ENGINE|PAUSE_HIDE_SHORTCUTS|PAUSE_MUTE_SOUND|PAUSE_CAMERA);
|
||||
m_engine->SetOverFront(false); // over flat behind
|
||||
CreateShortcuts();
|
||||
|
||||
|
@ -1597,9 +1597,6 @@ void CRobotMain::StartSuspend()
|
|||
m_infoObject = DeselectAll(); // removes the control buttons
|
||||
m_displayText->HideText(true);
|
||||
|
||||
m_suspendInitCamera = m_camera->GetType();
|
||||
m_camera->SetType(Gfx::CAM_TYPE_DIALOG);
|
||||
|
||||
m_engine->EnablePauseBlur();
|
||||
}
|
||||
|
||||
|
@ -1618,8 +1615,6 @@ void CRobotMain::StopSuspend()
|
|||
m_map->ShowMap(m_mapShow);
|
||||
m_displayText->HideText(false);
|
||||
|
||||
m_camera->SetType(m_suspendInitCamera);
|
||||
|
||||
m_engine->DisablePauseBlur();
|
||||
}
|
||||
|
||||
|
@ -4975,7 +4970,7 @@ void CRobotMain::ResetCreate()
|
|||
m_particle->FlushParticle();
|
||||
m_terrain->FlushBuildingLevel();
|
||||
|
||||
m_camera->SetType(Gfx::CAM_TYPE_DIALOG);
|
||||
m_camera->SetType(Gfx::CAM_TYPE_NULL);
|
||||
|
||||
try
|
||||
{
|
||||
|
@ -5500,6 +5495,7 @@ void CRobotMain::StartMusic()
|
|||
void CRobotMain::UpdatePause(PauseType pause)
|
||||
{
|
||||
m_engine->SetPause(pause & PAUSE_ENGINE);
|
||||
m_camera->SetFreeze(pause & PAUSE_CAMERA);
|
||||
m_sound->MuteAll(pause & PAUSE_MUTE_SOUND);
|
||||
CreateShortcuts();
|
||||
if (pause != PAUSE_NONE) HiliteClear();
|
||||
|
|
|
@ -506,7 +506,6 @@ protected:
|
|||
char m_mapFilename[100] = {};
|
||||
|
||||
ActivePause* m_suspend = nullptr;
|
||||
Gfx::CameraType m_suspendInitCamera = Gfx::CAM_TYPE_NULL;
|
||||
|
||||
Math::Point m_tooltipPos;
|
||||
std::string m_tooltipName;
|
||||
|
|
|
@ -148,7 +148,7 @@ CScreenSetup* CMainUserInterface::GetSetupScreen(Phase phase)
|
|||
|
||||
void CMainUserInterface::ChangePhase(Phase phase)
|
||||
{
|
||||
m_main->GetCamera()->SetType(Gfx::CAM_TYPE_DIALOG);
|
||||
m_main->GetCamera()->SetType(Gfx::CAM_TYPE_NULL);
|
||||
m_engine->SetOverFront(false);
|
||||
m_engine->SetOverColor(Gfx::Color(0.0f, 0.0f, 0.0f, 0.0f), Gfx::ENG_RSTATE_TCOLOR_BLACK); // TODO: color ok?
|
||||
|
||||
|
|
Loading…
Reference in New Issue