sm64coopdx/docs/lua/functions-6.md
2024-12-16 20:18:28 -05:00

64 KiB

Lua Functions


< prev | 1 | 2 | 3 | 4 | 5 | 6]


functions from smlua_misc_utils.h


allocate_mario_action

Description

Allocates an action ID with bitwise flags

Lua Example

local integerValue = allocate_mario_action(actFlags)

Parameters

Field Type
actFlags integer

Returns

  • integer

C Prototype

u32 allocate_mario_action(u32 actFlags);

🔼


course_is_main_course

Description

Checks if a course is a main course and not the castle or secret levels

Lua Example

local booleanValue = course_is_main_course(courseNum)

Parameters

Field Type
courseNum integer

Returns

  • boolean

C Prototype

bool course_is_main_course(u16 courseNum);

🔼


deref_s32_pointer

Description

Gets the signed 32-bit integer value from pointer

Lua Example

local integerValue = deref_s32_pointer(pointer)

Parameters

Field Type
pointer Pointer <integer>

Returns

  • integer

C Prototype

s32 deref_s32_pointer(s32* pointer);

🔼


djui_attempting_to_open_playerlist

Description

Checks if the DJUI playerlist is attempting to be opened

Lua Example

local booleanValue = djui_attempting_to_open_playerlist()

Parameters

  • None

Returns

  • boolean

C Prototype

bool djui_attempting_to_open_playerlist(void);

🔼


djui_is_playerlist_open

Description

Checks if the DJUI playerlist is open

Lua Example

local booleanValue = djui_is_playerlist_open()

Parameters

  • None

Returns

  • boolean

C Prototype

bool djui_is_playerlist_open(void);

🔼


djui_is_popup_disabled

Description

Returns if popups are disabled

Lua Example

local booleanValue = djui_is_popup_disabled()

Parameters

  • None

Returns

  • boolean

C Prototype

bool djui_is_popup_disabled(void);

🔼


djui_menu_get_font

Description

Gets the DJUI menu font

Lua Example

local enumValue = djui_menu_get_font()

Parameters

  • None

Returns

enum DjuiFontType

C Prototype

enum DjuiFontType djui_menu_get_font(void);

🔼


djui_menu_get_theme

Description

Gets the DJUI menu theme

Lua Example

local DjuiThemeValue = djui_menu_get_theme()

Parameters

  • None

Returns

DjuiTheme

C Prototype

struct DjuiTheme* djui_menu_get_theme(void);

🔼


djui_popup_create_global

Description

Creates a DJUI popup that is broadcasted to every client

Lua Example

djui_popup_create_global(message, lines)

Parameters

Field Type
message string
lines integer

Returns

  • None

C Prototype

void djui_popup_create_global(const char* message, int lines);

🔼


djui_reset_popup_disabled_override

Description

Resets if popups are disabled

Lua Example

djui_reset_popup_disabled_override()

Parameters

  • None

Returns

  • None

C Prototype

void djui_reset_popup_disabled_override(void);

🔼


djui_set_popup_disabled_override

Description

Sets if popups are disabled

Lua Example

djui_set_popup_disabled_override(value)

Parameters

Field Type
value boolean

Returns

  • None

C Prototype

void djui_set_popup_disabled_override(bool value);

🔼


get_coopnet_id

Description

Gets the CoopNet ID of a player with localIndex if CoopNet is being used and the player is connected, otherwise "-1" is returned

Lua Example

local stringValue = get_coopnet_id(localIndex)

Parameters

Field Type
localIndex integer

Returns

  • string

C Prototype

const char* get_coopnet_id(s8 localIndex);

🔼


get_current_save_file_num

Description

Gets the current save file number (1-indexed)

Lua Example

local integerValue = get_current_save_file_num()

Parameters

  • None

Returns

  • integer

C Prototype

s16 get_current_save_file_num(void);

🔼


get_date_and_time

Description

Gets the system clock's date and time

Lua Example

local DateTimeValue = get_date_and_time()

Parameters

  • None

Returns

DateTime

C Prototype

struct DateTime* get_date_and_time(void);

🔼


get_dialog_box_state

Description

Gets the current state of the dialog box

Lua Example

local integerValue = get_dialog_box_state()

Parameters

  • None

Returns

  • integer

C Prototype

s8 get_dialog_box_state(void);

🔼


get_dialog_id

Description

Gets the current dialog box ID

Lua Example

local integerValue = get_dialog_id()

Parameters

  • None

Returns

  • integer

C Prototype

s16 get_dialog_id(void);

🔼


get_dialog_response

Description

Gets the choice selected inside of a dialog box (0-1)

Lua Example

local integerValue = get_dialog_response()

Parameters

  • None

Returns

  • integer

C Prototype

s32 get_dialog_response(void);

🔼


get_envfx

Description

Gets the non overridden environment effect (e.g. snow)

Lua Example

local integerValue = get_envfx()

Parameters

  • None

Returns

  • integer

C Prototype

u16 get_envfx(void);

🔼


get_environment_region

Description

Gets an environment region (gas/water boxes) height value

Lua Example

local numberValue = get_environment_region(index)

Parameters

Field Type
index integer

Returns

  • number

C Prototype

f32 get_environment_region(u8 index);

🔼


get_global_timer

Description

Gets the global timer that has been ticking at 30 frames per second since game boot

Lua Example

local integerValue = get_global_timer()

Parameters

  • None

Returns

  • integer

C Prototype

u32 get_global_timer(void);

🔼


get_got_file_coin_hi_score

Description

Checks if the save file's coin "HI SCORE" was obtained with the last star or key collection

Lua Example

local booleanValue = get_got_file_coin_hi_score()

Parameters

  • None

Returns

  • boolean

C Prototype

bool get_got_file_coin_hi_score(void);

🔼


get_hand_foot_pos_x

Description

Gets the X coordinate of Mario's hand (0-1) or foot (2-3) but it is important to note that the positions are not updated off-screen

Lua Example

local numberValue = get_hand_foot_pos_x(m, index)

Parameters

Field Type
m MarioState
index integer

Returns

  • number

C Prototype

f32 get_hand_foot_pos_x(struct MarioState* m, u8 index);

🔼


