Revert "Merge branch 'writable-colormaps' into 'next'"

This reverts merge request !959
This commit is contained in:
LZA 2021-11-08 03:40:53 +00:00
parent 9a5bb59801
commit 34b05efdf1

View file

@ -265,7 +265,7 @@ static int hudinfo_num(lua_State *L)
static int colormap_get(lua_State *L) static int colormap_get(lua_State *L)
{ {
UINT8 *colormap = *((UINT8 **)luaL_checkudata(L, 1, META_COLORMAP)); const UINT8 *colormap = *((UINT8 **)luaL_checkudata(L, 1, META_COLORMAP));
UINT32 i = luaL_checkinteger(L, 2); UINT32 i = luaL_checkinteger(L, 2);
if (i >= 256) if (i >= 256)
return luaL_error(L, "colormap index %d out of range (0 - %d)", i, 255); return luaL_error(L, "colormap index %d out of range (0 - %d)", i, 255);
@ -273,23 +273,6 @@ static int colormap_get(lua_State *L)
return 1; return 1;
} }
static int colormap_set(lua_State *L)
{
UINT8 *colormap = *((UINT8 **)luaL_checkudata(L, 1, META_COLORMAP));
UINT32 i = luaL_checkinteger(L, 2);
if (i >= 256)
return luaL_error(L, "colormap index %d out of range (0 - %d)", i, 255);
colormap[i] = (UINT8)luaL_checkinteger(L, 3);
return 0;
}
static int colormap_free(lua_State *L)
{
UINT8 *colormap = *((UINT8 **)luaL_checkudata(L, 1, META_COLORMAP));
Z_Free(colormap);
return 0;
}
static int patch_get(lua_State *L) static int patch_get(lua_State *L)
{ {
patch_t *patch = *((patch_t **)luaL_checkudata(L, 1, META_PATCH)); patch_t *patch = *((patch_t **)luaL_checkudata(L, 1, META_PATCH));
@ -1057,7 +1040,7 @@ static int libd_getColormap(lua_State *L)
// all was successful above, now we generate the colormap at last! // all was successful above, now we generate the colormap at last!
colormap = R_GetTranslationColormap(skinnum, color, 0); colormap = R_GetTranslationColormap(skinnum, color, GTC_CACHE);
LUA_PushUserdata(L, colormap, META_COLORMAP); // push as META_COLORMAP userdata, specifically for patches to use! LUA_PushUserdata(L, colormap, META_COLORMAP); // push as META_COLORMAP userdata, specifically for patches to use!
return 1; return 1;
} }
@ -1066,14 +1049,10 @@ static int libd_getStringColormap(lua_State *L)
{ {
INT32 flags = luaL_checkinteger(L, 1); INT32 flags = luaL_checkinteger(L, 1);
UINT8* colormap = NULL; UINT8* colormap = NULL;
UINT8* lua_colormap = NULL;
HUDONLY HUDONLY
colormap = V_GetStringColormap(flags & V_CHARCOLORMASK); colormap = V_GetStringColormap(flags & V_CHARCOLORMASK);
if (colormap) { if (colormap) {
lua_colormap = Z_Malloc(256 * sizeof(UINT8), PU_LUA, NULL); LUA_PushUserdata(L, colormap, META_COLORMAP); // push as META_COLORMAP userdata, specifically for patches to use!
memcpy(lua_colormap, colormap, 256 * sizeof(UINT8));
LUA_PushUserdata(L, lua_colormap, META_COLORMAP); // push as META_COLORMAP userdata, specifically for patches to use!
return 1; return 1;
} }
return 0; return 0;
@ -1348,12 +1327,6 @@ int LUA_HudLib(lua_State *L)
luaL_newmetatable(L, META_COLORMAP); luaL_newmetatable(L, META_COLORMAP);
lua_pushcfunction(L, colormap_get); lua_pushcfunction(L, colormap_get);
lua_setfield(L, -2, "__index"); lua_setfield(L, -2, "__index");
lua_pushcfunction(L, colormap_set);
lua_setfield(L, -2, "__newindex");
lua_pushcfunction(L, colormap_free);
lua_setfield(L, -2, "__gc");
lua_pop(L,1); lua_pop(L,1);
luaL_newmetatable(L, META_PATCH); luaL_newmetatable(L, META_PATCH);