diff --git a/autogen/convert_functions.py b/autogen/convert_functions.py
index 3ff6b5a9e..4067f5aa0 100644
--- a/autogen/convert_functions.py
+++ b/autogen/convert_functions.py
@@ -1024,7 +1024,7 @@ def build_includes():
############################################################################
-def process_function(fname, line):
+def process_function(fname, line, description):
if fname in override_allowed_functions:
found_match = False
for pattern in override_allowed_functions[fname]:
@@ -1043,6 +1043,7 @@ def process_function(fname, line):
line = line.strip()
function['line'] = line
+ function['description'] = description # use the specific description passed in
line = line.replace('UNUSED', '')
@@ -1086,18 +1087,19 @@ def process_function(fname, line):
return function
-def process_functions(fname, file_str):
+def process_functions(fname, file_str, extracted_descriptions):
functions = []
for line in file_str.splitlines():
if reject_line(line):
global rejects
rejects += line + '\n'
continue
- fn = process_function(fname, line)
+ line = line.strip()
+ description = extracted_descriptions.get(line, "No description available.")
+ fn = process_function(fname, line, description)
if fn == None:
continue
functions.append(fn)
-
functions = sorted(functions, key=lambda d: d['identifier'])
return functions
@@ -1106,8 +1108,8 @@ def process_file(fname):
processed_file['filename'] = fname.replace('\\', '/').split('/')[-1]
processed_file['extern'] = fname.endswith('.c')
- extracted_str = extract_functions(fname)
- processed_file['functions'] = process_functions(fname, extracted_str)
+ extracted_str, extracted_descriptions = extract_functions(fname)
+ processed_file['functions'] = process_functions(fname, extracted_str, extracted_descriptions)
return processed_file
@@ -1236,6 +1238,8 @@ def doc_function(fname, function):
fid = function['identifier']
s = '\n## [%s](#%s)\n' % (fid, fid)
+ description = function.get('description', "No description available.")
+
rtype, rlink = translate_type_to_lua(function['type'])
param_str = ', '.join([x['identifier'] for x in function['params']])
@@ -1279,6 +1283,9 @@ def doc_function(fname, function):
s += '\n### C Prototype\n'
s += '`%s`\n' % function['line'].strip()
+
+ s += '\n### Description\n'
+ s += f'{description}\n'
s += '\n[:arrow_up_small:](#)\n\n
\n'
diff --git a/autogen/extract_functions.py b/autogen/extract_functions.py
index c0ea93b39..440f7972a 100644
--- a/autogen/extract_functions.py
+++ b/autogen/extract_functions.py
@@ -18,12 +18,10 @@ replacements = {
def extract_functions(filename):
with open(filename) as file:
- lines = file.readlines()
+ raw_lines = file.readlines()
# combine lines
- txt = ''
- for line in lines:
- txt += line
+ txt = ''.join(raw_lines)
# convert multi-line stuff
txt = txt.replace('\r', ' ')
@@ -96,25 +94,69 @@ def extract_functions(filename):
# cull obvious non-functions, statics, and externs
tmp = txt
txt = ''
+ functions = []
+ descriptions = {}
+
+ # use raw lines to find descriptions for identified functions
for line in tmp.splitlines():
line = line.strip()
- if '(' not in line:
+ if '(' not in line or ')' not in line or '=' in line:
continue
- if ')' not in line:
+ if line.startswith('static ') or line.startswith('extern '):
continue
- if '=' in line:
- continue
- #if '{' not in line:
- # continue
- if line.startswith('static '):
- continue
- if line.startswith('extern '):
- continue
- txt += line + '\n'
+
+ # add function
+ functions.append(line)
+
+ # look for a description above the function in raw lines
+ function_without_semicolon = line.rstrip(';')
+ for i, raw_line in enumerate(raw_lines):
+ if function_without_semicolon in raw_line:
+ # found the function in raw_lines, now look above for |descriptionEnd|
+ # We'll scan upwards until we find |descriptionEnd| and then keep going until |description| is found.
+ description_end_line_index = None
+ for j in range(i - 1, -1, -1):
+ if '|descriptionEnd|' in raw_lines[j]:
+ description_end_line_index = j
+ break
+
+ if description_end_line_index is not None:
+ # Now collect lines upwards until |description| is found, or we hit the top
+ description_lines = []
+ found_description_start = False
+ for k in range(description_end_line_index, -1, -1):
+ if '|description|' in raw_lines[k]:
+ # Found the start marker
+ # Extract text after |description| marker on this line
+ start_match = re.search(r'\|description\|(.*)$', raw_lines[k])
+ if start_match:
+ # Insert this line's text at the start
+ description_lines.insert(0, start_match.group(1).strip())
+ found_description_start = True
+ break
+ else:
+ # These lines are part of the description block
+ description_lines.insert(0, raw_lines[k].strip())
+
+ if found_description_start and description_lines:
+ # Combine all lines, remove trailing |descriptionEnd| and normalize whitespace
+ combined_description = ' '.join(description_lines)
+ combined_description = re.sub(r'\|\s*descriptionEnd\s*\|.*', '', combined_description).strip()
+ # Normalize whitespace
+ combined_description = re.sub(r'\s+', ' ', combined_description).strip()
+ descriptions[line] = combined_description
+
+ break
# normalize function ending
- txt = txt.replace(' {', ';')
- return txt
+ txt = '\n'.join(functions).replace(' {', ';')
+ return txt, descriptions
if __name__ == "__main__":
- print(extract_functions(sys.argv[1]))
\ No newline at end of file
+ functions, descriptions = extract_functions(sys.argv[1])
+ print(f"Functions:\n{functions}\n")
+ print("Descriptions:")
+ for func, desc in descriptions.items():
+ print(f"Function: {func}")
+ print(f" Description: {desc}\n")
+
diff --git a/docs/lua/functions-2.md b/docs/lua/functions-2.md
index a0b6a61e1..92e6d5d4f 100644
--- a/docs/lua/functions-2.md
+++ b/docs/lua/functions-2.md
@@ -2,7 +2,7 @@
---
-[< prev](functions.md) | [1](functions.md) | 2 | [3](functions-3.md) | [4](functions-4.md) | [5](functions-5.md) | [next >](functions-3.md)]
+[< prev](functions.md) | [1](functions.md) | 2 | [3](functions-3.md) | [4](functions-4.md) | [5](functions-5.md) | [6](functions-6.md) | [next >](functions-3.md)]
---
@@ -30,6 +30,9 @@
### C Prototype
`s32 arc_to_goal_pos(Vec3f a0, Vec3f a1, f32 yVel, f32 gravity);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -48,6 +51,9 @@
### C Prototype
`void bhv_1up_common_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -66,6 +72,9 @@
### C Prototype
`void bhv_1up_hidden_in_pole_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -84,6 +93,9 @@
### C Prototype
`void bhv_1up_hidden_in_pole_spawner_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -102,6 +114,9 @@
### C Prototype
`void bhv_1up_hidden_in_pole_trigger_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -120,6 +135,9 @@
### C Prototype
`void bhv_1up_hidden_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -138,6 +156,9 @@
### C Prototype
`void bhv_1up_hidden_trigger_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -156,6 +177,9 @@
### C Prototype
`void bhv_1up_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -174,6 +198,9 @@
### C Prototype
`void bhv_1up_jump_on_approach_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -192,6 +219,9 @@
### C Prototype
`void bhv_1up_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -210,6 +240,9 @@
### C Prototype
`void bhv_1up_running_away_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -228,6 +261,9 @@
### C Prototype
`void bhv_1up_sliding_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -246,6 +282,9 @@
### C Prototype
`void bhv_1up_trigger_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -264,6 +303,9 @@
### C Prototype
`void bhv_1up_walking_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -282,6 +324,9 @@
### C Prototype
`void bhv_act_selector_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -300,6 +345,9 @@
### C Prototype
`void bhv_act_selector_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -318,6 +366,9 @@
### C Prototype
`void bhv_act_selector_star_type_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -336,6 +387,9 @@
### C Prototype
`void bhv_activated_back_and_forth_platform_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -354,6 +408,9 @@
### C Prototype
`void bhv_activated_back_and_forth_platform_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -372,6 +429,9 @@
### C Prototype
`void bhv_alpha_boo_key_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -390,6 +450,9 @@
### C Prototype
`void bhv_ambient_sounds_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -408,6 +471,9 @@
### C Prototype
`void bhv_animated_texture_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -426,6 +492,9 @@
### C Prototype
`void bhv_animates_on_floor_switch_press_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -444,6 +513,9 @@
### C Prototype
`void bhv_animates_on_floor_switch_press_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -462,6 +534,9 @@
### C Prototype
`void bhv_arrow_lift_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -480,6 +555,9 @@
### C Prototype
`void bhv_bbh_tilting_trap_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -498,6 +576,9 @@
### C Prototype
`void bhv_beta_boo_key_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -516,6 +597,9 @@
### C Prototype
`void bhv_beta_bowser_anchor_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -534,6 +618,9 @@
### C Prototype
`void bhv_beta_chest_bottom_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -552,6 +639,9 @@
### C Prototype
`void bhv_beta_chest_bottom_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -570,6 +660,9 @@
### C Prototype
`void bhv_beta_chest_lid_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -588,6 +681,9 @@
### C Prototype
`void bhv_beta_fish_splash_spawner_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -606,6 +702,9 @@
### C Prototype
`void bhv_beta_holdable_object_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -624,6 +723,9 @@
### C Prototype
`void bhv_beta_holdable_object_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -642,6 +744,9 @@
### C Prototype
`void bhv_beta_moving_flames_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -660,6 +765,9 @@
### C Prototype
`void bhv_beta_moving_flames_spawn_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -678,6 +786,9 @@
### C Prototype
`void bhv_beta_trampoline_spring_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -696,6 +807,9 @@
### C Prototype
`void bhv_beta_trampoline_top_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -714,6 +828,9 @@
### C Prototype
`void bhv_big_boo_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -732,6 +849,9 @@
### C Prototype
`void bhv_big_boulder_generator_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -750,6 +870,9 @@
### C Prototype
`void bhv_big_boulder_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -768,6 +891,9 @@
### C Prototype
`void bhv_big_boulder_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -786,6 +912,9 @@
### C Prototype
`void bhv_big_bully_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -804,6 +933,9 @@
### C Prototype
`void bhv_big_bully_with_minions_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -822,6 +954,9 @@
### C Prototype
`void bhv_big_bully_with_minions_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -840,6 +975,9 @@
### C Prototype
`void bhv_bird_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -858,6 +996,9 @@
### C Prototype
`void bhv_birds_sound_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -876,6 +1017,9 @@
### C Prototype
`void bhv_bitfs_sinking_cage_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -894,6 +1038,9 @@
### C Prototype
`void bhv_bitfs_sinking_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -912,6 +1059,9 @@
### C Prototype
`void bhv_black_smoke_bowser_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -930,6 +1080,9 @@
### C Prototype
`void bhv_black_smoke_mario_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -948,6 +1101,9 @@
### C Prototype
`void bhv_black_smoke_upward_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -966,6 +1122,9 @@
### C Prototype
`void bhv_blue_bowser_flame_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -984,6 +1143,9 @@
### C Prototype
`void bhv_blue_bowser_flame_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1002,6 +1164,9 @@
### C Prototype
`void bhv_blue_coin_jumping_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1020,6 +1185,9 @@
### C Prototype
`void bhv_blue_coin_number_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1038,6 +1206,9 @@
### C Prototype
`void bhv_blue_coin_sliding_jumping_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1056,6 +1227,9 @@
### C Prototype
`void bhv_blue_coin_sliding_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1074,6 +1248,9 @@
### C Prototype
`void bhv_blue_coin_switch_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1092,6 +1269,9 @@
### C Prototype
`void bhv_blue_coin_switch_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1110,6 +1290,9 @@
### C Prototype
`void bhv_blue_fish_movement_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1128,6 +1311,9 @@
### C Prototype
`void bhv_blue_flames_group_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1146,6 +1332,9 @@
### C Prototype
`void bhv_bob_pit_bowling_ball_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1164,6 +1353,9 @@
### C Prototype
`void bhv_bob_pit_bowling_ball_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1182,6 +1374,9 @@
### C Prototype
`void bhv_bobomb_anchor_mario_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1200,6 +1395,9 @@
### C Prototype
`void bhv_bobomb_buddy_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1218,6 +1416,9 @@
### C Prototype
`void bhv_bobomb_buddy_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1236,6 +1437,9 @@
### C Prototype
`void bhv_bobomb_bully_death_smoke_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1254,6 +1458,9 @@
### C Prototype
`void bhv_bobomb_explosion_bubble_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1272,6 +1479,9 @@
### C Prototype
`void bhv_bobomb_explosion_bubble_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1290,6 +1500,9 @@
### C Prototype
`void bhv_bobomb_fuse_smoke_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1308,6 +1521,9 @@
### C Prototype
`void bhv_bobomb_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1326,6 +1542,9 @@
### C Prototype
`void bhv_bobomb_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1344,6 +1563,9 @@
### C Prototype
`void bhv_boo_boss_spawned_bridge_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1362,6 +1584,9 @@
### C Prototype
`void bhv_boo_cage_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1380,6 +1605,9 @@
### C Prototype
`void bhv_boo_cage_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1398,6 +1626,9 @@
### C Prototype
`void bhv_boo_in_castle_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1416,6 +1647,9 @@
### C Prototype
`void bhv_boo_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1434,6 +1668,9 @@
### C Prototype
`void bhv_boo_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1452,6 +1689,9 @@
### C Prototype
`void bhv_boo_with_cage_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1470,6 +1710,9 @@
### C Prototype
`void bhv_boo_with_cage_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1488,6 +1731,9 @@
### C Prototype
`void bhv_book_switch_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1506,6 +1752,9 @@
### C Prototype
`void bhv_bookend_spawn_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1524,6 +1773,9 @@
### C Prototype
`void bhv_bouncing_fireball_flame_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1542,6 +1794,9 @@
### C Prototype
`void bhv_bouncing_fireball_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1560,6 +1815,9 @@
### C Prototype
`void bhv_bowling_ball_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1578,6 +1836,9 @@
### C Prototype
`void bhv_bowling_ball_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1596,6 +1857,9 @@
### C Prototype
`void bhv_bowser_body_anchor_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1614,6 +1878,9 @@
### C Prototype
`void bhv_bowser_body_anchor_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1632,6 +1899,9 @@
### C Prototype
`void bhv_bowser_bomb_explosion_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1650,6 +1920,9 @@
### C Prototype
`void bhv_bowser_bomb_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1668,6 +1941,9 @@
### C Prototype
`void bhv_bowser_bomb_smoke_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1686,6 +1962,9 @@
### C Prototype
`void bhv_bowser_course_red_coin_star_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1704,6 +1983,9 @@
### C Prototype
`void bhv_bowser_flame_spawn_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1722,6 +2004,9 @@
### C Prototype
`void bhv_bowser_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1740,6 +2025,9 @@
### C Prototype
`void bhv_bowser_key_course_exit_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1758,6 +2046,9 @@
### C Prototype
`void bhv_bowser_key_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1776,6 +2067,9 @@
### C Prototype
`void bhv_bowser_key_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1794,6 +2088,9 @@
### C Prototype
`void bhv_bowser_key_unlock_door_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1812,6 +2109,9 @@
### C Prototype
`void bhv_bowser_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1830,6 +2130,9 @@
### C Prototype
`void bhv_bowser_shock_wave_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1848,6 +2151,9 @@
### C Prototype
`void bhv_bowser_tail_anchor_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1866,6 +2172,9 @@
### C Prototype
`void bhv_bowser_tail_anchor_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1884,6 +2193,9 @@
### C Prototype
`void bhv_bowsers_sub_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1902,6 +2214,9 @@
### C Prototype
`void bhv_breakable_box_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1920,6 +2235,9 @@
### C Prototype
`void bhv_breakable_box_small_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1938,6 +2256,9 @@
### C Prototype
`void bhv_breakable_box_small_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1956,6 +2277,9 @@
### C Prototype
`void bhv_bub_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1974,6 +2298,9 @@
### C Prototype
`void bhv_bub_spawner_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1992,6 +2319,9 @@
### C Prototype
`void bhv_bubba_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2010,6 +2340,9 @@
### C Prototype
`void bhv_bubble_cannon_barrel_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2028,6 +2361,9 @@
### C Prototype
`void bhv_bubble_maybe_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2046,6 +2382,9 @@
### C Prototype
`void bhv_bubble_player_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2064,6 +2403,9 @@
### C Prototype
`void bhv_bubble_splash_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2082,6 +2424,9 @@
### C Prototype
`void bhv_bubble_wave_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2100,6 +2445,9 @@
### C Prototype
`void bhv_bullet_bill_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2118,6 +2466,9 @@
### C Prototype
`void bhv_bullet_bill_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2136,6 +2487,9 @@
### C Prototype
`void bhv_bully_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2154,6 +2508,9 @@
### C Prototype
`void bhv_butterfly_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2172,6 +2529,9 @@
### C Prototype
`void bhv_butterfly_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2190,6 +2550,9 @@
### C Prototype
`void bhv_camera_lakitu_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2208,6 +2571,9 @@
### C Prototype
`void bhv_camera_lakitu_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2226,6 +2592,9 @@
### C Prototype
`void bhv_cannon_barrel_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2244,6 +2613,9 @@
### C Prototype
`void bhv_cannon_base_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2262,6 +2634,9 @@
### C Prototype
`void bhv_cannon_base_unused_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2280,6 +2655,9 @@
### C Prototype
`void bhv_cannon_closed_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2298,6 +2676,9 @@
### C Prototype
`void bhv_cannon_closed_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2316,6 +2697,9 @@
### C Prototype
`void bhv_cap_switch_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2334,6 +2718,9 @@
### C Prototype
`void bhv_castle_cannon_grate_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2352,6 +2739,9 @@
### C Prototype
`void bhv_castle_flag_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2370,6 +2760,9 @@
### C Prototype
`void bhv_castle_floor_trap_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2388,6 +2781,9 @@
### C Prototype
`void bhv_castle_floor_trap_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2406,6 +2802,9 @@
### C Prototype
`void bhv_ccm_touched_star_spawn_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2424,6 +2823,9 @@
### C Prototype
`void bhv_celebration_star_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2442,6 +2844,9 @@
### C Prototype
`void bhv_celebration_star_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2460,6 +2865,9 @@
### C Prototype
`void bhv_celebration_star_sparkle_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2478,6 +2886,9 @@
### C Prototype
`void bhv_chain_chomp_chain_part_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2496,6 +2907,9 @@
### C Prototype
`void bhv_chain_chomp_gate_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2514,6 +2928,9 @@
### C Prototype
`void bhv_chain_chomp_gate_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2532,6 +2949,9 @@
### C Prototype
`void bhv_chain_chomp_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2550,6 +2970,9 @@
### C Prototype
`void bhv_checkerboard_elevator_group_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2568,6 +2991,9 @@
### C Prototype
`void bhv_checkerboard_elevator_group_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2586,6 +3012,9 @@
### C Prototype
`void bhv_checkerboard_platform_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2604,6 +3033,9 @@
### C Prototype
`void bhv_checkerboard_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2622,6 +3054,9 @@
### C Prototype
`void bhv_chuckya_anchor_mario_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2640,6 +3075,9 @@
### C Prototype
`void bhv_chuckya_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2658,6 +3096,9 @@
### C Prototype
`void bhv_circling_amp_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2676,6 +3117,9 @@
### C Prototype
`void bhv_circling_amp_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2694,6 +3138,9 @@
### C Prototype
`void bhv_clam_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2712,6 +3159,9 @@
### C Prototype
`void bhv_cloud_part_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2730,6 +3180,9 @@
### C Prototype
`void bhv_cloud_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2748,6 +3201,9 @@
### C Prototype
`void bhv_coffin_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2766,6 +3222,9 @@
### C Prototype
`void bhv_coffin_spawner_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2784,6 +3243,9 @@
### C Prototype
`void bhv_coin_formation_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2802,6 +3264,9 @@
### C Prototype
`void bhv_coin_formation_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2820,6 +3285,9 @@
### C Prototype
`void bhv_coin_formation_spawn_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2838,6 +3306,9 @@
### C Prototype
`void bhv_coin_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2856,6 +3327,9 @@
### C Prototype
`void bhv_coin_inside_boo_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2874,6 +3348,9 @@
### C Prototype
`void bhv_coin_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2892,6 +3369,9 @@
### C Prototype
`void bhv_coin_sparkles_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2910,6 +3390,9 @@
### C Prototype
`void bhv_collect_star_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2928,6 +3411,9 @@
### C Prototype
`void bhv_collect_star_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2946,6 +3432,9 @@
### C Prototype
`void bhv_controllable_platform_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2964,6 +3453,9 @@
### C Prototype
`void bhv_controllable_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2982,6 +3474,9 @@
### C Prototype
`void bhv_controllable_platform_sub_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3000,6 +3495,9 @@
### C Prototype
`void bhv_courtyard_boo_triplet_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3018,6 +3516,9 @@
### C Prototype
`void bhv_ddd_moving_pole_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3036,6 +3537,9 @@
### C Prototype
`void bhv_ddd_pole_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3054,6 +3558,9 @@
### C Prototype
`void bhv_ddd_pole_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3072,6 +3579,9 @@
### C Prototype
`void bhv_ddd_warp_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3090,6 +3600,9 @@
### C Prototype
`void bhv_decorative_pendulum_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3108,6 +3621,9 @@
### C Prototype
`void bhv_decorative_pendulum_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3126,6 +3642,9 @@
### C Prototype
`void bhv_donut_platform_spawner_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3144,6 +3663,9 @@
### C Prototype
`void bhv_donut_platform_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3162,6 +3684,9 @@
### C Prototype
`void bhv_door_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3180,6 +3705,9 @@
### C Prototype
`void bhv_door_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3198,6 +3726,9 @@
### C Prototype
`void bhv_dorrie_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3216,6 +3747,9 @@
### C Prototype
`void bhv_elevator_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3234,6 +3768,9 @@
### C Prototype
`void bhv_elevator_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3252,6 +3789,9 @@
### C Prototype
`void bhv_end_birds_1_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3270,6 +3810,9 @@
### C Prototype
`void bhv_end_birds_2_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3288,6 +3831,9 @@
### C Prototype
`void bhv_enemy_lakitu_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3306,6 +3852,9 @@
### C Prototype
`void bhv_exclamation_box_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3324,6 +3873,9 @@
### C Prototype
`void bhv_exclamation_box_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3342,6 +3894,9 @@
### C Prototype
`void bhv_explosion_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3360,6 +3915,9 @@
### C Prototype
`void bhv_explosion_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3378,6 +3936,9 @@
### C Prototype
`void bhv_eyerok_boss_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3396,6 +3957,9 @@
### C Prototype
`void bhv_eyerok_boss_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3414,6 +3978,9 @@
### C Prototype
`void bhv_eyerok_hand_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3432,6 +3999,9 @@
### C Prototype
`void bhv_fading_warp_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3450,6 +4020,9 @@
### C Prototype
`void bhv_falling_bowser_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3468,6 +4041,9 @@
### C Prototype
`void bhv_falling_pillar_hitbox_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3486,6 +4062,9 @@
### C Prototype
`void bhv_falling_pillar_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3504,6 +4083,9 @@
### C Prototype
`void bhv_falling_pillar_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3522,6 +4104,9 @@
### C Prototype
`void bhv_ferris_wheel_axle_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3540,6 +4125,9 @@
### C Prototype
`void bhv_ferris_wheel_platform_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3558,6 +4146,9 @@
### C Prototype
`void bhv_ferris_wheel_platform_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3576,6 +4167,9 @@
### C Prototype
`void bhv_fire_piranha_plant_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3594,6 +4188,9 @@
### C Prototype
`void bhv_fire_piranha_plant_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3612,6 +4209,9 @@
### C Prototype
`void bhv_fire_spitter_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3630,6 +4230,9 @@
### C Prototype
`void bhv_fish_group_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3648,6 +4251,9 @@
### C Prototype
`void bhv_fish_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3666,6 +4272,9 @@
### C Prototype
`void bhv_fish_spawner_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3684,6 +4293,9 @@
### C Prototype
`void bhv_flame_bouncing_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3702,6 +4314,9 @@
### C Prototype
`void bhv_flame_bouncing_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3720,6 +4335,9 @@
### C Prototype
`void bhv_flame_bowser_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3738,6 +4356,9 @@
### C Prototype
`void bhv_flame_bowser_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3756,6 +4377,9 @@
### C Prototype
`void bhv_flame_floating_landing_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3774,6 +4398,9 @@
### C Prototype
`void bhv_flame_floating_landing_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3792,6 +4419,9 @@
### C Prototype
`void bhv_flame_large_burning_out_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3810,6 +4440,9 @@
### C Prototype
`void bhv_flame_mario_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3828,6 +4461,9 @@
### C Prototype
`void bhv_flame_moving_forward_growing_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3846,6 +4482,9 @@
### C Prototype
`void bhv_flame_moving_forward_growing_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3864,6 +4503,9 @@
### C Prototype
`void bhv_flamethrower_flame_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3882,6 +4524,9 @@
### C Prototype
`void bhv_flamethrower_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3900,6 +4545,9 @@
### C Prototype
`void bhv_floating_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3918,6 +4566,9 @@
### C Prototype
`void bhv_floor_trap_in_castle_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3936,6 +4587,9 @@
### C Prototype
`void bhv_fly_guy_flame_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3954,6 +4608,9 @@
### C Prototype
`void bhv_fly_guy_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3972,6 +4629,9 @@
### C Prototype
`void bhv_flying_bookend_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3990,6 +4650,9 @@
### C Prototype
`void bhv_free_bowling_ball_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4008,6 +4671,9 @@
### C Prototype
`void bhv_free_bowling_ball_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4026,6 +4692,9 @@
### C Prototype
`void bhv_generic_bowling_ball_spawner_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4044,6 +4713,9 @@
### C Prototype
`void bhv_generic_bowling_ball_spawner_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4062,6 +4734,9 @@
### C Prototype
`void bhv_giant_pole_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4080,6 +4755,9 @@
### C Prototype
`void bhv_golden_coin_sparkles_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4098,6 +4776,9 @@
### C Prototype
`void bhv_goomba_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4116,6 +4797,9 @@
### C Prototype
`void bhv_goomba_triplet_spawner_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4134,6 +4818,9 @@
### C Prototype
`void bhv_goomba_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4152,6 +4839,9 @@
### C Prototype
`void bhv_grand_star_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4170,6 +4860,9 @@
### C Prototype
`void bhv_grand_star_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4188,6 +4881,9 @@
### C Prototype
`void bhv_grindel_thwomp_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4206,6 +4902,9 @@
### C Prototype
`void bhv_ground_sand_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4224,6 +4923,9 @@
### C Prototype
`void bhv_ground_snow_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4242,6 +4944,9 @@
### C Prototype
`void bhv_haunted_bookshelf_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4260,6 +4965,9 @@
### C Prototype
`void bhv_haunted_bookshelf_manager_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4278,6 +4986,9 @@
### C Prototype
`void bhv_haunted_chair_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4296,6 +5007,9 @@
### C Prototype
`void bhv_haunted_chair_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4314,6 +5028,9 @@
### C Prototype
`void bhv_heave_ho_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4332,6 +5049,9 @@
### C Prototype
`void bhv_heave_ho_throw_mario_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4350,6 +5070,9 @@
### C Prototype
`void bhv_hidden_blue_coin_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4368,6 +5091,9 @@
### C Prototype
`void bhv_hidden_object_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4386,6 +5112,9 @@
### C Prototype
`void bhv_hidden_red_coin_star_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4404,6 +5133,9 @@
### C Prototype
`void bhv_hidden_red_coin_star_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4422,6 +5154,9 @@
### C Prototype
`void bhv_hidden_star_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4440,6 +5175,9 @@
### C Prototype
`void bhv_hidden_star_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4458,6 +5196,9 @@
### C Prototype
`void bhv_hidden_star_trigger_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4476,6 +5217,9 @@
### C Prototype
`void bhv_homing_amp_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4494,6 +5238,9 @@
### C Prototype
`void bhv_homing_amp_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4512,6 +5259,9 @@
### C Prototype
`void bhv_hoot_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4530,6 +5280,9 @@
### C Prototype
`void bhv_hoot_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4548,6 +5301,9 @@
### C Prototype
`void bhv_horizontal_grindel_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4566,6 +5322,9 @@
### C Prototype
`void bhv_horizontal_grindel_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4584,6 +5343,9 @@
### C Prototype
`void bhv_idle_water_wave_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4602,6 +5364,9 @@
### C Prototype
`void bhv_init_changing_water_level_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4620,6 +5385,9 @@
### C Prototype
`void bhv_intro_lakitu_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4638,6 +5406,9 @@
### C Prototype
`void bhv_intro_peach_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4656,6 +5427,9 @@
### C Prototype
`void bhv_intro_scene_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4674,6 +5448,9 @@
### C Prototype
`void bhv_invisible_objects_under_bridge_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4692,6 +5469,9 @@
### C Prototype
`void bhv_invisible_objects_under_bridge_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4710,6 +5490,9 @@
### C Prototype
`void bhv_jet_stream_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4728,6 +5511,9 @@
### C Prototype
`void bhv_jet_stream_ring_spawner_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4746,6 +5532,9 @@
### C Prototype
`void bhv_jet_stream_water_ring_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4764,6 +5553,9 @@
### C Prototype
`void bhv_jet_stream_water_ring_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4782,6 +5574,9 @@
### C Prototype
`void bhv_jrb_floating_box_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4800,6 +5595,9 @@
### C Prototype
`void bhv_jrb_sliding_box_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4818,6 +5616,9 @@
### C Prototype
`void bhv_jumping_box_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4836,6 +5637,9 @@
### C Prototype
`void bhv_kickable_board_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4854,6 +5658,9 @@
### C Prototype
`void bhv_king_bobomb_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4872,6 +5679,9 @@
### C Prototype
`void bhv_klepto_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4890,6 +5700,9 @@
### C Prototype
`void bhv_klepto_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4908,6 +5721,9 @@
### C Prototype
`void bhv_koopa_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4926,6 +5742,9 @@
### C Prototype
`void bhv_koopa_race_endpoint_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4944,6 +5763,9 @@
### C Prototype
`void bhv_koopa_shell_flame_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4962,6 +5784,9 @@
### C Prototype
`void bhv_koopa_shell_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4980,6 +5805,9 @@
### C Prototype
`void bhv_koopa_shell_underwater_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4998,6 +5826,9 @@
### C Prototype
`void bhv_koopa_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5016,6 +5847,9 @@
### C Prototype
`void bhv_large_bomp_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5034,6 +5868,9 @@
### C Prototype
`void bhv_large_bomp_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5052,6 +5889,9 @@
### C Prototype
`void bhv_lll_bowser_puzzle_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5070,6 +5910,9 @@
### C Prototype
`void bhv_lll_bowser_puzzle_piece_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5088,6 +5931,9 @@
### C Prototype
`void bhv_lll_drawbridge_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5106,6 +5952,9 @@
### C Prototype
`void bhv_lll_drawbridge_spawner_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5124,6 +5973,9 @@
### C Prototype
`void bhv_lll_drawbridge_spawner_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5142,6 +5994,9 @@
### C Prototype
`void bhv_lll_floating_wood_bridge_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5160,6 +6015,9 @@
### C Prototype
`void bhv_lll_moving_octagonal_mesh_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5178,6 +6036,9 @@
### C Prototype
`void bhv_lll_rolling_log_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5196,6 +6057,9 @@
### C Prototype
`void bhv_lll_rotating_block_fire_bars_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5214,6 +6078,9 @@
### C Prototype
`void bhv_lll_rotating_hex_flame_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5232,6 +6099,9 @@
### C Prototype
`void bhv_lll_rotating_hexagonal_ring_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5250,6 +6120,9 @@
### C Prototype
`void bhv_lll_sinking_rectangular_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5268,6 +6141,9 @@
### C Prototype
`void bhv_lll_sinking_rock_block_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5286,6 +6162,9 @@
### C Prototype
`void bhv_lll_sinking_square_platforms_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5304,6 +6183,9 @@
### C Prototype
`void bhv_lll_wood_piece_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5322,6 +6204,9 @@
### C Prototype
`void bhv_mad_piano_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5340,6 +6225,9 @@
### C Prototype
`void bhv_manta_ray_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5358,6 +6246,9 @@
### C Prototype
`void bhv_manta_ray_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5376,6 +6267,9 @@
### C Prototype
`void bhv_manta_ray_water_ring_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5394,6 +6288,9 @@
### C Prototype
`void bhv_manta_ray_water_ring_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5412,6 +6309,9 @@
### C Prototype
`void bhv_menu_button_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5430,6 +6330,9 @@
### C Prototype
`void bhv_menu_button_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5448,6 +6351,9 @@
### C Prototype
`void bhv_menu_button_manager_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5466,6 +6372,9 @@
### C Prototype
`void bhv_menu_button_manager_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5484,6 +6393,9 @@
### C Prototype
`void bhv_merry_go_round_boo_manager_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5502,6 +6414,9 @@
### C Prototype
`void bhv_merry_go_round_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5520,6 +6435,9 @@
### C Prototype
`void bhv_metal_cap_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5538,6 +6456,9 @@
### C Prototype
`void bhv_metal_cap_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5556,6 +6477,9 @@
### C Prototype
`void bhv_mips_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5574,6 +6498,9 @@
### C Prototype
`void bhv_mips_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5592,6 +6519,9 @@
### C Prototype
`void bhv_moat_grills_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5610,6 +6540,9 @@
### C Prototype
`void bhv_moneybag_hidden_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5628,6 +6561,9 @@
### C Prototype
`void bhv_moneybag_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5646,6 +6582,9 @@
### C Prototype
`void bhv_moneybag_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5664,6 +6603,9 @@
### C Prototype
`void bhv_monty_mole_hole_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5682,6 +6624,9 @@
### C Prototype
`void bhv_monty_mole_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5700,6 +6645,9 @@
### C Prototype
`void bhv_monty_mole_rock_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5718,6 +6666,9 @@
### C Prototype
`void bhv_monty_mole_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5736,6 +6687,9 @@
### C Prototype
`void bhv_moving_blue_coin_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5754,6 +6708,9 @@
### C Prototype
`void bhv_moving_blue_coin_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5772,6 +6729,9 @@
### C Prototype
`void bhv_moving_yellow_coin_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5790,6 +6750,9 @@
### C Prototype
`void bhv_moving_yellow_coin_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5808,6 +6771,9 @@
### C Prototype
`void bhv_mr_blizzard_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5826,6 +6792,9 @@
### C Prototype
`void bhv_mr_blizzard_snowball(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5844,6 +6813,9 @@
### C Prototype
`void bhv_mr_blizzard_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5862,6 +6834,9 @@
### C Prototype
`void bhv_mr_i_body_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5880,6 +6855,9 @@
### C Prototype
`void bhv_mr_i_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5898,6 +6876,9 @@
### C Prototype
`void bhv_mr_i_particle_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5916,6 +6897,9 @@
### C Prototype
`void bhv_normal_cap_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5934,6 +6918,9 @@
### C Prototype
`void bhv_normal_cap_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5952,6 +6939,9 @@
### C Prototype
`void bhv_object_bubble_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5970,6 +6960,9 @@
### C Prototype
`void bhv_object_bubble_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5988,6 +6981,9 @@
### C Prototype
`void bhv_object_water_wave_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6006,6 +7002,9 @@
### C Prototype
`void bhv_object_water_wave_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6024,6 +7023,9 @@
### C Prototype
`void bhv_openable_cage_door_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6042,6 +7044,9 @@
### C Prototype
`void bhv_openable_grill_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6060,6 +7065,9 @@
### C Prototype
`void bhv_orange_number_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6078,6 +7086,9 @@
### C Prototype
`void bhv_orange_number_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6096,6 +7107,9 @@
### C Prototype
`void bhv_particle_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6114,6 +7128,9 @@
### C Prototype
`void bhv_particle_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6132,6 +7149,9 @@
### C Prototype
`void bhv_penguin_race_finish_line_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6150,6 +7170,9 @@
### C Prototype
`void bhv_penguin_race_shortcut_check_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6168,6 +7191,9 @@
### C Prototype
`void bhv_piranha_particle_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6186,6 +7212,9 @@
### C Prototype
`void bhv_piranha_plant_bubble_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6204,6 +7233,9 @@
### C Prototype
`void bhv_piranha_plant_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6222,6 +7254,9 @@
### C Prototype
`void bhv_piranha_plant_waking_bubbles_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6240,6 +7275,9 @@
### C Prototype
`void bhv_platform_normals_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6258,6 +7296,9 @@
### C Prototype
`void bhv_platform_on_track_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6276,6 +7317,9 @@
### C Prototype
`void bhv_platform_on_track_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6294,6 +7338,9 @@
### C Prototype
`void bhv_play_music_track_when_touched_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6312,6 +7359,9 @@
### C Prototype
`void bhv_pokey_body_part_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6330,6 +7380,9 @@
### C Prototype
`void bhv_pokey_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6348,6 +7401,9 @@
### C Prototype
`void bhv_pole_base_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6366,6 +7422,9 @@
### C Prototype
`void bhv_pole_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6384,6 +7443,9 @@
### C Prototype
`void bhv_pound_tiny_star_particle_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6402,6 +7464,9 @@
### C Prototype
`void bhv_pound_tiny_star_particle_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6420,6 +7485,9 @@
### C Prototype
`void bhv_pound_white_puffs_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6438,6 +7506,9 @@
### C Prototype
`void bhv_punch_tiny_triangle_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6456,6 +7527,9 @@
### C Prototype
`void bhv_punch_tiny_triangle_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6474,6 +7548,9 @@
### C Prototype
`void bhv_purple_switch_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6492,6 +7569,9 @@
### C Prototype
`void bhv_pushable_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6510,6 +7590,9 @@
### C Prototype
`void bhv_pyramid_elevator_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6528,6 +7611,9 @@
### C Prototype
`void bhv_pyramid_elevator_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6546,6 +7632,9 @@
### C Prototype
`void bhv_pyramid_elevator_trajectory_marker_ball_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6564,6 +7653,9 @@
### C Prototype
`void bhv_pyramid_pillar_touch_detector_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6582,6 +7674,9 @@
### C Prototype
`void bhv_pyramid_top_fragment_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6600,6 +7695,9 @@
### C Prototype
`void bhv_pyramid_top_fragment_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6618,6 +7716,9 @@
### C Prototype
`void bhv_pyramid_top_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6636,6 +7737,9 @@
### C Prototype
`void bhv_pyramid_top_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6654,6 +7758,9 @@
### C Prototype
`void bhv_racing_penguin_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6672,6 +7779,9 @@
### C Prototype
`void bhv_racing_penguin_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6690,6 +7800,9 @@
### C Prototype
`void bhv_recovery_heart_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6708,6 +7821,9 @@
### C Prototype
`void bhv_red_coin_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6726,6 +7842,9 @@
### C Prototype
`void bhv_red_coin_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6744,6 +7863,9 @@
### C Prototype
`void bhv_red_coin_star_marker_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6762,6 +7884,9 @@
### C Prototype
`void bhv_respawner_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6780,6 +7905,9 @@
### C Prototype
`void bhv_rolling_log_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6798,6 +7926,9 @@
### C Prototype
`void bhv_rotating_clock_arm_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6816,6 +7947,9 @@
### C Prototype
`void bhv_rotating_exclamation_box_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6834,6 +7968,9 @@
### C Prototype
`void bhv_rotating_octagonal_plat_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6852,6 +7989,9 @@
### C Prototype
`void bhv_rotating_octagonal_plat_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6870,6 +8010,9 @@
### C Prototype
`void bhv_rotating_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6888,6 +8031,9 @@
### C Prototype
`void bhv_rr_cruiser_wing_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6906,6 +8052,9 @@
### C Prototype
`void bhv_rr_cruiser_wing_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6924,6 +8073,9 @@
### C Prototype
`void bhv_rr_rotating_bridge_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6942,6 +8094,9 @@
### C Prototype
`void bhv_sand_sound_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6960,6 +8115,9 @@
### C Prototype
`void bhv_scuttlebug_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6978,6 +8136,9 @@
### C Prototype
`void bhv_scuttlebug_spawn_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6996,6 +8157,9 @@
### C Prototype
`void bhv_seaweed_bundle_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7014,6 +8178,9 @@
### C Prototype
`void bhv_seaweed_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7032,6 +8199,9 @@
### C Prototype
`void bhv_seesaw_platform_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7050,6 +8220,9 @@
### C Prototype
`void bhv_seesaw_platform_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7068,6 +8241,9 @@
### C Prototype
`void bhv_shallow_water_splash_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7086,6 +8262,9 @@
### C Prototype
`void bhv_ship_part_3_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7104,6 +8283,9 @@
### C Prototype
`void bhv_skeeter_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7122,6 +8304,9 @@
### C Prototype
`void bhv_skeeter_wave_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7140,6 +8325,9 @@
### C Prototype
`void bhv_sl_snowman_wind_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7158,6 +8346,9 @@
### C Prototype
`void bhv_sl_walking_penguin_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7176,6 +8367,9 @@
### C Prototype
`void bhv_sliding_plat_2_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7194,6 +8388,9 @@
### C Prototype
`void bhv_sliding_plat_2_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7212,6 +8409,9 @@
### C Prototype
`void bhv_sliding_snow_mound_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7230,6 +8430,9 @@
### C Prototype
`void bhv_small_bomp_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7248,6 +8451,9 @@
### C Prototype
`void bhv_small_bomp_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7266,6 +8472,9 @@
### C Prototype
`void bhv_small_bubbles_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7284,6 +8493,9 @@
### C Prototype
`void bhv_small_bully_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7302,6 +8514,9 @@
### C Prototype
`void bhv_small_penguin_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7320,6 +8535,9 @@
### C Prototype
`void bhv_small_piranha_flame_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7338,6 +8556,9 @@
### C Prototype
`void bhv_small_water_wave_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7356,6 +8577,9 @@
### C Prototype
`void bhv_snow_leaf_particle_spawn_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7374,6 +8598,9 @@
### C Prototype
`void bhv_snow_mound_spawn_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7392,6 +8619,9 @@
### C Prototype
`void bhv_snowmans_body_checkpoint_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7410,6 +8640,9 @@
### C Prototype
`void bhv_snowmans_bottom_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7428,6 +8661,9 @@
### C Prototype
`void bhv_snowmans_bottom_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7446,6 +8682,9 @@
### C Prototype
`void bhv_snowmans_head_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7464,6 +8703,9 @@
### C Prototype
`void bhv_snowmans_head_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7482,6 +8724,9 @@
### C Prototype
`void bhv_snufit_balls_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7500,6 +8745,9 @@
### C Prototype
`void bhv_snufit_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7518,6 +8766,9 @@
### C Prototype
`void bhv_sound_spawner_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7536,6 +8787,9 @@
### C Prototype
`void bhv_sparkle_spawn_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7558,6 +8812,9 @@
### C Prototype
`void bhv_spawn_star_no_level_exit(struct Object* object, u32 params, u8 networkSendEvent);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7576,6 +8833,9 @@
### C Prototype
`void bhv_spawned_star_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7594,6 +8854,9 @@
### C Prototype
`void bhv_spawned_star_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7612,6 +8875,9 @@
### C Prototype
`void bhv_spindel_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7630,6 +8896,9 @@
### C Prototype
`void bhv_spindel_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7648,6 +8917,9 @@
### C Prototype
`void bhv_spindrift_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7666,6 +8938,9 @@
### C Prototype
`void bhv_spiny_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7684,6 +8959,9 @@
### C Prototype
`void bhv_squarish_path_moving_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7702,6 +8980,9 @@
### C Prototype
`void bhv_squarish_path_parent_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7720,6 +9001,9 @@
### C Prototype
`void bhv_squarish_path_parent_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7738,6 +9022,9 @@
### C Prototype
`void bhv_squishable_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7756,6 +9043,9 @@
### C Prototype
`void bhv_ssl_moving_pyramid_wall_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7774,6 +9064,9 @@
### C Prototype
`void bhv_ssl_moving_pyramid_wall_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7792,6 +9085,9 @@
### C Prototype
`void bhv_star_door_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7810,6 +9106,9 @@
### C Prototype
`void bhv_star_door_loop_2(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7828,6 +9127,9 @@
### C Prototype
`void bhv_star_key_collection_puff_spawner_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7846,6 +9148,9 @@
### C Prototype
`void bhv_star_number_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7864,6 +9169,9 @@
### C Prototype
`void bhv_star_spawn_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7882,6 +9190,9 @@
### C Prototype
`void bhv_star_spawn_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7900,6 +9211,9 @@
### C Prototype
`void bhv_static_checkered_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7918,6 +9232,9 @@
### C Prototype
`void bhv_strong_wind_particle_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7936,6 +9253,9 @@
### C Prototype
`void bhv_sunken_ship_part_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7954,6 +9274,9 @@
### C Prototype
`void bhv_sushi_shark_collision_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7972,6 +9295,9 @@
### C Prototype
`void bhv_sushi_shark_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7990,6 +9316,9 @@
### C Prototype
`void bhv_swing_platform_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8008,6 +9337,9 @@
### C Prototype
`void bhv_swing_platform_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8026,6 +9358,9 @@
### C Prototype
`void bhv_swoop_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8044,6 +9379,9 @@
### C Prototype
`void bhv_tank_fish_group_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8062,6 +9400,9 @@
### C Prototype
`void bhv_temp_coin_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8080,6 +9421,9 @@
### C Prototype
`void bhv_thi_bowling_ball_spawner_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8098,6 +9442,9 @@
### C Prototype
`void bhv_thi_huge_island_top_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8116,6 +9463,9 @@
### C Prototype
`void bhv_thi_tiny_island_top_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8134,6 +9484,9 @@
### C Prototype
`void bhv_tilting_bowser_lava_platform_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8152,6 +9505,9 @@
### C Prototype
`void bhv_tilting_inverted_pyramid_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8170,6 +9526,9 @@
### C Prototype
`void bhv_tiny_star_particles_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8188,6 +9547,9 @@
### C Prototype
`void bhv_tower_door_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8206,6 +9568,9 @@
### C Prototype
`void bhv_tower_platform_group_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8224,6 +9589,9 @@
### C Prototype
`void bhv_tower_platform_group_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8242,6 +9610,9 @@
### C Prototype
`void bhv_tox_box_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8260,6 +9631,9 @@
### C Prototype
`void bhv_track_ball_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8278,6 +9652,9 @@
### C Prototype
`void bhv_treasure_chest_bottom_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8296,6 +9673,9 @@
### C Prototype
`void bhv_treasure_chest_bottom_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8314,6 +9694,9 @@
### C Prototype
`void bhv_treasure_chest_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8332,6 +9715,9 @@
### C Prototype
`void bhv_treasure_chest_jrb_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8350,6 +9736,9 @@
### C Prototype
`void bhv_treasure_chest_jrb_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8368,6 +9757,9 @@
### C Prototype
`void bhv_treasure_chest_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8386,6 +9778,9 @@
### C Prototype
`void bhv_treasure_chest_ship_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8404,6 +9799,9 @@
### C Prototype
`void bhv_treasure_chest_ship_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8422,6 +9820,9 @@
### C Prototype
`void bhv_treasure_chest_top_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8440,6 +9841,9 @@
### C Prototype
`void bhv_tree_snow_or_leaf_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8458,6 +9862,9 @@
### C Prototype
`void bhv_triplet_butterfly_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8476,6 +9883,9 @@
### C Prototype
`void bhv_ttc_2d_rotator_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8494,6 +9904,9 @@
### C Prototype
`void bhv_ttc_2d_rotator_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8512,6 +9925,9 @@
### C Prototype
`void bhv_ttc_cog_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8530,6 +9946,9 @@
### C Prototype
`void bhv_ttc_cog_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8548,6 +9967,9 @@
### C Prototype
`void bhv_ttc_elevator_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8566,6 +9988,9 @@
### C Prototype
`void bhv_ttc_elevator_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8584,6 +10009,9 @@
### C Prototype
`void bhv_ttc_moving_bar_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8602,6 +10030,9 @@
### C Prototype
`void bhv_ttc_moving_bar_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8620,6 +10051,9 @@
### C Prototype
`void bhv_ttc_pendulum_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8638,6 +10072,9 @@
### C Prototype
`void bhv_ttc_pendulum_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8656,6 +10093,9 @@
### C Prototype
`void bhv_ttc_pit_block_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8674,6 +10114,9 @@
### C Prototype
`void bhv_ttc_pit_block_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8692,6 +10135,9 @@
### C Prototype
`void bhv_ttc_rotating_solid_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8710,6 +10156,9 @@
### C Prototype
`void bhv_ttc_rotating_solid_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8728,6 +10177,9 @@
### C Prototype
`void bhv_ttc_spinner_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8746,6 +10198,9 @@
### C Prototype
`void bhv_ttc_treadmill_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8764,6 +10219,9 @@
### C Prototype
`void bhv_ttc_treadmill_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8782,6 +10240,9 @@
### C Prototype
`void bhv_ttm_rolling_log_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8800,6 +10261,9 @@
### C Prototype
`void bhv_tumbling_bridge_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8818,6 +10282,9 @@
### C Prototype
`void bhv_tumbling_bridge_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8836,6 +10303,9 @@
### C Prototype
`void bhv_tuxies_mother_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8854,6 +10324,9 @@
### C Prototype
`void bhv_tweester_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8872,6 +10345,9 @@
### C Prototype
`void bhv_tweester_sand_particle_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8890,6 +10366,9 @@
### C Prototype
`void bhv_ukiki_cage_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8908,6 +10387,9 @@
### C Prototype
`void bhv_ukiki_cage_star_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8926,6 +10408,9 @@
### C Prototype
`void bhv_ukiki_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8944,6 +10429,9 @@
### C Prototype
`void bhv_ukiki_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8962,6 +10450,9 @@
### C Prototype
`void bhv_unagi_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8980,6 +10471,9 @@
### C Prototype
`void bhv_unagi_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -8998,6 +10492,9 @@
### C Prototype
`void bhv_unagi_subobject_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9016,6 +10513,9 @@
### C Prototype
`void bhv_unused_particle_spawn_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9034,6 +10534,9 @@
### C Prototype
`void bhv_unused_poundable_platform(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9052,6 +10555,9 @@
### C Prototype
`void bhv_vanish_cap_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9070,6 +10576,9 @@
### C Prototype
`void bhv_volcano_flames_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9088,6 +10597,9 @@
### C Prototype
`void bhv_volcano_sound_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9106,6 +10618,9 @@
### C Prototype
`void bhv_volcano_trap_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9124,6 +10639,9 @@
### C Prototype
`void bhv_wall_tiny_star_particle_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9142,6 +10660,9 @@
### C Prototype
`void bhv_warp_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9160,6 +10681,9 @@
### C Prototype
`void bhv_water_air_bubble_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9178,6 +10702,9 @@
### C Prototype
`void bhv_water_air_bubble_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9196,6 +10723,9 @@
### C Prototype
`void bhv_water_bomb_cannon_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9214,6 +10744,9 @@
### C Prototype
`void bhv_water_bomb_shadow_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9232,6 +10765,9 @@
### C Prototype
`void bhv_water_bomb_spawner_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9250,6 +10786,9 @@
### C Prototype
`void bhv_water_bomb_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9268,6 +10807,9 @@
### C Prototype
`void bhv_water_droplet_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9286,6 +10828,9 @@
### C Prototype
`void bhv_water_droplet_splash_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9304,6 +10849,9 @@
### C Prototype
`void bhv_water_level_diamond_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9322,6 +10870,9 @@
### C Prototype
`void bhv_water_level_pillar_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9340,6 +10891,9 @@
### C Prototype
`void bhv_water_level_pillar_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9358,6 +10912,9 @@
### C Prototype
`void bhv_water_mist_2_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9376,6 +10933,9 @@
### C Prototype
`void bhv_water_mist_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9394,6 +10954,9 @@
### C Prototype
`void bhv_water_mist_spawn_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9412,6 +10975,9 @@
### C Prototype
`void bhv_water_splash_spawn_droplets(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9430,6 +10996,9 @@
### C Prototype
`void bhv_water_waves_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9448,6 +11017,9 @@
### C Prototype
`void bhv_waterfall_sound_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9466,6 +11038,9 @@
### C Prototype
`void bhv_wave_trail_shrink(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9484,6 +11059,9 @@
### C Prototype
`void bhv_wdw_express_elevator_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9502,6 +11080,9 @@
### C Prototype
`void bhv_wf_breakable_wall_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9520,6 +11101,9 @@
### C Prototype
`void bhv_wf_elevator_tower_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9538,6 +11122,9 @@
### C Prototype
`void bhv_wf_rotating_wooden_platform_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9556,6 +11143,9 @@
### C Prototype
`void bhv_wf_rotating_wooden_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9574,6 +11164,9 @@
### C Prototype
`void bhv_wf_sliding_platform_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9592,6 +11185,9 @@
### C Prototype
`void bhv_wf_sliding_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9610,6 +11206,9 @@
### C Prototype
`void bhv_wf_sliding_tower_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9628,6 +11227,9 @@
### C Prototype
`void bhv_wf_solid_tower_platform_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9646,6 +11248,9 @@
### C Prototype
`void bhv_whirlpool_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9664,6 +11269,9 @@
### C Prototype
`void bhv_whirlpool_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9682,6 +11290,9 @@
### C Prototype
`void bhv_white_puff_1_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9700,6 +11311,9 @@
### C Prototype
`void bhv_white_puff_2_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9718,6 +11332,9 @@
### C Prototype
`void bhv_white_puff_exploding_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9736,6 +11353,9 @@
### C Prototype
`void bhv_white_puff_smoke_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9754,6 +11374,9 @@
### C Prototype
`void bhv_whomp_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9772,6 +11395,9 @@
### C Prototype
`void bhv_wiggler_body_part_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9790,6 +11416,9 @@
### C Prototype
`void bhv_wiggler_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9808,6 +11437,9 @@
### C Prototype
`void bhv_wind_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9826,6 +11458,9 @@
### C Prototype
`void bhv_wing_cap_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9844,6 +11479,9 @@
### C Prototype
`void bhv_wing_vanish_cap_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9862,6 +11500,9 @@
### C Prototype
`void bhv_wooden_post_update(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9880,6 +11521,9 @@
### C Prototype
`void bhv_yellow_coin_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9898,6 +11542,9 @@
### C Prototype
`void bhv_yellow_coin_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9916,6 +11563,9 @@
### C Prototype
`void bhv_yoshi_init(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9934,6 +11584,9 @@
### C Prototype
`void bhv_yoshi_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9955,6 +11608,9 @@
### C Prototype
`s32 check_if_moving_over_floor(f32 a0, f32 a1);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9975,6 +11631,9 @@
### C Prototype
`void clear_particle_flags(u32 flags);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -9997,6 +11656,9 @@
### C Prototype
`void common_anchor_mario_behavior(f32 sp28, f32 sp2C, s32 sp30);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10021,6 +11683,9 @@
### C Prototype
`void cur_obj_spawn_strong_wind_particles(s32 windSpread, f32 scale, f32 relPosX, f32 relPosY, f32 relPosZ);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10039,6 +11704,9 @@
### C Prototype
`s32 mario_moving_fast_enough_to_make_piranha_plant_bite(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10057,6 +11725,9 @@
### C Prototype
`void obj_set_secondary_camera_focus(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10077,6 +11748,9 @@
### C Prototype
`void play_penguin_walking_sound(s32 walk);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10099,6 +11773,9 @@
### C Prototype
`struct Object* spawn_default_star(f32 x, f32 y, f32 z);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10117,6 +11794,9 @@
### C Prototype
`void spawn_mist_from_global(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10139,6 +11819,9 @@
### C Prototype
`void spawn_mist_particles_variable(s32 count, s32 offsetY, f32 size);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10161,6 +11844,9 @@
### C Prototype
`struct Object* spawn_no_exit_star(f32 x, f32 y, f32 z);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10183,6 +11869,9 @@
### C Prototype
`struct Object* spawn_red_coin_cutscene_star(f32 x, f32 y, f32 z);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10201,6 +11890,9 @@
### C Prototype
`void spawn_star_number(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10224,6 +11916,9 @@
### C Prototype
`void spawn_triangle_break_particles(s16 numTris, s16 triModel, f32 triSize, s16 triAnimState);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10245,6 +11940,9 @@
### C Prototype
`void spawn_wind_particles(s16 pitch, s16 yaw);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10268,6 +11966,9 @@
### C Prototype
`void tox_box_move(f32 forwardVel, f32 a1, s16 deltaPitch, s16 deltaRoll);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10288,6 +11989,9 @@
### C Prototype
`s32 update_angle_from_move_flags(s32 *angle);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10306,6 +12010,9 @@
### C Prototype
`void uv_update_scroll(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -10327,250 +12034,13 @@
### C Prototype
`void vec3f_copy_2(Vec3f dest, Vec3f src);`
-[:arrow_up_small:](#)
-
-
-
----
-# functions from behavior_script.h
-
-
-
-
-## [draw_distance_scalar](#draw_distance_scalar)
-
-### Lua Example
-`local numberValue = draw_distance_scalar()`
-
-### Parameters
-- None
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 draw_distance_scalar(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_update_gfx_pos_and_angle](#obj_update_gfx_pos_and_angle)
-
-### Lua Example
-`obj_update_gfx_pos_and_angle(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_update_gfx_pos_and_angle(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [position_based_random_float_position](#position_based_random_float_position)
-
-### Lua Example
-`local numberValue = position_based_random_float_position()`
-
-### Parameters
-- None
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 position_based_random_float_position(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [position_based_random_u16](#position_based_random_u16)
-
-### Lua Example
-`local integerValue = position_based_random_u16()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`u16 position_based_random_u16(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [random_float](#random_float)
-
-### Lua Example
-`local numberValue = random_float()`
-
-### Parameters
-- None
-
-### Returns
-- `number`
-
-### C Prototype
-`float random_float(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [random_sign](#random_sign)
-
-### Lua Example
-`local integerValue = random_sign()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 random_sign(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [random_u16](#random_u16)
-
-### Lua Example
-`local integerValue = random_u16()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`u16 random_u16(void);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from behavior_table.h
-
-
-
-
-## [get_behavior_from_id](#get_behavior_from_id)
-
-### Lua Example
-`local PointerValue = get_behavior_from_id(id)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| id | [enum BehaviorId](constants.md#enum-BehaviorId) |
-
-### Returns
-- `Pointer` <`BehaviorScript`>
-
-### C Prototype
-`const BehaviorScript* get_behavior_from_id(enum BehaviorId id);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_behavior_name_from_id](#get_behavior_name_from_id)
-
-### Lua Example
-`local stringValue = get_behavior_name_from_id(id)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| id | [enum BehaviorId](constants.md#enum-BehaviorId) |
-
-### Returns
-- `string`
-
-### C Prototype
-`const char* get_behavior_name_from_id(enum BehaviorId id);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_id_from_behavior](#get_id_from_behavior)
-
-### Lua Example
-`local enumValue = get_id_from_behavior(behavior)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| behavior | `Pointer` <`BehaviorScript`> |
-
-### Returns
-[enum BehaviorId](constants.md#enum-BehaviorId)
-
-### C Prototype
-`enum BehaviorId get_id_from_behavior(const BehaviorScript* behavior);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_id_from_behavior_name](#get_id_from_behavior_name)
-
-### Lua Example
-`local enumValue = get_id_from_behavior_name(name)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| name | `string` |
-
-### Returns
-[enum BehaviorId](constants.md#enum-BehaviorId)
-
-### C Prototype
-`enum BehaviorId get_id_from_behavior_name(const char* name);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_id_from_vanilla_behavior](#get_id_from_vanilla_behavior)
-
-### Lua Example
-`local enumValue = get_id_from_vanilla_behavior(behavior)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| behavior | `Pointer` <`BehaviorScript`> |
-
-### Returns
-[enum BehaviorId](constants.md#enum-BehaviorId)
-
-### C Prototype
-`enum BehaviorId get_id_from_vanilla_behavior(const BehaviorScript* behavior);`
+### Description
+No description available.
[:arrow_up_small:](#)
---
-[< prev](functions.md) | [1](functions.md) | 2 | [3](functions-3.md) | [4](functions-4.md) | [5](functions-5.md) | [next >](functions-3.md)]
+[< prev](functions.md) | [1](functions.md) | 2 | [3](functions-3.md) | [4](functions-4.md) | [5](functions-5.md) | [6](functions-6.md) | [next >](functions-3.md)]
diff --git a/docs/lua/functions-3.md b/docs/lua/functions-3.md
index 6212573b7..ed4c84fe0 100644
--- a/docs/lua/functions-3.md
+++ b/docs/lua/functions-3.md
@@ -2,9 +2,285 @@
---
-[< prev](functions-2.md) | [1](functions.md) | [2](functions-2.md) | 3 | [4](functions-4.md) | [5](functions-5.md) | [next >](functions-4.md)]
+[< prev](functions-2.md) | [1](functions.md) | [2](functions-2.md) | 3 | [4](functions-4.md) | [5](functions-5.md) | [6](functions-6.md) | [next >](functions-4.md)]
+---
+# functions from behavior_script.h
+
+
+
+
+## [draw_distance_scalar](#draw_distance_scalar)
+
+### Lua Example
+`local numberValue = draw_distance_scalar()`
+
+### Parameters
+- None
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 draw_distance_scalar(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_update_gfx_pos_and_angle](#obj_update_gfx_pos_and_angle)
+
+### Lua Example
+`obj_update_gfx_pos_and_angle(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_update_gfx_pos_and_angle(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [position_based_random_float_position](#position_based_random_float_position)
+
+### Lua Example
+`local numberValue = position_based_random_float_position()`
+
+### Parameters
+- None
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 position_based_random_float_position(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [position_based_random_u16](#position_based_random_u16)
+
+### Lua Example
+`local integerValue = position_based_random_u16()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`u16 position_based_random_u16(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [random_float](#random_float)
+
+### Lua Example
+`local numberValue = random_float()`
+
+### Parameters
+- None
+
+### Returns
+- `number`
+
+### C Prototype
+`float random_float(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [random_sign](#random_sign)
+
+### Lua Example
+`local integerValue = random_sign()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 random_sign(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [random_u16](#random_u16)
+
+### Lua Example
+`local integerValue = random_u16()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`u16 random_u16(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+---
+# functions from behavior_table.h
+
+
+
+
+## [get_behavior_from_id](#get_behavior_from_id)
+
+### Lua Example
+`local PointerValue = get_behavior_from_id(id)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| id | [enum BehaviorId](constants.md#enum-BehaviorId) |
+
+### Returns
+- `Pointer` <`BehaviorScript`>
+
+### C Prototype
+`const BehaviorScript* get_behavior_from_id(enum BehaviorId id);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_behavior_name_from_id](#get_behavior_name_from_id)
+
+### Lua Example
+`local stringValue = get_behavior_name_from_id(id)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| id | [enum BehaviorId](constants.md#enum-BehaviorId) |
+
+### Returns
+- `string`
+
+### C Prototype
+`const char* get_behavior_name_from_id(enum BehaviorId id);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_id_from_behavior](#get_id_from_behavior)
+
+### Lua Example
+`local enumValue = get_id_from_behavior(behavior)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| behavior | `Pointer` <`BehaviorScript`> |
+
+### Returns
+[enum BehaviorId](constants.md#enum-BehaviorId)
+
+### C Prototype
+`enum BehaviorId get_id_from_behavior(const BehaviorScript* behavior);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_id_from_behavior_name](#get_id_from_behavior_name)
+
+### Lua Example
+`local enumValue = get_id_from_behavior_name(name)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| name | `string` |
+
+### Returns
+[enum BehaviorId](constants.md#enum-BehaviorId)
+
+### C Prototype
+`enum BehaviorId get_id_from_behavior_name(const char* name);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_id_from_vanilla_behavior](#get_id_from_vanilla_behavior)
+
+### Lua Example
+`local enumValue = get_id_from_vanilla_behavior(behavior)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| behavior | `Pointer` <`BehaviorScript`> |
+
+### Returns
+[enum BehaviorId](constants.md#enum-BehaviorId)
+
+### C Prototype
+`enum BehaviorId get_id_from_vanilla_behavior(const BehaviorScript* behavior);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
---
# functions from camera.h
@@ -29,6 +305,9 @@
### C Prototype
`void approach_camera_height(struct Camera *c, f32 goal, f32 inc);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -51,6 +330,9 @@
### C Prototype
`f32 approach_f32_asymptotic(f32 current, f32 target, f32 multiplier);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -73,6 +355,9 @@
### C Prototype
`s32 approach_f32_asymptotic_bool(f32 *current, f32 target, f32 multiplier);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -95,6 +380,9 @@
### C Prototype
`s32 approach_s16_asymptotic(s16 current, s16 target, s16 divisor);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -117,6 +405,9 @@
### C Prototype
`s32 approach_s16_asymptotic_bool(s16 *current, s16 target, s16 divisor);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -141,6 +432,9 @@
### C Prototype
`void approach_vec3f_asymptotic(Vec3f current, Vec3f target, f32 xMul, f32 yMul, f32 zMul);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -162,6 +456,9 @@
### C Prototype
`f32 calc_abs_dist(Vec3f a, Vec3f b);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -183,6 +480,9 @@
### C Prototype
`f32 calc_hor_dist(Vec3f a, Vec3f b);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -206,6 +506,9 @@
### C Prototype
`void calculate_angles(Vec3f from, Vec3f to, s16 *pitch, s16 *yaw);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -227,6 +530,9 @@
### C Prototype
`s16 calculate_pitch(Vec3f from, Vec3f to);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -248,6 +554,9 @@
### C Prototype
`s16 calculate_yaw(Vec3f from, Vec3f to);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -268,6 +577,9 @@
### C Prototype
`s32 cam_select_alt_mode(s32 angle);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -290,6 +602,9 @@
### C Prototype
`f32 camera_approach_f32_symmetric(f32 value, f32 target, f32 increment);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -312,6 +627,9 @@
### C Prototype
`s32 camera_approach_f32_symmetric_bool(f32 *current, f32 target, f32 increment);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -334,6 +652,9 @@
### C Prototype
`s32 camera_approach_s16_symmetric_bool(s16 *current, s16 target, s16 increment);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -354,6 +675,9 @@
### C Prototype
`s16 camera_course_processing(struct Camera *c);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -374,6 +698,9 @@
### C Prototype
`void camera_set_use_course_specific_settings(u8 enable);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -392,6 +719,9 @@
### C Prototype
`void center_rom_hack_camera(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -415,6 +745,9 @@
### C Prototype
`s32 clamp_pitch(Vec3f from, Vec3f to, s16 maxPitch, s16 minPitch);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -440,6 +773,9 @@
### C Prototype
`s32 clamp_positions_and_find_yaw(Vec3f pos, Vec3f origin, f32 xMax, f32 xMin, f32 zMax, f32 zMin);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -462,6 +798,9 @@
### C Prototype
`s32 collide_with_walls(Vec3f pos, f32 offsetY, f32 radius);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -483,6 +822,9 @@
### C Prototype
`s16 cutscene_object(u8 cutscene, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -505,6 +847,9 @@
### C Prototype
`s16 cutscene_object_with_dialog(u8 cutscene, struct Object *o, s16 dialogID);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -526,6 +871,9 @@
### C Prototype
`s16 cutscene_object_without_dialog(u8 cutscene, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -546,6 +894,9 @@
### C Prototype
`void cutscene_set_fov_shake_preset(u8 preset);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -567,6 +918,9 @@
### C Prototype
`s32 cutscene_spawn_obj(u32 obj, s16 frame);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -589,6 +943,9 @@
### C Prototype
`s32 find_c_buttons_pressed(u16 currentState, u16 buttonsPressed, u16 buttonsDown);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -609,6 +966,9 @@
### C Prototype
`void find_mario_floor_and_ceil(struct PlayerGeometry *pg);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -629,6 +989,9 @@
### C Prototype
`u8 get_cutscene_from_mario_status(struct Camera *c);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -649,6 +1012,9 @@
### C Prototype
`void handle_c_button_movement(struct Camera *c);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -673,6 +1039,9 @@
### C Prototype
`s32 is_range_behind_surface(Vec3f from, Vec3f to, struct Surface *surf, s16 range, s16 surfType);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -695,6 +1064,9 @@
### C Prototype
`s32 is_within_100_units_of_mario(f32 posX, f32 posY, f32 posZ);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -715,6 +1087,9 @@
### C Prototype
`void move_mario_head_c_up(UNUSED struct Camera *c);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -741,6 +1116,9 @@
### C Prototype
`s16 next_lakitu_state(Vec3f newPos, Vec3f newFoc, Vec3f curPos, Vec3f curFoc, Vec3f oldPos, Vec3f oldFoc, s16 yaw);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -766,6 +1144,9 @@
### C Prototype
`void obj_rotate_towards_point(struct Object *o, Vec3f point, s16 pitchOff, s16 yawOff, s16 pitchDiv, s16 yawDiv);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -787,6 +1168,9 @@
### C Prototype
`void object_pos_to_vec3f(Vec3f dst, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -810,6 +1194,9 @@
### C Prototype
`void offset_rotated(Vec3f dst, Vec3f from, Vec3f to, Vec3s rotation);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -831,6 +1218,9 @@
### C Prototype
`s32 offset_yaw_outward_radial(struct Camera *c, s16 areaYaw);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -849,6 +1239,9 @@
### C Prototype
`void play_camera_buzz_if_c_sideways(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -867,6 +1260,9 @@
### C Prototype
`void play_camera_buzz_if_cbutton(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -885,6 +1281,9 @@
### C Prototype
`void play_camera_buzz_if_cdown(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -905,6 +1304,9 @@
### C Prototype
`void play_cutscene(struct Camera *c);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -923,6 +1325,9 @@
### C Prototype
`void play_sound_button_change_blocked(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -941,6 +1346,9 @@
### C Prototype
`void play_sound_cbutton_down(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -959,6 +1367,9 @@
### C Prototype
`void play_sound_cbutton_side(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -977,6 +1388,9 @@
### C Prototype
`void play_sound_cbutton_up(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -995,6 +1409,9 @@
### C Prototype
`void play_sound_if_cam_switched_to_lakitu_or_mario(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1013,6 +1430,9 @@
### C Prototype
`void play_sound_rbutton_changed(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1034,6 +1454,9 @@
### C Prototype
`s32 radial_camera_input(struct Camera *c, UNUSED f32 unused);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1057,6 +1480,9 @@
### C Prototype
`void random_vec3s(Vec3s dst, s16 xRange, s16 yRange, s16 zRange);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1077,6 +1503,9 @@
### C Prototype
`void reset_camera(struct Camera *c);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1098,6 +1527,9 @@
### C Prototype
`void resolve_geometry_collisions(Vec3f pos, UNUSED Vec3f lastGood);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1118,6 +1550,9 @@
### C Prototype
`void rom_hack_cam_set_collisions(u8 enable);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1141,6 +1576,9 @@
### C Prototype
`s32 rotate_camera_around_walls(struct Camera *c, Vec3f cPos, s16 *avoidYaw, s16 yawRange);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1163,6 +1601,9 @@
### C Prototype
`void rotate_in_xz(Vec3f dst, Vec3f src, s16 yaw);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1185,6 +1626,9 @@
### C Prototype
`void rotate_in_yz(Vec3f dst, Vec3f src, s16 pitch);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1208,6 +1652,9 @@
### C Prototype
`void scale_along_line(Vec3f dest, Vec3f from, Vec3f to, f32 scale);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1226,6 +1673,9 @@
### C Prototype
`void select_mario_cam_mode(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1246,6 +1696,9 @@
### C Prototype
`s32 set_cam_angle(s32 mode);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1268,6 +1721,9 @@
### C Prototype
`void set_camera_mode(struct Camera *c, s16 mode, s16 frames);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1291,6 +1747,9 @@
### C Prototype
`s32 set_camera_mode_fixed(struct Camera* c, s16 x, s16 y, s16 z);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1313,6 +1772,9 @@
### C Prototype
`void set_camera_pitch_shake(s16 mag, s16 decay, s16 inc);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1335,6 +1797,9 @@
### C Prototype
`void set_camera_roll_shake(s16 mag, s16 decay, s16 inc);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1355,6 +1820,9 @@
### C Prototype
`void set_camera_shake_from_hit(s16 shake);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1378,6 +1846,9 @@
### C Prototype
`void set_camera_shake_from_point(s16 shake, f32 posX, f32 posY, f32 posZ);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1400,6 +1871,9 @@
### C Prototype
`void set_camera_yaw_shake(s16 mag, s16 decay, s16 inc);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1420,6 +1894,9 @@
### C Prototype
`void set_environmental_camera_shake(s16 shake);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1440,6 +1917,9 @@
### C Prototype
`void set_fixed_cam_axis_sa_lobby(UNUSED s16 preset);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1460,6 +1940,9 @@
### C Prototype
`void set_fov_function(u8 func);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1482,6 +1965,9 @@
### C Prototype
`void set_fov_shake(s16 amplitude, s16 decay, s16 shakeSpeed);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1505,6 +1991,9 @@
### C Prototype
`void set_fov_shake_from_point_preset(u8 preset, f32 posX, f32 posY, f32 posZ);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1525,6 +2014,9 @@
### C Prototype
`void set_handheld_shake(u8 mode);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1547,6 +2039,9 @@
### C Prototype
`s32 set_or_approach_f32_asymptotic(f32 *dst, f32 goal, f32 scale);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1569,6 +2064,9 @@
### C Prototype
`s32 set_or_approach_s16_symmetric(s16 *current, s16 target, s16 increment);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1593,6 +2091,9 @@
### C Prototype
`void set_or_approach_vec3f_asymptotic(Vec3f dst, Vec3f goal, f32 xMul, f32 yMul, f32 zMul);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1619,6 +2120,9 @@
### C Prototype
`void set_pitch_shake_from_point(s16 mag, s16 decay, s16 inc, f32 maxDist, f32 posX, f32 posY, f32 posZ);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1640,6 +2144,9 @@
### C Prototype
`void shake_camera_handheld(Vec3f pos, Vec3f focus);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1661,6 +2168,9 @@
### C Prototype
`void shake_camera_pitch(Vec3f pos, Vec3f focus);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1681,6 +2191,9 @@
### C Prototype
`void shake_camera_roll(s16 *roll);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1702,6 +2215,9 @@
### C Prototype
`void shake_camera_yaw(Vec3f pos, Vec3f focus);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1720,6 +2236,9 @@
### C Prototype
`void skip_camera_interpolation(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1740,6 +2259,9 @@
### C Prototype
`void soft_reset_camera(struct Camera* c);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1761,6 +2283,9 @@
### C Prototype
`void start_cutscene(struct Camera *c, u8 cutscene);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1781,6 +2306,9 @@
### C Prototype
`u8 start_object_cutscene_without_focus(u8 cutscene);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1802,6 +2330,9 @@
### C Prototype
`void transition_next_state(UNUSED struct Camera *c, s16 frames);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1822,6 +2353,9 @@
### C Prototype
`s32 trigger_cutscene_dialog(s32 trigger);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1843,6 +2377,9 @@
### C Prototype
`void vec3f_sub(Vec3f dst, Vec3f src);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1864,6 +2401,9 @@
### C Prototype
`void vec3f_to_object_pos(struct Object *o, Vec3f src);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1886,6 +2426,9 @@
### C Prototype
`void warp_camera(f32 displacementX, f32 displacementY, f32 displacementZ);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1912,6 +2455,9 @@
### C Prototype
`struct Character* get_character(struct MarioState* m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1933,6 +2479,9 @@
### C Prototype
`s32 get_character_anim(struct MarioState* m, enum CharacterAnimID characterAnim);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1953,6 +2502,9 @@
### C Prototype
`f32 get_character_anim_offset(struct MarioState* m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1974,6 +2526,9 @@
### C Prototype
`void play_character_sound(struct MarioState* m, enum CharacterSound characterSound);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1996,6 +2551,9 @@
### C Prototype
`void play_character_sound_if_no_flag(struct MarioState* m, enum CharacterSound characterSound, u32 flags);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2018,6 +2576,9 @@
### C Prototype
`void play_character_sound_offset(struct MarioState* m, enum CharacterSound characterSound, u32 offset);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2038,6 +2599,9 @@
### C Prototype
`void update_character_anim_offset(struct MarioState* m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2064,6 +2628,9 @@
### C Prototype
`void djui_chat_message_create(const char* message);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2088,6 +2655,9 @@
### C Prototype
`void djui_console_message_dequeue(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2106,6 +2676,9 @@
### C Prototype
`void djui_console_toggle(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2130,6 +2703,9 @@
### C Prototype
`struct DjuiColor* djui_hud_get_color(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2148,6 +2724,9 @@
### C Prototype
`u8 djui_hud_get_filter(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2166,6 +2745,9 @@
### C Prototype
`u8 djui_hud_get_font(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2184,6 +2766,9 @@
### C Prototype
`f32 djui_hud_get_fov_coeff();`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2202,6 +2787,9 @@
### C Prototype
`f32 djui_hud_get_mouse_x(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2220,6 +2808,9 @@
### C Prototype
`f32 djui_hud_get_mouse_y(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2238,6 +2829,9 @@
### C Prototype
`f32 djui_hud_get_raw_mouse_x(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2256,6 +2850,9 @@
### C Prototype
`f32 djui_hud_get_raw_mouse_y(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2274,6 +2871,9 @@
### C Prototype
`u8 djui_hud_get_resolution(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2292,6 +2892,9 @@
### C Prototype
`struct HudUtilsRotation* djui_hud_get_rotation(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2310,6 +2913,9 @@
### C Prototype
`u32 djui_hud_get_screen_height(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2328,6 +2934,9 @@
### C Prototype
`u32 djui_hud_get_screen_width(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2346,6 +2955,9 @@
### C Prototype
`bool djui_hud_is_pause_menu_created(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2366,6 +2978,9 @@
### C Prototype
`f32 djui_hud_measure_text(const char* message);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2389,6 +3004,9 @@
### C Prototype
`void djui_hud_print_text(const char* message, f32 x, f32 y, f32 scale);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2415,6 +3033,9 @@
### C Prototype
`void djui_hud_print_text_interpolated(const char* message, f32 prevX, f32 prevY, f32 prevScale, f32 x, f32 y, f32 scale);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2438,6 +3059,9 @@
### C Prototype
`void djui_hud_render_rect(f32 x, f32 y, f32 width, f32 height);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2465,6 +3089,9 @@
### C Prototype
`void djui_hud_render_rect_interpolated(f32 prevX, f32 prevY, f32 prevWidth, f32 prevHeight, f32 x, f32 y, f32 width, f32 height);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2483,6 +3110,9 @@
### C Prototype
`void djui_hud_reset_color(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2506,6 +3136,9 @@
### C Prototype
`void djui_hud_set_color(u8 r, u8 g, u8 b, u8 a);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2526,6 +3159,9 @@
### C Prototype
`void djui_hud_set_filter(enum HudUtilsFilter filterType);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2546,6 +3182,9 @@
### C Prototype
`void djui_hud_set_font(s8 fontType);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2566,6 +3205,9 @@
### C Prototype
`void djui_hud_set_mouse_locked(bool locked);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2586,6 +3228,9 @@
### C Prototype
`void djui_hud_set_resolution(enum HudUtilsResolution resolutionType);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2608,6 +3253,9 @@
### C Prototype
`void djui_hud_set_rotation(s16 rotation, f32 pivotX, f32 pivotY);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2633,6 +3281,9 @@
### C Prototype
`void djui_hud_set_rotation_interpolated(s32 prevRotation, f32 prevPivotX, f32 prevPivotY, s32 rotation, f32 pivotX, f32 pivotY);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2654,6 +3305,9 @@
### C Prototype
`bool djui_hud_world_pos_to_screen_pos(Vec3f pos, Vec3f out);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2672,6 +3326,9 @@
### C Prototype
`void djui_open_pause_menu(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2690,6 +3347,9 @@
### C Prototype
`f32 get_current_fov();`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2717,6 +3377,9 @@
### C Prototype
`char* djui_language_get(const char *section, const char *key);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2744,6 +3407,9 @@
### C Prototype
`void djui_popup_create(const char* message, int lines);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2768,6 +3434,9 @@
### C Prototype
`void drop_queued_background_music(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2790,6 +3459,9 @@
### C Prototype
`void fade_volume_scale(u8 player, u8 targetScale, u16 fadeDuration);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2811,6 +3483,9 @@
### C Prototype
`void fadeout_background_music(u16 arg0, u16 fadeOut);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2829,6 +3504,9 @@
### C Prototype
`u16 get_current_background_music(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2847,6 +3525,9 @@
### C Prototype
`u8 get_current_background_music_default_volume(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2865,6 +3546,9 @@
### C Prototype
`u8 get_current_background_music_max_target_volume(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2883,6 +3567,9 @@
### C Prototype
`u8 get_current_background_music_target_volume(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2901,6 +3588,9 @@
### C Prototype
`u8 is_current_background_music_volume_lowered(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2919,6 +3609,9 @@
### C Prototype
`void play_course_clear(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2939,6 +3632,9 @@
### C Prototype
`void play_dialog_sound(u8 dialogID);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2961,6 +3657,9 @@
### C Prototype
`void play_music(u8 player, u16 seqArgs, u16 fadeTimer);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2979,6 +3678,9 @@
### C Prototype
`void play_peachs_jingle(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2999,6 +3701,9 @@
### C Prototype
`void play_power_star_jingle(u8 arg0);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3017,6 +3722,9 @@
### C Prototype
`void play_puzzle_jingle(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3035,6 +3743,9 @@
### C Prototype
`void play_race_fanfare(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3058,6 +3769,9 @@
### C Prototype
`void play_secondary_music(u8 seqId, u8 bgMusicVolume, u8 volume, u16 fadeTimer);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3079,6 +3793,9 @@
### C Prototype
`void play_sound(s32 soundBits, f32 *pos);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3101,6 +3818,9 @@
### C Prototype
`void play_sound_with_freq_scale(s32 soundBits, f32* pos, f32 freqScale);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3119,6 +3839,9 @@
### C Prototype
`void play_star_fanfare(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3137,6 +3860,9 @@
### C Prototype
`void play_toads_jingle(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3158,6 +3884,9 @@
### C Prototype
`void seq_player_fade_out(u8 player, u16 fadeDuration);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3180,6 +3909,9 @@
### C Prototype
`void seq_player_lower_volume(u8 player, u16 fadeDuration, u8 percentage);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3201,6 +3933,9 @@
### C Prototype
`void seq_player_unlower_volume(u8 player, u16 fadeDuration);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3221,6 +3956,9 @@
### C Prototype
`void set_audio_fadeout(u16 fadeOutTime);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3242,6 +3980,9 @@
### C Prototype
`void sound_banks_disable(u8 player, u16 bankMask);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3263,6 +4004,9 @@
### C Prototype
`void sound_banks_enable(u8 player, u16 bankMask);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3283,6 +4027,9 @@
### C Prototype
`f32 sound_get_level_intensity(f32 distance);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3303,6 +4050,9 @@
### C Prototype
`void stop_background_music(u16 seqId);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3323,6 +4073,9 @@
### C Prototype
`void stop_secondary_music(u16 fadeTimer);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3344,6 +4097,9 @@
### C Prototype
`void stop_sound(u32 soundBits, f32 *pos);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3364,6 +4120,9 @@
### C Prototype
`void stop_sounds_from_source(f32 *pos);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3382,6 +4141,9 @@
### C Prototype
`void stop_sounds_in_continuous_banks(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3408,6 +4170,9 @@
### C Prototype
`bool first_person_check_cancels(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3426,6 +4191,9 @@
### C Prototype
`void first_person_reset(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3444,6 +4212,9 @@
### C Prototype
`bool get_first_person_enabled(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3464,6 +4235,9 @@
### C Prototype
`void set_first_person_enabled(bool enable);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3490,6 +4264,9 @@
### C Prototype
`void create_dialog_box(s16 dialog);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3510,6 +4287,9 @@
### C Prototype
`void create_dialog_box_with_response(s16 dialog);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3531,6 +4311,9 @@
### C Prototype
`void create_dialog_box_with_var(s16 dialog, s32 dialogVar);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3551,6 +4334,9 @@
### C Prototype
`void create_dialog_inverted_box(s16 dialog);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3569,6 +4355,9 @@
### C Prototype
`void reset_dialog_override_color();`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3587,6 +4376,9 @@
### C Prototype
`void reset_dialog_override_pos();`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3605,6 +4397,9 @@
### C Prototype
`void reset_dialog_render_state(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3632,6 +4427,9 @@
### C Prototype
`void set_dialog_override_color(u8 bgR, u8 bgG, u8 bgB, u8 bgA, u8 textR, u8 textG, u8 textB, u8 textA);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3653,6 +4451,9 @@
### C Prototype
`void set_dialog_override_pos(s16 x, s16 y);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3673,6 +4474,9 @@
### C Prototype
`void set_menu_mode(s16 mode);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3693,6 +4497,9 @@
### C Prototype
`void set_min_dialog_width(s16 width);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3720,6 +4527,9 @@
### C Prototype
`u32 determine_interaction(struct MarioState *m, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3740,6 +4550,9 @@
### C Prototype
`u32 does_mario_have_normal_cap_on_head(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3760,6 +4573,9 @@
### C Prototype
`u32 get_door_save_file_flag(struct Object *door);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3780,6 +4596,9 @@
### C Prototype
`u32 get_mario_cap_flag(struct Object *capObject);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3802,6 +4621,9 @@
### C Prototype
`u32 interact_bbh_entrance(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3824,6 +4646,9 @@
### C Prototype
`u32 interact_bounce_top(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3846,6 +4671,9 @@
### C Prototype
`u32 interact_breakable(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3868,6 +4696,9 @@
### C Prototype
`u32 interact_bully(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3890,6 +4721,9 @@
### C Prototype
`u32 interact_cannon_base(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3912,6 +4746,9 @@
### C Prototype
`u32 interact_cap(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3934,6 +4771,9 @@
### C Prototype
`u32 interact_clam_or_bubba(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3956,6 +4796,9 @@
### C Prototype
`u32 interact_coin(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3978,6 +4821,9 @@
### C Prototype
`u32 interact_damage(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4000,6 +4846,9 @@
### C Prototype
`u32 interact_door(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4022,6 +4871,9 @@
### C Prototype
`u32 interact_flame(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4044,6 +4896,9 @@
### C Prototype
`u32 interact_grabbable(struct MarioState *m, u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4066,6 +4921,9 @@
### C Prototype
`u32 interact_hit_from_below(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4088,6 +4946,9 @@
### C Prototype
`u32 interact_hoot(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4110,6 +4971,9 @@
### C Prototype
`u32 interact_igloo_barrier(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4132,6 +4996,9 @@
### C Prototype
`u32 interact_koopa_shell(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4154,6 +5021,9 @@
### C Prototype
`u32 interact_mr_blizzard(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4176,6 +5046,9 @@
### C Prototype
`u32 interact_player(struct MarioState* m, UNUSED u32 interactType, struct Object* o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4198,6 +5071,9 @@
### C Prototype
`u32 interact_pole(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4220,6 +5096,9 @@
### C Prototype
`u32 interact_shock(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4242,6 +5121,9 @@
### C Prototype
`u32 interact_snufit_bullet(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4264,6 +5146,9 @@
### C Prototype
`u32 interact_spiny_walking(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4286,6 +5171,9 @@
### C Prototype
`u32 interact_star_or_key(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4308,6 +5196,9 @@
### C Prototype
`u32 interact_strong_wind(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4330,6 +5221,9 @@
### C Prototype
`u32 interact_text(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4352,6 +5246,9 @@
### C Prototype
`u32 interact_tornado(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4374,6 +5271,9 @@
### C Prototype
`u32 interact_warp(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4396,6 +5296,9 @@
### C Prototype
`u32 interact_warp_door(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4418,6 +5321,9 @@
### C Prototype
`u32 interact_water_ring(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4440,6 +5346,9 @@
### C Prototype
`u32 interact_whirlpool(struct MarioState *m, UNUSED u32 interactType, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4461,6 +5370,9 @@
### C Prototype
`void mario_blow_off_cap(struct MarioState *m, f32 capSpeed);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4481,6 +5393,9 @@
### C Prototype
`u32 mario_check_object_grab(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4501,6 +5416,9 @@
### C Prototype
`void mario_drop_held_object(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4522,6 +5440,9 @@
### C Prototype
`struct Object *mario_get_collided_object(struct MarioState *m, u32 interactType);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4542,6 +5463,9 @@
### C Prototype
`void mario_grab_used_object(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4563,6 +5487,9 @@
### C Prototype
`u32 mario_lose_cap_to_enemy(struct MarioState* m, u32 arg);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4584,6 +5511,9 @@
### C Prototype
`s16 mario_obj_angle_to_object(struct MarioState *m, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4604,6 +5534,9 @@
### C Prototype
`void mario_retrieve_cap(struct MarioState* m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4624,6 +5557,9 @@
### C Prototype
`void mario_stop_riding_and_holding(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4644,6 +5580,9 @@
### C Prototype
`void mario_stop_riding_object(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4664,6 +5603,9 @@
### C Prototype
`void mario_throw_held_object(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4685,6 +5627,9 @@
### C Prototype
`u8 passes_pvp_interaction_checks(struct MarioState* attacker, struct MarioState* victim);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4706,6 +5651,9 @@
### C Prototype
`u32 should_push_or_pull_door(struct MarioState *m, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4727,6 +5675,9 @@
### C Prototype
`u32 take_damage_and_knock_back(struct MarioState *m, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4753,6 +5704,9 @@
### C Prototype
`struct MarioState* lag_compensation_get_local_state(struct NetworkPlayer* otherNp);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4771,6 +5725,9 @@
### C Prototype
`u32 lag_compensation_get_local_state_index(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4789,6 +5746,9 @@
### C Prototype
`bool lag_compensation_get_local_state_ready(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4807,6 +5767,9 @@
### C Prototype
`void lag_compensation_store(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4835,6 +5798,9 @@
### C Prototype
`const char *get_level_name(s16 courseNum, s16 levelNum, s16 areaIndex);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4858,6 +5824,9 @@
### C Prototype
`const char *get_level_name_ascii(s16 courseNum, s16 levelNum, s16 areaIndex, s16 charCase);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4881,6 +5850,9 @@
### C Prototype
`const u8 *get_level_name_sm64(s16 courseNum, s16 levelNum, s16 areaIndex, s16 charCase);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4902,6 +5874,9 @@
### C Prototype
`const char *get_star_name(s16 courseNum, s16 starNum);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4924,6 +5899,9 @@
### C Prototype
`const char *get_star_name_ascii(s16 courseNum, s16 starNum, s16 charCase);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4946,6 +5924,9 @@
### C Prototype
`const u8 *get_star_name_sm64(s16 courseNum, s16 starNum, s16 charCase);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -4977,6 +5958,9 @@
### C Prototype
`struct ObjectWarpNode *area_create_warp_node(u8 id, u8 destLevel, u8 destArea, u8 destNode, u8 checkpoint, struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5004,6 +5988,9 @@
### C Prototype
`void fade_into_special_warp(u32 arg, u32 color);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5022,6 +6009,9 @@
### C Prototype
`struct WarpNode *get_painting_warp_node(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5042,6 +6032,9 @@
### C Prototype
`void initiate_painting_warp(s16 paintingIndex);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5060,6 +6053,9 @@
### C Prototype
`u8 level_control_timer_running(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5081,6 +6077,9 @@
### C Prototype
`s16 level_trigger_warp(struct MarioState *m, s32 warpOp);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5102,6 +6101,9 @@
### C Prototype
`s32 lvl_set_current_level(UNUSED s16 arg0, s16 levelNum);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5122,6 +6124,9 @@
### C Prototype
`void warp_special(s32 arg);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5148,6 +6153,9 @@
### C Prototype
`void adjust_sound_for_speed(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5168,6 +6176,9 @@
### C Prototype
`s32 check_common_action_exits(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5188,6 +6199,9 @@
### C Prototype
`s32 check_common_hold_action_exits(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5210,6 +6224,9 @@
### C Prototype
`s32 drop_and_set_mario_action(struct MarioState *m, u32 action, u32 actionArg);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5230,6 +6247,9 @@
### C Prototype
`s32 execute_mario_action(UNUSED struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5252,6 +6272,9 @@
### C Prototype
`f32 find_floor_height_relative_polar(struct MarioState *m, s16 angleFromMario, f32 distFromMario);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5273,6 +6296,9 @@
### C Prototype
`s16 find_floor_slope(struct MarioState *m, s16 yawOffset);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5295,6 +6321,9 @@
### C Prototype
`s16 find_mario_anim_flags_and_translation(struct Object *o, s32 yaw, Vec3s translation);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5315,6 +6344,9 @@
### C Prototype
`s32 force_idle_state(struct MarioState* m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5338,6 +6370,9 @@
### C Prototype
`s32 hurt_and_set_mario_action(struct MarioState *m, u32 action, u32 actionArg, s16 hurtCounter);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5358,6 +6393,9 @@
### C Prototype
`void init_single_mario(struct MarioState* m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5378,6 +6416,9 @@
### C Prototype
`s32 is_anim_at_end(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5398,6 +6439,9 @@
### C Prototype
`s32 is_anim_past_end(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5419,6 +6463,9 @@
### C Prototype
`s32 is_anim_past_frame(struct MarioState *m, s16 animFrame);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5439,6 +6486,9 @@
### C Prototype
`bool mario_can_bubble(struct MarioState* m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5460,6 +6510,9 @@
### C Prototype
`s32 mario_facing_downhill(struct MarioState *m, s32 turnYaw);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5480,6 +6533,9 @@
### C Prototype
`u32 mario_floor_is_slippery(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5500,6 +6556,9 @@
### C Prototype
`s32 mario_floor_is_slope(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5520,6 +6579,9 @@
### C Prototype
`s32 mario_floor_is_steep(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5540,6 +6602,9 @@
### C Prototype
`s32 mario_get_floor_class(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5560,6 +6625,9 @@
### C Prototype
`u32 mario_get_terrain_sound_addend(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5580,6 +6648,9 @@
### C Prototype
`bool mario_is_crouching(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5600,6 +6671,9 @@
### C Prototype
`void mario_set_bubbled(struct MarioState* m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5621,6 +6695,9 @@
### C Prototype
`void mario_set_forward_vel(struct MarioState *m, f32 speed);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5642,6 +6719,9 @@
### C Prototype
`void mario_update_wall(struct MarioState* m, struct WallCollisionData* wcd);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5664,6 +6744,9 @@
### C Prototype
`void play_mario_action_sound(struct MarioState *m, u32 soundBits, u32 waveParticleType);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5685,6 +6768,9 @@
### C Prototype
`void play_mario_heavy_landing_sound(struct MarioState *m, u32 soundBits);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5706,6 +6792,9 @@
### C Prototype
`void play_mario_heavy_landing_sound_once(struct MarioState *m, u32 soundBits);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5726,6 +6815,9 @@
### C Prototype
`void play_mario_jump_sound(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5747,6 +6839,9 @@
### C Prototype
`void play_mario_landing_sound(struct MarioState *m, u32 soundBits);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5768,6 +6863,9 @@
### C Prototype
`void play_mario_landing_sound_once(struct MarioState *m, u32 soundBits);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5790,6 +6888,9 @@
### C Prototype
`void play_mario_sound(struct MarioState *m, s32 primarySoundBits, s32 scondarySoundBits);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5812,6 +6913,9 @@
### C Prototype
`void play_sound_and_spawn_particles(struct MarioState *m, u32 soundBits, u32 waveParticleType);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5834,6 +6938,9 @@
### C Prototype
`void play_sound_if_no_flag(struct MarioState *m, u32 soundBits, u32 flags);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5856,6 +6963,9 @@
### C Prototype
`struct Surface *resolve_and_return_wall_collisions(Vec3f pos, f32 offset, f32 radius);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5879,6 +6989,9 @@
### C Prototype
`void resolve_and_return_wall_collisions_data(Vec3f pos, f32 offset, f32 radius, struct WallCollisionData* collisionData);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5899,6 +7012,9 @@
### C Prototype
`s16 return_mario_anim_y_translation(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5920,6 +7036,9 @@
### C Prototype
`void set_anim_to_frame(struct MarioState *m, s16 animFrame);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5942,6 +7061,9 @@
### C Prototype
`s16 set_character_anim_with_accel(struct MarioState *m, s32 targetAnimID, s32 accel);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5963,6 +7085,9 @@
### C Prototype
`s16 set_character_animation(struct MarioState *m, s32 targetAnimID);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -5983,6 +7108,9 @@
### C Prototype
`s32 set_jump_from_landing(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6005,6 +7133,9 @@
### C Prototype
`s32 set_jumping_action(struct MarioState *m, u32 action, u32 actionArg);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6027,6 +7158,9 @@
### C Prototype
`u32 set_mario_action(struct MarioState *m, u32 action, u32 actionArg);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6049,6 +7183,9 @@
### C Prototype
`s16 set_mario_anim_with_accel(struct MarioState *m, s32 targetAnimID, s32 accel);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6070,6 +7207,9 @@
### C Prototype
`s16 set_mario_animation(struct MarioState *m, s32 targetAnimID);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6092,6 +7232,9 @@
### C Prototype
`void set_mario_particle_flags(struct MarioState* m, u32 flags, u8 clear);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6114,6 +7257,9 @@
### C Prototype
`void set_mario_y_vel_based_on_fspeed(struct MarioState *m, f32 initialVelY, f32 multiplier);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6134,6 +7280,9 @@
### C Prototype
`void set_steep_jump_action(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6154,6 +7303,9 @@
### C Prototype
`s32 set_water_plunge_action(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6174,6 +7326,9 @@
### C Prototype
`s32 transition_submerged_to_walking(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6194,6 +7349,9 @@
### C Prototype
`void update_mario_pos_for_anim(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6214,6 +7372,9 @@
### C Prototype
`void update_mario_sound_and_camera(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6240,6 +7401,9 @@
### C Prototype
`s32 check_common_airborne_cancels(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6261,6 +7425,9 @@
### C Prototype
`s32 check_fall_damage(struct MarioState *m, u32 hardFallAction);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6282,6 +7449,9 @@
### C Prototype
`s32 check_fall_damage_or_get_stuck(struct MarioState *m, u32 hardFallAction);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6302,6 +7472,9 @@
### C Prototype
`s32 check_horizontal_wind(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6322,6 +7495,9 @@
### C Prototype
`s32 check_kick_or_dive_in_air(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6342,6 +7518,9 @@
### C Prototype
`s32 check_wall_kick(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6365,6 +7544,9 @@
### C Prototype
`u32 common_air_action_step(struct MarioState *m, u32 landAction, s32 animation, u32 stepArg);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6389,6 +7571,9 @@
### C Prototype
`u32 common_air_knockback_step(struct MarioState *m, u32 landAction, u32 hardFallAction, s32 animation, f32 speed);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6409,6 +7594,9 @@
### C Prototype
`s32 lava_boost_on_wall(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6429,6 +7617,9 @@
### C Prototype
`s32 mario_execute_airborne_action(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6449,6 +7640,9 @@
### C Prototype
`void play_far_fall_sound(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6472,6 +7666,9 @@
### C Prototype
`void play_flip_sounds(struct MarioState *m, s16 frame1, s16 frame2, s16 frame3);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6492,6 +7689,9 @@
### C Prototype
`void play_knockback_sound(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6512,6 +7712,9 @@
### C Prototype
`s32 should_get_stuck_in_ground(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6532,6 +7735,9 @@
### C Prototype
`void update_air_with_turn(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6552,6 +7758,9 @@
### C Prototype
`void update_air_without_turn(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6572,6 +7781,9 @@
### C Prototype
`void update_flying(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6592,6 +7804,9 @@
### C Prototype
`void update_flying_pitch(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6612,6 +7827,9 @@
### C Prototype
`void update_flying_yaw(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6632,6 +7850,9 @@
### C Prototype
`void update_lava_boost_or_twirling(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6658,6 +7879,9 @@
### C Prototype
`void add_tree_leaf_particles(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6678,6 +7902,9 @@
### C Prototype
`s32 check_common_automatic_cancels(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6698,6 +7925,9 @@
### C Prototype
`void climb_up_ledge(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6718,6 +7948,9 @@
### C Prototype
`s32 let_go_of_ledge(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6738,6 +7971,9 @@
### C Prototype
`s32 mario_execute_automatic_action(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6759,6 +7995,9 @@
### C Prototype
`s32 perform_hanging_step(struct MarioState *m, Vec3f nextPos);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6780,6 +8019,9 @@
### C Prototype
`void play_climbing_sounds(struct MarioState *m, s32 b);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6801,6 +8043,9 @@
### C Prototype
`s32 set_pole_position(struct MarioState *m, f32 offsetY);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6821,6 +8066,9 @@
### C Prototype
`s32 update_hang_moving(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6841,6 +8089,9 @@
### C Prototype
`void update_hang_stationary(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6863,6 +8114,9 @@
### C Prototype
`void update_ledge_climb(struct MarioState *m, s32 animation, u32 endAction);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6883,6 +8137,9 @@
### C Prototype
`void update_ledge_climb_camera(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6907,6 +8164,9 @@
### C Prototype
`void bhv_end_peach_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6925,6 +8185,9 @@
### C Prototype
`void bhv_end_toad_loop(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6947,6 +8210,9 @@
### C Prototype
`s32 common_death_handler(struct MarioState *m, s32 animation, s32 frameToDeathWarp);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6967,6 +8233,9 @@
### C Prototype
`void cutscene_put_cap_on(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -6987,6 +8256,9 @@
### C Prototype
`void cutscene_take_cap_off(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7008,6 +8280,9 @@
### C Prototype
`void general_star_dance_handler(struct MarioState *m, s32 isInWater);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7031,6 +8306,9 @@
### C Prototype
`void generate_yellow_sparkles(s16 x, s16 y, s16 z, f32 radius);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7051,6 +8329,9 @@
### C Prototype
`s32 get_credits_str_width(char *str);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7071,6 +8352,9 @@
### C Prototype
`s32 get_star_collection_dialog(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7091,6 +8375,9 @@
### C Prototype
`void handle_save_menu(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7114,6 +8401,9 @@
### C Prototype
`s32 launch_mario_until_land(struct MarioState *m, s32 endAction, s32 animation, f32 forwardVel);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7134,6 +8424,9 @@
### C Prototype
`s32 mario_execute_cutscene_action(struct MarioState *m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7154,6 +8447,9 @@
### C Prototype
`s32 mario_ready_to_speak(struct MarioState* m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7175,6 +8471,9 @@
### C Prototype
`u8 should_start_or_continue_dialog(struct MarioState* m, struct Object* object);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -7200,1457 +8499,13 @@
### C Prototype
`void stuck_in_ground_handler(struct MarioState *m, s32 animation, s32 unstuckFrame, s32 target2, s32 target3, s32 endAction);`
-[:arrow_up_small:](#)
-
-
-
----
-# functions from mario_actions_moving.c
-
-
-
-
-## [align_with_floor](#align_with_floor)
-
-### Lua Example
-`align_with_floor(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void align_with_floor(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [analog_stick_held_back](#analog_stick_held_back)
-
-### Lua Example
-`local integerValue = analog_stick_held_back(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 analog_stick_held_back(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [anim_and_audio_for_heavy_walk](#anim_and_audio_for_heavy_walk)
-
-### Lua Example
-`anim_and_audio_for_heavy_walk(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void anim_and_audio_for_heavy_walk(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [anim_and_audio_for_hold_walk](#anim_and_audio_for_hold_walk)
-
-### Lua Example
-`anim_and_audio_for_hold_walk(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void anim_and_audio_for_hold_walk(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [anim_and_audio_for_walk](#anim_and_audio_for_walk)
-
-### Lua Example
-`anim_and_audio_for_walk(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void anim_and_audio_for_walk(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [apply_landing_accel](#apply_landing_accel)
-
-### Lua Example
-`local integerValue = apply_landing_accel(m, frictionFactor)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| frictionFactor | `number` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 apply_landing_accel(struct MarioState *m, f32 frictionFactor);`
-
-[:arrow_up_small:](#)
-
-
-
-## [apply_slope_accel](#apply_slope_accel)
-
-### Lua Example
-`apply_slope_accel(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void apply_slope_accel(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [apply_slope_decel](#apply_slope_decel)
-
-### Lua Example
-`local integerValue = apply_slope_decel(m, decelCoef)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| decelCoef | `number` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 apply_slope_decel(struct MarioState *m, f32 decelCoef);`
-
-[:arrow_up_small:](#)
-
-
-
-## [begin_braking_action](#begin_braking_action)
-
-### Lua Example
-`local integerValue = begin_braking_action(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 begin_braking_action(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [begin_walking_action](#begin_walking_action)
-
-### Lua Example
-`local integerValue = begin_walking_action(m, forwardVel, action, actionArg)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| forwardVel | `number` |
-| action | `integer` |
-| actionArg | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 begin_walking_action(struct MarioState *m, f32 forwardVel, u32 action, u32 actionArg);`
-
-[:arrow_up_small:](#)
-
-
-
-## [check_common_moving_cancels](#check_common_moving_cancels)
-
-### Lua Example
-`local integerValue = check_common_moving_cancels(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 check_common_moving_cancels(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [check_ground_dive_or_punch](#check_ground_dive_or_punch)
-
-### Lua Example
-`local integerValue = check_ground_dive_or_punch(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 check_ground_dive_or_punch(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [check_ledge_climb_down](#check_ledge_climb_down)
-
-### Lua Example
-`check_ledge_climb_down(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void check_ledge_climb_down(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [common_ground_knockback_action](#common_ground_knockback_action)
-
-### Lua Example
-`local integerValue = common_ground_knockback_action(m, animation, arg2, arg3, arg4)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| animation | `integer` |
-| arg2 | `integer` |
-| arg3 | `integer` |
-| arg4 | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 common_ground_knockback_action(struct MarioState *m, s32 animation, s32 arg2, s32 arg3, s32 arg4);`
-
-[:arrow_up_small:](#)
-
-
-
-## [common_landing_action](#common_landing_action)
-
-### Lua Example
-`local integerValue = common_landing_action(m, animation, airAction)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| animation | `integer` |
-| airAction | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`u32 common_landing_action(struct MarioState *m, s16 animation, u32 airAction);`
-
-[:arrow_up_small:](#)
-
-
-
-## [common_slide_action](#common_slide_action)
-
-### Lua Example
-`common_slide_action(m, endAction, airAction, animation)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| endAction | `integer` |
-| airAction | `integer` |
-| animation | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void common_slide_action(struct MarioState *m, u32 endAction, u32 airAction, s32 animation);`
-
-[:arrow_up_small:](#)
-
-
-
-## [common_slide_action_with_jump](#common_slide_action_with_jump)
-
-### Lua Example
-`local integerValue = common_slide_action_with_jump(m, stopAction, jumpAction, airAction, animation)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| stopAction | `integer` |
-| jumpAction | `integer` |
-| airAction | `integer` |
-| animation | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 common_slide_action_with_jump(struct MarioState *m, u32 stopAction, u32 jumpAction, u32 airAction, s32 animation);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_execute_moving_action](#mario_execute_moving_action)
-
-### Lua Example
-`local integerValue = mario_execute_moving_action(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 mario_execute_moving_action(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [play_step_sound](#play_step_sound)
-
-### Lua Example
-`play_step_sound(m, frame1, frame2)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| frame1 | `integer` |
-| frame2 | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void play_step_sound(struct MarioState *m, s16 frame1, s16 frame2);`
-
-[:arrow_up_small:](#)
-
-
-
-## [push_or_sidle_wall](#push_or_sidle_wall)
-
-### Lua Example
-`push_or_sidle_wall(m, startPos)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| startPos | [Vec3f](structs.md#Vec3f) |
-
-### Returns
-- None
-
-### C Prototype
-`void push_or_sidle_wall(struct MarioState *m, Vec3f startPos);`
-
-[:arrow_up_small:](#)
-
-
-
-## [quicksand_jump_land_action](#quicksand_jump_land_action)
-
-### Lua Example
-`local integerValue = quicksand_jump_land_action(m, animation1, animation2, endAction, airAction)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| animation1 | `integer` |
-| animation2 | `integer` |
-| endAction | `integer` |
-| airAction | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 quicksand_jump_land_action(struct MarioState *m, s32 animation1, s32 animation2, u32 endAction, u32 airAction);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_triple_jump_action](#set_triple_jump_action)
-
-### Lua Example
-`local integerValue = set_triple_jump_action(m, action, actionArg)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| action | `integer` |
-| actionArg | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 set_triple_jump_action(struct MarioState *m, UNUSED u32 action, UNUSED u32 actionArg);`
-
-[:arrow_up_small:](#)
-
-
-
-## [should_begin_sliding](#should_begin_sliding)
-
-### Lua Example
-`local integerValue = should_begin_sliding(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 should_begin_sliding(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [slide_bonk](#slide_bonk)
-
-### Lua Example
-`slide_bonk(m, fastAction, slowAction)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| fastAction | `integer` |
-| slowAction | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void slide_bonk(struct MarioState *m, u32 fastAction, u32 slowAction);`
-
-[:arrow_up_small:](#)
-
-
-
-## [stomach_slide_action](#stomach_slide_action)
-
-### Lua Example
-`local integerValue = stomach_slide_action(m, stopAction, airAction, animation)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| stopAction | `integer` |
-| airAction | `integer` |
-| animation | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 stomach_slide_action(struct MarioState *m, u32 stopAction, u32 airAction, s32 animation);`
-
-[:arrow_up_small:](#)
-
-
-
-## [tilt_body_butt_slide](#tilt_body_butt_slide)
-
-### Lua Example
-`tilt_body_butt_slide(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void tilt_body_butt_slide(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [tilt_body_ground_shell](#tilt_body_ground_shell)
-
-### Lua Example
-`tilt_body_ground_shell(m, startYaw)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| startYaw | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void tilt_body_ground_shell(struct MarioState *m, s16 startYaw);`
-
-[:arrow_up_small:](#)
-
-
-
-## [tilt_body_running](#tilt_body_running)
-
-### Lua Example
-`local integerValue = tilt_body_running(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s16 tilt_body_running(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [tilt_body_walking](#tilt_body_walking)
-
-### Lua Example
-`tilt_body_walking(m, startYaw)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| startYaw | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void tilt_body_walking(struct MarioState *m, s16 startYaw);`
-
-[:arrow_up_small:](#)
-
-
-
-## [update_decelerating_speed](#update_decelerating_speed)
-
-### Lua Example
-`local integerValue = update_decelerating_speed(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 update_decelerating_speed(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [update_shell_speed](#update_shell_speed)
-
-### Lua Example
-`update_shell_speed(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void update_shell_speed(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [update_sliding](#update_sliding)
-
-### Lua Example
-`local integerValue = update_sliding(m, stopSpeed)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| stopSpeed | `number` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 update_sliding(struct MarioState *m, f32 stopSpeed);`
-
-[:arrow_up_small:](#)
-
-
-
-## [update_sliding_angle](#update_sliding_angle)
-
-### Lua Example
-`update_sliding_angle(m, accel, lossFactor)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| accel | `number` |
-| lossFactor | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void update_sliding_angle(struct MarioState *m, f32 accel, f32 lossFactor);`
-
-[:arrow_up_small:](#)
-
-
-
-## [update_walking_speed](#update_walking_speed)
-
-### Lua Example
-`update_walking_speed(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void update_walking_speed(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from mario_actions_object.c
-
-
-
-
-## [animated_stationary_ground_step](#animated_stationary_ground_step)
-
-### Lua Example
-`animated_stationary_ground_step(m, animation, endAction)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| animation | `integer` |
-| endAction | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void animated_stationary_ground_step(struct MarioState *m, s32 animation, u32 endAction);`
-
-[:arrow_up_small:](#)
-
-
-
-## [check_common_object_cancels](#check_common_object_cancels)
-
-### Lua Example
-`local integerValue = check_common_object_cancels(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 check_common_object_cancels(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_execute_object_action](#mario_execute_object_action)
-
-### Lua Example
-`local integerValue = mario_execute_object_action(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 mario_execute_object_action(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_update_punch_sequence](#mario_update_punch_sequence)
-
-### Lua Example
-`local integerValue = mario_update_punch_sequence(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 mario_update_punch_sequence(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from mario_actions_stationary.c
-
-
-
-
-## [check_common_hold_idle_cancels](#check_common_hold_idle_cancels)
-
-### Lua Example
-`local integerValue = check_common_hold_idle_cancels(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 check_common_hold_idle_cancels(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [check_common_idle_cancels](#check_common_idle_cancels)
-
-### Lua Example
-`local integerValue = check_common_idle_cancels(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 check_common_idle_cancels(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [check_common_landing_cancels](#check_common_landing_cancels)
-
-### Lua Example
-`local integerValue = check_common_landing_cancels(m, action)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| action | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 check_common_landing_cancels(struct MarioState *m, u32 action);`
-
-[:arrow_up_small:](#)
-
-
-
-## [check_common_stationary_cancels](#check_common_stationary_cancels)
-
-### Lua Example
-`local integerValue = check_common_stationary_cancels(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 check_common_stationary_cancels(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [landing_step](#landing_step)
-
-### Lua Example
-`local integerValue = landing_step(m, arg1, action)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| arg1 | `integer` |
-| action | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 landing_step(struct MarioState *m, s32 arg1, u32 action);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_execute_stationary_action](#mario_execute_stationary_action)
-
-### Lua Example
-`local integerValue = mario_execute_stationary_action(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 mario_execute_stationary_action(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [play_anim_sound](#play_anim_sound)
-
-### Lua Example
-`play_anim_sound(m, actionState, animFrame, sound)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| actionState | `integer` |
-| animFrame | `integer` |
-| sound | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void play_anim_sound(struct MarioState *m, u32 actionState, s32 animFrame, u32 sound);`
-
-[:arrow_up_small:](#)
-
-
-
-## [stopping_step](#stopping_step)
-
-### Lua Example
-`stopping_step(m, animID, action)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| animID | `integer` |
-| action | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void stopping_step(struct MarioState *m, s32 animID, u32 action);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from mario_actions_submerged.c
-
-
-
-
-## [apply_water_current](#apply_water_current)
-
-### Lua Example
-`apply_water_current(m, step)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| step | [Vec3f](structs.md#Vec3f) |
-
-### Returns
-- None
-
-### C Prototype
-`void apply_water_current(struct MarioState *m, Vec3f step);`
-
-[:arrow_up_small:](#)
-
-
-
-## [float_surface_gfx](#float_surface_gfx)
-
-### Lua Example
-`float_surface_gfx(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void float_surface_gfx(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_execute_submerged_action](#mario_execute_submerged_action)
-
-### Lua Example
-`local integerValue = mario_execute_submerged_action(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 mario_execute_submerged_action(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [perform_water_full_step](#perform_water_full_step)
-
-### Lua Example
-`local integerValue = perform_water_full_step(m, nextPos)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| nextPos | [Vec3f](structs.md#Vec3f) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`u32 perform_water_full_step(struct MarioState *m, Vec3f nextPos);`
-
-[:arrow_up_small:](#)
-
-
-
-## [perform_water_step](#perform_water_step)
-
-### Lua Example
-`local integerValue = perform_water_step(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`u32 perform_water_step(struct MarioState *m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_swimming_at_surface_particles](#set_swimming_at_surface_particles)
-
-### Lua Example
-`set_swimming_at_surface_particles(m, particleFlag)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| particleFlag | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void set_swimming_at_surface_particles(struct MarioState *m, u32 particleFlag);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from mario_misc.h
-
-
-
-
-## [bhv_toad_message_init](#bhv_toad_message_init)
-
-### Lua Example
-`bhv_toad_message_init()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void bhv_toad_message_init(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [bhv_toad_message_loop](#bhv_toad_message_loop)
-
-### Lua Example
-`bhv_toad_message_loop()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void bhv_toad_message_loop(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [bhv_unlock_door_star_init](#bhv_unlock_door_star_init)
-
-### Lua Example
-`bhv_unlock_door_star_init()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void bhv_unlock_door_star_init(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [bhv_unlock_door_star_loop](#bhv_unlock_door_star_loop)
-
-### Lua Example
-`bhv_unlock_door_star_loop()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void bhv_unlock_door_star_loop(void);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from mario_step.h
-
-
-
-
-## [get_additive_y_vel_for_jumps](#get_additive_y_vel_for_jumps)
-
-### Lua Example
-`local numberValue = get_additive_y_vel_for_jumps()`
-
-### Parameters
-- None
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 get_additive_y_vel_for_jumps(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [init_bully_collision_data](#init_bully_collision_data)
-
-### Lua Example
-`init_bully_collision_data(data, posX, posZ, forwardVel, yaw, conversionRatio, radius)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| data | [BullyCollisionData](structs.md#BullyCollisionData) |
-| posX | `number` |
-| posZ | `number` |
-| forwardVel | `number` |
-| yaw | `integer` |
-| conversionRatio | `number` |
-| radius | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void init_bully_collision_data(struct BullyCollisionData *data, f32 posX, f32 posZ, f32 forwardVel, s16 yaw, f32 conversionRatio, f32 radius);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_bonk_reflection](#mario_bonk_reflection)
-
-### Lua Example
-`mario_bonk_reflection(arg0, arg1)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| arg0 | [MarioState](structs.md#MarioState) |
-| arg1 | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void mario_bonk_reflection(struct MarioState *, u32);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_push_off_steep_floor](#mario_push_off_steep_floor)
-
-### Lua Example
-`local integerValue = mario_push_off_steep_floor(arg0, arg1, arg2)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| arg0 | [MarioState](structs.md#MarioState) |
-| arg1 | `integer` |
-| arg2 | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`u32 mario_push_off_steep_floor(struct MarioState *, u32, u32);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_update_moving_sand](#mario_update_moving_sand)
-
-### Lua Example
-`local integerValue = mario_update_moving_sand(arg0)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| arg0 | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`u32 mario_update_moving_sand(struct MarioState *);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_update_quicksand](#mario_update_quicksand)
-
-### Lua Example
-`local integerValue = mario_update_quicksand(arg0, arg1)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| arg0 | [MarioState](structs.md#MarioState) |
-| arg1 | `number` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`u32 mario_update_quicksand(struct MarioState *, f32);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_update_windy_ground](#mario_update_windy_ground)
-
-### Lua Example
-`local integerValue = mario_update_windy_ground(arg0)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| arg0 | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`u32 mario_update_windy_ground(struct MarioState *);`
-
-[:arrow_up_small:](#)
-
-
-
-## [perform_air_step](#perform_air_step)
-
-### Lua Example
-`local integerValue = perform_air_step(arg0, arg1)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| arg0 | [MarioState](structs.md#MarioState) |
-| arg1 | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 perform_air_step(struct MarioState *, u32);`
-
-[:arrow_up_small:](#)
-
-
-
-## [perform_ground_step](#perform_ground_step)
-
-### Lua Example
-`local integerValue = perform_ground_step(arg0)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| arg0 | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 perform_ground_step(struct MarioState *);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_vel_from_pitch_and_yaw](#set_vel_from_pitch_and_yaw)
-
-### Lua Example
-`set_vel_from_pitch_and_yaw(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void set_vel_from_pitch_and_yaw(struct MarioState* m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [stationary_ground_step](#stationary_ground_step)
-
-### Lua Example
-`local integerValue = stationary_ground_step(arg0)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| arg0 | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 stationary_ground_step(struct MarioState *);`
-
-[:arrow_up_small:](#)
-
-
-
-## [stop_and_set_height_to_floor](#stop_and_set_height_to_floor)
-
-### Lua Example
-`stop_and_set_height_to_floor(arg0)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| arg0 | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void stop_and_set_height_to_floor(struct MarioState *);`
+### Description
+No description available.
[:arrow_up_small:](#)
---
-[< prev](functions-2.md) | [1](functions.md) | [2](functions-2.md) | 3 | [4](functions-4.md) | [5](functions-5.md) | [next >](functions-4.md)]
+[< prev](functions-2.md) | [1](functions.md) | [2](functions-2.md) | 3 | [4](functions-4.md) | [5](functions-5.md) | [6](functions-6.md) | [next >](functions-4.md)]
diff --git a/docs/lua/functions-4.md b/docs/lua/functions-4.md
index 1139d831c..730d0c7c1 100644
--- a/docs/lua/functions-4.md
+++ b/docs/lua/functions-4.md
@@ -2,9 +2,1660 @@
---
-[< prev](functions-3.md) | [1](functions.md) | [2](functions-2.md) | [3](functions-3.md) | 4 | [5](functions-5.md) | [next >](functions-5.md)]
+[< prev](functions-3.md) | [1](functions.md) | [2](functions-2.md) | [3](functions-3.md) | 4 | [5](functions-5.md) | [6](functions-6.md) | [next >](functions-5.md)]
+---
+# functions from mario_actions_moving.c
+
+
+
+
+## [align_with_floor](#align_with_floor)
+
+### Lua Example
+`align_with_floor(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void align_with_floor(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [analog_stick_held_back](#analog_stick_held_back)
+
+### Lua Example
+`local integerValue = analog_stick_held_back(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 analog_stick_held_back(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [anim_and_audio_for_heavy_walk](#anim_and_audio_for_heavy_walk)
+
+### Lua Example
+`anim_and_audio_for_heavy_walk(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void anim_and_audio_for_heavy_walk(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [anim_and_audio_for_hold_walk](#anim_and_audio_for_hold_walk)
+
+### Lua Example
+`anim_and_audio_for_hold_walk(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void anim_and_audio_for_hold_walk(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [anim_and_audio_for_walk](#anim_and_audio_for_walk)
+
+### Lua Example
+`anim_and_audio_for_walk(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void anim_and_audio_for_walk(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [apply_landing_accel](#apply_landing_accel)
+
+### Lua Example
+`local integerValue = apply_landing_accel(m, frictionFactor)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| frictionFactor | `number` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 apply_landing_accel(struct MarioState *m, f32 frictionFactor);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [apply_slope_accel](#apply_slope_accel)
+
+### Lua Example
+`apply_slope_accel(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void apply_slope_accel(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [apply_slope_decel](#apply_slope_decel)
+
+### Lua Example
+`local integerValue = apply_slope_decel(m, decelCoef)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| decelCoef | `number` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 apply_slope_decel(struct MarioState *m, f32 decelCoef);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [begin_braking_action](#begin_braking_action)
+
+### Lua Example
+`local integerValue = begin_braking_action(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 begin_braking_action(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [begin_walking_action](#begin_walking_action)
+
+### Lua Example
+`local integerValue = begin_walking_action(m, forwardVel, action, actionArg)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| forwardVel | `number` |
+| action | `integer` |
+| actionArg | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 begin_walking_action(struct MarioState *m, f32 forwardVel, u32 action, u32 actionArg);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [check_common_moving_cancels](#check_common_moving_cancels)
+
+### Lua Example
+`local integerValue = check_common_moving_cancels(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 check_common_moving_cancels(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [check_ground_dive_or_punch](#check_ground_dive_or_punch)
+
+### Lua Example
+`local integerValue = check_ground_dive_or_punch(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 check_ground_dive_or_punch(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [check_ledge_climb_down](#check_ledge_climb_down)
+
+### Lua Example
+`check_ledge_climb_down(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void check_ledge_climb_down(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [common_ground_knockback_action](#common_ground_knockback_action)
+
+### Lua Example
+`local integerValue = common_ground_knockback_action(m, animation, arg2, arg3, arg4)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| animation | `integer` |
+| arg2 | `integer` |
+| arg3 | `integer` |
+| arg4 | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 common_ground_knockback_action(struct MarioState *m, s32 animation, s32 arg2, s32 arg3, s32 arg4);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [common_landing_action](#common_landing_action)
+
+### Lua Example
+`local integerValue = common_landing_action(m, animation, airAction)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| animation | `integer` |
+| airAction | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`u32 common_landing_action(struct MarioState *m, s16 animation, u32 airAction);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [common_slide_action](#common_slide_action)
+
+### Lua Example
+`common_slide_action(m, endAction, airAction, animation)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| endAction | `integer` |
+| airAction | `integer` |
+| animation | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void common_slide_action(struct MarioState *m, u32 endAction, u32 airAction, s32 animation);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [common_slide_action_with_jump](#common_slide_action_with_jump)
+
+### Lua Example
+`local integerValue = common_slide_action_with_jump(m, stopAction, jumpAction, airAction, animation)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| stopAction | `integer` |
+| jumpAction | `integer` |
+| airAction | `integer` |
+| animation | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 common_slide_action_with_jump(struct MarioState *m, u32 stopAction, u32 jumpAction, u32 airAction, s32 animation);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_execute_moving_action](#mario_execute_moving_action)
+
+### Lua Example
+`local integerValue = mario_execute_moving_action(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 mario_execute_moving_action(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [play_step_sound](#play_step_sound)
+
+### Lua Example
+`play_step_sound(m, frame1, frame2)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| frame1 | `integer` |
+| frame2 | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void play_step_sound(struct MarioState *m, s16 frame1, s16 frame2);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [push_or_sidle_wall](#push_or_sidle_wall)
+
+### Lua Example
+`push_or_sidle_wall(m, startPos)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| startPos | [Vec3f](structs.md#Vec3f) |
+
+### Returns
+- None
+
+### C Prototype
+`void push_or_sidle_wall(struct MarioState *m, Vec3f startPos);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [quicksand_jump_land_action](#quicksand_jump_land_action)
+
+### Lua Example
+`local integerValue = quicksand_jump_land_action(m, animation1, animation2, endAction, airAction)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| animation1 | `integer` |
+| animation2 | `integer` |
+| endAction | `integer` |
+| airAction | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 quicksand_jump_land_action(struct MarioState *m, s32 animation1, s32 animation2, u32 endAction, u32 airAction);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_triple_jump_action](#set_triple_jump_action)
+
+### Lua Example
+`local integerValue = set_triple_jump_action(m, action, actionArg)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| action | `integer` |
+| actionArg | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 set_triple_jump_action(struct MarioState *m, UNUSED u32 action, UNUSED u32 actionArg);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [should_begin_sliding](#should_begin_sliding)
+
+### Lua Example
+`local integerValue = should_begin_sliding(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 should_begin_sliding(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [slide_bonk](#slide_bonk)
+
+### Lua Example
+`slide_bonk(m, fastAction, slowAction)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| fastAction | `integer` |
+| slowAction | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void slide_bonk(struct MarioState *m, u32 fastAction, u32 slowAction);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [stomach_slide_action](#stomach_slide_action)
+
+### Lua Example
+`local integerValue = stomach_slide_action(m, stopAction, airAction, animation)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| stopAction | `integer` |
+| airAction | `integer` |
+| animation | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 stomach_slide_action(struct MarioState *m, u32 stopAction, u32 airAction, s32 animation);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [tilt_body_butt_slide](#tilt_body_butt_slide)
+
+### Lua Example
+`tilt_body_butt_slide(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void tilt_body_butt_slide(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [tilt_body_ground_shell](#tilt_body_ground_shell)
+
+### Lua Example
+`tilt_body_ground_shell(m, startYaw)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| startYaw | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void tilt_body_ground_shell(struct MarioState *m, s16 startYaw);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [tilt_body_running](#tilt_body_running)
+
+### Lua Example
+`local integerValue = tilt_body_running(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s16 tilt_body_running(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [tilt_body_walking](#tilt_body_walking)
+
+### Lua Example
+`tilt_body_walking(m, startYaw)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| startYaw | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void tilt_body_walking(struct MarioState *m, s16 startYaw);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [update_decelerating_speed](#update_decelerating_speed)
+
+### Lua Example
+`local integerValue = update_decelerating_speed(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 update_decelerating_speed(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [update_shell_speed](#update_shell_speed)
+
+### Lua Example
+`update_shell_speed(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void update_shell_speed(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [update_sliding](#update_sliding)
+
+### Lua Example
+`local integerValue = update_sliding(m, stopSpeed)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| stopSpeed | `number` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 update_sliding(struct MarioState *m, f32 stopSpeed);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [update_sliding_angle](#update_sliding_angle)
+
+### Lua Example
+`update_sliding_angle(m, accel, lossFactor)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| accel | `number` |
+| lossFactor | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void update_sliding_angle(struct MarioState *m, f32 accel, f32 lossFactor);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [update_walking_speed](#update_walking_speed)
+
+### Lua Example
+`update_walking_speed(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void update_walking_speed(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+---
+# functions from mario_actions_object.c
+
+
+
+
+## [animated_stationary_ground_step](#animated_stationary_ground_step)
+
+### Lua Example
+`animated_stationary_ground_step(m, animation, endAction)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| animation | `integer` |
+| endAction | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void animated_stationary_ground_step(struct MarioState *m, s32 animation, u32 endAction);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [check_common_object_cancels](#check_common_object_cancels)
+
+### Lua Example
+`local integerValue = check_common_object_cancels(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 check_common_object_cancels(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_execute_object_action](#mario_execute_object_action)
+
+### Lua Example
+`local integerValue = mario_execute_object_action(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 mario_execute_object_action(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_update_punch_sequence](#mario_update_punch_sequence)
+
+### Lua Example
+`local integerValue = mario_update_punch_sequence(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 mario_update_punch_sequence(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+---
+# functions from mario_actions_stationary.c
+
+
+
+
+## [check_common_hold_idle_cancels](#check_common_hold_idle_cancels)
+
+### Lua Example
+`local integerValue = check_common_hold_idle_cancels(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 check_common_hold_idle_cancels(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [check_common_idle_cancels](#check_common_idle_cancels)
+
+### Lua Example
+`local integerValue = check_common_idle_cancels(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 check_common_idle_cancels(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [check_common_landing_cancels](#check_common_landing_cancels)
+
+### Lua Example
+`local integerValue = check_common_landing_cancels(m, action)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| action | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 check_common_landing_cancels(struct MarioState *m, u32 action);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [check_common_stationary_cancels](#check_common_stationary_cancels)
+
+### Lua Example
+`local integerValue = check_common_stationary_cancels(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 check_common_stationary_cancels(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [landing_step](#landing_step)
+
+### Lua Example
+`local integerValue = landing_step(m, arg1, action)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| arg1 | `integer` |
+| action | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 landing_step(struct MarioState *m, s32 arg1, u32 action);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_execute_stationary_action](#mario_execute_stationary_action)
+
+### Lua Example
+`local integerValue = mario_execute_stationary_action(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 mario_execute_stationary_action(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [play_anim_sound](#play_anim_sound)
+
+### Lua Example
+`play_anim_sound(m, actionState, animFrame, sound)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| actionState | `integer` |
+| animFrame | `integer` |
+| sound | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void play_anim_sound(struct MarioState *m, u32 actionState, s32 animFrame, u32 sound);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [stopping_step](#stopping_step)
+
+### Lua Example
+`stopping_step(m, animID, action)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| animID | `integer` |
+| action | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void stopping_step(struct MarioState *m, s32 animID, u32 action);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+---
+# functions from mario_actions_submerged.c
+
+
+
+
+## [apply_water_current](#apply_water_current)
+
+### Lua Example
+`apply_water_current(m, step)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| step | [Vec3f](structs.md#Vec3f) |
+
+### Returns
+- None
+
+### C Prototype
+`void apply_water_current(struct MarioState *m, Vec3f step);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [float_surface_gfx](#float_surface_gfx)
+
+### Lua Example
+`float_surface_gfx(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void float_surface_gfx(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_execute_submerged_action](#mario_execute_submerged_action)
+
+### Lua Example
+`local integerValue = mario_execute_submerged_action(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 mario_execute_submerged_action(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [perform_water_full_step](#perform_water_full_step)
+
+### Lua Example
+`local integerValue = perform_water_full_step(m, nextPos)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| nextPos | [Vec3f](structs.md#Vec3f) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`u32 perform_water_full_step(struct MarioState *m, Vec3f nextPos);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [perform_water_step](#perform_water_step)
+
+### Lua Example
+`local integerValue = perform_water_step(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`u32 perform_water_step(struct MarioState *m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_swimming_at_surface_particles](#set_swimming_at_surface_particles)
+
+### Lua Example
+`set_swimming_at_surface_particles(m, particleFlag)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| particleFlag | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void set_swimming_at_surface_particles(struct MarioState *m, u32 particleFlag);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+---
+# functions from mario_misc.h
+
+
+
+
+## [bhv_toad_message_init](#bhv_toad_message_init)
+
+### Lua Example
+`bhv_toad_message_init()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void bhv_toad_message_init(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [bhv_toad_message_loop](#bhv_toad_message_loop)
+
+### Lua Example
+`bhv_toad_message_loop()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void bhv_toad_message_loop(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [bhv_unlock_door_star_init](#bhv_unlock_door_star_init)
+
+### Lua Example
+`bhv_unlock_door_star_init()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void bhv_unlock_door_star_init(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [bhv_unlock_door_star_loop](#bhv_unlock_door_star_loop)
+
+### Lua Example
+`bhv_unlock_door_star_loop()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void bhv_unlock_door_star_loop(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+---
+# functions from mario_step.h
+
+
+
+
+## [get_additive_y_vel_for_jumps](#get_additive_y_vel_for_jumps)
+
+### Lua Example
+`local numberValue = get_additive_y_vel_for_jumps()`
+
+### Parameters
+- None
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 get_additive_y_vel_for_jumps(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [init_bully_collision_data](#init_bully_collision_data)
+
+### Lua Example
+`init_bully_collision_data(data, posX, posZ, forwardVel, yaw, conversionRatio, radius)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| data | [BullyCollisionData](structs.md#BullyCollisionData) |
+| posX | `number` |
+| posZ | `number` |
+| forwardVel | `number` |
+| yaw | `integer` |
+| conversionRatio | `number` |
+| radius | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void init_bully_collision_data(struct BullyCollisionData *data, f32 posX, f32 posZ, f32 forwardVel, s16 yaw, f32 conversionRatio, f32 radius);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_bonk_reflection](#mario_bonk_reflection)
+
+### Lua Example
+`mario_bonk_reflection(arg0, arg1)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| arg0 | [MarioState](structs.md#MarioState) |
+| arg1 | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void mario_bonk_reflection(struct MarioState *, u32);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_push_off_steep_floor](#mario_push_off_steep_floor)
+
+### Lua Example
+`local integerValue = mario_push_off_steep_floor(arg0, arg1, arg2)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| arg0 | [MarioState](structs.md#MarioState) |
+| arg1 | `integer` |
+| arg2 | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`u32 mario_push_off_steep_floor(struct MarioState *, u32, u32);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_update_moving_sand](#mario_update_moving_sand)
+
+### Lua Example
+`local integerValue = mario_update_moving_sand(arg0)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| arg0 | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`u32 mario_update_moving_sand(struct MarioState *);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_update_quicksand](#mario_update_quicksand)
+
+### Lua Example
+`local integerValue = mario_update_quicksand(arg0, arg1)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| arg0 | [MarioState](structs.md#MarioState) |
+| arg1 | `number` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`u32 mario_update_quicksand(struct MarioState *, f32);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_update_windy_ground](#mario_update_windy_ground)
+
+### Lua Example
+`local integerValue = mario_update_windy_ground(arg0)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| arg0 | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`u32 mario_update_windy_ground(struct MarioState *);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [perform_air_step](#perform_air_step)
+
+### Lua Example
+`local integerValue = perform_air_step(arg0, arg1)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| arg0 | [MarioState](structs.md#MarioState) |
+| arg1 | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 perform_air_step(struct MarioState *, u32);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [perform_ground_step](#perform_ground_step)
+
+### Lua Example
+`local integerValue = perform_ground_step(arg0)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| arg0 | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 perform_ground_step(struct MarioState *);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_vel_from_pitch_and_yaw](#set_vel_from_pitch_and_yaw)
+
+### Lua Example
+`set_vel_from_pitch_and_yaw(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void set_vel_from_pitch_and_yaw(struct MarioState* m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [stationary_ground_step](#stationary_ground_step)
+
+### Lua Example
+`local integerValue = stationary_ground_step(arg0)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| arg0 | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 stationary_ground_step(struct MarioState *);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [stop_and_set_height_to_floor](#stop_and_set_height_to_floor)
+
+### Lua Example
+`stop_and_set_height_to_floor(arg0)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| arg0 | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void stop_and_set_height_to_floor(struct MarioState *);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
---
# functions from math_util.h
@@ -28,6 +1679,9 @@
### C Prototype
`void anim_spline_init(struct MarioState* m, Vec4s *keyFrames);`
+### Description
+Initializes a spline-based animation for the `MarioState` structure `m` using the provided array of 3D signed-integer vectors `keyFrames`. This sets up the animation so that it can be advanced by polling.
+
[:arrow_up_small:](#)
@@ -49,6 +1703,9 @@
### C Prototype
`s32 anim_spline_poll(struct MarioState* m, Vec3f result);`
+### Description
+Advances the spline-based animation associated with `m` and stores the current interpolated position in `result`. It returns the animation's status, allowing the caller to determine if the animation is ongoing or has completed.
+
[:arrow_up_small:](#)
@@ -72,6 +1729,9 @@
### C Prototype
`f32 approach_f32(f32 current, f32 target, f32 inc, f32 dec);`
+### Description
+Similar to `approach_s32`, but operates on floating-point numbers. It moves `current` toward `target` by increasing it by `inc` if below target, or decreasing it by `dec` if above target, creating a smooth interpolation.
+
[:arrow_up_small:](#)
@@ -95,6 +1755,9 @@
### C Prototype
`s32 approach_s32(s32 current, s32 target, s32 inc, s32 dec);`
+### Description
+Gradually moves an integer `current` value toward a `target` value, increasing it by `inc` if it is too low, or decreasing it by `dec` if it is too high. This is often used for smooth transitions or animations.
+
[:arrow_up_small:](#)
@@ -116,6 +1779,9 @@
### C Prototype
`s16 atan2s(f32 y, f32 x);`
+### Description
+Computes the arctangent of y/x and returns the angle as a signed 16-bit integer, typically representing a direction in the SM64 fixed-point angle format. This can be used to find an angle between x and y coordinates.
+
[:arrow_up_small:](#)
@@ -136,6 +1802,9 @@
### C Prototype
`f32 coss(s16 sm64Angle);`
+### Description
+Calculates the cosine of the given angle, where the angle is specified as a signed 16-bit integer representing a fixed-point "SM64 angle". The function returns a floating-point value corresponding to cos(angle).
+
[:arrow_up_small:](#)
@@ -159,6 +1828,9 @@
### C Prototype
`void *find_vector_perpendicular_to_plane(Vec3f dest, Vec3f a, Vec3f b, Vec3f c);`
+### Description
+Determines a vector that is perpendicular (normal) to the plane defined by three given 3D floating-point points `a`, `b`, and `c`. The resulting perpendicular vector is stored in `dest`.
+
[:arrow_up_small:](#)
@@ -181,6 +1853,9 @@
### C Prototype
`void get_pos_from_transform_mtx(Vec3f dest, Mat4 objMtx, Mat4 camMtx);`
+### Description
+Extracts the position (translation component) from the transformation matrix `objMtx` relative to the coordinate system defined by `camMtx` and stores that 3D position in `dest`. This can be used to get the object's coordinates in camera space.
+
[:arrow_up_small:](#)
@@ -204,6 +1879,9 @@
### C Prototype
`void mtxf_align_terrain_normal(Mat4 dest, Vec3f upDir, Vec3f pos, s16 yaw);`
+### Description
+Aligns `dest` so that it fits the orientation of a terrain surface defined by its normal vector `upDir`. The transformation is positioned at `pos` and oriented with a given `yaw`. This is often used to make objects sit naturally on uneven ground.
+
[:arrow_up_small:](#)
@@ -227,6 +1905,9 @@
### C Prototype
`void mtxf_align_terrain_triangle(Mat4 mtx, Vec3f pos, s16 yaw, f32 radius);`
+### Description
+Aligns `mtx` to fit onto a terrain triangle at `pos`, applying a given `yaw` and scaling by `radius`. This helps position objects so they match the orientation of the terrain's surface.
+
[:arrow_up_small:](#)
@@ -250,6 +1931,9 @@
### C Prototype
`void mtxf_billboard(Mat4 dest, Mat4 mtx, Vec3f position, s16 angle);`
+### Description
+Transforms a 4x4 floating-point matrix `mtx` into a "billboard" oriented toward the camera or a given direction. The billboard is placed at `position` and rotated by `angle`. This is useful for objects that should always face the viewer.
+
[:arrow_up_small:](#)
@@ -271,6 +1955,9 @@
### C Prototype
`void mtxf_copy(Mat4 dest, Mat4 src);`
+### Description
+Copies the 4x4 floating-point matrix `src` into `dest`. After this operation, `dest` contains the same matrix values as `src`.
+
[:arrow_up_small:](#)
@@ -294,6 +1981,9 @@
### C Prototype
`void mtxf_cylboard(Mat4 dest, Mat4 mtx, Vec3f position, s16 angle);`
+### Description
+Creates a "cylindrical billboard" transformation from the 4x4 matrix `mtx` placed at `position` with a given `angle`. Unlike a full billboard, this might allow rotation around one axis while still facing the viewer on others.
+
[:arrow_up_small:](#)
@@ -314,6 +2004,9 @@
### C Prototype
`void mtxf_identity(Mat4 mtx);`
+### Description
+Sets the 4x4 floating-point matrix `mtx` to the identity matrix. The identity matrix leaves points unchanged when they are transformed by it which is useful for matrix math.
+
[:arrow_up_small:](#)
@@ -335,6 +2028,9 @@
### C Prototype
`void mtxf_inverse(Mat4 dest, Mat4 src);`
+### Description
+Inverts the 4x4 floating-point matrix `src` and stores the inverse in `dest`. Applying the inverse transformation undoes whatever `src` did, returning points back to their original coordinate space.
+
[:arrow_up_small:](#)
@@ -358,6 +2054,9 @@
### C Prototype
`void mtxf_lookat(Mat4 mtx, Vec3f from, Vec3f to, s16 roll);`
+### Description
+Adjusts the 4x4 floating-point matrix `mtx` so that it represents a viewing transformation looking from the point `from` toward the point `to`, with a given roll angle. This creates a view matrix oriented toward `to`.
+
[:arrow_up_small:](#)
@@ -380,6 +2079,9 @@
### C Prototype
`void mtxf_mul(Mat4 dest, Mat4 a, Mat4 b);`
+### Description
+Multiplies two 4x4 floating-point matrices `a` and `b` (in that order), storing the product in `dest`. This can be used for combining multiple transformations into one.
+
[:arrow_up_small:](#)
@@ -401,6 +2103,9 @@
### C Prototype
`void mtxf_mul_vec3s(Mat4 mtx, Vec3s b);`
+### Description
+Multiplies the 4x4 floating-point matrix `mtx` by a 3D signed-integer vector `b`, potentially interpreting `b` as angles or translations depending on usage, and modifies `mtx` accordingly.
+
[:arrow_up_small:](#)
@@ -422,6 +2127,9 @@
### C Prototype
`void mtxf_rotate_xy(Mtx *mtx, s16 angle);`
+### Description
+Rotates the matrix `mtx` in the XY plane by the given `angle`. Rotating in the XY plane typically means pivoting around the Z axis.
+
[:arrow_up_small:](#)
@@ -444,6 +2152,9 @@
### C Prototype
`void mtxf_rotate_xyz_and_translate(Mat4 dest, Vec3f b, Vec3s c);`
+### Description
+Rotates `dest` using angles in XYZ order, and then translates it by the 3D floating-point vector `b` and applies the rotations described by `c`. This sets up `dest` with a specific orientation and position in space.
+
[:arrow_up_small:](#)
@@ -466,6 +2177,9 @@
### C Prototype
`void mtxf_rotate_zxy_and_translate(Mat4 dest, Vec3f translate, Vec3s rotate);`
+### Description
+Rotates `dest` according to the angles in `rotate` using ZXY order, and then translates it by the 3D floating-point vector `translate`. This effectively positions and orients `dest` in 3D space.
+
[:arrow_up_small:](#)
@@ -488,6 +2202,9 @@
### C Prototype
`void mtxf_scale_vec3f(Mat4 dest, Mat4 mtx, Vec3f s);`
+### Description
+Scales the 4x4 floating-point matrix `mtx` by the scaling factors found in the 3D floating-point vector `s`, and stores the result in `dest`. This enlarges or shrinks objects in 3D space.
+
[:arrow_up_small:](#)
@@ -509,6 +2226,9 @@
### C Prototype
`void mtxf_to_mtx(Mtx *dest, Mat4 src);`
+### Description
+Converts the floating-point matrix `src` into a fixed-point (integer-based) matrix suitable for the `Mtx` format, and stores the result in `dest`.
+
[:arrow_up_small:](#)
@@ -530,6 +2250,9 @@
### C Prototype
`void mtxf_translate(Mat4 dest, Vec3f b);`
+### Description
+Applies a translation to the 4x4 floating-point matrix `dest` by adding the coordinates in the 3D floating-point vector `b`. This shifts any transformed point by `b`.
+
[:arrow_up_small:](#)
@@ -551,6 +2274,9 @@
### C Prototype
`f32 not_zero(f32 value, f32 replacement);`
+### Description
+Checks if `value` is zero. If not, it returns `value`. If it is zero, it returns the `replacement` value. This function ensures that a zero value can be substituted with a fallback value if needed.
+
[:arrow_up_small:](#)
@@ -571,6 +2297,9 @@
### C Prototype
`f32 sins(s16 sm64Angle);`
+### Description
+Calculates the sine of the given angle, where the angle is specified as a signed 16-bit integer representing a fixed-point "SM64 angle". This function returns a floating-point result corresponding to sin(angle).
+
[:arrow_up_small:](#)
@@ -594,6 +2323,9 @@
### C Prototype
`void spline_get_weights(struct MarioState* m, Vec4f result, f32 t, UNUSED s32 c);`
+### Description
+Computes spline interpolation weights for a given parameter `t` and stores these weights in `result`. This is used in spline-based animations to find intermediate positions between keyframes.
+
[:arrow_up_small:](#)
@@ -615,6 +2347,9 @@
### C Prototype
`void *vec3f_add(Vec3f dest, Vec3f a);`
+### Description
+Adds the components of the 3D floating-point vector `a` to `dest`. After this operation, `dest.x` will be `dest.x + a.x`, and similarly for the y and z components.
+
[:arrow_up_small:](#)
@@ -639,6 +2374,9 @@
### C Prototype
`void vec3f_combine(Vec3f dest, Vec3f vecA, Vec3f vecB, f32 sclA, f32 sclB);`
+### Description
+Takes two 3D floating-point vectors `vecA` and `vecB`, multiplies them by `sclA` and `sclB` respectively, and then adds the scaled vectors together. The final combined vector is stored in `dest`.
+
[:arrow_up_small:](#)
@@ -660,6 +2398,9 @@
### C Prototype
`void *vec3f_copy(Vec3f dest, Vec3f src);`
+### Description
+Copies the contents of a 3D floating-point vector (`src`) into another 3D floating-point vector (`dest`). After this operation, `dest` will have the same x, y, and z values as `src`.
+
[:arrow_up_small:](#)
@@ -682,6 +2423,9 @@
### C Prototype
`void *vec3f_cross(Vec3f dest, Vec3f a, Vec3f b);`
+### Description
+Computes the cross product of two 3D floating-point vectors `a` and `b`. The cross product is a vector perpendicular to both `a` and `b`. The result is stored in `dest`.
+
[:arrow_up_small:](#)
@@ -704,6 +2448,9 @@
### C Prototype
`void *vec3f_dif(Vec3f dest, Vec3f a, Vec3f b);`
+### Description
+Subtracts the components of the 3D floating-point vector `b` from the components of `a` and stores the result in `dest`. For example, `dest.x = a.x - b.x`. This results in a vector that represents the difference between `a` and `b`.
+
[:arrow_up_small:](#)
@@ -725,6 +2472,9 @@
### C Prototype
`f32 vec3f_dist(Vec3f v1, Vec3f v2);`
+### Description
+Calculates the distance between two 3D floating-point points `v1` and `v2`. The distance is the length of the vector `v2 - v1`, i.e., sqrt((v2.x - v1.x)² + (v2.y - v1.y)² + (v2.z - v1.z)²).
+
[:arrow_up_small:](#)
@@ -746,6 +2496,9 @@
### C Prototype
`f32 vec3f_dot(Vec3f a, Vec3f b);`
+### Description
+Computes the dot product of the two 3D floating-point vectors `a` and `b`. The dot product is a scalar value defined by (a.x * b.x + a.y * b.y + a.z * b.z), representing how aligned the two vectors are.
+
[:arrow_up_small:](#)
@@ -770,6 +2523,9 @@
### C Prototype
`void vec3f_get_dist_and_angle(Vec3f from, Vec3f to, f32 *dist, s16 *pitch, s16 *yaw);`
+### Description
+Calculates the distance between two points in 3D space (`from` and `to`), as well as the pitch and yaw angles that describe the direction from `from` to `to`. The results are stored in `dist`, `pitch`, and `yaw`.
+
[:arrow_up_small:](#)
@@ -790,6 +2546,9 @@
### C Prototype
`f32 vec3f_length(Vec3f a);`
+### Description
+Calculates the length (magnitude) of the 3D floating-point vector `a`. The length is defined as sqrt(x² + y² + z²) for the vector components (x, y, z).
+
[:arrow_up_small:](#)
@@ -811,6 +2570,9 @@
### C Prototype
`void *vec3f_mul(Vec3f dest, f32 a);`
+### Description
+Multiplies each component of the 3D floating-point vector `dest` by the scalar value `a`. For instance, `dest.x = dest.x * a`, and similarly for y and z. This scales the vector `dest` by `a`.
+
[:arrow_up_small:](#)
@@ -831,6 +2593,9 @@
### C Prototype
`void *vec3f_normalize(Vec3f dest);`
+### Description
+Normalizes the 3D floating-point vector `dest` so that its length (magnitude) becomes 1, while retaining its direction. This effectively scales `dest` so that it lies on the unit sphere.
+
[:arrow_up_small:](#)
@@ -853,6 +2618,9 @@
### C Prototype
`void vec3f_project(Vec3f vec, Vec3f onto, Vec3f out);`
+### Description
+Projects the 3D floating-point vector `vec` onto another 3D floating-point vector `onto`. The resulting projection, stored in `out`, represents how much of `vec` lies along the direction of `onto`.
+
[:arrow_up_small:](#)
@@ -874,6 +2642,9 @@
### C Prototype
`void *vec3f_rotate_zxy(Vec3f v, Vec3s rotate);`
+### Description
+Rotates the 3D floating-point vector `v` by the angles specified in the 3D signed-integer vector `rotate`, applying the rotations in the order Z, then X, then Y. The rotated vector replaces `v`.
+
[:arrow_up_small:](#)
@@ -897,6 +2668,9 @@
### C Prototype
`void *vec3f_set(Vec3f dest, f32 x, f32 y, f32 z);`
+### Description
+Sets the values of the 3D floating-point vector `dest` to the given x, y, and z values. After this function, `dest` will have values (x, y, z).
+
[:arrow_up_small:](#)
@@ -921,6 +2695,9 @@
### C Prototype
`void vec3f_set_dist_and_angle(Vec3f from, Vec3f to, f32 dist, s16 pitch, s16 yaw);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -943,6 +2720,9 @@
### C Prototype
`void *vec3f_sum(Vec3f dest, Vec3f a, Vec3f b);`
+### Description
+Adds the corresponding components of two 3D floating-point vectors `a` and `b`, and stores the result in `dest`. For example, `dest.x = a.x + b.x`, `dest.y = a.y + b.y`, and `dest.z = a.z + b.z`.
+
[:arrow_up_small:](#)
@@ -964,6 +2744,9 @@
### C Prototype
`void *vec3f_to_vec3s(Vec3s dest, Vec3f a);`
+### Description
+Converts a 3D floating-point vector `a` (Vec3f) into a 3D signed-integer vector and stores it in `dest`. After this operation, `dest` will contain the integer versions of `a`'s floating-point components.
+
[:arrow_up_small:](#)
@@ -985,6 +2768,9 @@
### C Prototype
`void *vec3s_add(Vec3s dest, Vec3s a);`
+### Description
+Adds the components of a 3D signed-integer vector `a` to the corresponding components of `dest`. After this operation, each component of `dest` is increased by the corresponding component in `a`.
+
[:arrow_up_small:](#)
@@ -1006,6 +2792,9 @@
### C Prototype
`void *vec3s_copy(Vec3s dest, Vec3s src);`
+### Description
+Copies the components of one 3D signed-integer vector (`src`) to another (`dest`). After this function, `dest` will have the same x, y, and z integer values as `src`.
+
[:arrow_up_small:](#)
@@ -1029,6 +2818,9 @@
### C Prototype
`void *vec3s_set(Vec3s dest, s16 x, s16 y, s16 z);`
+### Description
+Sets the 3D signed-integer vector `dest` to the specified integer values (x, y, z), so that `dest` becomes (x, y, z).
+
[:arrow_up_small:](#)
@@ -1051,6 +2843,9 @@
### C Prototype
`void *vec3s_sum(Vec3s dest, Vec3s a, Vec3s b);`
+### Description
+Adds the components of two 3D signed-integer vectors `a` and `b` together and stores the resulting vector in `dest`. For example, `dest.x = a.x + b.x`, and similarly for y and z.
+
[:arrow_up_small:](#)
@@ -1072,6 +2867,9 @@
### C Prototype
`void *vec3s_to_vec3f(Vec3f dest, Vec3s a);`
+### Description
+Converts a 3D signed-integer vector `a` (vec3s) into a 3D floating-point vector and stores it in `dest`. After this operation, `dest` will contain the floating-point equivalents of `a`'s integer components.
+
[:arrow_up_small:](#)
@@ -1096,6 +2894,9 @@
### C Prototype
`void update_all_mario_stars(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1120,6 +2921,9 @@
### C Prototype
`bool mod_storage_clear(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1140,6 +2944,9 @@
### C Prototype
`bool mod_storage_exists(const char* key);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1160,6 +2967,9 @@
### C Prototype
`const char *mod_storage_load(const char* key);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1180,6 +2990,9 @@
### C Prototype
`bool mod_storage_load_bool(const char* key);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1200,6 +3013,9 @@
### C Prototype
`f32 mod_storage_load_number(const char* key);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1220,6 +3036,9 @@
### C Prototype
`bool mod_storage_remove(const char* key);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1241,6 +3060,9 @@
### C Prototype
`bool mod_storage_save(const char* key, const char* value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1262,6 +3084,9 @@
### C Prototype
`bool mod_storage_save_bool(const char* key, bool value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1283,6 +3108,9 @@
### C Prototype
`bool mod_storage_save_number(const char* key, f32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1312,6 +3140,9 @@
### C Prototype
`struct NetworkPlayer* get_network_player_from_area(s16 courseNum, s16 actNum, s16 levelNum, s16 areaIndex);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1334,6 +3165,9 @@
### C Prototype
`struct NetworkPlayer* get_network_player_from_level(s16 courseNum, s16 actNum, s16 levelNum);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1352,6 +3186,9 @@
### C Prototype
`struct NetworkPlayer* get_network_player_smallest_global(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1370,6 +3207,9 @@
### C Prototype
`u8 network_player_connected_count(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1390,6 +3230,9 @@
### C Prototype
`struct NetworkPlayer* network_player_from_global_index(u8 globalIndex);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1410,6 +3253,9 @@
### C Prototype
`bool network_player_is_override_palette_same(struct NetworkPlayer *np);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1430,6 +3276,9 @@
### C Prototype
`void network_player_reset_override_palette(struct NetworkPlayer *np);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1455,6 +3304,9 @@
### C Prototype
`void network_player_set_description(struct NetworkPlayer* np, const char* description, u8 r, u8 g, u8 b, u8 a);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1476,6 +3328,9 @@
### C Prototype
`void network_player_set_override_location(struct NetworkPlayer *np, const char *location);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1498,6 +3353,9 @@
### C Prototype
`void network_player_set_override_palette_color(struct NetworkPlayer *np, enum PlayerPart part, Color color);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1522,6 +3380,9 @@
### C Prototype
`bool network_check_singleplayer_pause(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1542,6 +3403,9 @@
### C Prototype
`const char* network_discord_id_from_local_index(u8 localIndex);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1562,6 +3426,9 @@
### C Prototype
`const char* network_get_player_text_color_string(u8 localIndex);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1582,6 +3449,9 @@
### C Prototype
`u8 network_global_index_from_local(u8 localIndex);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1600,6 +3470,9 @@
### C Prototype
`bool network_is_moderator(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1618,6 +3491,9 @@
### C Prototype
`bool network_is_server(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1638,6 +3514,9 @@
### C Prototype
`u8 network_local_index_from_global(u8 globalIndex);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1664,6 +3543,9 @@
### C Prototype
`f32 absf_2(f32 f);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1687,6 +3569,9 @@
### C Prototype
`void calc_new_obj_vel_and_pos_y(struct Surface *objFloor, f32 objFloorY, f32 objVelX, f32 objVelZ);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1711,6 +3596,9 @@
### C Prototype
`void calc_new_obj_vel_and_pos_y_underwater(struct Surface *objFloor, f32 floorY, f32 objVelX, f32 objVelZ, f32 waterY);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1732,6 +3620,9 @@
### C Prototype
`void calc_obj_friction(f32 *objFriction, f32 floor_nY);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1752,6 +3643,9 @@
### C Prototype
`s8 current_mario_room_check(s16 room);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1773,6 +3667,9 @@
### C Prototype
`u8 is_nearest_mario_state_to_object(struct MarioState *m, struct Object *obj);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1794,6 +3691,9 @@
### C Prototype
`u8 is_nearest_player_to_object(struct Object *m, struct Object *obj);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1812,6 +3712,9 @@
### C Prototype
`u8 is_other_player_active(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1832,6 +3735,9 @@
### C Prototype
`u8 is_player_active(struct MarioState* m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1852,6 +3758,9 @@
### C Prototype
`u8 is_player_in_local_area(struct MarioState* m);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1876,6 +3785,9 @@
### C Prototype
`s8 is_point_close_to_object(struct Object *obj, f32 x, f32 y, f32 z, s32 dist);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1899,6 +3811,9 @@
### C Prototype
`s8 is_point_within_radius_of_any_player(f32 x, f32 y, f32 z, s32 dist);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1922,6 +3837,9 @@
### C Prototype
`s8 is_point_within_radius_of_mario(f32 x, f32 y, f32 z, s32 dist);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1942,6 +3860,9 @@
### C Prototype
`struct MarioState *nearest_interacting_mario_state_to_object(struct Object *obj);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1962,6 +3883,9 @@
### C Prototype
`struct Object *nearest_interacting_player_to_object(struct Object *obj);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1982,6 +3906,9 @@
### C Prototype
`struct MarioState* nearest_mario_state_to_object(struct Object *obj);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2002,6 +3929,9 @@
### C Prototype
`struct Object* nearest_player_to_object(struct Object *obj);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2022,6 +3952,9 @@
### C Prototype
`struct MarioState* nearest_possible_mario_state_to_object(struct Object *obj);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2043,6 +3976,9 @@
### C Prototype
`void obj_check_floor_death(s16 collisionFlags, struct Surface *floor);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2065,6 +4001,9 @@
### C Prototype
`s8 obj_check_if_facing_toward_angle(u32 base, u32 goal, s16 range);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2089,6 +4028,9 @@
### C Prototype
`s8 obj_find_wall(f32 objNewX, f32 objY, f32 objNewZ, f32 objVelX, f32 objVelZ);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2113,6 +4055,9 @@
### C Prototype
`s8 obj_find_wall_displacement(Vec3f dist, f32 x, f32 y, f32 z, f32 radius);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2134,6 +4079,9 @@
### C Prototype
`s8 obj_flicker_and_disappear(struct Object *obj, s16 lifeSpan);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2152,6 +4100,9 @@
### C Prototype
`s8 obj_lava_death(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2172,6 +4123,9 @@
### C Prototype
`void obj_move_xyz_using_fvel_and_yaw(struct Object *obj);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2195,6 +4149,9 @@
### C Prototype
`void obj_orient_graph(struct Object *obj, f32 normalX, f32 normalY, f32 normalZ);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2219,6 +4176,9 @@
### C Prototype
`void obj_return_and_displace_home(struct Object *obj, f32 homeX, UNUSED f32 homeY, f32 homeZ, s32 baseDisp);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2243,6 +4203,9 @@
### C Prototype
`s8 obj_return_home_if_safe(struct Object *obj, f32 homeX, f32 y, f32 homeZ, s32 dist);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2264,6 +4227,9 @@
### C Prototype
`void obj_spawn_yellow_coins(struct Object *obj, s8 nCoins);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2285,6 +4251,9 @@
### C Prototype
`void obj_splash(s32 waterY, s32 objY);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2303,6 +4272,9 @@
### C Prototype
`void obj_update_pos_vel_xz(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2321,6 +4293,9 @@
### C Prototype
`s16 object_step(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2339,6 +4314,9 @@
### C Prototype
`s16 object_step_without_floor_orient(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2360,6 +4338,9 @@
### C Prototype
`void set_object_visibility(struct Object *obj, s32 dist);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2378,6 +4359,9 @@
### C Prototype
`void set_yoshi_as_not_dead(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2401,6 +4385,9 @@
### C Prototype
`void spawn_orange_number(s8 behParam, s16 relX, s16 relY, s16 relZ);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2424,6 +4411,9 @@
### C Prototype
`s8 turn_obj_away_from_steep_floor(struct Surface *objFloor, f32 floorY, f32 objVelX, f32 objVelZ);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2450,6 +4440,9 @@
### C Prototype
`void turn_obj_away_from_surface(f32 velX, f32 velZ, f32 nX, UNUSED f32 nY, f32 nZ, f32 *objYawX, f32 *objYawZ);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2478,6 +4471,9 @@
### C Prototype
`s32 approach_f32_ptr(f32 *px, f32 target, f32 delta);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2498,6 +4494,9 @@
### C Prototype
`s32 cur_obj_init_anim_and_check_if_end(s32 arg0);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2519,6 +4518,9 @@
### C Prototype
`s32 cur_obj_init_anim_check_frame(s32 arg0, s32 arg1);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2539,6 +4541,9 @@
### C Prototype
`void cur_obj_init_anim_extend(s32 arg0);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2561,6 +4566,9 @@
### C Prototype
`s32 cur_obj_play_sound_at_anim_range(s8 arg0, s8 arg1, u32 sound);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2581,6 +4589,9 @@
### C Prototype
`s32 cur_obj_set_anim_if_at_end(s32 arg0);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2602,6 +4613,9 @@
### C Prototype
`void cur_obj_spin_all_dimensions(f32 arg0, f32 arg1);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2622,6 +4636,9 @@
### C Prototype
`void obj_act_knockback(UNUSED f32 baseScale);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2642,6 +4659,9 @@
### C Prototype
`void obj_act_squished(f32 baseScale);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2662,6 +4682,9 @@
### C Prototype
`s32 obj_bounce_off_walls_edges_objects(s32 *targetYaw);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2683,6 +4706,9 @@
### C Prototype
`s32 obj_check_attacks(struct ObjectHitbox *hitbox, s32 attackedMarioAction);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2703,6 +4729,9 @@
### C Prototype
`void obj_compute_vel_from_move_pitch(f32 speed);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2721,6 +4750,9 @@
### C Prototype
`s32 obj_die_if_above_lava_and_health_non_positive(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2739,6 +4771,9 @@
### C Prototype
`void obj_die_if_health_non_positive(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2760,6 +4795,9 @@
### C Prototype
`s32 obj_face_pitch_approach(s16 targetPitch, s16 deltaPitch);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2781,6 +4819,9 @@
### C Prototype
`s32 obj_face_roll_approach(s16 targetRoll, s16 deltaRoll);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2802,6 +4843,9 @@
### C Prototype
`s32 obj_face_yaw_approach(s16 targetYaw, s16 deltaYaw);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2823,6 +4867,9 @@
### C Prototype
`s32 obj_forward_vel_approach(f32 target, f32 delta);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2841,6 +4888,9 @@
### C Prototype
`s16 obj_get_pitch_from_vel(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2861,6 +4911,9 @@
### C Prototype
`s16 obj_get_pitch_to_home(f32 latDistToHome);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2883,6 +4936,9 @@
### C Prototype
`s32 obj_grow_then_shrink(f32 *scaleVel, f32 shootFireScale, f32 endScale);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2905,6 +4961,9 @@
### C Prototype
`s32 obj_handle_attacks(struct ObjectHitbox *hitbox, s32 attackedMarioAction, u8 *attackHandlers);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2927,6 +4986,9 @@
### C Prototype
`s32 obj_is_near_to_and_facing_mario(struct MarioState* m, f32 maxDist, s16 maxAngleDiff);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2945,6 +5007,9 @@
### C Prototype
`s32 obj_is_rendering_enabled(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2965,6 +5030,9 @@
### C Prototype
`s32 obj_move_for_one_second(s32 endAction);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2986,6 +5054,9 @@
### C Prototype
`s32 obj_move_pitch_approach(s16 target, s16 delta);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3006,6 +5077,9 @@
### C Prototype
`s16 obj_random_fixed_turn(s16 delta);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3027,6 +5101,9 @@
### C Prototype
`s32 obj_resolve_collisions_and_turn(s16 targetYaw, s16 turnSpeed);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3047,6 +5124,9 @@
### C Prototype
`s32 obj_resolve_object_collisions(s32 *targetYaw);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3069,6 +5149,9 @@
### C Prototype
`void obj_roll_to_match_yaw_turn(s16 targetYaw, s16 maxRoll, s16 rollSpeed);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3090,6 +5173,9 @@
### C Prototype
`void obj_rotate_yaw_and_bounce_off_walls(s16 targetYaw, s16 turnAmount);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3110,6 +5196,9 @@
### C Prototype
`void obj_set_dist_from_home(f32 distFromHome);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3130,6 +5219,9 @@
### C Prototype
`void obj_set_knockback_action(s32 attackType);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3148,6 +5240,9 @@
### C Prototype
`void obj_set_squished_action(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3174,6 +5269,9 @@
### C Prototype
`s32 obj_smooth_turn(s16 *angleVel, s32 *angle, s16 targetAngle, f32 targetSpeedProportion, s16 accel, s16 minSpeed, s16 maxSpeed);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3201,6 +5299,9 @@
### C Prototype
`struct Object* obj_spit_fire(s16 relativePosX, s16 relativePosY, s16 relativePosZ, f32 scale, s32 model, f32 startSpeed, f32 endSpeed, s16 movePitch);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3223,6 +5324,9 @@
### C Prototype
`s16 obj_turn_pitch_toward_mario(struct MarioState* m, f32 targetOffsetY, s16 turnAmount);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3241,6 +5345,9 @@
### C Prototype
`void obj_unused_die(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3264,6 +5371,9 @@
### C Prototype
`void obj_update_blinking(s32 *blinkTimer, s16 baseCycleLength, s16 cycleLengthRange, s16 blinkLength);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3284,6 +5394,9 @@
### C Prototype
`s32 obj_update_standard_actions(f32 scale);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3305,6 +5418,9 @@
### C Prototype
`s32 obj_y_vel_approach(f32 target, f32 delta);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3330,6 +5446,9 @@
### C Prototype
`s32 oscillate_toward(s32 *value, f32 *vel, s32 target, f32 velCloseToZero, f32 accel, f32 slowdown);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3353,6 +5472,9 @@
### C Prototype
`void platform_on_track_update_pos_or_spawn_ball(s32 ballIndex, f32 x, f32 y, f32 z);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3374,6 +5496,9 @@
### C Prototype
`s16 random_linear_offset(s16 base, s16 range);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3396,6 +5521,9 @@
### C Prototype
`s16 random_mod_offset(s16 base, s16 step, s16 mod);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -3418,5297 +5546,13 @@
### C Prototype
`void treat_far_home_as_mario(f32 threshold, s32* distanceToPlayer, s32* angleToPlayer);`
-[:arrow_up_small:](#)
-
-
-
----
-# functions from object_helpers.c
-
-
-
-
-## [abs_angle_diff](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [apply_drag_to_value](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [approach_f32_signed](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [approach_f32_symmetric](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [approach_s16_symmetric](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [bhv_dust_smoke_loop](#bhv_dust_smoke_loop)
-
-### Lua Example
-`bhv_dust_smoke_loop()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void bhv_dust_smoke_loop(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [bhv_init_room](#bhv_init_room)
-
-### Lua Example
-`bhv_init_room()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void bhv_init_room(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [bit_shift_left](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [chain_segment_init](#chain_segment_init)
-
-### Lua Example
-`chain_segment_init(segment)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| segment | [ChainSegment](structs.md#ChainSegment) |
-
-### Returns
-- None
-
-### C Prototype
-`void chain_segment_init(struct ChainSegment *segment);`
-
-[:arrow_up_small:](#)
-
-
-
-## [clear_move_flag](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [clear_time_stop_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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [count_objects_with_behavior](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [count_unimportant_objects](#count_unimportant_objects)
-
-### Lua Example
-`local integerValue = count_unimportant_objects()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 count_unimportant_objects(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [create_transformation_from_matrices](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_abs_y_dist_to_home](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_advance_looping_anim](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_align_gfx_with_floor](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_angle_to_home](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_apply_drag_xz](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_become_intangible](#cur_obj_become_intangible)
-
-### Lua Example
-`cur_obj_become_intangible()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_become_intangible(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_become_tangible](#cur_obj_become_tangible)
-
-### Lua Example
-`cur_obj_become_tangible()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_become_tangible(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_can_mario_activate_textbox](#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](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_can_mario_activate_textbox_2](#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](structs.md#MarioState) |
-| radius | `number` |
-| height | `number` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 cur_obj_can_mario_activate_textbox_2(struct MarioState* m, f32 radius, f32 height);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_change_action](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_check_anim_frame](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_check_anim_frame_in_range](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_check_frame_prior_current_frame](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_check_grabbed_mario](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_check_if_at_animation_end](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_check_if_near_animation_end](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_check_interacted](#cur_obj_check_interacted)
-
-### Lua Example
-`local integerValue = cur_obj_check_interacted()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 cur_obj_check_interacted(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_clear_interact_status_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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_compute_vel_xz](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_count_objects_with_behavior](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_detect_steep_floor](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_disable](#cur_obj_disable)
-
-### Lua Example
-`cur_obj_disable()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_disable(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_disable_rendering](#cur_obj_disable_rendering)
-
-### Lua Example
-`cur_obj_disable_rendering()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_disable_rendering(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_disable_rendering_and_become_intangible](#cur_obj_disable_rendering_and_become_intangible)
-
-### Lua Example
-`cur_obj_disable_rendering_and_become_intangible(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_disable_rendering_and_become_intangible(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_dist_to_nearest_object_with_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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_enable_rendering](#cur_obj_enable_rendering)
-
-### Lua Example
-`cur_obj_enable_rendering()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_enable_rendering(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_enable_rendering_2](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_enable_rendering_and_become_tangible](#cur_obj_enable_rendering_and_become_tangible)
-
-### Lua Example
-`cur_obj_enable_rendering_and_become_tangible(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_enable_rendering_and_become_tangible(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_enable_rendering_if_mario_in_room](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_end_dialog](#cur_obj_end_dialog)
-
-### Lua Example
-`cur_obj_end_dialog(m, dialogFlags, dialogResult)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| dialogFlags | `integer` |
-| dialogResult | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_end_dialog(struct MarioState* m, s32 dialogFlags, s32 dialogResult);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_extend_animation_if_at_end](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_find_nearby_held_actor](#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
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *cur_obj_find_nearby_held_actor(const BehaviorScript *behavior, f32 maxDist);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_find_nearest_object_with_behavior](#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
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *cur_obj_find_nearest_object_with_behavior(const BehaviorScript *behavior, f32 *dist);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_find_nearest_pole](#cur_obj_find_nearest_pole)
-
-### Lua Example
-`local ObjectValue = cur_obj_find_nearest_pole()`
-
-### Parameters
-- None
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object* cur_obj_find_nearest_pole(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_follow_path](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_forward_vel_approach_upward](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_get_dropped](#cur_obj_get_dropped)
-
-### Lua Example
-`cur_obj_get_dropped()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_get_dropped(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_get_thrown_or_placed](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_has_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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_has_model](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_hide](#cur_obj_hide)
-
-### Lua Example
-`cur_obj_hide()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_hide(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_hide_if_mario_far_away_y](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_if_hit_wall_bounce_away](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_init_animation](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_init_animation_and_anim_frame](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_init_animation_and_check_if_near_end](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_init_animation_and_extend_if_at_end](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_init_animation_with_accel_and_sound](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_init_animation_with_sound](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_is_any_player_on_platform](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_is_mario_ground_pounding_platform](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_is_mario_on_platform](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_lateral_dist_from_mario_to_home](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_lateral_dist_from_obj_to_home](#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](structs.md#Object) |
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 cur_obj_lateral_dist_from_obj_to_home(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_lateral_dist_to_home](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_mario_far_away](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_move_after_thrown_or_dropped](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_move_standard](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_move_up_and_down](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_move_update_ground_air_flags](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_move_update_underwater_flags](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_move_using_fvel_and_gravity](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_move_using_vel](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_move_using_vel_and_gravity](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_move_xz](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_move_xz_using_fvel_and_yaw](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_move_y](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_move_y_and_get_water_level](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_move_y_with_terminal_vel](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_nearest_object_with_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
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *cur_obj_nearest_object_with_behavior(const BehaviorScript *behavior);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_outside_home_rectangle](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_outside_home_square](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_push_mario_away](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_push_mario_away_from_cylinder](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_reflect_move_angle_off_wall](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_reset_timer_and_subaction](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_resolve_wall_collisions](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_reverse_animation](#cur_obj_reverse_animation)
-
-### Lua Example
-`cur_obj_reverse_animation()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_reverse_animation(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_rotate_face_angle_using_vel](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_rotate_move_angle_using_vel](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_rotate_yaw_toward](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_scale_over_time](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_behavior](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_billboard_if_vanilla_cam](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_face_angle_to_move_angle](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_hitbox_and_die_if_attacked](#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](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_hitbox_radius_and_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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_home_once](#cur_obj_set_home_once)
-
-### Lua Example
-`cur_obj_set_home_once()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_set_home_once(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_hurtbox_radius_and_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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_pos_relative](#cur_obj_set_pos_relative)
-
-### Lua Example
-`cur_obj_set_pos_relative(other, dleft, dy, dforward)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| other | [Object](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_pos_relative_to_parent](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_pos_to_home](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_pos_to_home_and_stop](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_pos_to_home_with_debug](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_pos_via_transform](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_vel_from_mario_vel](#cur_obj_set_vel_from_mario_vel)
-
-### Lua Example
-`cur_obj_set_vel_from_mario_vel(m, f12, f14)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| f12 | `number` |
-| f14 | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_set_vel_from_mario_vel(struct MarioState* m, f32 f12, f32 f14);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_set_y_vel_and_animation](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_shake_screen](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_shake_y](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_shake_y_until](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_spawn_loot_blue_coin](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_spawn_loot_coin_at_mario_pos](#cur_obj_spawn_loot_coin_at_mario_pos)
-
-### Lua Example
-`cur_obj_spawn_loot_coin_at_mario_pos(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_spawn_loot_coin_at_mario_pos(struct MarioState* m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_spawn_particles](#cur_obj_spawn_particles)
-
-### Lua Example
-`cur_obj_spawn_particles(info)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| info | [SpawnParticlesInfo](structs.md#SpawnParticlesInfo) |
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_spawn_particles(struct SpawnParticlesInfo *info);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_spawn_star_at_y_offset](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_start_cam_event](#cur_obj_start_cam_event)
-
-### Lua Example
-`cur_obj_start_cam_event(obj, cameraEvent)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| cameraEvent | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_start_cam_event(UNUSED struct Object *obj, s32 cameraEvent);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_unhide](#cur_obj_unhide)
-
-### Lua Example
-`cur_obj_unhide()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_unhide(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_unrender_and_reset_state](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_unused_init_on_floor](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_unused_play_footstep_sound](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_unused_resolve_wall_collisions](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_update_floor](#cur_obj_update_floor)
-
-### Lua Example
-`cur_obj_update_floor()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void cur_obj_update_floor(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_update_floor_and_resolve_wall_collisions](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_update_floor_and_walls](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_update_floor_height](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_update_floor_height_and_get_floor](#cur_obj_update_floor_height_and_get_floor)
-
-### Lua Example
-`local SurfaceValue = cur_obj_update_floor_height_and_get_floor()`
-
-### Parameters
-- None
-
-### Returns
-[Surface](structs.md#Surface)
-
-### C Prototype
-`struct Surface *cur_obj_update_floor_height_and_get_floor(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_wait_then_blink](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_was_attacked_or_ground_pounded](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_within_12k_bounds](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [disable_time_stop](#disable_time_stop)
-
-### Lua Example
-`disable_time_stop()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void disable_time_stop(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [disable_time_stop_including_mario](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [dist_between_object_and_point](#dist_between_object_and_point)
-
-### Lua Example
-`local numberValue = dist_between_object_and_point(obj, pointX, pointY, pointZ)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [dist_between_objects](#dist_between_objects)
-
-### Lua Example
-`local numberValue = dist_between_objects(obj1, obj2)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj1 | [Object](structs.md#Object) |
-| obj2 | [Object](structs.md#Object) |
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 dist_between_objects(struct Object *obj1, struct Object *obj2);`
-
-[:arrow_up_small:](#)
-
-
-
-## [enable_time_stop](#enable_time_stop)
-
-### Lua Example
-`enable_time_stop()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void enable_time_stop(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [enable_time_stop_if_alone](#enable_time_stop_if_alone)
-
-### Lua Example
-`enable_time_stop_if_alone()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void enable_time_stop_if_alone(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [enable_time_stop_including_mario](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [find_object_with_behavior](#find_object_with_behavior)
-
-### Lua Example
-`local ObjectValue = find_object_with_behavior(behavior)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| behavior | `Pointer` <`BehaviorScript`> |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *find_object_with_behavior(const BehaviorScript *behavior);`
-
-[:arrow_up_small:](#)
-
-
-
-## [find_unimportant_object](#find_unimportant_object)
-
-### Lua Example
-`local ObjectValue = find_unimportant_object()`
-
-### Parameters
-- None
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *find_unimportant_object(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [geo_offset_klepto_debug](#geo_offset_klepto_debug)
-
-### Lua Example
-`local integerValue = geo_offset_klepto_debug(callContext, a1, sp8)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| callContext | `integer` |
-| a1 | [GraphNode](structs.md#GraphNode) |
-| sp8 | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 geo_offset_klepto_debug(s32 callContext, struct GraphNode *a1, UNUSED s32 sp8);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_object_list_from_behavior](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_trajectory_length](#get_trajectory_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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [increment_velocity_toward_range](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [is_item_in_array](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [is_mario_moving_fast_or_in_air](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [lateral_dist_between_objects](#lateral_dist_between_objects)
-
-### Lua Example
-`local numberValue = lateral_dist_between_objects(obj1, obj2)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj1 | [Object](structs.md#Object) |
-| obj2 | [Object](structs.md#Object) |
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 lateral_dist_between_objects(struct Object *obj1, struct Object *obj2);`
-
-[:arrow_up_small:](#)
-
-
-
-## [linear_mtxf_mul_vec3f](#linear_mtxf_mul_vec3f)
-
-### Lua Example
-`linear_mtxf_mul_vec3f(m, dst, v)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | `Mat4` |
-| dst | [Vec3f](structs.md#Vec3f) |
-| v | [Vec3f](structs.md#Vec3f) |
-
-### Returns
-- None
-
-### C Prototype
-`void linear_mtxf_mul_vec3f(Mat4 m, Vec3f dst, Vec3f v);`
-
-[:arrow_up_small:](#)
-
-
-
-## [linear_mtxf_transpose_mul_vec3f](#linear_mtxf_transpose_mul_vec3f)
-
-### Lua Example
-`linear_mtxf_transpose_mul_vec3f(m, dst, v)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | `Mat4` |
-| dst | [Vec3f](structs.md#Vec3f) |
-| v | [Vec3f](structs.md#Vec3f) |
-
-### Returns
-- None
-
-### C Prototype
-`void linear_mtxf_transpose_mul_vec3f(Mat4 m, Vec3f dst, Vec3f v);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_is_dive_sliding](#mario_is_dive_sliding)
-
-### Lua Example
-`local integerValue = mario_is_dive_sliding(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 mario_is_dive_sliding(struct MarioState* m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_is_in_air_action](#mario_is_in_air_action)
-
-### Lua Example
-`local integerValue = mario_is_in_air_action(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 mario_is_in_air_action(struct MarioState* m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_is_within_rectangle](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mario_set_flag](#mario_set_flag)
-
-### Lua Example
-`mario_set_flag(flag)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| flag | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void mario_set_flag(s32 flag);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_angle_to_object](#obj_angle_to_object)
-
-### Lua Example
-`local integerValue = obj_angle_to_object(obj1, obj2)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj1 | [Object](structs.md#Object) |
-| obj2 | [Object](structs.md#Object) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s16 obj_angle_to_object(struct Object *obj1, struct Object *obj2);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_angle_to_point](#obj_angle_to_point)
-
-### Lua Example
-`local integerValue = obj_angle_to_point(obj, pointX, pointZ)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| pointX | `number` |
-| pointZ | `number` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s16 obj_angle_to_point(struct Object *obj, f32 pointX, f32 pointZ);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_apply_scale_to_matrix](#obj_apply_scale_to_matrix)
-
-### Lua Example
-`obj_apply_scale_to_matrix(obj, dst, src)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| dst | `Mat4` |
-| src | `Mat4` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_apply_scale_to_matrix(struct Object *obj, Mat4 dst, Mat4 src);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_apply_scale_to_transform](#obj_apply_scale_to_transform)
-
-### Lua Example
-`obj_apply_scale_to_transform(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_apply_scale_to_transform(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_attack_collided_from_other_object](#obj_attack_collided_from_other_object)
-
-### Lua Example
-`local integerValue = obj_attack_collided_from_other_object(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 obj_attack_collided_from_other_object(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_become_tangible](#obj_become_tangible)
-
-### Lua Example
-`obj_become_tangible(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_become_tangible(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_build_relative_transform](#obj_build_relative_transform)
-
-### Lua Example
-`obj_build_relative_transform(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_build_relative_transform(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_build_transform_from_pos_and_angle](#obj_build_transform_from_pos_and_angle)
-
-### Lua Example
-`obj_build_transform_from_pos_and_angle(obj, posIndex, angleIndex)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| posIndex | `integer` |
-| angleIndex | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_build_transform_from_pos_and_angle(struct Object *obj, s16 posIndex, s16 angleIndex);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_build_transform_relative_to_parent](#obj_build_transform_relative_to_parent)
-
-### Lua Example
-`obj_build_transform_relative_to_parent(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_build_transform_relative_to_parent(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_build_vel_from_transform](#obj_build_vel_from_transform)
-
-### Lua Example
-`obj_build_vel_from_transform(a0)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| a0 | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_build_vel_from_transform(struct Object *a0);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_check_if_collided_with_object](#obj_check_if_collided_with_object)
-
-### Lua Example
-`local integerValue = obj_check_if_collided_with_object(obj1, obj2)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj1 | [Object](structs.md#Object) |
-| obj2 | [Object](structs.md#Object) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 obj_check_if_collided_with_object(struct Object *obj1, struct Object *obj2);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_copy_angle](#obj_copy_angle)
-
-### Lua Example
-`obj_copy_angle(dst, src)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| dst | [Object](structs.md#Object) |
-| src | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_copy_angle(struct Object *dst, struct Object *src);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_copy_behavior_params](#obj_copy_behavior_params)
-
-### Lua Example
-`obj_copy_behavior_params(dst, src)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| dst | [Object](structs.md#Object) |
-| src | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_copy_behavior_params(struct Object *dst, struct Object *src);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_copy_graph_y_offset](#obj_copy_graph_y_offset)
-
-### Lua Example
-`obj_copy_graph_y_offset(dst, src)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| dst | [Object](structs.md#Object) |
-| src | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_copy_graph_y_offset(struct Object *dst, struct Object *src);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_copy_pos](#obj_copy_pos)
-
-### Lua Example
-`obj_copy_pos(dst, src)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| dst | [Object](structs.md#Object) |
-| src | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_copy_pos(struct Object *dst, struct Object *src);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_copy_pos_and_angle](#obj_copy_pos_and_angle)
-
-### Lua Example
-`obj_copy_pos_and_angle(dst, src)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| dst | [Object](structs.md#Object) |
-| src | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_copy_pos_and_angle(struct Object *dst, struct Object *src);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_copy_scale](#obj_copy_scale)
-
-### Lua Example
-`obj_copy_scale(dst, src)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| dst | [Object](structs.md#Object) |
-| src | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_copy_scale(struct Object *dst, struct Object *src);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_create_transform_from_self](#obj_create_transform_from_self)
-
-### Lua Example
-`obj_create_transform_from_self(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_create_transform_from_self(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_explode_and_spawn_coins](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_has_behavior](#obj_has_behavior)
-
-### Lua Example
-`local integerValue = obj_has_behavior(obj, behavior)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| behavior | `Pointer` <`BehaviorScript`> |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 obj_has_behavior(struct Object *obj, const BehaviorScript *behavior);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_init_animation](#obj_init_animation)
-
-### Lua Example
-`obj_init_animation(obj, animIndex)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| animIndex | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_init_animation(struct Object *obj, s32 animIndex);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_init_animation_with_accel_and_sound](#obj_init_animation_with_accel_and_sound)
-
-### Lua Example
-`obj_init_animation_with_accel_and_sound(obj, animIndex, accel)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| animIndex | `integer` |
-| accel | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_init_animation_with_accel_and_sound(struct Object *obj, s32 animIndex, f32 accel);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_init_animation_with_sound](#obj_init_animation_with_sound)
-
-### Lua Example
-`obj_init_animation_with_sound(obj, animations, animIndex)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| animations | [AnimationTable](structs.md#AnimationTable) |
-| animIndex | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_init_animation_with_sound(struct Object *obj, const struct AnimationTable* animations, s32 animIndex);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_is_hidden](#obj_is_hidden)
-
-### Lua Example
-`local integerValue = obj_is_hidden(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 obj_is_hidden(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_mark_for_deletion](#obj_mark_for_deletion)
-
-### Lua Example
-`obj_mark_for_deletion(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_mark_for_deletion(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_pitch_to_object](#obj_pitch_to_object)
-
-### Lua Example
-`local integerValue = obj_pitch_to_object(obj, target)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| target | [Object](structs.md#Object) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s16 obj_pitch_to_object(struct Object* obj, struct Object* target);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_scale](#obj_scale)
-
-### Lua Example
-`obj_scale(obj, scale)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| scale | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_scale(struct Object *obj, f32 scale);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_scale_random](#obj_scale_random)
-
-### Lua Example
-`obj_scale_random(obj, rangeLength, minScale)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| rangeLength | `number` |
-| minScale | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_scale_random(struct Object *obj, f32 rangeLength, f32 minScale);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_scale_xyz](#obj_scale_xyz)
-
-### Lua Example
-`obj_scale_xyz(obj, xScale, yScale, zScale)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| xScale | `number` |
-| yScale | `number` |
-| zScale | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_scale_xyz(struct Object *obj, f32 xScale, f32 yScale, f32 zScale);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_angle](#obj_set_angle)
-
-### Lua Example
-`obj_set_angle(obj, pitch, yaw, roll)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| pitch | `integer` |
-| yaw | `integer` |
-| roll | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_angle(struct Object *obj, s16 pitch, s16 yaw, s16 roll);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_behavior](#obj_set_behavior)
-
-### Lua Example
-`obj_set_behavior(obj, behavior)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| behavior | `Pointer` <`BehaviorScript`> |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_behavior(struct Object *obj, const BehaviorScript *behavior);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_billboard](#obj_set_billboard)
-
-### Lua Example
-`obj_set_billboard(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_billboard(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_cylboard](#obj_set_cylboard)
-
-### Lua Example
-`obj_set_cylboard(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_cylboard(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_face_angle](#obj_set_face_angle)
-
-### Lua Example
-`obj_set_face_angle(obj, pitch, yaw, roll)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_face_angle_to_move_angle](#obj_set_face_angle_to_move_angle)
-
-### Lua Example
-`obj_set_face_angle_to_move_angle(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_face_angle_to_move_angle(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_gfx_angle](#obj_set_gfx_angle)
-
-### Lua Example
-`obj_set_gfx_angle(obj, pitch, yaw, roll)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_gfx_pos](#obj_set_gfx_pos)
-
-### Lua Example
-`obj_set_gfx_pos(obj, x, y, z)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_gfx_pos_at_obj_pos](#obj_set_gfx_pos_at_obj_pos)
-
-### Lua Example
-`obj_set_gfx_pos_at_obj_pos(obj1, obj2)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj1 | [Object](structs.md#Object) |
-| obj2 | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_gfx_pos_at_obj_pos(struct Object *obj1, struct Object *obj2);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_gfx_pos_from_pos](#obj_set_gfx_pos_from_pos)
-
-### Lua Example
-`obj_set_gfx_pos_from_pos(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_gfx_pos_from_pos(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_gfx_scale](#obj_set_gfx_scale)
-
-### Lua Example
-`obj_set_gfx_scale(obj, x, y, z)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_held_state](#obj_set_held_state)
-
-### Lua Example
-`obj_set_held_state(obj, heldBehavior)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| heldBehavior | `Pointer` <`BehaviorScript`> |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_held_state(struct Object *obj, const BehaviorScript *heldBehavior);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_hitbox](#obj_set_hitbox)
-
-### Lua Example
-`obj_set_hitbox(obj, hitbox)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| hitbox | [ObjectHitbox](structs.md#ObjectHitbox) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_hitbox(struct Object *obj, struct ObjectHitbox *hitbox);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_hitbox_radius_and_height](#obj_set_hitbox_radius_and_height)
-
-### Lua Example
-`obj_set_hitbox_radius_and_height(o, radius, height)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| radius | `number` |
-| height | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_hitbox_radius_and_height(struct Object *o, f32 radius, f32 height);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_hurtbox_radius_and_height](#obj_set_hurtbox_radius_and_height)
-
-### Lua Example
-`obj_set_hurtbox_radius_and_height(o, radius, height)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| radius | `number` |
-| height | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_hurtbox_radius_and_height(struct Object *o, f32 radius, f32 height);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_move_angle](#obj_set_move_angle)
-
-### Lua Example
-`obj_set_move_angle(obj, pitch, yaw, roll)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_parent_relative_pos](#obj_set_parent_relative_pos)
-
-### Lua Example
-`obj_set_parent_relative_pos(obj, relX, relY, relZ)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_pos](#obj_set_pos)
-
-### Lua Example
-`obj_set_pos(obj, x, y, z)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| x | `integer` |
-| y | `integer` |
-| z | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_pos(struct Object *obj, s16 x, s16 y, s16 z);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_pos_relative](#obj_set_pos_relative)
-
-### Lua Example
-`obj_set_pos_relative(obj, other, dleft, dy, dforward)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| other | [Object](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_throw_matrix_from_transform](#obj_set_throw_matrix_from_transform)
-
-### Lua Example
-`obj_set_throw_matrix_from_transform(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_throw_matrix_from_transform(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_spawn_loot_blue_coins](#obj_spawn_loot_blue_coins)
-
-### Lua Example
-`obj_spawn_loot_blue_coins(obj, numCoins, sp28, posJitter)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_spawn_loot_coins](#obj_spawn_loot_coins)
-
-### Lua Example
-`obj_spawn_loot_coins(obj, numCoins, sp30, coinBehavior, posJitter, model)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_spawn_loot_yellow_coins](#obj_spawn_loot_yellow_coins)
-
-### Lua Example
-`obj_spawn_loot_yellow_coins(obj, numCoins, sp28)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| numCoins | `integer` |
-| sp28 | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_spawn_loot_yellow_coins(struct Object *obj, s32 numCoins, f32 sp28);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_translate_local](#obj_translate_local)
-
-### Lua Example
-`obj_translate_local(obj, posIndex, localTranslateIndex)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| posIndex | `integer` |
-| localTranslateIndex | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_translate_local(struct Object *obj, s16 posIndex, s16 localTranslateIndex);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_translate_xyz_random](#obj_translate_xyz_random)
-
-### Lua Example
-`obj_translate_xyz_random(obj, rangeLength)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| rangeLength | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_translate_xyz_random(struct Object *obj, f32 rangeLength);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_translate_xz_random](#obj_translate_xz_random)
-
-### Lua Example
-`obj_translate_xz_random(obj, rangeLength)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| rangeLength | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_translate_xz_random(struct Object *obj, f32 rangeLength);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_turn_toward_object](#obj_turn_toward_object)
-
-### Lua Example
-`local integerValue = obj_turn_toward_object(obj, target, angleIndex, turnAmount)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| target | [Object](structs.md#Object) |
-| angleIndex | `integer` |
-| turnAmount | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s16 obj_turn_toward_object(struct Object *obj, struct Object *target, s16 angleIndex, s16 turnAmount);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_update_pos_from_parent_transformation](#obj_update_pos_from_parent_transformation)
-
-### Lua Example
-`obj_update_pos_from_parent_transformation(a0, a1)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| a0 | `Mat4` |
-| a1 | [Object](structs.md#Object) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_update_pos_from_parent_transformation(Mat4 a0, struct Object *a1);`
-
-[:arrow_up_small:](#)
-
-
-
-## [player_performed_grab_escape_action](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [random_f32_around_zero](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_mario_interact_hoot_if_in_range](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_room_override](#set_room_override)
-
-### Lua Example
-`set_room_override(room)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| room | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void set_room_override(s16 room);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_time_stop_flags](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_time_stop_flags_if_alone](#set_time_stop_flags_if_alone)
-
-### Lua Example
-`set_time_stop_flags_if_alone(flags)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| flags | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void set_time_stop_flags_if_alone(s32 flags);`
-
-[:arrow_up_small:](#)
-
-
-
-## [signum_positive](#signum_positive)
-
-### Lua Example
-`local integerValue = signum_positive(x)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| x | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 signum_positive(s32 x);`
-
-[:arrow_up_small:](#)
-
-
-
-## [spawn_base_star_with_no_lvl_exit](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [spawn_mist_particles](#spawn_mist_particles)
-
-### Lua Example
-`spawn_mist_particles()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void spawn_mist_particles(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [spawn_mist_particles_with_sound](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [spawn_star_with_no_lvl_exit](#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
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *spawn_star_with_no_lvl_exit(s32 sp20, s32 sp24);`
-
-[:arrow_up_small:](#)
-
-
-
-## [spawn_water_droplet](#spawn_water_droplet)
-
-### Lua Example
-`local ObjectValue = spawn_water_droplet(parent, params)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| parent | [Object](structs.md#Object) |
-| params | [WaterDropletParams](structs.md#WaterDropletParams) |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *spawn_water_droplet(struct Object *parent, struct WaterDropletParams *params);`
-
-[:arrow_up_small:](#)
-
-
-
-## [stub_obj_helpers_3](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [stub_obj_helpers_4](#stub_obj_helpers_4)
-
-### Lua Example
-`stub_obj_helpers_4()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void stub_obj_helpers_4(void);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from object_list_processor.h
-
-
-
-
-## [set_object_respawn_info_bits](#set_object_respawn_info_bits)
-
-### Lua Example
-`set_object_respawn_info_bits(obj, bits)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| bits | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void set_object_respawn_info_bits(struct Object *obj, u8 bits);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from rumble_init.c
-
-
-
-
-## [queue_rumble_data](#queue_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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [queue_rumble_data_mario](#queue_rumble_data_mario)
-
-### Lua Example
-`queue_rumble_data_mario(m, a0, a1)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| a0 | `integer` |
-| a1 | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void queue_rumble_data_mario(struct MarioState* m, s16 a0, s16 a1);`
-
-[:arrow_up_small:](#)
-
-
-
-## [queue_rumble_data_object](#queue_rumble_data_object)
-
-### Lua Example
-`queue_rumble_data_object(object, a0, a1)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| object | [Object](structs.md#Object) |
-| a0 | `integer` |
-| a1 | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void queue_rumble_data_object(struct Object* object, s16 a0, s16 a1);`
-
-[:arrow_up_small:](#)
-
-
-
-## [reset_rumble_timers](#reset_rumble_timers)
-
-### Lua Example
-`reset_rumble_timers(m)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-
-### Returns
-- None
-
-### C Prototype
-`void reset_rumble_timers(struct MarioState* m);`
-
-[:arrow_up_small:](#)
-
-
-
-## [reset_rumble_timers_2](#reset_rumble_timers_2)
-
-### Lua Example
-`reset_rumble_timers_2(m, a0)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| a0 | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void reset_rumble_timers_2(struct MarioState* m, s32 a0);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from save_file.h
-
-
-
-
-## [save_file_clear_flags](#save_file_clear_flags)
-
-### Lua Example
-`save_file_clear_flags(flags)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| flags | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void save_file_clear_flags(u32 flags);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_do_save](#save_file_do_save)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_erase](#save_file_erase)
-
-### Lua Example
-`save_file_erase(fileIndex)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| fileIndex | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void save_file_erase(s32 fileIndex);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_erase_current_backup_save](#save_file_erase_current_backup_save)
-
-### Lua Example
-`save_file_erase_current_backup_save()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void save_file_erase_current_backup_save(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_get_cap_pos](#save_file_get_cap_pos)
-
-### Lua Example
-`local integerValue = save_file_get_cap_pos(capPos)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| capPos | [Vec3s](structs.md#Vec3s) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 save_file_get_cap_pos(Vec3s capPos);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_get_course_coin_score](#save_file_get_course_coin_score)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_get_course_star_count](#save_file_get_course_star_count)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_get_flags](#save_file_get_flags)
-
-### Lua Example
-`local integerValue = save_file_get_flags()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`u32 save_file_get_flags(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_get_max_coin_score](#save_file_get_max_coin_score)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_get_sound_mode](#save_file_get_sound_mode)
-
-### Lua Example
-`local integerValue = save_file_get_sound_mode()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`u16 save_file_get_sound_mode(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_get_star_flags](#save_file_get_star_flags)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_get_total_star_count](#save_file_get_total_star_count)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_is_cannon_unlocked](#save_file_is_cannon_unlocked)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_reload](#save_file_reload)
-
-### Lua Example
-`save_file_reload(load_all)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| load_all | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void save_file_reload(u8 load_all);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_remove_star_flags](#save_file_remove_star_flags)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_set_course_coin_score](#save_file_set_course_coin_score)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_set_flags](#save_file_set_flags)
-
-### Lua Example
-`save_file_set_flags(flags)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| flags | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void save_file_set_flags(u32 flags);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_set_star_flags](#save_file_set_star_flags)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [touch_coin_score_age](#touch_coin_score_age)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from seqplayer.h
-
-
-
-
-## [sequence_player_get_tempo](#sequence_player_get_tempo)
-
-### Lua Example
-`local integerValue = sequence_player_get_tempo(player)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| player | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`u16 sequence_player_get_tempo(u8 player);`
-
-[:arrow_up_small:](#)
-
-
-
-## [sequence_player_get_tempo_acc](#sequence_player_get_tempo_acc)
-
-### Lua Example
-`local integerValue = sequence_player_get_tempo_acc(player)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| player | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`u16 sequence_player_get_tempo_acc(u8 player);`
-
-[:arrow_up_small:](#)
-
-
-
-## [sequence_player_get_transposition](#sequence_player_get_transposition)
-
-### Lua Example
-`local integerValue = sequence_player_get_transposition(player)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| player | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`u16 sequence_player_get_transposition(u8 player);`
-
-[:arrow_up_small:](#)
-
-
-
-## [sequence_player_set_tempo](#sequence_player_set_tempo)
-
-### Lua Example
-`sequence_player_set_tempo(player, tempo)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| player | `integer` |
-| tempo | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void sequence_player_set_tempo(u8 player, u16 tempo);`
-
-[:arrow_up_small:](#)
-
-
-
-## [sequence_player_set_tempo_acc](#sequence_player_set_tempo_acc)
-
-### Lua Example
-`sequence_player_set_tempo_acc(player, tempoAcc)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| player | `integer` |
-| tempoAcc | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void sequence_player_set_tempo_acc(u8 player, u16 tempoAcc);`
-
-[:arrow_up_small:](#)
-
-
-
-## [sequence_player_set_transposition](#sequence_player_set_transposition)
-
-### Lua Example
-`sequence_player_set_transposition(player, transposition)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| player | `integer` |
-| transposition | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void sequence_player_set_transposition(u8 player, u16 transposition);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from smlua_anim_utils.h
-
-
-
-
-## [get_mario_vanilla_animation](#get_mario_vanilla_animation)
-
-### Lua Example
-`local AnimationValue = get_mario_vanilla_animation(index)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| index | `integer` |
-
-### Returns
-[Animation](structs.md#Animation)
-
-### C Prototype
-`struct Animation *get_mario_vanilla_animation(u16 index);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_anim_util_get_current_animation_name](#smlua_anim_util_get_current_animation_name)
-
-### Lua Example
-`local stringValue = smlua_anim_util_get_current_animation_name(obj)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-
-### Returns
-- `string`
-
-### C Prototype
-`const char *smlua_anim_util_get_current_animation_name(struct Object *obj);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_anim_util_set_animation](#smlua_anim_util_set_animation)
-
-### Lua Example
-`smlua_anim_util_set_animation(obj, name)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| obj | [Object](structs.md#Object) |
-| name | `string` |
-
-### Returns
-- None
-
-### C Prototype
-`void smlua_anim_util_set_animation(struct Object *obj, const char *name);`
+### Description
+No description available.
[:arrow_up_small:](#)
---
-[< prev](functions-3.md) | [1](functions.md) | [2](functions-2.md) | [3](functions-3.md) | 4 | [5](functions-5.md) | [next >](functions-5.md)]
+[< prev](functions-3.md) | [1](functions.md) | [2](functions-2.md) | [3](functions-3.md) | 4 | [5](functions-5.md) | [6](functions-6.md) | [next >](functions-5.md)]
diff --git a/docs/lua/functions-5.md b/docs/lua/functions-5.md
index b290b125e..6cbb688ee 100644
--- a/docs/lua/functions-5.md
+++ b/docs/lua/functions-5.md
@@ -2,9 +2,6076 @@
---
-[< prev](functions-4.md) | [1](functions.md) | [2](functions-2.md) | [3](functions-3.md) | [4](functions-4.md) | 5]
+[< prev](functions-4.md) | [1](functions.md) | [2](functions-2.md) | [3](functions-3.md) | [4](functions-4.md) | 5 | [6](functions-6.md) | [next >](functions-6.md)]
+---
+# functions from object_helpers.c
+
+
+
+
+## [abs_angle_diff](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [apply_drag_to_value](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [approach_f32_signed](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [approach_f32_symmetric](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [approach_s16_symmetric](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [bhv_dust_smoke_loop](#bhv_dust_smoke_loop)
+
+### Lua Example
+`bhv_dust_smoke_loop()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void bhv_dust_smoke_loop(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [bhv_init_room](#bhv_init_room)
+
+### Lua Example
+`bhv_init_room()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void bhv_init_room(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [bit_shift_left](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [chain_segment_init](#chain_segment_init)
+
+### Lua Example
+`chain_segment_init(segment)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| segment | [ChainSegment](structs.md#ChainSegment) |
+
+### Returns
+- None
+
+### C Prototype
+`void chain_segment_init(struct ChainSegment *segment);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [clear_move_flag](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [clear_time_stop_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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [count_objects_with_behavior](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [count_unimportant_objects](#count_unimportant_objects)
+
+### Lua Example
+`local integerValue = count_unimportant_objects()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 count_unimportant_objects(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [create_transformation_from_matrices](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_abs_y_dist_to_home](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_advance_looping_anim](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_align_gfx_with_floor](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_angle_to_home](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_apply_drag_xz](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_become_intangible](#cur_obj_become_intangible)
+
+### Lua Example
+`cur_obj_become_intangible()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_become_intangible(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_become_tangible](#cur_obj_become_tangible)
+
+### Lua Example
+`cur_obj_become_tangible()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_become_tangible(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_can_mario_activate_textbox](#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](structs.md#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_can_mario_activate_textbox_2](#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](structs.md#MarioState) |
+| radius | `number` |
+| height | `number` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 cur_obj_can_mario_activate_textbox_2(struct MarioState* m, f32 radius, f32 height);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_change_action](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_check_anim_frame](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_check_anim_frame_in_range](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_check_frame_prior_current_frame](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_check_grabbed_mario](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_check_if_at_animation_end](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_check_if_near_animation_end](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_check_interacted](#cur_obj_check_interacted)
+
+### Lua Example
+`local integerValue = cur_obj_check_interacted()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 cur_obj_check_interacted(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_clear_interact_status_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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_compute_vel_xz](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_count_objects_with_behavior](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_detect_steep_floor](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_disable](#cur_obj_disable)
+
+### Lua Example
+`cur_obj_disable()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_disable(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_disable_rendering](#cur_obj_disable_rendering)
+
+### Lua Example
+`cur_obj_disable_rendering()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_disable_rendering(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_disable_rendering_and_become_intangible](#cur_obj_disable_rendering_and_become_intangible)
+
+### Lua Example
+`cur_obj_disable_rendering_and_become_intangible(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_disable_rendering_and_become_intangible(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_dist_to_nearest_object_with_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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_enable_rendering](#cur_obj_enable_rendering)
+
+### Lua Example
+`cur_obj_enable_rendering()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_enable_rendering(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_enable_rendering_2](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_enable_rendering_and_become_tangible](#cur_obj_enable_rendering_and_become_tangible)
+
+### Lua Example
+`cur_obj_enable_rendering_and_become_tangible(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_enable_rendering_and_become_tangible(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_enable_rendering_if_mario_in_room](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_end_dialog](#cur_obj_end_dialog)
+
+### Lua Example
+`cur_obj_end_dialog(m, dialogFlags, dialogResult)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| dialogFlags | `integer` |
+| dialogResult | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_end_dialog(struct MarioState* m, s32 dialogFlags, s32 dialogResult);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_extend_animation_if_at_end](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_find_nearby_held_actor](#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
+[Object](structs.md#Object)
+
+### C Prototype
+`struct Object *cur_obj_find_nearby_held_actor(const BehaviorScript *behavior, f32 maxDist);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_find_nearest_object_with_behavior](#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
+[Object](structs.md#Object)
+
+### C Prototype
+`struct Object *cur_obj_find_nearest_object_with_behavior(const BehaviorScript *behavior, f32 *dist);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_find_nearest_pole](#cur_obj_find_nearest_pole)
+
+### Lua Example
+`local ObjectValue = cur_obj_find_nearest_pole()`
+
+### Parameters
+- None
+
+### Returns
+[Object](structs.md#Object)
+
+### C Prototype
+`struct Object* cur_obj_find_nearest_pole(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_follow_path](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_forward_vel_approach_upward](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_get_dropped](#cur_obj_get_dropped)
+
+### Lua Example
+`cur_obj_get_dropped()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_get_dropped(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_get_thrown_or_placed](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_has_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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_has_model](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_hide](#cur_obj_hide)
+
+### Lua Example
+`cur_obj_hide()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_hide(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_hide_if_mario_far_away_y](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_if_hit_wall_bounce_away](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_init_animation](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_init_animation_and_anim_frame](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_init_animation_and_check_if_near_end](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_init_animation_and_extend_if_at_end](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_init_animation_with_accel_and_sound](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_init_animation_with_sound](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_is_any_player_on_platform](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_is_mario_ground_pounding_platform](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_is_mario_on_platform](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_lateral_dist_from_mario_to_home](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_lateral_dist_from_obj_to_home](#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](structs.md#Object) |
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 cur_obj_lateral_dist_from_obj_to_home(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_lateral_dist_to_home](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_mario_far_away](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_move_after_thrown_or_dropped](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_move_standard](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_move_up_and_down](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_move_update_ground_air_flags](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_move_update_underwater_flags](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_move_using_fvel_and_gravity](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_move_using_vel](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_move_using_vel_and_gravity](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_move_xz](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_move_xz_using_fvel_and_yaw](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_move_y](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_move_y_and_get_water_level](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_move_y_with_terminal_vel](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_nearest_object_with_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
+[Object](structs.md#Object)
+
+### C Prototype
+`struct Object *cur_obj_nearest_object_with_behavior(const BehaviorScript *behavior);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_outside_home_rectangle](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_outside_home_square](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_push_mario_away](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_push_mario_away_from_cylinder](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_reflect_move_angle_off_wall](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_reset_timer_and_subaction](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_resolve_wall_collisions](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_reverse_animation](#cur_obj_reverse_animation)
+
+### Lua Example
+`cur_obj_reverse_animation()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_reverse_animation(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_rotate_face_angle_using_vel](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_rotate_move_angle_using_vel](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_rotate_yaw_toward](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_scale_over_time](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_behavior](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_billboard_if_vanilla_cam](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_face_angle_to_move_angle](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_hitbox_and_die_if_attacked](#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](structs.md#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_hitbox_radius_and_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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_home_once](#cur_obj_set_home_once)
+
+### Lua Example
+`cur_obj_set_home_once()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_set_home_once(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_hurtbox_radius_and_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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_pos_relative](#cur_obj_set_pos_relative)
+
+### Lua Example
+`cur_obj_set_pos_relative(other, dleft, dy, dforward)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| other | [Object](structs.md#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_pos_relative_to_parent](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_pos_to_home](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_pos_to_home_and_stop](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_pos_to_home_with_debug](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_pos_via_transform](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_vel_from_mario_vel](#cur_obj_set_vel_from_mario_vel)
+
+### Lua Example
+`cur_obj_set_vel_from_mario_vel(m, f12, f14)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| f12 | `number` |
+| f14 | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_set_vel_from_mario_vel(struct MarioState* m, f32 f12, f32 f14);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_set_y_vel_and_animation](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_shake_screen](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_shake_y](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_shake_y_until](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_spawn_loot_blue_coin](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_spawn_loot_coin_at_mario_pos](#cur_obj_spawn_loot_coin_at_mario_pos)
+
+### Lua Example
+`cur_obj_spawn_loot_coin_at_mario_pos(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_spawn_loot_coin_at_mario_pos(struct MarioState* m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_spawn_particles](#cur_obj_spawn_particles)
+
+### Lua Example
+`cur_obj_spawn_particles(info)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| info | [SpawnParticlesInfo](structs.md#SpawnParticlesInfo) |
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_spawn_particles(struct SpawnParticlesInfo *info);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_spawn_star_at_y_offset](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_start_cam_event](#cur_obj_start_cam_event)
+
+### Lua Example
+`cur_obj_start_cam_event(obj, cameraEvent)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| cameraEvent | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_start_cam_event(UNUSED struct Object *obj, s32 cameraEvent);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_unhide](#cur_obj_unhide)
+
+### Lua Example
+`cur_obj_unhide()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_unhide(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_unrender_and_reset_state](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_unused_init_on_floor](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_unused_play_footstep_sound](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_unused_resolve_wall_collisions](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_update_floor](#cur_obj_update_floor)
+
+### Lua Example
+`cur_obj_update_floor()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void cur_obj_update_floor(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_update_floor_and_resolve_wall_collisions](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_update_floor_and_walls](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_update_floor_height](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_update_floor_height_and_get_floor](#cur_obj_update_floor_height_and_get_floor)
+
+### Lua Example
+`local SurfaceValue = cur_obj_update_floor_height_and_get_floor()`
+
+### Parameters
+- None
+
+### Returns
+[Surface](structs.md#Surface)
+
+### C Prototype
+`struct Surface *cur_obj_update_floor_height_and_get_floor(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_wait_then_blink](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_was_attacked_or_ground_pounded](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [cur_obj_within_12k_bounds](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [disable_time_stop](#disable_time_stop)
+
+### Lua Example
+`disable_time_stop()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void disable_time_stop(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [disable_time_stop_including_mario](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [dist_between_object_and_point](#dist_between_object_and_point)
+
+### Lua Example
+`local numberValue = dist_between_object_and_point(obj, pointX, pointY, pointZ)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [dist_between_objects](#dist_between_objects)
+
+### Lua Example
+`local numberValue = dist_between_objects(obj1, obj2)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj1 | [Object](structs.md#Object) |
+| obj2 | [Object](structs.md#Object) |
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 dist_between_objects(struct Object *obj1, struct Object *obj2);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [enable_time_stop](#enable_time_stop)
+
+### Lua Example
+`enable_time_stop()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void enable_time_stop(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [enable_time_stop_if_alone](#enable_time_stop_if_alone)
+
+### Lua Example
+`enable_time_stop_if_alone()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void enable_time_stop_if_alone(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [enable_time_stop_including_mario](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [find_object_with_behavior](#find_object_with_behavior)
+
+### Lua Example
+`local ObjectValue = find_object_with_behavior(behavior)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| behavior | `Pointer` <`BehaviorScript`> |
+
+### Returns
+[Object](structs.md#Object)
+
+### C Prototype
+`struct Object *find_object_with_behavior(const BehaviorScript *behavior);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [find_unimportant_object](#find_unimportant_object)
+
+### Lua Example
+`local ObjectValue = find_unimportant_object()`
+
+### Parameters
+- None
+
+### Returns
+[Object](structs.md#Object)
+
+### C Prototype
+`struct Object *find_unimportant_object(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [geo_offset_klepto_debug](#geo_offset_klepto_debug)
+
+### Lua Example
+`local integerValue = geo_offset_klepto_debug(callContext, a1, sp8)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| callContext | `integer` |
+| a1 | [GraphNode](structs.md#GraphNode) |
+| sp8 | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 geo_offset_klepto_debug(s32 callContext, struct GraphNode *a1, UNUSED s32 sp8);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_object_list_from_behavior](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_trajectory_length](#get_trajectory_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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [increment_velocity_toward_range](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [is_item_in_array](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [is_mario_moving_fast_or_in_air](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [lateral_dist_between_objects](#lateral_dist_between_objects)
+
+### Lua Example
+`local numberValue = lateral_dist_between_objects(obj1, obj2)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj1 | [Object](structs.md#Object) |
+| obj2 | [Object](structs.md#Object) |
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 lateral_dist_between_objects(struct Object *obj1, struct Object *obj2);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [linear_mtxf_mul_vec3f](#linear_mtxf_mul_vec3f)
+
+### Lua Example
+`linear_mtxf_mul_vec3f(m, dst, v)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | `Mat4` |
+| dst | [Vec3f](structs.md#Vec3f) |
+| v | [Vec3f](structs.md#Vec3f) |
+
+### Returns
+- None
+
+### C Prototype
+`void linear_mtxf_mul_vec3f(Mat4 m, Vec3f dst, Vec3f v);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [linear_mtxf_transpose_mul_vec3f](#linear_mtxf_transpose_mul_vec3f)
+
+### Lua Example
+`linear_mtxf_transpose_mul_vec3f(m, dst, v)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | `Mat4` |
+| dst | [Vec3f](structs.md#Vec3f) |
+| v | [Vec3f](structs.md#Vec3f) |
+
+### Returns
+- None
+
+### C Prototype
+`void linear_mtxf_transpose_mul_vec3f(Mat4 m, Vec3f dst, Vec3f v);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_is_dive_sliding](#mario_is_dive_sliding)
+
+### Lua Example
+`local integerValue = mario_is_dive_sliding(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 mario_is_dive_sliding(struct MarioState* m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_is_in_air_action](#mario_is_in_air_action)
+
+### Lua Example
+`local integerValue = mario_is_in_air_action(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 mario_is_in_air_action(struct MarioState* m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_is_within_rectangle](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mario_set_flag](#mario_set_flag)
+
+### Lua Example
+`mario_set_flag(flag)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| flag | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void mario_set_flag(s32 flag);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_angle_to_object](#obj_angle_to_object)
+
+### Lua Example
+`local integerValue = obj_angle_to_object(obj1, obj2)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj1 | [Object](structs.md#Object) |
+| obj2 | [Object](structs.md#Object) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s16 obj_angle_to_object(struct Object *obj1, struct Object *obj2);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_angle_to_point](#obj_angle_to_point)
+
+### Lua Example
+`local integerValue = obj_angle_to_point(obj, pointX, pointZ)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| pointX | `number` |
+| pointZ | `number` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s16 obj_angle_to_point(struct Object *obj, f32 pointX, f32 pointZ);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_apply_scale_to_matrix](#obj_apply_scale_to_matrix)
+
+### Lua Example
+`obj_apply_scale_to_matrix(obj, dst, src)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| dst | `Mat4` |
+| src | `Mat4` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_apply_scale_to_matrix(struct Object *obj, Mat4 dst, Mat4 src);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_apply_scale_to_transform](#obj_apply_scale_to_transform)
+
+### Lua Example
+`obj_apply_scale_to_transform(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_apply_scale_to_transform(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_attack_collided_from_other_object](#obj_attack_collided_from_other_object)
+
+### Lua Example
+`local integerValue = obj_attack_collided_from_other_object(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 obj_attack_collided_from_other_object(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_become_tangible](#obj_become_tangible)
+
+### Lua Example
+`obj_become_tangible(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_become_tangible(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_build_relative_transform](#obj_build_relative_transform)
+
+### Lua Example
+`obj_build_relative_transform(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_build_relative_transform(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_build_transform_from_pos_and_angle](#obj_build_transform_from_pos_and_angle)
+
+### Lua Example
+`obj_build_transform_from_pos_and_angle(obj, posIndex, angleIndex)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| posIndex | `integer` |
+| angleIndex | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_build_transform_from_pos_and_angle(struct Object *obj, s16 posIndex, s16 angleIndex);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_build_transform_relative_to_parent](#obj_build_transform_relative_to_parent)
+
+### Lua Example
+`obj_build_transform_relative_to_parent(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_build_transform_relative_to_parent(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_build_vel_from_transform](#obj_build_vel_from_transform)
+
+### Lua Example
+`obj_build_vel_from_transform(a0)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| a0 | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_build_vel_from_transform(struct Object *a0);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_check_if_collided_with_object](#obj_check_if_collided_with_object)
+
+### Lua Example
+`local integerValue = obj_check_if_collided_with_object(obj1, obj2)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj1 | [Object](structs.md#Object) |
+| obj2 | [Object](structs.md#Object) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 obj_check_if_collided_with_object(struct Object *obj1, struct Object *obj2);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_copy_angle](#obj_copy_angle)
+
+### Lua Example
+`obj_copy_angle(dst, src)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| dst | [Object](structs.md#Object) |
+| src | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_copy_angle(struct Object *dst, struct Object *src);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_copy_behavior_params](#obj_copy_behavior_params)
+
+### Lua Example
+`obj_copy_behavior_params(dst, src)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| dst | [Object](structs.md#Object) |
+| src | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_copy_behavior_params(struct Object *dst, struct Object *src);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_copy_graph_y_offset](#obj_copy_graph_y_offset)
+
+### Lua Example
+`obj_copy_graph_y_offset(dst, src)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| dst | [Object](structs.md#Object) |
+| src | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_copy_graph_y_offset(struct Object *dst, struct Object *src);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_copy_pos](#obj_copy_pos)
+
+### Lua Example
+`obj_copy_pos(dst, src)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| dst | [Object](structs.md#Object) |
+| src | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_copy_pos(struct Object *dst, struct Object *src);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_copy_pos_and_angle](#obj_copy_pos_and_angle)
+
+### Lua Example
+`obj_copy_pos_and_angle(dst, src)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| dst | [Object](structs.md#Object) |
+| src | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_copy_pos_and_angle(struct Object *dst, struct Object *src);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_copy_scale](#obj_copy_scale)
+
+### Lua Example
+`obj_copy_scale(dst, src)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| dst | [Object](structs.md#Object) |
+| src | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_copy_scale(struct Object *dst, struct Object *src);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_create_transform_from_self](#obj_create_transform_from_self)
+
+### Lua Example
+`obj_create_transform_from_self(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_create_transform_from_self(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_explode_and_spawn_coins](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_has_behavior](#obj_has_behavior)
+
+### Lua Example
+`local integerValue = obj_has_behavior(obj, behavior)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| behavior | `Pointer` <`BehaviorScript`> |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 obj_has_behavior(struct Object *obj, const BehaviorScript *behavior);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_init_animation](#obj_init_animation)
+
+### Lua Example
+`obj_init_animation(obj, animIndex)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| animIndex | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_init_animation(struct Object *obj, s32 animIndex);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_init_animation_with_accel_and_sound](#obj_init_animation_with_accel_and_sound)
+
+### Lua Example
+`obj_init_animation_with_accel_and_sound(obj, animIndex, accel)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| animIndex | `integer` |
+| accel | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_init_animation_with_accel_and_sound(struct Object *obj, s32 animIndex, f32 accel);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_init_animation_with_sound](#obj_init_animation_with_sound)
+
+### Lua Example
+`obj_init_animation_with_sound(obj, animations, animIndex)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| animations | [AnimationTable](structs.md#AnimationTable) |
+| animIndex | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_init_animation_with_sound(struct Object *obj, const struct AnimationTable* animations, s32 animIndex);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_is_hidden](#obj_is_hidden)
+
+### Lua Example
+`local integerValue = obj_is_hidden(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 obj_is_hidden(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_mark_for_deletion](#obj_mark_for_deletion)
+
+### Lua Example
+`obj_mark_for_deletion(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_mark_for_deletion(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_pitch_to_object](#obj_pitch_to_object)
+
+### Lua Example
+`local integerValue = obj_pitch_to_object(obj, target)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| target | [Object](structs.md#Object) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s16 obj_pitch_to_object(struct Object* obj, struct Object* target);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_scale](#obj_scale)
+
+### Lua Example
+`obj_scale(obj, scale)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| scale | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_scale(struct Object *obj, f32 scale);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_scale_random](#obj_scale_random)
+
+### Lua Example
+`obj_scale_random(obj, rangeLength, minScale)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| rangeLength | `number` |
+| minScale | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_scale_random(struct Object *obj, f32 rangeLength, f32 minScale);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_scale_xyz](#obj_scale_xyz)
+
+### Lua Example
+`obj_scale_xyz(obj, xScale, yScale, zScale)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| xScale | `number` |
+| yScale | `number` |
+| zScale | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_scale_xyz(struct Object *obj, f32 xScale, f32 yScale, f32 zScale);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_angle](#obj_set_angle)
+
+### Lua Example
+`obj_set_angle(obj, pitch, yaw, roll)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| pitch | `integer` |
+| yaw | `integer` |
+| roll | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_set_angle(struct Object *obj, s16 pitch, s16 yaw, s16 roll);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_behavior](#obj_set_behavior)
+
+### Lua Example
+`obj_set_behavior(obj, behavior)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| behavior | `Pointer` <`BehaviorScript`> |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_set_behavior(struct Object *obj, const BehaviorScript *behavior);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_billboard](#obj_set_billboard)
+
+### Lua Example
+`obj_set_billboard(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_set_billboard(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_cylboard](#obj_set_cylboard)
+
+### Lua Example
+`obj_set_cylboard(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_set_cylboard(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_face_angle](#obj_set_face_angle)
+
+### Lua Example
+`obj_set_face_angle(obj, pitch, yaw, roll)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_face_angle_to_move_angle](#obj_set_face_angle_to_move_angle)
+
+### Lua Example
+`obj_set_face_angle_to_move_angle(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_set_face_angle_to_move_angle(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_gfx_angle](#obj_set_gfx_angle)
+
+### Lua Example
+`obj_set_gfx_angle(obj, pitch, yaw, roll)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_gfx_pos](#obj_set_gfx_pos)
+
+### Lua Example
+`obj_set_gfx_pos(obj, x, y, z)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_gfx_pos_at_obj_pos](#obj_set_gfx_pos_at_obj_pos)
+
+### Lua Example
+`obj_set_gfx_pos_at_obj_pos(obj1, obj2)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj1 | [Object](structs.md#Object) |
+| obj2 | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_set_gfx_pos_at_obj_pos(struct Object *obj1, struct Object *obj2);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_gfx_pos_from_pos](#obj_set_gfx_pos_from_pos)
+
+### Lua Example
+`obj_set_gfx_pos_from_pos(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_set_gfx_pos_from_pos(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_gfx_scale](#obj_set_gfx_scale)
+
+### Lua Example
+`obj_set_gfx_scale(obj, x, y, z)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_held_state](#obj_set_held_state)
+
+### Lua Example
+`obj_set_held_state(obj, heldBehavior)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| heldBehavior | `Pointer` <`BehaviorScript`> |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_set_held_state(struct Object *obj, const BehaviorScript *heldBehavior);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_hitbox](#obj_set_hitbox)
+
+### Lua Example
+`obj_set_hitbox(obj, hitbox)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| hitbox | [ObjectHitbox](structs.md#ObjectHitbox) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_set_hitbox(struct Object *obj, struct ObjectHitbox *hitbox);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_hitbox_radius_and_height](#obj_set_hitbox_radius_and_height)
+
+### Lua Example
+`obj_set_hitbox_radius_and_height(o, radius, height)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| o | [Object](structs.md#Object) |
+| radius | `number` |
+| height | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_set_hitbox_radius_and_height(struct Object *o, f32 radius, f32 height);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_hurtbox_radius_and_height](#obj_set_hurtbox_radius_and_height)
+
+### Lua Example
+`obj_set_hurtbox_radius_and_height(o, radius, height)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| o | [Object](structs.md#Object) |
+| radius | `number` |
+| height | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_set_hurtbox_radius_and_height(struct Object *o, f32 radius, f32 height);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_move_angle](#obj_set_move_angle)
+
+### Lua Example
+`obj_set_move_angle(obj, pitch, yaw, roll)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_parent_relative_pos](#obj_set_parent_relative_pos)
+
+### Lua Example
+`obj_set_parent_relative_pos(obj, relX, relY, relZ)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_pos](#obj_set_pos)
+
+### Lua Example
+`obj_set_pos(obj, x, y, z)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| x | `integer` |
+| y | `integer` |
+| z | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_set_pos(struct Object *obj, s16 x, s16 y, s16 z);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_pos_relative](#obj_set_pos_relative)
+
+### Lua Example
+`obj_set_pos_relative(obj, other, dleft, dy, dforward)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| other | [Object](structs.md#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_set_throw_matrix_from_transform](#obj_set_throw_matrix_from_transform)
+
+### Lua Example
+`obj_set_throw_matrix_from_transform(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_set_throw_matrix_from_transform(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_spawn_loot_blue_coins](#obj_spawn_loot_blue_coins)
+
+### Lua Example
+`obj_spawn_loot_blue_coins(obj, numCoins, sp28, posJitter)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_spawn_loot_coins](#obj_spawn_loot_coins)
+
+### Lua Example
+`obj_spawn_loot_coins(obj, numCoins, sp30, coinBehavior, posJitter, model)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_spawn_loot_yellow_coins](#obj_spawn_loot_yellow_coins)
+
+### Lua Example
+`obj_spawn_loot_yellow_coins(obj, numCoins, sp28)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| numCoins | `integer` |
+| sp28 | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_spawn_loot_yellow_coins(struct Object *obj, s32 numCoins, f32 sp28);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_translate_local](#obj_translate_local)
+
+### Lua Example
+`obj_translate_local(obj, posIndex, localTranslateIndex)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| posIndex | `integer` |
+| localTranslateIndex | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_translate_local(struct Object *obj, s16 posIndex, s16 localTranslateIndex);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_translate_xyz_random](#obj_translate_xyz_random)
+
+### Lua Example
+`obj_translate_xyz_random(obj, rangeLength)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| rangeLength | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_translate_xyz_random(struct Object *obj, f32 rangeLength);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_translate_xz_random](#obj_translate_xz_random)
+
+### Lua Example
+`obj_translate_xz_random(obj, rangeLength)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| rangeLength | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_translate_xz_random(struct Object *obj, f32 rangeLength);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_turn_toward_object](#obj_turn_toward_object)
+
+### Lua Example
+`local integerValue = obj_turn_toward_object(obj, target, angleIndex, turnAmount)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| target | [Object](structs.md#Object) |
+| angleIndex | `integer` |
+| turnAmount | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s16 obj_turn_toward_object(struct Object *obj, struct Object *target, s16 angleIndex, s16 turnAmount);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [obj_update_pos_from_parent_transformation](#obj_update_pos_from_parent_transformation)
+
+### Lua Example
+`obj_update_pos_from_parent_transformation(a0, a1)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| a0 | `Mat4` |
+| a1 | [Object](structs.md#Object) |
+
+### Returns
+- None
+
+### C Prototype
+`void obj_update_pos_from_parent_transformation(Mat4 a0, struct Object *a1);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [player_performed_grab_escape_action](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [random_f32_around_zero](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_mario_interact_hoot_if_in_range](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_room_override](#set_room_override)
+
+### Lua Example
+`set_room_override(room)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| room | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void set_room_override(s16 room);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_time_stop_flags](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_time_stop_flags_if_alone](#set_time_stop_flags_if_alone)
+
+### Lua Example
+`set_time_stop_flags_if_alone(flags)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| flags | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void set_time_stop_flags_if_alone(s32 flags);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [signum_positive](#signum_positive)
+
+### Lua Example
+`local integerValue = signum_positive(x)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| x | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 signum_positive(s32 x);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [spawn_base_star_with_no_lvl_exit](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [spawn_mist_particles](#spawn_mist_particles)
+
+### Lua Example
+`spawn_mist_particles()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void spawn_mist_particles(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [spawn_mist_particles_with_sound](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [spawn_star_with_no_lvl_exit](#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
+[Object](structs.md#Object)
+
+### C Prototype
+`struct Object *spawn_star_with_no_lvl_exit(s32 sp20, s32 sp24);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [spawn_water_droplet](#spawn_water_droplet)
+
+### Lua Example
+`local ObjectValue = spawn_water_droplet(parent, params)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| parent | [Object](structs.md#Object) |
+| params | [WaterDropletParams](structs.md#WaterDropletParams) |
+
+### Returns
+[Object](structs.md#Object)
+
+### C Prototype
+`struct Object *spawn_water_droplet(struct Object *parent, struct WaterDropletParams *params);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [stub_obj_helpers_3](#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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [stub_obj_helpers_4](#stub_obj_helpers_4)
+
+### Lua Example
+`stub_obj_helpers_4()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void stub_obj_helpers_4(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+---
+# functions from object_list_processor.h
+
+
+
+
+## [set_object_respawn_info_bits](#set_object_respawn_info_bits)
+
+### Lua Example
+`set_object_respawn_info_bits(obj, bits)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| bits | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void set_object_respawn_info_bits(struct Object *obj, u8 bits);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+---
+# functions from rumble_init.c
+
+
+
+
+## [queue_rumble_data](#queue_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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [queue_rumble_data_mario](#queue_rumble_data_mario)
+
+### Lua Example
+`queue_rumble_data_mario(m, a0, a1)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| a0 | `integer` |
+| a1 | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void queue_rumble_data_mario(struct MarioState* m, s16 a0, s16 a1);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [queue_rumble_data_object](#queue_rumble_data_object)
+
+### Lua Example
+`queue_rumble_data_object(object, a0, a1)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| object | [Object](structs.md#Object) |
+| a0 | `integer` |
+| a1 | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void queue_rumble_data_object(struct Object* object, s16 a0, s16 a1);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [reset_rumble_timers](#reset_rumble_timers)
+
+### Lua Example
+`reset_rumble_timers(m)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+
+### Returns
+- None
+
+### C Prototype
+`void reset_rumble_timers(struct MarioState* m);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [reset_rumble_timers_2](#reset_rumble_timers_2)
+
+### Lua Example
+`reset_rumble_timers_2(m, a0)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| a0 | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void reset_rumble_timers_2(struct MarioState* m, s32 a0);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+---
+# functions from save_file.h
+
+
+
+
+## [save_file_clear_flags](#save_file_clear_flags)
+
+### Lua Example
+`save_file_clear_flags(flags)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| flags | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void save_file_clear_flags(u32 flags);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_do_save](#save_file_do_save)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_erase](#save_file_erase)
+
+### Lua Example
+`save_file_erase(fileIndex)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| fileIndex | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void save_file_erase(s32 fileIndex);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_erase_current_backup_save](#save_file_erase_current_backup_save)
+
+### Lua Example
+`save_file_erase_current_backup_save()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void save_file_erase_current_backup_save(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_get_cap_pos](#save_file_get_cap_pos)
+
+### Lua Example
+`local integerValue = save_file_get_cap_pos(capPos)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| capPos | [Vec3s](structs.md#Vec3s) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 save_file_get_cap_pos(Vec3s capPos);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_get_course_coin_score](#save_file_get_course_coin_score)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_get_course_star_count](#save_file_get_course_star_count)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_get_flags](#save_file_get_flags)
+
+### Lua Example
+`local integerValue = save_file_get_flags()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`u32 save_file_get_flags(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_get_max_coin_score](#save_file_get_max_coin_score)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_get_sound_mode](#save_file_get_sound_mode)
+
+### Lua Example
+`local integerValue = save_file_get_sound_mode()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`u16 save_file_get_sound_mode(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_get_star_flags](#save_file_get_star_flags)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_get_total_star_count](#save_file_get_total_star_count)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_is_cannon_unlocked](#save_file_is_cannon_unlocked)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_reload](#save_file_reload)
+
+### Lua Example
+`save_file_reload(load_all)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| load_all | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void save_file_reload(u8 load_all);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_remove_star_flags](#save_file_remove_star_flags)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_set_course_coin_score](#save_file_set_course_coin_score)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_set_flags](#save_file_set_flags)
+
+### Lua Example
+`save_file_set_flags(flags)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| flags | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void save_file_set_flags(u32 flags);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_set_star_flags](#save_file_set_star_flags)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [touch_coin_score_age](#touch_coin_score_age)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+---
+# functions from seqplayer.h
+
+
+
+
+## [sequence_player_get_tempo](#sequence_player_get_tempo)
+
+### Lua Example
+`local integerValue = sequence_player_get_tempo(player)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| player | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`u16 sequence_player_get_tempo(u8 player);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [sequence_player_get_tempo_acc](#sequence_player_get_tempo_acc)
+
+### Lua Example
+`local integerValue = sequence_player_get_tempo_acc(player)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| player | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`u16 sequence_player_get_tempo_acc(u8 player);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [sequence_player_get_transposition](#sequence_player_get_transposition)
+
+### Lua Example
+`local integerValue = sequence_player_get_transposition(player)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| player | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`u16 sequence_player_get_transposition(u8 player);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [sequence_player_set_tempo](#sequence_player_set_tempo)
+
+### Lua Example
+`sequence_player_set_tempo(player, tempo)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| player | `integer` |
+| tempo | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void sequence_player_set_tempo(u8 player, u16 tempo);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [sequence_player_set_tempo_acc](#sequence_player_set_tempo_acc)
+
+### Lua Example
+`sequence_player_set_tempo_acc(player, tempoAcc)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| player | `integer` |
+| tempoAcc | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void sequence_player_set_tempo_acc(u8 player, u16 tempoAcc);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [sequence_player_set_transposition](#sequence_player_set_transposition)
+
+### Lua Example
+`sequence_player_set_transposition(player, transposition)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| player | `integer` |
+| transposition | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void sequence_player_set_transposition(u8 player, u16 transposition);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+---
+# functions from smlua_anim_utils.h
+
+
+
+
+## [get_mario_vanilla_animation](#get_mario_vanilla_animation)
+
+### Lua Example
+`local AnimationValue = get_mario_vanilla_animation(index)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| index | `integer` |
+
+### Returns
+[Animation](structs.md#Animation)
+
+### C Prototype
+`struct Animation *get_mario_vanilla_animation(u16 index);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [smlua_anim_util_get_current_animation_name](#smlua_anim_util_get_current_animation_name)
+
+### Lua Example
+`local stringValue = smlua_anim_util_get_current_animation_name(obj)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+
+### Returns
+- `string`
+
+### C Prototype
+`const char *smlua_anim_util_get_current_animation_name(struct Object *obj);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [smlua_anim_util_set_animation](#smlua_anim_util_set_animation)
+
+### Lua Example
+`smlua_anim_util_set_animation(obj, name)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| obj | [Object](structs.md#Object) |
+| name | `string` |
+
+### Returns
+- None
+
+### C Prototype
+`void smlua_anim_util_set_animation(struct Object *obj, const char *name);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
---
# functions from smlua_audio_utils.h
@@ -27,6 +6094,9 @@
### C Prototype
`void audio_sample_destroy(struct ModAudio* audio);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -47,6 +6117,9 @@
### C Prototype
`struct ModAudio* audio_sample_load(const char* filename);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -69,6 +6142,9 @@
### C Prototype
`void audio_sample_play(struct ModAudio* audio, Vec3f position, f32 volume);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -89,6 +6165,9 @@
### C Prototype
`void audio_sample_stop(struct ModAudio* audio);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -109,6 +6188,9 @@
### C Prototype
`void audio_stream_destroy(struct ModAudio* audio);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -129,6 +6211,9 @@
### C Prototype
`f32 audio_stream_get_frequency(struct ModAudio* audio);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -149,6 +6234,9 @@
### C Prototype
`bool audio_stream_get_looping(struct ModAudio* audio);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -169,6 +6257,9 @@
### C Prototype
`f32 audio_stream_get_position(struct ModAudio* audio);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -189,6 +6280,9 @@
### C Prototype
`f32 audio_stream_get_volume(struct ModAudio* audio);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -209,6 +6303,9 @@
### C Prototype
`struct ModAudio* audio_stream_load(const char* filename);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -229,6 +6326,9 @@
### C Prototype
`void audio_stream_pause(struct ModAudio* audio);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -251,6 +6351,9 @@
### C Prototype
`void audio_stream_play(struct ModAudio* audio, bool restart, f32 volume);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -272,6 +6375,9 @@
### C Prototype
`void audio_stream_set_frequency(struct ModAudio* audio, f32 freq);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -293,6 +6399,9 @@
### C Prototype
`void audio_stream_set_looping(struct ModAudio* audio, bool looping);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -314,6 +6423,9 @@
### C Prototype
`void audio_stream_set_position(struct ModAudio* audio, f32 pos);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -335,6 +6447,9 @@
### C Prototype
`void audio_stream_set_volume(struct ModAudio* audio, f32 volume);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -355,6 +6470,9 @@
### C Prototype
`void audio_stream_stop(struct ModAudio* audio);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -378,6 +6496,9 @@
### C Prototype
`void smlua_audio_utils_replace_sequence(u8 sequenceId, u8 bankId, u8 defaultVolume, const char* m64Name);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -396,6 +6517,9 @@
### C Prototype
`void smlua_audio_utils_reset_all(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -422,6 +6546,9 @@
### C Prototype
`void camera_allow_toxic_gas_camera(u8 allow);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -442,6 +6569,9 @@
### C Prototype
`void camera_config_enable_analog_cam(bool enable);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -462,6 +6592,9 @@
### C Prototype
`void camera_config_enable_free_cam(bool enable);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -482,6 +6615,9 @@
### C Prototype
`void camera_config_enable_mouse_look(bool enable);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -500,6 +6636,9 @@
### C Prototype
`u32 camera_config_get_aggression(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -518,6 +6657,9 @@
### C Prototype
`u32 camera_config_get_deceleration(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -536,6 +6678,9 @@
### C Prototype
`u32 camera_config_get_pan_level(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -554,6 +6699,9 @@
### C Prototype
`u32 camera_config_get_x_sensitivity(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -572,6 +6720,9 @@
### C Prototype
`u32 camera_config_get_y_sensitivity(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -592,6 +6743,9 @@
### C Prototype
`void camera_config_invert_x(bool invert);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -612,6 +6766,9 @@
### C Prototype
`void camera_config_invert_y(bool invert);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -630,6 +6787,9 @@
### C Prototype
`bool camera_config_is_analog_cam_enabled(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -648,6 +6808,9 @@
### C Prototype
`bool camera_config_is_free_cam_enabled(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -666,6 +6829,9 @@
### C Prototype
`bool camera_config_is_mouse_look_enabled(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -684,6 +6850,9 @@
### C Prototype
`bool camera_config_is_x_inverted(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -702,6 +6871,9 @@
### C Prototype
`bool camera_config_is_y_inverted(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -722,6 +6894,9 @@
### C Prototype
`void camera_config_set_aggression(u32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -742,6 +6917,9 @@
### C Prototype
`void camera_config_set_deceleration(u32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -762,6 +6940,9 @@
### C Prototype
`void camera_config_set_pan_level(u32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -782,6 +6963,9 @@
### C Prototype
`void camera_config_set_x_sensitivity(u32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -802,6 +6986,9 @@
### C Prototype
`void camera_config_set_y_sensitivity(u32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -820,6 +7007,9 @@
### C Prototype
`void camera_freeze(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -838,6 +7028,9 @@
### C Prototype
`bool camera_get_checking_surfaces(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -856,6 +7049,9 @@
### C Prototype
`bool camera_is_frozen(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -874,6 +7070,9 @@
### C Prototype
`void camera_reset_overrides(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -894,6 +7093,9 @@
### C Prototype
`void camera_romhack_allow_centering(u8 allow);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -914,6 +7116,9 @@
### C Prototype
`void camera_romhack_allow_dpad_usage(u8 allow);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -934,6 +7139,9 @@
### C Prototype
`void camera_set_checking_surfaces(bool value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -954,6 +7162,9 @@
### C Prototype
`void camera_set_romhack_override(enum RomhackCameraOverride rco);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -972,6 +7183,9 @@
### C Prototype
`void camera_unfreeze(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1000,6 +7214,9 @@
### C Prototype
`struct Surface* collision_find_ceil(f32 x, f32 y, f32 z);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1022,6 +7239,9 @@
### C Prototype
`struct Surface* collision_find_floor(f32 x, f32 y, f32 z);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1040,6 +7260,9 @@
### C Prototype
`struct WallCollisionData* collision_get_temp_wall_collision_data(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1061,6 +7284,9 @@
### C Prototype
`struct Surface* get_surface_from_wcd_index(struct WallCollisionData* wcd, s8 index);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1079,6 +7305,9 @@
### C Prototype
`struct Surface* get_water_surface_pseudo_floor(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1099,6 +7328,9 @@
### C Prototype
`void smlua_collision_util_find_surface_types(Collision* data);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1119,6 +7351,9 @@
### C Prototype
`Collision* smlua_collision_util_get(const char* name);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1137,6 +7372,9 @@
### C Prototype
`Collision* smlua_collision_util_get_current_terrain_collision(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1158,6 +7396,9 @@
### C Prototype
`Collision *smlua_collision_util_get_level_collision(u32 level, u16 area);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1190,6 +7431,9 @@
### C Prototype
`u8 get_fog_color(u8 index);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1208,6 +7452,9 @@
### C Prototype
`f32 get_fog_intensity(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1228,6 +7475,9 @@
### C Prototype
`u8 get_lighting_color(u8 index);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1248,6 +7498,9 @@
### C Prototype
`u8 get_lighting_color_ambient(u8 index);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1268,6 +7521,9 @@
### C Prototype
`f32 get_lighting_dir(u8 index);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1286,6 +7542,9 @@
### C Prototype
`s8 get_skybox(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1306,6 +7565,9 @@
### C Prototype
`u8 get_skybox_color(u8 index);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1326,6 +7588,9 @@
### C Prototype
`u8 get_vertex_color(u8 index);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1347,6 +7612,9 @@
### C Prototype
`void set_fog_color(u8 index, u8 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1367,6 +7635,9 @@
### C Prototype
`void set_fog_intensity(f32 intensity);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1388,6 +7659,9 @@
### C Prototype
`void set_lighting_color(u8 index, u8 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1409,6 +7683,9 @@
### C Prototype
`void set_lighting_color_ambient(u8 index, u8 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1430,6 +7707,9 @@
### C Prototype
`void set_lighting_dir(u8 index, f32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1450,6 +7730,9 @@
### C Prototype
`void set_override_far(f32 far);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1470,6 +7753,9 @@
### C Prototype
`void set_override_fov(f32 fov);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1490,6 +7776,9 @@
### C Prototype
`void set_override_near(f32 near);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1510,6 +7799,9 @@
### C Prototype
`void set_override_skybox(s8 background);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1531,6 +7823,9 @@
### C Prototype
`void set_skybox_color(u8 index, u8 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1552,6 +7847,9 @@
### C Prototype
`void set_vertex_color(u8 index, u8 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1578,6 +7876,9 @@
### C Prototype
`bool level_is_vanilla_level(s16 levelNum);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1605,6 +7906,9 @@
### C Prototype
`s16 level_register(const char* scriptEntryName, s16 courseNum, const char* fullName, const char* shortName, u32 acousticReach, u32 echoLevel1, u32 echoLevel2, u32 echoLevel3);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1625,6 +7929,9 @@
### C Prototype
`void smlua_level_util_change_area(s32 areaIndex);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1645,6 +7952,9 @@
### C Prototype
`struct CustomLevelInfo* smlua_level_util_get_info(s16 levelNum);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1665,6 +7975,9 @@
### C Prototype
`struct CustomLevelInfo* smlua_level_util_get_info_from_course_num(u8 courseNum);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1685,6 +7998,9 @@
### C Prototype
`struct CustomLevelInfo* smlua_level_util_get_info_from_short_name(const char* shortName);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1705,6 +8021,9 @@
### C Prototype
`bool warp_exit_level(s32 aDelay);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1723,6 +8042,9 @@
### C Prototype
`bool warp_restart_level(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1743,6 +8065,9 @@
### C Prototype
`bool warp_to_castle(s32 aLevel);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1765,6 +8090,9 @@
### C Prototype
`bool warp_to_level(s32 aLevel, s32 aArea, s32 aAct);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1783,6 +8111,9 @@
### C Prototype
`bool warp_to_start_level(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1806,6 +8137,9 @@
### C Prototype
`bool warp_to_warpnode(s32 aLevel, s32 aArea, s32 aAct, s32 aWarpId);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1834,6 +8168,9 @@
### C Prototype
`s32 clamp(s32 a, s32 b, s32 c);`
+### Description
+Clamps a signed 32-bit integer `a` between bounds `b` (minimum) and `c` (maximum)
+
[:arrow_up_small:](#)
@@ -1856,6 +8193,9 @@
### C Prototype
`f32 clampf(f32 a, f32 b, f32 c);`
+### Description
+Clamps a floating-point number `a` between bounds `b` (minimum) and `c` (maximum)
+
[:arrow_up_small:](#)
@@ -1876,6 +8216,9 @@
### C Prototype
`s16 degrees_to_sm64(f32 degreesAngle);`
+### Description
+Converts an angle from degrees to SM64 format
+
[:arrow_up_small:](#)
@@ -1897,6 +8240,9 @@
### C Prototype
`f32 hypotf(f32 a, f32 b);`
+### Description
+Computes the hypotenuse of a right triangle given sides `a` and `b` using the Pythagorean theorem
+
[:arrow_up_small:](#)
@@ -1918,6 +8264,9 @@
### C Prototype
`s32 max(s32 a, s32 b);`
+### Description
+Finds the maximum of two signed 32-bit integers
+
[:arrow_up_small:](#)
@@ -1939,6 +8288,9 @@
### C Prototype
`f32 maxf(f32 a, f32 b);`
+### Description
+Finds the maximum of two floating-point numbers
+
[:arrow_up_small:](#)
@@ -1960,6 +8312,9 @@
### C Prototype
`s32 min(s32 a, s32 b);`
+### Description
+Finds the minimum of two signed 32-bit integers
+
[:arrow_up_small:](#)
@@ -1981,6 +8336,9 @@
### C Prototype
`f32 minf(f32 a, f32 b);`
+### Description
+Finds the minimum of two floating-point numbers
+
[:arrow_up_small:](#)
@@ -2001,6 +8359,9 @@
### C Prototype
`s16 radians_to_sm64(f32 radiansAngle);`
+### Description
+Converts an angle from radians to SM64 format
+
[:arrow_up_small:](#)
@@ -2021,6 +8382,9 @@
### C Prototype
`f32 sm64_to_degrees(s16 sm64Angle);`
+### Description
+Converts an angle from SM64 format to degrees
+
[:arrow_up_small:](#)
@@ -2041,6 +8405,9 @@
### C Prototype
`f32 sm64_to_radians(s16 sm64Angle);`
+### Description
+Converts an angle from SM64 format to radians
+
[:arrow_up_small:](#)
@@ -2061,6 +8428,9 @@
### C Prototype
`s32 sqr(s32 x);`
+### Description
+Computes the square of a signed 32-bit integer
+
[:arrow_up_small:](#)
@@ -2081,3240 +8451,13 @@
### C Prototype
`f32 sqrf(f32 x);`
-[:arrow_up_small:](#)
-
-
-
----
-# functions from smlua_misc_utils.h
-
-
-
-
-## [allocate_mario_action](#allocate_mario_action)
-
-### Lua Example
-`local integerValue = allocate_mario_action(actFlags)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| actFlags | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`u32 allocate_mario_action(u32 actFlags);`
-
-[:arrow_up_small:](#)
-
-
-
-## [course_is_main_course](#course_is_main_course)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [deref_s32_pointer](#deref_s32_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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [djui_attempting_to_open_playerlist](#djui_attempting_to_open_playerlist)
-
-### Lua Example
-`local booleanValue = djui_attempting_to_open_playerlist()`
-
-### Parameters
-- None
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool djui_attempting_to_open_playerlist(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [djui_is_playerlist_open](#djui_is_playerlist_open)
-
-### Lua Example
-`local booleanValue = djui_is_playerlist_open()`
-
-### Parameters
-- None
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool djui_is_playerlist_open(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [djui_is_popup_disabled](#djui_is_popup_disabled)
-
-### Lua Example
-`local booleanValue = djui_is_popup_disabled()`
-
-### Parameters
-- None
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool djui_is_popup_disabled(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [djui_menu_get_font](#djui_menu_get_font)
-
-### Lua Example
-`local enumValue = djui_menu_get_font()`
-
-### Parameters
-- None
-
-### Returns
-[enum DjuiFontType](constants.md#enum-DjuiFontType)
-
-### C Prototype
-`enum DjuiFontType djui_menu_get_font(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [djui_menu_get_theme](#djui_menu_get_theme)
-
-### Lua Example
-`local DjuiThemeValue = djui_menu_get_theme()`
-
-### Parameters
-- None
-
-### Returns
-[DjuiTheme](structs.md#DjuiTheme)
-
-### C Prototype
-`struct DjuiTheme* djui_menu_get_theme(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [djui_popup_create_global](#djui_popup_create_global)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [djui_reset_popup_disabled_override](#djui_reset_popup_disabled_override)
-
-### Lua Example
-`djui_reset_popup_disabled_override()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void djui_reset_popup_disabled_override(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [djui_set_popup_disabled_override](#djui_set_popup_disabled_override)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_coopnet_id](#get_coopnet_id)
-
-### Lua Example
-`local stringValue = get_coopnet_id(localIndex)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| localIndex | `integer` |
-
-### Returns
-- `string`
-
-### C Prototype
-`const char* get_coopnet_id(s8 localIndex);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_current_save_file_num](#get_current_save_file_num)
-
-### Lua Example
-`local integerValue = get_current_save_file_num()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`s16 get_current_save_file_num(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_date_and_time](#get_date_and_time)
-
-### Lua Example
-`local DateTimeValue = get_date_and_time()`
-
-### Parameters
-- None
-
-### Returns
-[DateTime](structs.md#DateTime)
-
-### C Prototype
-`struct DateTime* get_date_and_time(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_dialog_box_state](#get_dialog_box_state)
-
-### Lua Example
-`local integerValue = get_dialog_box_state()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`s8 get_dialog_box_state(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_dialog_id](#get_dialog_id)
-
-### Lua Example
-`local integerValue = get_dialog_id()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`s16 get_dialog_id(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_dialog_response](#get_dialog_response)
-
-### Lua Example
-`local integerValue = get_dialog_response()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 get_dialog_response(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_envfx](#get_envfx)
-
-### Lua Example
-`local integerValue = get_envfx()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`u16 get_envfx(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_environment_region](#get_environment_region)
-
-### Lua Example
-`local numberValue = get_environment_region(index)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| index | `integer` |
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 get_environment_region(u8 index);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_global_timer](#get_global_timer)
-
-### Lua Example
-`local integerValue = get_global_timer()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`u32 get_global_timer(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_got_file_coin_hi_score](#get_got_file_coin_hi_score)
-
-### Lua Example
-`local booleanValue = get_got_file_coin_hi_score()`
-
-### Parameters
-- None
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool get_got_file_coin_hi_score(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_hand_foot_pos_x](#get_hand_foot_pos_x)
-
-### Lua Example
-`local numberValue = get_hand_foot_pos_x(m, index)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| index | `integer` |
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 get_hand_foot_pos_x(struct MarioState* m, u8 index);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_hand_foot_pos_y](#get_hand_foot_pos_y)
-
-### Lua Example
-`local numberValue = get_hand_foot_pos_y(m, index)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| index | `integer` |
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 get_hand_foot_pos_y(struct MarioState* m, u8 index);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_hand_foot_pos_z](#get_hand_foot_pos_z)
-
-### Lua Example
-`local numberValue = get_hand_foot_pos_z(m, index)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| m | [MarioState](structs.md#MarioState) |
-| index | `integer` |
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 get_hand_foot_pos_z(struct MarioState* m, u8 index);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_last_completed_course_num](#get_last_completed_course_num)
-
-### Lua Example
-`local integerValue = get_last_completed_course_num()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`u8 get_last_completed_course_num(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_last_completed_star_num](#get_last_completed_star_num)
-
-### Lua Example
-`local integerValue = get_last_completed_star_num()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`u8 get_last_completed_star_num(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_last_star_or_key](#get_last_star_or_key)
-
-### Lua Example
-`local integerValue = get_last_star_or_key()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 get_last_star_or_key(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_local_discord_id](#get_local_discord_id)
-
-### Lua Example
-`local stringValue = get_local_discord_id()`
-
-### Parameters
-- None
-
-### Returns
-- `string`
-
-### C Prototype
-`const char* get_local_discord_id(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_network_area_timer](#get_network_area_timer)
-
-### Lua Example
-`local integerValue = get_network_area_timer()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`u32 get_network_area_timer(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_os_name](#get_os_name)
-
-### Lua Example
-`local stringValue = get_os_name()`
-
-### Parameters
-- None
-
-### Returns
-- `string`
-
-### C Prototype
-`const char* get_os_name(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_save_file_modified](#get_save_file_modified)
-
-### Lua Example
-`local booleanValue = get_save_file_modified()`
-
-### Parameters
-- None
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool get_save_file_modified(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_temp_s32_pointer](#get_temp_s32_pointer)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_time](#get_time)
-
-### Lua Example
-`local integerValue = get_time()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`s64 get_time(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_ttc_speed_setting](#get_ttc_speed_setting)
-
-### Lua Example
-`local integerValue = get_ttc_speed_setting()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`s16 get_ttc_speed_setting(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_volume_env](#get_volume_env)
-
-### Lua Example
-`local numberValue = get_volume_env()`
-
-### Parameters
-- None
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 get_volume_env(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_volume_level](#get_volume_level)
-
-### Lua Example
-`local numberValue = get_volume_level()`
-
-### Parameters
-- None
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 get_volume_level(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_volume_master](#get_volume_master)
-
-### Lua Example
-`local numberValue = get_volume_master()`
-
-### Parameters
-- None
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 get_volume_master(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_volume_sfx](#get_volume_sfx)
-
-### Lua Example
-`local numberValue = get_volume_sfx()`
-
-### Parameters
-- None
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 get_volume_sfx(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_water_level](#get_water_level)
-
-### Lua Example
-`local integerValue = get_water_level(index)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| index | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s16 get_water_level(u8 index);`
-
-[:arrow_up_small:](#)
-
-
-
-## [hud_get_flash](#hud_get_flash)
-
-### Lua Example
-`local integerValue = hud_get_flash()`
-
-### Parameters
-- None
-
-### Returns
-- `integer`
-
-### C Prototype
-`s8 hud_get_flash(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [hud_get_value](#hud_get_value)
-
-### Lua Example
-`local integerValue = hud_get_value(type)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| type | [enum HudDisplayValue](constants.md#enum-HudDisplayValue) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 hud_get_value(enum HudDisplayValue type);`
-
-[:arrow_up_small:](#)
-
-
-
-## [hud_hide](#hud_hide)
-
-### Lua Example
-`hud_hide()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void hud_hide(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [hud_is_hidden](#hud_is_hidden)
-
-### Lua Example
-`local booleanValue = hud_is_hidden()`
-
-### Parameters
-- None
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool hud_is_hidden(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [hud_render_power_meter](#hud_render_power_meter)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [hud_render_power_meter_interpolated](#hud_render_power_meter_interpolated)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [hud_set_flash](#hud_set_flash)
-
-### Lua Example
-`hud_set_flash(value)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| value | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void hud_set_flash(s8 value);`
-
-[:arrow_up_small:](#)
-
-
-
-## [hud_set_value](#hud_set_value)
-
-### Lua Example
-`hud_set_value(type, value)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| type | [enum HudDisplayValue](constants.md#enum-HudDisplayValue) |
-| value | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void hud_set_value(enum HudDisplayValue type, s32 value);`
-
-[:arrow_up_small:](#)
-
-
-
-## [hud_show](#hud_show)
-
-### Lua Example
-`hud_show()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void hud_show(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [is_game_paused](#is_game_paused)
-
-### Lua Example
-`local booleanValue = is_game_paused()`
-
-### Parameters
-- None
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool is_game_paused(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [is_transition_playing](#is_transition_playing)
-
-### Lua Example
-`local booleanValue = is_transition_playing()`
-
-### Parameters
-- None
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool is_transition_playing(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [mod_file_exists](#mod_file_exists)
-
-### Lua Example
-`local booleanValue = mod_file_exists(filename)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| filename | `string` |
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool mod_file_exists(const char* filename);`
-
-[:arrow_up_small:](#)
-
-
-
-## [movtexqc_register](#movtexqc_register)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [play_transition](#play_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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [reset_window_title](#reset_window_title)
-
-### Lua Example
-`reset_window_title()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void reset_window_title(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_get_using_backup_slot](#save_file_get_using_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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [save_file_set_using_backup_slot](#save_file_set_using_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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_environment_region](#set_environment_region)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_got_file_coin_hi_score](#set_got_file_coin_hi_score)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_last_completed_course_num](#set_last_completed_course_num)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_last_completed_star_num](#set_last_completed_star_num)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_last_star_or_key](#set_last_star_or_key)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_override_envfx](#set_override_envfx)
-
-### Lua Example
-`set_override_envfx(envfx)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| envfx | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void set_override_envfx(s32 envfx);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_save_file_modified](#set_save_file_modified)
-
-### Lua Example
-`set_save_file_modified(value)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| value | `boolean` |
-
-### Returns
-- None
-
-### C Prototype
-`void set_save_file_modified(bool value);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_ttc_speed_setting](#set_ttc_speed_setting)
-
-### Lua Example
-`set_ttc_speed_setting(speed)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| speed | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void set_ttc_speed_setting(s16 speed);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_volume_env](#set_volume_env)
-
-### Lua Example
-`set_volume_env(volume)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| volume | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void set_volume_env(f32 volume);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_volume_level](#set_volume_level)
-
-### Lua Example
-`set_volume_level(volume)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| volume | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void set_volume_level(f32 volume);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_volume_master](#set_volume_master)
-
-### Lua Example
-`set_volume_master(volume)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| volume | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void set_volume_master(f32 volume);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_volume_sfx](#set_volume_sfx)
-
-### Lua Example
-`set_volume_sfx(volume)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| volume | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void set_volume_sfx(f32 volume);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_water_level](#set_water_level)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_window_title](#set_window_title)
-
-### Lua Example
-`set_window_title(title)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| title | `string` |
-
-### Returns
-- None
-
-### C Prototype
-`void set_window_title(const char* title);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from smlua_model_utils.h
-
-
-
-
-## [smlua_model_util_get_id](#smlua_model_util_get_id)
-
-### Lua Example
-`local enumValue = smlua_model_util_get_id(name)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| name | `string` |
-
-### Returns
-[enum ModelExtendedId](constants.md#enum-ModelExtendedId)
-
-### C Prototype
-`enum ModelExtendedId smlua_model_util_get_id(const char* name);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from smlua_obj_utils.h
-
-
-
-
-## [get_temp_object_hitbox](#get_temp_object_hitbox)
-
-### Lua Example
-`local ObjectHitboxValue = get_temp_object_hitbox()`
-
-### Parameters
-- None
-
-### Returns
-[ObjectHitbox](structs.md#ObjectHitbox)
-
-### C Prototype
-`struct ObjectHitbox* get_temp_object_hitbox(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [get_trajectory](#get_trajectory)
-
-### Lua Example
-`local PointerValue = get_trajectory(name)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| name | `string` |
-
-### Returns
-- `Pointer` <`Trajectory`>
-
-### C Prototype
-`Trajectory* get_trajectory(const char* name);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_check_hitbox_overlap](#obj_check_hitbox_overlap)
-
-### Lua Example
-`local booleanValue = obj_check_hitbox_overlap(o1, o2)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o1 | [Object](structs.md#Object) |
-| o2 | [Object](structs.md#Object) |
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool obj_check_hitbox_overlap(struct Object *o1, struct Object *o2);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_check_overlap_with_hitbox_params](#obj_check_overlap_with_hitbox_params)
-
-### Lua Example
-`local booleanValue = obj_check_overlap_with_hitbox_params(o, x, y, z, h, r, d)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_count_objects_with_behavior_id](#obj_count_objects_with_behavior_id)
-
-### Lua Example
-`local integerValue = obj_count_objects_with_behavior_id(behaviorId)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| behaviorId | [enum BehaviorId](constants.md#enum-BehaviorId) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 obj_count_objects_with_behavior_id(enum BehaviorId behaviorId);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_collided_object](#obj_get_collided_object)
-
-### Lua Example
-`local ObjectValue = obj_get_collided_object(o, index)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| index | `integer` |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *obj_get_collided_object(struct Object *o, s16 index);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_field_f32](#obj_get_field_f32)
-
-### Lua Example
-`local numberValue = obj_get_field_f32(o, fieldIndex)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| fieldIndex | `integer` |
-
-### Returns
-- `number`
-
-### C Prototype
-`f32 obj_get_field_f32(struct Object *o, s32 fieldIndex);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_field_s16](#obj_get_field_s16)
-
-### Lua Example
-`local integerValue = obj_get_field_s16(o, fieldIndex, fieldSubIndex)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| fieldIndex | `integer` |
-| fieldSubIndex | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s16 obj_get_field_s16(struct Object *o, s32 fieldIndex, s32 fieldSubIndex);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_field_s32](#obj_get_field_s32)
-
-### Lua Example
-`local integerValue = obj_get_field_s32(o, fieldIndex)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| fieldIndex | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 obj_get_field_s32(struct Object *o, s32 fieldIndex);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_field_u32](#obj_get_field_u32)
-
-### Lua Example
-`local integerValue = obj_get_field_u32(o, fieldIndex)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| fieldIndex | `integer` |
-
-### Returns
-- `integer`
-
-### C Prototype
-`u32 obj_get_field_u32(struct Object *o, s32 fieldIndex);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_first](#obj_get_first)
-
-### Lua Example
-`local ObjectValue = obj_get_first(objList)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| objList | [enum ObjectList](constants.md#enum-ObjectList) |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *obj_get_first(enum ObjectList objList);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_first_with_behavior_id](#obj_get_first_with_behavior_id)
-
-### Lua Example
-`local ObjectValue = obj_get_first_with_behavior_id(behaviorId)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| behaviorId | [enum BehaviorId](constants.md#enum-BehaviorId) |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *obj_get_first_with_behavior_id(enum BehaviorId behaviorId);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_first_with_behavior_id_and_field_f32](#obj_get_first_with_behavior_id_and_field_f32)
-
-### Lua Example
-`local ObjectValue = obj_get_first_with_behavior_id_and_field_f32(behaviorId, fieldIndex, value)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| behaviorId | [enum BehaviorId](constants.md#enum-BehaviorId) |
-| fieldIndex | `integer` |
-| value | `number` |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *obj_get_first_with_behavior_id_and_field_f32(enum BehaviorId behaviorId, s32 fieldIndex, f32 value);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_first_with_behavior_id_and_field_s32](#obj_get_first_with_behavior_id_and_field_s32)
-
-### Lua Example
-`local ObjectValue = obj_get_first_with_behavior_id_and_field_s32(behaviorId, fieldIndex, value)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| behaviorId | [enum BehaviorId](constants.md#enum-BehaviorId) |
-| fieldIndex | `integer` |
-| value | `integer` |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *obj_get_first_with_behavior_id_and_field_s32(enum BehaviorId behaviorId, s32 fieldIndex, s32 value);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_nearest_object_with_behavior_id](#obj_get_nearest_object_with_behavior_id)
-
-### Lua Example
-`local ObjectValue = obj_get_nearest_object_with_behavior_id(o, behaviorId)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| behaviorId | [enum BehaviorId](constants.md#enum-BehaviorId) |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *obj_get_nearest_object_with_behavior_id(struct Object *o, enum BehaviorId behaviorId);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_next](#obj_get_next)
-
-### Lua Example
-`local ObjectValue = obj_get_next(o)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *obj_get_next(struct Object *o);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_next_with_same_behavior_id](#obj_get_next_with_same_behavior_id)
-
-### Lua Example
-`local ObjectValue = obj_get_next_with_same_behavior_id(o)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *obj_get_next_with_same_behavior_id(struct Object *o);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_next_with_same_behavior_id_and_field_f32](#obj_get_next_with_same_behavior_id_and_field_f32)
-
-### Lua Example
-`local ObjectValue = obj_get_next_with_same_behavior_id_and_field_f32(o, fieldIndex, value)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| fieldIndex | `integer` |
-| value | `number` |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *obj_get_next_with_same_behavior_id_and_field_f32(struct Object *o, s32 fieldIndex, f32 value);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_next_with_same_behavior_id_and_field_s32](#obj_get_next_with_same_behavior_id_and_field_s32)
-
-### Lua Example
-`local ObjectValue = obj_get_next_with_same_behavior_id_and_field_s32(o, fieldIndex, value)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| fieldIndex | `integer` |
-| value | `integer` |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object *obj_get_next_with_same_behavior_id_and_field_s32(struct Object *o, s32 fieldIndex, s32 value);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_temp_spawn_particles_info](#obj_get_temp_spawn_particles_info)
-
-### Lua Example
-`local SpawnParticlesInfoValue = obj_get_temp_spawn_particles_info(modelId)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| modelId | [enum ModelExtendedId](constants.md#enum-ModelExtendedId) |
-
-### Returns
-[SpawnParticlesInfo](structs.md#SpawnParticlesInfo)
-
-### C Prototype
-`struct SpawnParticlesInfo* obj_get_temp_spawn_particles_info(enum ModelExtendedId modelId);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_has_behavior_id](#obj_has_behavior_id)
-
-### Lua Example
-`local integerValue = obj_has_behavior_id(o, behaviorId)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| behaviorId | [enum BehaviorId](constants.md#enum-BehaviorId) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 obj_has_behavior_id(struct Object *o, enum BehaviorId behaviorId);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_has_model_extended](#obj_has_model_extended)
-
-### Lua Example
-`local integerValue = obj_has_model_extended(o, modelId)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| modelId | [enum ModelExtendedId](constants.md#enum-ModelExtendedId) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 obj_has_model_extended(struct Object *o, enum ModelExtendedId modelId);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_is_attackable](#obj_is_attackable)
-
-### Lua Example
-`local booleanValue = obj_is_attackable(o)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool obj_is_attackable(struct Object *o);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_is_breakable_object](#obj_is_breakable_object)
-
-### Lua Example
-`local booleanValue = obj_is_breakable_object(o)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool obj_is_breakable_object(struct Object *o);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_is_bully](#obj_is_bully)
-
-### Lua Example
-`local booleanValue = obj_is_bully(o)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool obj_is_bully(struct Object *o);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_is_coin](#obj_is_coin)
-
-### Lua Example
-`local booleanValue = obj_is_coin(o)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool obj_is_coin(struct Object *o);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_is_exclamation_box](#obj_is_exclamation_box)
-
-### Lua Example
-`local booleanValue = obj_is_exclamation_box(o)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool obj_is_exclamation_box(struct Object *o);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_is_grabbable](#obj_is_grabbable)
-
-### Lua Example
-`local booleanValue = obj_is_grabbable(o)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool obj_is_grabbable(struct Object *o) ;`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_is_mushroom_1up](#obj_is_mushroom_1up)
-
-### Lua Example
-`local booleanValue = obj_is_mushroom_1up(o)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool obj_is_mushroom_1up(struct Object *o);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_is_secret](#obj_is_secret)
-
-### Lua Example
-`local booleanValue = obj_is_secret(o)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool obj_is_secret(struct Object *o);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_is_valid_for_interaction](#obj_is_valid_for_interaction)
-
-### Lua Example
-`local booleanValue = obj_is_valid_for_interaction(o)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-
-### Returns
-- `boolean`
-
-### C Prototype
-`bool obj_is_valid_for_interaction(struct Object *o);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_move_xyz](#obj_move_xyz)
-
-### Lua Example
-`obj_move_xyz(o, dx, dy, dz)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| dx | `number` |
-| dy | `number` |
-| dz | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_move_xyz(struct Object *o, f32 dx, f32 dy, f32 dz);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_field_f32](#obj_set_field_f32)
-
-### Lua Example
-`obj_set_field_f32(o, fieldIndex, value)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| fieldIndex | `integer` |
-| value | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_field_f32(struct Object *o, s32 fieldIndex, f32 value);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_field_s16](#obj_set_field_s16)
-
-### Lua Example
-`obj_set_field_s16(o, fieldIndex, fieldSubIndex, value)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_field_s32](#obj_set_field_s32)
-
-### Lua Example
-`obj_set_field_s32(o, fieldIndex, value)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| fieldIndex | `integer` |
-| value | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_field_s32(struct Object *o, s32 fieldIndex, s32 value);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_field_u32](#obj_set_field_u32)
-
-### Lua Example
-`obj_set_field_u32(o, fieldIndex, value)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| fieldIndex | `integer` |
-| value | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_field_u32(struct Object *o, s32 fieldIndex, u32 value);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_model_extended](#obj_set_model_extended)
-
-### Lua Example
-`obj_set_model_extended(o, modelId)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| modelId | [enum ModelExtendedId](constants.md#enum-ModelExtendedId) |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_model_extended(struct Object *o, enum ModelExtendedId modelId);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_set_vel](#obj_set_vel)
-
-### Lua Example
-`obj_set_vel(o, vx, vy, vz)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| vx | `number` |
-| vy | `number` |
-| vz | `number` |
-
-### Returns
-- None
-
-### C Prototype
-`void obj_set_vel(struct Object *o, f32 vx, f32 vy, f32 vz);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_whirlpools](#set_whirlpools)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [spawn_non_sync_object](#spawn_non_sync_object)
-
-### Lua Example
-`local ObjectValue = spawn_non_sync_object(behaviorId, modelId, x, y, z, objSetupFunction)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| behaviorId | [enum BehaviorId](constants.md#enum-BehaviorId) |
-| modelId | [enum ModelExtendedId](constants.md#enum-ModelExtendedId) |
-| x | `number` |
-| y | `number` |
-| z | `number` |
-| objSetupFunction | `Lua Function` () |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object* spawn_non_sync_object(enum BehaviorId behaviorId, enum ModelExtendedId modelId, f32 x, f32 y, f32 z, LuaFunction objSetupFunction);`
-
-[:arrow_up_small:](#)
-
-
-
-## [spawn_sync_object](#spawn_sync_object)
-
-### Lua Example
-`local ObjectValue = spawn_sync_object(behaviorId, modelId, x, y, z, objSetupFunction)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| behaviorId | [enum BehaviorId](constants.md#enum-BehaviorId) |
-| modelId | [enum ModelExtendedId](constants.md#enum-ModelExtendedId) |
-| x | `number` |
-| y | `number` |
-| z | `number` |
-| objSetupFunction | `Lua Function` () |
-
-### Returns
-[Object](structs.md#Object)
-
-### C Prototype
-`struct Object* spawn_sync_object(enum BehaviorId behaviorId, enum ModelExtendedId modelId, f32 x, f32 y, f32 z, LuaFunction objSetupFunction);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from smlua_text_utils.h
-
-
-
-
-## [smlua_text_utils_act_name_get](#smlua_text_utils_act_name_get)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_text_utils_act_name_mod_index](#smlua_text_utils_act_name_mod_index)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_text_utils_act_name_replace](#smlua_text_utils_act_name_replace)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_text_utils_act_name_reset](#smlua_text_utils_act_name_reset)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_text_utils_castle_secret_stars_replace](#smlua_text_utils_castle_secret_stars_replace)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_text_utils_course_acts_replace](#smlua_text_utils_course_acts_replace)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_text_utils_course_name_get](#smlua_text_utils_course_name_get)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_text_utils_course_name_mod_index](#smlua_text_utils_course_name_mod_index)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_text_utils_course_name_replace](#smlua_text_utils_course_name_replace)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_text_utils_course_name_reset](#smlua_text_utils_course_name_reset)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_text_utils_dialog_replace](#smlua_text_utils_dialog_replace)
-
-### Lua Example
-`smlua_text_utils_dialog_replace(dialogId, unused, linesPerBox, leftOffset, width, str)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| dialogId | [enum DialogId](constants.md#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_text_utils_extra_text_replace](#smlua_text_utils_extra_text_replace)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_text_utils_get_language](#smlua_text_utils_get_language)
-
-### Lua Example
-`local stringValue = smlua_text_utils_get_language()`
-
-### Parameters
-- None
-
-### Returns
-- `string`
-
-### C Prototype
-`const char* smlua_text_utils_get_language(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [smlua_text_utils_secret_star_replace](#smlua_text_utils_secret_star_replace)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from sound_init.h
-
-
-
-
-## [disable_background_sound](#disable_background_sound)
-
-### Lua Example
-`disable_background_sound()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void disable_background_sound(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [enable_background_sound](#enable_background_sound)
-
-### Lua Example
-`enable_background_sound()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void enable_background_sound(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [fadeout_cap_music](#fadeout_cap_music)
-
-### Lua Example
-`fadeout_cap_music()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void fadeout_cap_music(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [fadeout_level_music](#fadeout_level_music)
-
-### Lua Example
-`fadeout_level_music(fadeTimer)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| fadeTimer | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void fadeout_level_music(s16 fadeTimer);`
-
-[:arrow_up_small:](#)
-
-
-
-## [fadeout_music](#fadeout_music)
-
-### Lua Example
-`fadeout_music(fadeOutTime)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| fadeOutTime | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void fadeout_music(s16 fadeOutTime);`
+### Description
+Computes the square of a floating-point number
[:arrow_up_small:](#)
-
-## [lower_background_noise](#lower_background_noise)
-
-### Lua Example
-`lower_background_noise(a)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| a | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void lower_background_noise(s32 a);`
-
-[:arrow_up_small:](#)
-
-
-
-## [play_cap_music](#play_cap_music)
-
-### Lua Example
-`play_cap_music(seqArgs)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| seqArgs | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void play_cap_music(u16 seqArgs);`
-
-[:arrow_up_small:](#)
-
-
-
-## [play_cutscene_music](#play_cutscene_music)
-
-### Lua Example
-`play_cutscene_music(seqArgs)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| seqArgs | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void play_cutscene_music(u16 seqArgs);`
-
-[:arrow_up_small:](#)
-
-
-
-## [play_infinite_stairs_music](#play_infinite_stairs_music)
-
-### Lua Example
-`play_infinite_stairs_music()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void play_infinite_stairs_music(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [play_menu_sounds](#play_menu_sounds)
-
-### Lua Example
-`play_menu_sounds(soundMenuFlags)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| soundMenuFlags | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void play_menu_sounds(s16 soundMenuFlags);`
-
-[:arrow_up_small:](#)
-
-
-
-## [play_painting_eject_sound](#play_painting_eject_sound)
-
-### Lua Example
-`play_painting_eject_sound()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void play_painting_eject_sound(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [play_shell_music](#play_shell_music)
-
-### Lua Example
-`play_shell_music()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void play_shell_music(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [raise_background_noise](#raise_background_noise)
-
-### Lua Example
-`raise_background_noise(a)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| a | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void raise_background_noise(s32 a);`
-
-[:arrow_up_small:](#)
-
-
-
-## [reset_volume](#reset_volume)
-
-### Lua Example
-`reset_volume()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void reset_volume(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [set_background_music](#set_background_music)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [stop_cap_music](#stop_cap_music)
-
-### Lua Example
-`stop_cap_music()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void stop_cap_music(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [stop_shell_music](#stop_shell_music)
-
-### Lua Example
-`stop_shell_music()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void stop_shell_music(void);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from spawn_sound.c
-
-
-
-
-## [calc_dist_to_volume_range_1](#calc_dist_to_volume_range_1)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [calc_dist_to_volume_range_2](#calc_dist_to_volume_range_2)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_play_sound_1](#cur_obj_play_sound_1)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [cur_obj_play_sound_2](#cur_obj_play_sound_2)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [exec_anim_sound_state](#exec_anim_sound_state)
-
-### Lua Example
-`exec_anim_sound_state(soundStates, maxSoundStates)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| soundStates | [SoundState](structs.md#SoundState) |
-| maxSoundStates | `integer` |
-
-### Returns
-- None
-
-### C Prototype
-`void exec_anim_sound_state(struct SoundState *soundStates, u16 maxSoundStates);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from surface_collision.h
-
-
-
-
-## [find_ceil_height](#find_ceil_height)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [find_floor_height](#find_floor_height)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [find_poison_gas_level](#find_poison_gas_level)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [find_wall_collisions](#find_wall_collisions)
-
-### Lua Example
-`local integerValue = find_wall_collisions(colData)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| colData | [WallCollisionData](structs.md#WallCollisionData) |
-
-### Returns
-- `integer`
-
-### C Prototype
-`s32 find_wall_collisions(struct WallCollisionData *colData);`
-
-[:arrow_up_small:](#)
-
-
-
-## [find_water_level](#find_water_level)
-
-### 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);`
-
-[:arrow_up_small:](#)
-
-
-
----
-# functions from surface_load.h
-
-
-
-
-## [get_area_terrain_size](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [load_area_terrain](#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);`
-
-[:arrow_up_small:](#)
-
-
-
-## [load_object_collision_model](#load_object_collision_model)
-
-### Lua Example
-`load_object_collision_model()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void load_object_collision_model(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [obj_get_surface_from_index](#obj_get_surface_from_index)
-
-### Lua Example
-`local SurfaceValue = obj_get_surface_from_index(o, index)`
-
-### Parameters
-| Field | Type |
-| ----- | ---- |
-| o | [Object](structs.md#Object) |
-| index | `integer` |
-
-### Returns
-[Surface](structs.md#Surface)
-
-### C Prototype
-`struct Surface *obj_get_surface_from_index(struct Object *o, u32 index);`
-
-[:arrow_up_small:](#)
-
-
-
-## [surface_has_force](#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);`
-
-[:arrow_up_small:](#)
-
-
-
---
-[< prev](functions-4.md) | [1](functions.md) | [2](functions-2.md) | [3](functions-3.md) | [4](functions-4.md) | 5]
+[< prev](functions-4.md) | [1](functions.md) | [2](functions-2.md) | [3](functions-3.md) | [4](functions-4.md) | 5 | [6](functions-6.md) | [next >](functions-6.md)]
diff --git a/docs/lua/functions-6.md b/docs/lua/functions-6.md
index 1a2be8898..7173f3d59 100644
--- a/docs/lua/functions-6.md
+++ b/docs/lua/functions-6.md
@@ -5,6 +5,1608 @@
[< prev](functions-5.md) | [1](functions.md) | [2](functions-2.md) | [3](functions-3.md) | [4](functions-4.md) | [5](functions-5.md) | 6]
+---
+# functions from smlua_misc_utils.h
+
+
+
+
+## [allocate_mario_action](#allocate_mario_action)
+
+### Lua Example
+`local integerValue = allocate_mario_action(actFlags)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| actFlags | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`u32 allocate_mario_action(u32 actFlags);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [course_is_main_course](#course_is_main_course)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [deref_s32_pointer](#deref_s32_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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [djui_attempting_to_open_playerlist](#djui_attempting_to_open_playerlist)
+
+### Lua Example
+`local booleanValue = djui_attempting_to_open_playerlist()`
+
+### Parameters
+- None
+
+### Returns
+- `boolean`
+
+### C Prototype
+`bool djui_attempting_to_open_playerlist(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [djui_is_playerlist_open](#djui_is_playerlist_open)
+
+### Lua Example
+`local booleanValue = djui_is_playerlist_open()`
+
+### Parameters
+- None
+
+### Returns
+- `boolean`
+
+### C Prototype
+`bool djui_is_playerlist_open(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [djui_is_popup_disabled](#djui_is_popup_disabled)
+
+### Lua Example
+`local booleanValue = djui_is_popup_disabled()`
+
+### Parameters
+- None
+
+### Returns
+- `boolean`
+
+### C Prototype
+`bool djui_is_popup_disabled(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [djui_menu_get_font](#djui_menu_get_font)
+
+### Lua Example
+`local enumValue = djui_menu_get_font()`
+
+### Parameters
+- None
+
+### Returns
+[enum DjuiFontType](constants.md#enum-DjuiFontType)
+
+### C Prototype
+`enum DjuiFontType djui_menu_get_font(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [djui_menu_get_theme](#djui_menu_get_theme)
+
+### Lua Example
+`local DjuiThemeValue = djui_menu_get_theme()`
+
+### Parameters
+- None
+
+### Returns
+[DjuiTheme](structs.md#DjuiTheme)
+
+### C Prototype
+`struct DjuiTheme* djui_menu_get_theme(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [djui_popup_create_global](#djui_popup_create_global)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [djui_reset_popup_disabled_override](#djui_reset_popup_disabled_override)
+
+### Lua Example
+`djui_reset_popup_disabled_override()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void djui_reset_popup_disabled_override(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [djui_set_popup_disabled_override](#djui_set_popup_disabled_override)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_coopnet_id](#get_coopnet_id)
+
+### Lua Example
+`local stringValue = get_coopnet_id(localIndex)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| localIndex | `integer` |
+
+### Returns
+- `string`
+
+### C Prototype
+`const char* get_coopnet_id(s8 localIndex);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_current_save_file_num](#get_current_save_file_num)
+
+### Lua Example
+`local integerValue = get_current_save_file_num()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`s16 get_current_save_file_num(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_date_and_time](#get_date_and_time)
+
+### Lua Example
+`local DateTimeValue = get_date_and_time()`
+
+### Parameters
+- None
+
+### Returns
+[DateTime](structs.md#DateTime)
+
+### C Prototype
+`struct DateTime* get_date_and_time(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_dialog_box_state](#get_dialog_box_state)
+
+### Lua Example
+`local integerValue = get_dialog_box_state()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`s8 get_dialog_box_state(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_dialog_id](#get_dialog_id)
+
+### Lua Example
+`local integerValue = get_dialog_id()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`s16 get_dialog_id(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_dialog_response](#get_dialog_response)
+
+### Lua Example
+`local integerValue = get_dialog_response()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 get_dialog_response(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_envfx](#get_envfx)
+
+### Lua Example
+`local integerValue = get_envfx()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`u16 get_envfx(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_environment_region](#get_environment_region)
+
+### Lua Example
+`local numberValue = get_environment_region(index)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| index | `integer` |
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 get_environment_region(u8 index);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_global_timer](#get_global_timer)
+
+### Lua Example
+`local integerValue = get_global_timer()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`u32 get_global_timer(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_got_file_coin_hi_score](#get_got_file_coin_hi_score)
+
+### Lua Example
+`local booleanValue = get_got_file_coin_hi_score()`
+
+### Parameters
+- None
+
+### Returns
+- `boolean`
+
+### C Prototype
+`bool get_got_file_coin_hi_score(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_hand_foot_pos_x](#get_hand_foot_pos_x)
+
+### Lua Example
+`local numberValue = get_hand_foot_pos_x(m, index)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| index | `integer` |
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 get_hand_foot_pos_x(struct MarioState* m, u8 index);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_hand_foot_pos_y](#get_hand_foot_pos_y)
+
+### Lua Example
+`local numberValue = get_hand_foot_pos_y(m, index)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| index | `integer` |
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 get_hand_foot_pos_y(struct MarioState* m, u8 index);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_hand_foot_pos_z](#get_hand_foot_pos_z)
+
+### Lua Example
+`local numberValue = get_hand_foot_pos_z(m, index)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| m | [MarioState](structs.md#MarioState) |
+| index | `integer` |
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 get_hand_foot_pos_z(struct MarioState* m, u8 index);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_last_completed_course_num](#get_last_completed_course_num)
+
+### Lua Example
+`local integerValue = get_last_completed_course_num()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`u8 get_last_completed_course_num(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_last_completed_star_num](#get_last_completed_star_num)
+
+### Lua Example
+`local integerValue = get_last_completed_star_num()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`u8 get_last_completed_star_num(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_last_star_or_key](#get_last_star_or_key)
+
+### Lua Example
+`local integerValue = get_last_star_or_key()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 get_last_star_or_key(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_local_discord_id](#get_local_discord_id)
+
+### Lua Example
+`local stringValue = get_local_discord_id()`
+
+### Parameters
+- None
+
+### Returns
+- `string`
+
+### C Prototype
+`const char* get_local_discord_id(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_network_area_timer](#get_network_area_timer)
+
+### Lua Example
+`local integerValue = get_network_area_timer()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`u32 get_network_area_timer(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_os_name](#get_os_name)
+
+### Lua Example
+`local stringValue = get_os_name()`
+
+### Parameters
+- None
+
+### Returns
+- `string`
+
+### C Prototype
+`const char* get_os_name(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_save_file_modified](#get_save_file_modified)
+
+### Lua Example
+`local booleanValue = get_save_file_modified()`
+
+### Parameters
+- None
+
+### Returns
+- `boolean`
+
+### C Prototype
+`bool get_save_file_modified(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_temp_s32_pointer](#get_temp_s32_pointer)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_time](#get_time)
+
+### Lua Example
+`local integerValue = get_time()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`s64 get_time(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_ttc_speed_setting](#get_ttc_speed_setting)
+
+### Lua Example
+`local integerValue = get_ttc_speed_setting()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`s16 get_ttc_speed_setting(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_volume_env](#get_volume_env)
+
+### Lua Example
+`local numberValue = get_volume_env()`
+
+### Parameters
+- None
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 get_volume_env(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_volume_level](#get_volume_level)
+
+### Lua Example
+`local numberValue = get_volume_level()`
+
+### Parameters
+- None
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 get_volume_level(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_volume_master](#get_volume_master)
+
+### Lua Example
+`local numberValue = get_volume_master()`
+
+### Parameters
+- None
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 get_volume_master(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_volume_sfx](#get_volume_sfx)
+
+### Lua Example
+`local numberValue = get_volume_sfx()`
+
+### Parameters
+- None
+
+### Returns
+- `number`
+
+### C Prototype
+`f32 get_volume_sfx(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [get_water_level](#get_water_level)
+
+### Lua Example
+`local integerValue = get_water_level(index)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| index | `integer` |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s16 get_water_level(u8 index);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [hud_get_flash](#hud_get_flash)
+
+### Lua Example
+`local integerValue = hud_get_flash()`
+
+### Parameters
+- None
+
+### Returns
+- `integer`
+
+### C Prototype
+`s8 hud_get_flash(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [hud_get_value](#hud_get_value)
+
+### Lua Example
+`local integerValue = hud_get_value(type)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| type | [enum HudDisplayValue](constants.md#enum-HudDisplayValue) |
+
+### Returns
+- `integer`
+
+### C Prototype
+`s32 hud_get_value(enum HudDisplayValue type);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [hud_hide](#hud_hide)
+
+### Lua Example
+`hud_hide()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void hud_hide(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [hud_is_hidden](#hud_is_hidden)
+
+### Lua Example
+`local booleanValue = hud_is_hidden()`
+
+### Parameters
+- None
+
+### Returns
+- `boolean`
+
+### C Prototype
+`bool hud_is_hidden(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [hud_render_power_meter](#hud_render_power_meter)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [hud_render_power_meter_interpolated](#hud_render_power_meter_interpolated)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [hud_set_flash](#hud_set_flash)
+
+### Lua Example
+`hud_set_flash(value)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| value | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void hud_set_flash(s8 value);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [hud_set_value](#hud_set_value)
+
+### Lua Example
+`hud_set_value(type, value)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| type | [enum HudDisplayValue](constants.md#enum-HudDisplayValue) |
+| value | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void hud_set_value(enum HudDisplayValue type, s32 value);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [hud_show](#hud_show)
+
+### Lua Example
+`hud_show()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void hud_show(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [is_game_paused](#is_game_paused)
+
+### Lua Example
+`local booleanValue = is_game_paused()`
+
+### Parameters
+- None
+
+### Returns
+- `boolean`
+
+### C Prototype
+`bool is_game_paused(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [is_transition_playing](#is_transition_playing)
+
+### Lua Example
+`local booleanValue = is_transition_playing()`
+
+### Parameters
+- None
+
+### Returns
+- `boolean`
+
+### C Prototype
+`bool is_transition_playing(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [mod_file_exists](#mod_file_exists)
+
+### Lua Example
+`local booleanValue = mod_file_exists(filename)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| filename | `string` |
+
+### Returns
+- `boolean`
+
+### C Prototype
+`bool mod_file_exists(const char* filename);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [movtexqc_register](#movtexqc_register)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [play_transition](#play_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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [reset_window_title](#reset_window_title)
+
+### Lua Example
+`reset_window_title()`
+
+### Parameters
+- None
+
+### Returns
+- None
+
+### C Prototype
+`void reset_window_title(void);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_get_using_backup_slot](#save_file_get_using_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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [save_file_set_using_backup_slot](#save_file_set_using_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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_environment_region](#set_environment_region)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_got_file_coin_hi_score](#set_got_file_coin_hi_score)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_last_completed_course_num](#set_last_completed_course_num)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_last_completed_star_num](#set_last_completed_star_num)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_last_star_or_key](#set_last_star_or_key)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_override_envfx](#set_override_envfx)
+
+### Lua Example
+`set_override_envfx(envfx)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| envfx | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void set_override_envfx(s32 envfx);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_save_file_modified](#set_save_file_modified)
+
+### Lua Example
+`set_save_file_modified(value)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| value | `boolean` |
+
+### Returns
+- None
+
+### C Prototype
+`void set_save_file_modified(bool value);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_ttc_speed_setting](#set_ttc_speed_setting)
+
+### Lua Example
+`set_ttc_speed_setting(speed)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| speed | `integer` |
+
+### Returns
+- None
+
+### C Prototype
+`void set_ttc_speed_setting(s16 speed);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_volume_env](#set_volume_env)
+
+### Lua Example
+`set_volume_env(volume)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| volume | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void set_volume_env(f32 volume);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_volume_level](#set_volume_level)
+
+### Lua Example
+`set_volume_level(volume)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| volume | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void set_volume_level(f32 volume);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_volume_master](#set_volume_master)
+
+### Lua Example
+`set_volume_master(volume)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| volume | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void set_volume_master(f32 volume);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_volume_sfx](#set_volume_sfx)
+
+### Lua Example
+`set_volume_sfx(volume)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| volume | `number` |
+
+### Returns
+- None
+
+### C Prototype
+`void set_volume_sfx(f32 volume);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_water_level](#set_water_level)
+
+### 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);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+## [set_window_title](#set_window_title)
+
+### Lua Example
+`set_window_title(title)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| title | `string` |
+
+### Returns
+- None
+
+### C Prototype
+`void set_window_title(const char* title);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
+---
+# functions from smlua_model_utils.h
+
+
+
+
+## [smlua_model_util_get_id](#smlua_model_util_get_id)
+
+### Lua Example
+`local enumValue = smlua_model_util_get_id(name)`
+
+### Parameters
+| Field | Type |
+| ----- | ---- |
+| name | `string` |
+
+### Returns
+[enum ModelExtendedId](constants.md#enum-ModelExtendedId)
+
+### C Prototype
+`enum ModelExtendedId smlua_model_util_get_id(const char* name);`
+
+### Description
+No description available.
+
+[:arrow_up_small:](#)
+
+
+
---
# functions from smlua_obj_utils.h
@@ -25,6 +1627,9 @@
### C Prototype
`struct ObjectHitbox* get_temp_object_hitbox(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -45,6 +1650,9 @@
### C Prototype
`Trajectory* get_trajectory(const char* name);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -66,6 +1674,9 @@
### C Prototype
`bool obj_check_hitbox_overlap(struct Object *o1, struct Object *o2);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -92,6 +1703,9 @@
### C Prototype
`bool obj_check_overlap_with_hitbox_params(struct Object *o, f32 x, f32 y, f32 z, f32 h, f32 r, f32 d);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -112,6 +1726,9 @@
### C Prototype
`s32 obj_count_objects_with_behavior_id(enum BehaviorId behaviorId);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -133,6 +1750,9 @@
### C Prototype
`struct Object *obj_get_collided_object(struct Object *o, s16 index);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -154,6 +1774,9 @@
### C Prototype
`f32 obj_get_field_f32(struct Object *o, s32 fieldIndex);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -176,6 +1799,9 @@
### C Prototype
`s16 obj_get_field_s16(struct Object *o, s32 fieldIndex, s32 fieldSubIndex);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -197,6 +1823,9 @@
### C Prototype
`s32 obj_get_field_s32(struct Object *o, s32 fieldIndex);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -218,6 +1847,9 @@
### C Prototype
`u32 obj_get_field_u32(struct Object *o, s32 fieldIndex);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -238,6 +1870,9 @@
### C Prototype
`struct Object *obj_get_first(enum ObjectList objList);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -258,6 +1893,9 @@
### C Prototype
`struct Object *obj_get_first_with_behavior_id(enum BehaviorId behaviorId);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -280,6 +1918,9 @@
### C Prototype
`struct Object *obj_get_first_with_behavior_id_and_field_f32(enum BehaviorId behaviorId, s32 fieldIndex, f32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -302,6 +1943,9 @@
### C Prototype
`struct Object *obj_get_first_with_behavior_id_and_field_s32(enum BehaviorId behaviorId, s32 fieldIndex, s32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -323,6 +1967,9 @@
### C Prototype
`struct Object *obj_get_nearest_object_with_behavior_id(struct Object *o, enum BehaviorId behaviorId);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -343,6 +1990,9 @@
### C Prototype
`struct Object *obj_get_next(struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -363,6 +2013,9 @@
### C Prototype
`struct Object *obj_get_next_with_same_behavior_id(struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -385,6 +2038,9 @@
### C Prototype
`struct Object *obj_get_next_with_same_behavior_id_and_field_f32(struct Object *o, s32 fieldIndex, f32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -407,6 +2063,9 @@
### C Prototype
`struct Object *obj_get_next_with_same_behavior_id_and_field_s32(struct Object *o, s32 fieldIndex, s32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -427,6 +2086,9 @@
### C Prototype
`struct SpawnParticlesInfo* obj_get_temp_spawn_particles_info(enum ModelExtendedId modelId);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -448,6 +2110,9 @@
### C Prototype
`s32 obj_has_behavior_id(struct Object *o, enum BehaviorId behaviorId);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -469,6 +2134,9 @@
### C Prototype
`s32 obj_has_model_extended(struct Object *o, enum ModelExtendedId modelId);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -489,6 +2157,9 @@
### C Prototype
`bool obj_is_attackable(struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -509,6 +2180,9 @@
### C Prototype
`bool obj_is_breakable_object(struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -529,6 +2203,9 @@
### C Prototype
`bool obj_is_bully(struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -549,6 +2226,9 @@
### C Prototype
`bool obj_is_coin(struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -569,6 +2249,9 @@
### C Prototype
`bool obj_is_exclamation_box(struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -589,6 +2272,9 @@
### C Prototype
`bool obj_is_grabbable(struct Object *o) ;`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -609,6 +2295,9 @@
### C Prototype
`bool obj_is_mushroom_1up(struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -629,6 +2318,9 @@
### C Prototype
`bool obj_is_secret(struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -649,6 +2341,9 @@
### C Prototype
`bool obj_is_valid_for_interaction(struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -672,6 +2367,9 @@
### C Prototype
`void obj_move_xyz(struct Object *o, f32 dx, f32 dy, f32 dz);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -694,6 +2392,9 @@
### C Prototype
`void obj_set_field_f32(struct Object *o, s32 fieldIndex, f32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -717,6 +2418,9 @@
### C Prototype
`void obj_set_field_s16(struct Object *o, s32 fieldIndex, s32 fieldSubIndex, s16 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -739,6 +2443,9 @@
### C Prototype
`void obj_set_field_s32(struct Object *o, s32 fieldIndex, s32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -761,6 +2468,9 @@
### C Prototype
`void obj_set_field_u32(struct Object *o, s32 fieldIndex, u32 value);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -782,6 +2492,9 @@
### C Prototype
`void obj_set_model_extended(struct Object *o, enum ModelExtendedId modelId);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -805,6 +2518,9 @@
### C Prototype
`void obj_set_vel(struct Object *o, f32 vx, f32 vy, f32 vz);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -830,6 +2546,9 @@
### C Prototype
`void set_whirlpools(f32 x, f32 y, f32 z, s16 strength, s16 area, s32 index);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -855,6 +2574,9 @@
### C Prototype
`struct Object* spawn_non_sync_object(enum BehaviorId behaviorId, enum ModelExtendedId modelId, f32 x, f32 y, f32 z, LuaFunction objSetupFunction);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -880,6 +2602,9 @@
### C Prototype
`struct Object* spawn_sync_object(enum BehaviorId behaviorId, enum ModelExtendedId modelId, f32 x, f32 y, f32 z, LuaFunction objSetupFunction);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -907,6 +2632,9 @@
### C Prototype
`const char* smlua_text_utils_act_name_get(s16 courseNum, u8 actNum);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -928,6 +2656,9 @@
### C Prototype
`s32 smlua_text_utils_act_name_mod_index(s16 courseNum, u8 actNum);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -950,6 +2681,9 @@
### C Prototype
`void smlua_text_utils_act_name_replace(s16 courseNum, u8 actNum, const char* name);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -971,6 +2705,9 @@
### C Prototype
`void smlua_text_utils_act_name_reset(s16 courseNum, u8 actNum);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -991,6 +2728,9 @@
### C Prototype
`void smlua_text_utils_castle_secret_stars_replace(const char* name);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1018,6 +2758,9 @@
### 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);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1038,6 +2781,9 @@
### C Prototype
`const char* smlua_text_utils_course_name_get(s16 courseNum);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1058,6 +2804,9 @@
### C Prototype
`s32 smlua_text_utils_course_name_mod_index(s16 courseNum);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1079,6 +2828,9 @@
### C Prototype
`void smlua_text_utils_course_name_replace(s16 courseNum, const char* name);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1099,6 +2851,9 @@
### C Prototype
`void smlua_text_utils_course_name_reset(s16 courseNum);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1124,6 +2879,9 @@
### C Prototype
`void smlua_text_utils_dialog_replace(enum DialogId dialogId, u32 unused, s8 linesPerBox, s16 leftOffset, s16 width, const char* str);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1145,6 +2903,9 @@
### C Prototype
`void smlua_text_utils_extra_text_replace(s16 index, const char* text);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1163,6 +2924,9 @@
### C Prototype
`const char* smlua_text_utils_get_language(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1184,6 +2948,9 @@
### C Prototype
`void smlua_text_utils_secret_star_replace(s16 courseNum, const char* courseName);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1208,6 +2975,9 @@
### C Prototype
`void disable_background_sound(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1226,6 +2996,9 @@
### C Prototype
`void enable_background_sound(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1244,6 +3017,9 @@
### C Prototype
`void fadeout_cap_music(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1264,6 +3040,9 @@
### C Prototype
`void fadeout_level_music(s16 fadeTimer);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1284,6 +3063,9 @@
### C Prototype
`void fadeout_music(s16 fadeOutTime);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1304,6 +3086,9 @@
### C Prototype
`void lower_background_noise(s32 a);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1324,6 +3109,9 @@
### C Prototype
`void play_cap_music(u16 seqArgs);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1344,6 +3132,9 @@
### C Prototype
`void play_cutscene_music(u16 seqArgs);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1362,6 +3153,9 @@
### C Prototype
`void play_infinite_stairs_music(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1382,6 +3176,9 @@
### C Prototype
`void play_menu_sounds(s16 soundMenuFlags);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1400,6 +3197,9 @@
### C Prototype
`void play_painting_eject_sound(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1418,6 +3218,9 @@
### C Prototype
`void play_shell_music(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1438,6 +3241,9 @@
### C Prototype
`void raise_background_noise(s32 a);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1456,6 +3262,9 @@
### C Prototype
`void reset_volume(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1478,6 +3287,9 @@
### C Prototype
`void set_background_music(u16 a, u16 seqArgs, s16 fadeTimer);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1496,6 +3308,9 @@
### C Prototype
`void stop_cap_music(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1514,6 +3329,9 @@
### C Prototype
`void stop_shell_music(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1540,6 +3358,9 @@
### C Prototype
`s32 calc_dist_to_volume_range_1(f32 distance);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1560,6 +3381,9 @@
### C Prototype
`s32 calc_dist_to_volume_range_2(f32 distance);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1580,6 +3404,9 @@
### C Prototype
`void cur_obj_play_sound_1(s32 soundMagic);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1600,6 +3427,9 @@
### C Prototype
`void cur_obj_play_sound_2(s32 soundMagic);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1621,6 +3451,9 @@
### C Prototype
`void exec_anim_sound_state(struct SoundState *soundStates, u16 maxSoundStates);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1649,6 +3482,9 @@
### C Prototype
`f32 find_ceil_height(f32 x, f32 y, f32 z);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1671,6 +3507,9 @@
### C Prototype
`f32 find_floor_height(f32 x, f32 y, f32 z);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1692,6 +3531,9 @@
### C Prototype
`f32 find_poison_gas_level(f32 x, f32 z);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1712,6 +3554,9 @@
### C Prototype
`s32 find_wall_collisions(struct WallCollisionData *colData);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1733,6 +3578,9 @@
### C Prototype
`f32 find_water_level(f32 x, f32 z);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1743,42 +3591,6 @@
-## [alloc_surface_pools](#alloc_surface_pools)
-
-### Lua Example
-`alloc_surface_pools()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void alloc_surface_pools(void);`
-
-[:arrow_up_small:](#)
-
-
-
-## [clear_dynamic_surfaces](#clear_dynamic_surfaces)
-
-### Lua Example
-`clear_dynamic_surfaces()`
-
-### Parameters
-- None
-
-### Returns
-- None
-
-### C Prototype
-`void clear_dynamic_surfaces(void);`
-
-[:arrow_up_small:](#)
-
-
-
## [get_area_terrain_size](#get_area_terrain_size)
### Lua Example
@@ -1795,6 +3607,9 @@
### C Prototype
`u32 get_area_terrain_size(s16 *data);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1818,6 +3633,9 @@
### C Prototype
`void load_area_terrain(s16 index, s16 *data, s8 *surfaceRooms, s16 *macroObjects);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1836,6 +3654,9 @@
### C Prototype
`void load_object_collision_model(void);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1857,6 +3678,9 @@
### C Prototype
`struct Surface *obj_get_surface_from_index(struct Object *o, u32 index);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -1877,6 +3701,9 @@
### C Prototype
`bool surface_has_force(s16 surfaceType);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
diff --git a/docs/lua/functions.md b/docs/lua/functions.md
index 7b3c7084b..93ec09e6b 100644
--- a/docs/lua/functions.md
+++ b/docs/lua/functions.md
@@ -2,7 +2,7 @@
---
-1 | [2](functions-2.md) | [3](functions-3.md) | [4](functions-4.md) | [5](functions-5.md) | [next >](functions-2.md)]
+1 | [2](functions-2.md) | [3](functions-3.md) | [4](functions-4.md) | [5](functions-5.md) | [6](functions-6.md) | [next >](functions-2.md)]
---
@@ -610,22 +610,22 @@
- behavior_script.h
- - [draw_distance_scalar](functions-2.md#draw_distance_scalar)
- - [obj_update_gfx_pos_and_angle](functions-2.md#obj_update_gfx_pos_and_angle)
- - [position_based_random_float_position](functions-2.md#position_based_random_float_position)
- - [position_based_random_u16](functions-2.md#position_based_random_u16)
- - [random_float](functions-2.md#random_float)
- - [random_sign](functions-2.md#random_sign)
- - [random_u16](functions-2.md#random_u16)
+ - [draw_distance_scalar](functions-3.md#draw_distance_scalar)
+ - [obj_update_gfx_pos_and_angle](functions-3.md#obj_update_gfx_pos_and_angle)
+ - [position_based_random_float_position](functions-3.md#position_based_random_float_position)
+ - [position_based_random_u16](functions-3.md#position_based_random_u16)
+ - [random_float](functions-3.md#random_float)
+ - [random_sign](functions-3.md#random_sign)
+ - [random_u16](functions-3.md#random_u16)
- behavior_table.h
- - [get_behavior_from_id](functions-2.md#get_behavior_from_id)
- - [get_behavior_name_from_id](functions-2.md#get_behavior_name_from_id)
- - [get_id_from_behavior](functions-2.md#get_id_from_behavior)
- - [get_id_from_behavior_name](functions-2.md#get_id_from_behavior_name)
- - [get_id_from_vanilla_behavior](functions-2.md#get_id_from_vanilla_behavior)
+ - [get_behavior_from_id](functions-3.md#get_behavior_from_id)
+ - [get_behavior_name_from_id](functions-3.md#get_behavior_name_from_id)
+ - [get_id_from_behavior](functions-3.md#get_id_from_behavior)
+ - [get_id_from_behavior_name](functions-3.md#get_id_from_behavior_name)
+ - [get_id_from_vanilla_behavior](functions-3.md#get_id_from_vanilla_behavior)
@@ -1048,94 +1048,94 @@
- mario_actions_moving.c
- - [align_with_floor](functions-3.md#align_with_floor)
- - [analog_stick_held_back](functions-3.md#analog_stick_held_back)
- - [anim_and_audio_for_heavy_walk](functions-3.md#anim_and_audio_for_heavy_walk)
- - [anim_and_audio_for_hold_walk](functions-3.md#anim_and_audio_for_hold_walk)
- - [anim_and_audio_for_walk](functions-3.md#anim_and_audio_for_walk)
- - [apply_landing_accel](functions-3.md#apply_landing_accel)
- - [apply_slope_accel](functions-3.md#apply_slope_accel)
- - [apply_slope_decel](functions-3.md#apply_slope_decel)
- - [begin_braking_action](functions-3.md#begin_braking_action)
- - [begin_walking_action](functions-3.md#begin_walking_action)
- - [check_common_moving_cancels](functions-3.md#check_common_moving_cancels)
- - [check_ground_dive_or_punch](functions-3.md#check_ground_dive_or_punch)
- - [check_ledge_climb_down](functions-3.md#check_ledge_climb_down)
- - [common_ground_knockback_action](functions-3.md#common_ground_knockback_action)
- - [common_landing_action](functions-3.md#common_landing_action)
- - [common_slide_action](functions-3.md#common_slide_action)
- - [common_slide_action_with_jump](functions-3.md#common_slide_action_with_jump)
- - [mario_execute_moving_action](functions-3.md#mario_execute_moving_action)
- - [play_step_sound](functions-3.md#play_step_sound)
- - [push_or_sidle_wall](functions-3.md#push_or_sidle_wall)
- - [quicksand_jump_land_action](functions-3.md#quicksand_jump_land_action)
- - [set_triple_jump_action](functions-3.md#set_triple_jump_action)
- - [should_begin_sliding](functions-3.md#should_begin_sliding)
- - [slide_bonk](functions-3.md#slide_bonk)
- - [stomach_slide_action](functions-3.md#stomach_slide_action)
- - [tilt_body_butt_slide](functions-3.md#tilt_body_butt_slide)
- - [tilt_body_ground_shell](functions-3.md#tilt_body_ground_shell)
- - [tilt_body_running](functions-3.md#tilt_body_running)
- - [tilt_body_walking](functions-3.md#tilt_body_walking)
- - [update_decelerating_speed](functions-3.md#update_decelerating_speed)
- - [update_shell_speed](functions-3.md#update_shell_speed)
- - [update_sliding](functions-3.md#update_sliding)
- - [update_sliding_angle](functions-3.md#update_sliding_angle)
- - [update_walking_speed](functions-3.md#update_walking_speed)
+ - [align_with_floor](functions-4.md#align_with_floor)
+ - [analog_stick_held_back](functions-4.md#analog_stick_held_back)
+ - [anim_and_audio_for_heavy_walk](functions-4.md#anim_and_audio_for_heavy_walk)
+ - [anim_and_audio_for_hold_walk](functions-4.md#anim_and_audio_for_hold_walk)
+ - [anim_and_audio_for_walk](functions-4.md#anim_and_audio_for_walk)
+ - [apply_landing_accel](functions-4.md#apply_landing_accel)
+ - [apply_slope_accel](functions-4.md#apply_slope_accel)
+ - [apply_slope_decel](functions-4.md#apply_slope_decel)
+ - [begin_braking_action](functions-4.md#begin_braking_action)
+ - [begin_walking_action](functions-4.md#begin_walking_action)
+ - [check_common_moving_cancels](functions-4.md#check_common_moving_cancels)
+ - [check_ground_dive_or_punch](functions-4.md#check_ground_dive_or_punch)
+ - [check_ledge_climb_down](functions-4.md#check_ledge_climb_down)
+ - [common_ground_knockback_action](functions-4.md#common_ground_knockback_action)
+ - [common_landing_action](functions-4.md#common_landing_action)
+ - [common_slide_action](functions-4.md#common_slide_action)
+ - [common_slide_action_with_jump](functions-4.md#common_slide_action_with_jump)
+ - [mario_execute_moving_action](functions-4.md#mario_execute_moving_action)
+ - [play_step_sound](functions-4.md#play_step_sound)
+ - [push_or_sidle_wall](functions-4.md#push_or_sidle_wall)
+ - [quicksand_jump_land_action](functions-4.md#quicksand_jump_land_action)
+ - [set_triple_jump_action](functions-4.md#set_triple_jump_action)
+ - [should_begin_sliding](functions-4.md#should_begin_sliding)
+ - [slide_bonk](functions-4.md#slide_bonk)
+ - [stomach_slide_action](functions-4.md#stomach_slide_action)
+ - [tilt_body_butt_slide](functions-4.md#tilt_body_butt_slide)
+ - [tilt_body_ground_shell](functions-4.md#tilt_body_ground_shell)
+ - [tilt_body_running](functions-4.md#tilt_body_running)
+ - [tilt_body_walking](functions-4.md#tilt_body_walking)
+ - [update_decelerating_speed](functions-4.md#update_decelerating_speed)
+ - [update_shell_speed](functions-4.md#update_shell_speed)
+ - [update_sliding](functions-4.md#update_sliding)
+ - [update_sliding_angle](functions-4.md#update_sliding_angle)
+ - [update_walking_speed](functions-4.md#update_walking_speed)
- mario_actions_object.c
- - [animated_stationary_ground_step](functions-3.md#animated_stationary_ground_step)
- - [check_common_object_cancels](functions-3.md#check_common_object_cancels)
- - [mario_execute_object_action](functions-3.md#mario_execute_object_action)
- - [mario_update_punch_sequence](functions-3.md#mario_update_punch_sequence)
+ - [animated_stationary_ground_step](functions-4.md#animated_stationary_ground_step)
+ - [check_common_object_cancels](functions-4.md#check_common_object_cancels)
+ - [mario_execute_object_action](functions-4.md#mario_execute_object_action)
+ - [mario_update_punch_sequence](functions-4.md#mario_update_punch_sequence)
- mario_actions_stationary.c
- - [check_common_hold_idle_cancels](functions-3.md#check_common_hold_idle_cancels)
- - [check_common_idle_cancels](functions-3.md#check_common_idle_cancels)
- - [check_common_landing_cancels](functions-3.md#check_common_landing_cancels)
- - [check_common_stationary_cancels](functions-3.md#check_common_stationary_cancels)
- - [landing_step](functions-3.md#landing_step)
- - [mario_execute_stationary_action](functions-3.md#mario_execute_stationary_action)
- - [play_anim_sound](functions-3.md#play_anim_sound)
- - [stopping_step](functions-3.md#stopping_step)
+ - [check_common_hold_idle_cancels](functions-4.md#check_common_hold_idle_cancels)
+ - [check_common_idle_cancels](functions-4.md#check_common_idle_cancels)
+ - [check_common_landing_cancels](functions-4.md#check_common_landing_cancels)
+ - [check_common_stationary_cancels](functions-4.md#check_common_stationary_cancels)
+ - [landing_step](functions-4.md#landing_step)
+ - [mario_execute_stationary_action](functions-4.md#mario_execute_stationary_action)
+ - [play_anim_sound](functions-4.md#play_anim_sound)
+ - [stopping_step](functions-4.md#stopping_step)
- mario_actions_submerged.c
- - [apply_water_current](functions-3.md#apply_water_current)
- - [float_surface_gfx](functions-3.md#float_surface_gfx)
- - [mario_execute_submerged_action](functions-3.md#mario_execute_submerged_action)
- - [perform_water_full_step](functions-3.md#perform_water_full_step)
- - [perform_water_step](functions-3.md#perform_water_step)
- - [set_swimming_at_surface_particles](functions-3.md#set_swimming_at_surface_particles)
+ - [apply_water_current](functions-4.md#apply_water_current)
+ - [float_surface_gfx](functions-4.md#float_surface_gfx)
+ - [mario_execute_submerged_action](functions-4.md#mario_execute_submerged_action)
+ - [perform_water_full_step](functions-4.md#perform_water_full_step)
+ - [perform_water_step](functions-4.md#perform_water_step)
+ - [set_swimming_at_surface_particles](functions-4.md#set_swimming_at_surface_particles)
- mario_misc.h
- - [bhv_toad_message_init](functions-3.md#bhv_toad_message_init)
- - [bhv_toad_message_loop](functions-3.md#bhv_toad_message_loop)
- - [bhv_unlock_door_star_init](functions-3.md#bhv_unlock_door_star_init)
- - [bhv_unlock_door_star_loop](functions-3.md#bhv_unlock_door_star_loop)
+ - [bhv_toad_message_init](functions-4.md#bhv_toad_message_init)
+ - [bhv_toad_message_loop](functions-4.md#bhv_toad_message_loop)
+ - [bhv_unlock_door_star_init](functions-4.md#bhv_unlock_door_star_init)
+ - [bhv_unlock_door_star_loop](functions-4.md#bhv_unlock_door_star_loop)
- mario_step.h
- - [get_additive_y_vel_for_jumps](functions-3.md#get_additive_y_vel_for_jumps)
- - [init_bully_collision_data](functions-3.md#init_bully_collision_data)
- - [mario_bonk_reflection](functions-3.md#mario_bonk_reflection)
- - [mario_push_off_steep_floor](functions-3.md#mario_push_off_steep_floor)
- - [mario_update_moving_sand](functions-3.md#mario_update_moving_sand)
- - [mario_update_quicksand](functions-3.md#mario_update_quicksand)
- - [mario_update_windy_ground](functions-3.md#mario_update_windy_ground)
- - [perform_air_step](functions-3.md#perform_air_step)
- - [perform_ground_step](functions-3.md#perform_ground_step)
- - [set_vel_from_pitch_and_yaw](functions-3.md#set_vel_from_pitch_and_yaw)
- - [stationary_ground_step](functions-3.md#stationary_ground_step)
- - [stop_and_set_height_to_floor](functions-3.md#stop_and_set_height_to_floor)
+ - [get_additive_y_vel_for_jumps](functions-4.md#get_additive_y_vel_for_jumps)
+ - [init_bully_collision_data](functions-4.md#init_bully_collision_data)
+ - [mario_bonk_reflection](functions-4.md#mario_bonk_reflection)
+ - [mario_push_off_steep_floor](functions-4.md#mario_push_off_steep_floor)
+ - [mario_update_moving_sand](functions-4.md#mario_update_moving_sand)
+ - [mario_update_quicksand](functions-4.md#mario_update_quicksand)
+ - [mario_update_windy_ground](functions-4.md#mario_update_windy_ground)
+ - [perform_air_step](functions-4.md#perform_air_step)
+ - [perform_ground_step](functions-4.md#perform_ground_step)
+ - [set_vel_from_pitch_and_yaw](functions-4.md#set_vel_from_pitch_and_yaw)
+ - [stationary_ground_step](functions-4.md#stationary_ground_step)
+ - [stop_and_set_height_to_floor](functions-4.md#stop_and_set_height_to_floor)
@@ -1328,286 +1328,286 @@
- object_helpers.c
- - [abs_angle_diff](functions-4.md#abs_angle_diff)
- - [apply_drag_to_value](functions-4.md#apply_drag_to_value)
- - [approach_f32_signed](functions-4.md#approach_f32_signed)
- - [approach_f32_symmetric](functions-4.md#approach_f32_symmetric)
- - [approach_s16_symmetric](functions-4.md#approach_s16_symmetric)
- - [bhv_dust_smoke_loop](functions-4.md#bhv_dust_smoke_loop)
- - [bhv_init_room](functions-4.md#bhv_init_room)
- - [bit_shift_left](functions-4.md#bit_shift_left)
- - [chain_segment_init](functions-4.md#chain_segment_init)
- - [clear_move_flag](functions-4.md#clear_move_flag)
- - [clear_time_stop_flags](functions-4.md#clear_time_stop_flags)
- - [count_objects_with_behavior](functions-4.md#count_objects_with_behavior)
- - [count_unimportant_objects](functions-4.md#count_unimportant_objects)
- - [create_transformation_from_matrices](functions-4.md#create_transformation_from_matrices)
- - [cur_obj_abs_y_dist_to_home](functions-4.md#cur_obj_abs_y_dist_to_home)
- - [cur_obj_advance_looping_anim](functions-4.md#cur_obj_advance_looping_anim)
- - [cur_obj_align_gfx_with_floor](functions-4.md#cur_obj_align_gfx_with_floor)
- - [cur_obj_angle_to_home](functions-4.md#cur_obj_angle_to_home)
- - [cur_obj_apply_drag_xz](functions-4.md#cur_obj_apply_drag_xz)
- - [cur_obj_become_intangible](functions-4.md#cur_obj_become_intangible)
- - [cur_obj_become_tangible](functions-4.md#cur_obj_become_tangible)
- - [cur_obj_can_mario_activate_textbox](functions-4.md#cur_obj_can_mario_activate_textbox)
- - [cur_obj_can_mario_activate_textbox_2](functions-4.md#cur_obj_can_mario_activate_textbox_2)
- - [cur_obj_change_action](functions-4.md#cur_obj_change_action)
- - [cur_obj_check_anim_frame](functions-4.md#cur_obj_check_anim_frame)
- - [cur_obj_check_anim_frame_in_range](functions-4.md#cur_obj_check_anim_frame_in_range)
- - [cur_obj_check_frame_prior_current_frame](functions-4.md#cur_obj_check_frame_prior_current_frame)
- - [cur_obj_check_grabbed_mario](functions-4.md#cur_obj_check_grabbed_mario)
- - [cur_obj_check_if_at_animation_end](functions-4.md#cur_obj_check_if_at_animation_end)
- - [cur_obj_check_if_near_animation_end](functions-4.md#cur_obj_check_if_near_animation_end)
- - [cur_obj_check_interacted](functions-4.md#cur_obj_check_interacted)
- - [cur_obj_clear_interact_status_flag](functions-4.md#cur_obj_clear_interact_status_flag)
- - [cur_obj_compute_vel_xz](functions-4.md#cur_obj_compute_vel_xz)
- - [cur_obj_count_objects_with_behavior](functions-4.md#cur_obj_count_objects_with_behavior)
- - [cur_obj_detect_steep_floor](functions-4.md#cur_obj_detect_steep_floor)
- - [cur_obj_disable](functions-4.md#cur_obj_disable)
- - [cur_obj_disable_rendering](functions-4.md#cur_obj_disable_rendering)
- - [cur_obj_disable_rendering_and_become_intangible](functions-4.md#cur_obj_disable_rendering_and_become_intangible)
- - [cur_obj_dist_to_nearest_object_with_behavior](functions-4.md#cur_obj_dist_to_nearest_object_with_behavior)
- - [cur_obj_enable_rendering](functions-4.md#cur_obj_enable_rendering)
- - [cur_obj_enable_rendering_2](functions-4.md#cur_obj_enable_rendering_2)
- - [cur_obj_enable_rendering_and_become_tangible](functions-4.md#cur_obj_enable_rendering_and_become_tangible)
- - [cur_obj_enable_rendering_if_mario_in_room](functions-4.md#cur_obj_enable_rendering_if_mario_in_room)
- - [cur_obj_end_dialog](functions-4.md#cur_obj_end_dialog)
- - [cur_obj_extend_animation_if_at_end](functions-4.md#cur_obj_extend_animation_if_at_end)
- - [cur_obj_find_nearby_held_actor](functions-4.md#cur_obj_find_nearby_held_actor)
- - [cur_obj_find_nearest_object_with_behavior](functions-4.md#cur_obj_find_nearest_object_with_behavior)
- - [cur_obj_find_nearest_pole](functions-4.md#cur_obj_find_nearest_pole)
- - [cur_obj_follow_path](functions-4.md#cur_obj_follow_path)
- - [cur_obj_forward_vel_approach_upward](functions-4.md#cur_obj_forward_vel_approach_upward)
- - [cur_obj_get_dropped](functions-4.md#cur_obj_get_dropped)
- - [cur_obj_get_thrown_or_placed](functions-4.md#cur_obj_get_thrown_or_placed)
- - [cur_obj_has_behavior](functions-4.md#cur_obj_has_behavior)
- - [cur_obj_has_model](functions-4.md#cur_obj_has_model)
- - [cur_obj_hide](functions-4.md#cur_obj_hide)
- - [cur_obj_hide_if_mario_far_away_y](functions-4.md#cur_obj_hide_if_mario_far_away_y)
- - [cur_obj_if_hit_wall_bounce_away](functions-4.md#cur_obj_if_hit_wall_bounce_away)
- - [cur_obj_init_animation](functions-4.md#cur_obj_init_animation)
- - [cur_obj_init_animation_and_anim_frame](functions-4.md#cur_obj_init_animation_and_anim_frame)
- - [cur_obj_init_animation_and_check_if_near_end](functions-4.md#cur_obj_init_animation_and_check_if_near_end)
- - [cur_obj_init_animation_and_extend_if_at_end](functions-4.md#cur_obj_init_animation_and_extend_if_at_end)
- - [cur_obj_init_animation_with_accel_and_sound](functions-4.md#cur_obj_init_animation_with_accel_and_sound)
- - [cur_obj_init_animation_with_sound](functions-4.md#cur_obj_init_animation_with_sound)
- - [cur_obj_is_any_player_on_platform](functions-4.md#cur_obj_is_any_player_on_platform)
- - [cur_obj_is_mario_ground_pounding_platform](functions-4.md#cur_obj_is_mario_ground_pounding_platform)
- - [cur_obj_is_mario_on_platform](functions-4.md#cur_obj_is_mario_on_platform)
- - [cur_obj_lateral_dist_from_mario_to_home](functions-4.md#cur_obj_lateral_dist_from_mario_to_home)
- - [cur_obj_lateral_dist_from_obj_to_home](functions-4.md#cur_obj_lateral_dist_from_obj_to_home)
- - [cur_obj_lateral_dist_to_home](functions-4.md#cur_obj_lateral_dist_to_home)
- - [cur_obj_mario_far_away](functions-4.md#cur_obj_mario_far_away)
- - [cur_obj_move_after_thrown_or_dropped](functions-4.md#cur_obj_move_after_thrown_or_dropped)
- - [cur_obj_move_standard](functions-4.md#cur_obj_move_standard)
- - [cur_obj_move_up_and_down](functions-4.md#cur_obj_move_up_and_down)
- - [cur_obj_move_update_ground_air_flags](functions-4.md#cur_obj_move_update_ground_air_flags)
- - [cur_obj_move_update_underwater_flags](functions-4.md#cur_obj_move_update_underwater_flags)
- - [cur_obj_move_using_fvel_and_gravity](functions-4.md#cur_obj_move_using_fvel_and_gravity)
- - [cur_obj_move_using_vel](functions-4.md#cur_obj_move_using_vel)
- - [cur_obj_move_using_vel_and_gravity](functions-4.md#cur_obj_move_using_vel_and_gravity)
- - [cur_obj_move_xz](functions-4.md#cur_obj_move_xz)
- - [cur_obj_move_xz_using_fvel_and_yaw](functions-4.md#cur_obj_move_xz_using_fvel_and_yaw)
- - [cur_obj_move_y](functions-4.md#cur_obj_move_y)
- - [cur_obj_move_y_and_get_water_level](functions-4.md#cur_obj_move_y_and_get_water_level)
- - [cur_obj_move_y_with_terminal_vel](functions-4.md#cur_obj_move_y_with_terminal_vel)
- - [cur_obj_nearest_object_with_behavior](functions-4.md#cur_obj_nearest_object_with_behavior)
- - [cur_obj_outside_home_rectangle](functions-4.md#cur_obj_outside_home_rectangle)
- - [cur_obj_outside_home_square](functions-4.md#cur_obj_outside_home_square)
- - [cur_obj_push_mario_away](functions-4.md#cur_obj_push_mario_away)
- - [cur_obj_push_mario_away_from_cylinder](functions-4.md#cur_obj_push_mario_away_from_cylinder)
- - [cur_obj_reflect_move_angle_off_wall](functions-4.md#cur_obj_reflect_move_angle_off_wall)
- - [cur_obj_reset_timer_and_subaction](functions-4.md#cur_obj_reset_timer_and_subaction)
- - [cur_obj_resolve_wall_collisions](functions-4.md#cur_obj_resolve_wall_collisions)
- - [cur_obj_reverse_animation](functions-4.md#cur_obj_reverse_animation)
- - [cur_obj_rotate_face_angle_using_vel](functions-4.md#cur_obj_rotate_face_angle_using_vel)
- - [cur_obj_rotate_move_angle_using_vel](functions-4.md#cur_obj_rotate_move_angle_using_vel)
- - [cur_obj_rotate_yaw_toward](functions-4.md#cur_obj_rotate_yaw_toward)
- - [cur_obj_scale](functions-4.md#cur_obj_scale)
- - [cur_obj_scale_over_time](functions-4.md#cur_obj_scale_over_time)
- - [cur_obj_set_behavior](functions-4.md#cur_obj_set_behavior)
- - [cur_obj_set_billboard_if_vanilla_cam](functions-4.md#cur_obj_set_billboard_if_vanilla_cam)
- - [cur_obj_set_face_angle_to_move_angle](functions-4.md#cur_obj_set_face_angle_to_move_angle)
- - [cur_obj_set_hitbox_and_die_if_attacked](functions-4.md#cur_obj_set_hitbox_and_die_if_attacked)
- - [cur_obj_set_hitbox_radius_and_height](functions-4.md#cur_obj_set_hitbox_radius_and_height)
- - [cur_obj_set_home_once](functions-4.md#cur_obj_set_home_once)
- - [cur_obj_set_hurtbox_radius_and_height](functions-4.md#cur_obj_set_hurtbox_radius_and_height)
- - [cur_obj_set_pos_relative](functions-4.md#cur_obj_set_pos_relative)
- - [cur_obj_set_pos_relative_to_parent](functions-4.md#cur_obj_set_pos_relative_to_parent)
- - [cur_obj_set_pos_to_home](functions-4.md#cur_obj_set_pos_to_home)
- - [cur_obj_set_pos_to_home_and_stop](functions-4.md#cur_obj_set_pos_to_home_and_stop)
- - [cur_obj_set_pos_to_home_with_debug](functions-4.md#cur_obj_set_pos_to_home_with_debug)
- - [cur_obj_set_pos_via_transform](functions-4.md#cur_obj_set_pos_via_transform)
- - [cur_obj_set_vel_from_mario_vel](functions-4.md#cur_obj_set_vel_from_mario_vel)
- - [cur_obj_set_y_vel_and_animation](functions-4.md#cur_obj_set_y_vel_and_animation)
- - [cur_obj_shake_screen](functions-4.md#cur_obj_shake_screen)
- - [cur_obj_shake_y](functions-4.md#cur_obj_shake_y)
- - [cur_obj_shake_y_until](functions-4.md#cur_obj_shake_y_until)
- - [cur_obj_spawn_loot_blue_coin](functions-4.md#cur_obj_spawn_loot_blue_coin)
- - [cur_obj_spawn_loot_coin_at_mario_pos](functions-4.md#cur_obj_spawn_loot_coin_at_mario_pos)
- - [cur_obj_spawn_particles](functions-4.md#cur_obj_spawn_particles)
- - [cur_obj_spawn_star_at_y_offset](functions-4.md#cur_obj_spawn_star_at_y_offset)
- - [cur_obj_start_cam_event](functions-4.md#cur_obj_start_cam_event)
- - [cur_obj_unhide](functions-4.md#cur_obj_unhide)
- - [cur_obj_unrender_and_reset_state](functions-4.md#cur_obj_unrender_and_reset_state)
- - [cur_obj_unused_init_on_floor](functions-4.md#cur_obj_unused_init_on_floor)
- - [cur_obj_unused_play_footstep_sound](functions-4.md#cur_obj_unused_play_footstep_sound)
- - [cur_obj_unused_resolve_wall_collisions](functions-4.md#cur_obj_unused_resolve_wall_collisions)
- - [cur_obj_update_floor](functions-4.md#cur_obj_update_floor)
- - [cur_obj_update_floor_and_resolve_wall_collisions](functions-4.md#cur_obj_update_floor_and_resolve_wall_collisions)
- - [cur_obj_update_floor_and_walls](functions-4.md#cur_obj_update_floor_and_walls)
- - [cur_obj_update_floor_height](functions-4.md#cur_obj_update_floor_height)
- - [cur_obj_update_floor_height_and_get_floor](functions-4.md#cur_obj_update_floor_height_and_get_floor)
- - [cur_obj_wait_then_blink](functions-4.md#cur_obj_wait_then_blink)
- - [cur_obj_was_attacked_or_ground_pounded](functions-4.md#cur_obj_was_attacked_or_ground_pounded)
- - [cur_obj_within_12k_bounds](functions-4.md#cur_obj_within_12k_bounds)
- - [disable_time_stop](functions-4.md#disable_time_stop)
- - [disable_time_stop_including_mario](functions-4.md#disable_time_stop_including_mario)
- - [dist_between_object_and_point](functions-4.md#dist_between_object_and_point)
- - [dist_between_objects](functions-4.md#dist_between_objects)
- - [enable_time_stop](functions-4.md#enable_time_stop)
- - [enable_time_stop_if_alone](functions-4.md#enable_time_stop_if_alone)
- - [enable_time_stop_including_mario](functions-4.md#enable_time_stop_including_mario)
- - [find_object_with_behavior](functions-4.md#find_object_with_behavior)
- - [find_unimportant_object](functions-4.md#find_unimportant_object)
- - [geo_offset_klepto_debug](functions-4.md#geo_offset_klepto_debug)
- - [get_object_list_from_behavior](functions-4.md#get_object_list_from_behavior)
- - [get_trajectory_length](functions-4.md#get_trajectory_length)
- - [increment_velocity_toward_range](functions-4.md#increment_velocity_toward_range)
- - [is_item_in_array](functions-4.md#is_item_in_array)
- - [is_mario_moving_fast_or_in_air](functions-4.md#is_mario_moving_fast_or_in_air)
- - [lateral_dist_between_objects](functions-4.md#lateral_dist_between_objects)
- - [linear_mtxf_mul_vec3f](functions-4.md#linear_mtxf_mul_vec3f)
- - [linear_mtxf_transpose_mul_vec3f](functions-4.md#linear_mtxf_transpose_mul_vec3f)
- - [mario_is_dive_sliding](functions-4.md#mario_is_dive_sliding)
- - [mario_is_in_air_action](functions-4.md#mario_is_in_air_action)
- - [mario_is_within_rectangle](functions-4.md#mario_is_within_rectangle)
- - [mario_set_flag](functions-4.md#mario_set_flag)
- - [obj_angle_to_object](functions-4.md#obj_angle_to_object)
- - [obj_angle_to_point](functions-4.md#obj_angle_to_point)
- - [obj_apply_scale_to_matrix](functions-4.md#obj_apply_scale_to_matrix)
- - [obj_apply_scale_to_transform](functions-4.md#obj_apply_scale_to_transform)
- - [obj_attack_collided_from_other_object](functions-4.md#obj_attack_collided_from_other_object)
- - [obj_become_tangible](functions-4.md#obj_become_tangible)
- - [obj_build_relative_transform](functions-4.md#obj_build_relative_transform)
- - [obj_build_transform_from_pos_and_angle](functions-4.md#obj_build_transform_from_pos_and_angle)
- - [obj_build_transform_relative_to_parent](functions-4.md#obj_build_transform_relative_to_parent)
- - [obj_build_vel_from_transform](functions-4.md#obj_build_vel_from_transform)
- - [obj_check_if_collided_with_object](functions-4.md#obj_check_if_collided_with_object)
- - [obj_copy_angle](functions-4.md#obj_copy_angle)
- - [obj_copy_behavior_params](functions-4.md#obj_copy_behavior_params)
- - [obj_copy_graph_y_offset](functions-4.md#obj_copy_graph_y_offset)
- - [obj_copy_pos](functions-4.md#obj_copy_pos)
- - [obj_copy_pos_and_angle](functions-4.md#obj_copy_pos_and_angle)
- - [obj_copy_scale](functions-4.md#obj_copy_scale)
- - [obj_create_transform_from_self](functions-4.md#obj_create_transform_from_self)
- - [obj_explode_and_spawn_coins](functions-4.md#obj_explode_and_spawn_coins)
- - [obj_has_behavior](functions-4.md#obj_has_behavior)
- - [obj_init_animation](functions-4.md#obj_init_animation)
- - [obj_init_animation_with_accel_and_sound](functions-4.md#obj_init_animation_with_accel_and_sound)
- - [obj_init_animation_with_sound](functions-4.md#obj_init_animation_with_sound)
- - [obj_is_hidden](functions-4.md#obj_is_hidden)
- - [obj_mark_for_deletion](functions-4.md#obj_mark_for_deletion)
- - [obj_pitch_to_object](functions-4.md#obj_pitch_to_object)
- - [obj_scale](functions-4.md#obj_scale)
- - [obj_scale_random](functions-4.md#obj_scale_random)
- - [obj_scale_xyz](functions-4.md#obj_scale_xyz)
- - [obj_set_angle](functions-4.md#obj_set_angle)
- - [obj_set_behavior](functions-4.md#obj_set_behavior)
- - [obj_set_billboard](functions-4.md#obj_set_billboard)
- - [obj_set_cylboard](functions-4.md#obj_set_cylboard)
- - [obj_set_face_angle](functions-4.md#obj_set_face_angle)
- - [obj_set_face_angle_to_move_angle](functions-4.md#obj_set_face_angle_to_move_angle)
- - [obj_set_gfx_angle](functions-4.md#obj_set_gfx_angle)
- - [obj_set_gfx_pos](functions-4.md#obj_set_gfx_pos)
- - [obj_set_gfx_pos_at_obj_pos](functions-4.md#obj_set_gfx_pos_at_obj_pos)
- - [obj_set_gfx_pos_from_pos](functions-4.md#obj_set_gfx_pos_from_pos)
- - [obj_set_gfx_scale](functions-4.md#obj_set_gfx_scale)
- - [obj_set_held_state](functions-4.md#obj_set_held_state)
- - [obj_set_hitbox](functions-4.md#obj_set_hitbox)
- - [obj_set_hitbox_radius_and_height](functions-4.md#obj_set_hitbox_radius_and_height)
- - [obj_set_hurtbox_radius_and_height](functions-4.md#obj_set_hurtbox_radius_and_height)
- - [obj_set_move_angle](functions-4.md#obj_set_move_angle)
- - [obj_set_parent_relative_pos](functions-4.md#obj_set_parent_relative_pos)
- - [obj_set_pos](functions-4.md#obj_set_pos)
- - [obj_set_pos_relative](functions-4.md#obj_set_pos_relative)
- - [obj_set_throw_matrix_from_transform](functions-4.md#obj_set_throw_matrix_from_transform)
- - [obj_spawn_loot_blue_coins](functions-4.md#obj_spawn_loot_blue_coins)
- - [obj_spawn_loot_coins](functions-4.md#obj_spawn_loot_coins)
- - [obj_spawn_loot_yellow_coins](functions-4.md#obj_spawn_loot_yellow_coins)
- - [obj_translate_local](functions-4.md#obj_translate_local)
- - [obj_translate_xyz_random](functions-4.md#obj_translate_xyz_random)
- - [obj_translate_xz_random](functions-4.md#obj_translate_xz_random)
- - [obj_turn_toward_object](functions-4.md#obj_turn_toward_object)
- - [obj_update_pos_from_parent_transformation](functions-4.md#obj_update_pos_from_parent_transformation)
- - [player_performed_grab_escape_action](functions-4.md#player_performed_grab_escape_action)
- - [random_f32_around_zero](functions-4.md#random_f32_around_zero)
- - [set_mario_interact_hoot_if_in_range](functions-4.md#set_mario_interact_hoot_if_in_range)
- - [set_room_override](functions-4.md#set_room_override)
- - [set_time_stop_flags](functions-4.md#set_time_stop_flags)
- - [set_time_stop_flags_if_alone](functions-4.md#set_time_stop_flags_if_alone)
- - [signum_positive](functions-4.md#signum_positive)
- - [spawn_base_star_with_no_lvl_exit](functions-4.md#spawn_base_star_with_no_lvl_exit)
- - [spawn_mist_particles](functions-4.md#spawn_mist_particles)
- - [spawn_mist_particles_with_sound](functions-4.md#spawn_mist_particles_with_sound)
- - [spawn_star_with_no_lvl_exit](functions-4.md#spawn_star_with_no_lvl_exit)
- - [spawn_water_droplet](functions-4.md#spawn_water_droplet)
- - [stub_obj_helpers_3](functions-4.md#stub_obj_helpers_3)
- - [stub_obj_helpers_4](functions-4.md#stub_obj_helpers_4)
+ - [abs_angle_diff](functions-5.md#abs_angle_diff)
+ - [apply_drag_to_value](functions-5.md#apply_drag_to_value)
+ - [approach_f32_signed](functions-5.md#approach_f32_signed)
+ - [approach_f32_symmetric](functions-5.md#approach_f32_symmetric)
+ - [approach_s16_symmetric](functions-5.md#approach_s16_symmetric)
+ - [bhv_dust_smoke_loop](functions-5.md#bhv_dust_smoke_loop)
+ - [bhv_init_room](functions-5.md#bhv_init_room)
+ - [bit_shift_left](functions-5.md#bit_shift_left)
+ - [chain_segment_init](functions-5.md#chain_segment_init)
+ - [clear_move_flag](functions-5.md#clear_move_flag)
+ - [clear_time_stop_flags](functions-5.md#clear_time_stop_flags)
+ - [count_objects_with_behavior](functions-5.md#count_objects_with_behavior)
+ - [count_unimportant_objects](functions-5.md#count_unimportant_objects)
+ - [create_transformation_from_matrices](functions-5.md#create_transformation_from_matrices)
+ - [cur_obj_abs_y_dist_to_home](functions-5.md#cur_obj_abs_y_dist_to_home)
+ - [cur_obj_advance_looping_anim](functions-5.md#cur_obj_advance_looping_anim)
+ - [cur_obj_align_gfx_with_floor](functions-5.md#cur_obj_align_gfx_with_floor)
+ - [cur_obj_angle_to_home](functions-5.md#cur_obj_angle_to_home)
+ - [cur_obj_apply_drag_xz](functions-5.md#cur_obj_apply_drag_xz)
+ - [cur_obj_become_intangible](functions-5.md#cur_obj_become_intangible)
+ - [cur_obj_become_tangible](functions-5.md#cur_obj_become_tangible)
+ - [cur_obj_can_mario_activate_textbox](functions-5.md#cur_obj_can_mario_activate_textbox)
+ - [cur_obj_can_mario_activate_textbox_2](functions-5.md#cur_obj_can_mario_activate_textbox_2)
+ - [cur_obj_change_action](functions-5.md#cur_obj_change_action)
+ - [cur_obj_check_anim_frame](functions-5.md#cur_obj_check_anim_frame)
+ - [cur_obj_check_anim_frame_in_range](functions-5.md#cur_obj_check_anim_frame_in_range)
+ - [cur_obj_check_frame_prior_current_frame](functions-5.md#cur_obj_check_frame_prior_current_frame)
+ - [cur_obj_check_grabbed_mario](functions-5.md#cur_obj_check_grabbed_mario)
+ - [cur_obj_check_if_at_animation_end](functions-5.md#cur_obj_check_if_at_animation_end)
+ - [cur_obj_check_if_near_animation_end](functions-5.md#cur_obj_check_if_near_animation_end)
+ - [cur_obj_check_interacted](functions-5.md#cur_obj_check_interacted)
+ - [cur_obj_clear_interact_status_flag](functions-5.md#cur_obj_clear_interact_status_flag)
+ - [cur_obj_compute_vel_xz](functions-5.md#cur_obj_compute_vel_xz)
+ - [cur_obj_count_objects_with_behavior](functions-5.md#cur_obj_count_objects_with_behavior)
+ - [cur_obj_detect_steep_floor](functions-5.md#cur_obj_detect_steep_floor)
+ - [cur_obj_disable](functions-5.md#cur_obj_disable)
+ - [cur_obj_disable_rendering](functions-5.md#cur_obj_disable_rendering)
+ - [cur_obj_disable_rendering_and_become_intangible](functions-5.md#cur_obj_disable_rendering_and_become_intangible)
+ - [cur_obj_dist_to_nearest_object_with_behavior](functions-5.md#cur_obj_dist_to_nearest_object_with_behavior)
+ - [cur_obj_enable_rendering](functions-5.md#cur_obj_enable_rendering)
+ - [cur_obj_enable_rendering_2](functions-5.md#cur_obj_enable_rendering_2)
+ - [cur_obj_enable_rendering_and_become_tangible](functions-5.md#cur_obj_enable_rendering_and_become_tangible)
+ - [cur_obj_enable_rendering_if_mario_in_room](functions-5.md#cur_obj_enable_rendering_if_mario_in_room)
+ - [cur_obj_end_dialog](functions-5.md#cur_obj_end_dialog)
+ - [cur_obj_extend_animation_if_at_end](functions-5.md#cur_obj_extend_animation_if_at_end)
+ - [cur_obj_find_nearby_held_actor](functions-5.md#cur_obj_find_nearby_held_actor)
+ - [cur_obj_find_nearest_object_with_behavior](functions-5.md#cur_obj_find_nearest_object_with_behavior)
+ - [cur_obj_find_nearest_pole](functions-5.md#cur_obj_find_nearest_pole)
+ - [cur_obj_follow_path](functions-5.md#cur_obj_follow_path)
+ - [cur_obj_forward_vel_approach_upward](functions-5.md#cur_obj_forward_vel_approach_upward)
+ - [cur_obj_get_dropped](functions-5.md#cur_obj_get_dropped)
+ - [cur_obj_get_thrown_or_placed](functions-5.md#cur_obj_get_thrown_or_placed)
+ - [cur_obj_has_behavior](functions-5.md#cur_obj_has_behavior)
+ - [cur_obj_has_model](functions-5.md#cur_obj_has_model)
+ - [cur_obj_hide](functions-5.md#cur_obj_hide)
+ - [cur_obj_hide_if_mario_far_away_y](functions-5.md#cur_obj_hide_if_mario_far_away_y)
+ - [cur_obj_if_hit_wall_bounce_away](functions-5.md#cur_obj_if_hit_wall_bounce_away)
+ - [cur_obj_init_animation](functions-5.md#cur_obj_init_animation)
+ - [cur_obj_init_animation_and_anim_frame](functions-5.md#cur_obj_init_animation_and_anim_frame)
+ - [cur_obj_init_animation_and_check_if_near_end](functions-5.md#cur_obj_init_animation_and_check_if_near_end)
+ - [cur_obj_init_animation_and_extend_if_at_end](functions-5.md#cur_obj_init_animation_and_extend_if_at_end)
+ - [cur_obj_init_animation_with_accel_and_sound](functions-5.md#cur_obj_init_animation_with_accel_and_sound)
+ - [cur_obj_init_animation_with_sound](functions-5.md#cur_obj_init_animation_with_sound)
+ - [cur_obj_is_any_player_on_platform](functions-5.md#cur_obj_is_any_player_on_platform)
+ - [cur_obj_is_mario_ground_pounding_platform](functions-5.md#cur_obj_is_mario_ground_pounding_platform)
+ - [cur_obj_is_mario_on_platform](functions-5.md#cur_obj_is_mario_on_platform)
+ - [cur_obj_lateral_dist_from_mario_to_home](functions-5.md#cur_obj_lateral_dist_from_mario_to_home)
+ - [cur_obj_lateral_dist_from_obj_to_home](functions-5.md#cur_obj_lateral_dist_from_obj_to_home)
+ - [cur_obj_lateral_dist_to_home](functions-5.md#cur_obj_lateral_dist_to_home)
+ - [cur_obj_mario_far_away](functions-5.md#cur_obj_mario_far_away)
+ - [cur_obj_move_after_thrown_or_dropped](functions-5.md#cur_obj_move_after_thrown_or_dropped)
+ - [cur_obj_move_standard](functions-5.md#cur_obj_move_standard)
+ - [cur_obj_move_up_and_down](functions-5.md#cur_obj_move_up_and_down)
+ - [cur_obj_move_update_ground_air_flags](functions-5.md#cur_obj_move_update_ground_air_flags)
+ - [cur_obj_move_update_underwater_flags](functions-5.md#cur_obj_move_update_underwater_flags)
+ - [cur_obj_move_using_fvel_and_gravity](functions-5.md#cur_obj_move_using_fvel_and_gravity)
+ - [cur_obj_move_using_vel](functions-5.md#cur_obj_move_using_vel)
+ - [cur_obj_move_using_vel_and_gravity](functions-5.md#cur_obj_move_using_vel_and_gravity)
+ - [cur_obj_move_xz](functions-5.md#cur_obj_move_xz)
+ - [cur_obj_move_xz_using_fvel_and_yaw](functions-5.md#cur_obj_move_xz_using_fvel_and_yaw)
+ - [cur_obj_move_y](functions-5.md#cur_obj_move_y)
+ - [cur_obj_move_y_and_get_water_level](functions-5.md#cur_obj_move_y_and_get_water_level)
+ - [cur_obj_move_y_with_terminal_vel](functions-5.md#cur_obj_move_y_with_terminal_vel)
+ - [cur_obj_nearest_object_with_behavior](functions-5.md#cur_obj_nearest_object_with_behavior)
+ - [cur_obj_outside_home_rectangle](functions-5.md#cur_obj_outside_home_rectangle)
+ - [cur_obj_outside_home_square](functions-5.md#cur_obj_outside_home_square)
+ - [cur_obj_push_mario_away](functions-5.md#cur_obj_push_mario_away)
+ - [cur_obj_push_mario_away_from_cylinder](functions-5.md#cur_obj_push_mario_away_from_cylinder)
+ - [cur_obj_reflect_move_angle_off_wall](functions-5.md#cur_obj_reflect_move_angle_off_wall)
+ - [cur_obj_reset_timer_and_subaction](functions-5.md#cur_obj_reset_timer_and_subaction)
+ - [cur_obj_resolve_wall_collisions](functions-5.md#cur_obj_resolve_wall_collisions)
+ - [cur_obj_reverse_animation](functions-5.md#cur_obj_reverse_animation)
+ - [cur_obj_rotate_face_angle_using_vel](functions-5.md#cur_obj_rotate_face_angle_using_vel)
+ - [cur_obj_rotate_move_angle_using_vel](functions-5.md#cur_obj_rotate_move_angle_using_vel)
+ - [cur_obj_rotate_yaw_toward](functions-5.md#cur_obj_rotate_yaw_toward)
+ - [cur_obj_scale](functions-5.md#cur_obj_scale)
+ - [cur_obj_scale_over_time](functions-5.md#cur_obj_scale_over_time)
+ - [cur_obj_set_behavior](functions-5.md#cur_obj_set_behavior)
+ - [cur_obj_set_billboard_if_vanilla_cam](functions-5.md#cur_obj_set_billboard_if_vanilla_cam)
+ - [cur_obj_set_face_angle_to_move_angle](functions-5.md#cur_obj_set_face_angle_to_move_angle)
+ - [cur_obj_set_hitbox_and_die_if_attacked](functions-5.md#cur_obj_set_hitbox_and_die_if_attacked)
+ - [cur_obj_set_hitbox_radius_and_height](functions-5.md#cur_obj_set_hitbox_radius_and_height)
+ - [cur_obj_set_home_once](functions-5.md#cur_obj_set_home_once)
+ - [cur_obj_set_hurtbox_radius_and_height](functions-5.md#cur_obj_set_hurtbox_radius_and_height)
+ - [cur_obj_set_pos_relative](functions-5.md#cur_obj_set_pos_relative)
+ - [cur_obj_set_pos_relative_to_parent](functions-5.md#cur_obj_set_pos_relative_to_parent)
+ - [cur_obj_set_pos_to_home](functions-5.md#cur_obj_set_pos_to_home)
+ - [cur_obj_set_pos_to_home_and_stop](functions-5.md#cur_obj_set_pos_to_home_and_stop)
+ - [cur_obj_set_pos_to_home_with_debug](functions-5.md#cur_obj_set_pos_to_home_with_debug)
+ - [cur_obj_set_pos_via_transform](functions-5.md#cur_obj_set_pos_via_transform)
+ - [cur_obj_set_vel_from_mario_vel](functions-5.md#cur_obj_set_vel_from_mario_vel)
+ - [cur_obj_set_y_vel_and_animation](functions-5.md#cur_obj_set_y_vel_and_animation)
+ - [cur_obj_shake_screen](functions-5.md#cur_obj_shake_screen)
+ - [cur_obj_shake_y](functions-5.md#cur_obj_shake_y)
+ - [cur_obj_shake_y_until](functions-5.md#cur_obj_shake_y_until)
+ - [cur_obj_spawn_loot_blue_coin](functions-5.md#cur_obj_spawn_loot_blue_coin)
+ - [cur_obj_spawn_loot_coin_at_mario_pos](functions-5.md#cur_obj_spawn_loot_coin_at_mario_pos)
+ - [cur_obj_spawn_particles](functions-5.md#cur_obj_spawn_particles)
+ - [cur_obj_spawn_star_at_y_offset](functions-5.md#cur_obj_spawn_star_at_y_offset)
+ - [cur_obj_start_cam_event](functions-5.md#cur_obj_start_cam_event)
+ - [cur_obj_unhide](functions-5.md#cur_obj_unhide)
+ - [cur_obj_unrender_and_reset_state](functions-5.md#cur_obj_unrender_and_reset_state)
+ - [cur_obj_unused_init_on_floor](functions-5.md#cur_obj_unused_init_on_floor)
+ - [cur_obj_unused_play_footstep_sound](functions-5.md#cur_obj_unused_play_footstep_sound)
+ - [cur_obj_unused_resolve_wall_collisions](functions-5.md#cur_obj_unused_resolve_wall_collisions)
+ - [cur_obj_update_floor](functions-5.md#cur_obj_update_floor)
+ - [cur_obj_update_floor_and_resolve_wall_collisions](functions-5.md#cur_obj_update_floor_and_resolve_wall_collisions)
+ - [cur_obj_update_floor_and_walls](functions-5.md#cur_obj_update_floor_and_walls)
+ - [cur_obj_update_floor_height](functions-5.md#cur_obj_update_floor_height)
+ - [cur_obj_update_floor_height_and_get_floor](functions-5.md#cur_obj_update_floor_height_and_get_floor)
+ - [cur_obj_wait_then_blink](functions-5.md#cur_obj_wait_then_blink)
+ - [cur_obj_was_attacked_or_ground_pounded](functions-5.md#cur_obj_was_attacked_or_ground_pounded)
+ - [cur_obj_within_12k_bounds](functions-5.md#cur_obj_within_12k_bounds)
+ - [disable_time_stop](functions-5.md#disable_time_stop)
+ - [disable_time_stop_including_mario](functions-5.md#disable_time_stop_including_mario)
+ - [dist_between_object_and_point](functions-5.md#dist_between_object_and_point)
+ - [dist_between_objects](functions-5.md#dist_between_objects)
+ - [enable_time_stop](functions-5.md#enable_time_stop)
+ - [enable_time_stop_if_alone](functions-5.md#enable_time_stop_if_alone)
+ - [enable_time_stop_including_mario](functions-5.md#enable_time_stop_including_mario)
+ - [find_object_with_behavior](functions-5.md#find_object_with_behavior)
+ - [find_unimportant_object](functions-5.md#find_unimportant_object)
+ - [geo_offset_klepto_debug](functions-5.md#geo_offset_klepto_debug)
+ - [get_object_list_from_behavior](functions-5.md#get_object_list_from_behavior)
+ - [get_trajectory_length](functions-5.md#get_trajectory_length)
+ - [increment_velocity_toward_range](functions-5.md#increment_velocity_toward_range)
+ - [is_item_in_array](functions-5.md#is_item_in_array)
+ - [is_mario_moving_fast_or_in_air](functions-5.md#is_mario_moving_fast_or_in_air)
+ - [lateral_dist_between_objects](functions-5.md#lateral_dist_between_objects)
+ - [linear_mtxf_mul_vec3f](functions-5.md#linear_mtxf_mul_vec3f)
+ - [linear_mtxf_transpose_mul_vec3f](functions-5.md#linear_mtxf_transpose_mul_vec3f)
+ - [mario_is_dive_sliding](functions-5.md#mario_is_dive_sliding)
+ - [mario_is_in_air_action](functions-5.md#mario_is_in_air_action)
+ - [mario_is_within_rectangle](functions-5.md#mario_is_within_rectangle)
+ - [mario_set_flag](functions-5.md#mario_set_flag)
+ - [obj_angle_to_object](functions-5.md#obj_angle_to_object)
+ - [obj_angle_to_point](functions-5.md#obj_angle_to_point)
+ - [obj_apply_scale_to_matrix](functions-5.md#obj_apply_scale_to_matrix)
+ - [obj_apply_scale_to_transform](functions-5.md#obj_apply_scale_to_transform)
+ - [obj_attack_collided_from_other_object](functions-5.md#obj_attack_collided_from_other_object)
+ - [obj_become_tangible](functions-5.md#obj_become_tangible)
+ - [obj_build_relative_transform](functions-5.md#obj_build_relative_transform)
+ - [obj_build_transform_from_pos_and_angle](functions-5.md#obj_build_transform_from_pos_and_angle)
+ - [obj_build_transform_relative_to_parent](functions-5.md#obj_build_transform_relative_to_parent)
+ - [obj_build_vel_from_transform](functions-5.md#obj_build_vel_from_transform)
+ - [obj_check_if_collided_with_object](functions-5.md#obj_check_if_collided_with_object)
+ - [obj_copy_angle](functions-5.md#obj_copy_angle)
+ - [obj_copy_behavior_params](functions-5.md#obj_copy_behavior_params)
+ - [obj_copy_graph_y_offset](functions-5.md#obj_copy_graph_y_offset)
+ - [obj_copy_pos](functions-5.md#obj_copy_pos)
+ - [obj_copy_pos_and_angle](functions-5.md#obj_copy_pos_and_angle)
+ - [obj_copy_scale](functions-5.md#obj_copy_scale)
+ - [obj_create_transform_from_self](functions-5.md#obj_create_transform_from_self)
+ - [obj_explode_and_spawn_coins](functions-5.md#obj_explode_and_spawn_coins)
+ - [obj_has_behavior](functions-5.md#obj_has_behavior)
+ - [obj_init_animation](functions-5.md#obj_init_animation)
+ - [obj_init_animation_with_accel_and_sound](functions-5.md#obj_init_animation_with_accel_and_sound)
+ - [obj_init_animation_with_sound](functions-5.md#obj_init_animation_with_sound)
+ - [obj_is_hidden](functions-5.md#obj_is_hidden)
+ - [obj_mark_for_deletion](functions-5.md#obj_mark_for_deletion)
+ - [obj_pitch_to_object](functions-5.md#obj_pitch_to_object)
+ - [obj_scale](functions-5.md#obj_scale)
+ - [obj_scale_random](functions-5.md#obj_scale_random)
+ - [obj_scale_xyz](functions-5.md#obj_scale_xyz)
+ - [obj_set_angle](functions-5.md#obj_set_angle)
+ - [obj_set_behavior](functions-5.md#obj_set_behavior)
+ - [obj_set_billboard](functions-5.md#obj_set_billboard)
+ - [obj_set_cylboard](functions-5.md#obj_set_cylboard)
+ - [obj_set_face_angle](functions-5.md#obj_set_face_angle)
+ - [obj_set_face_angle_to_move_angle](functions-5.md#obj_set_face_angle_to_move_angle)
+ - [obj_set_gfx_angle](functions-5.md#obj_set_gfx_angle)
+ - [obj_set_gfx_pos](functions-5.md#obj_set_gfx_pos)
+ - [obj_set_gfx_pos_at_obj_pos](functions-5.md#obj_set_gfx_pos_at_obj_pos)
+ - [obj_set_gfx_pos_from_pos](functions-5.md#obj_set_gfx_pos_from_pos)
+ - [obj_set_gfx_scale](functions-5.md#obj_set_gfx_scale)
+ - [obj_set_held_state](functions-5.md#obj_set_held_state)
+ - [obj_set_hitbox](functions-5.md#obj_set_hitbox)
+ - [obj_set_hitbox_radius_and_height](functions-5.md#obj_set_hitbox_radius_and_height)
+ - [obj_set_hurtbox_radius_and_height](functions-5.md#obj_set_hurtbox_radius_and_height)
+ - [obj_set_move_angle](functions-5.md#obj_set_move_angle)
+ - [obj_set_parent_relative_pos](functions-5.md#obj_set_parent_relative_pos)
+ - [obj_set_pos](functions-5.md#obj_set_pos)
+ - [obj_set_pos_relative](functions-5.md#obj_set_pos_relative)
+ - [obj_set_throw_matrix_from_transform](functions-5.md#obj_set_throw_matrix_from_transform)
+ - [obj_spawn_loot_blue_coins](functions-5.md#obj_spawn_loot_blue_coins)
+ - [obj_spawn_loot_coins](functions-5.md#obj_spawn_loot_coins)
+ - [obj_spawn_loot_yellow_coins](functions-5.md#obj_spawn_loot_yellow_coins)
+ - [obj_translate_local](functions-5.md#obj_translate_local)
+ - [obj_translate_xyz_random](functions-5.md#obj_translate_xyz_random)
+ - [obj_translate_xz_random](functions-5.md#obj_translate_xz_random)
+ - [obj_turn_toward_object](functions-5.md#obj_turn_toward_object)
+ - [obj_update_pos_from_parent_transformation](functions-5.md#obj_update_pos_from_parent_transformation)
+ - [player_performed_grab_escape_action](functions-5.md#player_performed_grab_escape_action)
+ - [random_f32_around_zero](functions-5.md#random_f32_around_zero)
+ - [set_mario_interact_hoot_if_in_range](functions-5.md#set_mario_interact_hoot_if_in_range)
+ - [set_room_override](functions-5.md#set_room_override)
+ - [set_time_stop_flags](functions-5.md#set_time_stop_flags)
+ - [set_time_stop_flags_if_alone](functions-5.md#set_time_stop_flags_if_alone)
+ - [signum_positive](functions-5.md#signum_positive)
+ - [spawn_base_star_with_no_lvl_exit](functions-5.md#spawn_base_star_with_no_lvl_exit)
+ - [spawn_mist_particles](functions-5.md#spawn_mist_particles)
+ - [spawn_mist_particles_with_sound](functions-5.md#spawn_mist_particles_with_sound)
+ - [spawn_star_with_no_lvl_exit](functions-5.md#spawn_star_with_no_lvl_exit)
+ - [spawn_water_droplet](functions-5.md#spawn_water_droplet)
+ - [stub_obj_helpers_3](functions-5.md#stub_obj_helpers_3)
+ - [stub_obj_helpers_4](functions-5.md#stub_obj_helpers_4)
- object_list_processor.h
- - [set_object_respawn_info_bits](functions-4.md#set_object_respawn_info_bits)
+ - [set_object_respawn_info_bits](functions-5.md#set_object_respawn_info_bits)
- rumble_init.c
- - [queue_rumble_data](functions-4.md#queue_rumble_data)
- - [queue_rumble_data_mario](functions-4.md#queue_rumble_data_mario)
- - [queue_rumble_data_object](functions-4.md#queue_rumble_data_object)
- - [reset_rumble_timers](functions-4.md#reset_rumble_timers)
- - [reset_rumble_timers_2](functions-4.md#reset_rumble_timers_2)
+ - [queue_rumble_data](functions-5.md#queue_rumble_data)
+ - [queue_rumble_data_mario](functions-5.md#queue_rumble_data_mario)
+ - [queue_rumble_data_object](functions-5.md#queue_rumble_data_object)
+ - [reset_rumble_timers](functions-5.md#reset_rumble_timers)
+ - [reset_rumble_timers_2](functions-5.md#reset_rumble_timers_2)
- save_file.h
- - [save_file_clear_flags](functions-4.md#save_file_clear_flags)
- - [save_file_do_save](functions-4.md#save_file_do_save)
- - [save_file_erase](functions-4.md#save_file_erase)
- - [save_file_erase_current_backup_save](functions-4.md#save_file_erase_current_backup_save)
- - [save_file_get_cap_pos](functions-4.md#save_file_get_cap_pos)
- - [save_file_get_course_coin_score](functions-4.md#save_file_get_course_coin_score)
- - [save_file_get_course_star_count](functions-4.md#save_file_get_course_star_count)
- - [save_file_get_flags](functions-4.md#save_file_get_flags)
- - [save_file_get_max_coin_score](functions-4.md#save_file_get_max_coin_score)
- - [save_file_get_sound_mode](functions-4.md#save_file_get_sound_mode)
- - [save_file_get_star_flags](functions-4.md#save_file_get_star_flags)
- - [save_file_get_total_star_count](functions-4.md#save_file_get_total_star_count)
- - [save_file_is_cannon_unlocked](functions-4.md#save_file_is_cannon_unlocked)
- - [save_file_reload](functions-4.md#save_file_reload)
- - [save_file_remove_star_flags](functions-4.md#save_file_remove_star_flags)
- - [save_file_set_course_coin_score](functions-4.md#save_file_set_course_coin_score)
- - [save_file_set_flags](functions-4.md#save_file_set_flags)
- - [save_file_set_star_flags](functions-4.md#save_file_set_star_flags)
- - [touch_coin_score_age](functions-4.md#touch_coin_score_age)
+ - [save_file_clear_flags](functions-5.md#save_file_clear_flags)
+ - [save_file_do_save](functions-5.md#save_file_do_save)
+ - [save_file_erase](functions-5.md#save_file_erase)
+ - [save_file_erase_current_backup_save](functions-5.md#save_file_erase_current_backup_save)
+ - [save_file_get_cap_pos](functions-5.md#save_file_get_cap_pos)
+ - [save_file_get_course_coin_score](functions-5.md#save_file_get_course_coin_score)
+ - [save_file_get_course_star_count](functions-5.md#save_file_get_course_star_count)
+ - [save_file_get_flags](functions-5.md#save_file_get_flags)
+ - [save_file_get_max_coin_score](functions-5.md#save_file_get_max_coin_score)
+ - [save_file_get_sound_mode](functions-5.md#save_file_get_sound_mode)
+ - [save_file_get_star_flags](functions-5.md#save_file_get_star_flags)
+ - [save_file_get_total_star_count](functions-5.md#save_file_get_total_star_count)
+ - [save_file_is_cannon_unlocked](functions-5.md#save_file_is_cannon_unlocked)
+ - [save_file_reload](functions-5.md#save_file_reload)
+ - [save_file_remove_star_flags](functions-5.md#save_file_remove_star_flags)
+ - [save_file_set_course_coin_score](functions-5.md#save_file_set_course_coin_score)
+ - [save_file_set_flags](functions-5.md#save_file_set_flags)
+ - [save_file_set_star_flags](functions-5.md#save_file_set_star_flags)
+ - [touch_coin_score_age](functions-5.md#touch_coin_score_age)
- seqplayer.h
- - [sequence_player_get_tempo](functions-4.md#sequence_player_get_tempo)
- - [sequence_player_get_tempo_acc](functions-4.md#sequence_player_get_tempo_acc)
- - [sequence_player_get_transposition](functions-4.md#sequence_player_get_transposition)
- - [sequence_player_set_tempo](functions-4.md#sequence_player_set_tempo)
- - [sequence_player_set_tempo_acc](functions-4.md#sequence_player_set_tempo_acc)
- - [sequence_player_set_transposition](functions-4.md#sequence_player_set_transposition)
+ - [sequence_player_get_tempo](functions-5.md#sequence_player_get_tempo)
+ - [sequence_player_get_tempo_acc](functions-5.md#sequence_player_get_tempo_acc)
+ - [sequence_player_get_transposition](functions-5.md#sequence_player_get_transposition)
+ - [sequence_player_set_tempo](functions-5.md#sequence_player_set_tempo)
+ - [sequence_player_set_tempo_acc](functions-5.md#sequence_player_set_tempo_acc)
+ - [sequence_player_set_transposition](functions-5.md#sequence_player_set_transposition)
- smlua_anim_utils.h
- - [get_mario_vanilla_animation](functions-4.md#get_mario_vanilla_animation)
- - [smlua_anim_util_get_current_animation_name](functions-4.md#smlua_anim_util_get_current_animation_name)
- - [smlua_anim_util_set_animation](functions-4.md#smlua_anim_util_set_animation)
+ - [get_mario_vanilla_animation](functions-5.md#get_mario_vanilla_animation)
+ - [smlua_anim_util_get_current_animation_name](functions-5.md#smlua_anim_util_get_current_animation_name)
+ - [smlua_anim_util_set_animation](functions-5.md#smlua_anim_util_set_animation)
@@ -1742,192 +1742,192 @@
- smlua_misc_utils.h
- - [allocate_mario_action](functions-5.md#allocate_mario_action)
- - [course_is_main_course](functions-5.md#course_is_main_course)
- - [deref_s32_pointer](functions-5.md#deref_s32_pointer)
- - [djui_attempting_to_open_playerlist](functions-5.md#djui_attempting_to_open_playerlist)
- - [djui_is_playerlist_open](functions-5.md#djui_is_playerlist_open)
- - [djui_is_popup_disabled](functions-5.md#djui_is_popup_disabled)
- - [djui_menu_get_font](functions-5.md#djui_menu_get_font)
- - [djui_menu_get_theme](functions-5.md#djui_menu_get_theme)
- - [djui_popup_create_global](functions-5.md#djui_popup_create_global)
- - [djui_reset_popup_disabled_override](functions-5.md#djui_reset_popup_disabled_override)
- - [djui_set_popup_disabled_override](functions-5.md#djui_set_popup_disabled_override)
- - [get_coopnet_id](functions-5.md#get_coopnet_id)
- - [get_current_save_file_num](functions-5.md#get_current_save_file_num)
- - [get_date_and_time](functions-5.md#get_date_and_time)
- - [get_dialog_box_state](functions-5.md#get_dialog_box_state)
- - [get_dialog_id](functions-5.md#get_dialog_id)
- - [get_dialog_response](functions-5.md#get_dialog_response)
- - [get_envfx](functions-5.md#get_envfx)
- - [get_environment_region](functions-5.md#get_environment_region)
- - [get_global_timer](functions-5.md#get_global_timer)
- - [get_got_file_coin_hi_score](functions-5.md#get_got_file_coin_hi_score)
- - [get_hand_foot_pos_x](functions-5.md#get_hand_foot_pos_x)
- - [get_hand_foot_pos_y](functions-5.md#get_hand_foot_pos_y)
- - [get_hand_foot_pos_z](functions-5.md#get_hand_foot_pos_z)
- - [get_last_completed_course_num](functions-5.md#get_last_completed_course_num)
- - [get_last_completed_star_num](functions-5.md#get_last_completed_star_num)
- - [get_last_star_or_key](functions-5.md#get_last_star_or_key)
- - [get_local_discord_id](functions-5.md#get_local_discord_id)
- - [get_network_area_timer](functions-5.md#get_network_area_timer)
- - [get_os_name](functions-5.md#get_os_name)
- - [get_save_file_modified](functions-5.md#get_save_file_modified)
- - [get_temp_s32_pointer](functions-5.md#get_temp_s32_pointer)
- - [get_time](functions-5.md#get_time)
- - [get_ttc_speed_setting](functions-5.md#get_ttc_speed_setting)
- - [get_volume_env](functions-5.md#get_volume_env)
- - [get_volume_level](functions-5.md#get_volume_level)
- - [get_volume_master](functions-5.md#get_volume_master)
- - [get_volume_sfx](functions-5.md#get_volume_sfx)
- - [get_water_level](functions-5.md#get_water_level)
- - [hud_get_flash](functions-5.md#hud_get_flash)
- - [hud_get_value](functions-5.md#hud_get_value)
- - [hud_hide](functions-5.md#hud_hide)
- - [hud_is_hidden](functions-5.md#hud_is_hidden)
- - [hud_render_power_meter](functions-5.md#hud_render_power_meter)
- - [hud_render_power_meter_interpolated](functions-5.md#hud_render_power_meter_interpolated)
- - [hud_set_flash](functions-5.md#hud_set_flash)
- - [hud_set_value](functions-5.md#hud_set_value)
- - [hud_show](functions-5.md#hud_show)
- - [is_game_paused](functions-5.md#is_game_paused)
- - [is_transition_playing](functions-5.md#is_transition_playing)
- - [mod_file_exists](functions-5.md#mod_file_exists)
- - [movtexqc_register](functions-5.md#movtexqc_register)
- - [play_transition](functions-5.md#play_transition)
- - [reset_window_title](functions-5.md#reset_window_title)
- - [save_file_get_using_backup_slot](functions-5.md#save_file_get_using_backup_slot)
- - [save_file_set_using_backup_slot](functions-5.md#save_file_set_using_backup_slot)
- - [set_environment_region](functions-5.md#set_environment_region)
- - [set_got_file_coin_hi_score](functions-5.md#set_got_file_coin_hi_score)
- - [set_last_completed_course_num](functions-5.md#set_last_completed_course_num)
- - [set_last_completed_star_num](functions-5.md#set_last_completed_star_num)
- - [set_last_star_or_key](functions-5.md#set_last_star_or_key)
- - [set_override_envfx](functions-5.md#set_override_envfx)
- - [set_save_file_modified](functions-5.md#set_save_file_modified)
- - [set_ttc_speed_setting](functions-5.md#set_ttc_speed_setting)
- - [set_volume_env](functions-5.md#set_volume_env)
- - [set_volume_level](functions-5.md#set_volume_level)
- - [set_volume_master](functions-5.md#set_volume_master)
- - [set_volume_sfx](functions-5.md#set_volume_sfx)
- - [set_water_level](functions-5.md#set_water_level)
- - [set_window_title](functions-5.md#set_window_title)
+ - [allocate_mario_action](functions-6.md#allocate_mario_action)
+ - [course_is_main_course](functions-6.md#course_is_main_course)
+ - [deref_s32_pointer](functions-6.md#deref_s32_pointer)
+ - [djui_attempting_to_open_playerlist](functions-6.md#djui_attempting_to_open_playerlist)
+ - [djui_is_playerlist_open](functions-6.md#djui_is_playerlist_open)
+ - [djui_is_popup_disabled](functions-6.md#djui_is_popup_disabled)
+ - [djui_menu_get_font](functions-6.md#djui_menu_get_font)
+ - [djui_menu_get_theme](functions-6.md#djui_menu_get_theme)
+ - [djui_popup_create_global](functions-6.md#djui_popup_create_global)
+ - [djui_reset_popup_disabled_override](functions-6.md#djui_reset_popup_disabled_override)
+ - [djui_set_popup_disabled_override](functions-6.md#djui_set_popup_disabled_override)
+ - [get_coopnet_id](functions-6.md#get_coopnet_id)
+ - [get_current_save_file_num](functions-6.md#get_current_save_file_num)
+ - [get_date_and_time](functions-6.md#get_date_and_time)
+ - [get_dialog_box_state](functions-6.md#get_dialog_box_state)
+ - [get_dialog_id](functions-6.md#get_dialog_id)
+ - [get_dialog_response](functions-6.md#get_dialog_response)
+ - [get_envfx](functions-6.md#get_envfx)
+ - [get_environment_region](functions-6.md#get_environment_region)
+ - [get_global_timer](functions-6.md#get_global_timer)
+ - [get_got_file_coin_hi_score](functions-6.md#get_got_file_coin_hi_score)
+ - [get_hand_foot_pos_x](functions-6.md#get_hand_foot_pos_x)
+ - [get_hand_foot_pos_y](functions-6.md#get_hand_foot_pos_y)
+ - [get_hand_foot_pos_z](functions-6.md#get_hand_foot_pos_z)
+ - [get_last_completed_course_num](functions-6.md#get_last_completed_course_num)
+ - [get_last_completed_star_num](functions-6.md#get_last_completed_star_num)
+ - [get_last_star_or_key](functions-6.md#get_last_star_or_key)
+ - [get_local_discord_id](functions-6.md#get_local_discord_id)
+ - [get_network_area_timer](functions-6.md#get_network_area_timer)
+ - [get_os_name](functions-6.md#get_os_name)
+ - [get_save_file_modified](functions-6.md#get_save_file_modified)
+ - [get_temp_s32_pointer](functions-6.md#get_temp_s32_pointer)
+ - [get_time](functions-6.md#get_time)
+ - [get_ttc_speed_setting](functions-6.md#get_ttc_speed_setting)
+ - [get_volume_env](functions-6.md#get_volume_env)
+ - [get_volume_level](functions-6.md#get_volume_level)
+ - [get_volume_master](functions-6.md#get_volume_master)
+ - [get_volume_sfx](functions-6.md#get_volume_sfx)
+ - [get_water_level](functions-6.md#get_water_level)
+ - [hud_get_flash](functions-6.md#hud_get_flash)
+ - [hud_get_value](functions-6.md#hud_get_value)
+ - [hud_hide](functions-6.md#hud_hide)
+ - [hud_is_hidden](functions-6.md#hud_is_hidden)
+ - [hud_render_power_meter](functions-6.md#hud_render_power_meter)
+ - [hud_render_power_meter_interpolated](functions-6.md#hud_render_power_meter_interpolated)
+ - [hud_set_flash](functions-6.md#hud_set_flash)
+ - [hud_set_value](functions-6.md#hud_set_value)
+ - [hud_show](functions-6.md#hud_show)
+ - [is_game_paused](functions-6.md#is_game_paused)
+ - [is_transition_playing](functions-6.md#is_transition_playing)
+ - [mod_file_exists](functions-6.md#mod_file_exists)
+ - [movtexqc_register](functions-6.md#movtexqc_register)
+ - [play_transition](functions-6.md#play_transition)
+ - [reset_window_title](functions-6.md#reset_window_title)
+ - [save_file_get_using_backup_slot](functions-6.md#save_file_get_using_backup_slot)
+ - [save_file_set_using_backup_slot](functions-6.md#save_file_set_using_backup_slot)
+ - [set_environment_region](functions-6.md#set_environment_region)
+ - [set_got_file_coin_hi_score](functions-6.md#set_got_file_coin_hi_score)
+ - [set_last_completed_course_num](functions-6.md#set_last_completed_course_num)
+ - [set_last_completed_star_num](functions-6.md#set_last_completed_star_num)
+ - [set_last_star_or_key](functions-6.md#set_last_star_or_key)
+ - [set_override_envfx](functions-6.md#set_override_envfx)
+ - [set_save_file_modified](functions-6.md#set_save_file_modified)
+ - [set_ttc_speed_setting](functions-6.md#set_ttc_speed_setting)
+ - [set_volume_env](functions-6.md#set_volume_env)
+ - [set_volume_level](functions-6.md#set_volume_level)
+ - [set_volume_master](functions-6.md#set_volume_master)
+ - [set_volume_sfx](functions-6.md#set_volume_sfx)
+ - [set_water_level](functions-6.md#set_water_level)
+ - [set_window_title](functions-6.md#set_window_title)
- smlua_model_utils.h
- - [smlua_model_util_get_id](functions-5.md#smlua_model_util_get_id)
+ - [smlua_model_util_get_id](functions-6.md#smlua_model_util_get_id)
- smlua_obj_utils.h
- - [get_temp_object_hitbox](functions-5.md#get_temp_object_hitbox)
- - [get_trajectory](functions-5.md#get_trajectory)
- - [obj_check_hitbox_overlap](functions-5.md#obj_check_hitbox_overlap)
- - [obj_check_overlap_with_hitbox_params](functions-5.md#obj_check_overlap_with_hitbox_params)
- - [obj_count_objects_with_behavior_id](functions-5.md#obj_count_objects_with_behavior_id)
- - [obj_get_collided_object](functions-5.md#obj_get_collided_object)
- - [obj_get_field_f32](functions-5.md#obj_get_field_f32)
- - [obj_get_field_s16](functions-5.md#obj_get_field_s16)
- - [obj_get_field_s32](functions-5.md#obj_get_field_s32)
- - [obj_get_field_u32](functions-5.md#obj_get_field_u32)
- - [obj_get_first](functions-5.md#obj_get_first)
- - [obj_get_first_with_behavior_id](functions-5.md#obj_get_first_with_behavior_id)
- - [obj_get_first_with_behavior_id_and_field_f32](functions-5.md#obj_get_first_with_behavior_id_and_field_f32)
- - [obj_get_first_with_behavior_id_and_field_s32](functions-5.md#obj_get_first_with_behavior_id_and_field_s32)
- - [obj_get_nearest_object_with_behavior_id](functions-5.md#obj_get_nearest_object_with_behavior_id)
- - [obj_get_next](functions-5.md#obj_get_next)
- - [obj_get_next_with_same_behavior_id](functions-5.md#obj_get_next_with_same_behavior_id)
- - [obj_get_next_with_same_behavior_id_and_field_f32](functions-5.md#obj_get_next_with_same_behavior_id_and_field_f32)
- - [obj_get_next_with_same_behavior_id_and_field_s32](functions-5.md#obj_get_next_with_same_behavior_id_and_field_s32)
- - [obj_get_temp_spawn_particles_info](functions-5.md#obj_get_temp_spawn_particles_info)
- - [obj_has_behavior_id](functions-5.md#obj_has_behavior_id)
- - [obj_has_model_extended](functions-5.md#obj_has_model_extended)
- - [obj_is_attackable](functions-5.md#obj_is_attackable)
- - [obj_is_breakable_object](functions-5.md#obj_is_breakable_object)
- - [obj_is_bully](functions-5.md#obj_is_bully)
- - [obj_is_coin](functions-5.md#obj_is_coin)
- - [obj_is_exclamation_box](functions-5.md#obj_is_exclamation_box)
- - [obj_is_grabbable](functions-5.md#obj_is_grabbable)
- - [obj_is_mushroom_1up](functions-5.md#obj_is_mushroom_1up)
- - [obj_is_secret](functions-5.md#obj_is_secret)
- - [obj_is_valid_for_interaction](functions-5.md#obj_is_valid_for_interaction)
- - [obj_move_xyz](functions-5.md#obj_move_xyz)
- - [obj_set_field_f32](functions-5.md#obj_set_field_f32)
- - [obj_set_field_s16](functions-5.md#obj_set_field_s16)
- - [obj_set_field_s32](functions-5.md#obj_set_field_s32)
- - [obj_set_field_u32](functions-5.md#obj_set_field_u32)
- - [obj_set_model_extended](functions-5.md#obj_set_model_extended)
- - [obj_set_vel](functions-5.md#obj_set_vel)
- - [set_whirlpools](functions-5.md#set_whirlpools)
- - [spawn_non_sync_object](functions-5.md#spawn_non_sync_object)
- - [spawn_sync_object](functions-5.md#spawn_sync_object)
+ - [get_temp_object_hitbox](functions-6.md#get_temp_object_hitbox)
+ - [get_trajectory](functions-6.md#get_trajectory)
+ - [obj_check_hitbox_overlap](functions-6.md#obj_check_hitbox_overlap)
+ - [obj_check_overlap_with_hitbox_params](functions-6.md#obj_check_overlap_with_hitbox_params)
+ - [obj_count_objects_with_behavior_id](functions-6.md#obj_count_objects_with_behavior_id)
+ - [obj_get_collided_object](functions-6.md#obj_get_collided_object)
+ - [obj_get_field_f32](functions-6.md#obj_get_field_f32)
+ - [obj_get_field_s16](functions-6.md#obj_get_field_s16)
+ - [obj_get_field_s32](functions-6.md#obj_get_field_s32)
+ - [obj_get_field_u32](functions-6.md#obj_get_field_u32)
+ - [obj_get_first](functions-6.md#obj_get_first)
+ - [obj_get_first_with_behavior_id](functions-6.md#obj_get_first_with_behavior_id)
+ - [obj_get_first_with_behavior_id_and_field_f32](functions-6.md#obj_get_first_with_behavior_id_and_field_f32)
+ - [obj_get_first_with_behavior_id_and_field_s32](functions-6.md#obj_get_first_with_behavior_id_and_field_s32)
+ - [obj_get_nearest_object_with_behavior_id](functions-6.md#obj_get_nearest_object_with_behavior_id)
+ - [obj_get_next](functions-6.md#obj_get_next)
+ - [obj_get_next_with_same_behavior_id](functions-6.md#obj_get_next_with_same_behavior_id)
+ - [obj_get_next_with_same_behavior_id_and_field_f32](functions-6.md#obj_get_next_with_same_behavior_id_and_field_f32)
+ - [obj_get_next_with_same_behavior_id_and_field_s32](functions-6.md#obj_get_next_with_same_behavior_id_and_field_s32)
+ - [obj_get_temp_spawn_particles_info](functions-6.md#obj_get_temp_spawn_particles_info)
+ - [obj_has_behavior_id](functions-6.md#obj_has_behavior_id)
+ - [obj_has_model_extended](functions-6.md#obj_has_model_extended)
+ - [obj_is_attackable](functions-6.md#obj_is_attackable)
+ - [obj_is_breakable_object](functions-6.md#obj_is_breakable_object)
+ - [obj_is_bully](functions-6.md#obj_is_bully)
+ - [obj_is_coin](functions-6.md#obj_is_coin)
+ - [obj_is_exclamation_box](functions-6.md#obj_is_exclamation_box)
+ - [obj_is_grabbable](functions-6.md#obj_is_grabbable)
+ - [obj_is_mushroom_1up](functions-6.md#obj_is_mushroom_1up)
+ - [obj_is_secret](functions-6.md#obj_is_secret)
+ - [obj_is_valid_for_interaction](functions-6.md#obj_is_valid_for_interaction)
+ - [obj_move_xyz](functions-6.md#obj_move_xyz)
+ - [obj_set_field_f32](functions-6.md#obj_set_field_f32)
+ - [obj_set_field_s16](functions-6.md#obj_set_field_s16)
+ - [obj_set_field_s32](functions-6.md#obj_set_field_s32)
+ - [obj_set_field_u32](functions-6.md#obj_set_field_u32)
+ - [obj_set_model_extended](functions-6.md#obj_set_model_extended)
+ - [obj_set_vel](functions-6.md#obj_set_vel)
+ - [set_whirlpools](functions-6.md#set_whirlpools)
+ - [spawn_non_sync_object](functions-6.md#spawn_non_sync_object)
+ - [spawn_sync_object](functions-6.md#spawn_sync_object)
- smlua_text_utils.h
- - [smlua_text_utils_act_name_get](functions-5.md#smlua_text_utils_act_name_get)
- - [smlua_text_utils_act_name_mod_index](functions-5.md#smlua_text_utils_act_name_mod_index)
- - [smlua_text_utils_act_name_replace](functions-5.md#smlua_text_utils_act_name_replace)
- - [smlua_text_utils_act_name_reset](functions-5.md#smlua_text_utils_act_name_reset)
- - [smlua_text_utils_castle_secret_stars_replace](functions-5.md#smlua_text_utils_castle_secret_stars_replace)
- - [smlua_text_utils_course_acts_replace](functions-5.md#smlua_text_utils_course_acts_replace)
- - [smlua_text_utils_course_name_get](functions-5.md#smlua_text_utils_course_name_get)
- - [smlua_text_utils_course_name_mod_index](functions-5.md#smlua_text_utils_course_name_mod_index)
- - [smlua_text_utils_course_name_replace](functions-5.md#smlua_text_utils_course_name_replace)
- - [smlua_text_utils_course_name_reset](functions-5.md#smlua_text_utils_course_name_reset)
- - [smlua_text_utils_dialog_replace](functions-5.md#smlua_text_utils_dialog_replace)
- - [smlua_text_utils_extra_text_replace](functions-5.md#smlua_text_utils_extra_text_replace)
- - [smlua_text_utils_get_language](functions-5.md#smlua_text_utils_get_language)
- - [smlua_text_utils_secret_star_replace](functions-5.md#smlua_text_utils_secret_star_replace)
+ - [smlua_text_utils_act_name_get](functions-6.md#smlua_text_utils_act_name_get)
+ - [smlua_text_utils_act_name_mod_index](functions-6.md#smlua_text_utils_act_name_mod_index)
+ - [smlua_text_utils_act_name_replace](functions-6.md#smlua_text_utils_act_name_replace)
+ - [smlua_text_utils_act_name_reset](functions-6.md#smlua_text_utils_act_name_reset)
+ - [smlua_text_utils_castle_secret_stars_replace](functions-6.md#smlua_text_utils_castle_secret_stars_replace)
+ - [smlua_text_utils_course_acts_replace](functions-6.md#smlua_text_utils_course_acts_replace)
+ - [smlua_text_utils_course_name_get](functions-6.md#smlua_text_utils_course_name_get)
+ - [smlua_text_utils_course_name_mod_index](functions-6.md#smlua_text_utils_course_name_mod_index)
+ - [smlua_text_utils_course_name_replace](functions-6.md#smlua_text_utils_course_name_replace)
+ - [smlua_text_utils_course_name_reset](functions-6.md#smlua_text_utils_course_name_reset)
+ - [smlua_text_utils_dialog_replace](functions-6.md#smlua_text_utils_dialog_replace)
+ - [smlua_text_utils_extra_text_replace](functions-6.md#smlua_text_utils_extra_text_replace)
+ - [smlua_text_utils_get_language](functions-6.md#smlua_text_utils_get_language)
+ - [smlua_text_utils_secret_star_replace](functions-6.md#smlua_text_utils_secret_star_replace)
- sound_init.h
- - [disable_background_sound](functions-5.md#disable_background_sound)
- - [enable_background_sound](functions-5.md#enable_background_sound)
- - [fadeout_cap_music](functions-5.md#fadeout_cap_music)
- - [fadeout_level_music](functions-5.md#fadeout_level_music)
- - [fadeout_music](functions-5.md#fadeout_music)
- - [lower_background_noise](functions-5.md#lower_background_noise)
- - [play_cap_music](functions-5.md#play_cap_music)
- - [play_cutscene_music](functions-5.md#play_cutscene_music)
- - [play_infinite_stairs_music](functions-5.md#play_infinite_stairs_music)
- - [play_menu_sounds](functions-5.md#play_menu_sounds)
- - [play_painting_eject_sound](functions-5.md#play_painting_eject_sound)
- - [play_shell_music](functions-5.md#play_shell_music)
- - [raise_background_noise](functions-5.md#raise_background_noise)
- - [reset_volume](functions-5.md#reset_volume)
- - [set_background_music](functions-5.md#set_background_music)
- - [stop_cap_music](functions-5.md#stop_cap_music)
- - [stop_shell_music](functions-5.md#stop_shell_music)
+ - [disable_background_sound](functions-6.md#disable_background_sound)
+ - [enable_background_sound](functions-6.md#enable_background_sound)
+ - [fadeout_cap_music](functions-6.md#fadeout_cap_music)
+ - [fadeout_level_music](functions-6.md#fadeout_level_music)
+ - [fadeout_music](functions-6.md#fadeout_music)
+ - [lower_background_noise](functions-6.md#lower_background_noise)
+ - [play_cap_music](functions-6.md#play_cap_music)
+ - [play_cutscene_music](functions-6.md#play_cutscene_music)
+ - [play_infinite_stairs_music](functions-6.md#play_infinite_stairs_music)
+ - [play_menu_sounds](functions-6.md#play_menu_sounds)
+ - [play_painting_eject_sound](functions-6.md#play_painting_eject_sound)
+ - [play_shell_music](functions-6.md#play_shell_music)
+ - [raise_background_noise](functions-6.md#raise_background_noise)
+ - [reset_volume](functions-6.md#reset_volume)
+ - [set_background_music](functions-6.md#set_background_music)
+ - [stop_cap_music](functions-6.md#stop_cap_music)
+ - [stop_shell_music](functions-6.md#stop_shell_music)
- spawn_sound.c
- - [calc_dist_to_volume_range_1](functions-5.md#calc_dist_to_volume_range_1)
- - [calc_dist_to_volume_range_2](functions-5.md#calc_dist_to_volume_range_2)
- - [cur_obj_play_sound_1](functions-5.md#cur_obj_play_sound_1)
- - [cur_obj_play_sound_2](functions-5.md#cur_obj_play_sound_2)
- - [exec_anim_sound_state](functions-5.md#exec_anim_sound_state)
+ - [calc_dist_to_volume_range_1](functions-6.md#calc_dist_to_volume_range_1)
+ - [calc_dist_to_volume_range_2](functions-6.md#calc_dist_to_volume_range_2)
+ - [cur_obj_play_sound_1](functions-6.md#cur_obj_play_sound_1)
+ - [cur_obj_play_sound_2](functions-6.md#cur_obj_play_sound_2)
+ - [exec_anim_sound_state](functions-6.md#exec_anim_sound_state)
- surface_collision.h
- - [find_ceil_height](functions-5.md#find_ceil_height)
- - [find_floor_height](functions-5.md#find_floor_height)
- - [find_poison_gas_level](functions-5.md#find_poison_gas_level)
- - [find_wall_collisions](functions-5.md#find_wall_collisions)
- - [find_water_level](functions-5.md#find_water_level)
+ - [find_ceil_height](functions-6.md#find_ceil_height)
+ - [find_floor_height](functions-6.md#find_floor_height)
+ - [find_poison_gas_level](functions-6.md#find_poison_gas_level)
+ - [find_wall_collisions](functions-6.md#find_wall_collisions)
+ - [find_water_level](functions-6.md#find_water_level)
- surface_load.h
- - [get_area_terrain_size](functions-5.md#get_area_terrain_size)
- - [load_area_terrain](functions-5.md#load_area_terrain)
- - [load_object_collision_model](functions-5.md#load_object_collision_model)
- - [obj_get_surface_from_index](functions-5.md#obj_get_surface_from_index)
- - [surface_has_force](functions-5.md#surface_has_force)
+ - [get_area_terrain_size](functions-6.md#get_area_terrain_size)
+ - [load_area_terrain](functions-6.md#load_area_terrain)
+ - [load_object_collision_model](functions-6.md#load_object_collision_model)
+ - [obj_get_surface_from_index](functions-6.md#obj_get_surface_from_index)
+ - [surface_has_force](functions-6.md#surface_has_force)
@@ -2437,6 +2437,9 @@ N/A
### C Prototype
`struct ObjectWarpNode *area_get_warp_node(u8 id);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
@@ -2457,10 +2460,13 @@ N/A
### C Prototype
`struct ObjectWarpNode *area_get_warp_node_from_params(struct Object *o);`
+### Description
+No description available.
+
[:arrow_up_small:](#)
---
-1 | [2](functions-2.md) | [3](functions-3.md) | [4](functions-4.md) | [5](functions-5.md) | [next >](functions-2.md)]
+1 | [2](functions-2.md) | [3](functions-3.md) | [4](functions-4.md) | [5](functions-5.md) | [6](functions-6.md) | [next >](functions-2.md)]
diff --git a/src/engine/math_util.h b/src/engine/math_util.h
index 722b92fc3..5410931e9 100644
--- a/src/engine/math_util.h
+++ b/src/engine/math_util.h
@@ -76,66 +76,268 @@ extern f32 gCosineTable[];
// Fallback to the original implementation for iDO
#define min(a,b) (a < b ? a : b)
#define max(a,b) (a > b ? a : b)
+#define sqr(x) (x * x)
#define absx(x) ((x) < 0 ? -(x) : (x))
#endif
-static inline f32 sqrf(f32 x) { return x * x; }
+/* |description|
+Calculates the sine of the given angle, where the angle is specified as a signed 16-bit integer representing a fixed-point "SM64 angle". This function returns a floating-point result corresponding to sin(angle).
+|descriptionEnd| */
f32 sins(s16 sm64Angle);
+
+/* |description|
+Calculates the cosine of the given angle, where the angle is specified as a signed 16-bit integer representing a fixed-point "SM64 angle". The function returns a floating-point value corresponding to cos(angle).
+|descriptionEnd| */
f32 coss(s16 sm64Angle);
#include "../../include/libc/stdlib.h"
+/* |description|
+Copies the contents of a 3D floating-point vector (`src`) into another 3D floating-point vector (`dest`). After this operation, `dest` will have the same x, y, and z values as `src`.
+|descriptionEnd| */
void *vec3f_copy(Vec3f dest, Vec3f src);
+
+/* |description|
+Sets the values of the 3D floating-point vector `dest` to the given x, y, and z values. After this function, `dest` will have values (x, y, z).
+|descriptionEnd| */
void *vec3f_set(Vec3f dest, f32 x, f32 y, f32 z);
+
+/* |description|
+Adds the components of the 3D floating-point vector `a` to `dest`. After this operation, `dest.x` will be `dest.x + a.x`, and similarly for the y and z components.
+|descriptionEnd| */
void *vec3f_add(Vec3f dest, Vec3f a);
+
+/* |description|
+Adds the corresponding components of two 3D floating-point vectors `a` and `b`, and stores the result in `dest`. For example, `dest.x = a.x + b.x`, `dest.y = a.y + b.y`, and `dest.z = a.z + b.z`.
+|descriptionEnd| */
void *vec3f_sum(Vec3f dest, Vec3f a, Vec3f b);
+
+/* |description|
+Subtracts the components of the 3D floating-point vector `b` from the components of `a` and stores the result in `dest`. For example, `dest.x = a.x - b.x`.
+This results in a vector that represents the difference between `a` and `b`.
+|descriptionEnd| */
void *vec3f_dif(Vec3f dest, Vec3f a, Vec3f b);
+
+/* |description|
+Multiplies each component of the 3D floating-point vector `dest` by the scalar value `a`. For instance, `dest.x = dest.x * a`, and similarly for y and z. This scales the vector `dest` by `a`.
+|descriptionEnd| */
void *vec3f_mul(Vec3f dest, f32 a);
+
+/* |description|
+Copies the components of one 3D signed-integer vector (`src`) to another (`dest`). After this function, `dest` will have the same x, y, and z integer values as `src`.
+|descriptionEnd| */
void *vec3s_copy(Vec3s dest, Vec3s src);
+
+/* |description|
+Sets the 3D signed-integer vector `dest` to the specified integer values (x, y, z), so that `dest` becomes (x, y, z).
+|descriptionEnd| */
void *vec3s_set(Vec3s dest, s16 x, s16 y, s16 z);
+
+/* |description|
+Adds the components of a 3D signed-integer vector `a` to the corresponding components of `dest`. After this operation, each component of `dest` is increased by the corresponding component in `a`.
+|descriptionEnd| */
void *vec3s_add(Vec3s dest, Vec3s a);
+
+/* |description|
+Adds the components of two 3D signed-integer vectors `a` and `b` together and stores the resulting vector in `dest`. For example, `dest.x = a.x + b.x`, and similarly for y and z.
+|descriptionEnd| */
void *vec3s_sum(Vec3s dest, Vec3s a, Vec3s b);
+
+/* |description|
+Subtracts the components of a 3D signed-integer vector `b` from the components of `a` and stores the result in `dest`. This gives a vector representing the difference `a - b`.
+|descriptionEnd| */
void *vec3s_sub(Vec3s dest, Vec3s a);
+
+/* |description|
+Converts a 3D signed-integer vector `a` (vec3s) into a 3D floating-point vector and stores it in `dest`. After this operation, `dest` will contain the floating-point equivalents of `a`'s integer components.
+|descriptionEnd| */
void *vec3s_to_vec3f(Vec3f dest, Vec3s a);
+
+/* |description|
+Converts a 3D floating-point vector `a` (Vec3f) into a 3D signed-integer vector and stores it in `dest`. After this operation, `dest` will contain the integer versions of `a`'s floating-point components.
+|descriptionEnd| */
void *vec3f_to_vec3s(Vec3s dest, Vec3f a);
+
+/* |description|
+Determines a vector that is perpendicular (normal) to the plane defined by three given 3D floating-point points `a`, `b`, and `c`. The resulting perpendicular vector is stored in `dest`.
+|descriptionEnd| */
void *find_vector_perpendicular_to_plane(Vec3f dest, Vec3f a, Vec3f b, Vec3f c);
+
+/* |description|
+Computes the cross product of two 3D floating-point vectors `a` and `b`. The cross product is a vector perpendicular to both `a` and `b`. The result is stored in `dest`.
+|descriptionEnd| */
void *vec3f_cross(Vec3f dest, Vec3f a, Vec3f b);
+
+/* |description|
+Normalizes the 3D floating-point vector `dest` so that its length (magnitude) becomes 1, while retaining its direction. This effectively scales `dest` so that it lies on the unit sphere.
+|descriptionEnd| */
void *vec3f_normalize(Vec3f dest);
+
+/* |description|
+Calculates the length (magnitude) of the 3D floating-point vector `a`. The length is defined as sqrt(x² + y² + z²) for the vector components (x, y, z).
+|descriptionEnd| */
f32 vec3f_length(Vec3f a);
+
+/* |description|
+Computes the dot product of the two 3D floating-point vectors `a` and `b`. The dot product is a scalar value defined by (a.x * b.x + a.y * b.y + a.z * b.z), representing how aligned the two vectors are.
+|descriptionEnd| */
f32 vec3f_dot(Vec3f a, Vec3f b);
+
+/* |description|
+Takes two 3D floating-point vectors `vecA` and `vecB`, multiplies them by `sclA` and `sclB` respectively, and then adds the scaled vectors together. The final combined vector is stored in `dest`.
+|descriptionEnd| */
void vec3f_combine(Vec3f dest, Vec3f vecA, Vec3f vecB, f32 sclA, f32 sclB);
+
+/* |description|
+Rotates the 3D floating-point vector `v` by the angles specified in the 3D signed-integer vector `rotate`, applying the rotations in the order Z, then X, then Y. The rotated vector replaces `v`.
+|descriptionEnd| */
void *vec3f_rotate_zxy(Vec3f v, Vec3s rotate);
+
+/* |description|
+Copies the 4x4 floating-point matrix `src` into `dest`. After this operation, `dest` contains the same matrix values as `src`.
+|descriptionEnd| */
void mtxf_copy(Mat4 dest, Mat4 src);
+
+/* |description|
+Sets the 4x4 floating-point matrix `mtx` to the identity matrix. The identity matrix leaves points unchanged when they are transformed by it which is useful for matrix math.
+|descriptionEnd| */
void mtxf_identity(Mat4 mtx);
+
+/* |description|
+Applies a translation to the 4x4 floating-point matrix `dest` by adding the coordinates in the 3D floating-point vector `b`. This shifts any transformed point by `b`.
+|descriptionEnd| */
void mtxf_translate(Mat4 dest, Vec3f b);
+
+/* |description|
+Adjusts the 4x4 floating-point matrix `mtx` so that it represents a viewing transformation looking from the point `from` toward the point `to`, with a given roll angle. This creates a view matrix oriented toward `to`.
+|descriptionEnd| */
void mtxf_lookat(Mat4 mtx, Vec3f from, Vec3f to, s16 roll);
+
+/* |description|
+Rotates `dest` according to the angles in `rotate` using ZXY order, and then translates it by the 3D floating-point vector `translate`. This effectively positions and orients `dest` in 3D space.
+|descriptionEnd| */
void mtxf_rotate_zxy_and_translate(Mat4 dest, Vec3f translate, Vec3s rotate);
+
+/* |description|
+Rotates `dest` using angles in XYZ order, and then translates it by the 3D floating-point vector `b` and applies the rotations described by `c`. This sets up `dest` with a specific orientation and position in space.
+|descriptionEnd| */
void mtxf_rotate_xyz_and_translate(Mat4 dest, Vec3f b, Vec3s c);
+
+/* |description|
+Transforms a 4x4 floating-point matrix `mtx` into a "billboard" oriented toward the camera or a given direction. The billboard is placed at `position` and rotated by `angle`. This is useful for objects that should always face the viewer.
+|descriptionEnd| */
void mtxf_billboard(Mat4 dest, Mat4 mtx, Vec3f position, s16 angle);
+
+/* |description|
+Creates a "cylindrical billboard" transformation from the 4x4 matrix `mtx` placed at `position` with a given `angle`. Unlike a full billboard, this might allow rotation around one axis while still facing the viewer on others.
+|descriptionEnd| */
void mtxf_cylboard(Mat4 dest, Mat4 mtx, Vec3f position, s16 angle);
+
+/* |description|
+Aligns `dest` so that it fits the orientation of a terrain surface defined by its normal vector `upDir`. The transformation is positioned at `pos` and oriented with a given `yaw`. This is often used to make objects sit naturally on uneven ground.
+|descriptionEnd| */
void mtxf_align_terrain_normal(Mat4 dest, Vec3f upDir, Vec3f pos, s16 yaw);
+
+/* |description|
+Aligns `mtx` to fit onto a terrain triangle at `pos`, applying a given `yaw` and scaling by `radius`. This helps position objects so they match the orientation of the terrain's surface.
+|descriptionEnd| */
void mtxf_align_terrain_triangle(Mat4 mtx, Vec3f pos, s16 yaw, f32 radius);
+
+/* |description|
+Multiplies two 4x4 floating-point matrices `a` and `b` (in that order), storing the product in `dest`. This can be used for combining multiple transformations into one.
+|descriptionEnd| */
void mtxf_mul(Mat4 dest, Mat4 a, Mat4 b);
+
+/* |description|
+Scales the 4x4 floating-point matrix `mtx` by the scaling factors found in the 3D floating-point vector `s`, and stores the result in `dest`. This enlarges or shrinks objects in 3D space.
+|descriptionEnd| */
void mtxf_scale_vec3f(Mat4 dest, Mat4 mtx, Vec3f s);
+
+/* |description|
+Multiplies the 4x4 floating-point matrix `mtx` by a 3D signed-integer vector `b`, potentially interpreting `b` as angles or translations depending on usage, and modifies `mtx` accordingly.
+|descriptionEnd| */
void mtxf_mul_vec3s(Mat4 mtx, Vec3s b);
+
+/* |description|
+Converts the floating-point matrix `src` into a fixed-point (integer-based) matrix suitable for the `Mtx` format, and stores the result in `dest`.
+|descriptionEnd| */
void mtxf_to_mtx(Mtx *dest, Mat4 src);
+
+/* |description|
+Rotates the matrix `mtx` in the XY plane by the given `angle`. Rotating in the XY plane typically means pivoting around the Z axis.
+|descriptionEnd| */
void mtxf_rotate_xy(Mtx *mtx, s16 angle);
+
+/* |description|
+Inverts the 4x4 floating-point matrix `src` and stores the inverse in `dest`. Applying the inverse transformation undoes whatever `src` did, returning points back to their original coordinate space.
+|descriptionEnd| */
void mtxf_inverse(Mat4 dest, Mat4 src);
+
+/* |description|
+Extracts the position (translation component) from the transformation matrix `objMtx` relative to the coordinate system defined by `camMtx` and stores that 3D position in `dest`. This can be used to get the object's coordinates in camera space.
+|descriptionEnd| */
void get_pos_from_transform_mtx(Vec3f dest, Mat4 objMtx, Mat4 camMtx);
+
+/* |description|
+Calculates the distance between two points in 3D space (`from` and `to`), as well as the pitch and yaw angles that describe the direction from `from` to `to`. The results are stored in `dist`, `pitch`, and `yaw`.
+|descriptionEnd| */
void vec3f_get_dist_and_angle(Vec3f from, Vec3f to, f32 *dist, s16 *pitch, s16 *yaw);
+
+/* |description|
+Positions the point `to` at a given `dist`, `pitch`, and `yaw` relative to the point `from`. This can be used to place objects around a reference point at specific angles and distances.
+|descriptionEnd| */
void vec3f_set_dist_and_angle(Vec3f from, Vec3f to, f32 dist, s16 pitch, s16 yaw);
+
+/* |description|
+Gradually moves an integer `current` value toward a `target` value, increasing it by `inc` if it is too low, or decreasing it by `dec` if it is too high. This is often used for smooth transitions or animations.
+|descriptionEnd| */
s32 approach_s32(s32 current, s32 target, s32 inc, s32 dec);
+
+/* |description|
+Similar to `approach_s32`, but operates on floating-point numbers. It moves `current` toward `target` by increasing it by `inc` if below target, or decreasing it by `dec` if above target, creating a smooth interpolation.
+|descriptionEnd| */
f32 approach_f32(f32 current, f32 target, f32 inc, f32 dec);
+
+/* |description|
+Computes the arctangent of y/x and returns the angle as a signed 16-bit integer, typically representing a direction in the SM64 fixed-point angle format. This can be used to find an angle between x and y coordinates.
+|descriptionEnd| */
s16 atan2s(f32 y, f32 x);
+
+/* |description|
+Computes the arctangent of a/b and returns it as a floating-point angle in radians. This is the floating-point equivalent of `atan2s`, allowing more precise angle calculations.
+|descriptionEnd| */
f32 atan2f(f32 a, f32 b);
+
+/* |description|
+Computes spline interpolation weights for a given parameter `t` and stores these weights in `result`. This is used in spline-based animations to find intermediate positions between keyframes.
+|descriptionEnd| */
void spline_get_weights(struct MarioState* m, Vec4f result, f32 t, UNUSED s32 c);
+
+/* |description|
+Initializes a spline-based animation for the `MarioState` structure `m` using the provided array of 3D signed-integer vectors `keyFrames`. This sets up the animation so that it can be advanced by polling.
+|descriptionEnd| */
void anim_spline_init(struct MarioState* m, Vec4s *keyFrames);
+
+/* |description|
+Advances the spline-based animation associated with `m` and stores the current interpolated position in `result`. It returns the animation's status, allowing the caller to determine if the animation is ongoing or has completed.
+|descriptionEnd| */
s32 anim_spline_poll(struct MarioState* m, Vec3f result);
+/* |description|
+Checks if `value` is zero. If not, it returns `value`. If it is zero, it returns the `replacement` value. This function ensures that a zero value can be substituted with a fallback value if needed.
+|descriptionEnd| */
f32 not_zero(f32 value, f32 replacement);
+/* |description|
+Projects the 3D floating-point vector `vec` onto another 3D floating-point vector `onto`. The resulting projection, stored in `out`, represents how much of `vec` lies along the direction of `onto`.
+|descriptionEnd| */
void vec3f_project(Vec3f vec, Vec3f onto, Vec3f out);
+
+/* |description|
+Calculates the distance between two 3D floating-point points `v1` and `v2`. The distance is the length of the vector `v2 - v1`, i.e., sqrt((v2.x - v1.x)² + (v2.y - v1.y)² + (v2.z - v1.z)²).
+|descriptionEnd| */
f32 vec3f_dist(Vec3f v1, Vec3f v2);
#endif // MATH_UTIL_H
+
diff --git a/src/pc/lua/utils/smlua_math_utils.h b/src/pc/lua/utils/smlua_math_utils.h
index 4ca6ce30c..b95c6cb5c 100644
--- a/src/pc/lua/utils/smlua_math_utils.h
+++ b/src/pc/lua/utils/smlua_math_utils.h
@@ -14,22 +14,45 @@
#endif
// these are also defined in math_util.h as macros
+
+/* |description|Finds the minimum of two signed 32-bit integers|descriptionEnd| */
s32 min(s32 a, s32 b);
+
+/* |description|Finds the maximum of two signed 32-bit integers|descriptionEnd| */
s32 max(s32 a, s32 b);
+
+/* |description|Computes the square of a signed 32-bit integer|descriptionEnd| */
s32 sqr(s32 x);
+/* |description|Finds the minimum of two floating-point numbers|descriptionEnd| */
f32 minf(f32 a, f32 b);
+
+/* |description|Finds the maximum of two floating-point numbers|descriptionEnd| */
f32 maxf(f32 a, f32 b);
+
+/* |description|Computes the square of a floating-point number|descriptionEnd| */
f32 sqrf(f32 x);
+
+/* |description|Converts an angle from SM64 format to radians|descriptionEnd| */
f32 sm64_to_radians(s16 sm64Angle);
+
+/* |description|Converts an angle from radians to SM64 format|descriptionEnd| */
s16 radians_to_sm64(f32 radiansAngle);
+
+/* |description|Converts an angle from SM64 format to degrees|descriptionEnd| */
f32 sm64_to_degrees(s16 sm64Angle);
+
+/* |description|Converts an angle from degrees to SM64 format|descriptionEnd| */
s16 degrees_to_sm64(f32 degreesAngle);
+
+/* |description|Computes the hypotenuse of a right triangle given sides `a` and `b` using the Pythagorean theorem|descriptionEnd| */
f32 hypotf(f32 a, f32 b);
+
+/* |description|Clamps a signed 32-bit integer `a` between bounds `b` (minimum) and `c` (maximum)|descriptionEnd| */
s32 clamp(s32 a, s32 b, s32 c);
+
+/* |description|Clamps a floating-point number `a` between bounds `b` (minimum) and `c` (maximum)|descriptionEnd| */
f32 clampf(f32 a, f32 b, f32 c);
-
-
#endif // SMLUA_MATH_UTILS_H