get_hand_foot_pos_y

Description

Gets the Y coordinate of Mario's hand (0-1) or foot (2-3) but It is important to note that the positions are not updated off-screen

Lua Example

local numberValue = get_hand_foot_pos_y(m, index)

Parameters

Field Type
m MarioState
index integer

Returns

  • number

C Prototype

f32 get_hand_foot_pos_y(struct MarioState* m, u8 index);

🔼


get_hand_foot_pos_z

Description

Gets the Z coordinate of Mario's hand (0-1) or foot (2-3) but it is important to note that the positions are not updated off-screen

Lua Example

local numberValue = get_hand_foot_pos_z(m, index)

Parameters

Field Type
m MarioState
index integer

Returns

  • number

C Prototype

f32 get_hand_foot_pos_z(struct MarioState* m, u8 index);

🔼


get_last_completed_course_num

Description

Gets the last course a star or key was collected in

Lua Example

local integerValue = get_last_completed_course_num()

Parameters

  • None

Returns

  • integer

C Prototype

u8 get_last_completed_course_num(void);

🔼


get_last_completed_star_num

Description

Gets the last collected star's number (1-7)

Lua Example

local integerValue = get_last_completed_star_num()

Parameters

  • None

Returns

  • integer

C Prototype

u8 get_last_completed_star_num(void);

🔼


get_last_star_or_key

Description

Gets if the last objective collected was a star (0) or a key (1)

Lua Example

local integerValue = get_last_star_or_key()

Parameters

  • None

Returns

  • integer

C Prototype

u8 get_last_star_or_key(void);

🔼


get_local_discord_id

Description

Gets the local discord ID if it isn't disabled, otherwise "0" is returned

Lua Example

local stringValue = get_local_discord_id()

Parameters

  • None

Returns

  • string

C Prototype

const char* get_local_discord_id(void);

🔼


get_network_area_timer

Description

Gets the current area's networked timer

Lua Example

local integerValue = get_network_area_timer()

Parameters

  • None

Returns

  • integer

C Prototype

u32 get_network_area_timer(void);

🔼


get_os_name

Description

Gets the name of the operating system the game is running on

Lua Example

local stringValue = get_os_name()

Parameters

  • None

Returns

  • string

C Prototype

const char* get_os_name(void);

🔼


get_save_file_modified

Description

Checks if the save file has been modified without saving

Lua Example

local booleanValue = get_save_file_modified()

Parameters

  • None

Returns

  • boolean

C Prototype

bool get_save_file_modified(void);

🔼


get_temp_s32_pointer

Description

Returns a temporary signed 32-bit integer pointer with its value set to initialValue

Lua Example

local PointerValue = get_temp_s32_pointer(initialValue)

Parameters

Field Type
initialValue integer

Returns

  • Pointer <integer>

C Prototype

s32* get_temp_s32_pointer(s32 initialValue);

🔼


get_time

Description

Gets the Unix Timestamp

Lua Example

local integerValue = get_time()

Parameters

  • None

Returns

  • integer

C Prototype

s64 get_time(void);

🔼


get_ttc_speed_setting

Description

Gets TTC's speed setting

Lua Example

local integerValue = get_ttc_speed_setting()

Parameters

  • None

Returns

  • integer

C Prototype

s16 get_ttc_speed_setting(void);

🔼


get_volume_env

Description

Gets the volume level of environment sounds effects

Lua Example

local numberValue = get_volume_env()

Parameters

  • None

Returns

  • number

C Prototype

f32 get_volume_env(void);

🔼


get_volume_level

Description

Gets the volume level of music

Lua Example

local numberValue = get_volume_level()

Parameters

  • None

Returns

  • number

C Prototype

f32 get_volume_level(void);

🔼


get_volume_master

Description

Gets the master volume level

Lua Example

local numberValue = get_volume_master()

Parameters

  • None

Returns

  • number

C Prototype

f32 get_volume_master(void);

🔼


get_volume_sfx

Description

Gets the volume level of sound effects

Lua Example

local numberValue = get_volume_sfx()

Parameters

  • None

Returns

  • number

C Prototype

f32 get_volume_sfx(void);

🔼


get_water_level

Description

Gets the water level in an area

Lua Example

local integerValue = get_water_level(index)

Parameters

Field Type
index integer

Returns

  • integer

C Prototype

s16 get_water_level(u8 index);

🔼


hud_get_flash

Description

Gets if the star counter on the HUD should flash

Lua Example

local integerValue = hud_get_flash()

Parameters

  • None

Returns

  • integer

C Prototype

s8 hud_get_flash(void);

🔼


hud_get_value

Lua Example

local integerValue = hud_get_value(type)

Parameters

Field Type
type enum HudDisplayValue

Returns

  • integer

C Prototype

s32 hud_get_value(enum HudDisplayValue type);

🔼


hud_hide

Description

Hides the HUD

Lua Example

hud_hide()

Parameters

  • None

Returns

  • None

C Prototype

void hud_hide(void);

🔼


hud_is_hidden

Description

Checks if the HUD is hidden

Lua Example

local booleanValue = hud_is_hidden()

Parameters

  • None

Returns

  • boolean

C Prototype

bool hud_is_hidden(void);

🔼


hud_render_power_meter

Description

Renders a power meter on the HUD

Lua Example

hud_render_power_meter(health, x, y, width, height)

Parameters

Field Type
health integer
x number
y number
width number
height number

Returns

  • None

C Prototype

void hud_render_power_meter(s32 health, f32 x, f32 y, f32 width, f32 height);

🔼


hud_render_power_meter_interpolated

Description

Renders an interpolated power meter on the HUD

Lua Example

hud_render_power_meter_interpolated(health, prevX, prevY, prevWidth, prevHeight, x, y, width, height)

Parameters

Field Type
health integer
prevX number
prevY number
prevWidth number
prevHeight number
x number
y number
width number
height number

Returns

  • None

C Prototype

void hud_render_power_meter_interpolated(s32 health, f32 prevX, f32 prevY, f32 prevWidth, f32 prevHeight, f32 x, f32 y, f32 width, f32 height);

🔼


hud_set_flash

Description

Sets if the star counter on the HUD should flash

Lua Example

