diff --git a/apps/openmw/mwlua/classbindings.cpp b/apps/openmw/mwlua/classbindings.cpp index e506916337..d62e5bca4d 100644 --- a/apps/openmw/mwlua/classbindings.cpp +++ b/apps/openmw/mwlua/classbindings.cpp @@ -72,7 +72,7 @@ namespace MWLua }); classT["specialization"] = sol::readonly_property([](const ESM::Class& rec) -> std::string_view { - return ESM::Class::indexToLuaId[rec.mData.mSpecialization]; + return ESM::Class::indexToLuaId.at(rec.mData.mSpecialization + 10); }); classT["isPlayable"] = sol::readonly_property([](const ESM::Class& rec) -> bool { return rec.mData.mIsPlayable; }); diff --git a/apps/openmw/mwlua/stats.cpp b/apps/openmw/mwlua/stats.cpp index 0311ccaab8..e2ea04e95f 100644 --- a/apps/openmw/mwlua/stats.cpp +++ b/apps/openmw/mwlua/stats.cpp @@ -447,7 +447,7 @@ namespace MWLua skillT["description"] = sol::readonly_property([](const ESM::Skill& rec) -> std::string_view { return rec.mDescription; }); skillT["specialization"] = sol::readonly_property([](const ESM::Skill& rec) -> std::string_view { - return ESM::Class::indexToLuaId[rec.mData.mSpecialization]; + return ESM::Class::indexToLuaId.at(rec.mData.mSpecialization); }); skillT["icon"] = sol::readonly_property([vfs](const ESM::Skill& rec) -> std::string { return Misc::ResourceHelpers::correctIconPath(rec.mIcon, vfs); diff --git a/components/esm3/loadclas.cpp b/components/esm3/loadclas.cpp index 2dd605c7c6..dcfeb958c1 100644 --- a/components/esm3/loadclas.cpp +++ b/components/esm3/loadclas.cpp @@ -10,7 +10,7 @@ namespace ESM { const std::string_view Class::sGmstSpecializationIds[3] = { "sSpecializationCombat", "sSpecializationMagic", "sSpecializationStealth" }; - const std::string_view Class::indexToLuaId[3] = { "combat", "magic", "stealth" }; + const std::array Class::indexToLuaId = { "combat", "magic", "stealth" }; int32_t& Class::CLDTstruct::getSkill(int index, bool major) { diff --git a/components/esm3/loadclas.hpp b/components/esm3/loadclas.hpp index f4bf60bc11..e1c9b851ee 100644 --- a/components/esm3/loadclas.hpp +++ b/components/esm3/loadclas.hpp @@ -31,7 +31,7 @@ namespace ESM Stealth = 2 }; static const std::string_view sGmstSpecializationIds[3]; - static const std::string_view indexToLuaId[3]; + static const std::array indexToLuaId; struct CLDTstruct {