Optimise boolean archiving
This commit is contained in:
parent
2e3c110534
commit
3e8fb8db25
|
@ -730,7 +730,8 @@ void LUA_InvalidatePlayer(player_t *player)
|
||||||
enum
|
enum
|
||||||
{
|
{
|
||||||
ARCH_NULL=0,
|
ARCH_NULL=0,
|
||||||
ARCH_BOOLEAN,
|
ARCH_TRUE,
|
||||||
|
ARCH_FALSE,
|
||||||
ARCH_SIGNED,
|
ARCH_SIGNED,
|
||||||
ARCH_SMALLSTRING,
|
ARCH_SMALLSTRING,
|
||||||
ARCH_LARGESTRING,
|
ARCH_LARGESTRING,
|
||||||
|
@ -818,8 +819,7 @@ static UINT8 ArchiveValue(int TABLESINDEX, int myindex)
|
||||||
WRITEUINT8(save_p, ARCH_NULL);
|
WRITEUINT8(save_p, ARCH_NULL);
|
||||||
return 2;
|
return 2;
|
||||||
case LUA_TBOOLEAN:
|
case LUA_TBOOLEAN:
|
||||||
WRITEUINT8(save_p, ARCH_BOOLEAN);
|
WRITEUINT8(save_p, lua_toboolean(gL, myindex) ? ARCH_TRUE : ARCH_FALSE);
|
||||||
WRITEUINT8(save_p, lua_toboolean(gL, myindex));
|
|
||||||
break;
|
break;
|
||||||
case LUA_TNUMBER:
|
case LUA_TNUMBER:
|
||||||
{
|
{
|
||||||
|
@ -1187,8 +1187,12 @@ static UINT8 UnArchiveValue(int TABLESINDEX)
|
||||||
case ARCH_NULL:
|
case ARCH_NULL:
|
||||||
lua_pushnil(gL);
|
lua_pushnil(gL);
|
||||||
break;
|
break;
|
||||||
case ARCH_BOOLEAN:
|
case ARCH_TRUE:
|
||||||
lua_pushboolean(gL, READUINT8(save_p));
|
lua_pushboolean(gL, true);
|
||||||
|
break;
|
||||||
|
case ARCH_FALSE:
|
||||||
|
lua_pushboolean(gL, false);
|
||||||
|
break;
|
||||||
break;
|
break;
|
||||||
case ARCH_SIGNED:
|
case ARCH_SIGNED:
|
||||||
lua_pushinteger(gL, READFIXED(save_p));
|
lua_pushinteger(gL, READFIXED(save_p));
|
||||||
|
|
Loading…
Reference in a new issue