hud_set_flash(value)

Parameters

Field Type
value integer

Returns

  • None

C Prototype

void hud_set_flash(s8 value);

🔼


hud_set_value

Description

Sets a HUD display value

Lua Example

hud_set_value(type, value)

Parameters

Field Type
type enum HudDisplayValue
value integer

Returns

  • None

C Prototype

void hud_set_value(enum HudDisplayValue type, s32 value);

🔼


hud_show

Description

Shows the HUD

Lua Example

hud_show()

Parameters

  • None

Returns

  • None

C Prototype

void hud_show(void);

🔼


is_game_paused

Description

Checks if the game is paused

Lua Example

local booleanValue = is_game_paused()

Parameters

  • None

Returns

  • boolean

C Prototype

bool is_game_paused(void);

🔼


is_transition_playing

Description

Checks if a screen transition is playing

Lua Example

local booleanValue = is_transition_playing()

Parameters

  • None

Returns

  • boolean

C Prototype

bool is_transition_playing(void);

🔼


mod_file_exists

Description

Checks if a file exists inside of a mod

Lua Example

local booleanValue = mod_file_exists(filename)

Parameters

Field Type
filename string

Returns

  • boolean

C Prototype

bool mod_file_exists(const char* filename);

🔼


movtexqc_register

Description

Registers a custom moving texture entry (used for vanilla water boxes)

Lua Example

movtexqc_register(name, level, area, type)

Parameters

Field Type
name string
level integer
area integer
type integer

Returns

  • None

C Prototype

void movtexqc_register(const char* name, s16 level, s16 area, s16 type);

🔼


play_transition

Description

Plays a screen transition

Lua Example

play_transition(transType, time, red, green, blue)

Parameters

Field Type
transType integer
time integer
red integer
green integer
blue integer

Returns

  • None

C Prototype

void play_transition(s16 transType, s16 time, u8 red, u8 green, u8 blue);

🔼


reset_window_title

Description

Resets the window title

Lua Example

reset_window_title()

Parameters

  • None

Returns

  • None

C Prototype

void reset_window_title(void);

🔼


save_file_get_using_backup_slot

Description

Checks if the save file is using its backup slot

Lua Example

local booleanValue = save_file_get_using_backup_slot()

Parameters

  • None

Returns

  • boolean

C Prototype

bool save_file_get_using_backup_slot(void);

🔼


save_file_set_using_backup_slot

Description

Sets if the save file should use its backup slot

Lua Example

save_file_set_using_backup_slot(usingBackupSlot)

Parameters

Field Type
usingBackupSlot boolean

Returns

  • None

C Prototype

void save_file_set_using_backup_slot(bool usingBackupSlot);

🔼


set_environment_region

Description

Sets an environment region (gas/water boxes) height value

Lua Example

set_environment_region(index, value)

Parameters

Field Type
index integer
value integer

Returns

  • None

C Prototype

void set_environment_region(u8 index, s32 value);

🔼


set_got_file_coin_hi_score

Description

Sets if the save file's coin "HI SCORE" was obtained with the last star or key collection

Lua Example

set_got_file_coin_hi_score(value)

Parameters

Field Type
value boolean

Returns

  • None

C Prototype

void set_got_file_coin_hi_score(bool value);

🔼


set_last_completed_course_num

Description

Sets the last course a star or key was collected in

Lua Example

set_last_completed_course_num(courseNum)

Parameters

Field Type
courseNum integer

Returns

  • None

C Prototype

void set_last_completed_course_num(u8 courseNum);

🔼


set_last_completed_star_num

Description

Sets the last collected star's number (1-7)

Lua Example

set_last_completed_star_num(starNum)

Parameters

Field Type
starNum integer

Returns

  • None

C Prototype

void set_last_completed_star_num(u8 starNum);

🔼


set_last_star_or_key

Description

Sets if the last objective collected was a star (0) or a key (1)

Lua Example

set_last_star_or_key(value)

Parameters

Field Type
value integer

Returns

  • None

C Prototype

void set_last_star_or_key(u8 value);

🔼


set_override_envfx

Description

Sets the override environment effect (e.g. snow)

Lua Example

set_override_envfx(envfx)

Parameters

Field Type
envfx integer

Returns

  • None

C Prototype

void set_override_envfx(s32 envfx);

🔼


set_save_file_modified

Description

Sets if the save file has been modified without saving

Lua Example

set_save_file_modified(value)

Parameters

Field Type
value boolean

Returns

  • None

C Prototype

void set_save_file_modified(bool value);

🔼


set_ttc_speed_setting

Description

Sets TTC's speed setting (TTC_SPEED_*)

Lua Example

set_ttc_speed_setting(speed)

Parameters

Field Type
speed integer

Returns

  • None

C Prototype

void set_ttc_speed_setting(s16 speed);

🔼


set_volume_env

Description

Sets the volume level of environment sounds effects

Lua Example

set_volume_env(volume)

Parameters

Field Type
volume number

Returns

  • None

C Prototype

void set_volume_env(f32 volume);

🔼


set_volume_level

Description

Sets the volume level of music

Lua Example

set_volume_level(volume)

Parameters

Field Type
volume number

Returns

  • None

C Prototype

void set_volume_level(f32 volume);

🔼


set_volume_master

Description

Sets the master volume level

Lua Example

set_volume_master(volume)

Parameters

Field Type
volume number

Returns

  • None

C Prototype

void set_volume_master(f32 volume);

🔼


set_volume_sfx

Description

Sets the volume level of sound effects

Lua Example

set_volume_sfx(volume)

Parameters

Field Type
volume number

Returns

  • None

C Prototype

void set_volume_sfx(f32 volume);

🔼


set_water_level

Description

Sets the water level in an area

Lua Example

set_water_level(index, height, sync)

Parameters

Field Type
index integer
height integer
sync boolean

Returns

  • None

C Prototype

void set_water_level(u8 index, s16 height, bool sync);

🔼


set_window_title

Description

Sets the window title to a custom title

Lua Example

set_window_title(title)

Parameters

Field Type
title string

Returns

  • None

C Prototype

void set_window_title(const char* title);

🔼



functions from smlua_model_utils.h


smlua_model_util_get_id

