mirror of
https://github.com/The-Powder-Toy/The-Powder-Toy.git
synced 2025-08-31 19:51:45 +02:00
Add sim.listDefaultGol
This commit is contained in:
@@ -1502,6 +1502,28 @@ static int listCustomGol(lua_State *L)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int listDefaultGol(lua_State *L)
|
||||||
|
{
|
||||||
|
int i = 0;
|
||||||
|
lua_newtable(L);
|
||||||
|
for (auto &gol : SimulationData::builtinGol)
|
||||||
|
{
|
||||||
|
lua_newtable(L);
|
||||||
|
tpt_lua_pushString(L, gol.name);
|
||||||
|
lua_setfield(L, -2, "name");
|
||||||
|
tpt_lua_pushString(L, SerialiseGOLRule(gol.ruleset));
|
||||||
|
lua_setfield(L, -2, "rulestr");
|
||||||
|
lua_pushnumber(L, gol.ruleset);
|
||||||
|
lua_setfield(L, -2, "rule");
|
||||||
|
lua_pushnumber(L, gol.colour.Pack());
|
||||||
|
lua_setfield(L, -2, "color1");
|
||||||
|
lua_pushnumber(L, gol.colour2.Pack());
|
||||||
|
lua_setfield(L, -2, "color2");
|
||||||
|
lua_rawseti(L, -2, ++i);
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
static int addCustomGol(lua_State *L)
|
static int addCustomGol(lua_State *L)
|
||||||
{
|
{
|
||||||
auto &sd = SimulationData::CRef();
|
auto &sd = SimulationData::CRef();
|
||||||
@@ -1918,6 +1940,7 @@ void LuaSimulation::Open(lua_State *L)
|
|||||||
LFUNC(decoSpace),
|
LFUNC(decoSpace),
|
||||||
LFUNC(fanVelocityX),
|
LFUNC(fanVelocityX),
|
||||||
LFUNC(fanVelocityY),
|
LFUNC(fanVelocityY),
|
||||||
|
LFUNC(listDefaultGol),
|
||||||
#undef LFUNC
|
#undef LFUNC
|
||||||
{ NULL, NULL }
|
{ NULL, NULL }
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user