diff --git a/apps/openmw/mwlua/regionbindings.cpp b/apps/openmw/mwlua/regionbindings.cpp index 4cb15c7497..037f6a5609 100644 --- a/apps/openmw/mwlua/regionbindings.cpp +++ b/apps/openmw/mwlua/regionbindings.cpp @@ -46,13 +46,8 @@ namespace MWLua = [](const ESM::Region& rec) -> std::string { return "ESM3_Region[" + rec.mId.toDebugString() + "]"; }; regionT["id"] = sol::readonly_property([](const ESM::Region& rec) { return rec.mId.serializeText(); }); regionT["name"] = sol::readonly_property([](const ESM::Region& rec) -> std::string_view { return rec.mName; }); - regionT["mapColor"] = sol::readonly_property([](const ESM::Region& rec) -> Misc::Color { - uint32_t c = rec.mMapColor; - float r = ((c >> 16) & 0xFF) / 255.f; - float g = ((c >> 8) & 0xFF) / 255.f; - float b = (c & 0xFF) / 255.f; - return Misc::Color(r, g, b, 1.f); // assume alpha = 1.0 - }); + regionT["mapColor"] = sol::readonly_property( + [](const ESM::Region& rec) -> Misc::Color { return Misc::Color::fromRGB(rec.mMapColor); }); regionT["sleepList"] = sol::readonly_property([](const ESM::Region& rec) { return rec.mSleepList.serializeText(); });