Description

Gets the extended model ID for the name of a GeoLayout

Lua Example

local enumValue = smlua_model_util_get_id(name)

Parameters

Field Type
name string

Returns

enum ModelExtendedId

C Prototype

enum ModelExtendedId smlua_model_util_get_id(const char* name);

🔼



functions from smlua_obj_utils.h


get_temp_object_hitbox

Description

Returns a temporary object hitbox pointer

Lua Example

local ObjectHitboxValue = get_temp_object_hitbox()

Parameters

  • None

Returns

ObjectHitbox

C Prototype

struct ObjectHitbox* get_temp_object_hitbox(void);

🔼


get_trajectory

Description

Gets a trajectory by name

Lua Example

local PointerValue = get_trajectory(name)

Parameters

Field Type
name string

Returns

  • Pointer <Trajectory>

C Prototype

Trajectory* get_trajectory(const char* name);

🔼


obj_check_hitbox_overlap

Description

Checks if o1's hitbox is colliding with o2's hitbox

Lua Example

local booleanValue = obj_check_hitbox_overlap(o1, o2)

Parameters

Field Type
o1 Object
o2 Object

Returns

  • boolean

C Prototype

bool obj_check_hitbox_overlap(struct Object *o1, struct Object *o2);

🔼


obj_check_overlap_with_hitbox_params

Description

Checks if o's hitbox is colliding with the parameters of a hitbox

Lua Example

local booleanValue = obj_check_overlap_with_hitbox_params(o, x, y, z, h, r, d)

Parameters

Field Type
o Object
x number
y number
z number
h number
r number
d number

Returns

  • boolean

C Prototype

bool obj_check_overlap_with_hitbox_params(struct Object *o, f32 x, f32 y, f32 z, f32 h, f32 r, f32 d);

🔼


obj_count_objects_with_behavior_id

Description

Counts every object with behaviorId

Lua Example

local integerValue = obj_count_objects_with_behavior_id(behaviorId)

Parameters

Field Type
behaviorId enum BehaviorId

Returns

  • integer

C Prototype

s32 obj_count_objects_with_behavior_id(enum BehaviorId behaviorId);

🔼


obj_get_collided_object

Description

Gets the corresponding collided object to an index from o

Lua Example

local ObjectValue = obj_get_collided_object(o, index)

Parameters

Field Type
o Object
index integer

Returns

Object

C Prototype

struct Object *obj_get_collided_object(struct Object *o, s16 index);

🔼


obj_get_field_f32

Description

Sets the float value from the field corresponding to fieldIndex

Lua Example

local numberValue = obj_get_field_f32(o, fieldIndex)

Parameters

Field Type
o Object
fieldIndex integer

Returns

  • number

C Prototype

f32 obj_get_field_f32(struct Object *o, s32 fieldIndex);

🔼


obj_get_field_s16

Description

Gets the signed 32-bit integer value from the sub field corresponding to fieldSubIndex from the field corresponding to fieldIndex

Lua Example

local integerValue = obj_get_field_s16(o, fieldIndex, fieldSubIndex)

Parameters

Field Type
o Object
fieldIndex integer
fieldSubIndex integer

Returns

  • integer

C Prototype

s16 obj_get_field_s16(struct Object *o, s32 fieldIndex, s32 fieldSubIndex);

🔼


obj_get_field_s32

Description

Gets the signed 32-bit integer value from the field corresponding to fieldIndex

Lua Example

local integerValue = obj_get_field_s32(o, fieldIndex)

Parameters

Field Type
o Object
fieldIndex integer

Returns

  • integer

C Prototype

s32 obj_get_field_s32(struct Object *o, s32 fieldIndex);

🔼


obj_get_field_u32

Description

Gets the unsigned 32-bit integer value from the field corresponding to fieldIndex

Lua Example

local integerValue = obj_get_field_u32(o, fieldIndex)

Parameters

Field Type
o Object
fieldIndex integer

Returns

  • integer

C Prototype

u32 obj_get_field_u32(struct Object *o, s32 fieldIndex);

🔼


obj_get_first

Description

Gets the first object in an object list

Lua Example

local ObjectValue = obj_get_first(objList)

Parameters

Field Type
objList enum ObjectList

Returns

Object

C Prototype

struct Object *obj_get_first(enum ObjectList objList);

🔼


obj_get_first_with_behavior_id

Description

Gets the first object loaded with behaviorId

Lua Example

local ObjectValue = obj_get_first_with_behavior_id(behaviorId)

Parameters

Field Type
behaviorId enum BehaviorId

Returns

Object

C Prototype

struct Object *obj_get_first_with_behavior_id(enum BehaviorId behaviorId);

🔼


obj_get_first_with_behavior_id_and_field_f32

Description

Gets the first object loaded with behaviorId and object float field (look in object_fields.h to get the index of a field)

Lua Example

local ObjectValue = obj_get_first_with_behavior_id_and_field_f32(behaviorId, fieldIndex, value)

Parameters

Field Type
behaviorId enum BehaviorId
fieldIndex integer
value number

Returns

Object

C Prototype

struct Object *obj_get_first_with_behavior_id_and_field_f32(enum BehaviorId behaviorId, s32 fieldIndex, f32 value);

🔼


obj_get_first_with_behavior_id_and_field_s32

Description

Gets the first object loaded with behaviorId and object signed 32-bit integer field (look in object_fields.h to get the index of a field)

Lua Example

local ObjectValue = obj_get_first_with_behavior_id_and_field_s32(behaviorId, fieldIndex, value)

Parameters

Field Type
behaviorId enum BehaviorId
fieldIndex integer
value integer

Returns

Object

C Prototype

struct Object *obj_get_first_with_behavior_id_and_field_s32(enum BehaviorId behaviorId, s32 fieldIndex, s32 value);

🔼


obj_get_nearest_object_with_behavior_id

Description

Gets the nearest object with behaviorId to o

Lua Example

local ObjectValue = obj_get_nearest_object_with_behavior_id(o, behaviorId)

Parameters

Field Type
o Object
behaviorId enum BehaviorId

Returns

Object

C Prototype

struct Object *obj_get_nearest_object_with_behavior_id(struct Object *o, enum BehaviorId behaviorId);

