mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-05-11 04:56:58 +03:00
Remove Lua package openmw.settings
This commit is contained in:
parent
860d5899c4
commit
c548708a27
5 changed files with 1 additions and 83 deletions
|
@ -60,7 +60,7 @@ add_openmw_dir (mwscript
|
||||||
|
|
||||||
add_openmw_dir (mwlua
|
add_openmw_dir (mwlua
|
||||||
luamanagerimp object worldview userdataserializer eventqueue
|
luamanagerimp object worldview userdataserializer eventqueue
|
||||||
luabindings localscripts playerscripts objectbindings cellbindings asyncbindings settingsbindings
|
luabindings localscripts playerscripts objectbindings cellbindings asyncbindings
|
||||||
camerabindings uibindings inputbindings nearbybindings postprocessingbindings stats debugbindings
|
camerabindings uibindings inputbindings nearbybindings postprocessingbindings stats debugbindings
|
||||||
types/types types/door types/actor types/container types/weapon types/npc types/creature types/activator types/book types/lockpick types/probe types/apparatus types/potion types/misc types/repair
|
types/types types/door types/actor types/container types/weapon types/npc types/creature types/activator types/book types/lockpick types/probe types/apparatus types/potion types/misc types/repair
|
||||||
)
|
)
|
||||||
|
|
|
@ -56,10 +56,6 @@ namespace MWLua
|
||||||
// Implemented in inputbindings.cpp
|
// Implemented in inputbindings.cpp
|
||||||
sol::table initInputPackage(const Context&);
|
sol::table initInputPackage(const Context&);
|
||||||
|
|
||||||
// Implemented in settingsbindings.cpp
|
|
||||||
sol::table initGlobalSettingsPackage(const Context&);
|
|
||||||
sol::table initPlayerSettingsPackage(const Context&);
|
|
||||||
|
|
||||||
// openmw.self package is implemented in localscripts.cpp
|
// openmw.self package is implemented in localscripts.cpp
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -88,15 +88,12 @@ namespace MWLua
|
||||||
mLua.addCommonPackage("openmw.core", initCorePackage(context));
|
mLua.addCommonPackage("openmw.core", initCorePackage(context));
|
||||||
mLua.addCommonPackage("openmw.types", initTypesPackage(context));
|
mLua.addCommonPackage("openmw.types", initTypesPackage(context));
|
||||||
mGlobalScripts.addPackage("openmw.world", initWorldPackage(context));
|
mGlobalScripts.addPackage("openmw.world", initWorldPackage(context));
|
||||||
mGlobalScripts.addPackage("openmw.settings", initGlobalSettingsPackage(context));
|
|
||||||
mGlobalScripts.addPackage("openmw.storage", initGlobalStoragePackage(context, &mGlobalStorage));
|
mGlobalScripts.addPackage("openmw.storage", initGlobalStoragePackage(context, &mGlobalStorage));
|
||||||
|
|
||||||
mCameraPackage = initCameraPackage(localContext);
|
mCameraPackage = initCameraPackage(localContext);
|
||||||
mUserInterfacePackage = initUserInterfacePackage(localContext);
|
mUserInterfacePackage = initUserInterfacePackage(localContext);
|
||||||
mInputPackage = initInputPackage(localContext);
|
mInputPackage = initInputPackage(localContext);
|
||||||
mNearbyPackage = initNearbyPackage(localContext);
|
mNearbyPackage = initNearbyPackage(localContext);
|
||||||
mLocalSettingsPackage = initGlobalSettingsPackage(localContext);
|
|
||||||
mPlayerSettingsPackage = initPlayerSettingsPackage(localContext);
|
|
||||||
mLocalStoragePackage = initLocalStoragePackage(localContext, &mGlobalStorage);
|
mLocalStoragePackage = initLocalStoragePackage(localContext, &mGlobalStorage);
|
||||||
mPlayerStoragePackage = initPlayerStoragePackage(localContext, &mGlobalStorage, &mPlayerStorage);
|
mPlayerStoragePackage = initPlayerStoragePackage(localContext, &mGlobalStorage, &mPlayerStorage);
|
||||||
mPostprocessingPackage = initPostprocessingPackage(localContext);
|
mPostprocessingPackage = initPostprocessingPackage(localContext);
|
||||||
|
@ -423,7 +420,6 @@ namespace MWLua
|
||||||
scripts->addPackage("openmw.ui", mUserInterfacePackage);
|
scripts->addPackage("openmw.ui", mUserInterfacePackage);
|
||||||
scripts->addPackage("openmw.camera", mCameraPackage);
|
scripts->addPackage("openmw.camera", mCameraPackage);
|
||||||
scripts->addPackage("openmw.input", mInputPackage);
|
scripts->addPackage("openmw.input", mInputPackage);
|
||||||
scripts->addPackage("openmw.settings", mPlayerSettingsPackage);
|
|
||||||
scripts->addPackage("openmw.storage", mPlayerStoragePackage);
|
scripts->addPackage("openmw.storage", mPlayerStoragePackage);
|
||||||
scripts->addPackage("openmw.postprocessing", mPostprocessingPackage);
|
scripts->addPackage("openmw.postprocessing", mPostprocessingPackage);
|
||||||
scripts->addPackage("openmw.debug", mDebugPackage);
|
scripts->addPackage("openmw.debug", mDebugPackage);
|
||||||
|
@ -434,7 +430,6 @@ namespace MWLua
|
||||||
if (!autoStartConf.has_value())
|
if (!autoStartConf.has_value())
|
||||||
autoStartConf = mConfiguration.getLocalConf(type, ptr.getCellRef().getRefId(), getId(ptr));
|
autoStartConf = mConfiguration.getLocalConf(type, ptr.getCellRef().getRefId(), getId(ptr));
|
||||||
scripts->setAutoStartConf(std::move(*autoStartConf));
|
scripts->setAutoStartConf(std::move(*autoStartConf));
|
||||||
scripts->addPackage("openmw.settings", mLocalSettingsPackage);
|
|
||||||
scripts->addPackage("openmw.storage", mLocalStoragePackage);
|
scripts->addPackage("openmw.storage", mLocalStoragePackage);
|
||||||
}
|
}
|
||||||
scripts->addPackage("openmw.nearby", mNearbyPackage);
|
scripts->addPackage("openmw.nearby", mNearbyPackage);
|
||||||
|
|
|
@ -137,8 +137,6 @@ namespace MWLua
|
||||||
sol::table mUserInterfacePackage;
|
sol::table mUserInterfacePackage;
|
||||||
sol::table mCameraPackage;
|
sol::table mCameraPackage;
|
||||||
sol::table mInputPackage;
|
sol::table mInputPackage;
|
||||||
sol::table mLocalSettingsPackage;
|
|
||||||
sol::table mPlayerSettingsPackage;
|
|
||||||
sol::table mLocalStoragePackage;
|
sol::table mLocalStoragePackage;
|
||||||
sol::table mPlayerStoragePackage;
|
sol::table mPlayerStoragePackage;
|
||||||
sol::table mPostprocessingPackage;
|
sol::table mPostprocessingPackage;
|
||||||
|
|
|
@ -1,71 +0,0 @@
|
||||||
#include "luabindings.hpp"
|
|
||||||
|
|
||||||
#include <components/settings/settings.hpp>
|
|
||||||
|
|
||||||
#include "../mwworld/esmstore.hpp"
|
|
||||||
#include "../mwworld/store.hpp"
|
|
||||||
|
|
||||||
namespace MWLua
|
|
||||||
{
|
|
||||||
|
|
||||||
static sol::table initSettingsPackage(const Context& context, bool player)
|
|
||||||
{
|
|
||||||
LuaUtil::LuaState* lua = context.mLua;
|
|
||||||
sol::table config(lua->sol(), sol::create);
|
|
||||||
|
|
||||||
// Access to settings.cfg. Temporary, will be removed at some point.
|
|
||||||
auto checkRead = [player](std::string_view category)
|
|
||||||
{
|
|
||||||
if ((category == "Camera" || category == "GUI" || category == "Hud" ||
|
|
||||||
category == "Windows" || category == "Input") && !player)
|
|
||||||
throw std::runtime_error("This setting is only available in player scripts");
|
|
||||||
};
|
|
||||||
config["_getBoolFromSettingsCfg"] = [=](const std::string& category, const std::string& setting)
|
|
||||||
{
|
|
||||||
checkRead(category);
|
|
||||||
return Settings::Manager::getBool(setting, category);
|
|
||||||
};
|
|
||||||
config["_getIntFromSettingsCfg"] = [=](const std::string& category, const std::string& setting)
|
|
||||||
{
|
|
||||||
checkRead(category);
|
|
||||||
return Settings::Manager::getInt(setting, category);
|
|
||||||
};
|
|
||||||
config["_getFloatFromSettingsCfg"] = [=](const std::string& category, const std::string& setting)
|
|
||||||
{
|
|
||||||
checkRead(category);
|
|
||||||
return Settings::Manager::getFloat(setting, category);
|
|
||||||
};
|
|
||||||
config["_getStringFromSettingsCfg"] = [=](const std::string& category, const std::string& setting)
|
|
||||||
{
|
|
||||||
checkRead(category);
|
|
||||||
return Settings::Manager::getString(setting, category);
|
|
||||||
};
|
|
||||||
config["_getVector2FromSettingsCfg"] = [=](const std::string& category, const std::string& setting)
|
|
||||||
{
|
|
||||||
checkRead(category);
|
|
||||||
return Settings::Manager::getVector2(setting, category);
|
|
||||||
};
|
|
||||||
config["_getVector3FromSettingsCfg"] = [=](const std::string& category, const std::string& setting)
|
|
||||||
{
|
|
||||||
checkRead(category);
|
|
||||||
return Settings::Manager::getVector3(setting, category);
|
|
||||||
};
|
|
||||||
|
|
||||||
const MWWorld::Store<ESM::GameSetting>* gmst = &MWBase::Environment::get().getWorld()->getStore().get<ESM::GameSetting>();
|
|
||||||
config["getGMST"] = [lua, gmst](const std::string setting) -> sol::object
|
|
||||||
{
|
|
||||||
const ESM::Variant& value = gmst->find(setting)->mValue;
|
|
||||||
if (value.getType() == ESM::VT_String)
|
|
||||||
return sol::make_object<std::string>(lua->sol(), value.getString());
|
|
||||||
else if (value.getType() == ESM::VT_Int)
|
|
||||||
return sol::make_object<int>(lua->sol(), value.getInteger());
|
|
||||||
else
|
|
||||||
return sol::make_object<float>(lua->sol(), value.getFloat());
|
|
||||||
};
|
|
||||||
return LuaUtil::makeReadOnly(config);
|
|
||||||
}
|
|
||||||
|
|
||||||
sol::table initGlobalSettingsPackage(const Context& context) { return initSettingsPackage(context, false); }
|
|
||||||
sol::table initPlayerSettingsPackage(const Context& context) { return initSettingsPackage(context, true); }
|
|
||||||
|
|
||||||
}
|
|
Loading…
Add table
Add a link
Reference in a new issue