bool CCameraHandler::LoadViewData(const ViewData& vd) { if (vd.empty()) return false; const auto it = vd.find("mode"); if (it != vd.end()) { const unsigned int camMode = it->second; const unsigned int curMode = currCamCtrlNum; if (camMode >= camControllers.size()) return false; if (camMode != currCamCtrlNum) { CameraTransition(1.0f); camControllers[currCamCtrlNum = camMode]->SwitchTo(curMode, camMode != curMode); } } return camControllers[currCamCtrlNum]->SetState(vd); }
bool CCameraHandler::LoadViewData(const ViewData& vd) { if (vd.empty()) { return false; } ViewData::const_iterator it = vd.find("mode"); if (it != vd.end()) { const unsigned int camMode = (unsigned int)it->second; if (camMode >= camControllers.size()) { return false; } const unsigned int currentMode = currCamCtrlNum; if (camMode != currCamCtrlNum) { currCamCtrlNum = camMode; currCamCtrl = camControllers[camMode]; const bool showMode = (camMode != currentMode); currCamCtrl->SwitchTo(showMode); CameraTransition(1.0f); } } return currCamCtrl->SetState(vd); }