🔼


obj_get_next

Description

Gets the next object in an object list

Lua Example

local ObjectValue = obj_get_next(o)

Parameters

Field Type
o Object

Returns

Object

C Prototype

struct Object *obj_get_next(struct Object *o);

🔼


obj_get_next_with_same_behavior_id

Description

Gets the next object loaded with the same behavior ID

Lua Example

local ObjectValue = obj_get_next_with_same_behavior_id(o)

Parameters

Field Type
o Object

Returns

Object

C Prototype

struct Object *obj_get_next_with_same_behavior_id(struct Object *o);

🔼


obj_get_next_with_same_behavior_id_and_field_f32

Description

Gets the next object loaded with the same behavior ID and object float field (look in object_fields.h to get the index of a field)

Lua Example

local ObjectValue = obj_get_next_with_same_behavior_id_and_field_f32(o, fieldIndex, value)

Parameters

Field Type
o Object
fieldIndex integer
value number

Returns

Object

C Prototype

struct Object *obj_get_next_with_same_behavior_id_and_field_f32(struct Object *o, s32 fieldIndex, f32 value);

🔼


obj_get_next_with_same_behavior_id_and_field_s32

Description

Gets the next object loaded with the same behavior ID and object signed 32-bit integer field (look in object_fields.h to get the index of a field)

Lua Example

local ObjectValue = obj_get_next_with_same_behavior_id_and_field_s32(o, fieldIndex, value)

Parameters

Field Type
o Object
fieldIndex integer
value integer

Returns

Object

C Prototype

struct Object *obj_get_next_with_same_behavior_id_and_field_s32(struct Object *o, s32 fieldIndex, s32 value);

🔼


obj_get_temp_spawn_particles_info

Description

Returns a temporary particle spawn info pointer with its model loaded in from modelId

Lua Example

local SpawnParticlesInfoValue = obj_get_temp_spawn_particles_info(modelId)

Parameters

Field Type
modelId enum ModelExtendedId

Returns

SpawnParticlesInfo

C Prototype

struct SpawnParticlesInfo* obj_get_temp_spawn_particles_info(enum ModelExtendedId modelId);

🔼


obj_has_behavior_id

Description

Checks if an object has behaviorId

Lua Example

local integerValue = obj_has_behavior_id(o, behaviorId)

Parameters

Field Type
o Object
behaviorId enum BehaviorId

Returns

  • integer

C Prototype

s32 obj_has_behavior_id(struct Object *o, enum BehaviorId behaviorId);

🔼


obj_has_model_extended

Description

Checks if an object's model is equal to modelId

Lua Example

local integerValue = obj_has_model_extended(o, modelId)

Parameters

Field Type
o Object
modelId enum ModelExtendedId

Returns

  • integer

C Prototype

s32 obj_has_model_extended(struct Object *o, enum ModelExtendedId modelId);

🔼


obj_is_attackable

Description

Checks if o is attackable

Lua Example

local booleanValue = obj_is_attackable(o)

Parameters

Field Type
o Object

Returns

  • boolean

C Prototype

bool obj_is_attackable(struct Object *o);

🔼


obj_is_breakable_object

Description

Checks if o is breakable

Lua Example

local booleanValue = obj_is_breakable_object(o)

Parameters

Field Type
o Object

Returns

  • boolean

C Prototype

bool obj_is_breakable_object(struct Object *o);

🔼


obj_is_bully

Description

Checks if o is a Bully

Lua Example

local booleanValue = obj_is_bully(o)

Parameters

Field Type
o Object

Returns

  • boolean

C Prototype

bool obj_is_bully(struct Object *o);

🔼


obj_is_coin

Description

Checks if o is a coin

Lua Example

local booleanValue = obj_is_coin(o)

Parameters

Field Type
o Object

Returns

  • boolean

C Prototype

bool obj_is_coin(struct Object *o);

🔼


obj_is_exclamation_box

Description

Checks if o is an exclamation box

Lua Example

local booleanValue = obj_is_exclamation_box(o)

Parameters

Field Type
o Object

Returns

  • boolean

C Prototype

bool obj_is_exclamation_box(struct Object *o);

🔼


obj_is_grabbable

Description

Checks if o is grabbable

Lua Example

local booleanValue = obj_is_grabbable(o)

Parameters

Field Type
o Object

Returns

  • boolean

C Prototype

bool obj_is_grabbable(struct Object *o);

🔼


obj_is_mushroom_1up

Description

Checks if o is a 1-Up Mushroom

Lua Example

local booleanValue = obj_is_mushroom_1up(o)

Parameters

Field Type
o Object

Returns

  • boolean

C Prototype

bool obj_is_mushroom_1up(struct Object *o);

🔼


obj_is_secret

Description

Checks if o is a secret

Lua Example

local booleanValue = obj_is_secret(o)

Parameters

Field Type
o Object

Returns

  • boolean

C Prototype

bool obj_is_secret(struct Object *o);

🔼


obj_is_valid_for_interaction

Description

Checks if o is activated, tangible, and interactible

Lua Example

local booleanValue = obj_is_valid_for_interaction(o)

Parameters

Field Type
o Object

Returns

  • boolean

C Prototype

bool obj_is_valid_for_interaction(struct Object *o);

🔼


obj_move_xyz

Description

Moves the object in the direction of dx, dy, and dz

Lua Example

obj_move_xyz(o, dx, dy, dz)

Parameters

Field Type
o Object
dx number
dy number
dz number

Returns

  • None

C Prototype

void obj_move_xyz(struct Object *o, f32 dx, f32 dy, f32 dz);

🔼


obj_set_field_f32

Description

Sets the float value from the field corresponding to fieldIndex

Lua Example

obj_set_field_f32(o, fieldIndex, value)

Parameters

Field Type
o Object
fieldIndex integer
value number

Returns

  • None

C Prototype

void obj_set_field_f32(struct Object *o, s32 fieldIndex, f32 value);

🔼


obj_set_field_s16

Description

Sets the signed 32-bit integer value from the sub field corresponding to fieldSubIndex from the field corresponding to fieldIndex

Lua Example

obj_set_field_s16(o, fieldIndex, fieldSubIndex, value)

