//---------------------------------------- void CInternalFilesYFX::CreateData (const string &Name, const string &Units, const string &LongName, const string &Comment /* = ""*/, double ValidMin /* = CTools::m_defaultValueDOUBLE */, double ValidMax /* = CTools::m_defaultValueDOUBLE */, nc_type Type /*= NC_DOUBLE*/) { if (VarExists(Name)) { throw CFileException(CTools::Format("Try to create data variable '%s' while it already exists", Name.c_str()), GetName(), BRATHL_LOGIC_ERROR); } if (m_file.GetNbDimensions() != 1) { throw CFileException(CTools::Format("Try to create data variable '%s' while not only one dimension exists", Name.c_str()), GetName(), BRATHL_LOGIC_ERROR); } CUnit unit = CUnit::ToUnit(Units); string strUnit = unit.AsString(false, true); m_file.AddVar(Name, Type, strUnit, LongName, Comment, 0, -1, -1, -1, ValidMin, ValidMax); }
// CHECK SAVE DELETION void SavedVariableBank::CheckSaveDeletion() { if(Saves::GetCurSaveSlot() > 3) return; std::wstring star_counter = SPECIAL_SAVE_STR; if(!VarExists(star_counter)) SetVar(star_counter, GM_STAR_COUNT); // Reset save slot detected? Reset the user save file too if(GM_STAR_COUNT < GetVar(SPECIAL_SAVE_STR)) { if(true) //DEBUG gLogger.Log(L"Deleting user save file - Star count: " + std::to_wstring((long long)GM_STAR_COUNT) + L" slot: " + std::to_wstring((long long)Saves::GetCurSaveSlot()), LOG_STD); std::wstring full_path = GetSaveFileFullPath(GetSaveFileName()); ClearBank(); std::wfstream var_file(WStr2Str(full_path).c_str(), std::ios::out); InitSaveFile(&var_file); var_file.flush(); var_file.close(); } }
// GET VAR double SavedVariableBank::GetVar(std::wstring key) { if(!VarExists(key)) return 0; return m_VarBank[key]; }