* More math improvements * more math functions * stack check * added error message when trying to modify read-only table; fix gSmluaConstants printed to console
145 KiB
⏪ Lua Functions
< prev | 1 | 2 | 3 | 4 | 5 | 6 | next >]
functions from misc.h
smooth_step
Description
Smoothly steps between edge0
and edge1
with x
as delta
Lua Example
local numberValue = smooth_step(edge0, edge1, x)
Parameters
Field | Type |
---|---|
edge0 | number |
edge1 | number |
x | number |
Returns
number
C Prototype
float smooth_step(float edge0, float edge1, float x);
update_all_mario_stars
Description
Updates every Mario state's star count with the save file total star count
Lua Example
update_all_mario_stars()
Parameters
- None
Returns
- None
C Prototype
void update_all_mario_stars(void);
clock_elapsed
Description
Gets the current clock elapsed time
Lua Example
local numberValue = clock_elapsed()
Parameters
- None
Returns
number
C Prototype
f32 clock_elapsed(void);
clock_elapsed_f64
Description
Gets the current clock elapsed time with double precision
Lua Example
local numberValue = clock_elapsed_f64()
Parameters
- None
Returns
number
C Prototype
f64 clock_elapsed_f64(void);
clock_elapsed_ticks
Description
Gets the current clock elapsed time in frames
Lua Example
local integerValue = clock_elapsed_ticks()
Parameters
- None
Returns
integer
C Prototype
u32 clock_elapsed_ticks(void);
clock_is_date
Description
Checks whether it is the day given
Lua Example
local booleanValue = clock_is_date(month, day)
Parameters
Field | Type |
---|---|
month | integer |
day | integer |
Returns
boolean
C Prototype
bool clock_is_date(u8 month, u8 day);
delta_interpolate_f32
Description
Linearly interpolates between a
and b
with delta
Lua Example
local numberValue = delta_interpolate_f32(a, b, delta)
Parameters
Field | Type |
---|---|
a | number |
b | number |
delta | number |
Returns
number
C Prototype
f32 delta_interpolate_f32(f32 a, f32 b, f32 delta);
delta_interpolate_s32
Description
Linearly interpolates between a
and b
with delta
Lua Example
local integerValue = delta_interpolate_s32(a, b, delta)
Parameters
Field | Type |
---|---|
a | integer |
b | integer |
delta | number |
Returns
integer
C Prototype
s32 delta_interpolate_s32(s32 a, s32 b, f32 delta);
delta_interpolate_vec3f
Description
Linearly interpolates res
between a
and b
with delta
Lua Example
delta_interpolate_vec3f(res, a, b, delta)
Parameters
Field | Type |
---|---|
res | Vec3f |
a | Vec3f |
b | Vec3f |
delta | number |
Returns
- None
C Prototype
void delta_interpolate_vec3f(Vec3f res, Vec3f a, Vec3f b, f32 delta);
delta_interpolate_vec3s
Description
Linearly interpolates res
between a
and b
with delta
Lua Example
delta_interpolate_vec3s(res, a, b, delta)
Parameters
Field | Type |
---|---|
res | Vec3s |
a | Vec3s |
b | Vec3s |
delta | number |
Returns
- None
C Prototype
void delta_interpolate_vec3s(Vec3s res, Vec3s a, Vec3s b, f32 delta);
functions from mod_storage.h
mod_storage_save
Description
Saves a key
corresponding to a string value
to mod storage
Lua Example
local booleanValue = mod_storage_save(key, value)
Parameters
Field | Type |
---|---|
key | string |
value | string |
Returns
boolean
C Prototype
bool mod_storage_save(const char* key, const char* value);
mod_storage_save_number
Description
Saves a key
corresponding to a float value
to mod storage
Lua Example
local booleanValue = mod_storage_save_number(key, value)
Parameters
Field | Type |
---|---|
key | string |
value | number |
Returns
boolean
C Prototype
bool mod_storage_save_number(const char* key, f32 value);
mod_storage_save_bool
Description
Saves a key
corresponding to a bool value
to mod storage
Lua Example
local booleanValue = mod_storage_save_bool(key, value)
Parameters
Field | Type |
---|---|
key | string |
value | boolean |
Returns
boolean
C Prototype
bool mod_storage_save_bool(const char* key, bool value);
mod_storage_load
Description
Loads a string value
from a key
in mod storage
Lua Example
local stringValue = mod_storage_load(key)
Parameters
Field | Type |
---|---|
key | string |
Returns
string
C Prototype
const char *mod_storage_load(const char* key);
mod_storage_load_number
Description
Loads a float value
from a key
in mod storage
Lua Example
local numberValue = mod_storage_load_number(key)
Parameters
Field | Type |
---|---|
key | string |
Returns
number
C Prototype
f32 mod_storage_load_number(const char* key);
mod_storage_load_bool
Description
Loads a bool value
from a key
in mod storage
Lua Example
local booleanValue = mod_storage_load_bool(key)
Parameters
Field | Type |
---|---|
key | string |
Returns
boolean
C Prototype
bool mod_storage_load_bool(const char* key);
mod_storage_exists
Description
Checks if a key
is in mod storage
Lua Example
local booleanValue = mod_storage_exists(key)
Parameters
Field | Type |
---|---|
key | string |
Returns
boolean
C Prototype
bool mod_storage_exists(const char* key);
mod_storage_remove
Description
Removes a key
from mod storage
Lua Example
local booleanValue = mod_storage_remove(key)
Parameters
Field | Type |
---|---|
key | string |
Returns
boolean
C Prototype
bool mod_storage_remove(const char* key);
mod_storage_clear
Description
Clears the mod's data from mod storage
Lua Example
local booleanValue = mod_storage_clear()
Parameters
- None
Returns
boolean
C Prototype
bool mod_storage_clear(void);
functions from network_player.h
network_player_connected_count
Description
Gets the amount of players connected
Lua Example
local integerValue = network_player_connected_count()
Parameters
- None
Returns
integer
C Prototype
u8 network_player_connected_count(void);
network_player_set_description
Description
Sets the description field of np
Lua Example
network_player_set_description(np, description, r, g, b, a)
Parameters
Field | Type |
---|---|
np | NetworkPlayer |
description | string |
r | integer |
g | integer |
b | integer |
a | integer |
Returns
- None
C Prototype
void network_player_set_description(struct NetworkPlayer* np, const char* description, u8 r, u8 g, u8 b, u8 a);
network_player_set_override_location
Description
Overrides the location of np
Lua Example
network_player_set_override_location(np, location)
Parameters
Field | Type |
---|---|
np | NetworkPlayer |
location | string |
Returns
- None
C Prototype
void network_player_set_override_location(struct NetworkPlayer *np, const char *location);
network_player_from_global_index
Description
Gets a network player from globalIndex
Lua Example
local NetworkPlayerValue = network_player_from_global_index(globalIndex)
Parameters
Field | Type |
---|---|
globalIndex | integer |
Returns
C Prototype
struct NetworkPlayer* network_player_from_global_index(u8 globalIndex);
get_network_player_from_level
Description
Gets the first network player whose information matches courseNum
, actNum
, and levelNum
Lua Example
local NetworkPlayerValue = get_network_player_from_level(courseNum, actNum, levelNum)
Parameters
Field | Type |
---|---|
courseNum | integer |
actNum | integer |
levelNum | integer |
Returns
C Prototype
struct NetworkPlayer* get_network_player_from_level(s16 courseNum, s16 actNum, s16 levelNum);
get_network_player_from_area
Description
Gets the first network player whose information matches courseNum
, actNum
, levelNum
, and areaIndex
Lua Example
local NetworkPlayerValue = get_network_player_from_area(courseNum, actNum, levelNum, areaIndex)
Parameters
Field | Type |
---|---|
courseNum | integer |
actNum | integer |
levelNum | integer |
areaIndex | integer |
Returns
C Prototype
struct NetworkPlayer* get_network_player_from_area(s16 courseNum, s16 actNum, s16 levelNum, s16 areaIndex);
get_network_player_smallest_global
Description
Gets the active network player with the smallest global index. Useful for assigning one player to "own" some kind of functionality or object
Lua Example
local NetworkPlayerValue = get_network_player_smallest_global()
Parameters
- None
Returns
C Prototype
struct NetworkPlayer* get_network_player_smallest_global(void);
network_player_set_override_palette_color
Description
Sets the part in
np's override color palette
Lua Example
network_player_set_override_palette_color(np, part, color)
Parameters
Field | Type |
---|---|
np | NetworkPlayer |
part | enum PlayerPart |
color | Color |
Returns
- None
C Prototype
void network_player_set_override_palette_color(struct NetworkPlayer *np, enum PlayerPart part, Color color);
network_player_reset_override_palette
Description
Resets np
's override color palette
Lua Example
network_player_reset_override_palette(np)
Parameters
Field | Type |
---|---|
np | NetworkPlayer |
Returns
- None
C Prototype
void network_player_reset_override_palette(struct NetworkPlayer *np);
network_player_is_override_palette_same
Description
Checks if np
's override color palette is identical to the regular color palette
Lua Example
local booleanValue = network_player_is_override_palette_same(np)
Parameters
Field | Type |
---|---|
np | NetworkPlayer |
Returns
boolean
C Prototype
bool network_player_is_override_palette_same(struct NetworkPlayer *np);
functions from network_utils.h
network_global_index_from_local
Description
Gets a player's global index from their local index
Lua Example
local integerValue = network_global_index_from_local(localIndex)
Parameters
Field | Type |
---|---|
localIndex | integer |
Returns
integer
C Prototype
u8 network_global_index_from_local(u8 localIndex);
network_local_index_from_global
Description
Gets a player's local index from their global index
Lua Example
local integerValue = network_local_index_from_global(globalIndex)
Parameters
Field | Type |
---|---|
globalIndex | integer |
Returns
integer
C Prototype
u8 network_local_index_from_global(u8 globalIndex);
network_is_server
Description
Checks if you are hosting the current lobby, this value doesn't change
Lua Example
local booleanValue = network_is_server()
Parameters
- None
Returns
boolean
C Prototype
bool network_is_server(void);
network_is_moderator
Description
Checks if you are a moderator in the current lobby
Lua Example
local booleanValue = network_is_moderator()
Parameters
- None
Returns
boolean
C Prototype
bool network_is_moderator(void);
network_get_player_text_color_string
Description
Gets the DJUI hex color code string for the player corresponding to localIndex
's cap color
Lua Example
local stringValue = network_get_player_text_color_string(localIndex)
Parameters
Field | Type |
---|---|
localIndex | integer |
Returns
string
C Prototype
const char* network_get_player_text_color_string(u8 localIndex);
network_check_singleplayer_pause
Description
Checks if the game can currently be paused in singleplayer
Lua Example
local booleanValue = network_check_singleplayer_pause()
Parameters
- None
Returns
boolean
C Prototype
bool network_check_singleplayer_pause(void);
network_discord_id_from_local_index
Description
Gets a Discord ID corresponding to the network player with localIndex
Lua Example
local stringValue = network_discord_id_from_local_index(localIndex)
Parameters
Field | Type |
---|---|
localIndex | integer |
Returns
string
C Prototype
const char* network_discord_id_from_local_index(u8 localIndex);
functions from obj_behaviors.c
set_yoshi_as_not_dead
Description
Resets Yoshi as being alive
Lua Example
set_yoshi_as_not_dead()
Parameters
- None
Returns
- None
C Prototype
void set_yoshi_as_not_dead(void);
absf_2
Description
An absolute value (always positive) function.
Lua Example
local numberValue = absf_2(f)
Parameters
Field | Type |
---|---|
f | number |
Returns
number
C Prototype
f32 absf_2(f32 f);
obj_find_wall
Description
Finds any wall collisions, applies them, and turns away from the surface.
Lua Example
local integerValue = obj_find_wall(objNewX, objY, objNewZ, objVelX, objVelZ)
Parameters
Field | Type |
---|---|
objNewX | number |
objY | number |
objNewZ | number |
objVelX | number |
objVelZ | number |
Returns
integer
C Prototype
s8 obj_find_wall(f32 objNewX, f32 objY, f32 objNewZ, f32 objVelX, f32 objVelZ);
turn_obj_away_from_steep_floor
Description
Turns an object away from steep floors, similarly to walls.
Lua Example
local integerValue = turn_obj_away_from_steep_floor(objFloor, floorY, objVelX, objVelZ)
Parameters
Field | Type |
---|---|
objFloor | Surface |
floorY | number |
objVelX | number |
objVelZ | number |
Returns
integer
C Prototype
s8 turn_obj_away_from_steep_floor(struct Surface *objFloor, f32 floorY, f32 objVelX, f32 objVelZ);
obj_orient_graph
Description
Orients an object with the given normals, typically the surface under the object.
Lua Example
obj_orient_graph(obj, normalX, normalY, normalZ)
Parameters
Field | Type |
---|---|
obj | Object |
normalX | number |
normalY | number |
normalZ | number |
Returns
- None
C Prototype
void obj_orient_graph(struct Object *obj, f32 normalX, f32 normalY, f32 normalZ);
calc_obj_friction
Description
Orients an object with the given normals, typically the surface under the object.
Lua Example
calc_obj_friction(objFriction, floor_nY)
Parameters
Field | Type |
---|---|
objFriction | Pointer <number > |
floor_nY | number |
Returns
- None
C Prototype
void calc_obj_friction(f32 *objFriction, f32 floor_nY);
calc_new_obj_vel_and_pos_y
Description
Updates an objects speed for gravity and updates Y position.
Lua Example
calc_new_obj_vel_and_pos_y(objFloor, objFloorY, objVelX, objVelZ)
Parameters
Field | Type |
---|---|
objFloor | Surface |
objFloorY | number |
objVelX | number |
objVelZ | number |
Returns
- None
C Prototype
void calc_new_obj_vel_and_pos_y(struct Surface *objFloor, f32 objFloorY, f32 objVelX, f32 objVelZ);
calc_new_obj_vel_and_pos_y_underwater
Description
Adjusts the current object's veloicty and y position for being underwater
Lua Example
calc_new_obj_vel_and_pos_y_underwater(objFloor, floorY, objVelX, objVelZ, waterY)
Parameters
Field | Type |
---|---|
objFloor | Surface |
floorY | number |
objVelX | number |
objVelZ | number |
waterY | number |
Returns
- None
C Prototype
void calc_new_obj_vel_and_pos_y_underwater(struct Surface *objFloor, f32 floorY, f32 objVelX, f32 objVelZ, f32 waterY);
obj_update_pos_vel_xz
Description
Updates an objects position from oForwardVel and oMoveAngleYaw.
Lua Example
obj_update_pos_vel_xz()
Parameters
- None
Returns
- None
C Prototype
void obj_update_pos_vel_xz(void);
obj_splash
Description
Generates splashes if at surface of water, entering water, or bubbles if underwater
Lua Example
obj_splash(waterY, objY)
Parameters
Field | Type |
---|---|
waterY | integer |
objY | integer |
Returns
- None
C Prototype
void obj_splash(s32 waterY, s32 objY);
object_step
Description
Generic object move function. Handles walls, water, floors, and gravity. Returns flags for certain interactions
Lua Example
local integerValue = object_step()
Parameters
- None
Returns
integer
C Prototype
s16 object_step(void);
object_step_without_floor_orient
Description
Takes an object step but does not orient with the object's floor. Used for boulders, falling pillars, and the rolling snowman body
Lua Example
local integerValue = object_step_without_floor_orient()
Parameters
- None
Returns
integer
C Prototype
s16 object_step_without_floor_orient(void);
obj_move_xyz_using_fvel_and_yaw
Description
Don't use this function outside of of a context where the current object and obj
are the same. Moves obj
based on a seemingly random mix of using either the current obj or obj
's fields
Lua Example
obj_move_xyz_using_fvel_and_yaw(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void obj_move_xyz_using_fvel_and_yaw(struct Object *obj);
is_point_within_radius_of_mario
Description
Checks if a point is within distance from any active Mario visible to enemies' graphical position
Lua Example
local integerValue = is_point_within_radius_of_mario(x, y, z, dist)
Parameters
Field | Type |
---|---|
x | number |
y | number |
z | number |
dist | integer |
Returns
integer
C Prototype
s8 is_point_within_radius_of_mario(f32 x, f32 y, f32 z, s32 dist);
is_point_within_radius_of_any_player
Description
Checks if a point is within distance from any active Mario's graphical position
Lua Example
local integerValue = is_point_within_radius_of_any_player(x, y, z, dist)
Parameters
Field | Type |
---|---|
x | number |
y | number |
z | number |
dist | integer |
Returns
integer
C Prototype
s8 is_point_within_radius_of_any_player(f32 x, f32 y, f32 z, s32 dist);
is_player_active
Description
Checks if m
is in the current course/act/level/area and isn't bubbled
Lua Example
local integerValue = is_player_active(m)
Parameters
Field | Type |
---|---|
m | MarioState |
Returns
integer
C Prototype
u8 is_player_active(struct MarioState* m);
is_other_player_active
Description
Checks if any player besides the local player is in the current course/act/level/area
Lua Example
local integerValue = is_other_player_active()
Parameters
- None
Returns
integer
C Prototype
u8 is_other_player_active(void);
is_player_in_local_area
Description
Checks if m
is in the current course/act/level/area
Lua Example
local integerValue = is_player_in_local_area(m)
Parameters
Field | Type |
---|---|
m | MarioState |
Returns
integer
C Prototype
u8 is_player_in_local_area(struct MarioState* m);
nearest_mario_state_to_object
Description
Gets the nearest active Mario who isn't bubbled to obj
Lua Example
local MarioStateValue = nearest_mario_state_to_object(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
C Prototype
struct MarioState* nearest_mario_state_to_object(struct Object *obj);
nearest_possible_mario_state_to_object
Description
Gets the nearest possible Mario to obj
despite anything like bubbled state or enemy visibility
Lua Example
local MarioStateValue = nearest_possible_mario_state_to_object(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
C Prototype
struct MarioState* nearest_possible_mario_state_to_object(struct Object *obj);
nearest_player_to_object
Description
Gets the nearest player (Mario Object) to obj
Lua Example
local ObjectValue = nearest_player_to_object(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
C Prototype
struct Object* nearest_player_to_object(struct Object *obj);
nearest_interacting_mario_state_to_object
Description
Gets the nearest interacting Mario to obj
Lua Example
local MarioStateValue = nearest_interacting_mario_state_to_object(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
C Prototype
struct MarioState *nearest_interacting_mario_state_to_object(struct Object *obj);
nearest_interacting_player_to_object
Description
Gets the nearest interacting player (Mario Object) to obj
Lua Example
local ObjectValue = nearest_interacting_player_to_object(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
C Prototype
struct Object *nearest_interacting_player_to_object(struct Object *obj);
is_nearest_mario_state_to_object
Description
Checks if m
is the nearest Mario to obj
Lua Example
local integerValue = is_nearest_mario_state_to_object(m, obj)
Parameters
Field | Type |
---|---|
m | MarioState |
obj | Object |
Returns
integer
C Prototype
u8 is_nearest_mario_state_to_object(struct MarioState *m, struct Object *obj);
is_nearest_player_to_object
Description
Checks if m
is the nearest player (Mario Object) to obj
Lua Example
local integerValue = is_nearest_player_to_object(m, obj)
Parameters
Field | Type |
---|---|
m | Object |
obj | Object |
Returns
integer
C Prototype
u8 is_nearest_player_to_object(struct Object *m, struct Object *obj);
is_point_close_to_object
Description
Checks if a point is within dist
of obj
Lua Example
local integerValue = is_point_close_to_object(obj, x, y, z, dist)
Parameters
Field | Type |
---|---|
obj | Object |
x | number |
y | number |
z | number |
dist | integer |
Returns
integer
C Prototype
s8 is_point_close_to_object(struct Object *obj, f32 x, f32 y, f32 z, s32 dist);
set_object_visibility
Description
Sets an object as visible if within a certain distance of Mario's graphical position
Lua Example
set_object_visibility(obj, dist)
Parameters
Field | Type |
---|---|
obj | Object |
dist | integer |
Returns
- None
C Prototype
void set_object_visibility(struct Object *obj, s32 dist);
obj_return_home_if_safe
Description
Turns an object towards home if Mario is not near to it
Lua Example
local integerValue = obj_return_home_if_safe(obj, homeX, y, homeZ, dist)
Parameters
Field | Type |
---|---|
obj | Object |
homeX | number |
y | number |
homeZ | number |
dist | integer |
Returns
integer
C Prototype
s8 obj_return_home_if_safe(struct Object *obj, f32 homeX, f32 y, f32 homeZ, s32 dist);
obj_return_and_displace_home
Description
Randomly displaces an objects home if RNG says to, and turns the object towards its home
Lua Example
obj_return_and_displace_home(obj, homeX, homeY, homeZ, baseDisp)
Parameters
Field | Type |
---|---|
obj | Object |
homeX | number |
homeY | number |
homeZ | number |
baseDisp | integer |
Returns
- None
C Prototype
void obj_return_and_displace_home(struct Object *obj, f32 homeX, UNUSED f32 homeY, f32 homeZ, s32 baseDisp);
obj_check_if_facing_toward_angle
Description
A series of checks using sin and cos to see if a given angle is facing in the same direction of a given angle, within a certain range
Lua Example
local integerValue = obj_check_if_facing_toward_angle(base, goal, range)
Parameters
Field | Type |
---|---|
base | integer |
goal | integer |
range | integer |
Returns
integer
C Prototype
s8 obj_check_if_facing_toward_angle(u32 base, u32 goal, s16 range);
obj_find_wall_displacement
Description
Finds any wall collisions and returns what the displacement vector would be.
Lua Example
local integerValue = obj_find_wall_displacement(dist, x, y, z, radius)
Parameters
Field | Type |
---|---|
dist | Vec3f |
x | number |
y | number |
z | number |
radius | number |
Returns
integer
C Prototype
s8 obj_find_wall_displacement(Vec3f dist, f32 x, f32 y, f32 z, f32 radius);
obj_spawn_yellow_coins
Description
Spawns a number of coins at the location of an object with a random forward velocity, y velocity, and direction
Lua Example
obj_spawn_yellow_coins(obj, nCoins)
Parameters
Field | Type |
---|---|
obj | Object |
nCoins | integer |
Returns
- None
C Prototype
void obj_spawn_yellow_coins(struct Object *obj, s8 nCoins);
obj_flicker_and_disappear
Description
Controls whether certain objects should flicker/when to despawn
Lua Example
local integerValue = obj_flicker_and_disappear(obj, lifeSpan)
Parameters
Field | Type |
---|---|
obj | Object |
lifeSpan | integer |
Returns
integer
C Prototype
s8 obj_flicker_and_disappear(struct Object *obj, s16 lifeSpan);
current_mario_room_check
Description
Checks if a given room is Mario's current room, even if on an object
Lua Example
local integerValue = current_mario_room_check(room)
Parameters
Field | Type |
---|---|
room | integer |
Returns
integer
C Prototype
s8 current_mario_room_check(s16 room);
obj_check_floor_death
Description
Checks if floor
's type is burning or death plane and if so change the current object's action accordingly
Lua Example
obj_check_floor_death(collisionFlags, floor)
Parameters
Field | Type |
---|---|
collisionFlags | integer |
floor | Surface |
Returns
- None
C Prototype
void obj_check_floor_death(s16 collisionFlags, struct Surface *floor);
obj_lava_death
Description
Controls an object dying in lava by creating smoke, sinking the object, playing audio, and eventually despawning it. Returns TRUE when the obj is dead
Lua Example
local integerValue = obj_lava_death()
Parameters
- None
Returns
integer
C Prototype
s8 obj_lava_death(void);
spawn_orange_number
Description
Spawns an orange number object relatively, such as those that count up for secrets.
Lua Example
spawn_orange_number(behParam, relX, relY, relZ)
Parameters
Field | Type |
---|---|
behParam | integer |
relX | integer |
relY | integer |
relZ | integer |
Returns
- None
C Prototype
void spawn_orange_number(s8 behParam, s16 relX, s16 relY, s16 relZ);
functions from obj_behaviors_2.c
obj_is_rendering_enabled
Description
Checks if the current object's rendering is enabled
Lua Example
local integerValue = obj_is_rendering_enabled()
Parameters
- None
Returns
integer
C Prototype
s32 obj_is_rendering_enabled(void);
obj_get_pitch_from_vel
Description
Calculates the current object's theoretical pitch from forward velocity and vertical velocity
Lua Example
local integerValue = obj_get_pitch_from_vel()
Parameters
- None
Returns
integer
C Prototype
s16 obj_get_pitch_from_vel(void);
obj_set_dist_from_home
Description
Sets the current object's position to the home with an additional forward vector multiplied by distFromHome
Lua Example
obj_set_dist_from_home(distFromHome)
Parameters
Field | Type |
---|---|
distFromHome | number |
Returns
- None
C Prototype
void obj_set_dist_from_home(f32 distFromHome);
obj_is_near_to_and_facing_mario
Description
Checks if the current object is in maxDist
to m
and the angle difference is less than maxAngleDiff
Lua Example
local integerValue = obj_is_near_to_and_facing_mario(m, maxDist, maxAngleDiff)
Parameters
Field | Type |
---|---|
m | MarioState |
maxDist | number |
maxAngleDiff | integer |
Returns
integer
C Prototype
s32 obj_is_near_to_and_facing_mario(struct MarioState* m, f32 maxDist, s16 maxAngleDiff);
platform_on_track_update_pos_or_spawn_ball
Description
Handles the platform on track's trajectory marker ball spawning
Lua Example
platform_on_track_update_pos_or_spawn_ball(ballIndex, x, y, z)
Parameters
Field | Type |
---|---|
ballIndex | integer |
x | number |
y | number |
z | number |
Returns
- None
C Prototype
void platform_on_track_update_pos_or_spawn_ball(s32 ballIndex, f32 x, f32 y, f32 z);
cur_obj_spin_all_dimensions
Description
Spins an object in every direction with pitchSpeed
and rollSpeed
Lua Example
cur_obj_spin_all_dimensions(pitchSpeed, rollSpeed)
Parameters
Field | Type |
---|---|
pitchSpeed | number |
rollSpeed | number |
Returns
- None
C Prototype
void cur_obj_spin_all_dimensions(f32 pitchSpeed, f32 rollSpeed);
obj_rotate_yaw_and_bounce_off_walls
Description
Approaches the current object's yaw to targetYaw
by turnAmount
Lua Example
obj_rotate_yaw_and_bounce_off_walls(targetYaw, turnAmount)
Parameters
Field | Type |
---|---|
targetYaw | integer |
turnAmount | integer |
Returns
- None
C Prototype
void obj_rotate_yaw_and_bounce_off_walls(s16 targetYaw, s16 turnAmount);
obj_get_pitch_to_home
Description
Gets the current object's theoretical pitch to the home with the lateral distance from it
Lua Example
local integerValue = obj_get_pitch_to_home(latDistToHome)
Parameters
Field | Type |
---|---|
latDistToHome | number |
Returns
integer
C Prototype
s16 obj_get_pitch_to_home(f32 latDistToHome);
obj_compute_vel_from_move_pitch
Description
Computes the current object's forward vel and vertical velocity with the move angle pitch
Lua Example
obj_compute_vel_from_move_pitch(speed)
Parameters
Field | Type |
---|---|
speed | number |
Returns
- None
C Prototype
void obj_compute_vel_from_move_pitch(f32 speed);
cur_obj_init_anim_extend
Description
Initializes an animation for the current object and loops back around if the animation ends
Lua Example
cur_obj_init_anim_extend(animIndex)
Parameters
Field | Type |
---|---|
animIndex | integer |
Returns
- None
C Prototype
void cur_obj_init_anim_extend(s32 animIndex);
cur_obj_init_anim_and_check_if_end
Description
Initializes an animation for the current object and returns if the animation has ended
Lua Example
local integerValue = cur_obj_init_anim_and_check_if_end(animIndex)
Parameters
Field | Type |
---|---|
animIndex | integer |
Returns
integer
C Prototype
s32 cur_obj_init_anim_and_check_if_end(s32 animIndex);
cur_obj_init_anim_check_frame
Description
Initializes an animation for the current object and checks if the animation frame is a specific frame
Lua Example
local integerValue = cur_obj_init_anim_check_frame(animIndex, animFrame)
Parameters
Field | Type |
---|---|
animIndex | integer |
animFrame | integer |
Returns
integer
C Prototype
s32 cur_obj_init_anim_check_frame(s32 animIndex, s32 animFrame);
cur_obj_set_anim_if_at_end
Description
Sets the current object's animation to a new animation if the current animation has ended
Lua Example
local integerValue = cur_obj_set_anim_if_at_end(animIndex)
Parameters
Field | Type |
---|---|
animIndex | integer |
Returns
integer
C Prototype
s32 cur_obj_set_anim_if_at_end(s32 animIndex);
cur_obj_play_sound_at_anim_range
Description
Plays a sound when the animation frame is in a range
Lua Example
local integerValue = cur_obj_play_sound_at_anim_range(startFrame, endFrame, sound)
Parameters
Field | Type |
---|---|
startFrame | integer |
endFrame | integer |
sound | integer |
Returns
integer
C Prototype
s32 cur_obj_play_sound_at_anim_range(s8 startFrame, s8 endFrame, u32 sound);
obj_turn_pitch_toward_mario
Description
Turns the current object towards m
by turnAmount
and subtracts and adds targetOffsetY
to the Y position, effectively cancelling any effect out
Lua Example
local integerValue = obj_turn_pitch_toward_mario(m, targetOffsetY, turnAmount)
Parameters
Field | Type |
---|---|
m | MarioState |
targetOffsetY | number |
turnAmount | integer |
Returns
integer
C Prototype
s16 obj_turn_pitch_toward_mario(struct MarioState* m, f32 targetOffsetY, s16 turnAmount);
approach_f32_ptr
Description
Approaches a target
for px
using delta
Lua Example
local integerValue = approach_f32_ptr(px, target, delta)
Parameters
Field | Type |
---|---|
px | Pointer <number > |
target | number |
delta | number |
Returns
integer
C Prototype
s32 approach_f32_ptr(f32 *px, f32 target, f32 delta);
obj_forward_vel_approach
Description
Approaches a target
value with the current object's forward velocity using delta
Lua Example
local integerValue = obj_forward_vel_approach(target, delta)
Parameters
Field | Type |
---|---|
target | number |
delta | number |
Returns
integer
C Prototype
s32 obj_forward_vel_approach(f32 target, f32 delta);
obj_y_vel_approach
Description
Approaches a target
value with the current object's vertical velocity using delta
Lua Example
local integerValue = obj_y_vel_approach(target, delta)
Parameters
Field | Type |
---|---|
target | number |
delta | number |
Returns
integer
C Prototype
s32 obj_y_vel_approach(f32 target, f32 delta);
obj_move_pitch_approach
Description
Approaches a target
value with the current object's move pitch using delta
Lua Example
local integerValue = obj_move_pitch_approach(target, delta)
Parameters
Field | Type |
---|---|
target | integer |
delta | integer |
Returns
integer
C Prototype
s32 obj_move_pitch_approach(s16 target, s16 delta);
obj_face_pitch_approach
Description
Approaches a target
value with the current object's facing pitch using delta
Lua Example
local integerValue = obj_face_pitch_approach(targetPitch, deltaPitch)
Parameters
Field | Type |
---|---|
targetPitch | integer |
deltaPitch | integer |
Returns
integer
C Prototype
s32 obj_face_pitch_approach(s16 targetPitch, s16 deltaPitch);
obj_face_yaw_approach
Description
Approaches a target
value with the current object's facing yaw using delta
Lua Example
local integerValue = obj_face_yaw_approach(targetYaw, deltaYaw)
Parameters
Field | Type |
---|---|
targetYaw | integer |
deltaYaw | integer |
Returns
integer
C Prototype
s32 obj_face_yaw_approach(s16 targetYaw, s16 deltaYaw);
obj_face_roll_approach
Description
Approaches a target
value with the current object's facing roll using delta
Lua Example
local integerValue = obj_face_roll_approach(targetRoll, deltaRoll)
Parameters
Field | Type |
---|---|
targetRoll | integer |
deltaRoll | integer |
Returns
integer
C Prototype
s32 obj_face_roll_approach(s16 targetRoll, s16 deltaRoll);
obj_smooth_turn
Lua Example
local integerValue = obj_smooth_turn(angleVel, angle, targetAngle, targetSpeedProportion, accel, minSpeed, maxSpeed)
Parameters
Field | Type |
---|---|
angleVel | Pointer <integer > |
angle | Pointer <integer > |
targetAngle | integer |
targetSpeedProportion | number |
accel | integer |
minSpeed | integer |
maxSpeed | integer |
Returns
integer
C Prototype
s32 obj_smooth_turn(s16 *angleVel, s32 *angle, s16 targetAngle, f32 targetSpeedProportion, s16 accel, s16 minSpeed, s16 maxSpeed);
obj_roll_to_match_yaw_turn
Description
Rolls the current object to the move angle subtracted by targetYaw
, clamping between negative and positive maxRoll
and using rollSpeed
Lua Example
obj_roll_to_match_yaw_turn(targetYaw, maxRoll, rollSpeed)
Parameters
Field | Type |
---|---|
targetYaw | integer |
maxRoll | integer |
rollSpeed | integer |
Returns
- None
C Prototype
void obj_roll_to_match_yaw_turn(s16 targetYaw, s16 maxRoll, s16 rollSpeed);
random_linear_offset
Description
Generates a random offset with a base and range of base
to range
Lua Example
local integerValue = random_linear_offset(base, range)
Parameters
Field | Type |
---|---|
base | integer |
range | integer |
Returns
integer
C Prototype
s16 random_linear_offset(s16 base, s16 range);
random_mod_offset
Description
Generates a random offset using step multiplied a value between 0 and mod
(the random function goes to 65535 but wraps around to 0 at mod
)
Lua Example
local integerValue = random_mod_offset(base, step, mod)
Parameters
Field | Type |
---|---|
base | integer |
step | integer |
mod | integer |
Returns
integer
C Prototype
s16 random_mod_offset(s16 base, s16 step, s16 mod);
obj_random_fixed_turn
Description
Rotates the current object's move angle yaw using delta
in either a randomly decided positive or negative direction
Lua Example
local integerValue = obj_random_fixed_turn(delta)
Parameters
Field | Type |
---|---|
delta | integer |
Returns
integer
C Prototype
s16 obj_random_fixed_turn(s16 delta);
obj_grow_then_shrink
Description
Begin by increasing the current object's scale by *scaleVel
, and slowly decreasing scaleVel
. Once the object starts to shrink, wait a bit, and then begin to scale the object toward endScale
. The first time it reaches below shootFireScale
during this time, return 1. Return -1 once it's reached endScale
Lua Example
local integerValue = obj_grow_then_shrink(scaleVel, shootFireScale, endScale)
Parameters
Field | Type |
---|---|
scaleVel | Pointer <number > |
shootFireScale | number |
endScale | number |
Returns
integer
C Prototype
s32 obj_grow_then_shrink(f32 *scaleVel, f32 shootFireScale, f32 endScale);
oscillate_toward
Lua Example
local integerValue = oscillate_toward(value, vel, target, velCloseToZero, accel, slowdown)
Parameters
Field | Type |
---|---|
value | Pointer <integer > |
vel | Pointer <number > |
target | integer |
velCloseToZero | number |
accel | number |
slowdown | number |
Returns
integer
C Prototype
s32 oscillate_toward(s32 *value, f32 *vel, s32 target, f32 velCloseToZero, f32 accel, f32 slowdown);
obj_update_blinking
Lua Example
obj_update_blinking(blinkTimer, baseCycleLength, cycleLengthRange, blinkLength)
Parameters
Field | Type |
---|---|
blinkTimer | Pointer <integer > |
baseCycleLength | integer |
cycleLengthRange | integer |
blinkLength | integer |
Returns
- None
C Prototype
void obj_update_blinking(s32 *blinkTimer, s16 baseCycleLength, s16 cycleLengthRange, s16 blinkLength);
obj_resolve_object_collisions
Description
Resolves "collisions" with the current object and other objects by offsetting the current object's position
Lua Example
local integerValue = obj_resolve_object_collisions(targetYaw)
Parameters
Field | Type |
---|---|
targetYaw | Pointer <integer > |
Returns
integer
C Prototype
s32 obj_resolve_object_collisions(s32 *targetYaw);
obj_bounce_off_walls_edges_objects
Description
Bounces the current object off of walls, edges, and objects using *targetYaw
Lua Example
local integerValue = obj_bounce_off_walls_edges_objects(targetYaw)
Parameters
Field | Type |
---|---|
targetYaw | Pointer <integer > |
Returns
integer
C Prototype
s32 obj_bounce_off_walls_edges_objects(s32 *targetYaw);
obj_resolve_collisions_and_turn
Description
Resolves collisions and turns the current object towards targetYaw
using turnSpeed
Lua Example
local integerValue = obj_resolve_collisions_and_turn(targetYaw, turnSpeed)
Parameters
Field | Type |
---|---|
targetYaw | integer |
turnSpeed | integer |
Returns
integer
C Prototype
s32 obj_resolve_collisions_and_turn(s16 targetYaw, s16 turnSpeed);
obj_die_if_health_non_positive
Description
Spawns mist particles, plays a sound (oDeathSound
,) spawns coins (oNumLootCoins
,) and hides the object if the health is less than 0 or deletes the object if the health is 0 or higher
Lua Example
obj_die_if_health_non_positive()
Parameters
- None
Returns
- None
C Prototype
void obj_die_if_health_non_positive(void);
obj_unused_die
Description
Sets the current object's health to 0 and runs obj_die_if_health_non_positive()
Lua Example
obj_unused_die()
Parameters
- None
Returns
- None
C Prototype
void obj_unused_die(void);
obj_set_knockback_action
Description
Sets the current object's action, forward velocity, and vertical velocity to preset values (OBJ_ACT_*
)
Lua Example
obj_set_knockback_action(attackType)
Parameters
Field | Type |
---|---|
attackType | integer |
Returns
- None
C Prototype
void obj_set_knockback_action(s32 attackType);
obj_set_squished_action
Description
Plays SOUND_OBJ_STOMPED
and sets the current object's action to OBJ_ACT_SQUISHED
Lua Example
obj_set_squished_action()
Parameters
- None
Returns
- None
C Prototype
void obj_set_squished_action(void);
obj_die_if_above_lava_and_health_non_positive
Lua Example
local integerValue = obj_die_if_above_lava_and_health_non_positive()
Parameters
- None
Returns
integer
C Prototype
s32 obj_die_if_above_lava_and_health_non_positive(void);
obj_handle_attacks
Lua Example
local integerValue = obj_handle_attacks(hitbox, attackedMarioAction, attackHandlers)
Parameters
Field | Type |
---|---|
hitbox | ObjectHitbox |
attackedMarioAction | integer |
attackHandlers | Pointer <integer > |
Returns
integer
C Prototype
s32 obj_handle_attacks(struct ObjectHitbox *hitbox, s32 attackedMarioAction, u8 *attackHandlers);
obj_act_knockback
Lua Example
obj_act_knockback(baseScale)
Parameters
Field | Type |
---|---|
baseScale | number |
Returns
- None
C Prototype
void obj_act_knockback(UNUSED f32 baseScale);
obj_act_squished
Lua Example
obj_act_squished(baseScale)
Parameters
Field | Type |
---|---|
baseScale | number |
Returns
- None
C Prototype
void obj_act_squished(f32 baseScale);
obj_update_standard_actions
Lua Example
local integerValue = obj_update_standard_actions(scale)
Parameters
Field | Type |
---|---|
scale | number |
Returns
integer
C Prototype
s32 obj_update_standard_actions(f32 scale);
obj_check_attacks
Description
Checks the current object's interaction status and sets action to attackedMarioAction
if Mario has been attacked and runs obj_die_if_health_non_positive()
if the object is attacked by Mario. Sets the hitbox parameters and resets interaction status to 0
Lua Example
local integerValue = obj_check_attacks(hitbox, attackedMarioAction)
Parameters
Field | Type |
---|---|
hitbox | ObjectHitbox |
attackedMarioAction | integer |
Returns
integer
C Prototype
s32 obj_check_attacks(struct ObjectHitbox *hitbox, s32 attackedMarioAction);
obj_move_for_one_second
Description
Moves the current object for specifically one second (oTimer
< 30)
Lua Example
local integerValue = obj_move_for_one_second(endAction)
Parameters
Field | Type |
---|---|
endAction | integer |
Returns
integer
C Prototype
s32 obj_move_for_one_second(s32 endAction);
treat_far_home_as_mario
Description
Moves the current object for specifically one second (oTimer
< 30)
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);
obj_spit_fire
Lua Example
local ObjectValue = obj_spit_fire(relativePosX, relativePosY, relativePosZ, scale, model, startSpeed, endSpeed, movePitch)
Parameters
Field | Type |
---|---|
relativePosX | integer |
relativePosY | integer |
relativePosZ | integer |
scale | number |
model | integer |
startSpeed | number |
endSpeed | number |
movePitch | integer |
Returns
C Prototype
struct Object* obj_spit_fire(s16 relativePosX, s16 relativePosY, s16 relativePosZ, f32 scale, s32 model, f32 startSpeed, f32 endSpeed, s16 movePitch);
functions from object_helpers.c
clear_move_flag
Lua Example
local integerValue = clear_move_flag(bitSet, flag)
Parameters
Field | Type |
---|---|
bitSet | Pointer <integer > |
flag | integer |
Returns
integer
C Prototype
s32 clear_move_flag(u32 *bitSet, s32 flag);
set_room_override
Description
Overrides the current room Mario is in. Set to -1 to reset override
Lua Example
set_room_override(room)
Parameters
Field | Type |
---|---|
room | integer |
Returns
- None
C Prototype
void set_room_override(s16 room);
obj_update_pos_from_parent_transformation
Lua Example
obj_update_pos_from_parent_transformation(a0, a1)
Parameters
Field | Type |
---|---|
a0 | Mat4 |
a1 | Object |
Returns
- None
C Prototype
void obj_update_pos_from_parent_transformation(Mat4 a0, struct Object *a1);
obj_apply_scale_to_matrix
Lua Example
obj_apply_scale_to_matrix(obj, dst, src)
Parameters
Field | Type |
---|---|
obj | Object |
dst | Mat4 |
src | Mat4 |
Returns
- None
C Prototype
void obj_apply_scale_to_matrix(struct Object *obj, Mat4 dst, Mat4 src);
create_transformation_from_matrices
Lua Example
create_transformation_from_matrices(a0, a1, a2)
Parameters
Field | Type |
---|---|
a0 | Mat4 |
a1 | Mat4 |
a2 | Mat4 |
Returns
- None
C Prototype
void create_transformation_from_matrices(Mat4 a0, Mat4 a1, Mat4 a2);
obj_set_held_state
Lua Example
obj_set_held_state(obj, heldBehavior)
Parameters
Field | Type |
---|---|
obj | Object |
heldBehavior | Pointer <BehaviorScript > |
Returns
- None
C Prototype
void obj_set_held_state(struct Object *obj, const BehaviorScript *heldBehavior);
lateral_dist_between_objects
Lua Example
local numberValue = lateral_dist_between_objects(obj1, obj2)
Parameters
Field | Type |
---|---|
obj1 | Object |
obj2 | Object |
Returns
number
C Prototype
f32 lateral_dist_between_objects(struct Object *obj1, struct Object *obj2);
dist_between_objects
Lua Example
local numberValue = dist_between_objects(obj1, obj2)
Parameters
Field | Type |
---|---|
obj1 | Object |
obj2 | Object |
Returns
number
C Prototype
f32 dist_between_objects(struct Object *obj1, struct Object *obj2);
dist_between_object_and_point
Lua Example
local numberValue = dist_between_object_and_point(obj, pointX, pointY, pointZ)
Parameters
Field | Type |
---|---|
obj | Object |
pointX | number |
pointY | number |
pointZ | number |
Returns
number
C Prototype
f32 dist_between_object_and_point(struct Object *obj, f32 pointX, f32 pointY, f32 pointZ);
cur_obj_forward_vel_approach_upward
Lua Example
cur_obj_forward_vel_approach_upward(target, increment)
Parameters
Field | Type |
---|---|
target | number |
increment | number |
Returns
- None
C Prototype
void cur_obj_forward_vel_approach_upward(f32 target, f32 increment);
approach_f32_signed
Lua Example
local integerValue = approach_f32_signed(value, target, increment)
Parameters
Field | Type |
---|---|
value | Pointer <number > |
target | number |
increment | number |
Returns
integer
C Prototype
s32 approach_f32_signed(f32 *value, f32 target, f32 increment);
approach_f32_symmetric
Lua Example
local numberValue = approach_f32_symmetric(value, target, increment)
Parameters
Field | Type |
---|---|
value | number |
target | number |
increment | number |
Returns
number
C Prototype
f32 approach_f32_symmetric(f32 value, f32 target, f32 increment);
approach_s16_symmetric
Lua Example
local integerValue = approach_s16_symmetric(value, target, increment)
Parameters
Field | Type |
---|---|
value | integer |
target | integer |
increment | integer |
Returns
integer
C Prototype
s16 approach_s16_symmetric(s16 value, s16 target, s16 increment);
cur_obj_rotate_yaw_toward
Lua Example
local integerValue = cur_obj_rotate_yaw_toward(target, increment)
Parameters
Field | Type |
---|---|
target | integer |
increment | integer |
Returns
integer
C Prototype
s32 cur_obj_rotate_yaw_toward(s16 target, s16 increment);
obj_angle_to_object
Lua Example
local integerValue = obj_angle_to_object(obj1, obj2)
Parameters
Field | Type |
---|---|
obj1 | Object |
obj2 | Object |
Returns
integer
C Prototype
s16 obj_angle_to_object(struct Object *obj1, struct Object *obj2);
obj_pitch_to_object
Lua Example
local integerValue = obj_pitch_to_object(obj, target)
Parameters
Field | Type |
---|---|
obj | Object |
target | Object |
Returns
integer
C Prototype
s16 obj_pitch_to_object(struct Object* obj, struct Object* target);
obj_angle_to_point
Lua Example
local integerValue = obj_angle_to_point(obj, pointX, pointZ)
Parameters
Field | Type |
---|---|
obj | Object |
pointX | number |
pointZ | number |
Returns
integer
C Prototype
s16 obj_angle_to_point(struct Object *obj, f32 pointX, f32 pointZ);
obj_turn_toward_object
Lua Example
local integerValue = obj_turn_toward_object(obj, target, angleIndex, turnAmount)
Parameters
Field | Type |
---|---|
obj | Object |
target | Object |
angleIndex | integer |
turnAmount | integer |
Returns
integer
C Prototype
s16 obj_turn_toward_object(struct Object *obj, struct Object *target, s16 angleIndex, s16 turnAmount);
obj_set_parent_relative_pos
Lua Example
obj_set_parent_relative_pos(obj, relX, relY, relZ)
Parameters
Field | Type |
---|---|
obj | Object |
relX | integer |
relY | integer |
relZ | integer |
Returns
- None
C Prototype
void obj_set_parent_relative_pos(struct Object *obj, s16 relX, s16 relY, s16 relZ);
obj_set_pos
Lua Example
obj_set_pos(obj, x, y, z)
Parameters
Field | Type |
---|---|
obj | Object |
x | integer |
y | integer |
z | integer |
Returns
- None
C Prototype
void obj_set_pos(struct Object *obj, s16 x, s16 y, s16 z);
obj_set_angle
Lua Example
obj_set_angle(obj, pitch, yaw, roll)
Parameters
Field | Type |
---|---|
obj | Object |
pitch | integer |
yaw | integer |
roll | integer |
Returns
- None
C Prototype
void obj_set_angle(struct Object *obj, s16 pitch, s16 yaw, s16 roll);
obj_set_move_angle
Lua Example
obj_set_move_angle(obj, pitch, yaw, roll)
Parameters
Field | Type |
---|---|
obj | Object |
pitch | integer |
yaw | integer |
roll | integer |
Returns
- None
C Prototype
void obj_set_move_angle(struct Object *obj, s16 pitch, s16 yaw, s16 roll);
obj_set_face_angle
Lua Example
obj_set_face_angle(obj, pitch, yaw, roll)
Parameters
Field | Type |
---|---|
obj | Object |
pitch | integer |
yaw | integer |
roll | integer |
Returns
- None
C Prototype
void obj_set_face_angle(struct Object *obj, s16 pitch, s16 yaw, s16 roll);
obj_set_gfx_angle
Lua Example
obj_set_gfx_angle(obj, pitch, yaw, roll)
Parameters
Field | Type |
---|---|
obj | Object |
pitch | integer |
yaw | integer |
roll | integer |
Returns
- None
C Prototype
void obj_set_gfx_angle(struct Object *obj, s16 pitch, s16 yaw, s16 roll);
obj_set_gfx_pos
Lua Example
obj_set_gfx_pos(obj, x, y, z)
Parameters
Field | Type |
---|---|
obj | Object |
x | number |
y | number |
z | number |
Returns
- None
C Prototype
void obj_set_gfx_pos(struct Object *obj, f32 x, f32 y, f32 z);
obj_set_gfx_scale
Lua Example
obj_set_gfx_scale(obj, x, y, z)
Parameters
Field | Type |
---|---|
obj | Object |
x | number |
y | number |
z | number |
Returns
- None
C Prototype
void obj_set_gfx_scale(struct Object *obj, f32 x, f32 y, f32 z);
spawn_water_droplet
Lua Example
local ObjectValue = spawn_water_droplet(parent, params)
Parameters
Field | Type |
---|---|
parent | Object |
params | WaterDropletParams |
Returns
C Prototype
struct Object *spawn_water_droplet(struct Object *parent, struct WaterDropletParams *params);
obj_build_relative_transform
Lua Example
obj_build_relative_transform(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void obj_build_relative_transform(struct Object *obj);
cur_obj_move_using_vel
Lua Example
cur_obj_move_using_vel()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_move_using_vel(void);
obj_copy_graph_y_offset
Lua Example
obj_copy_graph_y_offset(dst, src)
Parameters
Field | Type |
---|---|
dst | Object |
src | Object |
Returns
- None
C Prototype
void obj_copy_graph_y_offset(struct Object *dst, struct Object *src);
obj_copy_pos_and_angle
Lua Example
obj_copy_pos_and_angle(dst, src)
Parameters
Field | Type |
---|---|
dst | Object |
src | Object |
Returns
- None
C Prototype
void obj_copy_pos_and_angle(struct Object *dst, struct Object *src);
obj_copy_pos
Lua Example
obj_copy_pos(dst, src)
Parameters
Field | Type |
---|---|
dst | Object |
src | Object |
Returns
- None
C Prototype
void obj_copy_pos(struct Object *dst, struct Object *src);
obj_copy_angle
Lua Example
obj_copy_angle(dst, src)
Parameters
Field | Type |
---|---|
dst | Object |
src | Object |
Returns
- None
C Prototype
void obj_copy_angle(struct Object *dst, struct Object *src);
obj_set_gfx_pos_from_pos
Lua Example
obj_set_gfx_pos_from_pos(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void obj_set_gfx_pos_from_pos(struct Object *obj);
obj_init_animation
Lua Example
obj_init_animation(obj, animIndex)
Parameters
Field | Type |
---|---|
obj | Object |
animIndex | integer |
Returns
- None
C Prototype
void obj_init_animation(struct Object *obj, s32 animIndex);
linear_mtxf_mul_vec3f
Description
Multiplies a vector by a matrix of the form: | ? ? ? 0 |
| ? ? ? 0 |
| ? ? ? 0 |
| 0 0 0 1 |
i.e. a matrix representing a linear transformation over 3 space
Lua Example
linear_mtxf_mul_vec3f(m, dst, v)
Parameters
Field | Type |
---|---|
m | Mat4 |
dst | Vec3f |
v | Vec3f |
Returns
- None
C Prototype
void linear_mtxf_mul_vec3f(Mat4 m, Vec3f dst, Vec3f v);
linear_mtxf_transpose_mul_vec3f
Description
Multiplies a vector by the transpose of a matrix of the form: | ? ? ? 0 |
| ? ? ? 0 |
| ? ? ? 0 |
| 0 0 0 1 |
i.e. a matrix representing a linear transformation over 3 space
Lua Example
linear_mtxf_transpose_mul_vec3f(m, dst, v)
Parameters
Field | Type |
---|---|
m | Mat4 |
dst | Vec3f |
v | Vec3f |
Returns
- None
C Prototype
void linear_mtxf_transpose_mul_vec3f(Mat4 m, Vec3f dst, Vec3f v);
obj_apply_scale_to_transform
Lua Example
obj_apply_scale_to_transform(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void obj_apply_scale_to_transform(struct Object *obj);
obj_copy_scale
Lua Example
obj_copy_scale(dst, src)
Parameters
Field | Type |
---|---|
dst | Object |
src | Object |
Returns
- None
C Prototype
void obj_copy_scale(struct Object *dst, struct Object *src);
obj_scale_xyz
Lua Example
obj_scale_xyz(obj, xScale, yScale, zScale)
Parameters
Field | Type |
---|---|
obj | Object |
xScale | number |
yScale | number |
zScale | number |
Returns
- None
C Prototype
void obj_scale_xyz(struct Object *obj, f32 xScale, f32 yScale, f32 zScale);
obj_scale
Lua Example
obj_scale(obj, scale)
Parameters
Field | Type |
---|---|
obj | Object |
scale | number |
Returns
- None
C Prototype
void obj_scale(struct Object *obj, f32 scale);
cur_obj_scale
Lua Example
cur_obj_scale(scale)
Parameters
Field | Type |
---|---|
scale | number |
Returns
- None
C Prototype
void cur_obj_scale(f32 scale);
cur_obj_init_animation
Lua Example
cur_obj_init_animation(animIndex)
Parameters
Field | Type |
---|---|
animIndex | integer |
Returns
- None
C Prototype
void cur_obj_init_animation(s32 animIndex);
cur_obj_init_animation_with_sound
Lua Example
cur_obj_init_animation_with_sound(animIndex)
Parameters
Field | Type |
---|---|
animIndex | integer |
Returns
- None
C Prototype
void cur_obj_init_animation_with_sound(s32 animIndex);
obj_init_animation_with_accel_and_sound
Lua Example
obj_init_animation_with_accel_and_sound(obj, animIndex, accel)
Parameters
Field | Type |
---|---|
obj | Object |
animIndex | integer |
accel | number |
Returns
- None
C Prototype
void obj_init_animation_with_accel_and_sound(struct Object *obj, s32 animIndex, f32 accel);
cur_obj_init_animation_with_accel_and_sound
Lua Example
cur_obj_init_animation_with_accel_and_sound(animIndex, accel)
Parameters
Field | Type |
---|---|
animIndex | integer |
accel | number |
Returns
- None
C Prototype
void cur_obj_init_animation_with_accel_and_sound(s32 animIndex, f32 accel);
obj_init_animation_with_sound
Lua Example
obj_init_animation_with_sound(obj, animations, animIndex)
Parameters
Field | Type |
---|---|
obj | Object |
animations | AnimationTable |
animIndex | integer |
Returns
- None
C Prototype
void obj_init_animation_with_sound(struct Object *obj, const struct AnimationTable* animations, s32 animIndex);
cur_obj_enable_rendering_and_become_tangible
Lua Example
cur_obj_enable_rendering_and_become_tangible(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void cur_obj_enable_rendering_and_become_tangible(struct Object *obj);
cur_obj_enable_rendering
Lua Example
cur_obj_enable_rendering()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_enable_rendering(void);
cur_obj_disable_rendering_and_become_intangible
Lua Example
cur_obj_disable_rendering_and_become_intangible(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void cur_obj_disable_rendering_and_become_intangible(struct Object *obj);
cur_obj_disable_rendering
Lua Example
cur_obj_disable_rendering()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_disable_rendering(void);
cur_obj_unhide
Lua Example
cur_obj_unhide()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_unhide(void);
cur_obj_hide
Lua Example
cur_obj_hide()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_hide(void);
cur_obj_set_pos_relative
Lua Example
cur_obj_set_pos_relative(other, dleft, dy, dforward)
Parameters
Field | Type |
---|---|
other | Object |
dleft | number |
dy | number |
dforward | number |
Returns
- None
C Prototype
void cur_obj_set_pos_relative(struct Object *other, f32 dleft, f32 dy, f32 dforward);
cur_obj_set_pos_relative_to_parent
Lua Example
cur_obj_set_pos_relative_to_parent(dleft, dy, dforward)
Parameters
Field | Type |
---|---|
dleft | number |
dy | number |
dforward | number |
Returns
- None
C Prototype
void cur_obj_set_pos_relative_to_parent(f32 dleft, f32 dy, f32 dforward);
cur_obj_enable_rendering_2
Lua Example
cur_obj_enable_rendering_2()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_enable_rendering_2(void);
cur_obj_unused_init_on_floor
Lua Example
cur_obj_unused_init_on_floor()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_unused_init_on_floor(void);
obj_set_face_angle_to_move_angle
Lua Example
obj_set_face_angle_to_move_angle(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void obj_set_face_angle_to_move_angle(struct Object *obj);
get_object_list_from_behavior
Lua Example
local integerValue = get_object_list_from_behavior(behavior)
Parameters
Field | Type |
---|---|
behavior | Pointer <BehaviorScript > |
Returns
integer
C Prototype
u32 get_object_list_from_behavior(const BehaviorScript *behavior);
cur_obj_nearest_object_with_behavior
Lua Example
local ObjectValue = cur_obj_nearest_object_with_behavior(behavior)
Parameters
Field | Type |
---|---|
behavior | Pointer <BehaviorScript > |
Returns
C Prototype
struct Object *cur_obj_nearest_object_with_behavior(const BehaviorScript *behavior);
cur_obj_dist_to_nearest_object_with_behavior
Lua Example
local numberValue = cur_obj_dist_to_nearest_object_with_behavior(behavior)
Parameters
Field | Type |
---|---|
behavior | Pointer <BehaviorScript > |
Returns
number
C Prototype
f32 cur_obj_dist_to_nearest_object_with_behavior(const BehaviorScript *behavior);
cur_obj_find_nearest_pole
Lua Example
local ObjectValue = cur_obj_find_nearest_pole()
Parameters
- None
Returns
C Prototype
struct Object* cur_obj_find_nearest_pole(void);
cur_obj_find_nearest_object_with_behavior
Lua Example
local ObjectValue = cur_obj_find_nearest_object_with_behavior(behavior, dist)
Parameters
Field | Type |
---|---|
behavior | Pointer <BehaviorScript > |
dist | Pointer <number > |
Returns
C Prototype
struct Object *cur_obj_find_nearest_object_with_behavior(const BehaviorScript *behavior, f32 *dist);
cur_obj_count_objects_with_behavior
Lua Example
local integerValue = cur_obj_count_objects_with_behavior(behavior, dist)
Parameters
Field | Type |
---|---|
behavior | Pointer <BehaviorScript > |
dist | number |
Returns
integer
C Prototype
u16 cur_obj_count_objects_with_behavior(const BehaviorScript* behavior, f32 dist);
find_unimportant_object
Lua Example
local ObjectValue = find_unimportant_object()
Parameters
- None
Returns
C Prototype
struct Object *find_unimportant_object(void);
count_unimportant_objects
Lua Example
local integerValue = count_unimportant_objects()
Parameters
- None
Returns
integer
C Prototype
s32 count_unimportant_objects(void);
count_objects_with_behavior
Lua Example
local integerValue = count_objects_with_behavior(behavior)
Parameters
Field | Type |
---|---|
behavior | Pointer <BehaviorScript > |
Returns
integer
C Prototype
s32 count_objects_with_behavior(const BehaviorScript *behavior);
find_object_with_behavior
Lua Example
local ObjectValue = find_object_with_behavior(behavior)
Parameters
Field | Type |
---|---|
behavior | Pointer <BehaviorScript > |
Returns
C Prototype
struct Object *find_object_with_behavior(const BehaviorScript *behavior);
cur_obj_find_nearby_held_actor
Lua Example
local ObjectValue = cur_obj_find_nearby_held_actor(behavior, maxDist)
Parameters
Field | Type |
---|---|
behavior | Pointer <BehaviorScript > |
maxDist | number |
Returns
C Prototype
struct Object *cur_obj_find_nearby_held_actor(const BehaviorScript *behavior, f32 maxDist);
cur_obj_reset_timer_and_subaction
Lua Example
cur_obj_reset_timer_and_subaction()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_reset_timer_and_subaction(void);
cur_obj_change_action
Lua Example
cur_obj_change_action(action)
Parameters
Field | Type |
---|---|
action | integer |
Returns
- None
C Prototype
void cur_obj_change_action(s32 action);
cur_obj_set_vel_from_mario_vel
Lua Example
cur_obj_set_vel_from_mario_vel(m, f12, f14)
Parameters
Field | Type |
---|---|
m | MarioState |
f12 | number |
f14 | number |
Returns
- None
C Prototype
void cur_obj_set_vel_from_mario_vel(struct MarioState* m, f32 f12, f32 f14);
cur_obj_reverse_animation
Lua Example
cur_obj_reverse_animation()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_reverse_animation(void);
cur_obj_extend_animation_if_at_end
Lua Example
cur_obj_extend_animation_if_at_end()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_extend_animation_if_at_end(void);
cur_obj_check_if_near_animation_end
Lua Example
local integerValue = cur_obj_check_if_near_animation_end()
Parameters
- None
Returns
integer
C Prototype
s32 cur_obj_check_if_near_animation_end(void);
cur_obj_check_if_at_animation_end
Lua Example
local integerValue = cur_obj_check_if_at_animation_end()
Parameters
- None
Returns
integer
C Prototype
s32 cur_obj_check_if_at_animation_end(void);
cur_obj_check_anim_frame
Lua Example
local integerValue = cur_obj_check_anim_frame(frame)
Parameters
Field | Type |
---|---|
frame | integer |
Returns
integer
C Prototype
s32 cur_obj_check_anim_frame(s32 frame);
cur_obj_check_anim_frame_in_range
Lua Example
local integerValue = cur_obj_check_anim_frame_in_range(startFrame, rangeLength)
Parameters
Field | Type |
---|---|
startFrame | integer |
rangeLength | integer |
Returns
integer
C Prototype
s32 cur_obj_check_anim_frame_in_range(s32 startFrame, s32 rangeLength);
cur_obj_check_frame_prior_current_frame
Lua Example
local integerValue = cur_obj_check_frame_prior_current_frame(a0)
Parameters
Field | Type |
---|---|
a0 | Pointer <integer > |
Returns
integer
C Prototype
s32 cur_obj_check_frame_prior_current_frame(s16 *a0);
mario_is_in_air_action
Lua Example
local integerValue = mario_is_in_air_action(m)
Parameters
Field | Type |
---|---|
m | MarioState |
Returns
integer
C Prototype
s32 mario_is_in_air_action(struct MarioState* m);
mario_is_dive_sliding
Lua Example
local integerValue = mario_is_dive_sliding(m)
Parameters
Field | Type |
---|---|
m | MarioState |
Returns
integer
C Prototype
s32 mario_is_dive_sliding(struct MarioState* m);
cur_obj_set_y_vel_and_animation
Lua Example
cur_obj_set_y_vel_and_animation(sp18, sp1C)
Parameters
Field | Type |
---|---|
sp18 | number |
sp1C | integer |
Returns
- None
C Prototype
void cur_obj_set_y_vel_and_animation(f32 sp18, s32 sp1C);
cur_obj_unrender_and_reset_state
Lua Example
cur_obj_unrender_and_reset_state(sp18, sp1C)
Parameters
Field | Type |
---|---|
sp18 | integer |
sp1C | integer |
Returns
- None
C Prototype
void cur_obj_unrender_and_reset_state(s32 sp18, s32 sp1C);
cur_obj_move_after_thrown_or_dropped
Lua Example
cur_obj_move_after_thrown_or_dropped(forwardVel, velY)
Parameters
Field | Type |
---|---|
forwardVel | number |
velY | number |
Returns
- None
C Prototype
void cur_obj_move_after_thrown_or_dropped(f32 forwardVel, f32 velY);
cur_obj_get_thrown_or_placed
Lua Example
cur_obj_get_thrown_or_placed(forwardVel, velY, thrownAction)
Parameters
Field | Type |
---|---|
forwardVel | number |
velY | number |
thrownAction | integer |
Returns
- None
C Prototype
void cur_obj_get_thrown_or_placed(f32 forwardVel, f32 velY, s32 thrownAction);
cur_obj_get_dropped
Lua Example
cur_obj_get_dropped()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_get_dropped(void);
mario_set_flag
Lua Example
mario_set_flag(flag)
Parameters
Field | Type |
---|---|
flag | integer |
Returns
- None
C Prototype
void mario_set_flag(s32 flag);
cur_obj_clear_interact_status_flag
Lua Example
local integerValue = cur_obj_clear_interact_status_flag(flag)
Parameters
Field | Type |
---|---|
flag | integer |
Returns
integer
C Prototype
s32 cur_obj_clear_interact_status_flag(s32 flag);
obj_mark_for_deletion
Description
Marks an object to be unloaded at the end of the frame
Lua Example
obj_mark_for_deletion(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void obj_mark_for_deletion(struct Object *obj);
cur_obj_disable
Lua Example
cur_obj_disable()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_disable(void);
cur_obj_become_intangible
Lua Example
cur_obj_become_intangible()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_become_intangible(void);
cur_obj_become_tangible
Lua Example
cur_obj_become_tangible()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_become_tangible(void);
obj_become_tangible
Lua Example
obj_become_tangible(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void obj_become_tangible(struct Object *obj);
cur_obj_update_floor_height
Lua Example
cur_obj_update_floor_height()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_update_floor_height(void);
cur_obj_update_floor_height_and_get_floor
Lua Example
local SurfaceValue = cur_obj_update_floor_height_and_get_floor()
Parameters
- None
Returns
C Prototype
struct Surface *cur_obj_update_floor_height_and_get_floor(void);
apply_drag_to_value
Lua Example
apply_drag_to_value(value, dragStrength)
Parameters
Field | Type |
---|---|
value | Pointer <number > |
dragStrength | number |
Returns
- None
C Prototype
void apply_drag_to_value(f32 *value, f32 dragStrength);
cur_obj_apply_drag_xz
Lua Example
cur_obj_apply_drag_xz(dragStrength)
Parameters
Field | Type |
---|---|
dragStrength | number |
Returns
- None
C Prototype
void cur_obj_apply_drag_xz(f32 dragStrength);
cur_obj_move_xz
Lua Example
local integerValue = cur_obj_move_xz(steepSlopeNormalY, careAboutEdgesAndSteepSlopes)
Parameters
Field | Type |
---|---|
steepSlopeNormalY | number |
careAboutEdgesAndSteepSlopes | integer |
Returns
integer
C Prototype
s32 cur_obj_move_xz(f32 steepSlopeNormalY, s32 careAboutEdgesAndSteepSlopes);
cur_obj_move_update_underwater_flags
Lua Example
cur_obj_move_update_underwater_flags()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_move_update_underwater_flags(void);
cur_obj_move_update_ground_air_flags
Lua Example
cur_obj_move_update_ground_air_flags(gravity, bounciness)
Parameters
Field | Type |
---|---|
gravity | number |
bounciness | number |
Returns
- None
C Prototype
void cur_obj_move_update_ground_air_flags(UNUSED f32 gravity, f32 bounciness);
cur_obj_move_y_and_get_water_level
Lua Example
local numberValue = cur_obj_move_y_and_get_water_level(gravity, buoyancy)
Parameters
Field | Type |
---|---|
gravity | number |
buoyancy | number |
Returns
number
C Prototype
f32 cur_obj_move_y_and_get_water_level(f32 gravity, f32 buoyancy);
cur_obj_move_y
Lua Example
cur_obj_move_y(gravity, bounciness, buoyancy)
Parameters
Field | Type |
---|---|
gravity | number |
bounciness | number |
buoyancy | number |
Returns
- None
C Prototype
void cur_obj_move_y(f32 gravity, f32 bounciness, f32 buoyancy);
cur_obj_unused_resolve_wall_collisions
Lua Example
cur_obj_unused_resolve_wall_collisions(offsetY, radius)
Parameters
Field | Type |
---|---|
offsetY | number |
radius | number |
Returns
- None
C Prototype
void cur_obj_unused_resolve_wall_collisions(f32 offsetY, f32 radius);
abs_angle_diff
Lua Example
local integerValue = abs_angle_diff(x0, x1)
Parameters
Field | Type |
---|---|
x0 | integer |
x1 | integer |
Returns
integer
C Prototype
s16 abs_angle_diff(s16 x0, s16 x1);
cur_obj_move_xz_using_fvel_and_yaw
Lua Example
cur_obj_move_xz_using_fvel_and_yaw()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_move_xz_using_fvel_and_yaw(void);
cur_obj_move_y_with_terminal_vel
Lua Example
cur_obj_move_y_with_terminal_vel()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_move_y_with_terminal_vel(void);
cur_obj_compute_vel_xz
Lua Example
cur_obj_compute_vel_xz()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_compute_vel_xz(void);
increment_velocity_toward_range
Lua Example
local numberValue = increment_velocity_toward_range(value, center, zeroThreshold, increment)
Parameters
Field | Type |
---|---|
value | number |
center | number |
zeroThreshold | number |
increment | number |
Returns
number
C Prototype
f32 increment_velocity_toward_range(f32 value, f32 center, f32 zeroThreshold, f32 increment);
obj_check_if_collided_with_object
Lua Example
local integerValue = obj_check_if_collided_with_object(obj1, obj2)
Parameters
Field | Type |
---|---|
obj1 | Object |
obj2 | Object |
Returns
integer
C Prototype
s32 obj_check_if_collided_with_object(struct Object *obj1, struct Object *obj2);
cur_obj_set_behavior
Lua Example
cur_obj_set_behavior(behavior)
Parameters
Field | Type |
---|---|
behavior | Pointer <BehaviorScript > |
Returns
- None
C Prototype
void cur_obj_set_behavior(const BehaviorScript *behavior);
obj_set_behavior
Lua Example
obj_set_behavior(obj, behavior)
Parameters
Field | Type |
---|---|
obj | Object |
behavior | Pointer <BehaviorScript > |
Returns
- None
C Prototype
void obj_set_behavior(struct Object *obj, const BehaviorScript *behavior);
cur_obj_has_behavior
Lua Example
local integerValue = cur_obj_has_behavior(behavior)
Parameters
Field | Type |
---|---|
behavior | Pointer <BehaviorScript > |
Returns
integer
C Prototype
s32 cur_obj_has_behavior(const BehaviorScript *behavior);
obj_has_behavior
Lua Example
local integerValue = obj_has_behavior(obj, behavior)
Parameters
Field | Type |
---|---|
obj | Object |
behavior | Pointer <BehaviorScript > |
Returns
integer
C Prototype
s32 obj_has_behavior(struct Object *obj, const BehaviorScript *behavior);
cur_obj_lateral_dist_from_obj_to_home
Lua Example
local numberValue = cur_obj_lateral_dist_from_obj_to_home(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
number
C Prototype
f32 cur_obj_lateral_dist_from_obj_to_home(struct Object *obj);
cur_obj_lateral_dist_from_mario_to_home
Lua Example
local numberValue = cur_obj_lateral_dist_from_mario_to_home()
Parameters
- None
Returns
number
C Prototype
f32 cur_obj_lateral_dist_from_mario_to_home(void);
cur_obj_lateral_dist_to_home
Lua Example
local numberValue = cur_obj_lateral_dist_to_home()
Parameters
- None
Returns
number
C Prototype
f32 cur_obj_lateral_dist_to_home(void);
cur_obj_outside_home_square
Lua Example
local integerValue = cur_obj_outside_home_square(halfLength)
Parameters
Field | Type |
---|---|
halfLength | number |
Returns
integer
C Prototype
s32 cur_obj_outside_home_square(f32 halfLength);
cur_obj_outside_home_rectangle
Lua Example
local integerValue = cur_obj_outside_home_rectangle(minX, maxX, minZ, maxZ)
Parameters
Field | Type |
---|---|
minX | number |
maxX | number |
minZ | number |
maxZ | number |
Returns
integer
C Prototype
s32 cur_obj_outside_home_rectangle(f32 minX, f32 maxX, f32 minZ, f32 maxZ);
cur_obj_set_pos_to_home
Lua Example
cur_obj_set_pos_to_home()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_set_pos_to_home(void);
cur_obj_set_pos_to_home_and_stop
Lua Example
cur_obj_set_pos_to_home_and_stop()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_set_pos_to_home_and_stop(void);
cur_obj_shake_y
Lua Example
cur_obj_shake_y(amount)
Parameters
Field | Type |
---|---|
amount | number |
Returns
- None
C Prototype
void cur_obj_shake_y(f32 amount);
cur_obj_start_cam_event
Lua Example
cur_obj_start_cam_event(obj, cameraEvent)
Parameters
Field | Type |
---|---|
obj | Object |
cameraEvent | integer |
Returns
- None
C Prototype
void cur_obj_start_cam_event(UNUSED struct Object *obj, s32 cameraEvent);
set_mario_interact_hoot_if_in_range
Lua Example
set_mario_interact_hoot_if_in_range(sp0, sp4, sp8)
Parameters
Field | Type |
---|---|
sp0 | integer |
sp4 | integer |
sp8 | number |
Returns
- None
C Prototype
void set_mario_interact_hoot_if_in_range(UNUSED s32 sp0, UNUSED s32 sp4, f32 sp8);
obj_set_billboard
Lua Example
obj_set_billboard(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void obj_set_billboard(struct Object *obj);
obj_set_cylboard
Lua Example
obj_set_cylboard(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void obj_set_cylboard(struct Object *obj);
cur_obj_set_billboard_if_vanilla_cam
Lua Example
cur_obj_set_billboard_if_vanilla_cam()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_set_billboard_if_vanilla_cam(void);
obj_set_hitbox_radius_and_height
Lua Example
obj_set_hitbox_radius_and_height(o, radius, height)
Parameters
Field | Type |
---|---|
o | Object |
radius | number |
height | number |
Returns
- None
C Prototype
void obj_set_hitbox_radius_and_height(struct Object *o, f32 radius, f32 height);
obj_set_hurtbox_radius_and_height
Lua Example
obj_set_hurtbox_radius_and_height(o, radius, height)
Parameters
Field | Type |
---|---|
o | Object |
radius | number |
height | number |
Returns
- None
C Prototype
void obj_set_hurtbox_radius_and_height(struct Object *o, f32 radius, f32 height);
cur_obj_set_hitbox_radius_and_height
Lua Example
cur_obj_set_hitbox_radius_and_height(radius, height)
Parameters
Field | Type |
---|---|
radius | number |
height | number |
Returns
- None
C Prototype
void cur_obj_set_hitbox_radius_and_height(f32 radius, f32 height);
cur_obj_set_hurtbox_radius_and_height
Lua Example
cur_obj_set_hurtbox_radius_and_height(radius, height)
Parameters
Field | Type |
---|---|
radius | number |
height | number |
Returns
- None
C Prototype
void cur_obj_set_hurtbox_radius_and_height(f32 radius, f32 height);
obj_spawn_loot_coins
Lua Example
obj_spawn_loot_coins(obj, numCoins, sp30, coinBehavior, posJitter, model)
Parameters
Field | Type |
---|---|
obj | Object |
numCoins | integer |
sp30 | number |
coinBehavior | Pointer <BehaviorScript > |
posJitter | integer |
model | integer |
Returns
- None
C Prototype
void obj_spawn_loot_coins(struct Object *obj, s32 numCoins, f32 sp30, const BehaviorScript *coinBehavior, s16 posJitter, s16 model);
obj_spawn_loot_blue_coins
Lua Example
obj_spawn_loot_blue_coins(obj, numCoins, sp28, posJitter)
Parameters
Field | Type |
---|---|
obj | Object |
numCoins | integer |
sp28 | number |
posJitter | integer |
Returns
- None
C Prototype
void obj_spawn_loot_blue_coins(struct Object *obj, s32 numCoins, f32 sp28, s16 posJitter);
obj_spawn_loot_yellow_coins
Lua Example
obj_spawn_loot_yellow_coins(obj, numCoins, sp28)
Parameters
Field | Type |
---|---|
obj | Object |
numCoins | integer |
sp28 | number |
Returns
- None
C Prototype
void obj_spawn_loot_yellow_coins(struct Object *obj, s32 numCoins, f32 sp28);
cur_obj_spawn_loot_coin_at_mario_pos
Lua Example
cur_obj_spawn_loot_coin_at_mario_pos(m)
Parameters
Field | Type |
---|---|
m | MarioState |
Returns
- None
C Prototype
void cur_obj_spawn_loot_coin_at_mario_pos(struct MarioState* m);
cur_obj_abs_y_dist_to_home
Lua Example
local numberValue = cur_obj_abs_y_dist_to_home()
Parameters
- None
Returns
number
C Prototype
f32 cur_obj_abs_y_dist_to_home(void);
cur_obj_advance_looping_anim
Lua Example
local integerValue = cur_obj_advance_looping_anim()
Parameters
- None
Returns
integer
C Prototype
s32 cur_obj_advance_looping_anim(void);
cur_obj_detect_steep_floor
Lua Example
local integerValue = cur_obj_detect_steep_floor(steepAngleDegrees)
Parameters
Field | Type |
---|---|
steepAngleDegrees | integer |
Returns
integer
C Prototype
s32 cur_obj_detect_steep_floor(s16 steepAngleDegrees);
cur_obj_resolve_wall_collisions
Lua Example
local integerValue = cur_obj_resolve_wall_collisions()
Parameters
- None
Returns
integer
C Prototype
s32 cur_obj_resolve_wall_collisions(void);
cur_obj_update_floor
Lua Example
cur_obj_update_floor()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_update_floor(void);
cur_obj_update_floor_and_resolve_wall_collisions
Lua Example
cur_obj_update_floor_and_resolve_wall_collisions(steepSlopeDegrees)
Parameters
Field | Type |
---|---|
steepSlopeDegrees | integer |
Returns
- None
C Prototype
void cur_obj_update_floor_and_resolve_wall_collisions(s16 steepSlopeDegrees);
cur_obj_update_floor_and_walls
Lua Example
cur_obj_update_floor_and_walls()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_update_floor_and_walls(void);
cur_obj_move_standard
Lua Example
cur_obj_move_standard(steepSlopeAngleDegrees)
Parameters
Field | Type |
---|---|
steepSlopeAngleDegrees | integer |
Returns
- None
C Prototype
void cur_obj_move_standard(s16 steepSlopeAngleDegrees);
cur_obj_within_12k_bounds
Lua Example
local integerValue = cur_obj_within_12k_bounds()
Parameters
- None
Returns
integer
C Prototype
s32 cur_obj_within_12k_bounds(void);
cur_obj_move_using_vel_and_gravity
Lua Example
cur_obj_move_using_vel_and_gravity()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_move_using_vel_and_gravity(void);
cur_obj_move_using_fvel_and_gravity
Lua Example
cur_obj_move_using_fvel_and_gravity()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_move_using_fvel_and_gravity(void);
obj_set_pos_relative
Lua Example
obj_set_pos_relative(obj, other, dleft, dy, dforward)
Parameters
Field | Type |
---|---|
obj | Object |
other | Object |
dleft | number |
dy | number |
dforward | number |
Returns
- None
C Prototype
void obj_set_pos_relative(struct Object *obj, struct Object *other, f32 dleft, f32 dy, f32 dforward);
cur_obj_angle_to_home
Lua Example
local integerValue = cur_obj_angle_to_home()
Parameters
- None
Returns
integer
C Prototype
s16 cur_obj_angle_to_home(void);
obj_set_gfx_pos_at_obj_pos
Lua Example
obj_set_gfx_pos_at_obj_pos(obj1, obj2)
Parameters
Field | Type |
---|---|
obj1 | Object |
obj2 | Object |
Returns
- None
C Prototype
void obj_set_gfx_pos_at_obj_pos(struct Object *obj1, struct Object *obj2);
obj_translate_local
Description
Transforms the vector at localTranslateIndex
into the object's local coordinates, and then adds it to the vector at posIndex
Lua Example
obj_translate_local(obj, posIndex, localTranslateIndex)
Parameters
Field | Type |
---|---|
obj | Object |
posIndex | integer |
localTranslateIndex | integer |
Returns
- None
C Prototype
void obj_translate_local(struct Object *obj, s16 posIndex, s16 localTranslateIndex);
obj_build_transform_from_pos_and_angle
Lua Example
obj_build_transform_from_pos_and_angle(obj, posIndex, angleIndex)
Parameters
Field | Type |
---|---|
obj | Object |
posIndex | integer |
angleIndex | integer |
Returns
- None
C Prototype
void obj_build_transform_from_pos_and_angle(struct Object *obj, s16 posIndex, s16 angleIndex);
obj_set_throw_matrix_from_transform
Lua Example
obj_set_throw_matrix_from_transform(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void obj_set_throw_matrix_from_transform(struct Object *obj);
obj_build_transform_relative_to_parent
Lua Example
obj_build_transform_relative_to_parent(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void obj_build_transform_relative_to_parent(struct Object *obj);
obj_create_transform_from_self
Lua Example
obj_create_transform_from_self(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
- None
C Prototype
void obj_create_transform_from_self(struct Object *obj);
cur_obj_rotate_move_angle_using_vel
Lua Example
cur_obj_rotate_move_angle_using_vel()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_rotate_move_angle_using_vel(void);
cur_obj_rotate_face_angle_using_vel
Lua Example
cur_obj_rotate_face_angle_using_vel()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_rotate_face_angle_using_vel(void);
cur_obj_set_face_angle_to_move_angle
Lua Example
cur_obj_set_face_angle_to_move_angle()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_set_face_angle_to_move_angle(void);
cur_obj_follow_path
Lua Example
local integerValue = cur_obj_follow_path(unusedArg)
Parameters
Field | Type |
---|---|
unusedArg | integer |
Returns
integer
C Prototype
s32 cur_obj_follow_path(UNUSED s32 unusedArg);
chain_segment_init
Lua Example
chain_segment_init(segment)
Parameters
Field | Type |
---|---|
segment | ChainSegment |
Returns
- None
C Prototype
void chain_segment_init(struct ChainSegment *segment);
random_f32_around_zero
Lua Example
local numberValue = random_f32_around_zero(diameter)
Parameters
Field | Type |
---|---|
diameter | number |
Returns
number
C Prototype
f32 random_f32_around_zero(f32 diameter);
obj_scale_random
Lua Example
obj_scale_random(obj, rangeLength, minScale)
Parameters
Field | Type |
---|---|
obj | Object |
rangeLength | number |
minScale | number |
Returns
- None
C Prototype
void obj_scale_random(struct Object *obj, f32 rangeLength, f32 minScale);
obj_translate_xyz_random
Lua Example
obj_translate_xyz_random(obj, rangeLength)
Parameters
Field | Type |
---|---|
obj | Object |
rangeLength | number |
Returns
- None
C Prototype
void obj_translate_xyz_random(struct Object *obj, f32 rangeLength);
obj_translate_xz_random
Lua Example
obj_translate_xz_random(obj, rangeLength)
Parameters
Field | Type |
---|---|
obj | Object |
rangeLength | number |
Returns
- None
C Prototype
void obj_translate_xz_random(struct Object *obj, f32 rangeLength);
obj_build_vel_from_transform
Lua Example
obj_build_vel_from_transform(a0)
Parameters
Field | Type |
---|---|
a0 | Object |
Returns
- None
C Prototype
void obj_build_vel_from_transform(struct Object *a0);
cur_obj_set_pos_via_transform
Lua Example
cur_obj_set_pos_via_transform()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_set_pos_via_transform(void);
cur_obj_reflect_move_angle_off_wall
Lua Example
local integerValue = cur_obj_reflect_move_angle_off_wall()
Parameters
- None
Returns
integer
C Prototype
s16 cur_obj_reflect_move_angle_off_wall(void);
cur_obj_spawn_particles
Lua Example
cur_obj_spawn_particles(info)
Parameters
Field | Type |
---|---|
info | SpawnParticlesInfo |
Returns
- None
C Prototype
void cur_obj_spawn_particles(struct SpawnParticlesInfo *info);
obj_set_hitbox
Lua Example
obj_set_hitbox(obj, hitbox)
Parameters
Field | Type |
---|---|
obj | Object |
hitbox | ObjectHitbox |
Returns
- None
C Prototype
void obj_set_hitbox(struct Object *obj, struct ObjectHitbox *hitbox);
signum_positive
Lua Example
local integerValue = signum_positive(x)
Parameters
Field | Type |
---|---|
x | integer |
Returns
integer
C Prototype
s32 signum_positive(s32 x);
cur_obj_wait_then_blink
Lua Example
local integerValue = cur_obj_wait_then_blink(timeUntilBlinking, numBlinks)
Parameters
Field | Type |
---|---|
timeUntilBlinking | integer |
numBlinks | integer |
Returns
integer
C Prototype
s32 cur_obj_wait_then_blink(s32 timeUntilBlinking, s32 numBlinks);
cur_obj_is_mario_ground_pounding_platform
Lua Example
local integerValue = cur_obj_is_mario_ground_pounding_platform()
Parameters
- None
Returns
integer
C Prototype
s32 cur_obj_is_mario_ground_pounding_platform(void);
obj_is_mario_ground_pounding_platform
Lua Example
local integerValue = obj_is_mario_ground_pounding_platform(m, obj)
Parameters
Field | Type |
---|---|
m | MarioState |
obj | Object |
Returns
integer
C Prototype
s32 obj_is_mario_ground_pounding_platform(struct MarioState *m, struct Object *obj);
spawn_mist_particles
Lua Example
spawn_mist_particles()
Parameters
- None
Returns
- None
C Prototype
void spawn_mist_particles(void);
spawn_mist_particles_with_sound
Lua Example
spawn_mist_particles_with_sound(sp18)
Parameters
Field | Type |
---|---|
sp18 | integer |
Returns
- None
C Prototype
void spawn_mist_particles_with_sound(u32 sp18);
cur_obj_push_mario_away
Lua Example
cur_obj_push_mario_away(radius)
Parameters
Field | Type |
---|---|
radius | number |
Returns
- None
C Prototype
void cur_obj_push_mario_away(f32 radius);
cur_obj_push_mario_away_from_cylinder
Lua Example
cur_obj_push_mario_away_from_cylinder(radius, extentY)
Parameters
Field | Type |
---|---|
radius | number |
extentY | number |
Returns
- None
C Prototype
void cur_obj_push_mario_away_from_cylinder(f32 radius, f32 extentY);
bhv_dust_smoke_loop
Lua Example
bhv_dust_smoke_loop()
Parameters
- None
Returns
- None
C Prototype
void bhv_dust_smoke_loop(void);
stub_obj_helpers_3
Lua Example
stub_obj_helpers_3(sp0, sp4)
Parameters
Field | Type |
---|---|
sp0 | integer |
sp4 | integer |
Returns
- None
C Prototype
void stub_obj_helpers_3(UNUSED s32 sp0, UNUSED s32 sp4);
cur_obj_scale_over_time
Lua Example
cur_obj_scale_over_time(a0, a1, sp10, sp14)
Parameters
Field | Type |
---|---|
a0 | integer |
a1 | integer |
sp10 | number |
sp14 | number |
Returns
- None
C Prototype
void cur_obj_scale_over_time(s32 a0, s32 a1, f32 sp10, f32 sp14);
cur_obj_set_pos_to_home_with_debug
Lua Example
cur_obj_set_pos_to_home_with_debug()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_set_pos_to_home_with_debug(void);
stub_obj_helpers_4
Lua Example
stub_obj_helpers_4()
Parameters
- None
Returns
- None
C Prototype
void stub_obj_helpers_4(void);
cur_obj_is_mario_on_platform
Lua Example
local integerValue = cur_obj_is_mario_on_platform()
Parameters
- None
Returns
integer
C Prototype
s32 cur_obj_is_mario_on_platform(void);
cur_obj_is_any_player_on_platform
Lua Example
local integerValue = cur_obj_is_any_player_on_platform()
Parameters
- None
Returns
integer
C Prototype
s32 cur_obj_is_any_player_on_platform(void);
cur_obj_shake_y_until
Lua Example
local integerValue = cur_obj_shake_y_until(cycles, amount)
Parameters
Field | Type |
---|---|
cycles | integer |
amount | integer |
Returns
integer
C Prototype
s32 cur_obj_shake_y_until(s32 cycles, s32 amount);
cur_obj_move_up_and_down
Lua Example
local integerValue = cur_obj_move_up_and_down(a0)
Parameters
Field | Type |
---|---|
a0 | integer |
Returns
integer
C Prototype
s32 cur_obj_move_up_and_down(s32 a0);
spawn_star_with_no_lvl_exit
Lua Example
local ObjectValue = spawn_star_with_no_lvl_exit(sp20, sp24)
Parameters
Field | Type |
---|---|
sp20 | integer |
sp24 | integer |
Returns
C Prototype
struct Object *spawn_star_with_no_lvl_exit(s32 sp20, s32 sp24);
spawn_base_star_with_no_lvl_exit
Lua Example
spawn_base_star_with_no_lvl_exit()
Parameters
- None
Returns
- None
C Prototype
void spawn_base_star_with_no_lvl_exit(void);
bit_shift_left
Lua Example
local integerValue = bit_shift_left(a0)
Parameters
Field | Type |
---|---|
a0 | integer |
Returns
integer
C Prototype
s32 bit_shift_left(s32 a0);
cur_obj_mario_far_away
Lua Example
local integerValue = cur_obj_mario_far_away()
Parameters
- None
Returns
integer
C Prototype
s32 cur_obj_mario_far_away(void);
is_mario_moving_fast_or_in_air
Lua Example
local integerValue = is_mario_moving_fast_or_in_air(speedThreshold)
Parameters
Field | Type |
---|---|
speedThreshold | integer |
Returns
integer
C Prototype
s32 is_mario_moving_fast_or_in_air(s32 speedThreshold);
is_item_in_array
Lua Example
local integerValue = is_item_in_array(item, array)
Parameters
Field | Type |
---|---|
item | integer |
array | Pointer <integer > |
Returns
integer
C Prototype
s32 is_item_in_array(s8 item, s8 *array);
bhv_init_room
Lua Example
bhv_init_room()
Parameters
- None
Returns
- None
C Prototype
void bhv_init_room(void);
cur_obj_enable_rendering_if_mario_in_room
Lua Example
cur_obj_enable_rendering_if_mario_in_room()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_enable_rendering_if_mario_in_room(void);
cur_obj_set_hitbox_and_die_if_attacked
Lua Example
local integerValue = cur_obj_set_hitbox_and_die_if_attacked(hitbox, deathSound, noLootCoins)
Parameters
Field | Type |
---|---|
hitbox | ObjectHitbox |
deathSound | integer |
noLootCoins | integer |
Returns
integer
C Prototype
s32 cur_obj_set_hitbox_and_die_if_attacked(struct ObjectHitbox *hitbox, s32 deathSound, s32 noLootCoins);
obj_explode_and_spawn_coins
Lua Example
obj_explode_and_spawn_coins(sp18, sp1C)
Parameters
Field | Type |
---|---|
sp18 | number |
sp1C | integer |
Returns
- None
C Prototype
void obj_explode_and_spawn_coins(f32 sp18, s32 sp1C);
cur_obj_if_hit_wall_bounce_away
Lua Example
cur_obj_if_hit_wall_bounce_away()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_if_hit_wall_bounce_away(void);
cur_obj_hide_if_mario_far_away_y
Lua Example
local integerValue = cur_obj_hide_if_mario_far_away_y(distY)
Parameters
Field | Type |
---|---|
distY | number |
Returns
integer
C Prototype
s32 cur_obj_hide_if_mario_far_away_y(f32 distY);
obj_is_hidden
Lua Example
local integerValue = obj_is_hidden(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
integer
C Prototype
s32 obj_is_hidden(struct Object *obj);
enable_time_stop
Lua Example
enable_time_stop()
Parameters
- None
Returns
- None
C Prototype
void enable_time_stop(void);
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);
disable_time_stop
Lua Example
disable_time_stop()
Parameters
- None
Returns
- None
C Prototype
void disable_time_stop(void);
set_time_stop_flags
Lua Example
set_time_stop_flags(flags)
Parameters
Field | Type |
---|---|
flags | integer |
Returns
- None
C Prototype
void set_time_stop_flags(s32 flags);
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);
clear_time_stop_flags
Lua Example
clear_time_stop_flags(flags)
Parameters
Field | Type |
---|---|
flags | integer |
Returns
- None
C Prototype
void clear_time_stop_flags(s32 flags);
cur_obj_can_mario_activate_textbox
Lua Example
local integerValue = cur_obj_can_mario_activate_textbox(m, radius, height, unused)
Parameters
Field | Type |
---|---|
m | MarioState |
radius | number |
height | number |
unused | integer |
Returns
integer
C Prototype
s32 cur_obj_can_mario_activate_textbox(struct MarioState* m, f32 radius, f32 height, UNUSED s32 unused);
cur_obj_can_mario_activate_textbox_2
Lua Example
local integerValue = cur_obj_can_mario_activate_textbox_2(m, radius, height)
Parameters
Field | Type |
---|---|
m | MarioState |
radius | number |
height | number |
Returns
integer
C Prototype
s32 cur_obj_can_mario_activate_textbox_2(struct MarioState* m, f32 radius, f32 height);
cur_obj_end_dialog
Lua Example
cur_obj_end_dialog(m, dialogFlags, dialogResult)
Parameters
Field | Type |
---|---|
m | MarioState |
dialogFlags | integer |
dialogResult | integer |
Returns
- None
C Prototype
void cur_obj_end_dialog(struct MarioState* m, s32 dialogFlags, s32 dialogResult);
cur_obj_has_model
Lua Example
local integerValue = cur_obj_has_model(modelID)
Parameters
Field | Type |
---|---|
modelID | integer |
Returns
integer
C Prototype
s32 cur_obj_has_model(u16 modelID);
cur_obj_align_gfx_with_floor
Lua Example
cur_obj_align_gfx_with_floor()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_align_gfx_with_floor(void);
mario_is_within_rectangle
Lua Example
local integerValue = mario_is_within_rectangle(minX, maxX, minZ, maxZ)
Parameters
Field | Type |
---|---|
minX | integer |
maxX | integer |
minZ | integer |
maxZ | integer |
Returns
integer
C Prototype
s32 mario_is_within_rectangle(s16 minX, s16 maxX, s16 minZ, s16 maxZ);
cur_obj_shake_screen
Lua Example
cur_obj_shake_screen(shake)
Parameters
Field | Type |
---|---|
shake | integer |
Returns
- None
C Prototype
void cur_obj_shake_screen(s32 shake);
obj_attack_collided_from_other_object
Lua Example
local integerValue = obj_attack_collided_from_other_object(obj)
Parameters
Field | Type |
---|---|
obj | Object |
Returns
integer
C Prototype
s32 obj_attack_collided_from_other_object(struct Object *obj);
cur_obj_was_attacked_or_ground_pounded
Lua Example
local integerValue = cur_obj_was_attacked_or_ground_pounded()
Parameters
- None
Returns
integer
C Prototype
s32 cur_obj_was_attacked_or_ground_pounded(void);
obj_copy_behavior_params
Lua Example
obj_copy_behavior_params(dst, src)
Parameters
Field | Type |
---|---|
dst | Object |
src | Object |
Returns
- None
C Prototype
void obj_copy_behavior_params(struct Object *dst, struct Object *src);
cur_obj_init_animation_and_anim_frame
Lua Example
cur_obj_init_animation_and_anim_frame(animIndex, animFrame)
Parameters
Field | Type |
---|---|
animIndex | integer |
animFrame | integer |
Returns
- None
C Prototype
void cur_obj_init_animation_and_anim_frame(s32 animIndex, s32 animFrame);
cur_obj_init_animation_and_check_if_near_end
Lua Example
local integerValue = cur_obj_init_animation_and_check_if_near_end(animIndex)
Parameters
Field | Type |
---|---|
animIndex | integer |
Returns
integer
C Prototype
s32 cur_obj_init_animation_and_check_if_near_end(s32 animIndex);
cur_obj_init_animation_and_extend_if_at_end
Lua Example
cur_obj_init_animation_and_extend_if_at_end(animIndex)
Parameters
Field | Type |
---|---|
animIndex | integer |
Returns
- None
C Prototype
void cur_obj_init_animation_and_extend_if_at_end(s32 animIndex);
cur_obj_check_grabbed_mario
Lua Example
local integerValue = cur_obj_check_grabbed_mario()
Parameters
- None
Returns
integer
C Prototype
s32 cur_obj_check_grabbed_mario(void);
player_performed_grab_escape_action
Lua Example
local integerValue = player_performed_grab_escape_action()
Parameters
- None
Returns
integer
C Prototype
s32 player_performed_grab_escape_action(void);
cur_obj_unused_play_footstep_sound
Lua Example
cur_obj_unused_play_footstep_sound(animFrame1, animFrame2, sound)
Parameters
Field | Type |
---|---|
animFrame1 | integer |
animFrame2 | integer |
sound | integer |
Returns
- None
C Prototype
void cur_obj_unused_play_footstep_sound(s32 animFrame1, s32 animFrame2, s32 sound);
enable_time_stop_including_mario
Lua Example
enable_time_stop_including_mario()
Parameters
- None
Returns
- None
C Prototype
void enable_time_stop_including_mario(void);
disable_time_stop_including_mario
Lua Example
disable_time_stop_including_mario()
Parameters
- None
Returns
- None
C Prototype
void disable_time_stop_including_mario(void);
cur_obj_check_interacted
Lua Example
local integerValue = cur_obj_check_interacted()
Parameters
- None
Returns
integer
C Prototype
s32 cur_obj_check_interacted(void);
cur_obj_spawn_loot_blue_coin
Lua Example
cur_obj_spawn_loot_blue_coin()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_spawn_loot_blue_coin(void);
cur_obj_spawn_star_at_y_offset
Lua Example
cur_obj_spawn_star_at_y_offset(targetX, targetY, targetZ, offsetY)
Parameters
Field | Type |
---|---|
targetX | number |
targetY | number |
targetZ | number |
offsetY | number |
Returns
- None
C Prototype
void cur_obj_spawn_star_at_y_offset(f32 targetX, f32 targetY, f32 targetZ, f32 offsetY);
cur_obj_set_home_once
Description
Sets the current object's home only the first time it's called
Lua Example
cur_obj_set_home_once()
Parameters
- None
Returns
- None
C Prototype
void cur_obj_set_home_once(void);
get_trajectory_length
Description
Gets a trajectory's length
Lua Example
local integerValue = get_trajectory_length(trajectory)
Parameters
Field | Type |
---|---|
trajectory | Pointer <Trajectory > |
Returns
integer
C Prototype
s32 get_trajectory_length(Trajectory* trajectory);
functions from object_list_processor.h
set_object_respawn_info_bits
Description
Runs an OR operator on the obj
's respawn info with bits
<< 8. If bits
is 0xFF, this prevents the object from respawning after leaving and re-entering the area
Lua Example
set_object_respawn_info_bits(obj, bits)
Parameters
Field | Type |
---|---|
obj | Object |
bits | integer |
Returns
- None
C Prototype
void set_object_respawn_info_bits(struct Object *obj, u8 bits);
functions from platform_displacement.h
apply_platform_displacement
Description
Apply one frame of platform rotation to the object using the given platform
Lua Example
apply_platform_displacement(o, platform)
Parameters
Field | Type |
---|---|
o | Object |
platform | Object |
Returns
- None
C Prototype
void apply_platform_displacement(struct Object *o, struct Object *platform);
functions from rumble_init.h
queue_rumble_data
Description
Queues rumble data
Lua Example
queue_rumble_data(a0, a1)
Parameters
Field | Type |
---|---|
a0 | integer |
a1 | integer |
Returns
- None
C Prototype
void queue_rumble_data(s16 a0, s16 a1);
queue_rumble_data_object
Description
Queues rumble data for object, factoring in its distance from Mario
Lua Example
queue_rumble_data_object(object, a0, a1)
Parameters
Field | Type |
---|---|
object | Object |
a0 | integer |
a1 | integer |
Returns
- None
C Prototype
void queue_rumble_data_object(struct Object* object, s16 a0, s16 a1);
queue_rumble_data_mario
Description
Queues rumble data for Mario
Lua Example
queue_rumble_data_mario(m, a0, a1)
Parameters
Field | Type |
---|---|
m | MarioState |
a0 | integer |
a1 | integer |
Returns
- None
C Prototype
void queue_rumble_data_mario(struct MarioState* m, s16 a0, s16 a1);
reset_rumble_timers
Description
Resets rumble timers
Lua Example
reset_rumble_timers(m)
Parameters
Field | Type |
---|---|
m | MarioState |
Returns
- None
C Prototype
void reset_rumble_timers(struct MarioState* m);
reset_rumble_timers_2
Description
Resets rumble timers and sets a field based on a0
Lua Example
reset_rumble_timers_2(m, a0)
Parameters
Field | Type |
---|---|
m | MarioState |
a0 | integer |
Returns
- None
C Prototype
void reset_rumble_timers_2(struct MarioState* m, s32 a0);
functions from save_file.h
get_level_num_from_course_num
Description
Gets the course number's corresponding level number
Lua Example
local integerValue = get_level_num_from_course_num(courseNum)
Parameters
Field | Type |
---|---|
courseNum | integer |
Returns
integer
C Prototype
s8 get_level_num_from_course_num(s16 courseNum);
get_level_course_num
Description
Gets the level number's corresponding course number
Lua Example
local integerValue = get_level_course_num(levelNum)
Parameters
Field | Type |
---|---|
levelNum | integer |
Returns
integer
C Prototype
s8 get_level_course_num(s16 levelNum);
touch_coin_score_age
Description
Marks the coin score for a specific course as the newest among all save files. Adjusts the age of other scores to reflect the update. Useful for leaderboard tracking or displaying recent progress
Lua Example
touch_coin_score_age(fileIndex, courseIndex)
Parameters
Field | Type |
---|---|
fileIndex | integer |
courseIndex | integer |
Returns
- None
C Prototype
void touch_coin_score_age(s32 fileIndex, s32 courseIndex);
save_file_do_save
Description
Saves the current state of the game into a specified save file. Includes data verification and backup management. Useful for maintaining game progress during play or when saving manually
Lua Example
save_file_do_save(fileIndex, forceSave)
Parameters
Field | Type |
---|---|
fileIndex | integer |
forceSave | integer |
Returns
- None
C Prototype
void save_file_do_save(s32 fileIndex, s8 forceSave);
save_file_erase
Description
Erases all data in a specified save file, including backup slots. Marks the save file as modified and performs a save to apply the changes. Useful for resetting a save file to its default state
Lua Example
save_file_erase(fileIndex)
Parameters
Field | Type |
---|---|
fileIndex | integer |
Returns
- None
C Prototype
void save_file_erase(s32 fileIndex);
save_file_erase_current_backup_save
Description
Erases the backup data for the current save file without affecting the primary save data. Reloads the save file afterward
Lua Example
save_file_erase_current_backup_save()
Parameters
- None
Returns
- None
C Prototype
void save_file_erase_current_backup_save(void);
save_file_reload
Description
Reloads the save file data into memory, optionally resetting all save files. Marks the save file as modified. Useful for reloading state after data corruption or during development debugging
Lua Example
save_file_reload(load_all)
Parameters
Field | Type |
---|---|
load_all | integer |
Returns
- None
C Prototype
void save_file_reload(u8 load_all);
save_file_get_max_coin_score
Description
Determines the maximum coin score for a course across all save files. Returns the score along with the file index of the save containing it. Useful for leaderboard-style comparisons and overall progress tracking
Lua Example
local integerValue = save_file_get_max_coin_score(courseIndex)
Parameters
Field | Type |
---|---|
courseIndex | integer |
Returns
integer
C Prototype
u32 save_file_get_max_coin_score(s32 courseIndex);
save_file_get_course_star_count
Description
Calculates the total number of stars collected in a specific course for a given save file. Useful for determining completion status of individual levels
Lua Example
local integerValue = save_file_get_course_star_count(fileIndex, courseIndex)
Parameters
Field | Type |
---|---|
fileIndex | integer |
courseIndex | integer |
Returns
integer
C Prototype
s32 save_file_get_course_star_count(s32 fileIndex, s32 courseIndex);
save_file_get_total_star_count
Description
Calculates the total number of stars collected across multiple courses within a specified range. Useful for determining the overall progress toward game completion
Lua Example
local integerValue = save_file_get_total_star_count(fileIndex, minCourse, maxCourse)
Parameters
Field | Type |
---|---|
fileIndex | integer |
minCourse | integer |
maxCourse | integer |
Returns
integer
C Prototype
s32 save_file_get_total_star_count(s32 fileIndex, s32 minCourse, s32 maxCourse);
save_file_set_flags
Description
Adds new flags to the save file's flag bitmask. Useful for updating progress or triggering new gameplay features
Lua Example
save_file_set_flags(flags)
Parameters
Field | Type |
---|---|
flags | integer |
Returns
- None
C Prototype
void save_file_set_flags(u32 flags);
save_file_clear_flags
Description
Clears specific flags in the current save file. The flags are specified as a bitmask in the flags
parameter. Ensures that the save file remains valid after clearing. Useful for removing specific game states, such as collected items or completed objectives, without resetting the entire save
Lua Example
save_file_clear_flags(flags)
Parameters
Field | Type |
---|---|
flags | integer |
Returns
- None
C Prototype
void save_file_clear_flags(u32 flags);
save_file_get_flags
Description
Retrieves the bitmask of flags representing the current state of the save file. Flags indicate collected items, completed objectives, and other game states. Useful for checking specific game progress details
Lua Example
local integerValue = save_file_get_flags()
Parameters
- None
Returns
integer
C Prototype
u32 save_file_get_flags(void);
save_file_get_star_flags
Description
Retrieves the bitmask of stars collected in a specific course or castle secret stars (-1). Useful for evaluating level progress and completion
Lua Example
local integerValue = save_file_get_star_flags(fileIndex, courseIndex)
Parameters
Field | Type |
---|---|
fileIndex | integer |
courseIndex | integer |
Returns
integer
C Prototype
u32 save_file_get_star_flags(s32 fileIndex, s32 courseIndex);
save_file_set_star_flags
Description
Adds specific star flags to the save file, indicating collected stars for a course or castle secret stars. Updates the save file flags as necessary. Useful for recording progress after star collection
Lua Example
save_file_set_star_flags(fileIndex, courseIndex, starFlags)
Parameters
Field | Type |
---|---|
fileIndex | integer |
courseIndex | integer |
starFlags | integer |
Returns
- None
C Prototype
void save_file_set_star_flags(s32 fileIndex, s32 courseIndex, u32 starFlags);
save_file_remove_star_flags
Description
Removes specific star flags from the save file. This modifies the bitmask representing collected stars for a course or castle secret stars. Useful for undoing progress or debugging collected stars
Lua Example
save_file_remove_star_flags(fileIndex, courseIndex, starFlagsToRemove)
Parameters
Field | Type |
---|---|
fileIndex | integer |
courseIndex | integer |
starFlagsToRemove | integer |
Returns
- None
C Prototype
void save_file_remove_star_flags(s32 fileIndex, s32 courseIndex, u32 starFlagsToRemove);
save_file_get_course_coin_score
Description
Returns the highest coin score for a specified course in the save file. Performs checks to ensure the coin score is valid. Useful for tracking player achievements and high scores
Lua Example
local integerValue = save_file_get_course_coin_score(fileIndex, courseIndex)
Parameters
Field | Type |
---|---|
fileIndex | integer |
courseIndex | integer |
Returns
integer
C Prototype
s32 save_file_get_course_coin_score(s32 fileIndex, s32 courseIndex);
save_file_set_course_coin_score
Description
Updates the coin score for a specific course in the save file. The new score is provided in the coinScore
parameter. Useful for manually setting achievements such as high coin counts in individual levels
Lua Example
save_file_set_course_coin_score(fileIndex, courseIndex, coinScore)
Parameters
Field | Type |
---|---|
fileIndex | integer |
courseIndex | integer |
coinScore | integer |
Returns
- None
C Prototype
void save_file_set_course_coin_score(s32 fileIndex, s32 courseIndex, u8 coinScore);
save_file_is_cannon_unlocked
Description
Checks whether the cannon in the specified course is unlocked. Returns true if the cannon is unlocked, otherwise false. Useful for tracking course-specific progress and enabling shortcuts
Lua Example
local integerValue = save_file_is_cannon_unlocked(fileIndex, courseIndex)
Parameters
Field | Type |
---|---|
fileIndex | integer |
courseIndex | integer |
Returns
integer
C Prototype
s32 save_file_is_cannon_unlocked(s32 fileIndex, s32 courseIndex);
save_file_get_cap_pos
Description
Retrieves the current position of Mario's cap, if it is on the ground in the current level and area. The position is stored in the provided capPos
parameter. Useful for tracking the cap's location after it has been dropped or lost
Lua Example
local integerValue = save_file_get_cap_pos(capPos)
Parameters
Field | Type |
---|---|
capPos | Vec3s |
Returns
integer
C Prototype
s32 save_file_get_cap_pos(Vec3s capPos);
save_file_get_sound_mode
Description
Returns the current sound mode (e.g., stereo, mono) stored in the save file. Useful for checking the audio output preferences when loading a save
Lua Example
local integerValue = save_file_get_sound_mode()
Parameters
- None
Returns
integer
C Prototype
u16 save_file_get_sound_mode(void);
---