mirror of
https://github.com/coop-deluxe/sm64coopdx.git
synced 2024-11-26 05:55:15 +00:00
Fix compile errors / run autogen
This commit is contained in:
parent
dec4d0c51c
commit
2115e4358d
7 changed files with 186 additions and 35 deletions
|
@ -2142,6 +2142,12 @@ function is_player_active(m)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--- @param m MarioState
|
||||||
|
--- @return integer
|
||||||
|
function is_player_in_local_area(m)
|
||||||
|
-- ...
|
||||||
|
end
|
||||||
|
|
||||||
--- @param obj Object
|
--- @param obj Object
|
||||||
--- @param x number
|
--- @param x number
|
||||||
--- @param y number
|
--- @param y number
|
||||||
|
@ -2642,6 +2648,14 @@ function random_mod_offset(base, step, mod)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--- @param threshold number
|
||||||
|
--- @param distanceToPlayer Pointer_integer
|
||||||
|
--- @param angleToPlayer Pointer_integer
|
||||||
|
--- @return nil
|
||||||
|
function treat_far_home_as_mario(threshold, distanceToPlayer, angleToPlayer)
|
||||||
|
-- ...
|
||||||
|
end
|
||||||
|
|
||||||
--- @param x0 integer
|
--- @param x0 integer
|
||||||
--- @param x1 integer
|
--- @param x1 integer
|
||||||
--- @return integer
|
--- @return integer
|
||||||
|
@ -3475,6 +3489,11 @@ function enable_time_stop()
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--- @return nil
|
||||||
|
function enable_time_stop_if_alone()
|
||||||
|
-- ...
|
||||||
|
end
|
||||||
|
|
||||||
--- @return nil
|
--- @return nil
|
||||||
function enable_time_stop_including_mario()
|
function enable_time_stop_including_mario()
|
||||||
-- ...
|
-- ...
|
||||||
|
@ -3912,6 +3931,12 @@ function set_time_stop_flags(flags)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--- @param flags integer
|
||||||
|
--- @return nil
|
||||||
|
function set_time_stop_flags_if_alone(flags)
|
||||||
|
-- ...
|
||||||
|
end
|
||||||
|
|
||||||
--- @param x integer
|
--- @param x integer
|
||||||
--- @return integer
|
--- @return integer
|
||||||
function signum_positive(x)
|
function signum_positive(x)
|
||||||
|
|
|
@ -31,6 +31,7 @@
|
||||||
--- @field public instantWarps InstantWarp
|
--- @field public instantWarps InstantWarp
|
||||||
--- @field public localAreaTimer integer
|
--- @field public localAreaTimer integer
|
||||||
--- @field public macroObjects Pointer_integer
|
--- @field public macroObjects Pointer_integer
|
||||||
|
--- @field public macroObjectsAltered Pointer_integer
|
||||||
--- @field public musicParam integer
|
--- @field public musicParam integer
|
||||||
--- @field public musicParam2 integer
|
--- @field public musicParam2 integer
|
||||||
--- @field public objectSpawnInfos SpawnInfo
|
--- @field public objectSpawnInfos SpawnInfo
|
||||||
|
@ -1326,6 +1327,7 @@
|
||||||
--- @field public prevObj Object
|
--- @field public prevObj Object
|
||||||
--- @field public respawnInfoType integer
|
--- @field public respawnInfoType integer
|
||||||
--- @field public unused1 integer
|
--- @field public unused1 integer
|
||||||
|
--- @field public usingObj Object
|
||||||
|
|
||||||
--- @class ObjectHitbox
|
--- @class ObjectHitbox
|
||||||
--- @field public damageOrCoinValue integer
|
--- @field public damageOrCoinValue integer
|
||||||
|
|
|
@ -399,6 +399,7 @@
|
||||||
- [is_nearest_mario_state_to_object](#is_nearest_mario_state_to_object)
|
- [is_nearest_mario_state_to_object](#is_nearest_mario_state_to_object)
|
||||||
- [is_nearest_player_to_object](#is_nearest_player_to_object)
|
- [is_nearest_player_to_object](#is_nearest_player_to_object)
|
||||||
- [is_player_active](#is_player_active)
|
- [is_player_active](#is_player_active)
|
||||||
|
- [is_player_in_local_area](#is_player_in_local_area)
|
||||||
- [is_point_close_to_object](#is_point_close_to_object)
|
- [is_point_close_to_object](#is_point_close_to_object)
|
||||||
- [is_point_within_radius_of_mario](#is_point_within_radius_of_mario)
|
- [is_point_within_radius_of_mario](#is_point_within_radius_of_mario)
|
||||||
- [nearest_mario_state_to_object](#nearest_mario_state_to_object)
|
- [nearest_mario_state_to_object](#nearest_mario_state_to_object)
|
||||||
|
@ -472,6 +473,7 @@
|
||||||
- [platform_on_track_update_pos_or_spawn_ball](#platform_on_track_update_pos_or_spawn_ball)
|
- [platform_on_track_update_pos_or_spawn_ball](#platform_on_track_update_pos_or_spawn_ball)
|
||||||
- [random_linear_offset](#random_linear_offset)
|
- [random_linear_offset](#random_linear_offset)
|
||||||
- [random_mod_offset](#random_mod_offset)
|
- [random_mod_offset](#random_mod_offset)
|
||||||
|
- [treat_far_home_as_mario](#treat_far_home_as_mario)
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
|
@ -614,6 +616,7 @@
|
||||||
- [dist_between_object_and_point](#dist_between_object_and_point)
|
- [dist_between_object_and_point](#dist_between_object_and_point)
|
||||||
- [dist_between_objects](#dist_between_objects)
|
- [dist_between_objects](#dist_between_objects)
|
||||||
- [enable_time_stop](#enable_time_stop)
|
- [enable_time_stop](#enable_time_stop)
|
||||||
|
- [enable_time_stop_if_alone](#enable_time_stop_if_alone)
|
||||||
- [enable_time_stop_including_mario](#enable_time_stop_including_mario)
|
- [enable_time_stop_including_mario](#enable_time_stop_including_mario)
|
||||||
- [find_unimportant_object](#find_unimportant_object)
|
- [find_unimportant_object](#find_unimportant_object)
|
||||||
- [geo_offset_klepto_debug](#geo_offset_klepto_debug)
|
- [geo_offset_klepto_debug](#geo_offset_klepto_debug)
|
||||||
|
@ -676,6 +679,7 @@
|
||||||
- [random_f32_around_zero](#random_f32_around_zero)
|
- [random_f32_around_zero](#random_f32_around_zero)
|
||||||
- [set_mario_interact_hoot_if_in_range](#set_mario_interact_hoot_if_in_range)
|
- [set_mario_interact_hoot_if_in_range](#set_mario_interact_hoot_if_in_range)
|
||||||
- [set_time_stop_flags](#set_time_stop_flags)
|
- [set_time_stop_flags](#set_time_stop_flags)
|
||||||
|
- [set_time_stop_flags_if_alone](#set_time_stop_flags_if_alone)
|
||||||
- [signum_positive](#signum_positive)
|
- [signum_positive](#signum_positive)
|
||||||
- [spawn_base_star_with_no_lvl_exit](#spawn_base_star_with_no_lvl_exit)
|
- [spawn_base_star_with_no_lvl_exit](#spawn_base_star_with_no_lvl_exit)
|
||||||
- [spawn_mist_particles](#spawn_mist_particles)
|
- [spawn_mist_particles](#spawn_mist_particles)
|
||||||
|
@ -7447,6 +7451,26 @@ The `reliable` field will ensure that the packet arrives, but should be used spa
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
|
## [is_player_in_local_area](#is_player_in_local_area)
|
||||||
|
|
||||||
|
### Lua Example
|
||||||
|
`local integerValue = is_player_in_local_area(m)`
|
||||||
|
|
||||||
|
### Parameters
|
||||||
|
| Field | Type |
|
||||||
|
| ----- | ---- |
|
||||||
|
| m | [MarioState](structs.md#MarioState) |
|
||||||
|
|
||||||
|
### Returns
|
||||||
|
- `integer`
|
||||||
|
|
||||||
|
### C Prototype
|
||||||
|
`u8 is_player_in_local_area(struct MarioState* m);`
|
||||||
|
|
||||||
|
[:arrow_up_small:](#)
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
## [is_point_close_to_object](#is_point_close_to_object)
|
## [is_point_close_to_object](#is_point_close_to_object)
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
|
@ -8908,6 +8932,28 @@ The `reliable` field will ensure that the packet arrives, but should be used spa
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
|
## [treat_far_home_as_mario](#treat_far_home_as_mario)
|
||||||
|
|
||||||
|
### Lua Example
|
||||||
|
`treat_far_home_as_mario(threshold, distanceToPlayer, angleToPlayer)`
|
||||||
|
|
||||||
|
### Parameters
|
||||||
|
| Field | Type |
|
||||||
|
| ----- | ---- |
|
||||||
|
| threshold | `number` |
|
||||||
|
| distanceToPlayer | `Pointer` <`integer`> |
|
||||||
|
| angleToPlayer | `Pointer` <`integer`> |
|
||||||
|
|
||||||
|
### Returns
|
||||||
|
- None
|
||||||
|
|
||||||
|
### C Prototype
|
||||||
|
`void treat_far_home_as_mario(f32 threshold, s32* distanceToPlayer, s32* angleToPlayer);`
|
||||||
|
|
||||||
|
[:arrow_up_small:](#)
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
---
|
---
|
||||||
# functions from object_helpers.c
|
# functions from object_helpers.c
|
||||||
|
|
||||||
|
@ -11619,6 +11665,24 @@ The `reliable` field will ensure that the packet arrives, but should be used spa
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
|
## [enable_time_stop_if_alone](#enable_time_stop_if_alone)
|
||||||
|
|
||||||
|
### Lua Example
|
||||||
|
`enable_time_stop_if_alone()`
|
||||||
|
|
||||||
|
### Parameters
|
||||||
|
- None
|
||||||
|
|
||||||
|
### Returns
|
||||||
|
- None
|
||||||
|
|
||||||
|
### C Prototype
|
||||||
|
`void enable_time_stop_if_alone(void);`
|
||||||
|
|
||||||
|
[:arrow_up_small:](#)
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
## [enable_time_stop_including_mario](#enable_time_stop_including_mario)
|
## [enable_time_stop_including_mario](#enable_time_stop_including_mario)
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
|
@ -12921,6 +12985,26 @@ The `reliable` field will ensure that the packet arrives, but should be used spa
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
|
## [set_time_stop_flags_if_alone](#set_time_stop_flags_if_alone)
|
||||||
|
|
||||||
|
### Lua Example
|
||||||
|
`set_time_stop_flags_if_alone(flags)`
|
||||||
|
|
||||||
|
### Parameters
|
||||||
|
| Field | Type |
|
||||||
|
| ----- | ---- |
|
||||||
|
| flags | `integer` |
|
||||||
|
|
||||||
|
### Returns
|
||||||
|
- None
|
||||||
|
|
||||||
|
### C Prototype
|
||||||
|
`void set_time_stop_flags_if_alone(s32 flags);`
|
||||||
|
|
||||||
|
[:arrow_up_small:](#)
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
## [signum_positive](#signum_positive)
|
## [signum_positive](#signum_positive)
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
|
|
|
@ -113,6 +113,7 @@
|
||||||
| instantWarps | [InstantWarp](structs.md#InstantWarp) | |
|
| instantWarps | [InstantWarp](structs.md#InstantWarp) | |
|
||||||
| localAreaTimer | `integer` | read-only |
|
| localAreaTimer | `integer` | read-only |
|
||||||
| macroObjects | `Pointer` <`integer`> | read-only |
|
| macroObjects | `Pointer` <`integer`> | read-only |
|
||||||
|
| macroObjectsAltered | `Pointer` <`integer`> | read-only |
|
||||||
| musicParam | `integer` | |
|
| musicParam | `integer` | |
|
||||||
| musicParam2 | `integer` | |
|
| musicParam2 | `integer` | |
|
||||||
| objectSpawnInfos | [SpawnInfo](structs.md#SpawnInfo) | |
|
| objectSpawnInfos | [SpawnInfo](structs.md#SpawnInfo) | |
|
||||||
|
@ -878,6 +879,7 @@
|
||||||
| prevObj | [Object](structs.md#Object) | |
|
| prevObj | [Object](structs.md#Object) | |
|
||||||
| respawnInfoType | `integer` | |
|
| respawnInfoType | `integer` | |
|
||||||
| unused1 | `integer` | |
|
| unused1 | `integer` | |
|
||||||
|
| usingObj | [Object](structs.md#Object) | |
|
||||||
|
|
||||||
### Object-Independent Data Fields
|
### Object-Independent Data Fields
|
||||||
| Field | Type | Access |
|
| Field | Type | Access |
|
||||||
|
|
|
@ -508,7 +508,7 @@ s32 act_reading_automatic_dialog(struct MarioState *m) {
|
||||||
if (m->actionState == 9) {
|
if (m->actionState == 9) {
|
||||||
// only show dialog for local player
|
// only show dialog for local player
|
||||||
if (m == &gMarioStates[0]) {
|
if (m == &gMarioStates[0]) {
|
||||||
actionArg = m->actionArg;
|
u32 actionArg = m->actionArg;
|
||||||
if (GET_HIGH_U16_OF_32(actionArg) == 0) {
|
if (GET_HIGH_U16_OF_32(actionArg) == 0) {
|
||||||
create_dialog_box(GET_LOW_U16_OF_32(actionArg));
|
create_dialog_box(GET_LOW_U16_OF_32(actionArg));
|
||||||
} else {
|
} else {
|
||||||
|
@ -1428,13 +1428,14 @@ s32 act_bbh_enter_spin(struct MarioState *m) {
|
||||||
|
|
||||||
switch (m->actionState) {
|
switch (m->actionState) {
|
||||||
case 0:
|
case 0:
|
||||||
f32 floorDist = 512.0f - (m->pos[1] - m->floorHeight);
|
{
|
||||||
m->vel[1] = floorDist > 0 ? sqrtf(4.0f * floorDist + 1.0f) - 1.0f : 2.0f;
|
f32 floorDist = 512.0f - (m->pos[1] - m->floorHeight);
|
||||||
|
m->vel[1] = floorDist > 0 ? sqrtf(4.0f * floorDist + 1.0f) - 1.0f : 2.0f;
|
||||||
|
|
||||||
m->actionState = 1;
|
m->actionState = 1;
|
||||||
m->actionTimer = 100;
|
m->actionTimer = 100;
|
||||||
|
}
|
||||||
// fall through
|
// fall through
|
||||||
|
|
||||||
case 1:
|
case 1:
|
||||||
m->faceAngle[1] = atan2s(cageDZ, cageDX);
|
m->faceAngle[1] = atan2s(cageDZ, cageDX);
|
||||||
mario_set_forward_vel(m, forwardVel);
|
mario_set_forward_vel(m, forwardVel);
|
||||||
|
|
|
@ -46,28 +46,29 @@ static struct LuaObjectField sAnimationFields[LUA_ANIMATION_FIELD_COUNT] = {
|
||||||
{ "values", LVT_S16_P, offsetof(struct Animation, values), true, LOT_POINTER },
|
{ "values", LVT_S16_P, offsetof(struct Animation, values), true, LOT_POINTER },
|
||||||
};
|
};
|
||||||
|
|
||||||
#define LUA_AREA_FIELD_COUNT 14
|
#define LUA_AREA_FIELD_COUNT 15
|
||||||
static struct LuaObjectField sAreaFields[LUA_AREA_FIELD_COUNT] = {
|
static struct LuaObjectField sAreaFields[LUA_AREA_FIELD_COUNT] = {
|
||||||
// { "cachedBehaviors", LOT_???, offsetof(struct Area, cachedBehaviors), false, LOT_??? }, <--- UNIMPLEMENTED
|
// { "cachedBehaviors", LOT_???, offsetof(struct Area, cachedBehaviors), false, LOT_??? }, <--- UNIMPLEMENTED
|
||||||
// { "cachedPositions", LOT_???, offsetof(struct Area, cachedPositions), false, LOT_??? }, <--- UNIMPLEMENTED
|
// { "cachedPositions", LOT_???, offsetof(struct Area, cachedPositions), false, LOT_??? }, <--- UNIMPLEMENTED
|
||||||
{ "camera", LVT_COBJECT_P, offsetof(struct Area, camera), false, LOT_CAMERA },
|
{ "camera", LVT_COBJECT_P, offsetof(struct Area, camera), false, LOT_CAMERA },
|
||||||
// { "dialog", LOT_???, offsetof(struct Area, dialog), false, LOT_??? }, <--- UNIMPLEMENTED
|
// { "dialog", LOT_???, offsetof(struct Area, dialog), false, LOT_??? }, <--- UNIMPLEMENTED
|
||||||
{ "flags", LVT_S8, offsetof(struct Area, flags), false, LOT_NONE },
|
{ "flags", LVT_S8, offsetof(struct Area, flags), false, LOT_NONE },
|
||||||
{ "index", LVT_S8, offsetof(struct Area, index), false, LOT_NONE },
|
{ "index", LVT_S8, offsetof(struct Area, index), false, LOT_NONE },
|
||||||
{ "instantWarps", LVT_COBJECT_P, offsetof(struct Area, instantWarps), false, LOT_INSTANTWARP },
|
{ "instantWarps", LVT_COBJECT_P, offsetof(struct Area, instantWarps), false, LOT_INSTANTWARP },
|
||||||
{ "localAreaTimer", LVT_U32, offsetof(struct Area, localAreaTimer), true, LOT_NONE },
|
{ "localAreaTimer", LVT_U32, offsetof(struct Area, localAreaTimer), true, LOT_NONE },
|
||||||
{ "macroObjects", LVT_S16_P, offsetof(struct Area, macroObjects), true, LOT_POINTER },
|
{ "macroObjects", LVT_S16_P, offsetof(struct Area, macroObjects), true, LOT_POINTER },
|
||||||
{ "musicParam", LVT_U16, offsetof(struct Area, musicParam), false, LOT_NONE },
|
{ "macroObjectsAltered", LVT_U8_P, offsetof(struct Area, macroObjectsAltered), true, LOT_POINTER },
|
||||||
{ "musicParam2", LVT_U16, offsetof(struct Area, musicParam2), false, LOT_NONE },
|
{ "musicParam", LVT_U16, offsetof(struct Area, musicParam), false, LOT_NONE },
|
||||||
{ "objectSpawnInfos", LVT_COBJECT_P, offsetof(struct Area, objectSpawnInfos), false, LOT_SPAWNINFO },
|
{ "musicParam2", LVT_U16, offsetof(struct Area, musicParam2), false, LOT_NONE },
|
||||||
{ "paintingWarpNodes", LVT_COBJECT_P, offsetof(struct Area, paintingWarpNodes), false, LOT_WARPNODE },
|
{ "objectSpawnInfos", LVT_COBJECT_P, offsetof(struct Area, objectSpawnInfos), false, LOT_SPAWNINFO },
|
||||||
{ "surfaceRooms", LVT_S8_P, offsetof(struct Area, surfaceRooms), true, LOT_POINTER },
|
{ "paintingWarpNodes", LVT_COBJECT_P, offsetof(struct Area, paintingWarpNodes), false, LOT_WARPNODE },
|
||||||
{ "terrainData", LVT_S16_P, offsetof(struct Area, terrainData), true, LOT_POINTER },
|
{ "surfaceRooms", LVT_S8_P, offsetof(struct Area, surfaceRooms), true, LOT_POINTER },
|
||||||
{ "terrainType", LVT_U16, offsetof(struct Area, terrainType), false, LOT_NONE },
|
{ "terrainData", LVT_S16_P, offsetof(struct Area, terrainData), true, LOT_POINTER },
|
||||||
// { "unk04", LVT_COBJECT_P, offsetof(struct Area, unk04), false, LOT_??? }, <--- UNIMPLEMENTED
|
{ "terrainType", LVT_U16, offsetof(struct Area, terrainType), false, LOT_NONE },
|
||||||
// { "unused28", LVT_COBJECT_P, offsetof(struct Area, unused28), false, LOT_??? }, <--- UNIMPLEMENTED
|
// { "unk04", LVT_COBJECT_P, offsetof(struct Area, unk04), false, LOT_??? }, <--- UNIMPLEMENTED
|
||||||
{ "warpNodes", LVT_COBJECT_P, offsetof(struct Area, warpNodes), false, LOT_OBJECTWARPNODE },
|
// { "unused28", LVT_COBJECT_P, offsetof(struct Area, unused28), false, LOT_??? }, <--- UNIMPLEMENTED
|
||||||
// { "whirlpools", LOT_???, offsetof(struct Area, whirlpools), false, LOT_??? }, <--- UNIMPLEMENTED
|
{ "warpNodes", LVT_COBJECT_P, offsetof(struct Area, warpNodes), false, LOT_OBJECTWARPNODE },
|
||||||
|
// { "whirlpools", LOT_???, offsetof(struct Area, whirlpools), false, LOT_??? }, <--- UNIMPLEMENTED
|
||||||
};
|
};
|
||||||
|
|
||||||
#define LUA_BULLY_COLLISION_DATA_FIELD_COUNT 6
|
#define LUA_BULLY_COLLISION_DATA_FIELD_COUNT 6
|
||||||
|
@ -681,7 +682,7 @@ static struct LuaObjectField sNetworkPlayerFields[LUA_NETWORK_PLAYER_FIELD_COUNT
|
||||||
{ "type", LVT_U8, offsetof(struct NetworkPlayer, type), true, LOT_NONE },
|
{ "type", LVT_U8, offsetof(struct NetworkPlayer, type), true, LOT_NONE },
|
||||||
};
|
};
|
||||||
|
|
||||||
#define LUA_OBJECT_FIELD_COUNT 751
|
#define LUA_OBJECT_FIELD_COUNT 752
|
||||||
static struct LuaObjectField sObjectFields[LUA_OBJECT_FIELD_COUNT] = {
|
static struct LuaObjectField sObjectFields[LUA_OBJECT_FIELD_COUNT] = {
|
||||||
{ "activeFlags", LVT_S16, offsetof(struct Object, activeFlags), false, LOT_NONE },
|
{ "activeFlags", LVT_S16, offsetof(struct Object, activeFlags), false, LOT_NONE },
|
||||||
{ "areaTimer", LVT_U32, offsetof(struct Object, areaTimer), false, LOT_NONE },
|
{ "areaTimer", LVT_U32, offsetof(struct Object, areaTimer), false, LOT_NONE },
|
||||||
|
@ -1446,6 +1447,7 @@ static struct LuaObjectField sObjectFields[LUA_OBJECT_FIELD_COUNT] = {
|
||||||
{ "respawnInfoType", LVT_S16, offsetof(struct Object, respawnInfoType), false, LOT_NONE },
|
{ "respawnInfoType", LVT_S16, offsetof(struct Object, respawnInfoType), false, LOT_NONE },
|
||||||
// { "transform", LVT_???, offsetof(struct Object, transform), false, LOT_??? }, <--- UNIMPLEMENTED
|
// { "transform", LVT_???, offsetof(struct Object, transform), false, LOT_??? }, <--- UNIMPLEMENTED
|
||||||
{ "unused1", LVT_U32, offsetof(struct Object, unused1), false, LOT_NONE },
|
{ "unused1", LVT_U32, offsetof(struct Object, unused1), false, LOT_NONE },
|
||||||
|
{ "usingObj", LVT_COBJECT_P, offsetof(struct Object, usingObj), false, LOT_OBJECT },
|
||||||
};
|
};
|
||||||
|
|
||||||
#define LUA_OBJECT_HITBOX_FIELD_COUNT 9
|
#define LUA_OBJECT_HITBOX_FIELD_COUNT 9
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
int smlua_func_get_behavior_from_id(lua_State* L) {
|
int smlua_func_get_behavior_from_id(lua_State* L) {
|
||||||
if(!smlua_functions_valid_param_count(L, 1)) { return 0; }
|
if(!smlua_functions_valid_param_count(L, 1)) { return 0; }
|
||||||
|
|
||||||
s32 id = smlua_to_integer(L, 1);
|
int id = smlua_to_integer(L, 1);
|
||||||
if (!gSmLuaConvertSuccess) { return 0; }
|
if (!gSmLuaConvertSuccess) { return 0; }
|
||||||
|
|
||||||
smlua_push_pointer(L, LVT_BEHAVIORSCRIPT_P, (void*)get_behavior_from_id(id));
|
smlua_push_pointer(L, LVT_BEHAVIORSCRIPT_P, (void*)get_behavior_from_id(id));
|
||||||
|
@ -4936,6 +4936,18 @@ int smlua_func_is_player_active(lua_State* L) {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int smlua_func_is_player_in_local_area(lua_State* L) {
|
||||||
|
if(!smlua_functions_valid_param_count(L, 1)) { return 0; }
|
||||||
|
|
||||||
|
struct MarioState* m = (struct MarioState*)smlua_to_cobject(L, 1, LOT_MARIOSTATE);
|
||||||
|
if (!gSmLuaConvertSuccess) { return 0; }
|
||||||
|
|
||||||
|
extern u8 is_player_in_local_area(struct MarioState* m);
|
||||||
|
lua_pushinteger(L, is_player_in_local_area(m));
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
int smlua_func_is_point_close_to_object(lua_State* L) {
|
int smlua_func_is_point_close_to_object(lua_State* L) {
|
||||||
if(!smlua_functions_valid_param_count(L, 5)) { return 0; }
|
if(!smlua_functions_valid_param_count(L, 5)) { return 0; }
|
||||||
|
|
||||||
|
@ -5950,23 +5962,21 @@ int smlua_func_random_mod_offset(lua_State* L) {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
int smlua_func_treat_far_home_as_mario(lua_State* L) {
|
int smlua_func_treat_far_home_as_mario(lua_State* L) {
|
||||||
if(!smlua_functions_valid_param_count(L, 3)) { return 0; }
|
if(!smlua_functions_valid_param_count(L, 3)) { return 0; }
|
||||||
|
|
||||||
f32 threshold = smlua_to_number(L, 1);
|
f32 threshold = smlua_to_number(L, 1);
|
||||||
if (!gSmLuaConvertSuccess) { return 0; }
|
if (!gSmLuaConvertSuccess) { return 0; }
|
||||||
// int* distanceToPlayer = (int*)smlua_to_cobject(L, 2, LOT_???); <--- UNIMPLEMENTED
|
s32* distanceToPlayer = (s32*)smlua_to_cpointer(L, 2, LVT_S32_P);
|
||||||
if (!gSmLuaConvertSuccess) { return 0; }
|
if (!gSmLuaConvertSuccess) { return 0; }
|
||||||
// int* angleToPlayer = (int*)smlua_to_cobject(L, 3, LOT_???); <--- UNIMPLEMENTED
|
s32* angleToPlayer = (s32*)smlua_to_cpointer(L, 3, LVT_S32_P);
|
||||||
if (!gSmLuaConvertSuccess) { return 0; }
|
if (!gSmLuaConvertSuccess) { return 0; }
|
||||||
|
|
||||||
extern void treat_far_home_as_mario(f32 threshold, int* distanceToPlayer, int* angleToPlayer);
|
extern void treat_far_home_as_mario(f32 threshold, s32* distanceToPlayer, s32* angleToPlayer);
|
||||||
treat_far_home_as_mario(threshold, distanceToPlayer, angleToPlayer);
|
treat_far_home_as_mario(threshold, distanceToPlayer, angleToPlayer);
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
|
||||||
//////////////////////
|
//////////////////////
|
||||||
// object_helpers.c //
|
// object_helpers.c //
|
||||||
|
@ -7656,6 +7666,16 @@ int smlua_func_enable_time_stop(UNUSED lua_State* L) {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int smlua_func_enable_time_stop_if_alone(UNUSED lua_State* L) {
|
||||||
|
if(!smlua_functions_valid_param_count(L, 0)) { return 0; }
|
||||||
|
|
||||||
|
|
||||||
|
extern void enable_time_stop_if_alone(void);
|
||||||
|
enable_time_stop_if_alone();
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
int smlua_func_enable_time_stop_including_mario(UNUSED lua_State* L) {
|
int smlua_func_enable_time_stop_including_mario(UNUSED lua_State* L) {
|
||||||
if(!smlua_functions_valid_param_count(L, 0)) { return 0; }
|
if(!smlua_functions_valid_param_count(L, 0)) { return 0; }
|
||||||
|
|
||||||
|
@ -8760,6 +8780,18 @@ int smlua_func_set_time_stop_flags(lua_State* L) {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int smlua_func_set_time_stop_flags_if_alone(lua_State* L) {
|
||||||
|
if(!smlua_functions_valid_param_count(L, 1)) { return 0; }
|
||||||
|
|
||||||
|
s32 flags = smlua_to_integer(L, 1);
|
||||||
|
if (!gSmLuaConvertSuccess) { return 0; }
|
||||||
|
|
||||||
|
extern void set_time_stop_flags_if_alone(s32 flags);
|
||||||
|
set_time_stop_flags_if_alone(flags);
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
int smlua_func_signum_positive(lua_State* L) {
|
int smlua_func_signum_positive(lua_State* L) {
|
||||||
if(!smlua_functions_valid_param_count(L, 1)) { return 0; }
|
if(!smlua_functions_valid_param_count(L, 1)) { return 0; }
|
||||||
|
|
||||||
|
@ -10297,6 +10329,7 @@ void smlua_bind_functions_autogen(void) {
|
||||||
smlua_bind_function(L, "is_nearest_mario_state_to_object", smlua_func_is_nearest_mario_state_to_object);
|
smlua_bind_function(L, "is_nearest_mario_state_to_object", smlua_func_is_nearest_mario_state_to_object);
|
||||||
smlua_bind_function(L, "is_nearest_player_to_object", smlua_func_is_nearest_player_to_object);
|
smlua_bind_function(L, "is_nearest_player_to_object", smlua_func_is_nearest_player_to_object);
|
||||||
smlua_bind_function(L, "is_player_active", smlua_func_is_player_active);
|
smlua_bind_function(L, "is_player_active", smlua_func_is_player_active);
|
||||||
|
smlua_bind_function(L, "is_player_in_local_area", smlua_func_is_player_in_local_area);
|
||||||
smlua_bind_function(L, "is_point_close_to_object", smlua_func_is_point_close_to_object);
|
smlua_bind_function(L, "is_point_close_to_object", smlua_func_is_point_close_to_object);
|
||||||
smlua_bind_function(L, "is_point_within_radius_of_mario", smlua_func_is_point_within_radius_of_mario);
|
smlua_bind_function(L, "is_point_within_radius_of_mario", smlua_func_is_point_within_radius_of_mario);
|
||||||
smlua_bind_function(L, "nearest_mario_state_to_object", smlua_func_nearest_mario_state_to_object);
|
smlua_bind_function(L, "nearest_mario_state_to_object", smlua_func_nearest_mario_state_to_object);
|
||||||
|
@ -10368,7 +10401,7 @@ void smlua_bind_functions_autogen(void) {
|
||||||
smlua_bind_function(L, "platform_on_track_update_pos_or_spawn_ball", smlua_func_platform_on_track_update_pos_or_spawn_ball);
|
smlua_bind_function(L, "platform_on_track_update_pos_or_spawn_ball", smlua_func_platform_on_track_update_pos_or_spawn_ball);
|
||||||
smlua_bind_function(L, "random_linear_offset", smlua_func_random_linear_offset);
|
smlua_bind_function(L, "random_linear_offset", smlua_func_random_linear_offset);
|
||||||
smlua_bind_function(L, "random_mod_offset", smlua_func_random_mod_offset);
|
smlua_bind_function(L, "random_mod_offset", smlua_func_random_mod_offset);
|
||||||
//smlua_bind_function(L, "treat_far_home_as_mario", smlua_func_treat_far_home_as_mario); <--- UNIMPLEMENTED
|
smlua_bind_function(L, "treat_far_home_as_mario", smlua_func_treat_far_home_as_mario);
|
||||||
|
|
||||||
// object_helpers.c
|
// object_helpers.c
|
||||||
smlua_bind_function(L, "abs_angle_diff", smlua_func_abs_angle_diff);
|
smlua_bind_function(L, "abs_angle_diff", smlua_func_abs_angle_diff);
|
||||||
|
@ -10510,6 +10543,7 @@ void smlua_bind_functions_autogen(void) {
|
||||||
smlua_bind_function(L, "dist_between_object_and_point", smlua_func_dist_between_object_and_point);
|
smlua_bind_function(L, "dist_between_object_and_point", smlua_func_dist_between_object_and_point);
|
||||||
smlua_bind_function(L, "dist_between_objects", smlua_func_dist_between_objects);
|
smlua_bind_function(L, "dist_between_objects", smlua_func_dist_between_objects);
|
||||||
smlua_bind_function(L, "enable_time_stop", smlua_func_enable_time_stop);
|
smlua_bind_function(L, "enable_time_stop", smlua_func_enable_time_stop);
|
||||||
|
smlua_bind_function(L, "enable_time_stop_if_alone", smlua_func_enable_time_stop_if_alone);
|
||||||
smlua_bind_function(L, "enable_time_stop_including_mario", smlua_func_enable_time_stop_including_mario);
|
smlua_bind_function(L, "enable_time_stop_including_mario", smlua_func_enable_time_stop_including_mario);
|
||||||
smlua_bind_function(L, "find_unimportant_object", smlua_func_find_unimportant_object);
|
smlua_bind_function(L, "find_unimportant_object", smlua_func_find_unimportant_object);
|
||||||
smlua_bind_function(L, "geo_offset_klepto_debug", smlua_func_geo_offset_klepto_debug);
|
smlua_bind_function(L, "geo_offset_klepto_debug", smlua_func_geo_offset_klepto_debug);
|
||||||
|
@ -10583,6 +10617,7 @@ void smlua_bind_functions_autogen(void) {
|
||||||
smlua_bind_function(L, "random_f32_around_zero", smlua_func_random_f32_around_zero);
|
smlua_bind_function(L, "random_f32_around_zero", smlua_func_random_f32_around_zero);
|
||||||
smlua_bind_function(L, "set_mario_interact_hoot_if_in_range", smlua_func_set_mario_interact_hoot_if_in_range);
|
smlua_bind_function(L, "set_mario_interact_hoot_if_in_range", smlua_func_set_mario_interact_hoot_if_in_range);
|
||||||
smlua_bind_function(L, "set_time_stop_flags", smlua_func_set_time_stop_flags);
|
smlua_bind_function(L, "set_time_stop_flags", smlua_func_set_time_stop_flags);
|
||||||
|
smlua_bind_function(L, "set_time_stop_flags_if_alone", smlua_func_set_time_stop_flags_if_alone);
|
||||||
smlua_bind_function(L, "signum_positive", smlua_func_signum_positive);
|
smlua_bind_function(L, "signum_positive", smlua_func_signum_positive);
|
||||||
smlua_bind_function(L, "spawn_base_star_with_no_lvl_exit", smlua_func_spawn_base_star_with_no_lvl_exit);
|
smlua_bind_function(L, "spawn_base_star_with_no_lvl_exit", smlua_func_spawn_base_star_with_no_lvl_exit);
|
||||||
smlua_bind_function(L, "spawn_mist_particles", smlua_func_spawn_mist_particles);
|
smlua_bind_function(L, "spawn_mist_particles", smlua_func_spawn_mist_particles);
|
||||||
|
|
Loading…
Reference in a new issue