Parameters

Field Type
o Object
fieldIndex integer
fieldSubIndex integer
value integer

Returns

  • None

C Prototype

void obj_set_field_s16(struct Object *o, s32 fieldIndex, s32 fieldSubIndex, s16 value);

🔼


obj_set_field_s32

Description

Sets the signed 32-bit integer value from the field corresponding to fieldIndex

Lua Example

obj_set_field_s32(o, fieldIndex, value)

Parameters

Field Type
o Object
fieldIndex integer
value integer

Returns

  • None

C Prototype

void obj_set_field_s32(struct Object *o, s32 fieldIndex, s32 value);

🔼


obj_set_field_u32

Description

Sets the unsigned 32-bit integer value from the field corresponding to fieldIndex

Lua Example

obj_set_field_u32(o, fieldIndex, value)

Parameters

Field Type
o Object
fieldIndex integer
value integer

Returns

  • None

C Prototype

void obj_set_field_u32(struct Object *o, s32 fieldIndex, u32 value);

🔼


obj_set_model_extended

Description

Sets an object's model to modelId

Lua Example

obj_set_model_extended(o, modelId)

Parameters

Field Type
o Object
modelId enum ModelExtendedId

Returns

  • None

C Prototype

void obj_set_model_extended(struct Object *o, enum ModelExtendedId modelId);

🔼


obj_set_vel

Description

Sets an object's velocity to vx, vy, and vz

Lua Example

obj_set_vel(o, vx, vy, vz)

Parameters

Field Type
o Object
vx number
vy number
vz number

Returns

  • None

C Prototype

void obj_set_vel(struct Object *o, f32 vx, f32 vy, f32 vz);

🔼


set_whirlpools

Description

Sets the parameters of one of the two whirlpools (0-indexed) in an area

Lua Example

set_whirlpools(x, y, z, strength, area, index)

Parameters

Field Type
x number
y number
z number
strength integer
area integer
index integer

Returns

  • None

C Prototype

void set_whirlpools(f32 x, f32 y, f32 z, s16 strength, s16 area, s32 index);

🔼


spawn_non_sync_object

Description

Spawns a synchronized object in at x, y, and z as a child object of the local Mario with his rotation. You can change the fields of the object in objSetupFunction

Lua Example

local ObjectValue = spawn_non_sync_object(behaviorId, modelId, x, y, z, objSetupFunction)

Parameters

Field Type
behaviorId enum BehaviorId
modelId enum ModelExtendedId
x number
y number
z number
objSetupFunction Lua Function ()

Returns

Object

C Prototype

struct Object* spawn_non_sync_object(enum BehaviorId behaviorId, enum ModelExtendedId modelId, f32 x, f32 y, f32 z, LuaFunction objSetupFunction);

🔼


spawn_sync_object

Description

Spawns a synchronized object in at x, y, and z as a child object of the local Mario with his rotation. You can change the fields of the object in objSetupFunction

Lua Example

local ObjectValue = spawn_sync_object(behaviorId, modelId, x, y, z, objSetupFunction)

Parameters

Field Type
behaviorId enum BehaviorId
modelId enum ModelExtendedId
x number
y number
z number
objSetupFunction Lua Function ()

Returns

Object

C Prototype

struct Object* spawn_sync_object(enum BehaviorId behaviorId, enum ModelExtendedId modelId, f32 x, f32 y, f32 z, LuaFunction objSetupFunction);

🔼



functions from smlua_text_utils.h


smlua_text_utils_act_name_get

Description

Gets the act name of actNum in courseNum

Lua Example

local stringValue = smlua_text_utils_act_name_get(courseNum, actNum)

Parameters

Field Type
courseNum integer
actNum integer

Returns

  • string

C Prototype

const char* smlua_text_utils_act_name_get(s16 courseNum, u8 actNum);

🔼


smlua_text_utils_act_name_mod_index

Description

Gets the index of the mod that replaced the act name of actNum in courseNum

Lua Example

local integerValue = smlua_text_utils_act_name_mod_index(courseNum, actNum)

Parameters

Field Type
courseNum integer
actNum integer

Returns

  • integer

C Prototype

s32 smlua_text_utils_act_name_mod_index(s16 courseNum, u8 actNum);

🔼


smlua_text_utils_act_name_replace

Description

Replaces the act name of actNum in courseNum with name

Lua Example

smlua_text_utils_act_name_replace(courseNum, actNum, name)

Parameters

Field Type
courseNum integer
actNum integer
name string

Returns

  • None

C Prototype

void smlua_text_utils_act_name_replace(s16 courseNum, u8 actNum, const char* name);

🔼


smlua_text_utils_act_name_reset

Description

Resets the act name of actNum in courseNum

Lua Example

smlua_text_utils_act_name_reset(courseNum, actNum)

Parameters

Field Type
courseNum integer
actNum integer

Returns

  • None

C Prototype

void smlua_text_utils_act_name_reset(s16 courseNum, u8 actNum);

🔼


smlua_text_utils_castle_secret_stars_replace

Description

Replaces the castle secret stars text with name

Lua Example

smlua_text_utils_castle_secret_stars_replace(name)

Parameters

Field Type
name string

Returns

  • None

C Prototype

void smlua_text_utils_castle_secret_stars_replace(const char* name);

🔼


smlua_text_utils_course_acts_replace

Description

Replaces the act names of courseNum

Lua Example

smlua_text_utils_course_acts_replace(courseNum, courseName, act1, act2, act3, act4, act5, act6)

Parameters

Field Type
courseNum integer
courseName string
act1 string
act2 string
act3 string
act4 string
act5 string
act6 string

Returns

  • None

C Prototype

void smlua_text_utils_course_acts_replace(s16 courseNum, const char* courseName, const char* act1, const char* act2, const char* act3, const char* act4, const char* act5, const char* act6);

🔼


smlua_text_utils_course_name_get

Description

Gets the name of courseNum

Lua Example

local stringValue = smlua_text_utils_course_name_get(courseNum)

Parameters

Field Type
courseNum integer

Returns

  • string

C Prototype

const char* smlua_text_utils_course_name_get(s16 courseNum);

🔼


smlua_text_utils_course_name_mod_index

