@@ -1851,11 +1851,13 @@ void read_hud_element(lua_State *L, HudElement *elem)
1851
1851
elem->size = lua_istable (L, -1 ) ? read_v2s32 (L, -1 ) : v2s32 ();
1852
1852
lua_pop (L, 1 );
1853
1853
1854
- elem->name = getstringfield_default (L, 2 , " name" , " " );
1855
- elem->text = getstringfield_default (L, 2 , " text" , " " );
1856
- elem->number = getintfield_default (L, 2 , " number" , 0 );
1857
- elem->item = getintfield_default (L, 2 , " item" , 0 );
1858
- elem->dir = getintfield_default (L, 2 , " direction" , 0 );
1854
+ elem->name = getstringfield_default (L, 2 , " name" , " " );
1855
+ elem->text = getstringfield_default (L, 2 , " text" , " " );
1856
+ elem->number = getintfield_default (L, 2 , " number" , 0 );
1857
+ elem->item = getintfield_default (L, 2 , " item" , 0 );
1858
+ elem->dir = getintfield_default (L, 2 , " direction" , 0 );
1859
+ elem->z_index = MYMAX (S16_MIN, MYMIN (S16_MAX,
1860
+ getintfield_default (L, 2 , " z_index" , 0 )));
1859
1861
1860
1862
// Deprecated, only for compatibility's sake
1861
1863
if (elem->dir == 0 )
@@ -1921,6 +1923,9 @@ void push_hud_element(lua_State *L, HudElement *elem)
1921
1923
1922
1924
push_v3f (L, elem->world_pos );
1923
1925
lua_setfield (L, -2 , " world_pos" );
1926
+
1927
+ lua_pushnumber (L, elem->z_index );
1928
+ lua_setfield (L, -2 , " z_index" );
1924
1929
}
1925
1930
1926
1931
HudElementStat read_hud_change (lua_State *L, HudElement *elem, void **value)
@@ -1978,6 +1983,10 @@ HudElementStat read_hud_change(lua_State *L, HudElement *elem, void **value)
1978
1983
elem->size = read_v2s32 (L, 4 );
1979
1984
*value = &elem->size ;
1980
1985
break ;
1986
+ case HUD_STAT_Z_INDEX:
1987
+ elem->z_index = MYMAX (S16_MIN, MYMIN (S16_MAX, luaL_checknumber (L, 4 )));
1988
+ *value = &elem->z_index ;
1989
+ break ;
1981
1990
}
1982
1991
return stat;
1983
1992
}
0 commit comments