- Only inited `smlua_audio_utils` if needed, since there will probably be plenty of people who play without ever using mods with custom audio. - Fixed the pause anywhere setting - this ended up not being fully accurate to ex-coop, which it was originally intended to be. - Stopped regenerating dynos collision bin on start up every time therefore giving a slight start up speed boost for some people. - Added a config file setting that lets people choose to compress dynos bins on startup (disabled by default). - Fixed a warning that shows on non macs during compiling. - Properly fixed the chat box focus. - Made the public lobby rules panel "temporary". - Added a cleaner loading screen design. - Added an ex-coop theme easter egg, can only be activated from the config file. - Cleaned up the Lua traceback logging, now shows the folder and file the error occurred in, rather than the full path. - Added a way to set `gCheckingSurfaceCollisionsForCamera`, so mods can specify to surface finding functions to ignore `SURFACE_FLAG_NO_CAM_COLLISION` internally. - Rewrote the way smlua pushes CObjects/CPointers to Lua. Now using the C Lua API entirely to connect to Lua. - Fixed a use-after-free bug that could easily crash the game through Lua (explained further in one of my comments below). - Fixed a common crash in `audio_sanity_check`.
128 KiB
⏪ Lua Reference
Supported Functions
- manually written functions
- define_custom_obj_fields
- network_init_object
- network_send_object
- network_send_to
- network_send
- get_texture_info
- djui_hud_render_texture
- djui_hud_render_texture_tile
- djui_hud_render_texture_interpolated
- djui_hud_render_texture_tile_interpolated
- texture_override_set
- texture_override_reset
- smlua_anim_util_register_animation
- level_script_parse
- log_to_console
- add_scroll_target
- collision_find_surface_on_ray
- behavior_actions.h
- arc_to_goal_pos
- bhv_1up_common_init
- bhv_1up_hidden_in_pole_loop
- bhv_1up_hidden_in_pole_spawner_loop
- bhv_1up_hidden_in_pole_trigger_loop
- bhv_1up_hidden_loop
- bhv_1up_hidden_trigger_loop
- bhv_1up_init
- bhv_1up_jump_on_approach_loop
- bhv_1up_loop
- bhv_1up_running_away_loop
- bhv_1up_sliding_loop
- bhv_1up_trigger_init
- bhv_1up_walking_loop
- bhv_act_selector_init
- bhv_act_selector_loop
- bhv_act_selector_star_type_loop
- bhv_activated_back_and_forth_platform_init
- bhv_activated_back_and_forth_platform_update
- bhv_alpha_boo_key_loop
- bhv_ambient_sounds_init
- bhv_animated_texture_loop
- bhv_animates_on_floor_switch_press_init
- bhv_animates_on_floor_switch_press_loop
- bhv_arrow_lift_loop
- bhv_bbh_tilting_trap_platform_loop
- bhv_beta_boo_key_loop
- bhv_beta_bowser_anchor_loop
- bhv_beta_chest_bottom_init
- bhv_beta_chest_bottom_loop
- bhv_beta_chest_lid_loop
- bhv_beta_fish_splash_spawner_loop
- bhv_beta_holdable_object_init
- bhv_beta_holdable_object_loop
- bhv_beta_moving_flames_loop
- bhv_beta_moving_flames_spawn_loop
- bhv_beta_trampoline_spring_loop
- bhv_beta_trampoline_top_loop
- bhv_big_boo_loop
- bhv_big_boulder_generator_loop
- bhv_big_boulder_init
- bhv_big_boulder_loop
- bhv_big_bully_init
- bhv_big_bully_with_minions_init
- bhv_big_bully_with_minions_loop
- bhv_bird_update
- bhv_birds_sound_loop
- bhv_bitfs_sinking_cage_platform_loop
- bhv_bitfs_sinking_platform_loop
- bhv_black_smoke_bowser_loop
- bhv_black_smoke_mario_loop
- bhv_black_smoke_upward_loop
- bhv_blue_bowser_flame_init
- bhv_blue_bowser_flame_loop
- bhv_blue_coin_jumping_loop
- bhv_blue_coin_number_loop
- bhv_blue_coin_sliding_jumping_init
- bhv_blue_coin_sliding_loop
- bhv_blue_coin_switch_init
- bhv_blue_coin_switch_loop
- bhv_blue_fish_movement_loop
- bhv_blue_flames_group_loop
- bhv_bob_pit_bowling_ball_init
- bhv_bob_pit_bowling_ball_loop
- bhv_bobomb_anchor_mario_loop
- bhv_bobomb_buddy_init
- bhv_bobomb_buddy_loop
- bhv_bobomb_bully_death_smoke_init
- bhv_bobomb_explosion_bubble_init
- bhv_bobomb_explosion_bubble_loop
- bhv_bobomb_fuse_smoke_init
- bhv_bobomb_init
- bhv_bobomb_loop
- bhv_boo_boss_spawned_bridge_loop
- bhv_boo_cage_init
- bhv_boo_cage_loop
- bhv_boo_in_castle_loop
- bhv_boo_init
- bhv_boo_loop
- bhv_boo_with_cage_init
- bhv_boo_with_cage_loop
- bhv_book_switch_loop
- bhv_bookend_spawn_loop
- bhv_bouncing_fireball_flame_loop
- bhv_bouncing_fireball_loop
- bhv_bowling_ball_init
- bhv_bowling_ball_loop
- bhv_bowser_body_anchor_init
- bhv_bowser_body_anchor_loop
- bhv_bowser_bomb_explosion_loop
- bhv_bowser_bomb_loop
- bhv_bowser_bomb_smoke_loop
- bhv_bowser_course_red_coin_star_loop
- bhv_bowser_flame_spawn_loop
- bhv_bowser_init
- bhv_bowser_key_course_exit_loop
- bhv_bowser_key_init
- bhv_bowser_key_loop
- bhv_bowser_key_unlock_door_loop
- bhv_bowser_loop
- bhv_bowser_shock_wave_loop
- bhv_bowser_tail_anchor_init
- bhv_bowser_tail_anchor_loop
- bhv_bowsers_sub_loop
- bhv_breakable_box_loop
- bhv_breakable_box_small_init
- bhv_breakable_box_small_loop
- bhv_bub_loop
- bhv_bub_spawner_loop
- bhv_bubba_loop
- bhv_bubble_cannon_barrel_loop
- bhv_bubble_maybe_loop
- bhv_bubble_player_loop
- bhv_bubble_splash_init
- bhv_bubble_wave_init
- bhv_bullet_bill_init
- bhv_bullet_bill_loop
- bhv_bully_loop
- bhv_butterfly_init
- bhv_butterfly_loop
- bhv_camera_lakitu_init
- bhv_camera_lakitu_update
- bhv_cannon_barrel_loop
- bhv_cannon_base_loop
- bhv_cannon_base_unused_loop
- bhv_cannon_closed_init
- bhv_cannon_closed_loop
- bhv_cap_switch_loop
- bhv_castle_cannon_grate_init
- bhv_castle_flag_init
- bhv_castle_floor_trap_init
- bhv_castle_floor_trap_loop
- bhv_ccm_touched_star_spawn_loop
- bhv_celebration_star_init
- bhv_celebration_star_loop
- bhv_celebration_star_sparkle_loop
- bhv_chain_chomp_chain_part_update
- bhv_chain_chomp_gate_init
- bhv_chain_chomp_gate_update
- bhv_chain_chomp_update
- bhv_checkerboard_elevator_group_init
- bhv_checkerboard_elevator_group_loop
- bhv_checkerboard_platform_init
- bhv_checkerboard_platform_loop
- bhv_chuckya_anchor_mario_loop
- bhv_chuckya_loop
- bhv_circling_amp_init
- bhv_circling_amp_loop
- bhv_clam_loop
- bhv_cloud_part_update
- bhv_cloud_update
- bhv_coffin_loop
- bhv_coffin_spawner_loop
- bhv_coin_formation_init
- bhv_coin_formation_loop
- bhv_coin_formation_spawn_loop
- bhv_coin_init
- bhv_coin_inside_boo_loop
- bhv_coin_loop
- bhv_coin_sparkles_loop
- bhv_collect_star_init
- bhv_collect_star_loop
- bhv_controllable_platform_init
- bhv_controllable_platform_loop
- bhv_controllable_platform_sub_loop
- bhv_courtyard_boo_triplet_init
- bhv_ddd_moving_pole_loop
- bhv_ddd_pole_init
- bhv_ddd_pole_update
- bhv_ddd_warp_loop
- bhv_decorative_pendulum_init
- bhv_decorative_pendulum_loop
- bhv_donut_platform_spawner_update
- bhv_donut_platform_update
- bhv_door_init
- bhv_door_loop
- bhv_dorrie_update
- bhv_elevator_init
- bhv_elevator_loop
- bhv_end_birds_1_loop
- bhv_end_birds_2_loop
- bhv_enemy_lakitu_update
- bhv_exclamation_box_init
- bhv_exclamation_box_loop
- bhv_explosion_init
- bhv_explosion_loop
- bhv_eyerok_boss_init
- bhv_eyerok_boss_loop
- bhv_eyerok_hand_loop
- bhv_fading_warp_loop
- bhv_falling_bowser_platform_loop
- bhv_falling_pillar_hitbox_loop
- bhv_falling_pillar_init
- bhv_falling_pillar_loop
- bhv_ferris_wheel_axle_init
- bhv_ferris_wheel_platform_init
- bhv_ferris_wheel_platform_update
- bhv_fire_piranha_plant_init
- bhv_fire_piranha_plant_update
- bhv_fire_spitter_update
- bhv_fish_group_loop
- bhv_fish_loop
- bhv_fish_spawner_loop
- bhv_flame_bouncing_init
- bhv_flame_bouncing_loop
- bhv_flame_bowser_init
- bhv_flame_bowser_loop
- bhv_flame_floating_landing_init
- bhv_flame_floating_landing_loop
- bhv_flame_large_burning_out_init
- bhv_flame_mario_loop
- bhv_flame_moving_forward_growing_init
- bhv_flame_moving_forward_growing_loop
- bhv_flamethrower_flame_loop
- bhv_flamethrower_loop
- bhv_floating_platform_loop
- bhv_floor_trap_in_castle_loop
- bhv_fly_guy_flame_loop
- bhv_fly_guy_update
- bhv_flying_bookend_loop
- bhv_free_bowling_ball_init
- bhv_free_bowling_ball_loop
- bhv_generic_bowling_ball_spawner_init
- bhv_generic_bowling_ball_spawner_loop
- bhv_giant_pole_loop
- bhv_golden_coin_sparkles_loop
- bhv_goomba_init
- bhv_goomba_triplet_spawner_update
- bhv_goomba_update
- bhv_grand_star_init
- bhv_grand_star_loop
- bhv_grindel_thwomp_loop
- bhv_ground_sand_init
- bhv_ground_snow_init
- bhv_haunted_bookshelf_loop
- bhv_haunted_bookshelf_manager_loop
- bhv_haunted_chair_init
- bhv_haunted_chair_loop
- bhv_heave_ho_loop
- bhv_heave_ho_throw_mario_loop
- bhv_hidden_blue_coin_loop
- bhv_hidden_object_loop
- bhv_hidden_red_coin_star_init
- bhv_hidden_red_coin_star_loop
- bhv_hidden_star_init
- bhv_hidden_star_loop
- bhv_hidden_star_trigger_loop
- bhv_homing_amp_init
- bhv_homing_amp_loop
- bhv_hoot_init
- bhv_hoot_loop
- bhv_horizontal_grindel_init
- bhv_horizontal_grindel_update
- bhv_idle_water_wave_loop
- bhv_init_changing_water_level_loop
- bhv_intro_lakitu_loop
- bhv_intro_peach_loop
- bhv_intro_scene_loop
- bhv_invisible_objects_under_bridge_init
- bhv_invisible_objects_under_bridge_loop
- bhv_jet_stream_loop
- bhv_jet_stream_ring_spawner_loop
- bhv_jet_stream_water_ring_init
- bhv_jet_stream_water_ring_loop
- bhv_jrb_floating_box_loop
- bhv_jrb_sliding_box_loop
- bhv_jumping_box_loop
- bhv_kickable_board_loop
- bhv_king_bobomb_loop
- bhv_klepto_init
- bhv_klepto_update
- bhv_koopa_init
- bhv_koopa_race_endpoint_update
- bhv_koopa_shell_flame_loop
- bhv_koopa_shell_loop
- bhv_koopa_shell_underwater_loop
- bhv_koopa_update
- bhv_large_bomp_init
- bhv_large_bomp_loop
- bhv_lll_bowser_puzzle_loop
- bhv_lll_bowser_puzzle_piece_loop
- bhv_lll_drawbridge_loop
- bhv_lll_drawbridge_spawner_init
- bhv_lll_drawbridge_spawner_loop
- bhv_lll_floating_wood_bridge_loop
- bhv_lll_moving_octagonal_mesh_platform_loop
- bhv_lll_rolling_log_init
- bhv_lll_rotating_block_fire_bars_loop
- bhv_lll_rotating_hex_flame_loop
- bhv_lll_rotating_hexagonal_ring_loop
- bhv_lll_sinking_rectangular_platform_loop
- bhv_lll_sinking_rock_block_loop
- bhv_lll_sinking_square_platforms_loop
- bhv_lll_wood_piece_loop
- bhv_mad_piano_update
- bhv_manta_ray_init
- bhv_manta_ray_loop
- bhv_manta_ray_water_ring_init
- bhv_manta_ray_water_ring_loop
- bhv_menu_button_init
- bhv_menu_button_loop
- bhv_menu_button_manager_init
- bhv_menu_button_manager_loop
- bhv_merry_go_round_boo_manager_loop
- bhv_merry_go_round_loop
- bhv_metal_cap_init
- bhv_metal_cap_loop
- bhv_mips_init
- bhv_mips_loop
- bhv_moat_grills_loop
- bhv_moneybag_hidden_loop
- bhv_moneybag_init
- bhv_moneybag_loop
- bhv_monty_mole_hole_update
- bhv_monty_mole_init
- bhv_monty_mole_rock_update
- bhv_monty_mole_update
- bhv_moving_blue_coin_init
- bhv_moving_blue_coin_loop
- bhv_moving_yellow_coin_init
- bhv_moving_yellow_coin_loop
- bhv_mr_blizzard_init
- bhv_mr_blizzard_snowball
- bhv_mr_blizzard_update
- bhv_mr_i_body_loop
- bhv_mr_i_loop
- bhv_mr_i_particle_loop
- bhv_normal_cap_init
- bhv_normal_cap_loop
- bhv_object_bubble_init
- bhv_object_bubble_loop
- bhv_object_water_wave_init
- bhv_object_water_wave_loop
- bhv_openable_cage_door_loop
- bhv_openable_grill_loop
- bhv_orange_number_init
- bhv_orange_number_loop
- bhv_particle_init
- bhv_particle_loop
- bhv_penguin_race_finish_line_update
- bhv_penguin_race_shortcut_check_update
- bhv_piranha_particle_loop
- bhv_piranha_plant_bubble_loop
- bhv_piranha_plant_loop
- bhv_piranha_plant_waking_bubbles_loop
- bhv_platform_normals_init
- bhv_platform_on_track_init
- bhv_platform_on_track_update
- bhv_play_music_track_when_touched_loop
- bhv_pokey_body_part_update
- bhv_pokey_update
- bhv_pole_base_loop
- bhv_pole_init
- bhv_pound_tiny_star_particle_init
- bhv_pound_tiny_star_particle_loop
- bhv_pound_white_puffs_init
- bhv_punch_tiny_triangle_init
- bhv_punch_tiny_triangle_loop
- bhv_purple_switch_loop
- bhv_pushable_loop
- bhv_pyramid_elevator_init
- bhv_pyramid_elevator_loop
- bhv_pyramid_elevator_trajectory_marker_ball_loop
- bhv_pyramid_pillar_touch_detector_loop
- bhv_pyramid_top_fragment_init
- bhv_pyramid_top_fragment_loop
- bhv_pyramid_top_init
- bhv_pyramid_top_loop
- bhv_racing_penguin_init
- bhv_racing_penguin_update
- bhv_recovery_heart_loop
- bhv_red_coin_init
- bhv_red_coin_loop
- bhv_red_coin_star_marker_init
- bhv_respawner_loop
- bhv_rolling_log_loop
- bhv_rotating_clock_arm_loop
- bhv_rotating_exclamation_box_loop
- bhv_rotating_octagonal_plat_init
- bhv_rotating_octagonal_plat_loop
- bhv_rotating_platform_loop
- bhv_rr_cruiser_wing_init
- bhv_rr_cruiser_wing_loop
- bhv_rr_rotating_bridge_platform_loop
- bhv_sand_sound_loop
- bhv_scuttlebug_loop
- bhv_scuttlebug_spawn_loop
- bhv_seaweed_bundle_init
- bhv_seaweed_init
- bhv_seesaw_platform_init
- bhv_seesaw_platform_update
- bhv_shallow_water_splash_init
- bhv_ship_part_3_loop
- bhv_skeeter_update
- bhv_skeeter_wave_update
- bhv_sl_snowman_wind_loop
- bhv_sl_walking_penguin_loop
- bhv_sliding_plat_2_init
- bhv_sliding_plat_2_loop
- bhv_sliding_snow_mound_loop
- bhv_small_bomp_init
- bhv_small_bomp_loop
- bhv_small_bubbles_loop
- bhv_small_bully_init
- bhv_small_penguin_loop
- bhv_small_piranha_flame_loop
- bhv_small_water_wave_loop
- bhv_snow_leaf_particle_spawn_init
- bhv_snow_mound_spawn_loop
- bhv_snowmans_body_checkpoint_loop
- bhv_snowmans_bottom_init
- bhv_snowmans_bottom_loop
- bhv_snowmans_head_init
- bhv_snowmans_head_loop
- bhv_snufit_balls_loop
- bhv_snufit_loop
- bhv_sound_spawner_init
- bhv_sparkle_spawn_loop
- bhv_spawn_star_no_level_exit
- bhv_spawned_star_init
- bhv_spawned_star_loop
- bhv_spindel_init
- bhv_spindel_loop
- bhv_spindrift_loop
- bhv_spiny_update
- bhv_squarish_path_moving_loop
- bhv_squarish_path_parent_init
- bhv_squarish_path_parent_loop
- bhv_squishable_platform_loop
- bhv_ssl_moving_pyramid_wall_init
- bhv_ssl_moving_pyramid_wall_loop
- bhv_star_door_loop
- bhv_star_door_loop_2
- bhv_star_key_collection_puff_spawner_loop
- bhv_star_number_loop
- bhv_star_spawn_init
- bhv_star_spawn_loop
- bhv_static_checkered_platform_loop
- bhv_strong_wind_particle_loop
- bhv_sunken_ship_part_loop
- bhv_sushi_shark_collision_loop
- bhv_sushi_shark_loop
- bhv_swing_platform_init
- bhv_swing_platform_update
- bhv_swoop_update
- bhv_tank_fish_group_loop
- bhv_temp_coin_loop
- bhv_thi_bowling_ball_spawner_loop
- bhv_thi_huge_island_top_loop
- bhv_thi_tiny_island_top_loop
- bhv_tilting_bowser_lava_platform_init
- bhv_tilting_inverted_pyramid_loop
- bhv_tiny_star_particles_init
- bhv_tower_door_loop
- bhv_tower_platform_group_init
- bhv_tower_platform_group_loop
- bhv_tox_box_loop
- bhv_track_ball_update
- bhv_treasure_chest_bottom_init
- bhv_treasure_chest_bottom_loop
- bhv_treasure_chest_init
- bhv_treasure_chest_jrb_init
- bhv_treasure_chest_jrb_loop
- bhv_treasure_chest_loop
- bhv_treasure_chest_ship_init
- bhv_treasure_chest_ship_loop
- bhv_treasure_chest_top_loop
- bhv_tree_snow_or_leaf_loop
- bhv_triplet_butterfly_update
- bhv_ttc_2d_rotator_init
- bhv_ttc_2d_rotator_update
- bhv_ttc_cog_init
- bhv_ttc_cog_update
- bhv_ttc_elevator_init
- bhv_ttc_elevator_update
- bhv_ttc_moving_bar_init
- bhv_ttc_moving_bar_update
- bhv_ttc_pendulum_init
- bhv_ttc_pendulum_update
- bhv_ttc_pit_block_init
- bhv_ttc_pit_block_update
- bhv_ttc_rotating_solid_init
- bhv_ttc_rotating_solid_update
- bhv_ttc_spinner_update
- bhv_ttc_treadmill_init
- bhv_ttc_treadmill_update
- bhv_ttm_rolling_log_init
- bhv_tumbling_bridge_loop
- bhv_tumbling_bridge_platform_loop
- bhv_tuxies_mother_loop
- bhv_tweester_loop
- bhv_tweester_sand_particle_loop
- bhv_ukiki_cage_loop
- bhv_ukiki_cage_star_loop
- bhv_ukiki_init
- bhv_ukiki_loop
- bhv_unagi_init
- bhv_unagi_loop
- bhv_unagi_subobject_loop
- bhv_unused_particle_spawn_loop
- bhv_unused_poundable_platform
- bhv_vanish_cap_init
- bhv_volcano_flames_loop
- bhv_volcano_sound_loop
- bhv_volcano_trap_loop
- bhv_wall_tiny_star_particle_loop
- bhv_warp_loop
- bhv_water_air_bubble_init
- bhv_water_air_bubble_loop
- bhv_water_bomb_cannon_loop
- bhv_water_bomb_shadow_update
- bhv_water_bomb_spawner_update
- bhv_water_bomb_update
- bhv_water_droplet_loop
- bhv_water_droplet_splash_init
- bhv_water_level_diamond_loop
- bhv_water_level_pillar_init
- bhv_water_level_pillar_loop
- bhv_water_mist_2_loop
- bhv_water_mist_loop
- bhv_water_mist_spawn_loop
- bhv_water_splash_spawn_droplets
- bhv_water_waves_init
- bhv_waterfall_sound_loop
- bhv_wave_trail_shrink
- bhv_wdw_express_elevator_loop
- bhv_wf_breakable_wall_loop
- bhv_wf_elevator_tower_platform_loop
- bhv_wf_rotating_wooden_platform_init
- bhv_wf_rotating_wooden_platform_loop
- bhv_wf_sliding_platform_init
- bhv_wf_sliding_platform_loop
- bhv_wf_sliding_tower_platform_loop
- bhv_wf_solid_tower_platform_loop
- bhv_whirlpool_init
- bhv_whirlpool_loop
- bhv_white_puff_1_loop
- bhv_white_puff_2_loop
- bhv_white_puff_exploding_loop
- bhv_white_puff_smoke_init
- bhv_whomp_loop
- bhv_wiggler_body_part_update
- bhv_wiggler_update
- bhv_wind_loop
- bhv_wing_cap_init
- bhv_wing_vanish_cap_loop
- bhv_wooden_post_update
- bhv_yellow_coin_init
- bhv_yellow_coin_loop
- bhv_yoshi_init
- bhv_yoshi_loop
- check_if_moving_over_floor
- clear_particle_flags
- common_anchor_mario_behavior
- cur_obj_spawn_strong_wind_particles
- mario_moving_fast_enough_to_make_piranha_plant_bite
- obj_set_secondary_camera_focus
- play_penguin_walking_sound
- spawn_default_star
- spawn_mist_from_global
- spawn_mist_particles_variable
- spawn_no_exit_star
- spawn_red_coin_cutscene_star
- spawn_star_number
- spawn_triangle_break_particles
- spawn_wind_particles
- tox_box_move
- update_angle_from_move_flags
- uv_update_scroll
- vec3f_copy_2
- behavior_script.h
- behavior_table.h
- camera.h
- approach_camera_height
- approach_f32_asymptotic
- approach_f32_asymptotic_bool
- approach_s16_asymptotic
- approach_s16_asymptotic_bool
- approach_vec3f_asymptotic
- calc_abs_dist
- calc_hor_dist
- calculate_angles
- calculate_pitch
- calculate_yaw
- cam_select_alt_mode
- camera_approach_f32_symmetric
- camera_approach_f32_symmetric_bool
- camera_approach_s16_symmetric_bool
- camera_course_processing
- camera_set_use_course_specific_settings
- center_rom_hack_camera
- clamp_pitch
- clamp_positions_and_find_yaw
- collide_with_walls
- cutscene_object
- cutscene_object_with_dialog
- cutscene_object_without_dialog
- cutscene_set_fov_shake_preset
- cutscene_spawn_obj
- find_c_buttons_pressed
- find_mario_floor_and_ceil
- get_cutscene_from_mario_status
- handle_c_button_movement
- is_range_behind_surface
- is_within_100_units_of_mario
- move_mario_head_c_up
- next_lakitu_state
- obj_rotate_towards_point
- object_pos_to_vec3f
- offset_rotated
- offset_yaw_outward_radial
- play_camera_buzz_if_c_sideways
- play_camera_buzz_if_cbutton
- play_camera_buzz_if_cdown
- play_cutscene
- play_sound_button_change_blocked
- play_sound_cbutton_down
- play_sound_cbutton_side
- play_sound_cbutton_up
- play_sound_if_cam_switched_to_lakitu_or_mario
- play_sound_rbutton_changed
- radial_camera_input
- random_vec3s
- reset_camera
- resolve_geometry_collisions
- rom_hack_cam_set_collisions
- rotate_camera_around_walls
- rotate_in_xz
- rotate_in_yz
- scale_along_line
- select_mario_cam_mode
- set_cam_angle
- set_camera_mode
- set_camera_mode_fixed
- set_camera_pitch_shake
- set_camera_roll_shake
- set_camera_shake_from_hit
- set_camera_shake_from_point
- set_camera_yaw_shake
- set_environmental_camera_shake
- set_fixed_cam_axis_sa_lobby
- set_fov_function
- set_fov_shake
- set_fov_shake_from_point_preset
- set_handheld_shake
- set_or_approach_f32_asymptotic
- set_or_approach_s16_symmetric
- set_or_approach_vec3f_asymptotic
- set_pitch_shake_from_point
- shake_camera_handheld
- shake_camera_pitch
- shake_camera_roll
- shake_camera_yaw
- skip_camera_interpolation
- soft_reset_camera
- start_cutscene
- start_object_cutscene_without_focus
- transition_next_state
- trigger_cutscene_dialog
- vec3f_sub
- vec3f_to_object_pos
- warp_camera
- characters.h
- djui_chat_message.h
- djui_console.h
- djui_hud_utils.h
- djui_hud_get_color
- djui_hud_get_filter
- djui_hud_get_font
- djui_hud_get_mouse_x
- djui_hud_get_mouse_y
- djui_hud_get_raw_mouse_x
- djui_hud_get_raw_mouse_y
- djui_hud_get_resolution
- djui_hud_get_rotation
- djui_hud_get_screen_height
- djui_hud_get_screen_width
- djui_hud_is_pause_menu_created
- djui_hud_measure_text
- djui_hud_print_text
- djui_hud_print_text_interpolated
- djui_hud_render_rect
- djui_hud_render_rect_interpolated
- djui_hud_reset_color
- djui_hud_set_color
- djui_hud_set_filter
- djui_hud_set_font
- djui_hud_set_mouse_locked
- djui_hud_set_resolution
- djui_hud_set_rotation
- djui_hud_set_rotation_interpolated
- djui_hud_world_pos_to_screen_pos
- djui_open_pause_menu
- djui_popup.h
- external.h
- drop_queued_background_music
- fade_volume_scale
- fadeout_background_music
- get_current_background_music
- get_current_background_music_default_volume
- get_current_background_music_max_target_volume
- get_current_background_music_target_volume
- is_current_background_music_volume_lowered
- play_course_clear
- play_dialog_sound
- play_music
- play_peachs_jingle
- play_power_star_jingle
- play_puzzle_jingle
- play_race_fanfare
- play_secondary_music
- play_sound
- play_sound_with_freq_scale
- play_star_fanfare
- play_toads_jingle
- seq_player_fade_out
- seq_player_lower_volume
- seq_player_unlower_volume
- set_audio_fadeout
- sound_banks_disable
- sound_banks_enable
- sound_get_level_intensity
- stop_background_music
- stop_secondary_music
- stop_sound
- stop_sounds_from_source
- stop_sounds_in_continuous_banks
- first_person_cam.h
- ingame_menu.h
- interaction.h
- determine_interaction
- does_mario_have_normal_cap_on_head
- get_door_save_file_flag
- get_mario_cap_flag
- interact_bbh_entrance
- interact_bounce_top
- interact_breakable
- interact_bully
- interact_cannon_base
- interact_cap
- interact_clam_or_bubba
- interact_coin
- interact_damage
- interact_door
- interact_flame
- interact_grabbable
- interact_hit_from_below
- interact_hoot
- interact_igloo_barrier
- interact_koopa_shell
- interact_mr_blizzard
- interact_player
- interact_pole
- interact_shock
- interact_snufit_bullet
- interact_spiny_walking
- interact_star_or_key
- interact_strong_wind
- interact_text
- interact_tornado
- interact_warp
- interact_warp_door
- interact_water_ring
- interact_whirlpool
- mario_blow_off_cap
- mario_check_object_grab
- mario_drop_held_object
- mario_get_collided_object
- mario_grab_used_object
- mario_lose_cap_to_enemy
- mario_obj_angle_to_object
- mario_retrieve_cap
- mario_stop_riding_and_holding
- mario_stop_riding_object
- mario_throw_held_object
- passes_pvp_interaction_checks
- should_push_or_pull_door
- take_damage_and_knock_back
- lag_compensation.h
- level_info.h
- level_script.h
- level_update.h
- mario.h
- adjust_sound_for_speed
- check_common_action_exits
- check_common_hold_action_exits
- drop_and_set_mario_action
- execute_mario_action
- find_floor_height_relative_polar
- find_floor_slope
- find_mario_anim_flags_and_translation
- force_idle_state
- hurt_and_set_mario_action
- init_single_mario
- is_anim_at_end
- is_anim_past_end
- is_anim_past_frame
- mario_can_bubble
- mario_facing_downhill
- mario_floor_is_slippery
- mario_floor_is_slope
- mario_floor_is_steep
- mario_get_floor_class
- mario_get_terrain_sound_addend
- mario_is_crouching
- mario_set_bubbled
- mario_set_forward_vel
- mario_update_wall
- play_mario_action_sound
- play_mario_heavy_landing_sound
- play_mario_heavy_landing_sound_once
- play_mario_jump_sound
- play_mario_landing_sound
- play_mario_landing_sound_once
- play_mario_sound
- play_sound_and_spawn_particles
- play_sound_if_no_flag
- resolve_and_return_wall_collisions
- resolve_and_return_wall_collisions_data
- return_mario_anim_y_translation
- set_anim_to_frame
- set_character_anim_with_accel
- set_character_animation
- set_jump_from_landing
- set_jumping_action
- set_mario_action
- set_mario_anim_with_accel
- set_mario_animation
- set_mario_particle_flags
- set_mario_y_vel_based_on_fspeed
- set_steep_jump_action
- set_water_plunge_action
- transition_submerged_to_walking
- update_mario_pos_for_anim
- update_mario_sound_and_camera
- mario_actions_airborne.c
- check_common_airborne_cancels
- check_fall_damage
- check_fall_damage_or_get_stuck
- check_horizontal_wind
- check_kick_or_dive_in_air
- check_wall_kick
- common_air_action_step
- common_air_knockback_step
- lava_boost_on_wall
- mario_execute_airborne_action
- play_far_fall_sound
- play_flip_sounds
- play_knockback_sound
- should_get_stuck_in_ground
- update_air_with_turn
- update_air_without_turn
- update_flying
- update_flying_pitch
- update_flying_yaw
- update_lava_boost_or_twirling
- mario_actions_automatic.c
- mario_actions_cutscene.c
- bhv_end_peach_loop
- bhv_end_toad_loop
- common_death_handler
- cutscene_put_cap_on
- cutscene_take_cap_off
- general_star_dance_handler
- generate_yellow_sparkles
- get_credits_str_width
- get_star_collection_dialog
- handle_save_menu
- launch_mario_until_land
- mario_execute_cutscene_action
- mario_ready_to_speak
- should_start_or_continue_dialog
- stuck_in_ground_handler
- mario_actions_moving.c
- align_with_floor
- analog_stick_held_back
- anim_and_audio_for_heavy_walk
- anim_and_audio_for_hold_walk
- anim_and_audio_for_walk
- apply_landing_accel
- apply_slope_accel
- apply_slope_decel
- begin_braking_action
- begin_walking_action
- check_common_moving_cancels
- check_ground_dive_or_punch
- check_ledge_climb_down
- common_ground_knockback_action
- common_landing_action
- common_slide_action
- common_slide_action_with_jump
- mario_execute_moving_action
- play_step_sound
- push_or_sidle_wall
- quicksand_jump_land_action
- set_triple_jump_action
- should_begin_sliding
- slide_bonk
- stomach_slide_action
- tilt_body_butt_slide
- tilt_body_ground_shell
- tilt_body_running
- tilt_body_walking
- update_decelerating_speed
- update_shell_speed
- update_sliding
- update_sliding_angle
- update_walking_speed
- mario_actions_object.c
- mario_actions_stationary.c
- mario_actions_submerged.c
- mario_misc.h
- mario_step.h
- math_util.h
- anim_spline_init
- anim_spline_poll
- approach_f32
- approach_s32
- find_vector_perpendicular_to_plane
- get_pos_from_transform_mtx
- mtxf_align_terrain_normal
- mtxf_align_terrain_triangle
- mtxf_billboard
- mtxf_copy
- mtxf_cylboard
- mtxf_identity
- mtxf_inverse
- mtxf_lookat
- mtxf_mul
- mtxf_mul_vec3s
- mtxf_rotate_xy
- mtxf_rotate_xyz_and_translate
- mtxf_rotate_zxy_and_translate
- mtxf_scale_vec3f
- mtxf_to_mtx
- mtxf_translate
- not_zero
- spline_get_weights
- vec3f_add
- vec3f_combine
- vec3f_copy
- vec3f_cross
- vec3f_dif
- vec3f_dist
- vec3f_dot
- vec3f_get_dist_and_angle
- vec3f_length
- vec3f_mul
- vec3f_normalize
- vec3f_project
- vec3f_rotate_zxy
- vec3f_set
- vec3f_set_dist_and_angle
- vec3f_sum
- vec3f_to_vec3s
- vec3s_add
- vec3s_copy
- vec3s_set
- vec3s_sum
- vec3s_to_vec3f
- misc.h
- mod_storage.h
- network_player.h
- get_network_player_from_area
- get_network_player_from_level
- get_network_player_smallest_global
- network_player_connected_count
- network_player_from_global_index
- network_player_is_override_palette_same
- network_player_reset_override_palette
- network_player_set_description
- network_player_set_override_palette_color
- network_utils.h
- obj_behaviors.c
- absf_2
- calc_new_obj_vel_and_pos_y
- calc_new_obj_vel_and_pos_y_underwater
- calc_obj_friction
- current_mario_room_check
- is_nearest_mario_state_to_object
- is_nearest_player_to_object
- is_other_player_active
- is_player_active
- is_player_in_local_area
- is_point_close_to_object
- is_point_within_radius_of_any_player
- is_point_within_radius_of_mario
- nearest_interacting_mario_state_to_object
- nearest_interacting_player_to_object
- nearest_mario_state_to_object
- nearest_player_to_object
- nearest_possible_mario_state_to_object
- obj_check_floor_death
- obj_check_if_facing_toward_angle
- obj_find_wall
- obj_find_wall_displacement
- obj_flicker_and_disappear
- obj_lava_death
- obj_move_xyz_using_fvel_and_yaw
- obj_orient_graph
- obj_return_and_displace_home
- obj_return_home_if_safe
- obj_spawn_yellow_coins
- obj_splash
- obj_update_pos_vel_xz
- object_step
- object_step_without_floor_orient
- set_object_visibility
- set_yoshi_as_not_dead
- spawn_orange_number
- turn_obj_away_from_steep_floor
- turn_obj_away_from_surface
- obj_behaviors_2.c
- approach_f32_ptr
- cur_obj_init_anim_and_check_if_end
- cur_obj_init_anim_check_frame
- cur_obj_init_anim_extend
- cur_obj_play_sound_at_anim_range
- cur_obj_set_anim_if_at_end
- cur_obj_spin_all_dimensions
- obj_act_knockback
- obj_act_squished
- obj_bounce_off_walls_edges_objects
- obj_check_attacks
- obj_compute_vel_from_move_pitch
- obj_die_if_above_lava_and_health_non_positive
- obj_die_if_health_non_positive
- obj_face_pitch_approach
- obj_face_roll_approach
- obj_face_yaw_approach
- obj_forward_vel_approach
- obj_get_pitch_from_vel
- obj_get_pitch_to_home
- obj_grow_then_shrink
- obj_handle_attacks
- obj_is_near_to_and_facing_mario
- obj_is_rendering_enabled
- obj_move_for_one_second
- obj_move_pitch_approach
- obj_random_fixed_turn
- obj_resolve_collisions_and_turn
- obj_resolve_object_collisions
- obj_roll_to_match_yaw_turn
- obj_rotate_yaw_and_bounce_off_walls
- obj_set_dist_from_home
- obj_set_knockback_action
- obj_set_squished_action
- obj_smooth_turn
- obj_spit_fire
- obj_turn_pitch_toward_mario
- obj_unused_die
- obj_update_blinking
- obj_update_standard_actions
- obj_y_vel_approach
- oscillate_toward
- platform_on_track_update_pos_or_spawn_ball
- random_linear_offset
- random_mod_offset
- treat_far_home_as_mario
- object_helpers.c
- abs_angle_diff
- apply_drag_to_value
- approach_f32_signed
- approach_f32_symmetric
- approach_s16_symmetric
- bhv_dust_smoke_loop
- bhv_init_room
- bit_shift_left
- chain_segment_init
- clear_move_flag
- clear_time_stop_flags
- count_objects_with_behavior
- count_unimportant_objects
- create_transformation_from_matrices
- cur_obj_abs_y_dist_to_home
- cur_obj_advance_looping_anim
- cur_obj_align_gfx_with_floor
- cur_obj_angle_to_home
- cur_obj_apply_drag_xz
- cur_obj_become_intangible
- cur_obj_become_tangible
- cur_obj_can_mario_activate_textbox
- cur_obj_can_mario_activate_textbox_2
- cur_obj_change_action
- cur_obj_check_anim_frame
- cur_obj_check_anim_frame_in_range
- cur_obj_check_frame_prior_current_frame
- cur_obj_check_grabbed_mario
- cur_obj_check_if_at_animation_end
- cur_obj_check_if_near_animation_end
- cur_obj_check_interacted
- cur_obj_clear_interact_status_flag
- cur_obj_compute_vel_xz
- cur_obj_count_objects_with_behavior
- cur_obj_detect_steep_floor
- cur_obj_disable
- cur_obj_disable_rendering
- cur_obj_disable_rendering_and_become_intangible
- cur_obj_dist_to_nearest_object_with_behavior
- cur_obj_enable_rendering
- cur_obj_enable_rendering_2
- cur_obj_enable_rendering_and_become_tangible
- cur_obj_enable_rendering_if_mario_in_room
- cur_obj_end_dialog
- cur_obj_extend_animation_if_at_end
- cur_obj_find_nearby_held_actor
- cur_obj_find_nearest_object_with_behavior
- cur_obj_find_nearest_pole
- cur_obj_follow_path
- cur_obj_forward_vel_approach_upward
- cur_obj_get_dropped
- cur_obj_get_thrown_or_placed
- cur_obj_has_behavior
- cur_obj_has_model
- cur_obj_hide
- cur_obj_hide_if_mario_far_away_y
- cur_obj_if_hit_wall_bounce_away
- cur_obj_init_animation
- cur_obj_init_animation_and_anim_frame
- cur_obj_init_animation_and_check_if_near_end
- cur_obj_init_animation_and_extend_if_at_end
- cur_obj_init_animation_with_accel_and_sound
- cur_obj_init_animation_with_sound
- cur_obj_is_any_player_on_platform
- cur_obj_is_mario_ground_pounding_platform
- cur_obj_is_mario_on_platform
- cur_obj_lateral_dist_from_mario_to_home
- cur_obj_lateral_dist_from_obj_to_home
- cur_obj_lateral_dist_to_home
- cur_obj_mario_far_away
- cur_obj_move_after_thrown_or_dropped
- cur_obj_move_standard
- cur_obj_move_up_and_down
- cur_obj_move_update_ground_air_flags
- cur_obj_move_update_underwater_flags
- cur_obj_move_using_fvel_and_gravity
- cur_obj_move_using_vel
- cur_obj_move_using_vel_and_gravity
- cur_obj_move_xz
- cur_obj_move_xz_using_fvel_and_yaw
- cur_obj_move_y
- cur_obj_move_y_and_get_water_level
- cur_obj_move_y_with_terminal_vel
- cur_obj_nearest_object_with_behavior
- cur_obj_outside_home_rectangle
- cur_obj_outside_home_square
- cur_obj_push_mario_away
- cur_obj_push_mario_away_from_cylinder
- cur_obj_reflect_move_angle_off_wall
- cur_obj_reset_timer_and_subaction
- cur_obj_resolve_wall_collisions
- cur_obj_reverse_animation
- cur_obj_rotate_face_angle_using_vel
- cur_obj_rotate_move_angle_using_vel
- cur_obj_rotate_yaw_toward
- cur_obj_scale
- cur_obj_scale_over_time
- cur_obj_set_behavior
- cur_obj_set_billboard_if_vanilla_cam
- cur_obj_set_face_angle_to_move_angle
- cur_obj_set_hitbox_and_die_if_attacked
- cur_obj_set_hitbox_radius_and_height
- cur_obj_set_home_once
- cur_obj_set_hurtbox_radius_and_height
- cur_obj_set_pos_relative
- cur_obj_set_pos_relative_to_parent
- cur_obj_set_pos_to_home
- cur_obj_set_pos_to_home_and_stop
- cur_obj_set_pos_to_home_with_debug
- cur_obj_set_pos_via_transform
- cur_obj_set_vel_from_mario_vel
- cur_obj_set_y_vel_and_animation
- cur_obj_shake_screen
- cur_obj_shake_y
- cur_obj_shake_y_until
- cur_obj_spawn_loot_blue_coin
- cur_obj_spawn_loot_coin_at_mario_pos
- cur_obj_spawn_particles
- cur_obj_spawn_star_at_y_offset
- cur_obj_start_cam_event
- cur_obj_unhide
- cur_obj_unrender_and_reset_state
- cur_obj_unused_init_on_floor
- cur_obj_unused_play_footstep_sound
- cur_obj_unused_resolve_wall_collisions
- cur_obj_update_floor
- cur_obj_update_floor_and_resolve_wall_collisions
- cur_obj_update_floor_and_walls
- cur_obj_update_floor_height
- cur_obj_update_floor_height_and_get_floor
- cur_obj_wait_then_blink
- cur_obj_was_attacked_or_ground_pounded
- cur_obj_within_12k_bounds
- disable_time_stop
- disable_time_stop_including_mario
- dist_between_object_and_point
- dist_between_objects
- enable_time_stop
- enable_time_stop_if_alone
- enable_time_stop_including_mario
- find_object_with_behavior
- find_unimportant_object
- geo_offset_klepto_debug
- get_object_list_from_behavior
- get_trajectory_length
- increment_velocity_toward_range
- is_item_in_array
- is_mario_moving_fast_or_in_air
- lateral_dist_between_objects
- linear_mtxf_mul_vec3f
- linear_mtxf_transpose_mul_vec3f
- mario_is_dive_sliding
- mario_is_in_air_action
- mario_is_within_rectangle
- mario_set_flag
- obj_angle_to_object
- obj_angle_to_point
- obj_apply_scale_to_matrix
- obj_apply_scale_to_transform
- obj_attack_collided_from_other_object
- obj_become_tangible
- obj_build_relative_transform
- obj_build_transform_from_pos_and_angle
- obj_build_transform_relative_to_parent
- obj_build_vel_from_transform
- obj_check_if_collided_with_object
- obj_copy_angle
- obj_copy_behavior_params
- obj_copy_graph_y_offset
- obj_copy_pos
- obj_copy_pos_and_angle
- obj_copy_scale
- obj_create_transform_from_self
- obj_explode_and_spawn_coins
- obj_has_behavior
- obj_init_animation
- obj_init_animation_with_accel_and_sound
- obj_init_animation_with_sound
- obj_is_hidden
- obj_mark_for_deletion
- obj_pitch_to_object
- obj_scale
- obj_scale_random
- obj_scale_xyz
- obj_set_angle
- obj_set_behavior
- obj_set_billboard
- obj_set_cylboard
- obj_set_face_angle
- obj_set_face_angle_to_move_angle
- obj_set_gfx_angle
- obj_set_gfx_pos
- obj_set_gfx_pos_at_obj_pos
- obj_set_gfx_pos_from_pos
- obj_set_gfx_scale
- obj_set_held_state
- obj_set_hitbox
- obj_set_hitbox_radius_and_height
- obj_set_hurtbox_radius_and_height
- obj_set_move_angle
- obj_set_parent_relative_pos
- obj_set_pos
- obj_set_pos_relative
- obj_set_throw_matrix_from_transform
- obj_spawn_loot_blue_coins
- obj_spawn_loot_coins
- obj_spawn_loot_yellow_coins
- obj_translate_local
- obj_translate_xyz_random
- obj_translate_xz_random
- obj_turn_toward_object
- obj_update_pos_from_parent_transformation
- player_performed_grab_escape_action
- random_f32_around_zero
- set_mario_interact_hoot_if_in_range
- set_time_stop_flags
- set_time_stop_flags_if_alone
- signum_positive
- spawn_base_star_with_no_lvl_exit
- spawn_mist_particles
- spawn_mist_particles_with_sound
- spawn_star_with_no_lvl_exit
- spawn_water_droplet
- stub_obj_helpers_3
- stub_obj_helpers_4
- object_list_processor.h
- rumble_init.c
- save_file.h
- save_file_clear_flags
- save_file_do_save
- save_file_erase
- save_file_erase_current_backup_save
- save_file_get_cap_pos
- save_file_get_course_coin_score
- save_file_get_course_star_count
- save_file_get_flags
- save_file_get_max_coin_score
- save_file_get_sound_mode
- save_file_get_star_flags
- save_file_get_total_star_count
- save_file_is_cannon_unlocked
- save_file_reload
- save_file_remove_star_flags
- save_file_set_course_coin_score
- save_file_set_flags
- save_file_set_star_flags
- touch_coin_score_age
- seqplayer.h
- smlua_anim_utils.h
- smlua_audio_utils.h
- audio_sample_destroy
- audio_sample_load
- audio_sample_play
- audio_sample_stop
- audio_stream_destroy
- audio_stream_get_frequency
- audio_stream_get_looping
- audio_stream_get_position
- audio_stream_get_volume
- audio_stream_load
- audio_stream_pause
- audio_stream_play
- audio_stream_set_frequency
- audio_stream_set_looping
- audio_stream_set_position
- audio_stream_set_volume
- audio_stream_stop
- smlua_audio_utils_replace_sequence
- smlua_audio_utils_reset_all
- smlua_camera_utils.h
- camera_allow_toxic_gas_camera
- camera_config_enable_analog_cam
- camera_config_enable_free_cam
- camera_config_enable_mouse_look
- camera_config_get_aggression
- camera_config_get_deceleration
- camera_config_get_pan_level
- camera_config_get_x_sensitivity
- camera_config_get_y_sensitivity
- camera_config_invert_x
- camera_config_invert_y
- camera_config_is_analog_cam_enabled
- camera_config_is_free_cam_enabled
- camera_config_is_mouse_look_enabled
- camera_config_is_x_inverted
- camera_config_is_y_inverted
- camera_config_set_aggression
- camera_config_set_deceleration
- camera_config_set_pan_level
- camera_config_set_x_sensitivity
- camera_config_set_y_sensitivity
- camera_freeze
- camera_get_checking_surfaces
- camera_is_frozen
- camera_reset_overrides
- camera_romhack_allow_centering
- camera_romhack_allow_dpad_usage
- camera_set_checking_surfaces
- camera_set_romhack_override
- camera_unfreeze
- smlua_collision_utils.h
- smlua_deprecated.h
- smlua_gfx_utils.h
- get_fog_color
- get_fog_intensity
- get_lighting_color
- get_lighting_color_ambient
- get_lighting_dir
- get_skybox
- get_skybox_color
- get_vertex_color
- set_fog_color
- set_fog_intensity
- set_lighting_color
- set_lighting_color_ambient
- set_lighting_dir
- set_override_far
- set_override_fov
- set_override_near
- set_override_skybox
- set_skybox_color
- set_vertex_color
- smlua_level_utils.h
- smlua_misc_utils.h
- allocate_mario_action
- course_is_main_course
- deref_s32_pointer
- djui_attempting_to_open_playerlist
- djui_is_playerlist_open
- djui_is_popup_disabled
- djui_menu_get_font
- djui_popup_create_global
- djui_reset_popup_disabled_override
- djui_set_popup_disabled_override
- get_current_save_file_num
- get_date_and_time
- get_dialog_box_state
- get_dialog_id
- get_dialog_response
- get_envfx
- get_environment_region
- get_global_timer
- get_got_file_coin_hi_score
- get_hand_foot_pos_x
- get_hand_foot_pos_y
- get_hand_foot_pos_z
- get_last_completed_course_num
- get_last_completed_star_num
- get_last_star_or_key
- get_local_discord_id
- get_network_area_timer
- get_os_name
- get_save_file_modified
- get_temp_s32_pointer
- get_time
- get_ttc_speed_setting
- get_volume_env
- get_volume_level
- get_volume_master
- get_volume_sfx
- get_water_level
- hud_get_flash
- hud_get_value
- hud_hide
- hud_is_hidden
- hud_render_power_meter
- hud_render_power_meter_interpolated
- hud_set_flash
- hud_set_value
- hud_show
- is_game_paused
- is_transition_playing
- movtexqc_register
- play_transition
- reset_window_title
- save_file_get_using_backup_slot
- save_file_set_using_backup_slot
- set_environment_region
- set_got_file_coin_hi_score
- set_last_completed_course_num
- set_last_completed_star_num
- set_last_star_or_key
- set_override_envfx
- set_save_file_modified
- set_ttc_speed_setting
- set_volume_env
- set_volume_level
- set_volume_master
- set_volume_sfx
- set_water_level
- set_window_title
- smlua_model_utils.h
- smlua_obj_utils.h
- get_temp_object_hitbox
- get_trajectory
- obj_check_hitbox_overlap
- obj_check_overlap_with_hitbox_params
- obj_count_objects_with_behavior_id
- obj_get_collided_object
- obj_get_field_f32
- obj_get_field_s16
- obj_get_field_s32
- obj_get_field_u32
- obj_get_first
- obj_get_first_with_behavior_id
- obj_get_first_with_behavior_id_and_field_f32
- obj_get_first_with_behavior_id_and_field_s32
- obj_get_nearest_object_with_behavior_id
- obj_get_next
- obj_get_next_with_same_behavior_id
- obj_get_next_with_same_behavior_id_and_field_f32
- obj_get_next_with_same_behavior_id_and_field_s32
- obj_get_temp_spawn_particles_info
- obj_has_behavior_id
- obj_has_model_extended
- obj_is_attackable
- obj_is_breakable_object
- obj_is_bully
- obj_is_coin
- obj_is_exclamation_box
- obj_is_grabbable
- obj_is_mushroom_1up
- obj_is_secret
- obj_is_valid_for_interaction
- obj_move_xyz
- obj_set_field_f32
- obj_set_field_s16
- obj_set_field_s32
- obj_set_field_u32
- obj_set_model_extended
- obj_set_vel
- set_whirlpools
- spawn_non_sync_object
- spawn_sync_object
- smlua_text_utils.h
- smlua_text_utils_act_name_get
- smlua_text_utils_act_name_mod_index
- smlua_text_utils_act_name_replace
- smlua_text_utils_act_name_reset
- smlua_text_utils_castle_secret_stars_replace
- smlua_text_utils_course_acts_replace
- smlua_text_utils_course_name_get
- smlua_text_utils_course_name_mod_index
- smlua_text_utils_course_name_replace
- smlua_text_utils_course_name_reset
- smlua_text_utils_dialog_replace
- smlua_text_utils_extra_text_replace
- smlua_text_utils_get_language
- smlua_text_utils_secret_star_replace
- sound_init.h
- disable_background_sound
- enable_background_sound
- fadeout_cap_music
- fadeout_level_music
- fadeout_music
- lower_background_noise
- play_cap_music
- play_cutscene_music
- play_infinite_stairs_music
- play_menu_sounds
- play_painting_eject_sound
- play_shell_music
- raise_background_noise
- reset_volume
- set_background_music
- stop_cap_music
- stop_shell_music
- spawn_sound.c
- surface_collision.h
- surface_load.h
manually written functions
define_custom_obj_fields
Defines a custom set of overlapping object fields.
The fieldTable
table's keys must start with the letter o
and the values must be either u32
, s32
, or f32
.
Lua Example
define_custom_obj_fields({ oCustomField1 = 'u32', oCustomField2 = 's32', oCustomField3 = 'f32' })
Parameters
Field | Type |
---|---|
fieldTable | Lua Table |
C Prototype
N/A
network_init_object
Enables synchronization on an object.
- Setting
standardSync
totrue
will automatically synchronize the object at a rate that is determined based on player distance. The commonly used object fields will be automatically synchronized. - Setting
standardSync
tofalse
will not automatically synchronize the object, or add commonly used object fields. The mod must manually callnetwork_send_object()
when fields have changed.
The fieldTable
parameter can be nil
, or a list of object fields.
Lua Example
network_init_object(obj, true, { 'oCustomField1', 'oCustomField2', 'oCustomField3' })
Parameters
Field | Type |
---|---|
object | Object |
standardSync | bool |
fieldTable | Lua Table |
C Prototype
N/A
network_send_object
Sends a packet that synchronizes an object. This does not need to be called when standardSync
is enabled.
The reliable
field will ensure that the packet arrives, but should be used sparingly and only when missing a packet would cause a desync.
Lua Example
network_send_object(obj, false)
Parameters
Field | Type |
---|---|
object | Object |
reliable | bool |
C Prototype
N/A
network_send_to
Sends a packet to a particular player (using their local index) containing whatever data you want.
dataTable
can only contain strings, integers, numbers, booleans, and nil
The reliable
field will ensure that the packet arrives, but should be used sparingly and only when missing a packet would cause a desync.
Lua Example
network_send_to(localPlayerIndex, reliable, { data1 = 'hello', data2 = 10})
Parameters
Field | Type |
---|---|
localPlayerIndex | integer |
reliable | bool |
dataTable | table |
C Prototype
N/A
network_send
Sends a packet to all players containing whatever data you want.
dataTable
can only contain strings, integers, numbers, booleans, and nil
The reliable
field will ensure that the packet arrives, but should be used sparingly and only when missing a packet would cause a desync.
Lua Example
network_send(reliable, { data1 = 'hello', data2 = 10})
Parameters
Field | Type |
---|---|
reliable | bool |
dataTable | table |
C Prototype
N/A
get_texture_info
Retrieves a texture by name.
Lua Example
get_texture_info(textureName)
Parameters
Field | Type |
---|---|
textureName | string |
Returns
C Prototype
N/A
djui_hud_render_texture
Renders a texture to the screen.
Lua Example
djui_hud_render_texture(texInfo, 0, 0, 1, 1)
Parameters
Field | Type |
---|---|
texInfo | TextureInfo |
x | number |
y | number |
scaleW | number |
scaleH | number |
Returns
- None
C Prototype
void djui_hud_render_texture(struct TextureInfo* texInfo, f32 x, f32 y, f32 scaleW, f32 scaleH);
djui_hud_render_texture_tile
Renders a tile of a texture to the screen.
Lua Example
djui_hud_render_texture_tile(texInfo, 0, 0, 1, 1, 0, 0, 16, 16)
Parameters
Field | Type |
---|---|
texInfo | TextureInfo |
x | number |
y | number |
scaleW | number |
scaleH | number |
tileX | number |
tileY | number |
tileW | number |
tileH | number |
Returns
- None
C Prototype
void djui_hud_render_texture_tile(struct TextureInfo* texInfo, f32 x, f32 y, f32 scaleW, f32 scaleH, u32 tileX, u32 tileY, u32 tileW, u32 tileH);
djui_hud_render_texture_tile_interpolated
Renders an interpolated tile of a texture to the screen.
Lua Example
djui_hud_render_texture_tile_interpolated(texInfo, prevX, prevY, prevScaleW, prevScaleH, 0, 0, 1, 1, 0, 0, 16, 16)
Parameters
Field | Type |
---|---|
texInfo | TextureInfo |
prevX | number |
prevY | number |
prevScaleW | number |
prevScaleH | number |
x | number |
y | number |
scaleW | number |
scaleH | number |
tileX | number |
tileY | number |
tileW | number |
tileH | number |
Returns
- None
C Prototype
void djui_hud_render_texture_tile_interpolated(struct TextureInfo* texInfo, f32 prevX, f32 prevY, f32 prevScaleW, f32 prevScaleH, f32 x, f32 y, f32 scaleW, f32 scaleH, u32 tileX, u32 tileY, u32 tileW, u32 tileH);
texture_override_reset
Resets an overridden texture.
Lua Example
texture_override_reset("outside_09004000")
Parameters
Field | Type |
---|---|
textureName | string |
Returns
- None
C Prototype
void dynos_texture_override_reset(const char* textureName);
texture_override_set
Overrides a texture with a custom TextureInfo
.
Lua Example
texture_override_set("outside_09004000", overrideTexInfo)
Parameters
Field | Type |
---|---|
textureName | string |
overrideTexInfo | TextureInfo |
Returns
- None
C Prototype
void dynos_texture_override_set(const char* textureName, struct TextureInfo* overrideTexInfo);
smlua_anim_util_register_animation
Register a new Lua animation.
Lua Example
smlua_anim_util_register_animation("apparition_idle", 0, 189, 0, 0, 0x5A, values, index)
Parameters
Field | Type |
---|---|
name | string |
flags | integer |
animYTransDivisor | integer |
startFrame | integer |
loopStart | integer |
loopEnd | integer |
values | table |
index | table |
Returns
- None
C Prototype
void smlua_anim_util_register_animation(const char *name, s16 flags, s16 animYTransDivisor, s16 startFrame, s16 loopStart, s16 loopEnd, s16 *values, u32 valuesLength, u16 *index, u32 indexLength);
level_script_parse
Lua Example
level_script_parse(LEVEL_BOB, func)
Parses a level script and passes area index, behavior data, macro behavior IDs and macro behavior arguments to a function.
Parameters
Field | Type |
---|---|
levelNum | LevelNum |
func | function |
Returns
- None
C Prototype
void smlua_func_level_script_parse(lua_State* L);
log_to_console
Logs a message to the in-game console.
Lua Example
log_to_console("sm64coopdx FTW", CONSOLE_MESSAGE_INFO)
Parameters
Field | Type |
---|---|
message | string |
level (optional) | ConsoleMessageLevel |
Returns
- None
C Prototype
void log_to_console(const char* message, enum ConsoleMessageLevel level);
add_scroll_target
Registers a vertex buffer to be used for a scrolling texture. Should be used with RM_Scroll_Texture
or editor_Scroll_Texture
Lua Example
add_scroll_target(0, "arena_rainbow_dl_StarRoad_mesh_layer_5_vtx_0")
Parameters
Field | Type |
---|---|
index | integer |
name | string |
Returns
- None
C Prototype
void dynos_add_scroll_target(u32 index, const char *name, u32 offset, u32 size);
collision_find_surface_on_ray
Shoots a raycast from startX
, startY
, and startZ
in the direction of dirX
, dirY
, and dirZ
.
Lua Example
collision_find_surface_on_ray(0, 0, 0, 50, 100, 50)
Parameters
Field | Type |
---|---|
startX | number |
startY | number |
startZ | number |
dirX | number |
dirY | number |
dirZ | number |
precision (optional) | number |
Returns
C Prototype
struct RayIntersectionInfo* collision_find_surface_on_ray(f32 startX, f32 startY, f32 startZ, f32 dirX, f32 dirY, f32 dirZ, f32 precision);
functions from area.h
area_get_warp_node
Lua Example
local ObjectWarpNodeValue = area_get_warp_node(id)
Parameters
Field | Type |
---|---|
id | integer |
Returns
C Prototype
struct ObjectWarpNode *area_get_warp_node(u8 id);
area_get_warp_node_from_params
Lua Example
local ObjectWarpNodeValue = area_get_warp_node_from_params(o)
Parameters
Field | Type |
---|---|
o | Object |
Returns
C Prototype
struct ObjectWarpNode *area_get_warp_node_from_params(struct Object *o);
---