From 033b11ac22f6bcb09a858640fce8defd7476899b Mon Sep 17 00:00:00 2001 From: MysterD Date: Fri, 25 Mar 2022 21:39:03 -0700 Subject: [PATCH] Make new timers immutable --- autogen/convert_structs.py | 2 ++ autogen/lua_definitions/structs.lua | 2 ++ docs/lua/structs.md | 2 ++ src/pc/lua/smlua_cobject_autogen.c | 6 ++++-- 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/autogen/convert_structs.py b/autogen/convert_structs.py index fb72344ec..5c552d8e4 100644 --- a/autogen/convert_structs.py +++ b/autogen/convert_structs.py @@ -76,6 +76,8 @@ override_field_immutable = { "Object": ["oSyncID", "coopFlags"], "GlobalObjectAnimations": [ "*"], "SpawnParticlesInfo": [ "model" ], + "MarioBodyState": [ "updateTorsoTime" ], + "Area": [ "localAreaTimer" ], } sLuaManuallyDefinedStructs = [ diff --git a/autogen/lua_definitions/structs.lua b/autogen/lua_definitions/structs.lua index 8fc072019..44fdfd607 100644 --- a/autogen/lua_definitions/structs.lua +++ b/autogen/lua_definitions/structs.lua @@ -29,6 +29,7 @@ --- @field public flags integer --- @field public index integer --- @field public instantWarps InstantWarp +--- @field public localAreaTimer integer --- @field public macroObjects Pointer_integer --- @field public musicParam integer --- @field public musicParam2 integer @@ -461,6 +462,7 @@ --- @field public punchState integer --- @field public torsoAngle Vec3s --- @field public torsoPos Vec3f +--- @field public updateTorsoTime integer --- @field public wingFlutter integer --- @class MarioState diff --git a/docs/lua/structs.md b/docs/lua/structs.md index 128d05eb5..aa99d2316 100644 --- a/docs/lua/structs.md +++ b/docs/lua/structs.md @@ -110,6 +110,7 @@ | flags | `integer` | | | index | `integer` | | | instantWarps | [InstantWarp](structs.md#InstantWarp) | | +| localAreaTimer | `integer` | read-only | | macroObjects | `Pointer` <`integer`> | read-only | | musicParam | `integer` | | | musicParam2 | `integer` | | @@ -710,6 +711,7 @@ | punchState | `integer` | | | torsoAngle | [Vec3s](structs.md#Vec3s) | read-only | | torsoPos | [Vec3f](structs.md#Vec3f) | read-only | +| updateTorsoTime | `integer` | read-only | | wingFlutter | `integer` | | [:arrow_up_small:](#) diff --git a/src/pc/lua/smlua_cobject_autogen.c b/src/pc/lua/smlua_cobject_autogen.c index f396510ba..66a20f52f 100644 --- a/src/pc/lua/smlua_cobject_autogen.c +++ b/src/pc/lua/smlua_cobject_autogen.c @@ -45,7 +45,7 @@ static struct LuaObjectField sAnimationFields[LUA_ANIMATION_FIELD_COUNT] = { { "values", LVT_S16_P, offsetof(struct Animation, values), true, LOT_POINTER }, }; -#define LUA_AREA_FIELD_COUNT 13 +#define LUA_AREA_FIELD_COUNT 14 static struct LuaObjectField sAreaFields[LUA_AREA_FIELD_COUNT] = { // { "cachedBehaviors", LOT_???, offsetof(struct Area, cachedBehaviors), false, LOT_??? }, <--- UNIMPLEMENTED // { "cachedPositions", LOT_???, offsetof(struct Area, cachedPositions), false, LOT_??? }, <--- UNIMPLEMENTED @@ -54,6 +54,7 @@ static struct LuaObjectField sAreaFields[LUA_AREA_FIELD_COUNT] = { { "flags", LVT_S8, offsetof(struct Area, flags), false, LOT_NONE }, { "index", LVT_S8, offsetof(struct Area, index), false, LOT_NONE }, { "instantWarps", LVT_COBJECT_P, offsetof(struct Area, instantWarps), false, LOT_INSTANTWARP }, + { "localAreaTimer", LVT_U32, offsetof(struct Area, localAreaTimer), true, LOT_NONE }, { "macroObjects", LVT_S16_P, offsetof(struct Area, macroObjects), true, LOT_POINTER }, { "musicParam", LVT_U16, offsetof(struct Area, musicParam), false, LOT_NONE }, { "musicParam2", LVT_U16, offsetof(struct Area, musicParam2), false, LOT_NONE }, @@ -543,7 +544,7 @@ static struct LuaObjectField sMarioAnimationFields[LUA_MARIO_ANIMATION_FIELD_COU { "targetAnim", LVT_COBJECT_P, offsetof(struct MarioAnimation, targetAnim), false, LOT_ANIMATION }, }; -#define LUA_MARIO_BODY_STATE_FIELD_COUNT 12 +#define LUA_MARIO_BODY_STATE_FIELD_COUNT 13 static struct LuaObjectField sMarioBodyStateFields[LUA_MARIO_BODY_STATE_FIELD_COUNT] = { { "action", LVT_U32, offsetof(struct MarioBodyState, action), false, LOT_NONE }, { "capState", LVT_S8, offsetof(struct MarioBodyState, capState), false, LOT_NONE }, @@ -557,6 +558,7 @@ static struct LuaObjectField sMarioBodyStateFields[LUA_MARIO_BODY_STATE_FIELD_CO { "punchState", LVT_U8, offsetof(struct MarioBodyState, punchState), false, LOT_NONE }, { "torsoAngle", LVT_COBJECT, offsetof(struct MarioBodyState, torsoAngle), true, LOT_VEC3S }, { "torsoPos", LVT_COBJECT, offsetof(struct MarioBodyState, torsoPos), true, LOT_VEC3F }, + { "updateTorsoTime", LVT_U32, offsetof(struct MarioBodyState, updateTorsoTime), true, LOT_NONE }, { "wingFlutter", LVT_S8, offsetof(struct MarioBodyState, wingFlutter), false, LOT_NONE }, };