mirror of
https://github.com/luanti-org/luanti.git
synced 2025-10-13 08:35:20 +02:00
Add Lua function get_video_modes() for main menu
Also updates and uses porting::getSupportedVideoModes()
This commit is contained in:
@@ -1056,6 +1056,28 @@ int ModApiMainMenu::l_get_video_drivers(lua_State *L)
|
||||
return 1;
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
int ModApiMainMenu::l_get_video_modes(lua_State *L)
|
||||
{
|
||||
std::vector<core::vector3d<u32> > videomodes
|
||||
= porting::getSupportedVideoModes();
|
||||
|
||||
lua_newtable(L);
|
||||
for (u32 i = 0; i != videomodes.size(); i++) {
|
||||
lua_newtable(L);
|
||||
lua_pushnumber(L, videomodes[i].X);
|
||||
lua_setfield(L, -2, "w");
|
||||
lua_pushnumber(L, videomodes[i].Y);
|
||||
lua_setfield(L, -2, "h");
|
||||
lua_pushnumber(L, videomodes[i].Z);
|
||||
lua_setfield(L, -2, "depth");
|
||||
|
||||
lua_rawseti(L, -2, i + 1);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
int ModApiMainMenu::l_gettext(lua_State *L)
|
||||
{
|
||||
@@ -1164,6 +1186,7 @@ void ModApiMainMenu::Initialize(lua_State *L, int top)
|
||||
API_FCT(sound_stop);
|
||||
API_FCT(gettext);
|
||||
API_FCT(get_video_drivers);
|
||||
API_FCT(get_video_modes);
|
||||
API_FCT(get_screen_info);
|
||||
API_FCT(get_min_supp_proto);
|
||||
API_FCT(get_max_supp_proto);
|
||||
|
@@ -137,6 +137,8 @@ private:
|
||||
|
||||
static int l_get_video_drivers(lua_State *L);
|
||||
|
||||
static int l_get_video_modes(lua_State *L);
|
||||
|
||||
//version compatibility
|
||||
static int l_get_min_supp_proto(lua_State *L);
|
||||
|
||||
|
Reference in New Issue
Block a user