Expose K_StartItemRoulette, K_StartEggmanRoulette and K_StopRoulette to Lua

This commit is contained in:
JugadorXEI 2024-10-20 20:19:12 +02:00 committed by AJ Martinez
parent a6f228ec29
commit 7d0a0a61c3

View file

@ -4203,6 +4203,46 @@ static int lib_kPushToRouletteItemList(lua_State *L)
return 0;
}
static int lib_kStartItemRoulette(lua_State *L)
{
player_t *player = *((player_t **)luaL_checkudata(L, 1, META_PLAYER));
boolean ringbox = lua_optboolean(L, 2);
NOHUD
INLEVEL
if (!player)
return LUA_ErrInvalid(L, "player_t");
K_StartItemRoulette(player, ringbox);
return 0;
}
static int lib_kStartEggmanRoulette(lua_State *L)
{
player_t *player = *((player_t **)luaL_checkudata(L, 1, META_PLAYER));
NOHUD
INLEVEL
if (!player)
return LUA_ErrInvalid(L, "player_t");
K_StartEggmanRoulette(player);
return 0;
}
static int lib_kStopRoulette(lua_State *L)
{
player_t *player = *((player_t **)luaL_checkudata(L, 1, META_PLAYER));
NOHUD
INLEVEL
if (!player)
return LUA_ErrInvalid(L, "player_t");
K_StopRoulette(&player->itemRoulette);
return 0;
}
static int lib_getTimeMicros(lua_State *L)
{
lua_pushinteger(L, I_GetPreciseTime() / (I_GetPrecisePrecision() / 1000000));
@ -4495,6 +4535,9 @@ static luaL_Reg lib[] = {
{"K_GetBotItemPriority", lib_kGetBotItemPriority},
{"K_AddItemToReel", lib_kAddItemToReel},
{"K_PushToRouletteItemList", lib_kPushToRouletteItemList},
{"K_StartItemRoulette", lib_kStartItemRoulette},
{"K_StartEggmanRoulette", lib_kStartEggmanRoulette},
{"K_StopRoulette", lib_kStopRoulette},
// hu_stuff technically?
{"HU_DoTitlecardCEcho", lib_startTitlecardCecho},