Description

Gets the index of the mod that replaced the name of courseNum

Lua Example

local integerValue = smlua_text_utils_course_name_mod_index(courseNum)

Parameters

Field Type
courseNum integer

Returns

  • integer

C Prototype

s32 smlua_text_utils_course_name_mod_index(s16 courseNum);

🔼


smlua_text_utils_course_name_replace

Description

Replaces the name of courseNum with name

Lua Example

smlua_text_utils_course_name_replace(courseNum, name)

Parameters

Field Type
courseNum integer
name string

Returns

  • None

C Prototype

void smlua_text_utils_course_name_replace(s16 courseNum, const char* name);

🔼


smlua_text_utils_course_name_reset

Description

Resets the name of courseNum

Lua Example

smlua_text_utils_course_name_reset(courseNum)

Parameters

Field Type
courseNum integer

Returns

  • None

C Prototype

void smlua_text_utils_course_name_reset(s16 courseNum);

🔼


smlua_text_utils_dialog_replace

Description

Replaces dialogId with a custom one

Lua Example

smlua_text_utils_dialog_replace(dialogId, unused, linesPerBox, leftOffset, width, str)

Parameters

Field Type
dialogId enum DialogId
unused integer
linesPerBox integer
leftOffset integer
width integer
str string

Returns

  • None

C Prototype

void smlua_text_utils_dialog_replace(enum DialogId dialogId, u32 unused, s8 linesPerBox, s16 leftOffset, s16 width, const char* str);

🔼


smlua_text_utils_extra_text_replace

Description

Replace extra text (e.g. one of the castle's secret stars) with text

Lua Example

smlua_text_utils_extra_text_replace(index, text)

Parameters

Field Type
index integer
text string

Returns

  • None

C Prototype

void smlua_text_utils_extra_text_replace(s16 index, const char* text);

🔼


smlua_text_utils_get_language

Description

Gets the current language

Lua Example

local stringValue = smlua_text_utils_get_language()

Parameters

  • None

Returns

  • string

C Prototype

const char* smlua_text_utils_get_language(void);

🔼


smlua_text_utils_secret_star_replace

Description

Replaces the secret star course name of courseNum with courseName

Lua Example

smlua_text_utils_secret_star_replace(courseNum, courseName)

Parameters

Field Type
courseNum integer
courseName string

Returns

  • None

C Prototype

void smlua_text_utils_secret_star_replace(s16 courseNum, const char* courseName);

🔼



functions from sound_init.h


disable_background_sound

Description

Disables background soundbanks

Lua Example

disable_background_sound()

Parameters

  • None

Returns

  • None

C Prototype

void disable_background_sound(void);

🔼


enable_background_sound

Description

Enables background soundbanks

Lua Example

enable_background_sound()

Parameters

  • None

Returns

  • None

C Prototype

void enable_background_sound(void);

🔼


fadeout_cap_music

Description

Fades out cap music

Lua Example

fadeout_cap_music()

Parameters

  • None

Returns

  • None

C Prototype

void fadeout_cap_music(void);

🔼


fadeout_level_music

Description

Fades out the level sequence player

Lua Example

fadeout_level_music(fadeTimer)

Parameters

Field Type
fadeTimer integer

Returns

  • None

C Prototype

void fadeout_level_music(s16 fadeTimer);

🔼


fadeout_music

Description

Fades out level, shell, and cap music

Lua Example

fadeout_music(fadeOutTime)

Parameters

Field Type
fadeOutTime integer

Returns

  • None

C Prototype

void fadeout_music(s16 fadeOutTime);

🔼


lower_background_noise

Description

Lowers the volume of music by 40%

Lua Example

lower_background_noise(a)

Parameters

Field Type
a integer

Returns

  • None

C Prototype

void lower_background_noise(s32 a);

🔼


play_cap_music

Description

Plays seqArgs as cap music

Lua Example

play_cap_music(seqArgs)

Parameters

Field Type
seqArgs integer

Returns

  • None

C Prototype

void play_cap_music(u16 seqArgs);

🔼


play_cutscene_music

Description

Plays and sets the current music to seqArgs

Lua Example

play_cutscene_music(seqArgs)

Parameters

Field Type
seqArgs integer

Returns

  • None

C Prototype

void play_cutscene_music(u16 seqArgs);

🔼


play_infinite_stairs_music

Description

Plays the infinite stairs music if you're in the endless stairs room and have less than gLevelValues.infiniteStairsRequirement stars

Lua Example

play_infinite_stairs_music()

Parameters

  • None

Returns

  • None

C Prototype

void play_infinite_stairs_music(void);

🔼


play_menu_sounds

Description

Play menu sounds from SOUND_MENU_FLAG_* constants and queues rumble if SOUND_MENU_FLAG_LETGOMARIOFACE is one of the flags

Lua Example

play_menu_sounds(soundMenuFlags)

Parameters

Field Type
soundMenuFlags integer

Returns

  • None

C Prototype

void play_menu_sounds(s16 soundMenuFlags);

🔼


play_painting_eject_sound

Description

Plays the painting eject sound effect if it has not already been played

Lua Example

play_painting_eject_sound()

Parameters

  • None

Returns

  • None

C Prototype

void play_painting_eject_sound(void);

🔼


play_shell_music

Description

Plays shell music

Lua Example

play_shell_music()

Parameters

  • None

Returns

  • None

C Prototype

void play_shell_music(void);

🔼


raise_background_noise

Description

Raises music volume back up to normal levels

Lua Example

raise_background_noise(a)

Parameters

Field Type
a integer

Returns

  • None

C Prototype

void raise_background_noise(s32 a);

🔼


reset_volume

Description

Resets if music volume has been lowered

Lua Example

reset_volume()

Parameters

  • None

Returns

  • None

C Prototype

void reset_volume(void);

🔼


set_background_music

Description

Sets the background music to seqArgs on sequence player a with a fade in time of fadeTimer

Lua Example

set_background_music(a, seqArgs, fadeTimer)

Parameters

Field Type
a integer
seqArgs integer
fadeTimer integer

Returns

  • None

C Prototype

void set_background_music(u16 a, u16 seqArgs, s16 fadeTimer);

🔼


stop_cap_music

Description

Stops cap music completely

Lua Example

stop_cap_music()

Parameters

  • None

Returns

  • None

C Prototype

void stop_cap_music(void);

🔼


stop_shell_music

Description

Stops shell music completely

Lua Example

stop_shell_music()

Parameters

  • None

Returns

  • None

C Prototype

void stop_shell_music(void);

🔼



functions from spawn_sound.h


calc_dist_to_volume_range_1

Description

Unused vanilla function, calculates a volume based on distance. If distance is less than 500 then 127, if distance is greater than 1500 then 0, if distance is between 500 and 1500 then it ranges linearly from 60 to 124. What an even more strange and confusing function

Lua Example

local integerValue = calc_dist_to_volume_range_1(distance)

Parameters

Field Type
distance number

Returns

  • integer

C Prototype

s32 calc_dist_to_volume_range_1(f32 distance);

🔼


calc_dist_to_volume_range_2

Description

Unused vanilla function, calculates a volume based on distance. If distance is less than 1300 then 127, if distance is greater than 2300 then 0, if distance is between 1300 and 2300 then it ranges linearly from 60 to 127. What a strange and confusing function

Lua Example

local integerValue = calc_dist_to_volume_range_2(distance)

Parameters

Field Type
distance number

Returns

  • integer

C Prototype

s32 calc_dist_to_volume_range_2(f32 distance);

🔼


create_sound_spawner

Description

Create a sound spawner for objects that need a sound play once. (Breakable walls, King Bobomb exploding, etc)

Lua Example

create_sound_spawner(soundMagic)

Parameters

Field Type
soundMagic integer

Returns

  • None

C Prototype

void create_sound_spawner(s32 soundMagic);

🔼


cur_obj_play_sound_1

Description

Plays a sound if the current object is visible

Lua Example

cur_obj_play_sound_1(soundMagic)

Parameters

Field Type
soundMagic integer

Returns

  • None

C Prototype

void cur_obj_play_sound_1(s32 soundMagic);

🔼


cur_obj_play_sound_2

Description

Plays a sound if the current object is visible and queues rumble for specific sounds

Lua Example

cur_obj_play_sound_2(soundMagic)

Parameters

Field Type
soundMagic integer

Returns

  • None

C Prototype

void cur_obj_play_sound_2(s32 soundMagic);

🔼


exec_anim_sound_state

Lua Example

exec_anim_sound_state(soundStates, maxSoundStates)

Parameters

Field Type
soundStates SoundState
maxSoundStates integer

Returns

  • None

C Prototype

void exec_anim_sound_state(struct SoundState *soundStates, u16 maxSoundStates);

🔼



functions from surface_collision.h


find_ceil_height

Description

Finds the height of the highest ceiling above a given position (x, y, z). If no ceiling is found, returns the default height limit of gLevelValues.cellHeightLimit(20000 by default)

Lua Example

local numberValue = find_ceil_height(x, y, z)

Parameters

Field Type
x number
y number
z number

Returns

  • number

C Prototype

f32 find_ceil_height(f32 x, f32 y, f32 z);

🔼


find_floor_height

Description

Finds the height of the highest floor below a given position (x, y, z). If no floor is found, returns the default floor height of gLevelValues.floorLowerLimit(-11000 by default)

Lua Example

local numberValue = find_floor_height(x, y, z)

Parameters

Field Type
x number
y number
z number

Returns

  • number

C Prototype

f32 find_floor_height(f32 x, f32 y, f32 z);

🔼


find_poison_gas_level

Description

Finds the height of the poison gas at a given position (x, z), if the position is within a gas region. If no gas is found, returns the default height of gLevelValues.floorLowerLimit(-11000 by default)

Lua Example

local numberValue = find_poison_gas_level(x, z)

Parameters

Field Type
x number
z number

Returns

  • number

C Prototype

f32 find_poison_gas_level(f32 x, f32 z);

🔼


find_wall_collisions

Description

Detects wall collisions at a given position and adjusts the position based on the walls found. Returns the number of wall collisions detected

Lua Example

local integerValue = find_wall_collisions(colData)

Parameters

Field Type
colData WallCollisionData

Returns

  • integer

C Prototype

s32 find_wall_collisions(struct WallCollisionData *colData);

🔼


find_water_level

Description

Finds the height of water at a given position (x, z), if the position is within a water region. If no water is found, returns the default height of gLevelValues.floorLowerLimit(-11000 by default)

Lua Example

local numberValue = find_water_level(x, z)

Parameters

Field Type
x number
z number

Returns

  • number

C Prototype

f32 find_water_level(f32 x, f32 z);

🔼



functions from surface_load.h


get_area_terrain_size

Lua Example

local integerValue = get_area_terrain_size(data)

Parameters

Field Type
data Pointer <integer>

Returns

  • integer

C Prototype

u32 get_area_terrain_size(s16 *data);

🔼


load_area_terrain

Lua Example

load_area_terrain(index, data, surfaceRooms, macroObjects)

Parameters

Field Type
index integer
data Pointer <integer>
surfaceRooms Pointer <integer>
macroObjects Pointer <integer>

Returns

  • None

C Prototype

void load_area_terrain(s16 index, s16 *data, s8 *surfaceRooms, s16 *macroObjects);

🔼


load_object_collision_model

Description

Loads the object's collision data into dynamic collision. You must run this every frame in your object's behavior loop for it to have collision

Lua Example

load_object_collision_model()

Parameters

  • None

Returns

  • None

C Prototype

void load_object_collision_model(void);

🔼


obj_get_surface_from_index

Description

Gets a surface corresponding to index from the surface pool buffer

Lua Example

local SurfaceValue = obj_get_surface_from_index(o, index)

Parameters

Field Type
o Object
index integer

Returns

Surface

C Prototype

struct Surface *obj_get_surface_from_index(struct Object *o, u32 index);

🔼


surface_has_force

Lua Example

local booleanValue = surface_has_force(surfaceType)

Parameters

Field Type
surfaceType integer

Returns

  • boolean

C Prototype

bool surface_has_force(s16 surfaceType);

🔼



< prev | 1 | 2 | 3 | 4 | 5 | 6]