From 2e765786aec9df6e6c958351020883b806a96ecd Mon Sep 17 00:00:00 2001 From: Cooliokid956 <68075390+Cooliokid956@users.noreply.github.com> Date: Sat, 29 Nov 2025 20:51:53 -0600 Subject: [PATCH] This shouldn't be here --- autogen/convert_functions.py | 2 +- docs/lua/functions-8.md | 620 ---- src/pc/lua/smlua_functions_autogen.c | 3908 +++++++++++++------------- src/pc/lua/smlua_utils.h | 2 - 4 files changed, 1943 insertions(+), 2589 deletions(-) delete mode 100644 docs/lua/functions-8.md diff --git a/autogen/convert_functions.py b/autogen/convert_functions.py index 626d04dcc..497143b6e 100644 --- a/autogen/convert_functions.py +++ b/autogen/convert_functions.py @@ -996,7 +996,7 @@ def build_functions(processed_files): def build_bind(function): fid = function['identifier'] - s = 'BIND_FUNCTION(%s);' % fid + s = 'smlua_bind_function(L, "%s", smlua_func_%s);' % (fid, fid) if function['implemented']: s = ' ' + s # There is no point in adding the ifndef statement if the function is commented out here anyways. diff --git a/docs/lua/functions-8.md b/docs/lua/functions-8.md deleted file mode 100644 index 20ee85bee..000000000 --- a/docs/lua/functions-8.md +++ /dev/null @@ -1,620 +0,0 @@ -## [:rewind: Lua Functions](functions.md) - ---- - -[< prev](functions-7.md) | [1](functions.md) | [2](functions-2.md) | [3](functions-3.md) | [4](functions-4.md) | [5](functions-5.md) | [6](functions-6.md) | [7](functions-7.md) | 8] - - ---- -# functions from spawn_sound.h - -
- - -## [cur_obj_play_sound_1](#cur_obj_play_sound_1) - -### Description -Plays a sound if the current object is visible - -### Lua Example -`local . at 0x000001e039c74f20> = 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) - -### Description -Plays a sound if the current object is visible and queues rumble for specific sounds - -### Lua Example -`local . at 0x000001e039c75000> = 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:](#) - -
- -## [create_sound_spawner](#create_sound_spawner) - -### Description -Create a sound spawner for objects that need a sound play once. (Breakable walls, King Bobomb exploding, etc) - -### Lua Example -`local . at 0x000001e039c74f20> = create_sound_spawner(soundMagic)` - -### Parameters -| Field | Type | -| ----- | ---- | -| soundMagic | `integer` | - -### Returns -- None - -### C Prototype -`void create_sound_spawner(s32 soundMagic);` - -[:arrow_up_small:](#) - -
- -## [calc_dist_to_volume_range_1](#calc_dist_to_volume_range_1) - -### Description -Unused vanilla function, calculates a volume based on `distance`. If `distance` is less than 500 then 127, if `distance` is greater than 1500 then 0, if `distance` is between 500 and 1500 then it ranges linearly from 60 to 124. What an even more strange and confusing function - -### Lua Example -`local . at 0x000001e039c74f20> = 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) - -### Description -Unused vanilla function, calculates a volume based on `distance`. If `distance` is less than 1300 then 127, if `distance` is greater than 2300 then 0, if `distance` is between 1300 and 2300 then it ranges linearly from 60 to 127. What a strange and confusing function - -### Lua Example -`local . at 0x000001e039c74f20> = 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:](#) - -
- ---- -# functions from surface_collision.h - -
- - -## [find_wall_collisions](#find_wall_collisions) - -### Description -Detects wall collisions at a given position and adjusts the position based on the walls found. Returns the number of wall collisions detected - -### Lua Example -`local . at 0x000001e039c74f20> = 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_ceil](#find_ceil) - -### Lua Example -`local . at 0x000001e039c74f20> = find_ceil(posX, posY, posZ, pceil)` - -### Parameters -| Field | Type | -| ----- | ---- | -| posX | `number` | -| posY | `number` | -| posZ | `number` | -| pceil | [Surface](structs.md#Surface) | - -### Returns -- `number` - -### C Prototype -`f32 find_ceil(f32 posX, f32 posY, f32 posZ, struct Surface **pceil);` - -[:arrow_up_small:](#) - -
- -## [find_ceil_height](#find_ceil_height) - -### Description -Finds the height of the highest ceiling above a given position (x, y, z). If no ceiling is found, returns the default height limit of `gLevelValues.cellHeightLimit`(20000 by default) - -### Lua Example -`local . at 0x000001e039c74f20> = 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_and_data](#find_floor_height_and_data) - -### Lua Example -`local . at 0x000001e039c74f20> = find_floor_height_and_data(xPos, yPos, zPos, floorGeo)` - -### Parameters -| Field | Type | -| ----- | ---- | -| xPos | `number` | -| yPos | `number` | -| zPos | `number` | -| floorGeo | [FloorGeometry](structs.md#FloorGeometry) | - -### Returns -- `number` - -### C Prototype -`f32 find_floor_height_and_data(f32 xPos, f32 yPos, f32 zPos, struct FloorGeometry **floorGeo);` - -[:arrow_up_small:](#) - -
- -## [find_floor_height](#find_floor_height) - -### Description -Finds the height of the highest floor below a given position (x, y, z). If no floor is found, returns the default floor height of `gLevelValues.floorLowerLimit`(-11000 by default) - -### Lua Example -`local . at 0x000001e039c74f20> = 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_floor](#find_floor) - -### Lua Example -`local . at 0x000001e039c74f20> = find_floor(xPos, yPos, zPos, pfloor)` - -### Parameters -| Field | Type | -| ----- | ---- | -| xPos | `number` | -| yPos | `number` | -| zPos | `number` | -| pfloor | [Surface](structs.md#Surface) | - -### Returns -- `number` - -### C Prototype -`f32 find_floor(f32 xPos, f32 yPos, f32 zPos, struct Surface **pfloor);` - -[:arrow_up_small:](#) - -
- -## [find_water_level](#find_water_level) - -### Description -Finds the height of water at a given position (x, z), if the position is within a water region. If no water is found, returns the default height of `gLevelValues.floorLowerLimit`(-11000 by default) - -### Lua Example -`local . at 0x000001e039c74f20> = 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:](#) - -
- -## [find_poison_gas_level](#find_poison_gas_level) - -### Description -Finds the height of the poison gas at a given position (x, z), if the position is within a gas region. If no gas is found, returns the default height of `gLevelValues.floorLowerLimit`(-11000 by default) - -### Lua Example -`local . at 0x000001e039c74f20> = 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_surface_on_ray](#find_surface_on_ray) - -### Lua Example -`local . at 0x000001e039c74f20> = find_surface_on_ray(orig, dir, hit_surface, hit_pos, precision)` - -### Parameters -| Field | Type | -| ----- | ---- | -| orig | [Vec3f](structs.md#Vec3f) | -| dir | [Vec3f](structs.md#Vec3f) | -| hit_surface | [Surface](structs.md#Surface) | -| hit_pos | [Vec3f](structs.md#Vec3f) | -| precision | `number` | - -### Returns -- None - -### C Prototype -`void find_surface_on_ray(Vec3f orig, Vec3f dir, struct Surface **hit_surface, Vec3f hit_pos, f32 precision);` - -[:arrow_up_small:](#) - -
- -## [set_find_wall_direction](#set_find_wall_direction) - -### Description -Sets whether collision finding functions should check wall directions. - -### Lua Example -`local . at 0x000001e039c74f20> = set_find_wall_direction(dir, active, airborne)` - -### Parameters -| Field | Type | -| ----- | ---- | -| dir | [Vec3f](structs.md#Vec3f) | -| active | `boolean` | -| airborne | `boolean` | - -### Returns -- None - -### C Prototype -`void set_find_wall_direction(Vec3f dir, bool active, bool airborne);` - -[:arrow_up_small:](#) - -
- -## [closest_point_to_triangle](#closest_point_to_triangle) - -### Description -Gets the closest point of the triangle to `src` and returns it in `out`. - -### Lua Example -`local . at 0x000001e039c74f20> = closest_point_to_triangle(surf, src, out)` - -### Parameters -| Field | Type | -| ----- | ---- | -| surf | [Surface](structs.md#Surface) | -| src | [Vec3f](structs.md#Vec3f) | -| out | [Vec3f](structs.md#Vec3f) | - -### Returns -- None - -### C Prototype -`void closest_point_to_triangle(struct Surface* surf, Vec3f src, OUT Vec3f out);` - -[:arrow_up_small:](#) - -
- ---- -# functions from surface_load.h - -
- - -## [load_object_collision_model](#load_object_collision_model) - -### Description -Loads the object's collision data into dynamic collision. You must run this every frame in your object's behavior loop for it to have collision - -### Lua Example -`local . at 0x000001e039c74f20> = load_object_collision_model()` - -### Parameters -- None - -### Returns -- None - -### C Prototype -`void load_object_collision_model(void);` - -[:arrow_up_small:](#) - -
- -## [load_static_object_collision](#load_static_object_collision) - -### Description -Loads the object's collision data into static collision. You may run this only once to capture the object's collision at that frame. - -### Lua Example -`local . at 0x000001e039c74f20> = load_static_object_collision()` - -### Parameters -- None - -### Returns -- [StaticObjectCollision](structs.md#StaticObjectCollision) - -### C Prototype -`struct StaticObjectCollision *load_static_object_collision();` - -[:arrow_up_small:](#) - -
- -## [toggle_static_object_collision](#toggle_static_object_collision) - -### Description -Toggles a collection of static object surfaces - -### Lua Example -`local . at 0x000001e039c74f20> = toggle_static_object_collision(col, tangible)` - -### Parameters -| Field | Type | -| ----- | ---- | -| col | [StaticObjectCollision](structs.md#StaticObjectCollision) | -| tangible | `boolean` | - -### Returns -- None - -### C Prototype -`void toggle_static_object_collision(struct StaticObjectCollision *col, bool tangible);` - -[:arrow_up_small:](#) - -
- -## [get_static_object_surface](#get_static_object_surface) - -### Description -Gets a surface corresponding to `index` from the static object collision - -### Lua Example -`local . at 0x000001e039c74f20> = get_static_object_surface(col, index)` - -### Parameters -| Field | Type | -| ----- | ---- | -| col | [StaticObjectCollision](structs.md#StaticObjectCollision) | -| index | `integer` | - -### Returns -- [Surface](structs.md#Surface) - -### C Prototype -`struct Surface *get_static_object_surface(struct StaticObjectCollision *col, u32 index);` - -[:arrow_up_small:](#) - -
- -## [obj_get_surface_from_index](#obj_get_surface_from_index) - -### Description -Gets a surface corresponding to `index` from the surface pool buffer - -### Lua Example -`local . at 0x000001e039c74f20> = 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) - -### Description -Checks if a surface has force - -### Lua Example -`local . at 0x000001e039c74f20> = surface_has_force(surfaceType)` - -### Parameters -| Field | Type | -| ----- | ---- | -| surfaceType | `integer` | - -### Returns -- `boolean` - -### C Prototype -`bool surface_has_force(s16 surfaceType);` - -[:arrow_up_small:](#) - -
- ---- -# functions from sync_object.h - -
- - -## [sync_object_get_object](#sync_object_get_object) - -### Description -Retrieves an object from a sync ID - -### Lua Example -`local . at 0x000001e039c74f20> = sync_object_get_object(syncId)` - -### Parameters -| Field | Type | -| ----- | ---- | -| syncId | `integer` | - -### Returns -- [Object](structs.md#Object) - -### C Prototype -`struct Object* sync_object_get_object(u32 syncId);` - -[:arrow_up_small:](#) - -
- -## [sync_object_is_initialized](#sync_object_is_initialized) - -### Description -Checks if a sync object is initialized using a `syncId` - -### Lua Example -`local . at 0x000001e039c74f20> = sync_object_is_initialized(syncId)` - -### Parameters -| Field | Type | -| ----- | ---- | -| syncId | `integer` | - -### Returns -- `boolean` - -### C Prototype -`bool sync_object_is_initialized(u32 syncId);` - -[:arrow_up_small:](#) - -
- -## [sync_object_is_owned_locally](#sync_object_is_owned_locally) - -### Description -Checks if a sync object is owned locally using a `syncId` - -### Lua Example -`local . at 0x000001e039c74f20> = sync_object_is_owned_locally(syncId)` - -### Parameters -| Field | Type | -| ----- | ---- | -| syncId | `integer` | - -### Returns -- `boolean` - -### C Prototype -`bool sync_object_is_owned_locally(u32 syncId);` - -[:arrow_up_small:](#) - -
- ---- - -[< prev](functions-7.md) | [1](functions.md) | [2](functions-2.md) | [3](functions-3.md) | [4](functions-4.md) | [5](functions-5.md) | [6](functions-6.md) | [7](functions-7.md) | 8] - diff --git a/src/pc/lua/smlua_functions_autogen.c b/src/pc/lua/smlua_functions_autogen.c index 9e93666b1..3a08fe7b7 100644 --- a/src/pc/lua/smlua_functions_autogen.c +++ b/src/pc/lua/smlua_functions_autogen.c @@ -36856,1726 +36856,1725 @@ void smlua_bind_functions_autogen(void) { lua_State* L = gLuaState; // area.h - BIND_FUNCTION(get_mario_spawn_type); - BIND_FUNCTION(area_get_warp_node); - BIND_FUNCTION(area_get_any_warp_node); - BIND_FUNCTION(area_get_warp_node_from_params); - BIND_FUNCTION(play_transition); - BIND_FUNCTION(play_transition_after_delay); + smlua_bind_function(L, "get_mario_spawn_type", smlua_func_get_mario_spawn_type); + smlua_bind_function(L, "area_get_warp_node", smlua_func_area_get_warp_node); + smlua_bind_function(L, "area_get_any_warp_node", smlua_func_area_get_any_warp_node); + smlua_bind_function(L, "area_get_warp_node_from_params", smlua_func_area_get_warp_node_from_params); + smlua_bind_function(L, "play_transition", smlua_func_play_transition); + smlua_bind_function(L, "play_transition_after_delay", smlua_func_play_transition_after_delay); // behavior_actions.h - BIND_FUNCTION(spawn_mist_particles_variable); - BIND_FUNCTION(bhv_spawn_star_no_level_exit); - BIND_FUNCTION(spawn_triangle_break_particles); - BIND_FUNCTION(spawn_mist_from_global); - BIND_FUNCTION(clear_particle_flags); - BIND_FUNCTION(spawn_wind_particles); - BIND_FUNCTION(check_if_moving_over_floor); - BIND_FUNCTION(arc_to_goal_pos); - BIND_FUNCTION(tox_box_move); - BIND_FUNCTION(play_penguin_walking_sound); - BIND_FUNCTION(update_angle_from_move_flags); - BIND_FUNCTION(cur_obj_spawn_strong_wind_particles); - BIND_FUNCTION(bhv_star_door_loop_2); - BIND_FUNCTION(bhv_cap_switch_loop); - BIND_FUNCTION(bhv_tiny_star_particles_init); - BIND_FUNCTION(bhv_grindel_thwomp_loop); - BIND_FUNCTION(bhv_koopa_shell_underwater_loop); - BIND_FUNCTION(bhv_door_init); - BIND_FUNCTION(bhv_door_loop); - BIND_FUNCTION(bhv_star_door_loop); - BIND_FUNCTION(bhv_mr_i_loop); - BIND_FUNCTION(bhv_mr_i_body_loop); - BIND_FUNCTION(bhv_mr_i_particle_loop); - BIND_FUNCTION(bhv_piranha_particle_loop); - BIND_FUNCTION(bhv_giant_pole_loop); - BIND_FUNCTION(bhv_pole_init); - BIND_FUNCTION(bhv_pole_base_loop); - BIND_FUNCTION(bhv_thi_huge_island_top_loop); - BIND_FUNCTION(bhv_thi_tiny_island_top_loop); - BIND_FUNCTION(bhv_king_bobomb_loop); - BIND_FUNCTION(bhv_bobomb_anchor_mario_loop); - BIND_FUNCTION(bhv_beta_chest_bottom_init); - BIND_FUNCTION(bhv_beta_chest_bottom_loop); - BIND_FUNCTION(bhv_beta_chest_lid_loop); - BIND_FUNCTION(bhv_bubble_wave_init); - BIND_FUNCTION(bhv_bubble_maybe_loop); - BIND_FUNCTION(bhv_bubble_player_loop); - BIND_FUNCTION(bhv_water_air_bubble_init); - BIND_FUNCTION(bhv_water_air_bubble_loop); - BIND_FUNCTION(bhv_particle_init); - BIND_FUNCTION(bhv_particle_loop); - BIND_FUNCTION(bhv_water_waves_init); - BIND_FUNCTION(bhv_small_bubbles_loop); - BIND_FUNCTION(bhv_fish_group_loop); - BIND_FUNCTION(bhv_cannon_base_loop); - BIND_FUNCTION(bhv_cannon_barrel_loop); - BIND_FUNCTION(bhv_cannon_base_unused_loop); - BIND_FUNCTION(common_anchor_mario_behavior); - BIND_FUNCTION(bhv_chuckya_loop); - BIND_FUNCTION(bhv_chuckya_anchor_mario_loop); - BIND_FUNCTION(bhv_rotating_platform_loop); - BIND_FUNCTION(bhv_wf_breakable_wall_loop); - BIND_FUNCTION(bhv_kickable_board_loop); - BIND_FUNCTION(bhv_tower_door_loop); - BIND_FUNCTION(bhv_wf_rotating_wooden_platform_init); - BIND_FUNCTION(bhv_wf_rotating_wooden_platform_loop); - BIND_FUNCTION(bhv_fading_warp_loop); - BIND_FUNCTION(bhv_warp_loop); - BIND_FUNCTION(bhv_white_puff_exploding_loop); - BIND_FUNCTION(bhv_spawned_star_init); - BIND_FUNCTION(bhv_spawned_star_loop); - BIND_FUNCTION(bhv_coin_init); - BIND_FUNCTION(bhv_coin_loop); - BIND_FUNCTION(bhv_coin_inside_boo_loop); - BIND_FUNCTION(bhv_coin_formation_init); - BIND_FUNCTION(bhv_coin_formation_spawn_loop); - BIND_FUNCTION(bhv_coin_formation_loop); - BIND_FUNCTION(bhv_temp_coin_loop); - BIND_FUNCTION(bhv_coin_sparkles_loop); - BIND_FUNCTION(bhv_golden_coin_sparkles_loop); - BIND_FUNCTION(bhv_wall_tiny_star_particle_loop); - BIND_FUNCTION(bhv_pound_tiny_star_particle_loop); - BIND_FUNCTION(bhv_pound_tiny_star_particle_init); - BIND_FUNCTION(bhv_punch_tiny_triangle_loop); - BIND_FUNCTION(bhv_punch_tiny_triangle_init); - BIND_FUNCTION(bhv_tumbling_bridge_platform_loop); - BIND_FUNCTION(bhv_tumbling_bridge_loop); - BIND_FUNCTION(bhv_elevator_init); - BIND_FUNCTION(bhv_elevator_loop); - BIND_FUNCTION(bhv_water_mist_loop); - BIND_FUNCTION(bhv_water_mist_spawn_loop); - BIND_FUNCTION(bhv_water_mist_2_loop); - BIND_FUNCTION(bhv_pound_white_puffs_init); - BIND_FUNCTION(bhv_ground_sand_init); - BIND_FUNCTION(bhv_ground_snow_init); - BIND_FUNCTION(bhv_wind_loop); - BIND_FUNCTION(bhv_unused_particle_spawn_loop); - BIND_FUNCTION(bhv_ukiki_cage_star_loop); - BIND_FUNCTION(bhv_ukiki_cage_loop); - BIND_FUNCTION(bhv_bitfs_sinking_platform_loop); - BIND_FUNCTION(bhv_bitfs_sinking_cage_platform_loop); - BIND_FUNCTION(bhv_ddd_moving_pole_loop); - BIND_FUNCTION(bhv_platform_normals_init); - BIND_FUNCTION(bhv_tilting_inverted_pyramid_loop); - BIND_FUNCTION(bhv_squishable_platform_loop); - BIND_FUNCTION(bhv_beta_moving_flames_spawn_loop); - BIND_FUNCTION(bhv_beta_moving_flames_loop); - BIND_FUNCTION(bhv_rr_rotating_bridge_platform_loop); - BIND_FUNCTION(bhv_flamethrower_loop); - BIND_FUNCTION(bhv_flamethrower_flame_loop); - BIND_FUNCTION(bhv_bouncing_fireball_loop); - BIND_FUNCTION(bhv_bouncing_fireball_flame_loop); - BIND_FUNCTION(bhv_bowser_shock_wave_loop); - BIND_FUNCTION(bhv_flame_mario_loop); - BIND_FUNCTION(bhv_black_smoke_mario_loop); - BIND_FUNCTION(bhv_black_smoke_bowser_loop); - BIND_FUNCTION(bhv_black_smoke_upward_loop); - BIND_FUNCTION(bhv_beta_fish_splash_spawner_loop); - BIND_FUNCTION(bhv_spindrift_loop); - BIND_FUNCTION(bhv_tower_platform_group_init); - BIND_FUNCTION(bhv_tower_platform_group_loop); - BIND_FUNCTION(bhv_wf_sliding_tower_platform_loop); - BIND_FUNCTION(bhv_wf_elevator_tower_platform_loop); - BIND_FUNCTION(bhv_wf_solid_tower_platform_loop); - BIND_FUNCTION(bhv_snow_leaf_particle_spawn_init); - BIND_FUNCTION(bhv_tree_snow_or_leaf_loop); - BIND_FUNCTION(bhv_piranha_plant_bubble_loop); - BIND_FUNCTION(bhv_piranha_plant_waking_bubbles_loop); - BIND_FUNCTION(bhv_purple_switch_loop); - BIND_FUNCTION(bhv_hidden_object_loop); - BIND_FUNCTION(bhv_breakable_box_loop); - BIND_FUNCTION(bhv_pushable_loop); - BIND_FUNCTION(bhv_small_water_wave_loop); - BIND_FUNCTION(bhv_yellow_coin_init); - BIND_FUNCTION(bhv_yellow_coin_loop); - BIND_FUNCTION(bhv_squarish_path_moving_loop); - BIND_FUNCTION(bhv_squarish_path_parent_init); - BIND_FUNCTION(bhv_squarish_path_parent_loop); - BIND_FUNCTION(bhv_heave_ho_loop); - BIND_FUNCTION(bhv_heave_ho_throw_mario_loop); - BIND_FUNCTION(bhv_ccm_touched_star_spawn_loop); - BIND_FUNCTION(bhv_unused_poundable_platform); - BIND_FUNCTION(bhv_beta_trampoline_top_loop); - BIND_FUNCTION(bhv_beta_trampoline_spring_loop); - BIND_FUNCTION(bhv_jumping_box_loop); - BIND_FUNCTION(bhv_boo_cage_init); - BIND_FUNCTION(bhv_boo_cage_loop); - BIND_FUNCTION(bhv_bowser_key_init); - BIND_FUNCTION(bhv_bowser_key_loop); - BIND_FUNCTION(bhv_grand_star_init); - BIND_FUNCTION(bhv_grand_star_loop); - BIND_FUNCTION(bhv_beta_boo_key_loop); - BIND_FUNCTION(bhv_alpha_boo_key_loop); - BIND_FUNCTION(bhv_bullet_bill_init); - BIND_FUNCTION(bhv_bullet_bill_loop); - BIND_FUNCTION(bhv_white_puff_smoke_init); - BIND_FUNCTION(bhv_bowser_tail_anchor_init); - BIND_FUNCTION(bhv_bowser_tail_anchor_loop); - BIND_FUNCTION(bhv_bowser_init); - BIND_FUNCTION(bhv_bowser_loop); - BIND_FUNCTION(bhv_bowser_body_anchor_init); - BIND_FUNCTION(bhv_bowser_body_anchor_loop); - BIND_FUNCTION(bhv_bowser_flame_spawn_loop); - BIND_FUNCTION(bhv_tilting_bowser_lava_platform_init); - BIND_FUNCTION(bhv_falling_bowser_platform_loop); - BIND_FUNCTION(bhv_blue_bowser_flame_init); - BIND_FUNCTION(bhv_blue_bowser_flame_loop); - BIND_FUNCTION(bhv_flame_floating_landing_init); - BIND_FUNCTION(bhv_flame_floating_landing_loop); - BIND_FUNCTION(bhv_blue_flames_group_loop); - BIND_FUNCTION(bhv_flame_bouncing_init); - BIND_FUNCTION(bhv_flame_bouncing_loop); - BIND_FUNCTION(bhv_flame_moving_forward_growing_init); - BIND_FUNCTION(bhv_flame_moving_forward_growing_loop); - BIND_FUNCTION(bhv_flame_bowser_init); - BIND_FUNCTION(bhv_flame_bowser_loop); - BIND_FUNCTION(bhv_flame_large_burning_out_init); - BIND_FUNCTION(bhv_blue_fish_movement_loop); - BIND_FUNCTION(bhv_tank_fish_group_loop); - BIND_FUNCTION(bhv_checkerboard_elevator_group_init); - BIND_FUNCTION(bhv_checkerboard_elevator_group_loop); - BIND_FUNCTION(bhv_checkerboard_platform_init); - BIND_FUNCTION(bhv_checkerboard_platform_loop); - BIND_FUNCTION(bhv_bowser_key_unlock_door_loop); - BIND_FUNCTION(bhv_bowser_key_course_exit_loop); - BIND_FUNCTION(bhv_invisible_objects_under_bridge_init); - BIND_FUNCTION(bhv_invisible_objects_under_bridge_loop); - BIND_FUNCTION(bhv_water_level_pillar_init); - BIND_FUNCTION(bhv_water_level_pillar_loop); - BIND_FUNCTION(bhv_ddd_warp_loop); - BIND_FUNCTION(bhv_moat_grills_loop); - BIND_FUNCTION(bhv_rotating_clock_arm_loop); - BIND_FUNCTION(bhv_ukiki_init); - BIND_FUNCTION(bhv_ukiki_loop); - BIND_FUNCTION(bhv_lll_sinking_rock_block_loop); - BIND_FUNCTION(bhv_lll_moving_octagonal_mesh_platform_loop); - BIND_FUNCTION(bhv_lll_rotating_block_fire_bars_loop); - BIND_FUNCTION(bhv_lll_rotating_hex_flame_loop); - BIND_FUNCTION(bhv_lll_wood_piece_loop); - BIND_FUNCTION(bhv_lll_floating_wood_bridge_loop); - BIND_FUNCTION(bhv_volcano_flames_loop); - BIND_FUNCTION(bhv_lll_rotating_hexagonal_ring_loop); - BIND_FUNCTION(bhv_lll_sinking_rectangular_platform_loop); - BIND_FUNCTION(bhv_lll_sinking_square_platforms_loop); - BIND_FUNCTION(bhv_koopa_shell_loop); - BIND_FUNCTION(bhv_koopa_shell_flame_loop); - BIND_FUNCTION(bhv_tox_box_loop); - BIND_FUNCTION(mario_moving_fast_enough_to_make_piranha_plant_bite); - BIND_FUNCTION(bhv_piranha_plant_loop); - BIND_FUNCTION(bhv_lll_bowser_puzzle_piece_loop); - BIND_FUNCTION(bhv_lll_bowser_puzzle_loop); - BIND_FUNCTION(bhv_tuxies_mother_loop); - BIND_FUNCTION(bhv_small_penguin_loop); - BIND_FUNCTION(bhv_fish_spawner_loop); - BIND_FUNCTION(bhv_fish_loop); - BIND_FUNCTION(bhv_wdw_express_elevator_loop); - BIND_FUNCTION(bhv_bub_spawner_loop); - BIND_FUNCTION(bhv_bub_loop); - BIND_FUNCTION(bhv_exclamation_box_init); - BIND_FUNCTION(bhv_exclamation_box_loop); - BIND_FUNCTION(bhv_rotating_exclamation_box_loop); - BIND_FUNCTION(bhv_sound_spawner_init); - BIND_FUNCTION(bhv_bowsers_sub_loop); - BIND_FUNCTION(bhv_sushi_shark_loop); - BIND_FUNCTION(bhv_sushi_shark_collision_loop); - BIND_FUNCTION(bhv_jrb_sliding_box_loop); - BIND_FUNCTION(bhv_ship_part_3_loop); - BIND_FUNCTION(bhv_sunken_ship_part_loop); - BIND_FUNCTION(bhv_white_puff_1_loop); - BIND_FUNCTION(bhv_white_puff_2_loop); - BIND_FUNCTION(bhv_blue_coin_number_loop); - BIND_FUNCTION(bhv_blue_coin_switch_init); - BIND_FUNCTION(bhv_blue_coin_switch_loop); - BIND_FUNCTION(bhv_hidden_blue_coin_loop); - BIND_FUNCTION(bhv_openable_cage_door_loop); - BIND_FUNCTION(bhv_openable_grill_loop); - BIND_FUNCTION(bhv_water_level_diamond_loop); - BIND_FUNCTION(bhv_init_changing_water_level_loop); - BIND_FUNCTION(bhv_tweester_sand_particle_loop); - BIND_FUNCTION(bhv_tweester_loop); - BIND_FUNCTION(bhv_merry_go_round_boo_manager_loop); - BIND_FUNCTION(bhv_animated_texture_loop); - BIND_FUNCTION(bhv_boo_in_castle_loop); - BIND_FUNCTION(bhv_boo_with_cage_init); - BIND_FUNCTION(bhv_boo_with_cage_loop); - BIND_FUNCTION(bhv_boo_init); - BIND_FUNCTION(bhv_big_boo_loop); - BIND_FUNCTION(bhv_courtyard_boo_triplet_init); - BIND_FUNCTION(obj_set_secondary_camera_focus); - BIND_FUNCTION(bhv_boo_loop); - BIND_FUNCTION(bhv_boo_boss_spawned_bridge_loop); - BIND_FUNCTION(bhv_bbh_tilting_trap_platform_loop); - BIND_FUNCTION(bhv_haunted_bookshelf_loop); - BIND_FUNCTION(bhv_merry_go_round_loop); + smlua_bind_function(L, "spawn_mist_particles_variable", smlua_func_spawn_mist_particles_variable); + smlua_bind_function(L, "bhv_spawn_star_no_level_exit", smlua_func_bhv_spawn_star_no_level_exit); + smlua_bind_function(L, "spawn_triangle_break_particles", smlua_func_spawn_triangle_break_particles); + smlua_bind_function(L, "spawn_mist_from_global", smlua_func_spawn_mist_from_global); + smlua_bind_function(L, "clear_particle_flags", smlua_func_clear_particle_flags); + smlua_bind_function(L, "spawn_wind_particles", smlua_func_spawn_wind_particles); + smlua_bind_function(L, "check_if_moving_over_floor", smlua_func_check_if_moving_over_floor); + smlua_bind_function(L, "arc_to_goal_pos", smlua_func_arc_to_goal_pos); + smlua_bind_function(L, "tox_box_move", smlua_func_tox_box_move); + smlua_bind_function(L, "play_penguin_walking_sound", smlua_func_play_penguin_walking_sound); + smlua_bind_function(L, "update_angle_from_move_flags", smlua_func_update_angle_from_move_flags); + smlua_bind_function(L, "cur_obj_spawn_strong_wind_particles", smlua_func_cur_obj_spawn_strong_wind_particles); + smlua_bind_function(L, "bhv_star_door_loop_2", smlua_func_bhv_star_door_loop_2); + smlua_bind_function(L, "bhv_cap_switch_loop", smlua_func_bhv_cap_switch_loop); + smlua_bind_function(L, "bhv_tiny_star_particles_init", smlua_func_bhv_tiny_star_particles_init); + smlua_bind_function(L, "bhv_grindel_thwomp_loop", smlua_func_bhv_grindel_thwomp_loop); + smlua_bind_function(L, "bhv_koopa_shell_underwater_loop", smlua_func_bhv_koopa_shell_underwater_loop); + smlua_bind_function(L, "bhv_door_init", smlua_func_bhv_door_init); + smlua_bind_function(L, "bhv_door_loop", smlua_func_bhv_door_loop); + smlua_bind_function(L, "bhv_star_door_loop", smlua_func_bhv_star_door_loop); + smlua_bind_function(L, "bhv_mr_i_loop", smlua_func_bhv_mr_i_loop); + smlua_bind_function(L, "bhv_mr_i_body_loop", smlua_func_bhv_mr_i_body_loop); + smlua_bind_function(L, "bhv_mr_i_particle_loop", smlua_func_bhv_mr_i_particle_loop); + smlua_bind_function(L, "bhv_piranha_particle_loop", smlua_func_bhv_piranha_particle_loop); + smlua_bind_function(L, "bhv_giant_pole_loop", smlua_func_bhv_giant_pole_loop); + smlua_bind_function(L, "bhv_pole_init", smlua_func_bhv_pole_init); + smlua_bind_function(L, "bhv_pole_base_loop", smlua_func_bhv_pole_base_loop); + smlua_bind_function(L, "bhv_thi_huge_island_top_loop", smlua_func_bhv_thi_huge_island_top_loop); + smlua_bind_function(L, "bhv_thi_tiny_island_top_loop", smlua_func_bhv_thi_tiny_island_top_loop); + smlua_bind_function(L, "bhv_king_bobomb_loop", smlua_func_bhv_king_bobomb_loop); + smlua_bind_function(L, "bhv_bobomb_anchor_mario_loop", smlua_func_bhv_bobomb_anchor_mario_loop); + smlua_bind_function(L, "bhv_beta_chest_bottom_init", smlua_func_bhv_beta_chest_bottom_init); + smlua_bind_function(L, "bhv_beta_chest_bottom_loop", smlua_func_bhv_beta_chest_bottom_loop); + smlua_bind_function(L, "bhv_beta_chest_lid_loop", smlua_func_bhv_beta_chest_lid_loop); + smlua_bind_function(L, "bhv_bubble_wave_init", smlua_func_bhv_bubble_wave_init); + smlua_bind_function(L, "bhv_bubble_maybe_loop", smlua_func_bhv_bubble_maybe_loop); + smlua_bind_function(L, "bhv_bubble_player_loop", smlua_func_bhv_bubble_player_loop); + smlua_bind_function(L, "bhv_water_air_bubble_init", smlua_func_bhv_water_air_bubble_init); + smlua_bind_function(L, "bhv_water_air_bubble_loop", smlua_func_bhv_water_air_bubble_loop); + smlua_bind_function(L, "bhv_particle_init", smlua_func_bhv_particle_init); + smlua_bind_function(L, "bhv_particle_loop", smlua_func_bhv_particle_loop); + smlua_bind_function(L, "bhv_water_waves_init", smlua_func_bhv_water_waves_init); + smlua_bind_function(L, "bhv_small_bubbles_loop", smlua_func_bhv_small_bubbles_loop); + smlua_bind_function(L, "bhv_fish_group_loop", smlua_func_bhv_fish_group_loop); + smlua_bind_function(L, "bhv_cannon_base_loop", smlua_func_bhv_cannon_base_loop); + smlua_bind_function(L, "bhv_cannon_barrel_loop", smlua_func_bhv_cannon_barrel_loop); + smlua_bind_function(L, "bhv_cannon_base_unused_loop", smlua_func_bhv_cannon_base_unused_loop); + smlua_bind_function(L, "common_anchor_mario_behavior", smlua_func_common_anchor_mario_behavior); + smlua_bind_function(L, "bhv_chuckya_loop", smlua_func_bhv_chuckya_loop); + smlua_bind_function(L, "bhv_chuckya_anchor_mario_loop", smlua_func_bhv_chuckya_anchor_mario_loop); + smlua_bind_function(L, "bhv_rotating_platform_loop", smlua_func_bhv_rotating_platform_loop); + smlua_bind_function(L, "bhv_wf_breakable_wall_loop", smlua_func_bhv_wf_breakable_wall_loop); + smlua_bind_function(L, "bhv_kickable_board_loop", smlua_func_bhv_kickable_board_loop); + smlua_bind_function(L, "bhv_tower_door_loop", smlua_func_bhv_tower_door_loop); + smlua_bind_function(L, "bhv_wf_rotating_wooden_platform_init", smlua_func_bhv_wf_rotating_wooden_platform_init); + smlua_bind_function(L, "bhv_wf_rotating_wooden_platform_loop", smlua_func_bhv_wf_rotating_wooden_platform_loop); + smlua_bind_function(L, "bhv_fading_warp_loop", smlua_func_bhv_fading_warp_loop); + smlua_bind_function(L, "bhv_warp_loop", smlua_func_bhv_warp_loop); + smlua_bind_function(L, "bhv_white_puff_exploding_loop", smlua_func_bhv_white_puff_exploding_loop); + smlua_bind_function(L, "bhv_spawned_star_init", smlua_func_bhv_spawned_star_init); + smlua_bind_function(L, "bhv_spawned_star_loop", smlua_func_bhv_spawned_star_loop); + smlua_bind_function(L, "bhv_coin_init", smlua_func_bhv_coin_init); + smlua_bind_function(L, "bhv_coin_loop", smlua_func_bhv_coin_loop); + smlua_bind_function(L, "bhv_coin_inside_boo_loop", smlua_func_bhv_coin_inside_boo_loop); + smlua_bind_function(L, "bhv_coin_formation_init", smlua_func_bhv_coin_formation_init); + smlua_bind_function(L, "bhv_coin_formation_spawn_loop", smlua_func_bhv_coin_formation_spawn_loop); + smlua_bind_function(L, "bhv_coin_formation_loop", smlua_func_bhv_coin_formation_loop); + smlua_bind_function(L, "bhv_temp_coin_loop", smlua_func_bhv_temp_coin_loop); + smlua_bind_function(L, "bhv_coin_sparkles_loop", smlua_func_bhv_coin_sparkles_loop); + smlua_bind_function(L, "bhv_golden_coin_sparkles_loop", smlua_func_bhv_golden_coin_sparkles_loop); + smlua_bind_function(L, "bhv_wall_tiny_star_particle_loop", smlua_func_bhv_wall_tiny_star_particle_loop); + smlua_bind_function(L, "bhv_pound_tiny_star_particle_loop", smlua_func_bhv_pound_tiny_star_particle_loop); + smlua_bind_function(L, "bhv_pound_tiny_star_particle_init", smlua_func_bhv_pound_tiny_star_particle_init); + smlua_bind_function(L, "bhv_punch_tiny_triangle_loop", smlua_func_bhv_punch_tiny_triangle_loop); + smlua_bind_function(L, "bhv_punch_tiny_triangle_init", smlua_func_bhv_punch_tiny_triangle_init); + smlua_bind_function(L, "bhv_tumbling_bridge_platform_loop", smlua_func_bhv_tumbling_bridge_platform_loop); + smlua_bind_function(L, "bhv_tumbling_bridge_loop", smlua_func_bhv_tumbling_bridge_loop); + smlua_bind_function(L, "bhv_elevator_init", smlua_func_bhv_elevator_init); + smlua_bind_function(L, "bhv_elevator_loop", smlua_func_bhv_elevator_loop); + smlua_bind_function(L, "bhv_water_mist_loop", smlua_func_bhv_water_mist_loop); + smlua_bind_function(L, "bhv_water_mist_spawn_loop", smlua_func_bhv_water_mist_spawn_loop); + smlua_bind_function(L, "bhv_water_mist_2_loop", smlua_func_bhv_water_mist_2_loop); + smlua_bind_function(L, "bhv_pound_white_puffs_init", smlua_func_bhv_pound_white_puffs_init); + smlua_bind_function(L, "bhv_ground_sand_init", smlua_func_bhv_ground_sand_init); + smlua_bind_function(L, "bhv_ground_snow_init", smlua_func_bhv_ground_snow_init); + smlua_bind_function(L, "bhv_wind_loop", smlua_func_bhv_wind_loop); + smlua_bind_function(L, "bhv_unused_particle_spawn_loop", smlua_func_bhv_unused_particle_spawn_loop); + smlua_bind_function(L, "bhv_ukiki_cage_star_loop", smlua_func_bhv_ukiki_cage_star_loop); + smlua_bind_function(L, "bhv_ukiki_cage_loop", smlua_func_bhv_ukiki_cage_loop); + smlua_bind_function(L, "bhv_bitfs_sinking_platform_loop", smlua_func_bhv_bitfs_sinking_platform_loop); + smlua_bind_function(L, "bhv_bitfs_sinking_cage_platform_loop", smlua_func_bhv_bitfs_sinking_cage_platform_loop); + smlua_bind_function(L, "bhv_ddd_moving_pole_loop", smlua_func_bhv_ddd_moving_pole_loop); + smlua_bind_function(L, "bhv_platform_normals_init", smlua_func_bhv_platform_normals_init); + smlua_bind_function(L, "bhv_tilting_inverted_pyramid_loop", smlua_func_bhv_tilting_inverted_pyramid_loop); + smlua_bind_function(L, "bhv_squishable_platform_loop", smlua_func_bhv_squishable_platform_loop); + smlua_bind_function(L, "bhv_beta_moving_flames_spawn_loop", smlua_func_bhv_beta_moving_flames_spawn_loop); + smlua_bind_function(L, "bhv_beta_moving_flames_loop", smlua_func_bhv_beta_moving_flames_loop); + smlua_bind_function(L, "bhv_rr_rotating_bridge_platform_loop", smlua_func_bhv_rr_rotating_bridge_platform_loop); + smlua_bind_function(L, "bhv_flamethrower_loop", smlua_func_bhv_flamethrower_loop); + smlua_bind_function(L, "bhv_flamethrower_flame_loop", smlua_func_bhv_flamethrower_flame_loop); + smlua_bind_function(L, "bhv_bouncing_fireball_loop", smlua_func_bhv_bouncing_fireball_loop); + smlua_bind_function(L, "bhv_bouncing_fireball_flame_loop", smlua_func_bhv_bouncing_fireball_flame_loop); + smlua_bind_function(L, "bhv_bowser_shock_wave_loop", smlua_func_bhv_bowser_shock_wave_loop); + smlua_bind_function(L, "bhv_flame_mario_loop", smlua_func_bhv_flame_mario_loop); + smlua_bind_function(L, "bhv_black_smoke_mario_loop", smlua_func_bhv_black_smoke_mario_loop); + smlua_bind_function(L, "bhv_black_smoke_bowser_loop", smlua_func_bhv_black_smoke_bowser_loop); + smlua_bind_function(L, "bhv_black_smoke_upward_loop", smlua_func_bhv_black_smoke_upward_loop); + smlua_bind_function(L, "bhv_beta_fish_splash_spawner_loop", smlua_func_bhv_beta_fish_splash_spawner_loop); + smlua_bind_function(L, "bhv_spindrift_loop", smlua_func_bhv_spindrift_loop); + smlua_bind_function(L, "bhv_tower_platform_group_init", smlua_func_bhv_tower_platform_group_init); + smlua_bind_function(L, "bhv_tower_platform_group_loop", smlua_func_bhv_tower_platform_group_loop); + smlua_bind_function(L, "bhv_wf_sliding_tower_platform_loop", smlua_func_bhv_wf_sliding_tower_platform_loop); + smlua_bind_function(L, "bhv_wf_elevator_tower_platform_loop", smlua_func_bhv_wf_elevator_tower_platform_loop); + smlua_bind_function(L, "bhv_wf_solid_tower_platform_loop", smlua_func_bhv_wf_solid_tower_platform_loop); + smlua_bind_function(L, "bhv_snow_leaf_particle_spawn_init", smlua_func_bhv_snow_leaf_particle_spawn_init); + smlua_bind_function(L, "bhv_tree_snow_or_leaf_loop", smlua_func_bhv_tree_snow_or_leaf_loop); + smlua_bind_function(L, "bhv_piranha_plant_bubble_loop", smlua_func_bhv_piranha_plant_bubble_loop); + smlua_bind_function(L, "bhv_piranha_plant_waking_bubbles_loop", smlua_func_bhv_piranha_plant_waking_bubbles_loop); + smlua_bind_function(L, "bhv_purple_switch_loop", smlua_func_bhv_purple_switch_loop); + smlua_bind_function(L, "bhv_hidden_object_loop", smlua_func_bhv_hidden_object_loop); + smlua_bind_function(L, "bhv_breakable_box_loop", smlua_func_bhv_breakable_box_loop); + smlua_bind_function(L, "bhv_pushable_loop", smlua_func_bhv_pushable_loop); + smlua_bind_function(L, "bhv_small_water_wave_loop", smlua_func_bhv_small_water_wave_loop); + smlua_bind_function(L, "bhv_yellow_coin_init", smlua_func_bhv_yellow_coin_init); + smlua_bind_function(L, "bhv_yellow_coin_loop", smlua_func_bhv_yellow_coin_loop); + smlua_bind_function(L, "bhv_squarish_path_moving_loop", smlua_func_bhv_squarish_path_moving_loop); + smlua_bind_function(L, "bhv_squarish_path_parent_init", smlua_func_bhv_squarish_path_parent_init); + smlua_bind_function(L, "bhv_squarish_path_parent_loop", smlua_func_bhv_squarish_path_parent_loop); + smlua_bind_function(L, "bhv_heave_ho_loop", smlua_func_bhv_heave_ho_loop); + smlua_bind_function(L, "bhv_heave_ho_throw_mario_loop", smlua_func_bhv_heave_ho_throw_mario_loop); + smlua_bind_function(L, "bhv_ccm_touched_star_spawn_loop", smlua_func_bhv_ccm_touched_star_spawn_loop); + smlua_bind_function(L, "bhv_unused_poundable_platform", smlua_func_bhv_unused_poundable_platform); + smlua_bind_function(L, "bhv_beta_trampoline_top_loop", smlua_func_bhv_beta_trampoline_top_loop); + smlua_bind_function(L, "bhv_beta_trampoline_spring_loop", smlua_func_bhv_beta_trampoline_spring_loop); + smlua_bind_function(L, "bhv_jumping_box_loop", smlua_func_bhv_jumping_box_loop); + smlua_bind_function(L, "bhv_boo_cage_init", smlua_func_bhv_boo_cage_init); + smlua_bind_function(L, "bhv_boo_cage_loop", smlua_func_bhv_boo_cage_loop); + smlua_bind_function(L, "bhv_bowser_key_init", smlua_func_bhv_bowser_key_init); + smlua_bind_function(L, "bhv_bowser_key_loop", smlua_func_bhv_bowser_key_loop); + smlua_bind_function(L, "bhv_grand_star_init", smlua_func_bhv_grand_star_init); + smlua_bind_function(L, "bhv_grand_star_loop", smlua_func_bhv_grand_star_loop); + smlua_bind_function(L, "bhv_beta_boo_key_loop", smlua_func_bhv_beta_boo_key_loop); + smlua_bind_function(L, "bhv_alpha_boo_key_loop", smlua_func_bhv_alpha_boo_key_loop); + smlua_bind_function(L, "bhv_bullet_bill_init", smlua_func_bhv_bullet_bill_init); + smlua_bind_function(L, "bhv_bullet_bill_loop", smlua_func_bhv_bullet_bill_loop); + smlua_bind_function(L, "bhv_white_puff_smoke_init", smlua_func_bhv_white_puff_smoke_init); + smlua_bind_function(L, "bhv_bowser_tail_anchor_init", smlua_func_bhv_bowser_tail_anchor_init); + smlua_bind_function(L, "bhv_bowser_tail_anchor_loop", smlua_func_bhv_bowser_tail_anchor_loop); + smlua_bind_function(L, "bhv_bowser_init", smlua_func_bhv_bowser_init); + smlua_bind_function(L, "bhv_bowser_loop", smlua_func_bhv_bowser_loop); + smlua_bind_function(L, "bhv_bowser_body_anchor_init", smlua_func_bhv_bowser_body_anchor_init); + smlua_bind_function(L, "bhv_bowser_body_anchor_loop", smlua_func_bhv_bowser_body_anchor_loop); + smlua_bind_function(L, "bhv_bowser_flame_spawn_loop", smlua_func_bhv_bowser_flame_spawn_loop); + smlua_bind_function(L, "bhv_tilting_bowser_lava_platform_init", smlua_func_bhv_tilting_bowser_lava_platform_init); + smlua_bind_function(L, "bhv_falling_bowser_platform_loop", smlua_func_bhv_falling_bowser_platform_loop); + smlua_bind_function(L, "bhv_blue_bowser_flame_init", smlua_func_bhv_blue_bowser_flame_init); + smlua_bind_function(L, "bhv_blue_bowser_flame_loop", smlua_func_bhv_blue_bowser_flame_loop); + smlua_bind_function(L, "bhv_flame_floating_landing_init", smlua_func_bhv_flame_floating_landing_init); + smlua_bind_function(L, "bhv_flame_floating_landing_loop", smlua_func_bhv_flame_floating_landing_loop); + smlua_bind_function(L, "bhv_blue_flames_group_loop", smlua_func_bhv_blue_flames_group_loop); + smlua_bind_function(L, "bhv_flame_bouncing_init", smlua_func_bhv_flame_bouncing_init); + smlua_bind_function(L, "bhv_flame_bouncing_loop", smlua_func_bhv_flame_bouncing_loop); + smlua_bind_function(L, "bhv_flame_moving_forward_growing_init", smlua_func_bhv_flame_moving_forward_growing_init); + smlua_bind_function(L, "bhv_flame_moving_forward_growing_loop", smlua_func_bhv_flame_moving_forward_growing_loop); + smlua_bind_function(L, "bhv_flame_bowser_init", smlua_func_bhv_flame_bowser_init); + smlua_bind_function(L, "bhv_flame_bowser_loop", smlua_func_bhv_flame_bowser_loop); + smlua_bind_function(L, "bhv_flame_large_burning_out_init", smlua_func_bhv_flame_large_burning_out_init); + smlua_bind_function(L, "bhv_blue_fish_movement_loop", smlua_func_bhv_blue_fish_movement_loop); + smlua_bind_function(L, "bhv_tank_fish_group_loop", smlua_func_bhv_tank_fish_group_loop); + smlua_bind_function(L, "bhv_checkerboard_elevator_group_init", smlua_func_bhv_checkerboard_elevator_group_init); + smlua_bind_function(L, "bhv_checkerboard_elevator_group_loop", smlua_func_bhv_checkerboard_elevator_group_loop); + smlua_bind_function(L, "bhv_checkerboard_platform_init", smlua_func_bhv_checkerboard_platform_init); + smlua_bind_function(L, "bhv_checkerboard_platform_loop", smlua_func_bhv_checkerboard_platform_loop); + smlua_bind_function(L, "bhv_bowser_key_unlock_door_loop", smlua_func_bhv_bowser_key_unlock_door_loop); + smlua_bind_function(L, "bhv_bowser_key_course_exit_loop", smlua_func_bhv_bowser_key_course_exit_loop); + smlua_bind_function(L, "bhv_invisible_objects_under_bridge_init", smlua_func_bhv_invisible_objects_under_bridge_init); + smlua_bind_function(L, "bhv_invisible_objects_under_bridge_loop", smlua_func_bhv_invisible_objects_under_bridge_loop); + smlua_bind_function(L, "bhv_water_level_pillar_init", smlua_func_bhv_water_level_pillar_init); + smlua_bind_function(L, "bhv_water_level_pillar_loop", smlua_func_bhv_water_level_pillar_loop); + smlua_bind_function(L, "bhv_ddd_warp_loop", smlua_func_bhv_ddd_warp_loop); + smlua_bind_function(L, "bhv_moat_grills_loop", smlua_func_bhv_moat_grills_loop); + smlua_bind_function(L, "bhv_rotating_clock_arm_loop", smlua_func_bhv_rotating_clock_arm_loop); + smlua_bind_function(L, "bhv_ukiki_init", smlua_func_bhv_ukiki_init); + smlua_bind_function(L, "bhv_ukiki_loop", smlua_func_bhv_ukiki_loop); + smlua_bind_function(L, "bhv_lll_sinking_rock_block_loop", smlua_func_bhv_lll_sinking_rock_block_loop); + smlua_bind_function(L, "bhv_lll_moving_octagonal_mesh_platform_loop", smlua_func_bhv_lll_moving_octagonal_mesh_platform_loop); + smlua_bind_function(L, "bhv_lll_rotating_block_fire_bars_loop", smlua_func_bhv_lll_rotating_block_fire_bars_loop); + smlua_bind_function(L, "bhv_lll_rotating_hex_flame_loop", smlua_func_bhv_lll_rotating_hex_flame_loop); + smlua_bind_function(L, "bhv_lll_wood_piece_loop", smlua_func_bhv_lll_wood_piece_loop); + smlua_bind_function(L, "bhv_lll_floating_wood_bridge_loop", smlua_func_bhv_lll_floating_wood_bridge_loop); + smlua_bind_function(L, "bhv_volcano_flames_loop", smlua_func_bhv_volcano_flames_loop); + smlua_bind_function(L, "bhv_lll_rotating_hexagonal_ring_loop", smlua_func_bhv_lll_rotating_hexagonal_ring_loop); + smlua_bind_function(L, "bhv_lll_sinking_rectangular_platform_loop", smlua_func_bhv_lll_sinking_rectangular_platform_loop); + smlua_bind_function(L, "bhv_lll_sinking_square_platforms_loop", smlua_func_bhv_lll_sinking_square_platforms_loop); + smlua_bind_function(L, "bhv_koopa_shell_loop", smlua_func_bhv_koopa_shell_loop); + smlua_bind_function(L, "bhv_koopa_shell_flame_loop", smlua_func_bhv_koopa_shell_flame_loop); + smlua_bind_function(L, "bhv_tox_box_loop", smlua_func_bhv_tox_box_loop); + smlua_bind_function(L, "mario_moving_fast_enough_to_make_piranha_plant_bite", smlua_func_mario_moving_fast_enough_to_make_piranha_plant_bite); + smlua_bind_function(L, "bhv_piranha_plant_loop", smlua_func_bhv_piranha_plant_loop); + smlua_bind_function(L, "bhv_lll_bowser_puzzle_piece_loop", smlua_func_bhv_lll_bowser_puzzle_piece_loop); + smlua_bind_function(L, "bhv_lll_bowser_puzzle_loop", smlua_func_bhv_lll_bowser_puzzle_loop); + smlua_bind_function(L, "bhv_tuxies_mother_loop", smlua_func_bhv_tuxies_mother_loop); + smlua_bind_function(L, "bhv_small_penguin_loop", smlua_func_bhv_small_penguin_loop); + smlua_bind_function(L, "bhv_fish_spawner_loop", smlua_func_bhv_fish_spawner_loop); + smlua_bind_function(L, "bhv_fish_loop", smlua_func_bhv_fish_loop); + smlua_bind_function(L, "bhv_wdw_express_elevator_loop", smlua_func_bhv_wdw_express_elevator_loop); + smlua_bind_function(L, "bhv_bub_spawner_loop", smlua_func_bhv_bub_spawner_loop); + smlua_bind_function(L, "bhv_bub_loop", smlua_func_bhv_bub_loop); + smlua_bind_function(L, "bhv_exclamation_box_init", smlua_func_bhv_exclamation_box_init); + smlua_bind_function(L, "bhv_exclamation_box_loop", smlua_func_bhv_exclamation_box_loop); + smlua_bind_function(L, "bhv_rotating_exclamation_box_loop", smlua_func_bhv_rotating_exclamation_box_loop); + smlua_bind_function(L, "bhv_sound_spawner_init", smlua_func_bhv_sound_spawner_init); + smlua_bind_function(L, "bhv_bowsers_sub_loop", smlua_func_bhv_bowsers_sub_loop); + smlua_bind_function(L, "bhv_sushi_shark_loop", smlua_func_bhv_sushi_shark_loop); + smlua_bind_function(L, "bhv_sushi_shark_collision_loop", smlua_func_bhv_sushi_shark_collision_loop); + smlua_bind_function(L, "bhv_jrb_sliding_box_loop", smlua_func_bhv_jrb_sliding_box_loop); + smlua_bind_function(L, "bhv_ship_part_3_loop", smlua_func_bhv_ship_part_3_loop); + smlua_bind_function(L, "bhv_sunken_ship_part_loop", smlua_func_bhv_sunken_ship_part_loop); + smlua_bind_function(L, "bhv_white_puff_1_loop", smlua_func_bhv_white_puff_1_loop); + smlua_bind_function(L, "bhv_white_puff_2_loop", smlua_func_bhv_white_puff_2_loop); + smlua_bind_function(L, "bhv_blue_coin_number_loop", smlua_func_bhv_blue_coin_number_loop); + smlua_bind_function(L, "bhv_blue_coin_switch_init", smlua_func_bhv_blue_coin_switch_init); + smlua_bind_function(L, "bhv_blue_coin_switch_loop", smlua_func_bhv_blue_coin_switch_loop); + smlua_bind_function(L, "bhv_hidden_blue_coin_loop", smlua_func_bhv_hidden_blue_coin_loop); + smlua_bind_function(L, "bhv_openable_cage_door_loop", smlua_func_bhv_openable_cage_door_loop); + smlua_bind_function(L, "bhv_openable_grill_loop", smlua_func_bhv_openable_grill_loop); + smlua_bind_function(L, "bhv_water_level_diamond_loop", smlua_func_bhv_water_level_diamond_loop); + smlua_bind_function(L, "bhv_init_changing_water_level_loop", smlua_func_bhv_init_changing_water_level_loop); + smlua_bind_function(L, "bhv_tweester_sand_particle_loop", smlua_func_bhv_tweester_sand_particle_loop); + smlua_bind_function(L, "bhv_tweester_loop", smlua_func_bhv_tweester_loop); + smlua_bind_function(L, "bhv_merry_go_round_boo_manager_loop", smlua_func_bhv_merry_go_round_boo_manager_loop); + smlua_bind_function(L, "bhv_animated_texture_loop", smlua_func_bhv_animated_texture_loop); + smlua_bind_function(L, "bhv_boo_in_castle_loop", smlua_func_bhv_boo_in_castle_loop); + smlua_bind_function(L, "bhv_boo_with_cage_init", smlua_func_bhv_boo_with_cage_init); + smlua_bind_function(L, "bhv_boo_with_cage_loop", smlua_func_bhv_boo_with_cage_loop); + smlua_bind_function(L, "bhv_boo_init", smlua_func_bhv_boo_init); + smlua_bind_function(L, "bhv_big_boo_loop", smlua_func_bhv_big_boo_loop); + smlua_bind_function(L, "bhv_courtyard_boo_triplet_init", smlua_func_bhv_courtyard_boo_triplet_init); + smlua_bind_function(L, "obj_set_secondary_camera_focus", smlua_func_obj_set_secondary_camera_focus); + smlua_bind_function(L, "bhv_boo_loop", smlua_func_bhv_boo_loop); + smlua_bind_function(L, "bhv_boo_boss_spawned_bridge_loop", smlua_func_bhv_boo_boss_spawned_bridge_loop); + smlua_bind_function(L, "bhv_bbh_tilting_trap_platform_loop", smlua_func_bhv_bbh_tilting_trap_platform_loop); + smlua_bind_function(L, "bhv_haunted_bookshelf_loop", smlua_func_bhv_haunted_bookshelf_loop); + smlua_bind_function(L, "bhv_merry_go_round_loop", smlua_func_bhv_merry_go_round_loop); #ifndef VERSION_JP - BIND_FUNCTION(bhv_play_music_track_when_touched_loop); + smlua_bind_function(L, "bhv_play_music_track_when_touched_loop", smlua_func_bhv_play_music_track_when_touched_loop); #endif - BIND_FUNCTION(bhv_beta_bowser_anchor_loop); - BIND_FUNCTION(bhv_static_checkered_platform_loop); - BIND_FUNCTION(bhv_castle_floor_trap_init); - BIND_FUNCTION(bhv_castle_floor_trap_loop); - BIND_FUNCTION(bhv_floor_trap_in_castle_loop); - BIND_FUNCTION(bhv_sparkle_spawn_loop); - BIND_FUNCTION(bhv_scuttlebug_loop); - BIND_FUNCTION(bhv_scuttlebug_spawn_loop); - BIND_FUNCTION(bhv_whomp_loop); - BIND_FUNCTION(bhv_water_splash_spawn_droplets); - BIND_FUNCTION(bhv_water_droplet_loop); - BIND_FUNCTION(bhv_water_droplet_splash_init); - BIND_FUNCTION(bhv_bubble_splash_init); - BIND_FUNCTION(bhv_idle_water_wave_loop); - BIND_FUNCTION(bhv_shallow_water_splash_init); - BIND_FUNCTION(bhv_wave_trail_shrink); - BIND_FUNCTION(bhv_strong_wind_particle_loop); - BIND_FUNCTION(bhv_sl_snowman_wind_loop); - BIND_FUNCTION(bhv_sl_walking_penguin_loop); - BIND_FUNCTION(bhv_menu_button_init); - BIND_FUNCTION(bhv_menu_button_loop); - BIND_FUNCTION(bhv_menu_button_manager_init); - BIND_FUNCTION(bhv_menu_button_manager_loop); - BIND_FUNCTION(bhv_act_selector_star_type_loop); - BIND_FUNCTION(bhv_act_selector_init); - BIND_FUNCTION(bhv_act_selector_loop); - BIND_FUNCTION(bhv_moving_yellow_coin_init); - BIND_FUNCTION(bhv_moving_yellow_coin_loop); - BIND_FUNCTION(bhv_moving_blue_coin_init); - BIND_FUNCTION(bhv_moving_blue_coin_loop); - BIND_FUNCTION(bhv_blue_coin_sliding_jumping_init); - BIND_FUNCTION(bhv_blue_coin_sliding_loop); - BIND_FUNCTION(bhv_blue_coin_jumping_loop); - BIND_FUNCTION(bhv_seaweed_init); - BIND_FUNCTION(bhv_seaweed_bundle_init); - BIND_FUNCTION(bhv_bobomb_init); - BIND_FUNCTION(bhv_bobomb_loop); - BIND_FUNCTION(bhv_bobomb_fuse_smoke_init); - BIND_FUNCTION(bhv_bobomb_buddy_init); - BIND_FUNCTION(bhv_bobomb_buddy_loop); - BIND_FUNCTION(bhv_cannon_closed_init); - BIND_FUNCTION(bhv_cannon_closed_loop); - BIND_FUNCTION(bhv_whirlpool_init); - BIND_FUNCTION(bhv_whirlpool_loop); - BIND_FUNCTION(bhv_jet_stream_loop); - BIND_FUNCTION(bhv_homing_amp_init); - BIND_FUNCTION(bhv_homing_amp_loop); - BIND_FUNCTION(bhv_circling_amp_init); - BIND_FUNCTION(bhv_circling_amp_loop); - BIND_FUNCTION(bhv_butterfly_init); - BIND_FUNCTION(bhv_butterfly_loop); - BIND_FUNCTION(bhv_hoot_init); - BIND_FUNCTION(bhv_hoot_loop); - BIND_FUNCTION(bhv_beta_holdable_object_init); - BIND_FUNCTION(bhv_beta_holdable_object_loop); - BIND_FUNCTION(bhv_object_bubble_init); - BIND_FUNCTION(bhv_object_bubble_loop); - BIND_FUNCTION(bhv_object_water_wave_init); - BIND_FUNCTION(bhv_object_water_wave_loop); - BIND_FUNCTION(bhv_explosion_init); - BIND_FUNCTION(bhv_explosion_loop); - BIND_FUNCTION(bhv_bobomb_bully_death_smoke_init); - BIND_FUNCTION(bhv_bobomb_explosion_bubble_init); - BIND_FUNCTION(bhv_bobomb_explosion_bubble_loop); - BIND_FUNCTION(bhv_respawner_loop); - BIND_FUNCTION(bhv_small_bully_init); - BIND_FUNCTION(bhv_bully_loop); - BIND_FUNCTION(bhv_big_bully_init); - BIND_FUNCTION(bhv_big_bully_with_minions_init); - BIND_FUNCTION(bhv_big_bully_with_minions_loop); - BIND_FUNCTION(bhv_jet_stream_ring_spawner_loop); - BIND_FUNCTION(bhv_jet_stream_water_ring_init); - BIND_FUNCTION(bhv_jet_stream_water_ring_loop); - BIND_FUNCTION(bhv_manta_ray_water_ring_init); - BIND_FUNCTION(bhv_manta_ray_water_ring_loop); - BIND_FUNCTION(bhv_bowser_bomb_loop); - BIND_FUNCTION(bhv_bowser_bomb_explosion_loop); - BIND_FUNCTION(bhv_bowser_bomb_smoke_loop); - BIND_FUNCTION(bhv_celebration_star_init); - BIND_FUNCTION(bhv_celebration_star_loop); - BIND_FUNCTION(bhv_celebration_star_sparkle_loop); - BIND_FUNCTION(bhv_star_key_collection_puff_spawner_loop); - BIND_FUNCTION(bhv_lll_drawbridge_spawner_init); - BIND_FUNCTION(bhv_lll_drawbridge_spawner_loop); - BIND_FUNCTION(bhv_lll_drawbridge_loop); - BIND_FUNCTION(bhv_small_bomp_init); - BIND_FUNCTION(bhv_small_bomp_loop); - BIND_FUNCTION(bhv_large_bomp_init); - BIND_FUNCTION(bhv_large_bomp_loop); - BIND_FUNCTION(bhv_wf_sliding_platform_init); - BIND_FUNCTION(bhv_wf_sliding_platform_loop); - BIND_FUNCTION(bhv_moneybag_init); - BIND_FUNCTION(bhv_moneybag_loop); - BIND_FUNCTION(bhv_moneybag_hidden_loop); - BIND_FUNCTION(bhv_bob_pit_bowling_ball_init); - BIND_FUNCTION(bhv_bob_pit_bowling_ball_loop); - BIND_FUNCTION(bhv_free_bowling_ball_init); - BIND_FUNCTION(bhv_free_bowling_ball_loop); - BIND_FUNCTION(bhv_bowling_ball_init); - BIND_FUNCTION(bhv_bowling_ball_loop); - BIND_FUNCTION(bhv_generic_bowling_ball_spawner_init); - BIND_FUNCTION(bhv_generic_bowling_ball_spawner_loop); - BIND_FUNCTION(bhv_thi_bowling_ball_spawner_loop); - BIND_FUNCTION(bhv_rr_cruiser_wing_init); - BIND_FUNCTION(bhv_rr_cruiser_wing_loop); - BIND_FUNCTION(bhv_spindel_init); - BIND_FUNCTION(bhv_spindel_loop); - BIND_FUNCTION(bhv_ssl_moving_pyramid_wall_init); - BIND_FUNCTION(bhv_ssl_moving_pyramid_wall_loop); - BIND_FUNCTION(bhv_pyramid_elevator_init); - BIND_FUNCTION(bhv_pyramid_elevator_loop); - BIND_FUNCTION(bhv_pyramid_elevator_trajectory_marker_ball_loop); - BIND_FUNCTION(bhv_pyramid_top_init); - BIND_FUNCTION(bhv_pyramid_top_loop); - BIND_FUNCTION(bhv_pyramid_top_fragment_init); - BIND_FUNCTION(bhv_pyramid_top_fragment_loop); - BIND_FUNCTION(bhv_pyramid_pillar_touch_detector_loop); - BIND_FUNCTION(bhv_waterfall_sound_loop); - BIND_FUNCTION(bhv_volcano_sound_loop); - BIND_FUNCTION(bhv_castle_flag_init); - BIND_FUNCTION(bhv_birds_sound_loop); - BIND_FUNCTION(bhv_ambient_sounds_init); - BIND_FUNCTION(bhv_sand_sound_loop); - BIND_FUNCTION(bhv_castle_cannon_grate_init); - BIND_FUNCTION(bhv_snowmans_bottom_init); - BIND_FUNCTION(bhv_snowmans_bottom_loop); - BIND_FUNCTION(bhv_snowmans_head_init); - BIND_FUNCTION(bhv_snowmans_head_loop); - BIND_FUNCTION(bhv_snowmans_body_checkpoint_loop); - BIND_FUNCTION(bhv_big_boulder_init); - BIND_FUNCTION(bhv_big_boulder_loop); - BIND_FUNCTION(bhv_big_boulder_generator_loop); - BIND_FUNCTION(bhv_wing_cap_init); - BIND_FUNCTION(bhv_wing_vanish_cap_loop); - BIND_FUNCTION(bhv_metal_cap_init); - BIND_FUNCTION(bhv_metal_cap_loop); - BIND_FUNCTION(bhv_normal_cap_init); - BIND_FUNCTION(bhv_normal_cap_loop); - BIND_FUNCTION(bhv_vanish_cap_init); - BIND_FUNCTION(bhv_star_number_loop); - BIND_FUNCTION(spawn_star_number); - BIND_FUNCTION(bhv_collect_star_init); - BIND_FUNCTION(bhv_collect_star_loop); - BIND_FUNCTION(bhv_star_spawn_init); - BIND_FUNCTION(bhv_star_spawn_loop); - BIND_FUNCTION(bhv_hidden_red_coin_star_init); - BIND_FUNCTION(bhv_hidden_red_coin_star_loop); - BIND_FUNCTION(bhv_red_coin_init); - BIND_FUNCTION(bhv_red_coin_loop); - BIND_FUNCTION(bhv_bowser_course_red_coin_star_loop); - BIND_FUNCTION(bhv_hidden_star_init); - BIND_FUNCTION(bhv_hidden_star_loop); - BIND_FUNCTION(bhv_hidden_star_trigger_loop); - BIND_FUNCTION(bhv_ttm_rolling_log_init); - BIND_FUNCTION(bhv_rolling_log_loop); - BIND_FUNCTION(bhv_lll_rolling_log_init); - BIND_FUNCTION(bhv_1up_trigger_init); - BIND_FUNCTION(bhv_1up_common_init); - BIND_FUNCTION(bhv_1up_walking_loop); - BIND_FUNCTION(bhv_1up_running_away_loop); - BIND_FUNCTION(bhv_1up_sliding_loop); - BIND_FUNCTION(bhv_1up_init); - BIND_FUNCTION(bhv_1up_loop); - BIND_FUNCTION(bhv_1up_jump_on_approach_loop); - BIND_FUNCTION(bhv_1up_hidden_loop); - BIND_FUNCTION(bhv_1up_hidden_trigger_loop); - BIND_FUNCTION(bhv_1up_hidden_in_pole_loop); - BIND_FUNCTION(bhv_1up_hidden_in_pole_trigger_loop); - BIND_FUNCTION(bhv_1up_hidden_in_pole_spawner_loop); - BIND_FUNCTION(bhv_controllable_platform_init); - BIND_FUNCTION(bhv_controllable_platform_loop); - BIND_FUNCTION(bhv_controllable_platform_sub_loop); - BIND_FUNCTION(bhv_breakable_box_small_init); - BIND_FUNCTION(bhv_breakable_box_small_loop); - BIND_FUNCTION(bhv_sliding_snow_mound_loop); - BIND_FUNCTION(bhv_snow_mound_spawn_loop); - BIND_FUNCTION(bhv_floating_platform_loop); - BIND_FUNCTION(bhv_arrow_lift_loop); - BIND_FUNCTION(bhv_orange_number_init); - BIND_FUNCTION(bhv_orange_number_loop); - BIND_FUNCTION(bhv_manta_ray_init); - BIND_FUNCTION(bhv_manta_ray_loop); - BIND_FUNCTION(bhv_falling_pillar_init); - BIND_FUNCTION(bhv_falling_pillar_loop); - BIND_FUNCTION(bhv_falling_pillar_hitbox_loop); - BIND_FUNCTION(bhv_jrb_floating_box_loop); - BIND_FUNCTION(bhv_decorative_pendulum_init); - BIND_FUNCTION(bhv_decorative_pendulum_loop); - BIND_FUNCTION(bhv_treasure_chest_ship_init); - BIND_FUNCTION(bhv_treasure_chest_ship_loop); - BIND_FUNCTION(bhv_treasure_chest_jrb_init); - BIND_FUNCTION(bhv_treasure_chest_jrb_loop); - BIND_FUNCTION(bhv_treasure_chest_init); - BIND_FUNCTION(bhv_treasure_chest_loop); - BIND_FUNCTION(bhv_treasure_chest_bottom_init); - BIND_FUNCTION(bhv_treasure_chest_bottom_loop); - BIND_FUNCTION(bhv_treasure_chest_top_loop); - BIND_FUNCTION(bhv_mips_init); - BIND_FUNCTION(bhv_mips_loop); - BIND_FUNCTION(bhv_yoshi_init); - BIND_FUNCTION(bhv_koopa_init); - BIND_FUNCTION(bhv_koopa_update); - BIND_FUNCTION(bhv_koopa_race_endpoint_update); - BIND_FUNCTION(bhv_pokey_update); - BIND_FUNCTION(bhv_pokey_body_part_update); - BIND_FUNCTION(bhv_swoop_update); - BIND_FUNCTION(bhv_fly_guy_update); - BIND_FUNCTION(bhv_goomba_init); - BIND_FUNCTION(bhv_goomba_update); - BIND_FUNCTION(bhv_goomba_triplet_spawner_update); - BIND_FUNCTION(bhv_chain_chomp_update); - BIND_FUNCTION(bhv_chain_chomp_chain_part_update); - BIND_FUNCTION(bhv_wooden_post_update); - BIND_FUNCTION(bhv_chain_chomp_gate_init); - BIND_FUNCTION(bhv_chain_chomp_gate_update); - BIND_FUNCTION(bhv_wiggler_update); - BIND_FUNCTION(bhv_wiggler_body_part_update); - BIND_FUNCTION(bhv_enemy_lakitu_update); - BIND_FUNCTION(bhv_camera_lakitu_init); - BIND_FUNCTION(bhv_camera_lakitu_update); - BIND_FUNCTION(bhv_cloud_update); - BIND_FUNCTION(bhv_cloud_part_update); - BIND_FUNCTION(bhv_spiny_update); - BIND_FUNCTION(bhv_monty_mole_init); - BIND_FUNCTION(bhv_monty_mole_update); - BIND_FUNCTION(bhv_monty_mole_hole_update); - BIND_FUNCTION(bhv_monty_mole_rock_update); - BIND_FUNCTION(bhv_platform_on_track_init); - BIND_FUNCTION(bhv_platform_on_track_update); - BIND_FUNCTION(bhv_track_ball_update); - BIND_FUNCTION(bhv_seesaw_platform_init); - BIND_FUNCTION(bhv_seesaw_platform_update); - BIND_FUNCTION(bhv_ferris_wheel_axle_init); - BIND_FUNCTION(bhv_ferris_wheel_platform_init); - BIND_FUNCTION(bhv_ferris_wheel_platform_update); - BIND_FUNCTION(bhv_water_bomb_spawner_update); - BIND_FUNCTION(bhv_water_bomb_update); - BIND_FUNCTION(bhv_water_bomb_shadow_update); - BIND_FUNCTION(bhv_ttc_rotating_solid_init); - BIND_FUNCTION(bhv_ttc_rotating_solid_update); - BIND_FUNCTION(bhv_ttc_pendulum_init); - BIND_FUNCTION(bhv_ttc_pendulum_update); - BIND_FUNCTION(bhv_ttc_treadmill_init); - BIND_FUNCTION(bhv_ttc_treadmill_update); - BIND_FUNCTION(bhv_ttc_moving_bar_init); - BIND_FUNCTION(bhv_ttc_moving_bar_update); - BIND_FUNCTION(bhv_ttc_cog_init); - BIND_FUNCTION(bhv_ttc_cog_update); - BIND_FUNCTION(bhv_ttc_pit_block_init); - BIND_FUNCTION(bhv_ttc_pit_block_update); - BIND_FUNCTION(bhv_ttc_elevator_init); - BIND_FUNCTION(bhv_ttc_elevator_update); - BIND_FUNCTION(bhv_ttc_2d_rotator_init); - BIND_FUNCTION(bhv_ttc_2d_rotator_update); - BIND_FUNCTION(bhv_ttc_spinner_update); - BIND_FUNCTION(bhv_mr_blizzard_init); - BIND_FUNCTION(bhv_mr_blizzard_update); - BIND_FUNCTION(bhv_mr_blizzard_snowball); - BIND_FUNCTION(bhv_sliding_plat_2_init); - BIND_FUNCTION(bhv_sliding_plat_2_loop); - BIND_FUNCTION(bhv_rotating_octagonal_plat_init); - BIND_FUNCTION(bhv_rotating_octagonal_plat_loop); - BIND_FUNCTION(bhv_animates_on_floor_switch_press_init); - BIND_FUNCTION(bhv_animates_on_floor_switch_press_loop); - BIND_FUNCTION(bhv_activated_back_and_forth_platform_init); - BIND_FUNCTION(bhv_activated_back_and_forth_platform_update); - BIND_FUNCTION(bhv_recovery_heart_loop); - BIND_FUNCTION(bhv_water_bomb_cannon_loop); - BIND_FUNCTION(bhv_bubble_cannon_barrel_loop); - BIND_FUNCTION(bhv_unagi_init); - BIND_FUNCTION(bhv_unagi_loop); - BIND_FUNCTION(bhv_unagi_subobject_loop); - BIND_FUNCTION(bhv_dorrie_update); - BIND_FUNCTION(bhv_haunted_chair_init); - BIND_FUNCTION(bhv_haunted_chair_loop); - BIND_FUNCTION(bhv_mad_piano_update); - BIND_FUNCTION(bhv_flying_bookend_loop); - BIND_FUNCTION(bhv_bookend_spawn_loop); - BIND_FUNCTION(bhv_haunted_bookshelf_manager_loop); - BIND_FUNCTION(bhv_book_switch_loop); - BIND_FUNCTION(bhv_fire_piranha_plant_init); - BIND_FUNCTION(bhv_fire_piranha_plant_update); - BIND_FUNCTION(bhv_small_piranha_flame_loop); - BIND_FUNCTION(bhv_fire_spitter_update); - BIND_FUNCTION(bhv_fly_guy_flame_loop); - BIND_FUNCTION(bhv_snufit_loop); - BIND_FUNCTION(bhv_snufit_balls_loop); - BIND_FUNCTION(bhv_horizontal_grindel_init); - BIND_FUNCTION(bhv_horizontal_grindel_update); - BIND_FUNCTION(bhv_eyerok_boss_init); - BIND_FUNCTION(bhv_eyerok_boss_loop); - BIND_FUNCTION(bhv_eyerok_hand_loop); - BIND_FUNCTION(bhv_klepto_init); - BIND_FUNCTION(bhv_klepto_update); - BIND_FUNCTION(bhv_bird_update); - BIND_FUNCTION(bhv_racing_penguin_init); - BIND_FUNCTION(bhv_racing_penguin_update); - BIND_FUNCTION(bhv_penguin_race_finish_line_update); - BIND_FUNCTION(bhv_penguin_race_shortcut_check_update); - BIND_FUNCTION(bhv_coffin_spawner_loop); - BIND_FUNCTION(bhv_coffin_loop); - BIND_FUNCTION(bhv_clam_loop); - BIND_FUNCTION(bhv_skeeter_update); - BIND_FUNCTION(bhv_skeeter_wave_update); - BIND_FUNCTION(bhv_swing_platform_init); - BIND_FUNCTION(bhv_swing_platform_update); - BIND_FUNCTION(bhv_donut_platform_spawner_update); - BIND_FUNCTION(bhv_donut_platform_update); - BIND_FUNCTION(bhv_ddd_pole_init); - BIND_FUNCTION(bhv_ddd_pole_update); - BIND_FUNCTION(bhv_red_coin_star_marker_init); - BIND_FUNCTION(bhv_triplet_butterfly_update); - BIND_FUNCTION(bhv_bubba_loop); - BIND_FUNCTION(bhv_intro_lakitu_loop); - BIND_FUNCTION(bhv_intro_peach_loop); - BIND_FUNCTION(bhv_end_birds_1_loop); - BIND_FUNCTION(bhv_end_birds_2_loop); - BIND_FUNCTION(bhv_intro_scene_loop); - BIND_FUNCTION(bhv_yoshi_loop); - BIND_FUNCTION(bhv_volcano_trap_loop); - BIND_FUNCTION(uv_update_scroll); - BIND_FUNCTION(bhv_ambient_light_update); - BIND_FUNCTION(bhv_point_light_init); - BIND_FUNCTION(bhv_point_light_loop); - //BIND_FUNCTION(geo_move_mario_part_from_parent); <--- UNIMPLEMENTED - //BIND_FUNCTION(geo_bits_bowser_coloring); <--- UNIMPLEMENTED - //BIND_FUNCTION(geo_update_body_rot_from_parent); <--- UNIMPLEMENTED - //BIND_FUNCTION(geo_switch_bowser_eyes); <--- UNIMPLEMENTED - //BIND_FUNCTION(geo_switch_tuxie_mother_eyes); <--- UNIMPLEMENTED - //BIND_FUNCTION(geo_update_held_mario_pos); <--- UNIMPLEMENTED - //BIND_FUNCTION(geo_snufit_move_mask); <--- UNIMPLEMENTED - //BIND_FUNCTION(geo_snufit_scale_body); <--- UNIMPLEMENTED - //BIND_FUNCTION(geo_scale_bowser_key); <--- UNIMPLEMENTED - BIND_FUNCTION(spawn_default_star); - BIND_FUNCTION(spawn_red_coin_cutscene_star); - BIND_FUNCTION(spawn_no_exit_star); + smlua_bind_function(L, "bhv_beta_bowser_anchor_loop", smlua_func_bhv_beta_bowser_anchor_loop); + smlua_bind_function(L, "bhv_static_checkered_platform_loop", smlua_func_bhv_static_checkered_platform_loop); + smlua_bind_function(L, "bhv_castle_floor_trap_init", smlua_func_bhv_castle_floor_trap_init); + smlua_bind_function(L, "bhv_castle_floor_trap_loop", smlua_func_bhv_castle_floor_trap_loop); + smlua_bind_function(L, "bhv_floor_trap_in_castle_loop", smlua_func_bhv_floor_trap_in_castle_loop); + smlua_bind_function(L, "bhv_sparkle_spawn_loop", smlua_func_bhv_sparkle_spawn_loop); + smlua_bind_function(L, "bhv_scuttlebug_loop", smlua_func_bhv_scuttlebug_loop); + smlua_bind_function(L, "bhv_scuttlebug_spawn_loop", smlua_func_bhv_scuttlebug_spawn_loop); + smlua_bind_function(L, "bhv_whomp_loop", smlua_func_bhv_whomp_loop); + smlua_bind_function(L, "bhv_water_splash_spawn_droplets", smlua_func_bhv_water_splash_spawn_droplets); + smlua_bind_function(L, "bhv_water_droplet_loop", smlua_func_bhv_water_droplet_loop); + smlua_bind_function(L, "bhv_water_droplet_splash_init", smlua_func_bhv_water_droplet_splash_init); + smlua_bind_function(L, "bhv_bubble_splash_init", smlua_func_bhv_bubble_splash_init); + smlua_bind_function(L, "bhv_idle_water_wave_loop", smlua_func_bhv_idle_water_wave_loop); + smlua_bind_function(L, "bhv_shallow_water_splash_init", smlua_func_bhv_shallow_water_splash_init); + smlua_bind_function(L, "bhv_wave_trail_shrink", smlua_func_bhv_wave_trail_shrink); + smlua_bind_function(L, "bhv_strong_wind_particle_loop", smlua_func_bhv_strong_wind_particle_loop); + smlua_bind_function(L, "bhv_sl_snowman_wind_loop", smlua_func_bhv_sl_snowman_wind_loop); + smlua_bind_function(L, "bhv_sl_walking_penguin_loop", smlua_func_bhv_sl_walking_penguin_loop); + smlua_bind_function(L, "bhv_menu_button_init", smlua_func_bhv_menu_button_init); + smlua_bind_function(L, "bhv_menu_button_loop", smlua_func_bhv_menu_button_loop); + smlua_bind_function(L, "bhv_menu_button_manager_init", smlua_func_bhv_menu_button_manager_init); + smlua_bind_function(L, "bhv_menu_button_manager_loop", smlua_func_bhv_menu_button_manager_loop); + smlua_bind_function(L, "bhv_act_selector_star_type_loop", smlua_func_bhv_act_selector_star_type_loop); + smlua_bind_function(L, "bhv_act_selector_init", smlua_func_bhv_act_selector_init); + smlua_bind_function(L, "bhv_act_selector_loop", smlua_func_bhv_act_selector_loop); + smlua_bind_function(L, "bhv_moving_yellow_coin_init", smlua_func_bhv_moving_yellow_coin_init); + smlua_bind_function(L, "bhv_moving_yellow_coin_loop", smlua_func_bhv_moving_yellow_coin_loop); + smlua_bind_function(L, "bhv_moving_blue_coin_init", smlua_func_bhv_moving_blue_coin_init); + smlua_bind_function(L, "bhv_moving_blue_coin_loop", smlua_func_bhv_moving_blue_coin_loop); + smlua_bind_function(L, "bhv_blue_coin_sliding_jumping_init", smlua_func_bhv_blue_coin_sliding_jumping_init); + smlua_bind_function(L, "bhv_blue_coin_sliding_loop", smlua_func_bhv_blue_coin_sliding_loop); + smlua_bind_function(L, "bhv_blue_coin_jumping_loop", smlua_func_bhv_blue_coin_jumping_loop); + smlua_bind_function(L, "bhv_seaweed_init", smlua_func_bhv_seaweed_init); + smlua_bind_function(L, "bhv_seaweed_bundle_init", smlua_func_bhv_seaweed_bundle_init); + smlua_bind_function(L, "bhv_bobomb_init", smlua_func_bhv_bobomb_init); + smlua_bind_function(L, "bhv_bobomb_loop", smlua_func_bhv_bobomb_loop); + smlua_bind_function(L, "bhv_bobomb_fuse_smoke_init", smlua_func_bhv_bobomb_fuse_smoke_init); + smlua_bind_function(L, "bhv_bobomb_buddy_init", smlua_func_bhv_bobomb_buddy_init); + smlua_bind_function(L, "bhv_bobomb_buddy_loop", smlua_func_bhv_bobomb_buddy_loop); + smlua_bind_function(L, "bhv_cannon_closed_init", smlua_func_bhv_cannon_closed_init); + smlua_bind_function(L, "bhv_cannon_closed_loop", smlua_func_bhv_cannon_closed_loop); + smlua_bind_function(L, "bhv_whirlpool_init", smlua_func_bhv_whirlpool_init); + smlua_bind_function(L, "bhv_whirlpool_loop", smlua_func_bhv_whirlpool_loop); + smlua_bind_function(L, "bhv_jet_stream_loop", smlua_func_bhv_jet_stream_loop); + smlua_bind_function(L, "bhv_homing_amp_init", smlua_func_bhv_homing_amp_init); + smlua_bind_function(L, "bhv_homing_amp_loop", smlua_func_bhv_homing_amp_loop); + smlua_bind_function(L, "bhv_circling_amp_init", smlua_func_bhv_circling_amp_init); + smlua_bind_function(L, "bhv_circling_amp_loop", smlua_func_bhv_circling_amp_loop); + smlua_bind_function(L, "bhv_butterfly_init", smlua_func_bhv_butterfly_init); + smlua_bind_function(L, "bhv_butterfly_loop", smlua_func_bhv_butterfly_loop); + smlua_bind_function(L, "bhv_hoot_init", smlua_func_bhv_hoot_init); + smlua_bind_function(L, "bhv_hoot_loop", smlua_func_bhv_hoot_loop); + smlua_bind_function(L, "bhv_beta_holdable_object_init", smlua_func_bhv_beta_holdable_object_init); + smlua_bind_function(L, "bhv_beta_holdable_object_loop", smlua_func_bhv_beta_holdable_object_loop); + smlua_bind_function(L, "bhv_object_bubble_init", smlua_func_bhv_object_bubble_init); + smlua_bind_function(L, "bhv_object_bubble_loop", smlua_func_bhv_object_bubble_loop); + smlua_bind_function(L, "bhv_object_water_wave_init", smlua_func_bhv_object_water_wave_init); + smlua_bind_function(L, "bhv_object_water_wave_loop", smlua_func_bhv_object_water_wave_loop); + smlua_bind_function(L, "bhv_explosion_init", smlua_func_bhv_explosion_init); + smlua_bind_function(L, "bhv_explosion_loop", smlua_func_bhv_explosion_loop); + smlua_bind_function(L, "bhv_bobomb_bully_death_smoke_init", smlua_func_bhv_bobomb_bully_death_smoke_init); + smlua_bind_function(L, "bhv_bobomb_explosion_bubble_init", smlua_func_bhv_bobomb_explosion_bubble_init); + smlua_bind_function(L, "bhv_bobomb_explosion_bubble_loop", smlua_func_bhv_bobomb_explosion_bubble_loop); + smlua_bind_function(L, "bhv_respawner_loop", smlua_func_bhv_respawner_loop); + smlua_bind_function(L, "bhv_small_bully_init", smlua_func_bhv_small_bully_init); + smlua_bind_function(L, "bhv_bully_loop", smlua_func_bhv_bully_loop); + smlua_bind_function(L, "bhv_big_bully_init", smlua_func_bhv_big_bully_init); + smlua_bind_function(L, "bhv_big_bully_with_minions_init", smlua_func_bhv_big_bully_with_minions_init); + smlua_bind_function(L, "bhv_big_bully_with_minions_loop", smlua_func_bhv_big_bully_with_minions_loop); + smlua_bind_function(L, "bhv_jet_stream_ring_spawner_loop", smlua_func_bhv_jet_stream_ring_spawner_loop); + smlua_bind_function(L, "bhv_jet_stream_water_ring_init", smlua_func_bhv_jet_stream_water_ring_init); + smlua_bind_function(L, "bhv_jet_stream_water_ring_loop", smlua_func_bhv_jet_stream_water_ring_loop); + smlua_bind_function(L, "bhv_manta_ray_water_ring_init", smlua_func_bhv_manta_ray_water_ring_init); + smlua_bind_function(L, "bhv_manta_ray_water_ring_loop", smlua_func_bhv_manta_ray_water_ring_loop); + smlua_bind_function(L, "bhv_bowser_bomb_loop", smlua_func_bhv_bowser_bomb_loop); + smlua_bind_function(L, "bhv_bowser_bomb_explosion_loop", smlua_func_bhv_bowser_bomb_explosion_loop); + smlua_bind_function(L, "bhv_bowser_bomb_smoke_loop", smlua_func_bhv_bowser_bomb_smoke_loop); + smlua_bind_function(L, "bhv_celebration_star_init", smlua_func_bhv_celebration_star_init); + smlua_bind_function(L, "bhv_celebration_star_loop", smlua_func_bhv_celebration_star_loop); + smlua_bind_function(L, "bhv_celebration_star_sparkle_loop", smlua_func_bhv_celebration_star_sparkle_loop); + smlua_bind_function(L, "bhv_star_key_collection_puff_spawner_loop", smlua_func_bhv_star_key_collection_puff_spawner_loop); + smlua_bind_function(L, "bhv_lll_drawbridge_spawner_init", smlua_func_bhv_lll_drawbridge_spawner_init); + smlua_bind_function(L, "bhv_lll_drawbridge_spawner_loop", smlua_func_bhv_lll_drawbridge_spawner_loop); + smlua_bind_function(L, "bhv_lll_drawbridge_loop", smlua_func_bhv_lll_drawbridge_loop); + smlua_bind_function(L, "bhv_small_bomp_init", smlua_func_bhv_small_bomp_init); + smlua_bind_function(L, "bhv_small_bomp_loop", smlua_func_bhv_small_bomp_loop); + smlua_bind_function(L, "bhv_large_bomp_init", smlua_func_bhv_large_bomp_init); + smlua_bind_function(L, "bhv_large_bomp_loop", smlua_func_bhv_large_bomp_loop); + smlua_bind_function(L, "bhv_wf_sliding_platform_init", smlua_func_bhv_wf_sliding_platform_init); + smlua_bind_function(L, "bhv_wf_sliding_platform_loop", smlua_func_bhv_wf_sliding_platform_loop); + smlua_bind_function(L, "bhv_moneybag_init", smlua_func_bhv_moneybag_init); + smlua_bind_function(L, "bhv_moneybag_loop", smlua_func_bhv_moneybag_loop); + smlua_bind_function(L, "bhv_moneybag_hidden_loop", smlua_func_bhv_moneybag_hidden_loop); + smlua_bind_function(L, "bhv_bob_pit_bowling_ball_init", smlua_func_bhv_bob_pit_bowling_ball_init); + smlua_bind_function(L, "bhv_bob_pit_bowling_ball_loop", smlua_func_bhv_bob_pit_bowling_ball_loop); + smlua_bind_function(L, "bhv_free_bowling_ball_init", smlua_func_bhv_free_bowling_ball_init); + smlua_bind_function(L, "bhv_free_bowling_ball_loop", smlua_func_bhv_free_bowling_ball_loop); + smlua_bind_function(L, "bhv_bowling_ball_init", smlua_func_bhv_bowling_ball_init); + smlua_bind_function(L, "bhv_bowling_ball_loop", smlua_func_bhv_bowling_ball_loop); + smlua_bind_function(L, "bhv_generic_bowling_ball_spawner_init", smlua_func_bhv_generic_bowling_ball_spawner_init); + smlua_bind_function(L, "bhv_generic_bowling_ball_spawner_loop", smlua_func_bhv_generic_bowling_ball_spawner_loop); + smlua_bind_function(L, "bhv_thi_bowling_ball_spawner_loop", smlua_func_bhv_thi_bowling_ball_spawner_loop); + smlua_bind_function(L, "bhv_rr_cruiser_wing_init", smlua_func_bhv_rr_cruiser_wing_init); + smlua_bind_function(L, "bhv_rr_cruiser_wing_loop", smlua_func_bhv_rr_cruiser_wing_loop); + smlua_bind_function(L, "bhv_spindel_init", smlua_func_bhv_spindel_init); + smlua_bind_function(L, "bhv_spindel_loop", smlua_func_bhv_spindel_loop); + smlua_bind_function(L, "bhv_ssl_moving_pyramid_wall_init", smlua_func_bhv_ssl_moving_pyramid_wall_init); + smlua_bind_function(L, "bhv_ssl_moving_pyramid_wall_loop", smlua_func_bhv_ssl_moving_pyramid_wall_loop); + smlua_bind_function(L, "bhv_pyramid_elevator_init", smlua_func_bhv_pyramid_elevator_init); + smlua_bind_function(L, "bhv_pyramid_elevator_loop", smlua_func_bhv_pyramid_elevator_loop); + smlua_bind_function(L, "bhv_pyramid_elevator_trajectory_marker_ball_loop", smlua_func_bhv_pyramid_elevator_trajectory_marker_ball_loop); + smlua_bind_function(L, "bhv_pyramid_top_init", smlua_func_bhv_pyramid_top_init); + smlua_bind_function(L, "bhv_pyramid_top_loop", smlua_func_bhv_pyramid_top_loop); + smlua_bind_function(L, "bhv_pyramid_top_fragment_init", smlua_func_bhv_pyramid_top_fragment_init); + smlua_bind_function(L, "bhv_pyramid_top_fragment_loop", smlua_func_bhv_pyramid_top_fragment_loop); + smlua_bind_function(L, "bhv_pyramid_pillar_touch_detector_loop", smlua_func_bhv_pyramid_pillar_touch_detector_loop); + smlua_bind_function(L, "bhv_waterfall_sound_loop", smlua_func_bhv_waterfall_sound_loop); + smlua_bind_function(L, "bhv_volcano_sound_loop", smlua_func_bhv_volcano_sound_loop); + smlua_bind_function(L, "bhv_castle_flag_init", smlua_func_bhv_castle_flag_init); + smlua_bind_function(L, "bhv_birds_sound_loop", smlua_func_bhv_birds_sound_loop); + smlua_bind_function(L, "bhv_ambient_sounds_init", smlua_func_bhv_ambient_sounds_init); + smlua_bind_function(L, "bhv_sand_sound_loop", smlua_func_bhv_sand_sound_loop); + smlua_bind_function(L, "bhv_castle_cannon_grate_init", smlua_func_bhv_castle_cannon_grate_init); + smlua_bind_function(L, "bhv_snowmans_bottom_init", smlua_func_bhv_snowmans_bottom_init); + smlua_bind_function(L, "bhv_snowmans_bottom_loop", smlua_func_bhv_snowmans_bottom_loop); + smlua_bind_function(L, "bhv_snowmans_head_init", smlua_func_bhv_snowmans_head_init); + smlua_bind_function(L, "bhv_snowmans_head_loop", smlua_func_bhv_snowmans_head_loop); + smlua_bind_function(L, "bhv_snowmans_body_checkpoint_loop", smlua_func_bhv_snowmans_body_checkpoint_loop); + smlua_bind_function(L, "bhv_big_boulder_init", smlua_func_bhv_big_boulder_init); + smlua_bind_function(L, "bhv_big_boulder_loop", smlua_func_bhv_big_boulder_loop); + smlua_bind_function(L, "bhv_big_boulder_generator_loop", smlua_func_bhv_big_boulder_generator_loop); + smlua_bind_function(L, "bhv_wing_cap_init", smlua_func_bhv_wing_cap_init); + smlua_bind_function(L, "bhv_wing_vanish_cap_loop", smlua_func_bhv_wing_vanish_cap_loop); + smlua_bind_function(L, "bhv_metal_cap_init", smlua_func_bhv_metal_cap_init); + smlua_bind_function(L, "bhv_metal_cap_loop", smlua_func_bhv_metal_cap_loop); + smlua_bind_function(L, "bhv_normal_cap_init", smlua_func_bhv_normal_cap_init); + smlua_bind_function(L, "bhv_normal_cap_loop", smlua_func_bhv_normal_cap_loop); + smlua_bind_function(L, "bhv_vanish_cap_init", smlua_func_bhv_vanish_cap_init); + smlua_bind_function(L, "bhv_star_number_loop", smlua_func_bhv_star_number_loop); + smlua_bind_function(L, "spawn_star_number", smlua_func_spawn_star_number); + smlua_bind_function(L, "bhv_collect_star_init", smlua_func_bhv_collect_star_init); + smlua_bind_function(L, "bhv_collect_star_loop", smlua_func_bhv_collect_star_loop); + smlua_bind_function(L, "bhv_star_spawn_init", smlua_func_bhv_star_spawn_init); + smlua_bind_function(L, "bhv_star_spawn_loop", smlua_func_bhv_star_spawn_loop); + smlua_bind_function(L, "bhv_hidden_red_coin_star_init", smlua_func_bhv_hidden_red_coin_star_init); + smlua_bind_function(L, "bhv_hidden_red_coin_star_loop", smlua_func_bhv_hidden_red_coin_star_loop); + smlua_bind_function(L, "bhv_red_coin_init", smlua_func_bhv_red_coin_init); + smlua_bind_function(L, "bhv_red_coin_loop", smlua_func_bhv_red_coin_loop); + smlua_bind_function(L, "bhv_bowser_course_red_coin_star_loop", smlua_func_bhv_bowser_course_red_coin_star_loop); + smlua_bind_function(L, "bhv_hidden_star_init", smlua_func_bhv_hidden_star_init); + smlua_bind_function(L, "bhv_hidden_star_loop", smlua_func_bhv_hidden_star_loop); + smlua_bind_function(L, "bhv_hidden_star_trigger_loop", smlua_func_bhv_hidden_star_trigger_loop); + smlua_bind_function(L, "bhv_ttm_rolling_log_init", smlua_func_bhv_ttm_rolling_log_init); + smlua_bind_function(L, "bhv_rolling_log_loop", smlua_func_bhv_rolling_log_loop); + smlua_bind_function(L, "bhv_lll_rolling_log_init", smlua_func_bhv_lll_rolling_log_init); + smlua_bind_function(L, "bhv_1up_trigger_init", smlua_func_bhv_1up_trigger_init); + smlua_bind_function(L, "bhv_1up_common_init", smlua_func_bhv_1up_common_init); + smlua_bind_function(L, "bhv_1up_walking_loop", smlua_func_bhv_1up_walking_loop); + smlua_bind_function(L, "bhv_1up_running_away_loop", smlua_func_bhv_1up_running_away_loop); + smlua_bind_function(L, "bhv_1up_sliding_loop", smlua_func_bhv_1up_sliding_loop); + smlua_bind_function(L, "bhv_1up_init", smlua_func_bhv_1up_init); + smlua_bind_function(L, "bhv_1up_loop", smlua_func_bhv_1up_loop); + smlua_bind_function(L, "bhv_1up_jump_on_approach_loop", smlua_func_bhv_1up_jump_on_approach_loop); + smlua_bind_function(L, "bhv_1up_hidden_loop", smlua_func_bhv_1up_hidden_loop); + smlua_bind_function(L, "bhv_1up_hidden_trigger_loop", smlua_func_bhv_1up_hidden_trigger_loop); + smlua_bind_function(L, "bhv_1up_hidden_in_pole_loop", smlua_func_bhv_1up_hidden_in_pole_loop); + smlua_bind_function(L, "bhv_1up_hidden_in_pole_trigger_loop", smlua_func_bhv_1up_hidden_in_pole_trigger_loop); + smlua_bind_function(L, "bhv_1up_hidden_in_pole_spawner_loop", smlua_func_bhv_1up_hidden_in_pole_spawner_loop); + smlua_bind_function(L, "bhv_controllable_platform_init", smlua_func_bhv_controllable_platform_init); + smlua_bind_function(L, "bhv_controllable_platform_loop", smlua_func_bhv_controllable_platform_loop); + smlua_bind_function(L, "bhv_controllable_platform_sub_loop", smlua_func_bhv_controllable_platform_sub_loop); + smlua_bind_function(L, "bhv_breakable_box_small_init", smlua_func_bhv_breakable_box_small_init); + smlua_bind_function(L, "bhv_breakable_box_small_loop", smlua_func_bhv_breakable_box_small_loop); + smlua_bind_function(L, "bhv_sliding_snow_mound_loop", smlua_func_bhv_sliding_snow_mound_loop); + smlua_bind_function(L, "bhv_snow_mound_spawn_loop", smlua_func_bhv_snow_mound_spawn_loop); + smlua_bind_function(L, "bhv_floating_platform_loop", smlua_func_bhv_floating_platform_loop); + smlua_bind_function(L, "bhv_arrow_lift_loop", smlua_func_bhv_arrow_lift_loop); + smlua_bind_function(L, "bhv_orange_number_init", smlua_func_bhv_orange_number_init); + smlua_bind_function(L, "bhv_orange_number_loop", smlua_func_bhv_orange_number_loop); + smlua_bind_function(L, "bhv_manta_ray_init", smlua_func_bhv_manta_ray_init); + smlua_bind_function(L, "bhv_manta_ray_loop", smlua_func_bhv_manta_ray_loop); + smlua_bind_function(L, "bhv_falling_pillar_init", smlua_func_bhv_falling_pillar_init); + smlua_bind_function(L, "bhv_falling_pillar_loop", smlua_func_bhv_falling_pillar_loop); + smlua_bind_function(L, "bhv_falling_pillar_hitbox_loop", smlua_func_bhv_falling_pillar_hitbox_loop); + smlua_bind_function(L, "bhv_jrb_floating_box_loop", smlua_func_bhv_jrb_floating_box_loop); + smlua_bind_function(L, "bhv_decorative_pendulum_init", smlua_func_bhv_decorative_pendulum_init); + smlua_bind_function(L, "bhv_decorative_pendulum_loop", smlua_func_bhv_decorative_pendulum_loop); + smlua_bind_function(L, "bhv_treasure_chest_ship_init", smlua_func_bhv_treasure_chest_ship_init); + smlua_bind_function(L, "bhv_treasure_chest_ship_loop", smlua_func_bhv_treasure_chest_ship_loop); + smlua_bind_function(L, "bhv_treasure_chest_jrb_init", smlua_func_bhv_treasure_chest_jrb_init); + smlua_bind_function(L, "bhv_treasure_chest_jrb_loop", smlua_func_bhv_treasure_chest_jrb_loop); + smlua_bind_function(L, "bhv_treasure_chest_init", smlua_func_bhv_treasure_chest_init); + smlua_bind_function(L, "bhv_treasure_chest_loop", smlua_func_bhv_treasure_chest_loop); + smlua_bind_function(L, "bhv_treasure_chest_bottom_init", smlua_func_bhv_treasure_chest_bottom_init); + smlua_bind_function(L, "bhv_treasure_chest_bottom_loop", smlua_func_bhv_treasure_chest_bottom_loop); + smlua_bind_function(L, "bhv_treasure_chest_top_loop", smlua_func_bhv_treasure_chest_top_loop); + smlua_bind_function(L, "bhv_mips_init", smlua_func_bhv_mips_init); + smlua_bind_function(L, "bhv_mips_loop", smlua_func_bhv_mips_loop); + smlua_bind_function(L, "bhv_yoshi_init", smlua_func_bhv_yoshi_init); + smlua_bind_function(L, "bhv_koopa_init", smlua_func_bhv_koopa_init); + smlua_bind_function(L, "bhv_koopa_update", smlua_func_bhv_koopa_update); + smlua_bind_function(L, "bhv_koopa_race_endpoint_update", smlua_func_bhv_koopa_race_endpoint_update); + smlua_bind_function(L, "bhv_pokey_update", smlua_func_bhv_pokey_update); + smlua_bind_function(L, "bhv_pokey_body_part_update", smlua_func_bhv_pokey_body_part_update); + smlua_bind_function(L, "bhv_swoop_update", smlua_func_bhv_swoop_update); + smlua_bind_function(L, "bhv_fly_guy_update", smlua_func_bhv_fly_guy_update); + smlua_bind_function(L, "bhv_goomba_init", smlua_func_bhv_goomba_init); + smlua_bind_function(L, "bhv_goomba_update", smlua_func_bhv_goomba_update); + smlua_bind_function(L, "bhv_goomba_triplet_spawner_update", smlua_func_bhv_goomba_triplet_spawner_update); + smlua_bind_function(L, "bhv_chain_chomp_update", smlua_func_bhv_chain_chomp_update); + smlua_bind_function(L, "bhv_chain_chomp_chain_part_update", smlua_func_bhv_chain_chomp_chain_part_update); + smlua_bind_function(L, "bhv_wooden_post_update", smlua_func_bhv_wooden_post_update); + smlua_bind_function(L, "bhv_chain_chomp_gate_init", smlua_func_bhv_chain_chomp_gate_init); + smlua_bind_function(L, "bhv_chain_chomp_gate_update", smlua_func_bhv_chain_chomp_gate_update); + smlua_bind_function(L, "bhv_wiggler_update", smlua_func_bhv_wiggler_update); + smlua_bind_function(L, "bhv_wiggler_body_part_update", smlua_func_bhv_wiggler_body_part_update); + smlua_bind_function(L, "bhv_enemy_lakitu_update", smlua_func_bhv_enemy_lakitu_update); + smlua_bind_function(L, "bhv_camera_lakitu_init", smlua_func_bhv_camera_lakitu_init); + smlua_bind_function(L, "bhv_camera_lakitu_update", smlua_func_bhv_camera_lakitu_update); + smlua_bind_function(L, "bhv_cloud_update", smlua_func_bhv_cloud_update); + smlua_bind_function(L, "bhv_cloud_part_update", smlua_func_bhv_cloud_part_update); + smlua_bind_function(L, "bhv_spiny_update", smlua_func_bhv_spiny_update); + smlua_bind_function(L, "bhv_monty_mole_init", smlua_func_bhv_monty_mole_init); + smlua_bind_function(L, "bhv_monty_mole_update", smlua_func_bhv_monty_mole_update); + smlua_bind_function(L, "bhv_monty_mole_hole_update", smlua_func_bhv_monty_mole_hole_update); + smlua_bind_function(L, "bhv_monty_mole_rock_update", smlua_func_bhv_monty_mole_rock_update); + smlua_bind_function(L, "bhv_platform_on_track_init", smlua_func_bhv_platform_on_track_init); + smlua_bind_function(L, "bhv_platform_on_track_update", smlua_func_bhv_platform_on_track_update); + smlua_bind_function(L, "bhv_track_ball_update", smlua_func_bhv_track_ball_update); + smlua_bind_function(L, "bhv_seesaw_platform_init", smlua_func_bhv_seesaw_platform_init); + smlua_bind_function(L, "bhv_seesaw_platform_update", smlua_func_bhv_seesaw_platform_update); + smlua_bind_function(L, "bhv_ferris_wheel_axle_init", smlua_func_bhv_ferris_wheel_axle_init); + smlua_bind_function(L, "bhv_ferris_wheel_platform_init", smlua_func_bhv_ferris_wheel_platform_init); + smlua_bind_function(L, "bhv_ferris_wheel_platform_update", smlua_func_bhv_ferris_wheel_platform_update); + smlua_bind_function(L, "bhv_water_bomb_spawner_update", smlua_func_bhv_water_bomb_spawner_update); + smlua_bind_function(L, "bhv_water_bomb_update", smlua_func_bhv_water_bomb_update); + smlua_bind_function(L, "bhv_water_bomb_shadow_update", smlua_func_bhv_water_bomb_shadow_update); + smlua_bind_function(L, "bhv_ttc_rotating_solid_init", smlua_func_bhv_ttc_rotating_solid_init); + smlua_bind_function(L, "bhv_ttc_rotating_solid_update", smlua_func_bhv_ttc_rotating_solid_update); + smlua_bind_function(L, "bhv_ttc_pendulum_init", smlua_func_bhv_ttc_pendulum_init); + smlua_bind_function(L, "bhv_ttc_pendulum_update", smlua_func_bhv_ttc_pendulum_update); + smlua_bind_function(L, "bhv_ttc_treadmill_init", smlua_func_bhv_ttc_treadmill_init); + smlua_bind_function(L, "bhv_ttc_treadmill_update", smlua_func_bhv_ttc_treadmill_update); + smlua_bind_function(L, "bhv_ttc_moving_bar_init", smlua_func_bhv_ttc_moving_bar_init); + smlua_bind_function(L, "bhv_ttc_moving_bar_update", smlua_func_bhv_ttc_moving_bar_update); + smlua_bind_function(L, "bhv_ttc_cog_init", smlua_func_bhv_ttc_cog_init); + smlua_bind_function(L, "bhv_ttc_cog_update", smlua_func_bhv_ttc_cog_update); + smlua_bind_function(L, "bhv_ttc_pit_block_init", smlua_func_bhv_ttc_pit_block_init); + smlua_bind_function(L, "bhv_ttc_pit_block_update", smlua_func_bhv_ttc_pit_block_update); + smlua_bind_function(L, "bhv_ttc_elevator_init", smlua_func_bhv_ttc_elevator_init); + smlua_bind_function(L, "bhv_ttc_elevator_update", smlua_func_bhv_ttc_elevator_update); + smlua_bind_function(L, "bhv_ttc_2d_rotator_init", smlua_func_bhv_ttc_2d_rotator_init); + smlua_bind_function(L, "bhv_ttc_2d_rotator_update", smlua_func_bhv_ttc_2d_rotator_update); + smlua_bind_function(L, "bhv_ttc_spinner_update", smlua_func_bhv_ttc_spinner_update); + smlua_bind_function(L, "bhv_mr_blizzard_init", smlua_func_bhv_mr_blizzard_init); + smlua_bind_function(L, "bhv_mr_blizzard_update", smlua_func_bhv_mr_blizzard_update); + smlua_bind_function(L, "bhv_mr_blizzard_snowball", smlua_func_bhv_mr_blizzard_snowball); + smlua_bind_function(L, "bhv_sliding_plat_2_init", smlua_func_bhv_sliding_plat_2_init); + smlua_bind_function(L, "bhv_sliding_plat_2_loop", smlua_func_bhv_sliding_plat_2_loop); + smlua_bind_function(L, "bhv_rotating_octagonal_plat_init", smlua_func_bhv_rotating_octagonal_plat_init); + smlua_bind_function(L, "bhv_rotating_octagonal_plat_loop", smlua_func_bhv_rotating_octagonal_plat_loop); + smlua_bind_function(L, "bhv_animates_on_floor_switch_press_init", smlua_func_bhv_animates_on_floor_switch_press_init); + smlua_bind_function(L, "bhv_animates_on_floor_switch_press_loop", smlua_func_bhv_animates_on_floor_switch_press_loop); + smlua_bind_function(L, "bhv_activated_back_and_forth_platform_init", smlua_func_bhv_activated_back_and_forth_platform_init); + smlua_bind_function(L, "bhv_activated_back_and_forth_platform_update", smlua_func_bhv_activated_back_and_forth_platform_update); + smlua_bind_function(L, "bhv_recovery_heart_loop", smlua_func_bhv_recovery_heart_loop); + smlua_bind_function(L, "bhv_water_bomb_cannon_loop", smlua_func_bhv_water_bomb_cannon_loop); + smlua_bind_function(L, "bhv_bubble_cannon_barrel_loop", smlua_func_bhv_bubble_cannon_barrel_loop); + smlua_bind_function(L, "bhv_unagi_init", smlua_func_bhv_unagi_init); + smlua_bind_function(L, "bhv_unagi_loop", smlua_func_bhv_unagi_loop); + smlua_bind_function(L, "bhv_unagi_subobject_loop", smlua_func_bhv_unagi_subobject_loop); + smlua_bind_function(L, "bhv_dorrie_update", smlua_func_bhv_dorrie_update); + smlua_bind_function(L, "bhv_haunted_chair_init", smlua_func_bhv_haunted_chair_init); + smlua_bind_function(L, "bhv_haunted_chair_loop", smlua_func_bhv_haunted_chair_loop); + smlua_bind_function(L, "bhv_mad_piano_update", smlua_func_bhv_mad_piano_update); + smlua_bind_function(L, "bhv_flying_bookend_loop", smlua_func_bhv_flying_bookend_loop); + smlua_bind_function(L, "bhv_bookend_spawn_loop", smlua_func_bhv_bookend_spawn_loop); + smlua_bind_function(L, "bhv_haunted_bookshelf_manager_loop", smlua_func_bhv_haunted_bookshelf_manager_loop); + smlua_bind_function(L, "bhv_book_switch_loop", smlua_func_bhv_book_switch_loop); + smlua_bind_function(L, "bhv_fire_piranha_plant_init", smlua_func_bhv_fire_piranha_plant_init); + smlua_bind_function(L, "bhv_fire_piranha_plant_update", smlua_func_bhv_fire_piranha_plant_update); + smlua_bind_function(L, "bhv_small_piranha_flame_loop", smlua_func_bhv_small_piranha_flame_loop); + smlua_bind_function(L, "bhv_fire_spitter_update", smlua_func_bhv_fire_spitter_update); + smlua_bind_function(L, "bhv_fly_guy_flame_loop", smlua_func_bhv_fly_guy_flame_loop); + smlua_bind_function(L, "bhv_snufit_loop", smlua_func_bhv_snufit_loop); + smlua_bind_function(L, "bhv_snufit_balls_loop", smlua_func_bhv_snufit_balls_loop); + smlua_bind_function(L, "bhv_horizontal_grindel_init", smlua_func_bhv_horizontal_grindel_init); + smlua_bind_function(L, "bhv_horizontal_grindel_update", smlua_func_bhv_horizontal_grindel_update); + smlua_bind_function(L, "bhv_eyerok_boss_init", smlua_func_bhv_eyerok_boss_init); + smlua_bind_function(L, "bhv_eyerok_boss_loop", smlua_func_bhv_eyerok_boss_loop); + smlua_bind_function(L, "bhv_eyerok_hand_loop", smlua_func_bhv_eyerok_hand_loop); + smlua_bind_function(L, "bhv_klepto_init", smlua_func_bhv_klepto_init); + smlua_bind_function(L, "bhv_klepto_update", smlua_func_bhv_klepto_update); + smlua_bind_function(L, "bhv_bird_update", smlua_func_bhv_bird_update); + smlua_bind_function(L, "bhv_racing_penguin_init", smlua_func_bhv_racing_penguin_init); + smlua_bind_function(L, "bhv_racing_penguin_update", smlua_func_bhv_racing_penguin_update); + smlua_bind_function(L, "bhv_penguin_race_finish_line_update", smlua_func_bhv_penguin_race_finish_line_update); + smlua_bind_function(L, "bhv_penguin_race_shortcut_check_update", smlua_func_bhv_penguin_race_shortcut_check_update); + smlua_bind_function(L, "bhv_coffin_spawner_loop", smlua_func_bhv_coffin_spawner_loop); + smlua_bind_function(L, "bhv_coffin_loop", smlua_func_bhv_coffin_loop); + smlua_bind_function(L, "bhv_clam_loop", smlua_func_bhv_clam_loop); + smlua_bind_function(L, "bhv_skeeter_update", smlua_func_bhv_skeeter_update); + smlua_bind_function(L, "bhv_skeeter_wave_update", smlua_func_bhv_skeeter_wave_update); + smlua_bind_function(L, "bhv_swing_platform_init", smlua_func_bhv_swing_platform_init); + smlua_bind_function(L, "bhv_swing_platform_update", smlua_func_bhv_swing_platform_update); + smlua_bind_function(L, "bhv_donut_platform_spawner_update", smlua_func_bhv_donut_platform_spawner_update); + smlua_bind_function(L, "bhv_donut_platform_update", smlua_func_bhv_donut_platform_update); + smlua_bind_function(L, "bhv_ddd_pole_init", smlua_func_bhv_ddd_pole_init); + smlua_bind_function(L, "bhv_ddd_pole_update", smlua_func_bhv_ddd_pole_update); + smlua_bind_function(L, "bhv_red_coin_star_marker_init", smlua_func_bhv_red_coin_star_marker_init); + smlua_bind_function(L, "bhv_triplet_butterfly_update", smlua_func_bhv_triplet_butterfly_update); + smlua_bind_function(L, "bhv_bubba_loop", smlua_func_bhv_bubba_loop); + smlua_bind_function(L, "bhv_intro_lakitu_loop", smlua_func_bhv_intro_lakitu_loop); + smlua_bind_function(L, "bhv_intro_peach_loop", smlua_func_bhv_intro_peach_loop); + smlua_bind_function(L, "bhv_end_birds_1_loop", smlua_func_bhv_end_birds_1_loop); + smlua_bind_function(L, "bhv_end_birds_2_loop", smlua_func_bhv_end_birds_2_loop); + smlua_bind_function(L, "bhv_intro_scene_loop", smlua_func_bhv_intro_scene_loop); + smlua_bind_function(L, "bhv_yoshi_loop", smlua_func_bhv_yoshi_loop); + smlua_bind_function(L, "bhv_volcano_trap_loop", smlua_func_bhv_volcano_trap_loop); + smlua_bind_function(L, "uv_update_scroll", smlua_func_uv_update_scroll); + smlua_bind_function(L, "bhv_ambient_light_update", smlua_func_bhv_ambient_light_update); + smlua_bind_function(L, "bhv_point_light_init", smlua_func_bhv_point_light_init); + smlua_bind_function(L, "bhv_point_light_loop", smlua_func_bhv_point_light_loop); + //smlua_bind_function(L, "geo_move_mario_part_from_parent", smlua_func_geo_move_mario_part_from_parent); <--- UNIMPLEMENTED + //smlua_bind_function(L, "geo_bits_bowser_coloring", smlua_func_geo_bits_bowser_coloring); <--- UNIMPLEMENTED + //smlua_bind_function(L, "geo_update_body_rot_from_parent", smlua_func_geo_update_body_rot_from_parent); <--- UNIMPLEMENTED + //smlua_bind_function(L, "geo_switch_bowser_eyes", smlua_func_geo_switch_bowser_eyes); <--- UNIMPLEMENTED + //smlua_bind_function(L, "geo_switch_tuxie_mother_eyes", smlua_func_geo_switch_tuxie_mother_eyes); <--- UNIMPLEMENTED + //smlua_bind_function(L, "geo_update_held_mario_pos", smlua_func_geo_update_held_mario_pos); <--- UNIMPLEMENTED + //smlua_bind_function(L, "geo_snufit_move_mask", smlua_func_geo_snufit_move_mask); <--- UNIMPLEMENTED + //smlua_bind_function(L, "geo_snufit_scale_body", smlua_func_geo_snufit_scale_body); <--- UNIMPLEMENTED + //smlua_bind_function(L, "geo_scale_bowser_key", smlua_func_geo_scale_bowser_key); <--- UNIMPLEMENTED + smlua_bind_function(L, "spawn_default_star", smlua_func_spawn_default_star); + smlua_bind_function(L, "spawn_red_coin_cutscene_star", smlua_func_spawn_red_coin_cutscene_star); + smlua_bind_function(L, "spawn_no_exit_star", smlua_func_spawn_no_exit_star); // behavior_script.h - BIND_FUNCTION(random_u16); - BIND_FUNCTION(random_float); - BIND_FUNCTION(random_sign); - BIND_FUNCTION(obj_update_gfx_pos_and_angle); - BIND_FUNCTION(position_based_random_u16); - BIND_FUNCTION(position_based_random_float_position); - BIND_FUNCTION(draw_distance_scalar); + smlua_bind_function(L, "random_u16", smlua_func_random_u16); + smlua_bind_function(L, "random_float", smlua_func_random_float); + smlua_bind_function(L, "random_sign", smlua_func_random_sign); + smlua_bind_function(L, "obj_update_gfx_pos_and_angle", smlua_func_obj_update_gfx_pos_and_angle); + smlua_bind_function(L, "position_based_random_u16", smlua_func_position_based_random_u16); + smlua_bind_function(L, "position_based_random_float_position", smlua_func_position_based_random_float_position); + smlua_bind_function(L, "draw_distance_scalar", smlua_func_draw_distance_scalar); // behavior_table.h - BIND_FUNCTION(get_id_from_behavior); - BIND_FUNCTION(get_id_from_vanilla_behavior); - BIND_FUNCTION(get_behavior_from_id); - BIND_FUNCTION(get_behavior_name_from_id); - BIND_FUNCTION(get_id_from_behavior_name); + smlua_bind_function(L, "get_id_from_behavior", smlua_func_get_id_from_behavior); + smlua_bind_function(L, "get_id_from_vanilla_behavior", smlua_func_get_id_from_vanilla_behavior); + smlua_bind_function(L, "get_behavior_from_id", smlua_func_get_behavior_from_id); + smlua_bind_function(L, "get_behavior_name_from_id", smlua_func_get_behavior_name_from_id); + smlua_bind_function(L, "get_id_from_behavior_name", smlua_func_get_id_from_behavior_name); // camera.h - BIND_FUNCTION(skip_camera_interpolation); - BIND_FUNCTION(set_camera_shake_from_hit); - BIND_FUNCTION(set_environmental_camera_shake); - BIND_FUNCTION(set_camera_shake_from_point); - BIND_FUNCTION(move_mario_head_c_up); - BIND_FUNCTION(transition_next_state); - BIND_FUNCTION(set_camera_mode); - BIND_FUNCTION(soft_reset_camera); - BIND_FUNCTION(reset_camera); - BIND_FUNCTION(select_mario_cam_mode); - //BIND_FUNCTION(geo_camera_main); <--- UNIMPLEMENTED - BIND_FUNCTION(object_pos_to_vec3f); - BIND_FUNCTION(vec3f_to_object_pos); - BIND_FUNCTION(object_face_angle_to_vec3s); - BIND_FUNCTION(vec3s_to_object_face_angle); - BIND_FUNCTION(object_move_angle_to_vec3s); - BIND_FUNCTION(vec3s_to_object_move_angle); - BIND_FUNCTION(cam_select_alt_mode); - BIND_FUNCTION(set_cam_angle); - BIND_FUNCTION(set_handheld_shake); - BIND_FUNCTION(shake_camera_handheld); - BIND_FUNCTION(find_c_buttons_pressed); - BIND_FUNCTION(collide_with_walls); - BIND_FUNCTION(clamp_pitch); - BIND_FUNCTION(is_within_100_units_of_mario); - BIND_FUNCTION(set_or_approach_f32_asymptotic); - BIND_FUNCTION(approach_f32_asymptotic_bool); - BIND_FUNCTION(approach_f32_asymptotic); - BIND_FUNCTION(approach_s16_asymptotic_bool); - BIND_FUNCTION(approach_s16_asymptotic); - BIND_FUNCTION(approach_vec3f_asymptotic); - BIND_FUNCTION(set_or_approach_vec3f_asymptotic); - BIND_FUNCTION(camera_approach_s16_symmetric_bool); - BIND_FUNCTION(set_or_approach_s16_symmetric); - BIND_FUNCTION(camera_approach_f32_symmetric_bool); - BIND_FUNCTION(camera_approach_f32_symmetric); - BIND_FUNCTION(random_vec3s); - BIND_FUNCTION(clamp_positions_and_find_yaw); - BIND_FUNCTION(is_range_behind_surface); - BIND_FUNCTION(scale_along_line); - BIND_FUNCTION(calculate_pitch); - BIND_FUNCTION(calculate_yaw); - BIND_FUNCTION(calculate_angles); - BIND_FUNCTION(calc_abs_dist); - BIND_FUNCTION(calc_hor_dist); - BIND_FUNCTION(rotate_in_xz); - BIND_FUNCTION(rotate_in_yz); - BIND_FUNCTION(set_camera_pitch_shake); - BIND_FUNCTION(set_camera_yaw_shake); - BIND_FUNCTION(set_camera_roll_shake); - BIND_FUNCTION(set_pitch_shake_from_point); - BIND_FUNCTION(shake_camera_pitch); - BIND_FUNCTION(shake_camera_yaw); - BIND_FUNCTION(shake_camera_roll); - BIND_FUNCTION(offset_yaw_outward_radial); - BIND_FUNCTION(play_camera_buzz_if_cdown); - BIND_FUNCTION(play_camera_buzz_if_cbutton); - BIND_FUNCTION(play_camera_buzz_if_c_sideways); - BIND_FUNCTION(play_sound_cbutton_up); - BIND_FUNCTION(play_sound_cbutton_down); - BIND_FUNCTION(play_sound_cbutton_side); - BIND_FUNCTION(play_sound_button_change_blocked); - BIND_FUNCTION(play_sound_rbutton_changed); - BIND_FUNCTION(play_sound_if_cam_switched_to_lakitu_or_mario); - BIND_FUNCTION(radial_camera_input); - BIND_FUNCTION(trigger_cutscene_dialog); - BIND_FUNCTION(handle_c_button_movement); - BIND_FUNCTION(start_cutscene); - BIND_FUNCTION(get_cutscene_from_mario_status); - BIND_FUNCTION(warp_camera); - BIND_FUNCTION(approach_camera_height); - BIND_FUNCTION(offset_rotated); - BIND_FUNCTION(next_lakitu_state); - BIND_FUNCTION(set_fixed_cam_axis_sa_lobby); - BIND_FUNCTION(camera_course_processing); - BIND_FUNCTION(resolve_geometry_collisions); - BIND_FUNCTION(rotate_camera_around_walls); - //BIND_FUNCTION(find_mario_floor_and_ceil); <--- UNIMPLEMENTED - BIND_FUNCTION(start_object_cutscene_without_focus); - BIND_FUNCTION(cutscene_object_with_dialog); - BIND_FUNCTION(cutscene_object_without_dialog); - BIND_FUNCTION(cutscene_object); - BIND_FUNCTION(play_cutscene); - //BIND_FUNCTION(cutscene_event); <--- UNIMPLEMENTED - BIND_FUNCTION(cutscene_spawn_obj); - BIND_FUNCTION(set_fov_shake); - BIND_FUNCTION(set_fov_function); - BIND_FUNCTION(cutscene_set_fov_shake_preset); - BIND_FUNCTION(set_fov_shake_from_point_preset); - BIND_FUNCTION(obj_rotate_towards_point); - //BIND_FUNCTION(geo_camera_fov); <--- UNIMPLEMENTED - BIND_FUNCTION(set_camera_mode_fixed); - BIND_FUNCTION(snap_to_45_degrees); - BIND_FUNCTION(camera_set_use_course_specific_settings); - BIND_FUNCTION(center_rom_hack_camera); + smlua_bind_function(L, "skip_camera_interpolation", smlua_func_skip_camera_interpolation); + smlua_bind_function(L, "set_camera_shake_from_hit", smlua_func_set_camera_shake_from_hit); + smlua_bind_function(L, "set_environmental_camera_shake", smlua_func_set_environmental_camera_shake); + smlua_bind_function(L, "set_camera_shake_from_point", smlua_func_set_camera_shake_from_point); + smlua_bind_function(L, "move_mario_head_c_up", smlua_func_move_mario_head_c_up); + smlua_bind_function(L, "transition_next_state", smlua_func_transition_next_state); + smlua_bind_function(L, "set_camera_mode", smlua_func_set_camera_mode); + smlua_bind_function(L, "soft_reset_camera", smlua_func_soft_reset_camera); + smlua_bind_function(L, "reset_camera", smlua_func_reset_camera); + smlua_bind_function(L, "select_mario_cam_mode", smlua_func_select_mario_cam_mode); + //smlua_bind_function(L, "geo_camera_main", smlua_func_geo_camera_main); <--- UNIMPLEMENTED + smlua_bind_function(L, "object_pos_to_vec3f", smlua_func_object_pos_to_vec3f); + smlua_bind_function(L, "vec3f_to_object_pos", smlua_func_vec3f_to_object_pos); + smlua_bind_function(L, "object_face_angle_to_vec3s", smlua_func_object_face_angle_to_vec3s); + smlua_bind_function(L, "vec3s_to_object_face_angle", smlua_func_vec3s_to_object_face_angle); + smlua_bind_function(L, "object_move_angle_to_vec3s", smlua_func_object_move_angle_to_vec3s); + smlua_bind_function(L, "vec3s_to_object_move_angle", smlua_func_vec3s_to_object_move_angle); + smlua_bind_function(L, "cam_select_alt_mode", smlua_func_cam_select_alt_mode); + smlua_bind_function(L, "set_cam_angle", smlua_func_set_cam_angle); + smlua_bind_function(L, "set_handheld_shake", smlua_func_set_handheld_shake); + smlua_bind_function(L, "shake_camera_handheld", smlua_func_shake_camera_handheld); + smlua_bind_function(L, "find_c_buttons_pressed", smlua_func_find_c_buttons_pressed); + smlua_bind_function(L, "collide_with_walls", smlua_func_collide_with_walls); + smlua_bind_function(L, "clamp_pitch", smlua_func_clamp_pitch); + smlua_bind_function(L, "is_within_100_units_of_mario", smlua_func_is_within_100_units_of_mario); + smlua_bind_function(L, "set_or_approach_f32_asymptotic", smlua_func_set_or_approach_f32_asymptotic); + smlua_bind_function(L, "approach_f32_asymptotic_bool", smlua_func_approach_f32_asymptotic_bool); + smlua_bind_function(L, "approach_f32_asymptotic", smlua_func_approach_f32_asymptotic); + smlua_bind_function(L, "approach_s16_asymptotic_bool", smlua_func_approach_s16_asymptotic_bool); + smlua_bind_function(L, "approach_s16_asymptotic", smlua_func_approach_s16_asymptotic); + smlua_bind_function(L, "approach_vec3f_asymptotic", smlua_func_approach_vec3f_asymptotic); + smlua_bind_function(L, "set_or_approach_vec3f_asymptotic", smlua_func_set_or_approach_vec3f_asymptotic); + smlua_bind_function(L, "camera_approach_s16_symmetric_bool", smlua_func_camera_approach_s16_symmetric_bool); + smlua_bind_function(L, "set_or_approach_s16_symmetric", smlua_func_set_or_approach_s16_symmetric); + smlua_bind_function(L, "camera_approach_f32_symmetric_bool", smlua_func_camera_approach_f32_symmetric_bool); + smlua_bind_function(L, "camera_approach_f32_symmetric", smlua_func_camera_approach_f32_symmetric); + smlua_bind_function(L, "random_vec3s", smlua_func_random_vec3s); + smlua_bind_function(L, "clamp_positions_and_find_yaw", smlua_func_clamp_positions_and_find_yaw); + smlua_bind_function(L, "is_range_behind_surface", smlua_func_is_range_behind_surface); + smlua_bind_function(L, "scale_along_line", smlua_func_scale_along_line); + smlua_bind_function(L, "calculate_pitch", smlua_func_calculate_pitch); + smlua_bind_function(L, "calculate_yaw", smlua_func_calculate_yaw); + smlua_bind_function(L, "calculate_angles", smlua_func_calculate_angles); + smlua_bind_function(L, "calc_abs_dist", smlua_func_calc_abs_dist); + smlua_bind_function(L, "calc_hor_dist", smlua_func_calc_hor_dist); + smlua_bind_function(L, "rotate_in_xz", smlua_func_rotate_in_xz); + smlua_bind_function(L, "rotate_in_yz", smlua_func_rotate_in_yz); + smlua_bind_function(L, "set_camera_pitch_shake", smlua_func_set_camera_pitch_shake); + smlua_bind_function(L, "set_camera_yaw_shake", smlua_func_set_camera_yaw_shake); + smlua_bind_function(L, "set_camera_roll_shake", smlua_func_set_camera_roll_shake); + smlua_bind_function(L, "set_pitch_shake_from_point", smlua_func_set_pitch_shake_from_point); + smlua_bind_function(L, "shake_camera_pitch", smlua_func_shake_camera_pitch); + smlua_bind_function(L, "shake_camera_yaw", smlua_func_shake_camera_yaw); + smlua_bind_function(L, "shake_camera_roll", smlua_func_shake_camera_roll); + smlua_bind_function(L, "offset_yaw_outward_radial", smlua_func_offset_yaw_outward_radial); + smlua_bind_function(L, "play_camera_buzz_if_cdown", smlua_func_play_camera_buzz_if_cdown); + smlua_bind_function(L, "play_camera_buzz_if_cbutton", smlua_func_play_camera_buzz_if_cbutton); + smlua_bind_function(L, "play_camera_buzz_if_c_sideways", smlua_func_play_camera_buzz_if_c_sideways); + smlua_bind_function(L, "play_sound_cbutton_up", smlua_func_play_sound_cbutton_up); + smlua_bind_function(L, "play_sound_cbutton_down", smlua_func_play_sound_cbutton_down); + smlua_bind_function(L, "play_sound_cbutton_side", smlua_func_play_sound_cbutton_side); + smlua_bind_function(L, "play_sound_button_change_blocked", smlua_func_play_sound_button_change_blocked); + smlua_bind_function(L, "play_sound_rbutton_changed", smlua_func_play_sound_rbutton_changed); + smlua_bind_function(L, "play_sound_if_cam_switched_to_lakitu_or_mario", smlua_func_play_sound_if_cam_switched_to_lakitu_or_mario); + smlua_bind_function(L, "radial_camera_input", smlua_func_radial_camera_input); + smlua_bind_function(L, "trigger_cutscene_dialog", smlua_func_trigger_cutscene_dialog); + smlua_bind_function(L, "handle_c_button_movement", smlua_func_handle_c_button_movement); + smlua_bind_function(L, "start_cutscene", smlua_func_start_cutscene); + smlua_bind_function(L, "get_cutscene_from_mario_status", smlua_func_get_cutscene_from_mario_status); + smlua_bind_function(L, "warp_camera", smlua_func_warp_camera); + smlua_bind_function(L, "approach_camera_height", smlua_func_approach_camera_height); + smlua_bind_function(L, "offset_rotated", smlua_func_offset_rotated); + smlua_bind_function(L, "next_lakitu_state", smlua_func_next_lakitu_state); + smlua_bind_function(L, "set_fixed_cam_axis_sa_lobby", smlua_func_set_fixed_cam_axis_sa_lobby); + smlua_bind_function(L, "camera_course_processing", smlua_func_camera_course_processing); + smlua_bind_function(L, "resolve_geometry_collisions", smlua_func_resolve_geometry_collisions); + smlua_bind_function(L, "rotate_camera_around_walls", smlua_func_rotate_camera_around_walls); + //smlua_bind_function(L, "find_mario_floor_and_ceil", smlua_func_find_mario_floor_and_ceil); <--- UNIMPLEMENTED + smlua_bind_function(L, "start_object_cutscene_without_focus", smlua_func_start_object_cutscene_without_focus); + smlua_bind_function(L, "cutscene_object_with_dialog", smlua_func_cutscene_object_with_dialog); + smlua_bind_function(L, "cutscene_object_without_dialog", smlua_func_cutscene_object_without_dialog); + smlua_bind_function(L, "cutscene_object", smlua_func_cutscene_object); + smlua_bind_function(L, "play_cutscene", smlua_func_play_cutscene); + //smlua_bind_function(L, "cutscene_event", smlua_func_cutscene_event); <--- UNIMPLEMENTED + smlua_bind_function(L, "cutscene_spawn_obj", smlua_func_cutscene_spawn_obj); + smlua_bind_function(L, "set_fov_shake", smlua_func_set_fov_shake); + smlua_bind_function(L, "set_fov_function", smlua_func_set_fov_function); + smlua_bind_function(L, "cutscene_set_fov_shake_preset", smlua_func_cutscene_set_fov_shake_preset); + smlua_bind_function(L, "set_fov_shake_from_point_preset", smlua_func_set_fov_shake_from_point_preset); + smlua_bind_function(L, "obj_rotate_towards_point", smlua_func_obj_rotate_towards_point); + //smlua_bind_function(L, "geo_camera_fov", smlua_func_geo_camera_fov); <--- UNIMPLEMENTED + smlua_bind_function(L, "set_camera_mode_fixed", smlua_func_set_camera_mode_fixed); + smlua_bind_function(L, "snap_to_45_degrees", smlua_func_snap_to_45_degrees); + smlua_bind_function(L, "camera_set_use_course_specific_settings", smlua_func_camera_set_use_course_specific_settings); + smlua_bind_function(L, "center_rom_hack_camera", smlua_func_center_rom_hack_camera); // characters.h - BIND_FUNCTION(get_character); - BIND_FUNCTION(play_character_sound); - BIND_FUNCTION(play_character_sound_offset); - BIND_FUNCTION(play_character_sound_if_no_flag); - BIND_FUNCTION(get_character_anim_offset); - BIND_FUNCTION(get_character_anim); - BIND_FUNCTION(update_character_anim_offset); + smlua_bind_function(L, "get_character", smlua_func_get_character); + smlua_bind_function(L, "play_character_sound", smlua_func_play_character_sound); + smlua_bind_function(L, "play_character_sound_offset", smlua_func_play_character_sound_offset); + smlua_bind_function(L, "play_character_sound_if_no_flag", smlua_func_play_character_sound_if_no_flag); + smlua_bind_function(L, "get_character_anim_offset", smlua_func_get_character_anim_offset); + smlua_bind_function(L, "get_character_anim", smlua_func_get_character_anim); + smlua_bind_function(L, "update_character_anim_offset", smlua_func_update_character_anim_offset); // djui_chat_message.h - BIND_FUNCTION(djui_chat_message_create); + smlua_bind_function(L, "djui_chat_message_create", smlua_func_djui_chat_message_create); // djui_console.h - BIND_FUNCTION(djui_console_toggle); + smlua_bind_function(L, "djui_console_toggle", smlua_func_djui_console_toggle); // djui_hud_utils.h - BIND_FUNCTION(djui_hud_get_resolution); - BIND_FUNCTION(djui_hud_set_resolution); - BIND_FUNCTION(djui_hud_get_filter); - BIND_FUNCTION(djui_hud_set_filter); - BIND_FUNCTION(djui_hud_get_font); - BIND_FUNCTION(djui_hud_set_font); - BIND_FUNCTION(djui_hud_get_color); - BIND_FUNCTION(djui_hud_set_color); - BIND_FUNCTION(djui_hud_reset_color); - BIND_FUNCTION(djui_hud_get_rotation); - BIND_FUNCTION(djui_hud_set_rotation); - BIND_FUNCTION(djui_hud_set_rotation_interpolated); - BIND_FUNCTION(djui_hud_get_screen_width); - BIND_FUNCTION(djui_hud_get_screen_height); - BIND_FUNCTION(djui_hud_get_mouse_x); - BIND_FUNCTION(djui_hud_get_mouse_y); - BIND_FUNCTION(djui_hud_get_raw_mouse_x); - BIND_FUNCTION(djui_hud_get_raw_mouse_y); - BIND_FUNCTION(djui_hud_is_mouse_locked); - BIND_FUNCTION(djui_hud_set_mouse_locked); - BIND_FUNCTION(djui_hud_get_mouse_buttons_down); - BIND_FUNCTION(djui_hud_get_mouse_buttons_pressed); - BIND_FUNCTION(djui_hud_get_mouse_buttons_released); - BIND_FUNCTION(djui_hud_get_mouse_scroll_x); - BIND_FUNCTION(djui_hud_get_mouse_scroll_y); - BIND_FUNCTION(djui_hud_set_viewport); - BIND_FUNCTION(djui_hud_reset_viewport); - BIND_FUNCTION(djui_hud_set_scissor); - BIND_FUNCTION(djui_hud_reset_scissor); - BIND_FUNCTION(djui_hud_measure_text); - BIND_FUNCTION(djui_hud_print_text); - BIND_FUNCTION(djui_hud_print_text_interpolated); - BIND_FUNCTION(djui_hud_render_texture); - BIND_FUNCTION(djui_hud_render_texture_tile); - BIND_FUNCTION(djui_hud_render_texture_interpolated); - BIND_FUNCTION(djui_hud_render_texture_tile_interpolated); - BIND_FUNCTION(djui_hud_render_rect); - BIND_FUNCTION(djui_hud_render_rect_interpolated); - BIND_FUNCTION(djui_hud_render_line); - BIND_FUNCTION(get_current_fov); - BIND_FUNCTION(djui_hud_get_fov_coeff); - BIND_FUNCTION(djui_hud_world_pos_to_screen_pos); - BIND_FUNCTION(djui_hud_is_pause_menu_created); - BIND_FUNCTION(djui_open_pause_menu); + smlua_bind_function(L, "djui_hud_get_resolution", smlua_func_djui_hud_get_resolution); + smlua_bind_function(L, "djui_hud_set_resolution", smlua_func_djui_hud_set_resolution); + smlua_bind_function(L, "djui_hud_get_filter", smlua_func_djui_hud_get_filter); + smlua_bind_function(L, "djui_hud_set_filter", smlua_func_djui_hud_set_filter); + smlua_bind_function(L, "djui_hud_get_font", smlua_func_djui_hud_get_font); + smlua_bind_function(L, "djui_hud_set_font", smlua_func_djui_hud_set_font); + smlua_bind_function(L, "djui_hud_get_color", smlua_func_djui_hud_get_color); + smlua_bind_function(L, "djui_hud_set_color", smlua_func_djui_hud_set_color); + smlua_bind_function(L, "djui_hud_reset_color", smlua_func_djui_hud_reset_color); + smlua_bind_function(L, "djui_hud_get_rotation", smlua_func_djui_hud_get_rotation); + smlua_bind_function(L, "djui_hud_set_rotation", smlua_func_djui_hud_set_rotation); + smlua_bind_function(L, "djui_hud_set_rotation_interpolated", smlua_func_djui_hud_set_rotation_interpolated); + smlua_bind_function(L, "djui_hud_get_screen_width", smlua_func_djui_hud_get_screen_width); + smlua_bind_function(L, "djui_hud_get_screen_height", smlua_func_djui_hud_get_screen_height); + smlua_bind_function(L, "djui_hud_get_mouse_x", smlua_func_djui_hud_get_mouse_x); + smlua_bind_function(L, "djui_hud_get_mouse_y", smlua_func_djui_hud_get_mouse_y); + smlua_bind_function(L, "djui_hud_get_raw_mouse_x", smlua_func_djui_hud_get_raw_mouse_x); + smlua_bind_function(L, "djui_hud_get_raw_mouse_y", smlua_func_djui_hud_get_raw_mouse_y); + smlua_bind_function(L, "djui_hud_is_mouse_locked", smlua_func_djui_hud_is_mouse_locked); + smlua_bind_function(L, "djui_hud_set_mouse_locked", smlua_func_djui_hud_set_mouse_locked); + smlua_bind_function(L, "djui_hud_get_mouse_buttons_down", smlua_func_djui_hud_get_mouse_buttons_down); + smlua_bind_function(L, "djui_hud_get_mouse_buttons_pressed", smlua_func_djui_hud_get_mouse_buttons_pressed); + smlua_bind_function(L, "djui_hud_get_mouse_buttons_released", smlua_func_djui_hud_get_mouse_buttons_released); + smlua_bind_function(L, "djui_hud_get_mouse_scroll_x", smlua_func_djui_hud_get_mouse_scroll_x); + smlua_bind_function(L, "djui_hud_get_mouse_scroll_y", smlua_func_djui_hud_get_mouse_scroll_y); + smlua_bind_function(L, "djui_hud_set_viewport", smlua_func_djui_hud_set_viewport); + smlua_bind_function(L, "djui_hud_reset_viewport", smlua_func_djui_hud_reset_viewport); + smlua_bind_function(L, "djui_hud_set_scissor", smlua_func_djui_hud_set_scissor); + smlua_bind_function(L, "djui_hud_reset_scissor", smlua_func_djui_hud_reset_scissor); + smlua_bind_function(L, "djui_hud_measure_text", smlua_func_djui_hud_measure_text); + smlua_bind_function(L, "djui_hud_print_text", smlua_func_djui_hud_print_text); + smlua_bind_function(L, "djui_hud_print_text_interpolated", smlua_func_djui_hud_print_text_interpolated); + smlua_bind_function(L, "djui_hud_render_texture", smlua_func_djui_hud_render_texture); + smlua_bind_function(L, "djui_hud_render_texture_tile", smlua_func_djui_hud_render_texture_tile); + smlua_bind_function(L, "djui_hud_render_texture_interpolated", smlua_func_djui_hud_render_texture_interpolated); + smlua_bind_function(L, "djui_hud_render_texture_tile_interpolated", smlua_func_djui_hud_render_texture_tile_interpolated); + smlua_bind_function(L, "djui_hud_render_rect", smlua_func_djui_hud_render_rect); + smlua_bind_function(L, "djui_hud_render_rect_interpolated", smlua_func_djui_hud_render_rect_interpolated); + smlua_bind_function(L, "djui_hud_render_line", smlua_func_djui_hud_render_line); + smlua_bind_function(L, "get_current_fov", smlua_func_get_current_fov); + smlua_bind_function(L, "djui_hud_get_fov_coeff", smlua_func_djui_hud_get_fov_coeff); + smlua_bind_function(L, "djui_hud_world_pos_to_screen_pos", smlua_func_djui_hud_world_pos_to_screen_pos); + smlua_bind_function(L, "djui_hud_is_pause_menu_created", smlua_func_djui_hud_is_pause_menu_created); + smlua_bind_function(L, "djui_open_pause_menu", smlua_func_djui_open_pause_menu); // djui_language.h - BIND_FUNCTION(djui_language_get); + smlua_bind_function(L, "djui_language_get", smlua_func_djui_language_get); // djui_panel_menu.h - BIND_FUNCTION(djui_menu_get_rainbow_string_color); + smlua_bind_function(L, "djui_menu_get_rainbow_string_color", smlua_func_djui_menu_get_rainbow_string_color); // djui_popup.h - BIND_FUNCTION(djui_popup_create); + smlua_bind_function(L, "djui_popup_create", smlua_func_djui_popup_create); // external.h - BIND_FUNCTION(play_sound); - BIND_FUNCTION(play_sound_with_freq_scale); - BIND_FUNCTION(seq_player_fade_out); - BIND_FUNCTION(fade_volume_scale); - BIND_FUNCTION(seq_player_lower_volume); - BIND_FUNCTION(seq_player_unlower_volume); - BIND_FUNCTION(set_audio_muted); - BIND_FUNCTION(stop_sound); - BIND_FUNCTION(stop_sounds_from_source); - BIND_FUNCTION(stop_sounds_in_continuous_banks); - BIND_FUNCTION(sound_banks_disable); - BIND_FUNCTION(sound_banks_enable); - BIND_FUNCTION(set_sound_moving_speed); - BIND_FUNCTION(play_dialog_sound); - BIND_FUNCTION(play_music); - BIND_FUNCTION(stop_background_music); - BIND_FUNCTION(fadeout_background_music); - BIND_FUNCTION(drop_queued_background_music); - BIND_FUNCTION(get_current_background_music); - BIND_FUNCTION(get_current_background_music_default_volume); - BIND_FUNCTION(get_current_background_music_target_volume); - BIND_FUNCTION(get_current_background_music_max_target_volume); - BIND_FUNCTION(is_current_background_music_volume_lowered); - BIND_FUNCTION(play_secondary_music); - BIND_FUNCTION(stop_secondary_music); - BIND_FUNCTION(set_audio_fadeout); - BIND_FUNCTION(play_course_clear); - BIND_FUNCTION(play_peachs_jingle); - BIND_FUNCTION(play_puzzle_jingle); - BIND_FUNCTION(play_star_fanfare); - BIND_FUNCTION(play_power_star_jingle); - BIND_FUNCTION(play_race_fanfare); - BIND_FUNCTION(play_toads_jingle); - BIND_FUNCTION(sound_reset_background_music_default_volume); - BIND_FUNCTION(sound_set_background_music_default_volume); - BIND_FUNCTION(get_sound_pan); - BIND_FUNCTION(sound_get_level_intensity); + smlua_bind_function(L, "play_sound", smlua_func_play_sound); + smlua_bind_function(L, "play_sound_with_freq_scale", smlua_func_play_sound_with_freq_scale); + smlua_bind_function(L, "seq_player_fade_out", smlua_func_seq_player_fade_out); + smlua_bind_function(L, "fade_volume_scale", smlua_func_fade_volume_scale); + smlua_bind_function(L, "seq_player_lower_volume", smlua_func_seq_player_lower_volume); + smlua_bind_function(L, "seq_player_unlower_volume", smlua_func_seq_player_unlower_volume); + smlua_bind_function(L, "set_audio_muted", smlua_func_set_audio_muted); + smlua_bind_function(L, "stop_sound", smlua_func_stop_sound); + smlua_bind_function(L, "stop_sounds_from_source", smlua_func_stop_sounds_from_source); + smlua_bind_function(L, "stop_sounds_in_continuous_banks", smlua_func_stop_sounds_in_continuous_banks); + smlua_bind_function(L, "sound_banks_disable", smlua_func_sound_banks_disable); + smlua_bind_function(L, "sound_banks_enable", smlua_func_sound_banks_enable); + smlua_bind_function(L, "set_sound_moving_speed", smlua_func_set_sound_moving_speed); + smlua_bind_function(L, "play_dialog_sound", smlua_func_play_dialog_sound); + smlua_bind_function(L, "play_music", smlua_func_play_music); + smlua_bind_function(L, "stop_background_music", smlua_func_stop_background_music); + smlua_bind_function(L, "fadeout_background_music", smlua_func_fadeout_background_music); + smlua_bind_function(L, "drop_queued_background_music", smlua_func_drop_queued_background_music); + smlua_bind_function(L, "get_current_background_music", smlua_func_get_current_background_music); + smlua_bind_function(L, "get_current_background_music_default_volume", smlua_func_get_current_background_music_default_volume); + smlua_bind_function(L, "get_current_background_music_target_volume", smlua_func_get_current_background_music_target_volume); + smlua_bind_function(L, "get_current_background_music_max_target_volume", smlua_func_get_current_background_music_max_target_volume); + smlua_bind_function(L, "is_current_background_music_volume_lowered", smlua_func_is_current_background_music_volume_lowered); + smlua_bind_function(L, "play_secondary_music", smlua_func_play_secondary_music); + smlua_bind_function(L, "stop_secondary_music", smlua_func_stop_secondary_music); + smlua_bind_function(L, "set_audio_fadeout", smlua_func_set_audio_fadeout); + smlua_bind_function(L, "play_course_clear", smlua_func_play_course_clear); + smlua_bind_function(L, "play_peachs_jingle", smlua_func_play_peachs_jingle); + smlua_bind_function(L, "play_puzzle_jingle", smlua_func_play_puzzle_jingle); + smlua_bind_function(L, "play_star_fanfare", smlua_func_play_star_fanfare); + smlua_bind_function(L, "play_power_star_jingle", smlua_func_play_power_star_jingle); + smlua_bind_function(L, "play_race_fanfare", smlua_func_play_race_fanfare); + smlua_bind_function(L, "play_toads_jingle", smlua_func_play_toads_jingle); + smlua_bind_function(L, "sound_reset_background_music_default_volume", smlua_func_sound_reset_background_music_default_volume); + smlua_bind_function(L, "sound_set_background_music_default_volume", smlua_func_sound_set_background_music_default_volume); + smlua_bind_function(L, "get_sound_pan", smlua_func_get_sound_pan); + smlua_bind_function(L, "sound_get_level_intensity", smlua_func_sound_get_level_intensity); // first_person_cam.h - BIND_FUNCTION(first_person_check_cancels); - BIND_FUNCTION(get_first_person_enabled); - BIND_FUNCTION(set_first_person_enabled); - BIND_FUNCTION(first_person_reset); + smlua_bind_function(L, "first_person_check_cancels", smlua_func_first_person_check_cancels); + smlua_bind_function(L, "get_first_person_enabled", smlua_func_get_first_person_enabled); + smlua_bind_function(L, "set_first_person_enabled", smlua_func_set_first_person_enabled); + smlua_bind_function(L, "first_person_reset", smlua_func_first_person_reset); // ingame_menu.h - BIND_FUNCTION(create_dialog_box); - BIND_FUNCTION(create_dialog_box_with_var); - BIND_FUNCTION(create_dialog_inverted_box); - BIND_FUNCTION(create_dialog_box_with_response); - BIND_FUNCTION(reset_dialog_render_state); - BIND_FUNCTION(set_menu_mode); - BIND_FUNCTION(handle_special_dialog_text); - BIND_FUNCTION(set_min_dialog_width); - BIND_FUNCTION(set_dialog_override_pos); - BIND_FUNCTION(reset_dialog_override_pos); - BIND_FUNCTION(set_dialog_override_color); - BIND_FUNCTION(reset_dialog_override_color); - BIND_FUNCTION(set_dialog_box_state); + smlua_bind_function(L, "create_dialog_box", smlua_func_create_dialog_box); + smlua_bind_function(L, "create_dialog_box_with_var", smlua_func_create_dialog_box_with_var); + smlua_bind_function(L, "create_dialog_inverted_box", smlua_func_create_dialog_inverted_box); + smlua_bind_function(L, "create_dialog_box_with_response", smlua_func_create_dialog_box_with_response); + smlua_bind_function(L, "reset_dialog_render_state", smlua_func_reset_dialog_render_state); + smlua_bind_function(L, "set_menu_mode", smlua_func_set_menu_mode); + smlua_bind_function(L, "handle_special_dialog_text", smlua_func_handle_special_dialog_text); + smlua_bind_function(L, "set_min_dialog_width", smlua_func_set_min_dialog_width); + smlua_bind_function(L, "set_dialog_override_pos", smlua_func_set_dialog_override_pos); + smlua_bind_function(L, "reset_dialog_override_pos", smlua_func_reset_dialog_override_pos); + smlua_bind_function(L, "set_dialog_override_color", smlua_func_set_dialog_override_color); + smlua_bind_function(L, "reset_dialog_override_color", smlua_func_reset_dialog_override_color); + smlua_bind_function(L, "set_dialog_box_state", smlua_func_set_dialog_box_state); // interaction.h - BIND_FUNCTION(interact_coin); - BIND_FUNCTION(interact_water_ring); - BIND_FUNCTION(interact_star_or_key); - BIND_FUNCTION(interact_bbh_entrance); - BIND_FUNCTION(interact_warp); - BIND_FUNCTION(interact_warp_door); - BIND_FUNCTION(interact_door); - BIND_FUNCTION(interact_cannon_base); - BIND_FUNCTION(interact_player); - BIND_FUNCTION(interact_igloo_barrier); - BIND_FUNCTION(interact_tornado); - BIND_FUNCTION(interact_whirlpool); - BIND_FUNCTION(interact_strong_wind); - BIND_FUNCTION(interact_flame); - BIND_FUNCTION(interact_snufit_bullet); - BIND_FUNCTION(interact_clam_or_bubba); - BIND_FUNCTION(interact_bully); - BIND_FUNCTION(interact_shock); - BIND_FUNCTION(interact_mr_blizzard); - BIND_FUNCTION(interact_hit_from_below); - BIND_FUNCTION(interact_bounce_top); - BIND_FUNCTION(interact_spiny_walking); - BIND_FUNCTION(interact_damage); - BIND_FUNCTION(interact_breakable); - BIND_FUNCTION(interact_koopa_shell); - BIND_FUNCTION(interact_pole); - BIND_FUNCTION(interact_hoot); - BIND_FUNCTION(interact_cap); - BIND_FUNCTION(interact_grabbable); - BIND_FUNCTION(interact_text); - BIND_FUNCTION(mario_obj_angle_to_object); - BIND_FUNCTION(mario_stop_riding_object); - BIND_FUNCTION(mario_grab_used_object); - BIND_FUNCTION(mario_drop_held_object); - BIND_FUNCTION(mario_throw_held_object); - BIND_FUNCTION(mario_stop_riding_and_holding); - BIND_FUNCTION(does_mario_have_normal_cap_on_head); - BIND_FUNCTION(does_mario_have_blown_cap); - BIND_FUNCTION(mario_blow_off_cap); - BIND_FUNCTION(mario_lose_cap_to_enemy); - BIND_FUNCTION(mario_retrieve_cap); - BIND_FUNCTION(mario_get_collided_object); - BIND_FUNCTION(mario_check_object_grab); - BIND_FUNCTION(get_door_save_file_flag); - BIND_FUNCTION(passes_pvp_interaction_checks); - BIND_FUNCTION(should_push_or_pull_door); - BIND_FUNCTION(take_damage_and_knock_back); - BIND_FUNCTION(get_mario_cap_flag); - BIND_FUNCTION(determine_interaction); + smlua_bind_function(L, "interact_coin", smlua_func_interact_coin); + smlua_bind_function(L, "interact_water_ring", smlua_func_interact_water_ring); + smlua_bind_function(L, "interact_star_or_key", smlua_func_interact_star_or_key); + smlua_bind_function(L, "interact_bbh_entrance", smlua_func_interact_bbh_entrance); + smlua_bind_function(L, "interact_warp", smlua_func_interact_warp); + smlua_bind_function(L, "interact_warp_door", smlua_func_interact_warp_door); + smlua_bind_function(L, "interact_door", smlua_func_interact_door); + smlua_bind_function(L, "interact_cannon_base", smlua_func_interact_cannon_base); + smlua_bind_function(L, "interact_player", smlua_func_interact_player); + smlua_bind_function(L, "interact_igloo_barrier", smlua_func_interact_igloo_barrier); + smlua_bind_function(L, "interact_tornado", smlua_func_interact_tornado); + smlua_bind_function(L, "interact_whirlpool", smlua_func_interact_whirlpool); + smlua_bind_function(L, "interact_strong_wind", smlua_func_interact_strong_wind); + smlua_bind_function(L, "interact_flame", smlua_func_interact_flame); + smlua_bind_function(L, "interact_snufit_bullet", smlua_func_interact_snufit_bullet); + smlua_bind_function(L, "interact_clam_or_bubba", smlua_func_interact_clam_or_bubba); + smlua_bind_function(L, "interact_bully", smlua_func_interact_bully); + smlua_bind_function(L, "interact_shock", smlua_func_interact_shock); + smlua_bind_function(L, "interact_mr_blizzard", smlua_func_interact_mr_blizzard); + smlua_bind_function(L, "interact_hit_from_below", smlua_func_interact_hit_from_below); + smlua_bind_function(L, "interact_bounce_top", smlua_func_interact_bounce_top); + smlua_bind_function(L, "interact_spiny_walking", smlua_func_interact_spiny_walking); + smlua_bind_function(L, "interact_damage", smlua_func_interact_damage); + smlua_bind_function(L, "interact_breakable", smlua_func_interact_breakable); + smlua_bind_function(L, "interact_koopa_shell", smlua_func_interact_koopa_shell); + smlua_bind_function(L, "interact_pole", smlua_func_interact_pole); + smlua_bind_function(L, "interact_hoot", smlua_func_interact_hoot); + smlua_bind_function(L, "interact_cap", smlua_func_interact_cap); + smlua_bind_function(L, "interact_grabbable", smlua_func_interact_grabbable); + smlua_bind_function(L, "interact_text", smlua_func_interact_text); + smlua_bind_function(L, "mario_obj_angle_to_object", smlua_func_mario_obj_angle_to_object); + smlua_bind_function(L, "mario_stop_riding_object", smlua_func_mario_stop_riding_object); + smlua_bind_function(L, "mario_grab_used_object", smlua_func_mario_grab_used_object); + smlua_bind_function(L, "mario_drop_held_object", smlua_func_mario_drop_held_object); + smlua_bind_function(L, "mario_throw_held_object", smlua_func_mario_throw_held_object); + smlua_bind_function(L, "mario_stop_riding_and_holding", smlua_func_mario_stop_riding_and_holding); + smlua_bind_function(L, "does_mario_have_normal_cap_on_head", smlua_func_does_mario_have_normal_cap_on_head); + smlua_bind_function(L, "does_mario_have_blown_cap", smlua_func_does_mario_have_blown_cap); + smlua_bind_function(L, "mario_blow_off_cap", smlua_func_mario_blow_off_cap); + smlua_bind_function(L, "mario_lose_cap_to_enemy", smlua_func_mario_lose_cap_to_enemy); + smlua_bind_function(L, "mario_retrieve_cap", smlua_func_mario_retrieve_cap); + smlua_bind_function(L, "mario_get_collided_object", smlua_func_mario_get_collided_object); + smlua_bind_function(L, "mario_check_object_grab", smlua_func_mario_check_object_grab); + smlua_bind_function(L, "get_door_save_file_flag", smlua_func_get_door_save_file_flag); + smlua_bind_function(L, "passes_pvp_interaction_checks", smlua_func_passes_pvp_interaction_checks); + smlua_bind_function(L, "should_push_or_pull_door", smlua_func_should_push_or_pull_door); + smlua_bind_function(L, "take_damage_and_knock_back", smlua_func_take_damage_and_knock_back); + smlua_bind_function(L, "get_mario_cap_flag", smlua_func_get_mario_cap_flag); + smlua_bind_function(L, "determine_interaction", smlua_func_determine_interaction); // lag_compensation.h - BIND_FUNCTION(lag_compensation_store); - BIND_FUNCTION(lag_compensation_get_local_state); - BIND_FUNCTION(lag_compensation_get_local_state_ready); - BIND_FUNCTION(lag_compensation_get_local_state_index); + smlua_bind_function(L, "lag_compensation_store", smlua_func_lag_compensation_store); + smlua_bind_function(L, "lag_compensation_get_local_state", smlua_func_lag_compensation_get_local_state); + smlua_bind_function(L, "lag_compensation_get_local_state_ready", smlua_func_lag_compensation_get_local_state_ready); + smlua_bind_function(L, "lag_compensation_get_local_state_index", smlua_func_lag_compensation_get_local_state_index); // level_info.h - BIND_FUNCTION(get_level_name_ascii); - BIND_FUNCTION(get_level_name_sm64); - BIND_FUNCTION(get_level_name); - BIND_FUNCTION(get_star_name_ascii); - BIND_FUNCTION(get_star_name_sm64); - BIND_FUNCTION(get_star_name); + smlua_bind_function(L, "get_level_name_ascii", smlua_func_get_level_name_ascii); + smlua_bind_function(L, "get_level_name_sm64", smlua_func_get_level_name_sm64); + smlua_bind_function(L, "get_level_name", smlua_func_get_level_name); + smlua_bind_function(L, "get_star_name_ascii", smlua_func_get_star_name_ascii); + smlua_bind_function(L, "get_star_name_sm64", smlua_func_get_star_name_sm64); + smlua_bind_function(L, "get_star_name", smlua_func_get_star_name); // level_script.h - BIND_FUNCTION(area_create_warp_node); + smlua_bind_function(L, "area_create_warp_node", smlua_func_area_create_warp_node); // level_update.h - BIND_FUNCTION(level_control_timer_running); - BIND_FUNCTION(pressed_pause); - BIND_FUNCTION(fade_into_special_warp); - BIND_FUNCTION(get_instant_warp); - BIND_FUNCTION(get_painting_warp_node); - BIND_FUNCTION(initiate_painting_warp); - BIND_FUNCTION(level_trigger_warp); - BIND_FUNCTION(warp_special); - BIND_FUNCTION(lvl_set_current_level); + smlua_bind_function(L, "level_control_timer_running", smlua_func_level_control_timer_running); + smlua_bind_function(L, "pressed_pause", smlua_func_pressed_pause); + smlua_bind_function(L, "fade_into_special_warp", smlua_func_fade_into_special_warp); + smlua_bind_function(L, "get_instant_warp", smlua_func_get_instant_warp); + smlua_bind_function(L, "get_painting_warp_node", smlua_func_get_painting_warp_node); + smlua_bind_function(L, "initiate_painting_warp", smlua_func_initiate_painting_warp); + smlua_bind_function(L, "level_trigger_warp", smlua_func_level_trigger_warp); + smlua_bind_function(L, "warp_special", smlua_func_warp_special); + smlua_bind_function(L, "lvl_set_current_level", smlua_func_lvl_set_current_level); // lighting_engine.h - BIND_FUNCTION(le_is_enabled); - BIND_FUNCTION(le_set_mode); - BIND_FUNCTION(le_get_mode); - BIND_FUNCTION(le_set_tone_mapping); - BIND_FUNCTION(le_get_ambient_color); - BIND_FUNCTION(le_set_ambient_color); - BIND_FUNCTION(le_calculate_lighting_color); - BIND_FUNCTION(le_calculate_lighting_color_with_normal); - BIND_FUNCTION(le_calculate_lighting_dir); - BIND_FUNCTION(le_add_light); - BIND_FUNCTION(le_remove_light); - BIND_FUNCTION(le_get_light_count); - BIND_FUNCTION(le_light_exists); - BIND_FUNCTION(le_get_light_pos); - BIND_FUNCTION(le_set_light_pos); - BIND_FUNCTION(le_get_light_color); - BIND_FUNCTION(le_set_light_color); - BIND_FUNCTION(le_get_light_radius); - BIND_FUNCTION(le_set_light_radius); - BIND_FUNCTION(le_get_light_intensity); - BIND_FUNCTION(le_set_light_intensity); - BIND_FUNCTION(le_get_light_use_surface_normals); - BIND_FUNCTION(le_set_light_use_surface_normals); + smlua_bind_function(L, "le_is_enabled", smlua_func_le_is_enabled); + smlua_bind_function(L, "le_set_mode", smlua_func_le_set_mode); + smlua_bind_function(L, "le_get_mode", smlua_func_le_get_mode); + smlua_bind_function(L, "le_set_tone_mapping", smlua_func_le_set_tone_mapping); + smlua_bind_function(L, "le_get_ambient_color", smlua_func_le_get_ambient_color); + smlua_bind_function(L, "le_set_ambient_color", smlua_func_le_set_ambient_color); + smlua_bind_function(L, "le_calculate_lighting_color", smlua_func_le_calculate_lighting_color); + smlua_bind_function(L, "le_calculate_lighting_color_with_normal", smlua_func_le_calculate_lighting_color_with_normal); + smlua_bind_function(L, "le_calculate_lighting_dir", smlua_func_le_calculate_lighting_dir); + smlua_bind_function(L, "le_add_light", smlua_func_le_add_light); + smlua_bind_function(L, "le_remove_light", smlua_func_le_remove_light); + smlua_bind_function(L, "le_get_light_count", smlua_func_le_get_light_count); + smlua_bind_function(L, "le_light_exists", smlua_func_le_light_exists); + smlua_bind_function(L, "le_get_light_pos", smlua_func_le_get_light_pos); + smlua_bind_function(L, "le_set_light_pos", smlua_func_le_set_light_pos); + smlua_bind_function(L, "le_get_light_color", smlua_func_le_get_light_color); + smlua_bind_function(L, "le_set_light_color", smlua_func_le_set_light_color); + smlua_bind_function(L, "le_get_light_radius", smlua_func_le_get_light_radius); + smlua_bind_function(L, "le_set_light_radius", smlua_func_le_set_light_radius); + smlua_bind_function(L, "le_get_light_intensity", smlua_func_le_get_light_intensity); + smlua_bind_function(L, "le_set_light_intensity", smlua_func_le_set_light_intensity); + smlua_bind_function(L, "le_get_light_use_surface_normals", smlua_func_le_get_light_use_surface_normals); + smlua_bind_function(L, "le_set_light_use_surface_normals", smlua_func_le_set_light_use_surface_normals); // mario.h - BIND_FUNCTION(is_anim_at_end); - BIND_FUNCTION(is_anim_past_end); - BIND_FUNCTION(set_mario_animation); - BIND_FUNCTION(set_mario_anim_with_accel); - BIND_FUNCTION(set_character_animation); - BIND_FUNCTION(set_character_anim_with_accel); - BIND_FUNCTION(set_anim_to_frame); - BIND_FUNCTION(is_anim_past_frame); - BIND_FUNCTION(find_mario_anim_flags_and_translation); - BIND_FUNCTION(update_mario_pos_for_anim); - BIND_FUNCTION(return_mario_anim_y_translation); - BIND_FUNCTION(play_sound_if_no_flag); - BIND_FUNCTION(play_mario_jump_sound); - BIND_FUNCTION(adjust_sound_for_speed); - BIND_FUNCTION(play_sound_and_spawn_particles); - BIND_FUNCTION(play_mario_action_sound); - BIND_FUNCTION(play_mario_landing_sound); - BIND_FUNCTION(play_mario_landing_sound_once); - BIND_FUNCTION(play_mario_heavy_landing_sound); - BIND_FUNCTION(play_mario_heavy_landing_sound_once); - BIND_FUNCTION(play_mario_sound); - BIND_FUNCTION(mario_is_crouching); - BIND_FUNCTION(mario_is_ground_pound_landing); - BIND_FUNCTION(mario_can_bubble); - BIND_FUNCTION(mario_set_bubbled); - BIND_FUNCTION(mario_set_forward_vel); - BIND_FUNCTION(mario_get_floor_class); - BIND_FUNCTION(mario_get_terrain_sound_addend); - BIND_FUNCTION(resolve_and_return_wall_collisions); - BIND_FUNCTION(resolve_and_return_wall_collisions_data); - //BIND_FUNCTION(vec3f_find_ceil); <--- UNIMPLEMENTED - //BIND_FUNCTION(vec3f_mario_ceil); <--- UNIMPLEMENTED - BIND_FUNCTION(mario_facing_downhill); - BIND_FUNCTION(mario_floor_is_slippery); - BIND_FUNCTION(mario_floor_is_slope); - BIND_FUNCTION(mario_floor_is_steep); - BIND_FUNCTION(find_floor_height_relative_polar); - BIND_FUNCTION(find_floor_slope); - BIND_FUNCTION(update_mario_sound_and_camera); - BIND_FUNCTION(set_steep_jump_action); - BIND_FUNCTION(set_mario_y_vel_based_on_fspeed); - BIND_FUNCTION(set_mario_action); - BIND_FUNCTION(set_jump_from_landing); - BIND_FUNCTION(set_jumping_action); - BIND_FUNCTION(drop_and_set_mario_action); - BIND_FUNCTION(hurt_and_set_mario_action); - BIND_FUNCTION(check_common_action_exits); - BIND_FUNCTION(check_common_hold_action_exits); - BIND_FUNCTION(transition_submerged_to_walking); - BIND_FUNCTION(set_water_plunge_action); - BIND_FUNCTION(execute_mario_action); - BIND_FUNCTION(force_idle_state); - BIND_FUNCTION(init_single_mario); - BIND_FUNCTION(set_mario_particle_flags); - BIND_FUNCTION(mario_update_wall); - BIND_FUNCTION(get_mario_state_from_object); + smlua_bind_function(L, "is_anim_at_end", smlua_func_is_anim_at_end); + smlua_bind_function(L, "is_anim_past_end", smlua_func_is_anim_past_end); + smlua_bind_function(L, "set_mario_animation", smlua_func_set_mario_animation); + smlua_bind_function(L, "set_mario_anim_with_accel", smlua_func_set_mario_anim_with_accel); + smlua_bind_function(L, "set_character_animation", smlua_func_set_character_animation); + smlua_bind_function(L, "set_character_anim_with_accel", smlua_func_set_character_anim_with_accel); + smlua_bind_function(L, "set_anim_to_frame", smlua_func_set_anim_to_frame); + smlua_bind_function(L, "is_anim_past_frame", smlua_func_is_anim_past_frame); + smlua_bind_function(L, "find_mario_anim_flags_and_translation", smlua_func_find_mario_anim_flags_and_translation); + smlua_bind_function(L, "update_mario_pos_for_anim", smlua_func_update_mario_pos_for_anim); + smlua_bind_function(L, "return_mario_anim_y_translation", smlua_func_return_mario_anim_y_translation); + smlua_bind_function(L, "play_sound_if_no_flag", smlua_func_play_sound_if_no_flag); + smlua_bind_function(L, "play_mario_jump_sound", smlua_func_play_mario_jump_sound); + smlua_bind_function(L, "adjust_sound_for_speed", smlua_func_adjust_sound_for_speed); + smlua_bind_function(L, "play_sound_and_spawn_particles", smlua_func_play_sound_and_spawn_particles); + smlua_bind_function(L, "play_mario_action_sound", smlua_func_play_mario_action_sound); + smlua_bind_function(L, "play_mario_landing_sound", smlua_func_play_mario_landing_sound); + smlua_bind_function(L, "play_mario_landing_sound_once", smlua_func_play_mario_landing_sound_once); + smlua_bind_function(L, "play_mario_heavy_landing_sound", smlua_func_play_mario_heavy_landing_sound); + smlua_bind_function(L, "play_mario_heavy_landing_sound_once", smlua_func_play_mario_heavy_landing_sound_once); + smlua_bind_function(L, "play_mario_sound", smlua_func_play_mario_sound); + smlua_bind_function(L, "mario_is_crouching", smlua_func_mario_is_crouching); + smlua_bind_function(L, "mario_is_ground_pound_landing", smlua_func_mario_is_ground_pound_landing); + smlua_bind_function(L, "mario_can_bubble", smlua_func_mario_can_bubble); + smlua_bind_function(L, "mario_set_bubbled", smlua_func_mario_set_bubbled); + smlua_bind_function(L, "mario_set_forward_vel", smlua_func_mario_set_forward_vel); + smlua_bind_function(L, "mario_get_floor_class", smlua_func_mario_get_floor_class); + smlua_bind_function(L, "mario_get_terrain_sound_addend", smlua_func_mario_get_terrain_sound_addend); + smlua_bind_function(L, "resolve_and_return_wall_collisions", smlua_func_resolve_and_return_wall_collisions); + smlua_bind_function(L, "resolve_and_return_wall_collisions_data", smlua_func_resolve_and_return_wall_collisions_data); + //smlua_bind_function(L, "vec3f_find_ceil", smlua_func_vec3f_find_ceil); <--- UNIMPLEMENTED + //smlua_bind_function(L, "vec3f_mario_ceil", smlua_func_vec3f_mario_ceil); <--- UNIMPLEMENTED + smlua_bind_function(L, "mario_facing_downhill", smlua_func_mario_facing_downhill); + smlua_bind_function(L, "mario_floor_is_slippery", smlua_func_mario_floor_is_slippery); + smlua_bind_function(L, "mario_floor_is_slope", smlua_func_mario_floor_is_slope); + smlua_bind_function(L, "mario_floor_is_steep", smlua_func_mario_floor_is_steep); + smlua_bind_function(L, "find_floor_height_relative_polar", smlua_func_find_floor_height_relative_polar); + smlua_bind_function(L, "find_floor_slope", smlua_func_find_floor_slope); + smlua_bind_function(L, "update_mario_sound_and_camera", smlua_func_update_mario_sound_and_camera); + smlua_bind_function(L, "set_steep_jump_action", smlua_func_set_steep_jump_action); + smlua_bind_function(L, "set_mario_y_vel_based_on_fspeed", smlua_func_set_mario_y_vel_based_on_fspeed); + smlua_bind_function(L, "set_mario_action", smlua_func_set_mario_action); + smlua_bind_function(L, "set_jump_from_landing", smlua_func_set_jump_from_landing); + smlua_bind_function(L, "set_jumping_action", smlua_func_set_jumping_action); + smlua_bind_function(L, "drop_and_set_mario_action", smlua_func_drop_and_set_mario_action); + smlua_bind_function(L, "hurt_and_set_mario_action", smlua_func_hurt_and_set_mario_action); + smlua_bind_function(L, "check_common_action_exits", smlua_func_check_common_action_exits); + smlua_bind_function(L, "check_common_hold_action_exits", smlua_func_check_common_hold_action_exits); + smlua_bind_function(L, "transition_submerged_to_walking", smlua_func_transition_submerged_to_walking); + smlua_bind_function(L, "set_water_plunge_action", smlua_func_set_water_plunge_action); + smlua_bind_function(L, "execute_mario_action", smlua_func_execute_mario_action); + smlua_bind_function(L, "force_idle_state", smlua_func_force_idle_state); + smlua_bind_function(L, "init_single_mario", smlua_func_init_single_mario); + smlua_bind_function(L, "set_mario_particle_flags", smlua_func_set_mario_particle_flags); + smlua_bind_function(L, "mario_update_wall", smlua_func_mario_update_wall); + smlua_bind_function(L, "get_mario_state_from_object", smlua_func_get_mario_state_from_object); // mario_actions_airborne.c - BIND_FUNCTION(play_flip_sounds); - BIND_FUNCTION(play_far_fall_sound); + smlua_bind_function(L, "play_flip_sounds", smlua_func_play_flip_sounds); + smlua_bind_function(L, "play_far_fall_sound", smlua_func_play_far_fall_sound); #ifndef VERSION_JP - BIND_FUNCTION(play_knockback_sound); + smlua_bind_function(L, "play_knockback_sound", smlua_func_play_knockback_sound); #endif - BIND_FUNCTION(lava_boost_on_wall); - BIND_FUNCTION(check_fall_damage); - BIND_FUNCTION(check_kick_or_dive_in_air); - BIND_FUNCTION(should_get_stuck_in_ground); - BIND_FUNCTION(check_fall_damage_or_get_stuck); - BIND_FUNCTION(check_horizontal_wind); - BIND_FUNCTION(update_air_with_turn); - BIND_FUNCTION(update_air_without_turn); - BIND_FUNCTION(update_lava_boost_or_twirling); - BIND_FUNCTION(update_flying_yaw); - BIND_FUNCTION(update_flying_pitch); - BIND_FUNCTION(update_flying); - BIND_FUNCTION(common_air_action_step); - BIND_FUNCTION(common_air_knockback_step); - BIND_FUNCTION(check_wall_kick); - BIND_FUNCTION(check_common_airborne_cancels); - BIND_FUNCTION(mario_execute_airborne_action); + smlua_bind_function(L, "lava_boost_on_wall", smlua_func_lava_boost_on_wall); + smlua_bind_function(L, "check_fall_damage", smlua_func_check_fall_damage); + smlua_bind_function(L, "check_kick_or_dive_in_air", smlua_func_check_kick_or_dive_in_air); + smlua_bind_function(L, "should_get_stuck_in_ground", smlua_func_should_get_stuck_in_ground); + smlua_bind_function(L, "check_fall_damage_or_get_stuck", smlua_func_check_fall_damage_or_get_stuck); + smlua_bind_function(L, "check_horizontal_wind", smlua_func_check_horizontal_wind); + smlua_bind_function(L, "update_air_with_turn", smlua_func_update_air_with_turn); + smlua_bind_function(L, "update_air_without_turn", smlua_func_update_air_without_turn); + smlua_bind_function(L, "update_lava_boost_or_twirling", smlua_func_update_lava_boost_or_twirling); + smlua_bind_function(L, "update_flying_yaw", smlua_func_update_flying_yaw); + smlua_bind_function(L, "update_flying_pitch", smlua_func_update_flying_pitch); + smlua_bind_function(L, "update_flying", smlua_func_update_flying); + smlua_bind_function(L, "common_air_action_step", smlua_func_common_air_action_step); + smlua_bind_function(L, "common_air_knockback_step", smlua_func_common_air_knockback_step); + smlua_bind_function(L, "check_wall_kick", smlua_func_check_wall_kick); + smlua_bind_function(L, "check_common_airborne_cancels", smlua_func_check_common_airborne_cancels); + smlua_bind_function(L, "mario_execute_airborne_action", smlua_func_mario_execute_airborne_action); // mario_actions_automatic.c - BIND_FUNCTION(add_tree_leaf_particles); - BIND_FUNCTION(play_climbing_sounds); - BIND_FUNCTION(set_pole_position); - BIND_FUNCTION(perform_hanging_step); - BIND_FUNCTION(update_hang_moving); - BIND_FUNCTION(update_hang_stationary); - BIND_FUNCTION(let_go_of_ledge); - BIND_FUNCTION(climb_up_ledge); - BIND_FUNCTION(update_ledge_climb_camera); - BIND_FUNCTION(update_ledge_climb); - BIND_FUNCTION(mario_pop_bubble); - BIND_FUNCTION(check_common_automatic_cancels); - BIND_FUNCTION(mario_execute_automatic_action); + smlua_bind_function(L, "add_tree_leaf_particles", smlua_func_add_tree_leaf_particles); + smlua_bind_function(L, "play_climbing_sounds", smlua_func_play_climbing_sounds); + smlua_bind_function(L, "set_pole_position", smlua_func_set_pole_position); + smlua_bind_function(L, "perform_hanging_step", smlua_func_perform_hanging_step); + smlua_bind_function(L, "update_hang_moving", smlua_func_update_hang_moving); + smlua_bind_function(L, "update_hang_stationary", smlua_func_update_hang_stationary); + smlua_bind_function(L, "let_go_of_ledge", smlua_func_let_go_of_ledge); + smlua_bind_function(L, "climb_up_ledge", smlua_func_climb_up_ledge); + smlua_bind_function(L, "update_ledge_climb_camera", smlua_func_update_ledge_climb_camera); + smlua_bind_function(L, "update_ledge_climb", smlua_func_update_ledge_climb); + smlua_bind_function(L, "mario_pop_bubble", smlua_func_mario_pop_bubble); + smlua_bind_function(L, "check_common_automatic_cancels", smlua_func_check_common_automatic_cancels); + smlua_bind_function(L, "mario_execute_automatic_action", smlua_func_mario_execute_automatic_action); // mario_actions_cutscene.c - BIND_FUNCTION(get_credits_str_width); - BIND_FUNCTION(bhv_end_peach_loop); - BIND_FUNCTION(bhv_end_toad_loop); - BIND_FUNCTION(get_star_collection_dialog); - BIND_FUNCTION(handle_save_menu); - BIND_FUNCTION(cutscene_take_cap_off); - BIND_FUNCTION(cutscene_put_cap_on); - BIND_FUNCTION(mario_ready_to_speak); - BIND_FUNCTION(should_start_or_continue_dialog); - BIND_FUNCTION(general_star_dance_handler); - BIND_FUNCTION(common_death_handler); - BIND_FUNCTION(launch_mario_until_land); - BIND_FUNCTION(stuck_in_ground_handler); - BIND_FUNCTION(generate_yellow_sparkles); - BIND_FUNCTION(mario_execute_cutscene_action); + smlua_bind_function(L, "get_credits_str_width", smlua_func_get_credits_str_width); + smlua_bind_function(L, "bhv_end_peach_loop", smlua_func_bhv_end_peach_loop); + smlua_bind_function(L, "bhv_end_toad_loop", smlua_func_bhv_end_toad_loop); + smlua_bind_function(L, "get_star_collection_dialog", smlua_func_get_star_collection_dialog); + smlua_bind_function(L, "handle_save_menu", smlua_func_handle_save_menu); + smlua_bind_function(L, "cutscene_take_cap_off", smlua_func_cutscene_take_cap_off); + smlua_bind_function(L, "cutscene_put_cap_on", smlua_func_cutscene_put_cap_on); + smlua_bind_function(L, "mario_ready_to_speak", smlua_func_mario_ready_to_speak); + smlua_bind_function(L, "should_start_or_continue_dialog", smlua_func_should_start_or_continue_dialog); + smlua_bind_function(L, "general_star_dance_handler", smlua_func_general_star_dance_handler); + smlua_bind_function(L, "common_death_handler", smlua_func_common_death_handler); + smlua_bind_function(L, "launch_mario_until_land", smlua_func_launch_mario_until_land); + smlua_bind_function(L, "stuck_in_ground_handler", smlua_func_stuck_in_ground_handler); + smlua_bind_function(L, "generate_yellow_sparkles", smlua_func_generate_yellow_sparkles); + smlua_bind_function(L, "mario_execute_cutscene_action", smlua_func_mario_execute_cutscene_action); // mario_actions_moving.c - BIND_FUNCTION(tilt_body_running); - BIND_FUNCTION(play_step_sound); - BIND_FUNCTION(align_with_floor); - BIND_FUNCTION(begin_walking_action); - BIND_FUNCTION(check_ledge_climb_down); - BIND_FUNCTION(slide_bonk); - BIND_FUNCTION(set_triple_jump_action); - BIND_FUNCTION(update_sliding_angle); - BIND_FUNCTION(update_sliding); - BIND_FUNCTION(apply_slope_accel); - BIND_FUNCTION(apply_landing_accel); - BIND_FUNCTION(update_shell_speed); - BIND_FUNCTION(apply_slope_decel); - BIND_FUNCTION(update_decelerating_speed); - BIND_FUNCTION(update_walking_speed); - BIND_FUNCTION(should_begin_sliding); - BIND_FUNCTION(analog_stick_held_back); - BIND_FUNCTION(check_ground_dive_or_punch); - BIND_FUNCTION(begin_braking_action); - BIND_FUNCTION(anim_and_audio_for_walk); - BIND_FUNCTION(anim_and_audio_for_hold_walk); - BIND_FUNCTION(anim_and_audio_for_heavy_walk); - BIND_FUNCTION(push_or_sidle_wall); - BIND_FUNCTION(tilt_body_walking); - BIND_FUNCTION(tilt_body_ground_shell); - BIND_FUNCTION(tilt_body_butt_slide); - BIND_FUNCTION(common_slide_action); - BIND_FUNCTION(common_slide_action_with_jump); - BIND_FUNCTION(stomach_slide_action); - BIND_FUNCTION(common_ground_knockback_action); - BIND_FUNCTION(common_landing_action); - //BIND_FUNCTION(common_landing_cancels); <--- UNIMPLEMENTED - BIND_FUNCTION(quicksand_jump_land_action); - BIND_FUNCTION(check_common_moving_cancels); - BIND_FUNCTION(mario_execute_moving_action); + smlua_bind_function(L, "tilt_body_running", smlua_func_tilt_body_running); + smlua_bind_function(L, "play_step_sound", smlua_func_play_step_sound); + smlua_bind_function(L, "align_with_floor", smlua_func_align_with_floor); + smlua_bind_function(L, "begin_walking_action", smlua_func_begin_walking_action); + smlua_bind_function(L, "check_ledge_climb_down", smlua_func_check_ledge_climb_down); + smlua_bind_function(L, "slide_bonk", smlua_func_slide_bonk); + smlua_bind_function(L, "set_triple_jump_action", smlua_func_set_triple_jump_action); + smlua_bind_function(L, "update_sliding_angle", smlua_func_update_sliding_angle); + smlua_bind_function(L, "update_sliding", smlua_func_update_sliding); + smlua_bind_function(L, "apply_slope_accel", smlua_func_apply_slope_accel); + smlua_bind_function(L, "apply_landing_accel", smlua_func_apply_landing_accel); + smlua_bind_function(L, "update_shell_speed", smlua_func_update_shell_speed); + smlua_bind_function(L, "apply_slope_decel", smlua_func_apply_slope_decel); + smlua_bind_function(L, "update_decelerating_speed", smlua_func_update_decelerating_speed); + smlua_bind_function(L, "update_walking_speed", smlua_func_update_walking_speed); + smlua_bind_function(L, "should_begin_sliding", smlua_func_should_begin_sliding); + smlua_bind_function(L, "analog_stick_held_back", smlua_func_analog_stick_held_back); + smlua_bind_function(L, "check_ground_dive_or_punch", smlua_func_check_ground_dive_or_punch); + smlua_bind_function(L, "begin_braking_action", smlua_func_begin_braking_action); + smlua_bind_function(L, "anim_and_audio_for_walk", smlua_func_anim_and_audio_for_walk); + smlua_bind_function(L, "anim_and_audio_for_hold_walk", smlua_func_anim_and_audio_for_hold_walk); + smlua_bind_function(L, "anim_and_audio_for_heavy_walk", smlua_func_anim_and_audio_for_heavy_walk); + smlua_bind_function(L, "push_or_sidle_wall", smlua_func_push_or_sidle_wall); + smlua_bind_function(L, "tilt_body_walking", smlua_func_tilt_body_walking); + smlua_bind_function(L, "tilt_body_ground_shell", smlua_func_tilt_body_ground_shell); + smlua_bind_function(L, "tilt_body_butt_slide", smlua_func_tilt_body_butt_slide); + smlua_bind_function(L, "common_slide_action", smlua_func_common_slide_action); + smlua_bind_function(L, "common_slide_action_with_jump", smlua_func_common_slide_action_with_jump); + smlua_bind_function(L, "stomach_slide_action", smlua_func_stomach_slide_action); + smlua_bind_function(L, "common_ground_knockback_action", smlua_func_common_ground_knockback_action); + smlua_bind_function(L, "common_landing_action", smlua_func_common_landing_action); + //smlua_bind_function(L, "common_landing_cancels", smlua_func_common_landing_cancels); <--- UNIMPLEMENTED + smlua_bind_function(L, "quicksand_jump_land_action", smlua_func_quicksand_jump_land_action); + smlua_bind_function(L, "check_common_moving_cancels", smlua_func_check_common_moving_cancels); + smlua_bind_function(L, "mario_execute_moving_action", smlua_func_mario_execute_moving_action); // mario_actions_object.c - BIND_FUNCTION(animated_stationary_ground_step); - BIND_FUNCTION(mario_update_punch_sequence); - BIND_FUNCTION(check_common_object_cancels); - BIND_FUNCTION(mario_execute_object_action); + smlua_bind_function(L, "animated_stationary_ground_step", smlua_func_animated_stationary_ground_step); + smlua_bind_function(L, "mario_update_punch_sequence", smlua_func_mario_update_punch_sequence); + smlua_bind_function(L, "check_common_object_cancels", smlua_func_check_common_object_cancels); + smlua_bind_function(L, "mario_execute_object_action", smlua_func_mario_execute_object_action); // mario_actions_stationary.c - BIND_FUNCTION(check_common_idle_cancels); - BIND_FUNCTION(check_common_hold_idle_cancels); - BIND_FUNCTION(play_anim_sound); - BIND_FUNCTION(stopping_step); - BIND_FUNCTION(landing_step); - BIND_FUNCTION(check_common_landing_cancels); - BIND_FUNCTION(mario_exit_palette_editor); - BIND_FUNCTION(check_common_stationary_cancels); - BIND_FUNCTION(mario_execute_stationary_action); + smlua_bind_function(L, "check_common_idle_cancels", smlua_func_check_common_idle_cancels); + smlua_bind_function(L, "check_common_hold_idle_cancels", smlua_func_check_common_hold_idle_cancels); + smlua_bind_function(L, "play_anim_sound", smlua_func_play_anim_sound); + smlua_bind_function(L, "stopping_step", smlua_func_stopping_step); + smlua_bind_function(L, "landing_step", smlua_func_landing_step); + smlua_bind_function(L, "check_common_landing_cancels", smlua_func_check_common_landing_cancels); + smlua_bind_function(L, "mario_exit_palette_editor", smlua_func_mario_exit_palette_editor); + smlua_bind_function(L, "check_common_stationary_cancels", smlua_func_check_common_stationary_cancels); + smlua_bind_function(L, "mario_execute_stationary_action", smlua_func_mario_execute_stationary_action); // mario_actions_submerged.c - BIND_FUNCTION(set_swimming_at_surface_particles); - BIND_FUNCTION(perform_water_full_step); - BIND_FUNCTION(apply_water_current); - BIND_FUNCTION(perform_water_step); - BIND_FUNCTION(float_surface_gfx); - BIND_FUNCTION(mario_execute_submerged_action); + smlua_bind_function(L, "set_swimming_at_surface_particles", smlua_func_set_swimming_at_surface_particles); + smlua_bind_function(L, "perform_water_full_step", smlua_func_perform_water_full_step); + smlua_bind_function(L, "apply_water_current", smlua_func_apply_water_current); + smlua_bind_function(L, "perform_water_step", smlua_func_perform_water_step); + smlua_bind_function(L, "float_surface_gfx", smlua_func_float_surface_gfx); + smlua_bind_function(L, "mario_execute_submerged_action", smlua_func_mario_execute_submerged_action); // mario_misc.h - BIND_FUNCTION(bhv_toad_message_init); - BIND_FUNCTION(bhv_toad_message_loop); - BIND_FUNCTION(bhv_unlock_door_star_init); - BIND_FUNCTION(bhv_unlock_door_star_loop); - BIND_FUNCTION(geo_get_mario_state); - BIND_FUNCTION(geo_get_body_state); + smlua_bind_function(L, "bhv_toad_message_init", smlua_func_bhv_toad_message_init); + smlua_bind_function(L, "bhv_toad_message_loop", smlua_func_bhv_toad_message_loop); + smlua_bind_function(L, "bhv_unlock_door_star_init", smlua_func_bhv_unlock_door_star_init); + smlua_bind_function(L, "bhv_unlock_door_star_loop", smlua_func_bhv_unlock_door_star_loop); + smlua_bind_function(L, "geo_get_mario_state", smlua_func_geo_get_mario_state); + smlua_bind_function(L, "geo_get_body_state", smlua_func_geo_get_body_state); // mario_step.h - BIND_FUNCTION(get_additive_y_vel_for_jumps); - BIND_FUNCTION(mario_bonk_reflection); - //BIND_FUNCTION(init_bully_collision_data); <--- UNIMPLEMENTED - BIND_FUNCTION(mario_update_quicksand); - BIND_FUNCTION(mario_push_off_steep_floor); - BIND_FUNCTION(mario_update_moving_sand); - BIND_FUNCTION(mario_update_windy_ground); - BIND_FUNCTION(stop_and_set_height_to_floor); - BIND_FUNCTION(stationary_ground_step); - BIND_FUNCTION(perform_ground_step); - BIND_FUNCTION(perform_air_step); - BIND_FUNCTION(set_vel_from_pitch_and_yaw); + smlua_bind_function(L, "get_additive_y_vel_for_jumps", smlua_func_get_additive_y_vel_for_jumps); + smlua_bind_function(L, "mario_bonk_reflection", smlua_func_mario_bonk_reflection); + //smlua_bind_function(L, "init_bully_collision_data", smlua_func_init_bully_collision_data); <--- UNIMPLEMENTED + smlua_bind_function(L, "mario_update_quicksand", smlua_func_mario_update_quicksand); + smlua_bind_function(L, "mario_push_off_steep_floor", smlua_func_mario_push_off_steep_floor); + smlua_bind_function(L, "mario_update_moving_sand", smlua_func_mario_update_moving_sand); + smlua_bind_function(L, "mario_update_windy_ground", smlua_func_mario_update_windy_ground); + smlua_bind_function(L, "stop_and_set_height_to_floor", smlua_func_stop_and_set_height_to_floor); + smlua_bind_function(L, "stationary_ground_step", smlua_func_stationary_ground_step); + smlua_bind_function(L, "perform_ground_step", smlua_func_perform_ground_step); + smlua_bind_function(L, "perform_air_step", smlua_func_perform_air_step); + smlua_bind_function(L, "set_vel_from_pitch_and_yaw", smlua_func_set_vel_from_pitch_and_yaw); // math_util.h - BIND_FUNCTION(sins); - BIND_FUNCTION(coss); - BIND_FUNCTION(atan2s); - BIND_FUNCTION(atan2f); - BIND_FUNCTION(approach_s32); - BIND_FUNCTION(approach_f32); - BIND_FUNCTION(spline_get_weights); - BIND_FUNCTION(anim_spline_init); - BIND_FUNCTION(anim_spline_poll); - BIND_FUNCTION(vec3f_rotate_zxy); - BIND_FUNCTION(vec3f_rotate_around_n); - BIND_FUNCTION(vec3f_project); - BIND_FUNCTION(vec3f_transform); - BIND_FUNCTION(vec3f_get_dist_and_angle); - BIND_FUNCTION(vec3f_set_dist_and_angle); - BIND_FUNCTION(find_vector_perpendicular_to_plane); - BIND_FUNCTION(mtxf_lookat); - BIND_FUNCTION(mtxf_rotate_zxy_and_translate); - BIND_FUNCTION(mtxf_rotate_xyz_and_translate); - BIND_FUNCTION(mtxf_billboard); - BIND_FUNCTION(mtxf_cylboard); - BIND_FUNCTION(mtxf_align_terrain_normal); - BIND_FUNCTION(mtxf_align_terrain_triangle); - BIND_FUNCTION(mtxf_mul); - BIND_FUNCTION(mtxf_mul_vec3s); - BIND_FUNCTION(mtxf_rotate_xy); - BIND_FUNCTION(mtxf_inverse); - BIND_FUNCTION(mtxf_inverse_non_affine); - BIND_FUNCTION(get_pos_from_transform_mtx); + smlua_bind_function(L, "sins", smlua_func_sins); + smlua_bind_function(L, "coss", smlua_func_coss); + smlua_bind_function(L, "atan2s", smlua_func_atan2s); + smlua_bind_function(L, "atan2f", smlua_func_atan2f); + smlua_bind_function(L, "approach_s32", smlua_func_approach_s32); + smlua_bind_function(L, "approach_f32", smlua_func_approach_f32); + smlua_bind_function(L, "spline_get_weights", smlua_func_spline_get_weights); + smlua_bind_function(L, "anim_spline_init", smlua_func_anim_spline_init); + smlua_bind_function(L, "anim_spline_poll", smlua_func_anim_spline_poll); + smlua_bind_function(L, "vec3f_rotate_zxy", smlua_func_vec3f_rotate_zxy); + smlua_bind_function(L, "vec3f_rotate_around_n", smlua_func_vec3f_rotate_around_n); + smlua_bind_function(L, "vec3f_project", smlua_func_vec3f_project); + smlua_bind_function(L, "vec3f_transform", smlua_func_vec3f_transform); + smlua_bind_function(L, "vec3f_get_dist_and_angle", smlua_func_vec3f_get_dist_and_angle); + smlua_bind_function(L, "vec3f_set_dist_and_angle", smlua_func_vec3f_set_dist_and_angle); + smlua_bind_function(L, "find_vector_perpendicular_to_plane", smlua_func_find_vector_perpendicular_to_plane); + smlua_bind_function(L, "mtxf_lookat", smlua_func_mtxf_lookat); + smlua_bind_function(L, "mtxf_rotate_zxy_and_translate", smlua_func_mtxf_rotate_zxy_and_translate); + smlua_bind_function(L, "mtxf_rotate_xyz_and_translate", smlua_func_mtxf_rotate_xyz_and_translate); + smlua_bind_function(L, "mtxf_billboard", smlua_func_mtxf_billboard); + smlua_bind_function(L, "mtxf_cylboard", smlua_func_mtxf_cylboard); + smlua_bind_function(L, "mtxf_align_terrain_normal", smlua_func_mtxf_align_terrain_normal); + smlua_bind_function(L, "mtxf_align_terrain_triangle", smlua_func_mtxf_align_terrain_triangle); + smlua_bind_function(L, "mtxf_mul", smlua_func_mtxf_mul); + smlua_bind_function(L, "mtxf_mul_vec3s", smlua_func_mtxf_mul_vec3s); + smlua_bind_function(L, "mtxf_rotate_xy", smlua_func_mtxf_rotate_xy); + smlua_bind_function(L, "mtxf_inverse", smlua_func_mtxf_inverse); + smlua_bind_function(L, "mtxf_inverse_non_affine", smlua_func_mtxf_inverse_non_affine); + smlua_bind_function(L, "get_pos_from_transform_mtx", smlua_func_get_pos_from_transform_mtx); // math_util.inl - BIND_FUNCTION(replace_value_if_not_zero); - BIND_FUNCTION(sm64_to_radians); - BIND_FUNCTION(radians_to_sm64); - BIND_FUNCTION(sm64_to_degrees); - BIND_FUNCTION(degrees_to_sm64); + smlua_bind_function(L, "replace_value_if_not_zero", smlua_func_replace_value_if_not_zero); + smlua_bind_function(L, "sm64_to_radians", smlua_func_sm64_to_radians); + smlua_bind_function(L, "radians_to_sm64", smlua_func_radians_to_sm64); + smlua_bind_function(L, "sm64_to_degrees", smlua_func_sm64_to_degrees); + smlua_bind_function(L, "degrees_to_sm64", smlua_func_degrees_to_sm64); // math_util_mat4.inl - BIND_FUNCTION(mtxf_zero); - BIND_FUNCTION(mtxf_copy); - BIND_FUNCTION(mtxf_identity); - BIND_FUNCTION(mtxf_translate); - BIND_FUNCTION(mtxf_scale_vec3f); - //BIND_FUNCTION(mtxf_to_mtx); <--- UNIMPLEMENTED + smlua_bind_function(L, "mtxf_zero", smlua_func_mtxf_zero); + smlua_bind_function(L, "mtxf_copy", smlua_func_mtxf_copy); + smlua_bind_function(L, "mtxf_identity", smlua_func_mtxf_identity); + smlua_bind_function(L, "mtxf_translate", smlua_func_mtxf_translate); + smlua_bind_function(L, "mtxf_scale_vec3f", smlua_func_mtxf_scale_vec3f); + //smlua_bind_function(L, "mtxf_to_mtx", smlua_func_mtxf_to_mtx); <--- UNIMPLEMENTED // math_util_vec3f.inl - BIND_FUNCTION(vec3f_zero); - BIND_FUNCTION(vec3f_copy); - BIND_FUNCTION(vec3f_set); - BIND_FUNCTION(vec3f_add); - BIND_FUNCTION(vec3f_sum); - BIND_FUNCTION(vec3f_sub); - BIND_FUNCTION(vec3f_dif); - BIND_FUNCTION(vec3f_mul); - BIND_FUNCTION(vec3f_mult); - BIND_FUNCTION(vec3f_prod); - BIND_FUNCTION(vec3f_div); - BIND_FUNCTION(vec3f_length); - BIND_FUNCTION(vec3f_normalize); - BIND_FUNCTION(vec3f_set_magnitude); - BIND_FUNCTION(vec3f_dot); - BIND_FUNCTION(vec3f_cross); - BIND_FUNCTION(vec3f_combine); - BIND_FUNCTION(vec3f_dist); - BIND_FUNCTION(vec3f_hdist); - BIND_FUNCTION(vec3f_is_zero); - BIND_FUNCTION(vec3f_to_vec3i); - BIND_FUNCTION(vec3f_to_vec3s); + smlua_bind_function(L, "vec3f_zero", smlua_func_vec3f_zero); + smlua_bind_function(L, "vec3f_copy", smlua_func_vec3f_copy); + smlua_bind_function(L, "vec3f_set", smlua_func_vec3f_set); + smlua_bind_function(L, "vec3f_add", smlua_func_vec3f_add); + smlua_bind_function(L, "vec3f_sum", smlua_func_vec3f_sum); + smlua_bind_function(L, "vec3f_sub", smlua_func_vec3f_sub); + smlua_bind_function(L, "vec3f_dif", smlua_func_vec3f_dif); + smlua_bind_function(L, "vec3f_mul", smlua_func_vec3f_mul); + smlua_bind_function(L, "vec3f_mult", smlua_func_vec3f_mult); + smlua_bind_function(L, "vec3f_prod", smlua_func_vec3f_prod); + smlua_bind_function(L, "vec3f_div", smlua_func_vec3f_div); + smlua_bind_function(L, "vec3f_length", smlua_func_vec3f_length); + smlua_bind_function(L, "vec3f_normalize", smlua_func_vec3f_normalize); + smlua_bind_function(L, "vec3f_set_magnitude", smlua_func_vec3f_set_magnitude); + smlua_bind_function(L, "vec3f_dot", smlua_func_vec3f_dot); + smlua_bind_function(L, "vec3f_cross", smlua_func_vec3f_cross); + smlua_bind_function(L, "vec3f_combine", smlua_func_vec3f_combine); + smlua_bind_function(L, "vec3f_dist", smlua_func_vec3f_dist); + smlua_bind_function(L, "vec3f_hdist", smlua_func_vec3f_hdist); + smlua_bind_function(L, "vec3f_is_zero", smlua_func_vec3f_is_zero); + smlua_bind_function(L, "vec3f_to_vec3i", smlua_func_vec3f_to_vec3i); + smlua_bind_function(L, "vec3f_to_vec3s", smlua_func_vec3f_to_vec3s); // math_util_vec3i.inl - BIND_FUNCTION(vec3i_zero); - BIND_FUNCTION(vec3i_copy); - BIND_FUNCTION(vec3i_set); - BIND_FUNCTION(vec3i_add); - BIND_FUNCTION(vec3i_sum); - BIND_FUNCTION(vec3i_sub); - BIND_FUNCTION(vec3i_dif); - BIND_FUNCTION(vec3i_mul); - BIND_FUNCTION(vec3i_mult); - BIND_FUNCTION(vec3i_prod); - BIND_FUNCTION(vec3i_div); - BIND_FUNCTION(vec3i_length); - BIND_FUNCTION(vec3i_normalize); - BIND_FUNCTION(vec3i_set_magnitude); - BIND_FUNCTION(vec3i_dot); - BIND_FUNCTION(vec3i_cross); - BIND_FUNCTION(vec3i_combine); - BIND_FUNCTION(vec3i_dist); - BIND_FUNCTION(vec3i_hdist); - BIND_FUNCTION(vec3i_is_zero); - BIND_FUNCTION(vec3i_to_vec3f); - BIND_FUNCTION(vec3i_to_vec3s); + smlua_bind_function(L, "vec3i_zero", smlua_func_vec3i_zero); + smlua_bind_function(L, "vec3i_copy", smlua_func_vec3i_copy); + smlua_bind_function(L, "vec3i_set", smlua_func_vec3i_set); + smlua_bind_function(L, "vec3i_add", smlua_func_vec3i_add); + smlua_bind_function(L, "vec3i_sum", smlua_func_vec3i_sum); + smlua_bind_function(L, "vec3i_sub", smlua_func_vec3i_sub); + smlua_bind_function(L, "vec3i_dif", smlua_func_vec3i_dif); + smlua_bind_function(L, "vec3i_mul", smlua_func_vec3i_mul); + smlua_bind_function(L, "vec3i_mult", smlua_func_vec3i_mult); + smlua_bind_function(L, "vec3i_prod", smlua_func_vec3i_prod); + smlua_bind_function(L, "vec3i_div", smlua_func_vec3i_div); + smlua_bind_function(L, "vec3i_length", smlua_func_vec3i_length); + smlua_bind_function(L, "vec3i_normalize", smlua_func_vec3i_normalize); + smlua_bind_function(L, "vec3i_set_magnitude", smlua_func_vec3i_set_magnitude); + smlua_bind_function(L, "vec3i_dot", smlua_func_vec3i_dot); + smlua_bind_function(L, "vec3i_cross", smlua_func_vec3i_cross); + smlua_bind_function(L, "vec3i_combine", smlua_func_vec3i_combine); + smlua_bind_function(L, "vec3i_dist", smlua_func_vec3i_dist); + smlua_bind_function(L, "vec3i_hdist", smlua_func_vec3i_hdist); + smlua_bind_function(L, "vec3i_is_zero", smlua_func_vec3i_is_zero); + smlua_bind_function(L, "vec3i_to_vec3f", smlua_func_vec3i_to_vec3f); + smlua_bind_function(L, "vec3i_to_vec3s", smlua_func_vec3i_to_vec3s); // math_util_vec3s.inl - BIND_FUNCTION(vec3s_zero); - BIND_FUNCTION(vec3s_copy); - BIND_FUNCTION(vec3s_set); - BIND_FUNCTION(vec3s_add); - BIND_FUNCTION(vec3s_sum); - BIND_FUNCTION(vec3s_sub); - BIND_FUNCTION(vec3s_dif); - BIND_FUNCTION(vec3s_mul); - BIND_FUNCTION(vec3s_mult); - BIND_FUNCTION(vec3s_prod); - BIND_FUNCTION(vec3s_div); - BIND_FUNCTION(vec3s_length); - BIND_FUNCTION(vec3s_normalize); - BIND_FUNCTION(vec3s_set_magnitude); - BIND_FUNCTION(vec3s_dot); - BIND_FUNCTION(vec3s_cross); - BIND_FUNCTION(vec3s_combine); - BIND_FUNCTION(vec3s_dist); - BIND_FUNCTION(vec3s_hdist); - BIND_FUNCTION(vec3s_is_zero); - BIND_FUNCTION(vec3s_to_vec3f); - BIND_FUNCTION(vec3s_to_vec3i); + smlua_bind_function(L, "vec3s_zero", smlua_func_vec3s_zero); + smlua_bind_function(L, "vec3s_copy", smlua_func_vec3s_copy); + smlua_bind_function(L, "vec3s_set", smlua_func_vec3s_set); + smlua_bind_function(L, "vec3s_add", smlua_func_vec3s_add); + smlua_bind_function(L, "vec3s_sum", smlua_func_vec3s_sum); + smlua_bind_function(L, "vec3s_sub", smlua_func_vec3s_sub); + smlua_bind_function(L, "vec3s_dif", smlua_func_vec3s_dif); + smlua_bind_function(L, "vec3s_mul", smlua_func_vec3s_mul); + smlua_bind_function(L, "vec3s_mult", smlua_func_vec3s_mult); + smlua_bind_function(L, "vec3s_prod", smlua_func_vec3s_prod); + smlua_bind_function(L, "vec3s_div", smlua_func_vec3s_div); + smlua_bind_function(L, "vec3s_length", smlua_func_vec3s_length); + smlua_bind_function(L, "vec3s_normalize", smlua_func_vec3s_normalize); + smlua_bind_function(L, "vec3s_set_magnitude", smlua_func_vec3s_set_magnitude); + smlua_bind_function(L, "vec3s_dot", smlua_func_vec3s_dot); + smlua_bind_function(L, "vec3s_cross", smlua_func_vec3s_cross); + smlua_bind_function(L, "vec3s_combine", smlua_func_vec3s_combine); + smlua_bind_function(L, "vec3s_dist", smlua_func_vec3s_dist); + smlua_bind_function(L, "vec3s_hdist", smlua_func_vec3s_hdist); + smlua_bind_function(L, "vec3s_is_zero", smlua_func_vec3s_is_zero); + smlua_bind_function(L, "vec3s_to_vec3f", smlua_func_vec3s_to_vec3f); + smlua_bind_function(L, "vec3s_to_vec3i", smlua_func_vec3s_to_vec3i); // misc.h - BIND_FUNCTION(smooth_step); - BIND_FUNCTION(update_all_mario_stars); - BIND_FUNCTION(clock_elapsed); - BIND_FUNCTION(clock_elapsed_f64); - BIND_FUNCTION(clock_elapsed_ticks); - BIND_FUNCTION(clock_is_date); - BIND_FUNCTION(delta_interpolate_f32); - BIND_FUNCTION(delta_interpolate_s32); - BIND_FUNCTION(delta_interpolate_vec3f); - BIND_FUNCTION(delta_interpolate_vec3s); + smlua_bind_function(L, "smooth_step", smlua_func_smooth_step); + smlua_bind_function(L, "update_all_mario_stars", smlua_func_update_all_mario_stars); + smlua_bind_function(L, "clock_elapsed", smlua_func_clock_elapsed); + smlua_bind_function(L, "clock_elapsed_f64", smlua_func_clock_elapsed_f64); + smlua_bind_function(L, "clock_elapsed_ticks", smlua_func_clock_elapsed_ticks); + smlua_bind_function(L, "clock_is_date", smlua_func_clock_is_date); + smlua_bind_function(L, "delta_interpolate_f32", smlua_func_delta_interpolate_f32); + smlua_bind_function(L, "delta_interpolate_s32", smlua_func_delta_interpolate_s32); + smlua_bind_function(L, "delta_interpolate_vec3f", smlua_func_delta_interpolate_vec3f); + smlua_bind_function(L, "delta_interpolate_vec3s", smlua_func_delta_interpolate_vec3s); // mod_fs.h - BIND_FUNCTION(mod_fs_exists); - BIND_FUNCTION(mod_fs_get); - BIND_FUNCTION(mod_fs_reload); - BIND_FUNCTION(mod_fs_create); - BIND_FUNCTION(mod_fs_get_filename); - BIND_FUNCTION(mod_fs_get_file); - BIND_FUNCTION(mod_fs_create_file); - BIND_FUNCTION(mod_fs_move_file); - BIND_FUNCTION(mod_fs_copy_file); - BIND_FUNCTION(mod_fs_delete_file); - BIND_FUNCTION(mod_fs_clear); - BIND_FUNCTION(mod_fs_save); - BIND_FUNCTION(mod_fs_delete); - BIND_FUNCTION(mod_fs_set_public); - BIND_FUNCTION(mod_fs_file_read_bool); - BIND_FUNCTION(mod_fs_file_read_integer); - BIND_FUNCTION(mod_fs_file_read_number); - BIND_FUNCTION(mod_fs_file_read_bytes); - BIND_FUNCTION(mod_fs_file_read_string); - BIND_FUNCTION(mod_fs_file_read_line); - BIND_FUNCTION(mod_fs_file_write_bool); - BIND_FUNCTION(mod_fs_file_write_integer); - BIND_FUNCTION(mod_fs_file_write_number); - BIND_FUNCTION(mod_fs_file_write_bytes); - BIND_FUNCTION(mod_fs_file_write_string); - BIND_FUNCTION(mod_fs_file_write_line); - BIND_FUNCTION(mod_fs_file_seek); - BIND_FUNCTION(mod_fs_file_rewind); - BIND_FUNCTION(mod_fs_file_is_eof); - BIND_FUNCTION(mod_fs_file_fill); - BIND_FUNCTION(mod_fs_file_erase); - BIND_FUNCTION(mod_fs_file_set_text_mode); - BIND_FUNCTION(mod_fs_file_set_public); - BIND_FUNCTION(mod_fs_hide_errors); - BIND_FUNCTION(mod_fs_get_last_error); + smlua_bind_function(L, "mod_fs_exists", smlua_func_mod_fs_exists); + smlua_bind_function(L, "mod_fs_get", smlua_func_mod_fs_get); + smlua_bind_function(L, "mod_fs_reload", smlua_func_mod_fs_reload); + smlua_bind_function(L, "mod_fs_create", smlua_func_mod_fs_create); + smlua_bind_function(L, "mod_fs_get_filename", smlua_func_mod_fs_get_filename); + smlua_bind_function(L, "mod_fs_get_file", smlua_func_mod_fs_get_file); + smlua_bind_function(L, "mod_fs_create_file", smlua_func_mod_fs_create_file); + smlua_bind_function(L, "mod_fs_move_file", smlua_func_mod_fs_move_file); + smlua_bind_function(L, "mod_fs_copy_file", smlua_func_mod_fs_copy_file); + smlua_bind_function(L, "mod_fs_delete_file", smlua_func_mod_fs_delete_file); + smlua_bind_function(L, "mod_fs_clear", smlua_func_mod_fs_clear); + smlua_bind_function(L, "mod_fs_save", smlua_func_mod_fs_save); + smlua_bind_function(L, "mod_fs_delete", smlua_func_mod_fs_delete); + smlua_bind_function(L, "mod_fs_set_public", smlua_func_mod_fs_set_public); + smlua_bind_function(L, "mod_fs_file_read_bool", smlua_func_mod_fs_file_read_bool); + smlua_bind_function(L, "mod_fs_file_read_integer", smlua_func_mod_fs_file_read_integer); + smlua_bind_function(L, "mod_fs_file_read_number", smlua_func_mod_fs_file_read_number); + smlua_bind_function(L, "mod_fs_file_read_bytes", smlua_func_mod_fs_file_read_bytes); + smlua_bind_function(L, "mod_fs_file_read_string", smlua_func_mod_fs_file_read_string); + smlua_bind_function(L, "mod_fs_file_read_line", smlua_func_mod_fs_file_read_line); + smlua_bind_function(L, "mod_fs_file_write_bool", smlua_func_mod_fs_file_write_bool); + smlua_bind_function(L, "mod_fs_file_write_integer", smlua_func_mod_fs_file_write_integer); + smlua_bind_function(L, "mod_fs_file_write_number", smlua_func_mod_fs_file_write_number); + smlua_bind_function(L, "mod_fs_file_write_bytes", smlua_func_mod_fs_file_write_bytes); + smlua_bind_function(L, "mod_fs_file_write_string", smlua_func_mod_fs_file_write_string); + smlua_bind_function(L, "mod_fs_file_write_line", smlua_func_mod_fs_file_write_line); + smlua_bind_function(L, "mod_fs_file_seek", smlua_func_mod_fs_file_seek); + smlua_bind_function(L, "mod_fs_file_rewind", smlua_func_mod_fs_file_rewind); + smlua_bind_function(L, "mod_fs_file_is_eof", smlua_func_mod_fs_file_is_eof); + smlua_bind_function(L, "mod_fs_file_fill", smlua_func_mod_fs_file_fill); + smlua_bind_function(L, "mod_fs_file_erase", smlua_func_mod_fs_file_erase); + smlua_bind_function(L, "mod_fs_file_set_text_mode", smlua_func_mod_fs_file_set_text_mode); + smlua_bind_function(L, "mod_fs_file_set_public", smlua_func_mod_fs_file_set_public); + smlua_bind_function(L, "mod_fs_hide_errors", smlua_func_mod_fs_hide_errors); + smlua_bind_function(L, "mod_fs_get_last_error", smlua_func_mod_fs_get_last_error); // mod_storage.h - BIND_FUNCTION(mod_storage_save); - BIND_FUNCTION(mod_storage_save_number); - BIND_FUNCTION(mod_storage_save_bool); - BIND_FUNCTION(mod_storage_load); - BIND_FUNCTION(mod_storage_load_number); - BIND_FUNCTION(mod_storage_load_bool); - BIND_FUNCTION(mod_storage_load_all); - BIND_FUNCTION(mod_storage_exists); - BIND_FUNCTION(mod_storage_remove); - BIND_FUNCTION(mod_storage_clear); + smlua_bind_function(L, "mod_storage_save", smlua_func_mod_storage_save); + smlua_bind_function(L, "mod_storage_save_number", smlua_func_mod_storage_save_number); + smlua_bind_function(L, "mod_storage_save_bool", smlua_func_mod_storage_save_bool); + smlua_bind_function(L, "mod_storage_load", smlua_func_mod_storage_load); + smlua_bind_function(L, "mod_storage_load_number", smlua_func_mod_storage_load_number); + smlua_bind_function(L, "mod_storage_load_bool", smlua_func_mod_storage_load_bool); + smlua_bind_function(L, "mod_storage_load_all", smlua_func_mod_storage_load_all); + smlua_bind_function(L, "mod_storage_exists", smlua_func_mod_storage_exists); + smlua_bind_function(L, "mod_storage_remove", smlua_func_mod_storage_remove); + smlua_bind_function(L, "mod_storage_clear", smlua_func_mod_storage_clear); // network_player.h - BIND_FUNCTION(network_player_connected_count); - BIND_FUNCTION(network_player_set_description); - BIND_FUNCTION(network_player_set_override_location); - BIND_FUNCTION(network_player_from_global_index); - BIND_FUNCTION(get_network_player_from_level); - BIND_FUNCTION(get_network_player_from_area); - BIND_FUNCTION(get_network_player_smallest_global); - BIND_FUNCTION(network_player_get_palette_color_channel); - BIND_FUNCTION(network_player_get_override_palette_color_channel); - BIND_FUNCTION(network_player_set_override_palette_color); - BIND_FUNCTION(network_player_reset_override_palette); - BIND_FUNCTION(network_player_is_override_palette_same); + smlua_bind_function(L, "network_player_connected_count", smlua_func_network_player_connected_count); + smlua_bind_function(L, "network_player_set_description", smlua_func_network_player_set_description); + smlua_bind_function(L, "network_player_set_override_location", smlua_func_network_player_set_override_location); + smlua_bind_function(L, "network_player_from_global_index", smlua_func_network_player_from_global_index); + smlua_bind_function(L, "get_network_player_from_level", smlua_func_get_network_player_from_level); + smlua_bind_function(L, "get_network_player_from_area", smlua_func_get_network_player_from_area); + smlua_bind_function(L, "get_network_player_smallest_global", smlua_func_get_network_player_smallest_global); + smlua_bind_function(L, "network_player_get_palette_color_channel", smlua_func_network_player_get_palette_color_channel); + smlua_bind_function(L, "network_player_get_override_palette_color_channel", smlua_func_network_player_get_override_palette_color_channel); + smlua_bind_function(L, "network_player_set_override_palette_color", smlua_func_network_player_set_override_palette_color); + smlua_bind_function(L, "network_player_reset_override_palette", smlua_func_network_player_reset_override_palette); + smlua_bind_function(L, "network_player_is_override_palette_same", smlua_func_network_player_is_override_palette_same); // network_utils.h - BIND_FUNCTION(network_global_index_from_local); - BIND_FUNCTION(network_local_index_from_global); - BIND_FUNCTION(network_is_server); - BIND_FUNCTION(network_is_moderator); - BIND_FUNCTION(network_get_player_text_color_string); - BIND_FUNCTION(network_check_singleplayer_pause); - BIND_FUNCTION(network_discord_id_from_local_index); + smlua_bind_function(L, "network_global_index_from_local", smlua_func_network_global_index_from_local); + smlua_bind_function(L, "network_local_index_from_global", smlua_func_network_local_index_from_global); + smlua_bind_function(L, "network_is_server", smlua_func_network_is_server); + smlua_bind_function(L, "network_is_moderator", smlua_func_network_is_moderator); + smlua_bind_function(L, "network_get_player_text_color_string", smlua_func_network_get_player_text_color_string); + smlua_bind_function(L, "network_check_singleplayer_pause", smlua_func_network_check_singleplayer_pause); + smlua_bind_function(L, "network_discord_id_from_local_index", smlua_func_network_discord_id_from_local_index); // obj_behaviors.c - BIND_FUNCTION(set_yoshi_as_not_dead); - //BIND_FUNCTION(geo_obj_transparency_something); <--- UNIMPLEMENTED - BIND_FUNCTION(absf_2); - BIND_FUNCTION(obj_find_wall); - BIND_FUNCTION(turn_obj_away_from_steep_floor); - BIND_FUNCTION(obj_orient_graph); - BIND_FUNCTION(calc_obj_friction); - BIND_FUNCTION(calc_new_obj_vel_and_pos_y); - BIND_FUNCTION(calc_new_obj_vel_and_pos_y_underwater); - BIND_FUNCTION(obj_update_pos_vel_xz); - BIND_FUNCTION(obj_splash); - BIND_FUNCTION(object_step); - BIND_FUNCTION(object_step_without_floor_orient); - BIND_FUNCTION(obj_move_xyz_using_fvel_and_yaw); - BIND_FUNCTION(is_point_within_radius_of_mario); - BIND_FUNCTION(is_point_within_radius_of_any_player); - BIND_FUNCTION(is_player_active); - BIND_FUNCTION(is_other_player_active); - BIND_FUNCTION(is_player_in_local_area); - BIND_FUNCTION(nearest_mario_state_to_object); - BIND_FUNCTION(nearest_possible_mario_state_to_object); - BIND_FUNCTION(nearest_player_to_object); - BIND_FUNCTION(nearest_interacting_mario_state_to_object); - BIND_FUNCTION(nearest_interacting_player_to_object); - BIND_FUNCTION(is_nearest_mario_state_to_object); - BIND_FUNCTION(is_nearest_player_to_object); - BIND_FUNCTION(is_point_close_to_object); - BIND_FUNCTION(set_object_visibility); - BIND_FUNCTION(obj_return_home_if_safe); - BIND_FUNCTION(obj_return_and_displace_home); - BIND_FUNCTION(obj_check_if_facing_toward_angle); - BIND_FUNCTION(obj_find_wall_displacement); - BIND_FUNCTION(obj_spawn_yellow_coins); - BIND_FUNCTION(obj_flicker_and_disappear); - BIND_FUNCTION(current_mario_room_check); - BIND_FUNCTION(obj_check_floor_death); - BIND_FUNCTION(obj_lava_death); - BIND_FUNCTION(spawn_orange_number); + smlua_bind_function(L, "set_yoshi_as_not_dead", smlua_func_set_yoshi_as_not_dead); + //smlua_bind_function(L, "geo_obj_transparency_something", smlua_func_geo_obj_transparency_something); <--- UNIMPLEMENTED + smlua_bind_function(L, "absf_2", smlua_func_absf_2); + smlua_bind_function(L, "obj_find_wall", smlua_func_obj_find_wall); + smlua_bind_function(L, "turn_obj_away_from_steep_floor", smlua_func_turn_obj_away_from_steep_floor); + smlua_bind_function(L, "obj_orient_graph", smlua_func_obj_orient_graph); + smlua_bind_function(L, "calc_obj_friction", smlua_func_calc_obj_friction); + smlua_bind_function(L, "calc_new_obj_vel_and_pos_y", smlua_func_calc_new_obj_vel_and_pos_y); + smlua_bind_function(L, "calc_new_obj_vel_and_pos_y_underwater", smlua_func_calc_new_obj_vel_and_pos_y_underwater); + smlua_bind_function(L, "obj_update_pos_vel_xz", smlua_func_obj_update_pos_vel_xz); + smlua_bind_function(L, "obj_splash", smlua_func_obj_splash); + smlua_bind_function(L, "object_step", smlua_func_object_step); + smlua_bind_function(L, "object_step_without_floor_orient", smlua_func_object_step_without_floor_orient); + smlua_bind_function(L, "obj_move_xyz_using_fvel_and_yaw", smlua_func_obj_move_xyz_using_fvel_and_yaw); + smlua_bind_function(L, "is_point_within_radius_of_mario", smlua_func_is_point_within_radius_of_mario); + smlua_bind_function(L, "is_point_within_radius_of_any_player", smlua_func_is_point_within_radius_of_any_player); + smlua_bind_function(L, "is_player_active", smlua_func_is_player_active); + smlua_bind_function(L, "is_other_player_active", smlua_func_is_other_player_active); + smlua_bind_function(L, "is_player_in_local_area", smlua_func_is_player_in_local_area); + smlua_bind_function(L, "nearest_mario_state_to_object", smlua_func_nearest_mario_state_to_object); + smlua_bind_function(L, "nearest_possible_mario_state_to_object", smlua_func_nearest_possible_mario_state_to_object); + smlua_bind_function(L, "nearest_player_to_object", smlua_func_nearest_player_to_object); + smlua_bind_function(L, "nearest_interacting_mario_state_to_object", smlua_func_nearest_interacting_mario_state_to_object); + smlua_bind_function(L, "nearest_interacting_player_to_object", smlua_func_nearest_interacting_player_to_object); + smlua_bind_function(L, "is_nearest_mario_state_to_object", smlua_func_is_nearest_mario_state_to_object); + smlua_bind_function(L, "is_nearest_player_to_object", smlua_func_is_nearest_player_to_object); + smlua_bind_function(L, "is_point_close_to_object", smlua_func_is_point_close_to_object); + smlua_bind_function(L, "set_object_visibility", smlua_func_set_object_visibility); + smlua_bind_function(L, "obj_return_home_if_safe", smlua_func_obj_return_home_if_safe); + smlua_bind_function(L, "obj_return_and_displace_home", smlua_func_obj_return_and_displace_home); + smlua_bind_function(L, "obj_check_if_facing_toward_angle", smlua_func_obj_check_if_facing_toward_angle); + smlua_bind_function(L, "obj_find_wall_displacement", smlua_func_obj_find_wall_displacement); + smlua_bind_function(L, "obj_spawn_yellow_coins", smlua_func_obj_spawn_yellow_coins); + smlua_bind_function(L, "obj_flicker_and_disappear", smlua_func_obj_flicker_and_disappear); + smlua_bind_function(L, "current_mario_room_check", smlua_func_current_mario_room_check); + smlua_bind_function(L, "obj_check_floor_death", smlua_func_obj_check_floor_death); + smlua_bind_function(L, "obj_lava_death", smlua_func_obj_lava_death); + smlua_bind_function(L, "spawn_orange_number", smlua_func_spawn_orange_number); // obj_behaviors_2.c - BIND_FUNCTION(obj_is_rendering_enabled); - BIND_FUNCTION(obj_get_pitch_from_vel); - BIND_FUNCTION(obj_set_dist_from_home); - BIND_FUNCTION(obj_is_near_to_and_facing_mario); - BIND_FUNCTION(platform_on_track_update_pos_or_spawn_ball); - BIND_FUNCTION(cur_obj_spin_all_dimensions); - BIND_FUNCTION(obj_rotate_yaw_and_bounce_off_walls); - BIND_FUNCTION(obj_get_pitch_to_home); - BIND_FUNCTION(obj_compute_vel_from_move_pitch); - BIND_FUNCTION(cur_obj_init_anim_extend); - BIND_FUNCTION(cur_obj_init_anim_and_check_if_end); - BIND_FUNCTION(cur_obj_init_anim_check_frame); - BIND_FUNCTION(cur_obj_set_anim_if_at_end); - BIND_FUNCTION(cur_obj_play_sound_at_anim_range); - BIND_FUNCTION(obj_turn_pitch_toward_mario); - BIND_FUNCTION(approach_f32_ptr); - BIND_FUNCTION(obj_forward_vel_approach); - BIND_FUNCTION(obj_y_vel_approach); - BIND_FUNCTION(obj_move_pitch_approach); - BIND_FUNCTION(obj_face_pitch_approach); - BIND_FUNCTION(obj_face_yaw_approach); - BIND_FUNCTION(obj_face_roll_approach); - BIND_FUNCTION(obj_smooth_turn); - BIND_FUNCTION(obj_roll_to_match_yaw_turn); - BIND_FUNCTION(random_linear_offset); - BIND_FUNCTION(random_mod_offset); - BIND_FUNCTION(obj_random_fixed_turn); - BIND_FUNCTION(obj_grow_then_shrink); - BIND_FUNCTION(oscillate_toward); - BIND_FUNCTION(obj_update_blinking); - BIND_FUNCTION(obj_resolve_object_collisions); - BIND_FUNCTION(obj_bounce_off_walls_edges_objects); - BIND_FUNCTION(obj_resolve_collisions_and_turn); - BIND_FUNCTION(obj_die_if_health_non_positive); - BIND_FUNCTION(obj_unused_die); - BIND_FUNCTION(obj_set_knockback_action); - BIND_FUNCTION(obj_set_squished_action); - BIND_FUNCTION(obj_die_if_above_lava_and_health_non_positive); - BIND_FUNCTION(obj_handle_attacks); - BIND_FUNCTION(obj_act_knockback); - BIND_FUNCTION(obj_act_squished); - BIND_FUNCTION(obj_update_standard_actions); - BIND_FUNCTION(obj_check_attacks); - BIND_FUNCTION(obj_move_for_one_second); - BIND_FUNCTION(treat_far_home_as_mario); - BIND_FUNCTION(obj_spit_fire); + smlua_bind_function(L, "obj_is_rendering_enabled", smlua_func_obj_is_rendering_enabled); + smlua_bind_function(L, "obj_get_pitch_from_vel", smlua_func_obj_get_pitch_from_vel); + smlua_bind_function(L, "obj_set_dist_from_home", smlua_func_obj_set_dist_from_home); + smlua_bind_function(L, "obj_is_near_to_and_facing_mario", smlua_func_obj_is_near_to_and_facing_mario); + smlua_bind_function(L, "platform_on_track_update_pos_or_spawn_ball", smlua_func_platform_on_track_update_pos_or_spawn_ball); + smlua_bind_function(L, "cur_obj_spin_all_dimensions", smlua_func_cur_obj_spin_all_dimensions); + smlua_bind_function(L, "obj_rotate_yaw_and_bounce_off_walls", smlua_func_obj_rotate_yaw_and_bounce_off_walls); + smlua_bind_function(L, "obj_get_pitch_to_home", smlua_func_obj_get_pitch_to_home); + smlua_bind_function(L, "obj_compute_vel_from_move_pitch", smlua_func_obj_compute_vel_from_move_pitch); + smlua_bind_function(L, "cur_obj_init_anim_extend", smlua_func_cur_obj_init_anim_extend); + smlua_bind_function(L, "cur_obj_init_anim_and_check_if_end", smlua_func_cur_obj_init_anim_and_check_if_end); + smlua_bind_function(L, "cur_obj_init_anim_check_frame", smlua_func_cur_obj_init_anim_check_frame); + smlua_bind_function(L, "cur_obj_set_anim_if_at_end", smlua_func_cur_obj_set_anim_if_at_end); + smlua_bind_function(L, "cur_obj_play_sound_at_anim_range", smlua_func_cur_obj_play_sound_at_anim_range); + smlua_bind_function(L, "obj_turn_pitch_toward_mario", smlua_func_obj_turn_pitch_toward_mario); + smlua_bind_function(L, "approach_f32_ptr", smlua_func_approach_f32_ptr); + smlua_bind_function(L, "obj_forward_vel_approach", smlua_func_obj_forward_vel_approach); + smlua_bind_function(L, "obj_y_vel_approach", smlua_func_obj_y_vel_approach); + smlua_bind_function(L, "obj_move_pitch_approach", smlua_func_obj_move_pitch_approach); + smlua_bind_function(L, "obj_face_pitch_approach", smlua_func_obj_face_pitch_approach); + smlua_bind_function(L, "obj_face_yaw_approach", smlua_func_obj_face_yaw_approach); + smlua_bind_function(L, "obj_face_roll_approach", smlua_func_obj_face_roll_approach); + smlua_bind_function(L, "obj_smooth_turn", smlua_func_obj_smooth_turn); + smlua_bind_function(L, "obj_roll_to_match_yaw_turn", smlua_func_obj_roll_to_match_yaw_turn); + smlua_bind_function(L, "random_linear_offset", smlua_func_random_linear_offset); + smlua_bind_function(L, "random_mod_offset", smlua_func_random_mod_offset); + smlua_bind_function(L, "obj_random_fixed_turn", smlua_func_obj_random_fixed_turn); + smlua_bind_function(L, "obj_grow_then_shrink", smlua_func_obj_grow_then_shrink); + smlua_bind_function(L, "oscillate_toward", smlua_func_oscillate_toward); + smlua_bind_function(L, "obj_update_blinking", smlua_func_obj_update_blinking); + smlua_bind_function(L, "obj_resolve_object_collisions", smlua_func_obj_resolve_object_collisions); + smlua_bind_function(L, "obj_bounce_off_walls_edges_objects", smlua_func_obj_bounce_off_walls_edges_objects); + smlua_bind_function(L, "obj_resolve_collisions_and_turn", smlua_func_obj_resolve_collisions_and_turn); + smlua_bind_function(L, "obj_die_if_health_non_positive", smlua_func_obj_die_if_health_non_positive); + smlua_bind_function(L, "obj_unused_die", smlua_func_obj_unused_die); + smlua_bind_function(L, "obj_set_knockback_action", smlua_func_obj_set_knockback_action); + smlua_bind_function(L, "obj_set_squished_action", smlua_func_obj_set_squished_action); + smlua_bind_function(L, "obj_die_if_above_lava_and_health_non_positive", smlua_func_obj_die_if_above_lava_and_health_non_positive); + smlua_bind_function(L, "obj_handle_attacks", smlua_func_obj_handle_attacks); + smlua_bind_function(L, "obj_act_knockback", smlua_func_obj_act_knockback); + smlua_bind_function(L, "obj_act_squished", smlua_func_obj_act_squished); + smlua_bind_function(L, "obj_update_standard_actions", smlua_func_obj_update_standard_actions); + smlua_bind_function(L, "obj_check_attacks", smlua_func_obj_check_attacks); + smlua_bind_function(L, "obj_move_for_one_second", smlua_func_obj_move_for_one_second); + smlua_bind_function(L, "treat_far_home_as_mario", smlua_func_treat_far_home_as_mario); + smlua_bind_function(L, "obj_spit_fire", smlua_func_obj_spit_fire); // object_helpers.c - BIND_FUNCTION(clear_move_flag); - //BIND_FUNCTION(geo_update_projectile_pos_from_parent); <--- UNIMPLEMENTED - //BIND_FUNCTION(geo_update_layer_transparency); <--- UNIMPLEMENTED - //BIND_FUNCTION(geo_switch_anim_state); <--- UNIMPLEMENTED - BIND_FUNCTION(set_room_override); - //BIND_FUNCTION(geo_switch_area); <--- UNIMPLEMENTED - //BIND_FUNCTION(geo_choose_area_ext); <--- UNIMPLEMENTED - BIND_FUNCTION(obj_update_pos_from_parent_transformation); - BIND_FUNCTION(obj_apply_scale_to_matrix); - BIND_FUNCTION(create_transformation_from_matrices); - BIND_FUNCTION(obj_set_held_state); - BIND_FUNCTION(lateral_dist_between_objects); - BIND_FUNCTION(dist_between_objects); - BIND_FUNCTION(dist_between_object_and_point); - BIND_FUNCTION(cur_obj_forward_vel_approach_upward); - BIND_FUNCTION(approach_f32_signed); - BIND_FUNCTION(approach_f32_symmetric); - BIND_FUNCTION(approach_s16_symmetric); - BIND_FUNCTION(cur_obj_rotate_yaw_toward); - BIND_FUNCTION(obj_angle_to_object); - BIND_FUNCTION(obj_pitch_to_object); - BIND_FUNCTION(obj_angle_to_point); - BIND_FUNCTION(obj_turn_toward_object); - BIND_FUNCTION(obj_set_parent_relative_pos); - BIND_FUNCTION(obj_set_pos); - BIND_FUNCTION(obj_set_angle); - BIND_FUNCTION(obj_set_move_angle); - BIND_FUNCTION(obj_set_face_angle); - BIND_FUNCTION(obj_set_gfx_angle); - BIND_FUNCTION(obj_set_gfx_pos); - BIND_FUNCTION(obj_set_gfx_scale); - BIND_FUNCTION(spawn_water_droplet); - BIND_FUNCTION(obj_build_relative_transform); - BIND_FUNCTION(cur_obj_move_using_vel); - BIND_FUNCTION(obj_copy_graph_y_offset); - BIND_FUNCTION(obj_copy_pos_and_angle); - BIND_FUNCTION(obj_copy_pos); - BIND_FUNCTION(obj_copy_angle); - BIND_FUNCTION(obj_set_gfx_pos_from_pos); - BIND_FUNCTION(obj_init_animation); - BIND_FUNCTION(linear_mtxf_mul_vec3f); - BIND_FUNCTION(linear_mtxf_transpose_mul_vec3f); - BIND_FUNCTION(obj_apply_scale_to_transform); - BIND_FUNCTION(obj_copy_scale); - BIND_FUNCTION(obj_scale_xyz); - BIND_FUNCTION(obj_scale); - BIND_FUNCTION(cur_obj_scale); - BIND_FUNCTION(cur_obj_init_animation); - BIND_FUNCTION(cur_obj_init_animation_with_sound); - BIND_FUNCTION(obj_init_animation_with_accel_and_sound); - BIND_FUNCTION(cur_obj_init_animation_with_accel_and_sound); - //BIND_FUNCTION(obj_init_animation_with_sound); <--- UNIMPLEMENTED - BIND_FUNCTION(cur_obj_enable_rendering_and_become_tangible); - BIND_FUNCTION(cur_obj_enable_rendering); - BIND_FUNCTION(cur_obj_disable_rendering_and_become_intangible); - BIND_FUNCTION(cur_obj_disable_rendering); - BIND_FUNCTION(cur_obj_unhide); - BIND_FUNCTION(cur_obj_hide); - BIND_FUNCTION(cur_obj_set_pos_relative); - BIND_FUNCTION(cur_obj_set_pos_relative_to_parent); - BIND_FUNCTION(cur_obj_enable_rendering_2); - BIND_FUNCTION(cur_obj_unused_init_on_floor); - BIND_FUNCTION(obj_set_face_angle_to_move_angle); - BIND_FUNCTION(get_object_list_from_behavior); - BIND_FUNCTION(cur_obj_nearest_object_with_behavior); - BIND_FUNCTION(cur_obj_dist_to_nearest_object_with_behavior); - BIND_FUNCTION(cur_obj_find_nearest_pole); - BIND_FUNCTION(cur_obj_find_nearest_object_with_behavior); - BIND_FUNCTION(cur_obj_count_objects_with_behavior); - BIND_FUNCTION(find_unimportant_object); - BIND_FUNCTION(count_unimportant_objects); - BIND_FUNCTION(count_objects_with_behavior); - BIND_FUNCTION(find_object_with_behavior); - BIND_FUNCTION(cur_obj_find_nearby_held_actor); - BIND_FUNCTION(cur_obj_reset_timer_and_subaction); - BIND_FUNCTION(cur_obj_change_action); - BIND_FUNCTION(cur_obj_set_vel_from_mario_vel); - BIND_FUNCTION(cur_obj_reverse_animation); - BIND_FUNCTION(cur_obj_extend_animation_if_at_end); - BIND_FUNCTION(cur_obj_check_if_near_animation_end); - BIND_FUNCTION(cur_obj_check_if_at_animation_end); - BIND_FUNCTION(cur_obj_check_anim_frame); - BIND_FUNCTION(cur_obj_check_anim_frame_in_range); - BIND_FUNCTION(cur_obj_check_frame_prior_current_frame); - BIND_FUNCTION(mario_is_in_air_action); - BIND_FUNCTION(mario_is_dive_sliding); - BIND_FUNCTION(cur_obj_set_y_vel_and_animation); - BIND_FUNCTION(cur_obj_unrender_and_reset_state); - BIND_FUNCTION(cur_obj_move_after_thrown_or_dropped); - BIND_FUNCTION(cur_obj_get_thrown_or_placed); - BIND_FUNCTION(cur_obj_get_dropped); - BIND_FUNCTION(mario_set_flag); - BIND_FUNCTION(cur_obj_clear_interact_status_flag); - BIND_FUNCTION(obj_mark_for_deletion); - BIND_FUNCTION(cur_obj_disable); - BIND_FUNCTION(cur_obj_become_intangible); - BIND_FUNCTION(cur_obj_become_tangible); - BIND_FUNCTION(obj_become_tangible); - BIND_FUNCTION(cur_obj_update_floor_height); - BIND_FUNCTION(cur_obj_update_floor_height_and_get_floor); - BIND_FUNCTION(apply_drag_to_value); - BIND_FUNCTION(cur_obj_apply_drag_xz); - BIND_FUNCTION(cur_obj_move_xz); - BIND_FUNCTION(cur_obj_move_update_underwater_flags); - BIND_FUNCTION(cur_obj_move_update_ground_air_flags); - BIND_FUNCTION(cur_obj_move_y_and_get_water_level); - BIND_FUNCTION(cur_obj_move_y); - BIND_FUNCTION(cur_obj_unused_resolve_wall_collisions); - BIND_FUNCTION(abs_angle_diff); - BIND_FUNCTION(cur_obj_move_xz_using_fvel_and_yaw); - BIND_FUNCTION(cur_obj_move_y_with_terminal_vel); - BIND_FUNCTION(cur_obj_compute_vel_xz); - BIND_FUNCTION(increment_velocity_toward_range); - BIND_FUNCTION(obj_check_if_collided_with_object); - BIND_FUNCTION(cur_obj_set_behavior); - BIND_FUNCTION(obj_set_behavior); - BIND_FUNCTION(cur_obj_has_behavior); - BIND_FUNCTION(obj_has_behavior); - BIND_FUNCTION(cur_obj_lateral_dist_from_obj_to_home); - BIND_FUNCTION(cur_obj_lateral_dist_from_mario_to_home); - BIND_FUNCTION(cur_obj_lateral_dist_to_home); - BIND_FUNCTION(cur_obj_outside_home_square); - BIND_FUNCTION(cur_obj_outside_home_rectangle); - BIND_FUNCTION(cur_obj_set_pos_to_home); - BIND_FUNCTION(cur_obj_set_pos_to_home_and_stop); - BIND_FUNCTION(cur_obj_shake_y); - BIND_FUNCTION(cur_obj_start_cam_event); - BIND_FUNCTION(set_mario_interact_hoot_if_in_range); - BIND_FUNCTION(obj_set_billboard); - BIND_FUNCTION(obj_set_cylboard); - BIND_FUNCTION(cur_obj_set_billboard_if_vanilla_cam); - BIND_FUNCTION(obj_set_hitbox_radius_and_height); - BIND_FUNCTION(obj_set_hurtbox_radius_and_height); - BIND_FUNCTION(cur_obj_set_hitbox_radius_and_height); - BIND_FUNCTION(cur_obj_set_hurtbox_radius_and_height); - BIND_FUNCTION(obj_spawn_loot_coins); - BIND_FUNCTION(obj_spawn_loot_blue_coins); - BIND_FUNCTION(obj_spawn_loot_yellow_coins); - BIND_FUNCTION(cur_obj_spawn_loot_coin_at_mario_pos); - BIND_FUNCTION(cur_obj_abs_y_dist_to_home); - BIND_FUNCTION(cur_obj_advance_looping_anim); - BIND_FUNCTION(cur_obj_detect_steep_floor); - BIND_FUNCTION(cur_obj_resolve_wall_collisions); - BIND_FUNCTION(cur_obj_update_floor); - BIND_FUNCTION(cur_obj_update_floor_and_resolve_wall_collisions); - BIND_FUNCTION(cur_obj_update_floor_and_walls); - BIND_FUNCTION(cur_obj_move_standard); - BIND_FUNCTION(cur_obj_within_12k_bounds); - BIND_FUNCTION(cur_obj_move_using_vel_and_gravity); - BIND_FUNCTION(cur_obj_move_using_fvel_and_gravity); - BIND_FUNCTION(obj_set_pos_relative); - BIND_FUNCTION(cur_obj_angle_to_home); - BIND_FUNCTION(obj_set_gfx_pos_at_obj_pos); - BIND_FUNCTION(obj_translate_local); - BIND_FUNCTION(obj_build_transform_from_pos_and_angle); - BIND_FUNCTION(obj_set_throw_matrix_from_transform); - BIND_FUNCTION(obj_build_transform_relative_to_parent); - BIND_FUNCTION(obj_create_transform_from_self); - BIND_FUNCTION(cur_obj_rotate_move_angle_using_vel); - BIND_FUNCTION(cur_obj_rotate_face_angle_using_vel); - BIND_FUNCTION(cur_obj_set_face_angle_to_move_angle); - BIND_FUNCTION(cur_obj_follow_path); - BIND_FUNCTION(chain_segment_init); - BIND_FUNCTION(random_f32_around_zero); - BIND_FUNCTION(obj_scale_random); - BIND_FUNCTION(obj_translate_xyz_random); - BIND_FUNCTION(obj_translate_xz_random); - BIND_FUNCTION(obj_build_vel_from_transform); - BIND_FUNCTION(cur_obj_set_pos_via_transform); - BIND_FUNCTION(cur_obj_reflect_move_angle_off_wall); - BIND_FUNCTION(cur_obj_spawn_particles); - BIND_FUNCTION(obj_set_hitbox); - BIND_FUNCTION(signum_positive); - BIND_FUNCTION(cur_obj_wait_then_blink); - BIND_FUNCTION(cur_obj_is_mario_ground_pounding_platform); - BIND_FUNCTION(obj_is_mario_ground_pounding_platform); - BIND_FUNCTION(spawn_mist_particles); - BIND_FUNCTION(spawn_mist_particles_with_sound); - BIND_FUNCTION(cur_obj_push_mario_away); - BIND_FUNCTION(cur_obj_push_mario_away_from_cylinder); - BIND_FUNCTION(bhv_dust_smoke_loop); - BIND_FUNCTION(stub_obj_helpers_3); - BIND_FUNCTION(cur_obj_scale_over_time); - BIND_FUNCTION(cur_obj_set_pos_to_home_with_debug); - BIND_FUNCTION(stub_obj_helpers_4); - BIND_FUNCTION(cur_obj_is_mario_on_platform); - BIND_FUNCTION(cur_obj_is_any_player_on_platform); - BIND_FUNCTION(cur_obj_shake_y_until); - BIND_FUNCTION(cur_obj_move_up_and_down); - BIND_FUNCTION(spawn_star_with_no_lvl_exit); - BIND_FUNCTION(spawn_base_star_with_no_lvl_exit); - BIND_FUNCTION(bit_shift_left); - BIND_FUNCTION(cur_obj_mario_far_away); - BIND_FUNCTION(is_mario_moving_fast_or_in_air); - BIND_FUNCTION(is_item_in_array); - BIND_FUNCTION(bhv_init_room); - BIND_FUNCTION(cur_obj_enable_rendering_if_mario_in_room); - BIND_FUNCTION(cur_obj_set_hitbox_and_die_if_attacked); - BIND_FUNCTION(obj_explode_and_spawn_coins); - //BIND_FUNCTION(obj_set_collision_data); <--- UNIMPLEMENTED - BIND_FUNCTION(cur_obj_if_hit_wall_bounce_away); - BIND_FUNCTION(cur_obj_hide_if_mario_far_away_y); - //BIND_FUNCTION(geo_offset_klepto_held_object); <--- UNIMPLEMENTED - //BIND_FUNCTION(geo_offset_klepto_debug); <--- UNIMPLEMENTED - BIND_FUNCTION(obj_is_hidden); - BIND_FUNCTION(enable_time_stop); - BIND_FUNCTION(enable_time_stop_if_alone); - BIND_FUNCTION(disable_time_stop); - BIND_FUNCTION(set_time_stop_flags); - BIND_FUNCTION(set_time_stop_flags_if_alone); - BIND_FUNCTION(clear_time_stop_flags); - BIND_FUNCTION(cur_obj_can_mario_activate_textbox); - BIND_FUNCTION(cur_obj_can_mario_activate_textbox_2); - BIND_FUNCTION(cur_obj_end_dialog); - BIND_FUNCTION(cur_obj_has_model); - BIND_FUNCTION(cur_obj_align_gfx_with_floor); - BIND_FUNCTION(mario_is_within_rectangle); - BIND_FUNCTION(cur_obj_shake_screen); - BIND_FUNCTION(obj_attack_collided_from_other_object); - BIND_FUNCTION(cur_obj_was_attacked_or_ground_pounded); - BIND_FUNCTION(obj_copy_behavior_params); - BIND_FUNCTION(cur_obj_init_animation_and_anim_frame); - BIND_FUNCTION(cur_obj_init_animation_and_check_if_near_end); - BIND_FUNCTION(cur_obj_init_animation_and_extend_if_at_end); - BIND_FUNCTION(cur_obj_check_grabbed_mario); - BIND_FUNCTION(player_performed_grab_escape_action); - BIND_FUNCTION(cur_obj_unused_play_footstep_sound); - BIND_FUNCTION(enable_time_stop_including_mario); - BIND_FUNCTION(disable_time_stop_including_mario); - BIND_FUNCTION(cur_obj_check_interacted); - BIND_FUNCTION(cur_obj_spawn_loot_blue_coin); + smlua_bind_function(L, "clear_move_flag", smlua_func_clear_move_flag); + //smlua_bind_function(L, "geo_update_projectile_pos_from_parent", smlua_func_geo_update_projectile_pos_from_parent); <--- UNIMPLEMENTED + //smlua_bind_function(L, "geo_update_layer_transparency", smlua_func_geo_update_layer_transparency); <--- UNIMPLEMENTED + //smlua_bind_function(L, "geo_switch_anim_state", smlua_func_geo_switch_anim_state); <--- UNIMPLEMENTED + smlua_bind_function(L, "set_room_override", smlua_func_set_room_override); + //smlua_bind_function(L, "geo_switch_area", smlua_func_geo_switch_area); <--- UNIMPLEMENTED + //smlua_bind_function(L, "geo_choose_area_ext", smlua_func_geo_choose_area_ext); <--- UNIMPLEMENTED + smlua_bind_function(L, "obj_update_pos_from_parent_transformation", smlua_func_obj_update_pos_from_parent_transformation); + smlua_bind_function(L, "obj_apply_scale_to_matrix", smlua_func_obj_apply_scale_to_matrix); + smlua_bind_function(L, "create_transformation_from_matrices", smlua_func_create_transformation_from_matrices); + smlua_bind_function(L, "obj_set_held_state", smlua_func_obj_set_held_state); + smlua_bind_function(L, "lateral_dist_between_objects", smlua_func_lateral_dist_between_objects); + smlua_bind_function(L, "dist_between_objects", smlua_func_dist_between_objects); + smlua_bind_function(L, "dist_between_object_and_point", smlua_func_dist_between_object_and_point); + smlua_bind_function(L, "cur_obj_forward_vel_approach_upward", smlua_func_cur_obj_forward_vel_approach_upward); + smlua_bind_function(L, "approach_f32_signed", smlua_func_approach_f32_signed); + smlua_bind_function(L, "approach_f32_symmetric", smlua_func_approach_f32_symmetric); + smlua_bind_function(L, "approach_s16_symmetric", smlua_func_approach_s16_symmetric); + smlua_bind_function(L, "cur_obj_rotate_yaw_toward", smlua_func_cur_obj_rotate_yaw_toward); + smlua_bind_function(L, "obj_angle_to_object", smlua_func_obj_angle_to_object); + smlua_bind_function(L, "obj_pitch_to_object", smlua_func_obj_pitch_to_object); + smlua_bind_function(L, "obj_angle_to_point", smlua_func_obj_angle_to_point); + smlua_bind_function(L, "obj_turn_toward_object", smlua_func_obj_turn_toward_object); + smlua_bind_function(L, "obj_set_parent_relative_pos", smlua_func_obj_set_parent_relative_pos); + smlua_bind_function(L, "obj_set_pos", smlua_func_obj_set_pos); + smlua_bind_function(L, "obj_set_angle", smlua_func_obj_set_angle); + smlua_bind_function(L, "obj_set_move_angle", smlua_func_obj_set_move_angle); + smlua_bind_function(L, "obj_set_face_angle", smlua_func_obj_set_face_angle); + smlua_bind_function(L, "obj_set_gfx_angle", smlua_func_obj_set_gfx_angle); + smlua_bind_function(L, "obj_set_gfx_pos", smlua_func_obj_set_gfx_pos); + smlua_bind_function(L, "obj_set_gfx_scale", smlua_func_obj_set_gfx_scale); + smlua_bind_function(L, "spawn_water_droplet", smlua_func_spawn_water_droplet); + smlua_bind_function(L, "obj_build_relative_transform", smlua_func_obj_build_relative_transform); + smlua_bind_function(L, "cur_obj_move_using_vel", smlua_func_cur_obj_move_using_vel); + smlua_bind_function(L, "obj_copy_graph_y_offset", smlua_func_obj_copy_graph_y_offset); + smlua_bind_function(L, "obj_copy_pos_and_angle", smlua_func_obj_copy_pos_and_angle); + smlua_bind_function(L, "obj_copy_pos", smlua_func_obj_copy_pos); + smlua_bind_function(L, "obj_copy_angle", smlua_func_obj_copy_angle); + smlua_bind_function(L, "obj_set_gfx_pos_from_pos", smlua_func_obj_set_gfx_pos_from_pos); + smlua_bind_function(L, "obj_init_animation", smlua_func_obj_init_animation); + smlua_bind_function(L, "linear_mtxf_mul_vec3f", smlua_func_linear_mtxf_mul_vec3f); + smlua_bind_function(L, "linear_mtxf_transpose_mul_vec3f", smlua_func_linear_mtxf_transpose_mul_vec3f); + smlua_bind_function(L, "obj_apply_scale_to_transform", smlua_func_obj_apply_scale_to_transform); + smlua_bind_function(L, "obj_copy_scale", smlua_func_obj_copy_scale); + smlua_bind_function(L, "obj_scale_xyz", smlua_func_obj_scale_xyz); + smlua_bind_function(L, "obj_scale", smlua_func_obj_scale); + smlua_bind_function(L, "cur_obj_scale", smlua_func_cur_obj_scale); + smlua_bind_function(L, "cur_obj_init_animation", smlua_func_cur_obj_init_animation); + smlua_bind_function(L, "cur_obj_init_animation_with_sound", smlua_func_cur_obj_init_animation_with_sound); + smlua_bind_function(L, "obj_init_animation_with_accel_and_sound", smlua_func_obj_init_animation_with_accel_and_sound); + smlua_bind_function(L, "cur_obj_init_animation_with_accel_and_sound", smlua_func_cur_obj_init_animation_with_accel_and_sound); + //smlua_bind_function(L, "obj_init_animation_with_sound", smlua_func_obj_init_animation_with_sound); <--- UNIMPLEMENTED + smlua_bind_function(L, "cur_obj_enable_rendering_and_become_tangible", smlua_func_cur_obj_enable_rendering_and_become_tangible); + smlua_bind_function(L, "cur_obj_enable_rendering", smlua_func_cur_obj_enable_rendering); + smlua_bind_function(L, "cur_obj_disable_rendering_and_become_intangible", smlua_func_cur_obj_disable_rendering_and_become_intangible); + smlua_bind_function(L, "cur_obj_disable_rendering", smlua_func_cur_obj_disable_rendering); + smlua_bind_function(L, "cur_obj_unhide", smlua_func_cur_obj_unhide); + smlua_bind_function(L, "cur_obj_hide", smlua_func_cur_obj_hide); + smlua_bind_function(L, "cur_obj_set_pos_relative", smlua_func_cur_obj_set_pos_relative); + smlua_bind_function(L, "cur_obj_set_pos_relative_to_parent", smlua_func_cur_obj_set_pos_relative_to_parent); + smlua_bind_function(L, "cur_obj_enable_rendering_2", smlua_func_cur_obj_enable_rendering_2); + smlua_bind_function(L, "cur_obj_unused_init_on_floor", smlua_func_cur_obj_unused_init_on_floor); + smlua_bind_function(L, "obj_set_face_angle_to_move_angle", smlua_func_obj_set_face_angle_to_move_angle); + smlua_bind_function(L, "get_object_list_from_behavior", smlua_func_get_object_list_from_behavior); + smlua_bind_function(L, "cur_obj_nearest_object_with_behavior", smlua_func_cur_obj_nearest_object_with_behavior); + smlua_bind_function(L, "cur_obj_dist_to_nearest_object_with_behavior", smlua_func_cur_obj_dist_to_nearest_object_with_behavior); + smlua_bind_function(L, "cur_obj_find_nearest_pole", smlua_func_cur_obj_find_nearest_pole); + smlua_bind_function(L, "cur_obj_find_nearest_object_with_behavior", smlua_func_cur_obj_find_nearest_object_with_behavior); + smlua_bind_function(L, "cur_obj_count_objects_with_behavior", smlua_func_cur_obj_count_objects_with_behavior); + smlua_bind_function(L, "find_unimportant_object", smlua_func_find_unimportant_object); + smlua_bind_function(L, "count_unimportant_objects", smlua_func_count_unimportant_objects); + smlua_bind_function(L, "count_objects_with_behavior", smlua_func_count_objects_with_behavior); + smlua_bind_function(L, "find_object_with_behavior", smlua_func_find_object_with_behavior); + smlua_bind_function(L, "cur_obj_find_nearby_held_actor", smlua_func_cur_obj_find_nearby_held_actor); + smlua_bind_function(L, "cur_obj_reset_timer_and_subaction", smlua_func_cur_obj_reset_timer_and_subaction); + smlua_bind_function(L, "cur_obj_change_action", smlua_func_cur_obj_change_action); + smlua_bind_function(L, "cur_obj_set_vel_from_mario_vel", smlua_func_cur_obj_set_vel_from_mario_vel); + smlua_bind_function(L, "cur_obj_reverse_animation", smlua_func_cur_obj_reverse_animation); + smlua_bind_function(L, "cur_obj_extend_animation_if_at_end", smlua_func_cur_obj_extend_animation_if_at_end); + smlua_bind_function(L, "cur_obj_check_if_near_animation_end", smlua_func_cur_obj_check_if_near_animation_end); + smlua_bind_function(L, "cur_obj_check_if_at_animation_end", smlua_func_cur_obj_check_if_at_animation_end); + smlua_bind_function(L, "cur_obj_check_anim_frame", smlua_func_cur_obj_check_anim_frame); + smlua_bind_function(L, "cur_obj_check_anim_frame_in_range", smlua_func_cur_obj_check_anim_frame_in_range); + smlua_bind_function(L, "cur_obj_check_frame_prior_current_frame", smlua_func_cur_obj_check_frame_prior_current_frame); + smlua_bind_function(L, "mario_is_in_air_action", smlua_func_mario_is_in_air_action); + smlua_bind_function(L, "mario_is_dive_sliding", smlua_func_mario_is_dive_sliding); + smlua_bind_function(L, "cur_obj_set_y_vel_and_animation", smlua_func_cur_obj_set_y_vel_and_animation); + smlua_bind_function(L, "cur_obj_unrender_and_reset_state", smlua_func_cur_obj_unrender_and_reset_state); + smlua_bind_function(L, "cur_obj_move_after_thrown_or_dropped", smlua_func_cur_obj_move_after_thrown_or_dropped); + smlua_bind_function(L, "cur_obj_get_thrown_or_placed", smlua_func_cur_obj_get_thrown_or_placed); + smlua_bind_function(L, "cur_obj_get_dropped", smlua_func_cur_obj_get_dropped); + smlua_bind_function(L, "mario_set_flag", smlua_func_mario_set_flag); + smlua_bind_function(L, "cur_obj_clear_interact_status_flag", smlua_func_cur_obj_clear_interact_status_flag); + smlua_bind_function(L, "obj_mark_for_deletion", smlua_func_obj_mark_for_deletion); + smlua_bind_function(L, "cur_obj_disable", smlua_func_cur_obj_disable); + smlua_bind_function(L, "cur_obj_become_intangible", smlua_func_cur_obj_become_intangible); + smlua_bind_function(L, "cur_obj_become_tangible", smlua_func_cur_obj_become_tangible); + smlua_bind_function(L, "obj_become_tangible", smlua_func_obj_become_tangible); + smlua_bind_function(L, "cur_obj_update_floor_height", smlua_func_cur_obj_update_floor_height); + smlua_bind_function(L, "cur_obj_update_floor_height_and_get_floor", smlua_func_cur_obj_update_floor_height_and_get_floor); + smlua_bind_function(L, "apply_drag_to_value", smlua_func_apply_drag_to_value); + smlua_bind_function(L, "cur_obj_apply_drag_xz", smlua_func_cur_obj_apply_drag_xz); + smlua_bind_function(L, "cur_obj_move_xz", smlua_func_cur_obj_move_xz); + smlua_bind_function(L, "cur_obj_move_update_underwater_flags", smlua_func_cur_obj_move_update_underwater_flags); + smlua_bind_function(L, "cur_obj_move_update_ground_air_flags", smlua_func_cur_obj_move_update_ground_air_flags); + smlua_bind_function(L, "cur_obj_move_y_and_get_water_level", smlua_func_cur_obj_move_y_and_get_water_level); + smlua_bind_function(L, "cur_obj_move_y", smlua_func_cur_obj_move_y); + smlua_bind_function(L, "cur_obj_unused_resolve_wall_collisions", smlua_func_cur_obj_unused_resolve_wall_collisions); + smlua_bind_function(L, "abs_angle_diff", smlua_func_abs_angle_diff); + smlua_bind_function(L, "cur_obj_move_xz_using_fvel_and_yaw", smlua_func_cur_obj_move_xz_using_fvel_and_yaw); + smlua_bind_function(L, "cur_obj_move_y_with_terminal_vel", smlua_func_cur_obj_move_y_with_terminal_vel); + smlua_bind_function(L, "cur_obj_compute_vel_xz", smlua_func_cur_obj_compute_vel_xz); + smlua_bind_function(L, "increment_velocity_toward_range", smlua_func_increment_velocity_toward_range); + smlua_bind_function(L, "obj_check_if_collided_with_object", smlua_func_obj_check_if_collided_with_object); + smlua_bind_function(L, "cur_obj_set_behavior", smlua_func_cur_obj_set_behavior); + smlua_bind_function(L, "obj_set_behavior", smlua_func_obj_set_behavior); + smlua_bind_function(L, "cur_obj_has_behavior", smlua_func_cur_obj_has_behavior); + smlua_bind_function(L, "obj_has_behavior", smlua_func_obj_has_behavior); + smlua_bind_function(L, "cur_obj_lateral_dist_from_obj_to_home", smlua_func_cur_obj_lateral_dist_from_obj_to_home); + smlua_bind_function(L, "cur_obj_lateral_dist_from_mario_to_home", smlua_func_cur_obj_lateral_dist_from_mario_to_home); + smlua_bind_function(L, "cur_obj_lateral_dist_to_home", smlua_func_cur_obj_lateral_dist_to_home); + smlua_bind_function(L, "cur_obj_outside_home_square", smlua_func_cur_obj_outside_home_square); + smlua_bind_function(L, "cur_obj_outside_home_rectangle", smlua_func_cur_obj_outside_home_rectangle); + smlua_bind_function(L, "cur_obj_set_pos_to_home", smlua_func_cur_obj_set_pos_to_home); + smlua_bind_function(L, "cur_obj_set_pos_to_home_and_stop", smlua_func_cur_obj_set_pos_to_home_and_stop); + smlua_bind_function(L, "cur_obj_shake_y", smlua_func_cur_obj_shake_y); + smlua_bind_function(L, "cur_obj_start_cam_event", smlua_func_cur_obj_start_cam_event); + smlua_bind_function(L, "set_mario_interact_hoot_if_in_range", smlua_func_set_mario_interact_hoot_if_in_range); + smlua_bind_function(L, "obj_set_billboard", smlua_func_obj_set_billboard); + smlua_bind_function(L, "obj_set_cylboard", smlua_func_obj_set_cylboard); + smlua_bind_function(L, "cur_obj_set_billboard_if_vanilla_cam", smlua_func_cur_obj_set_billboard_if_vanilla_cam); + smlua_bind_function(L, "obj_set_hitbox_radius_and_height", smlua_func_obj_set_hitbox_radius_and_height); + smlua_bind_function(L, "obj_set_hurtbox_radius_and_height", smlua_func_obj_set_hurtbox_radius_and_height); + smlua_bind_function(L, "cur_obj_set_hitbox_radius_and_height", smlua_func_cur_obj_set_hitbox_radius_and_height); + smlua_bind_function(L, "cur_obj_set_hurtbox_radius_and_height", smlua_func_cur_obj_set_hurtbox_radius_and_height); + smlua_bind_function(L, "obj_spawn_loot_coins", smlua_func_obj_spawn_loot_coins); + smlua_bind_function(L, "obj_spawn_loot_blue_coins", smlua_func_obj_spawn_loot_blue_coins); + smlua_bind_function(L, "obj_spawn_loot_yellow_coins", smlua_func_obj_spawn_loot_yellow_coins); + smlua_bind_function(L, "cur_obj_spawn_loot_coin_at_mario_pos", smlua_func_cur_obj_spawn_loot_coin_at_mario_pos); + smlua_bind_function(L, "cur_obj_abs_y_dist_to_home", smlua_func_cur_obj_abs_y_dist_to_home); + smlua_bind_function(L, "cur_obj_advance_looping_anim", smlua_func_cur_obj_advance_looping_anim); + smlua_bind_function(L, "cur_obj_detect_steep_floor", smlua_func_cur_obj_detect_steep_floor); + smlua_bind_function(L, "cur_obj_resolve_wall_collisions", smlua_func_cur_obj_resolve_wall_collisions); + smlua_bind_function(L, "cur_obj_update_floor", smlua_func_cur_obj_update_floor); + smlua_bind_function(L, "cur_obj_update_floor_and_resolve_wall_collisions", smlua_func_cur_obj_update_floor_and_resolve_wall_collisions); + smlua_bind_function(L, "cur_obj_update_floor_and_walls", smlua_func_cur_obj_update_floor_and_walls); + smlua_bind_function(L, "cur_obj_move_standard", smlua_func_cur_obj_move_standard); + smlua_bind_function(L, "cur_obj_within_12k_bounds", smlua_func_cur_obj_within_12k_bounds); + smlua_bind_function(L, "cur_obj_move_using_vel_and_gravity", smlua_func_cur_obj_move_using_vel_and_gravity); + smlua_bind_function(L, "cur_obj_move_using_fvel_and_gravity", smlua_func_cur_obj_move_using_fvel_and_gravity); + smlua_bind_function(L, "obj_set_pos_relative", smlua_func_obj_set_pos_relative); + smlua_bind_function(L, "cur_obj_angle_to_home", smlua_func_cur_obj_angle_to_home); + smlua_bind_function(L, "obj_set_gfx_pos_at_obj_pos", smlua_func_obj_set_gfx_pos_at_obj_pos); + smlua_bind_function(L, "obj_translate_local", smlua_func_obj_translate_local); + smlua_bind_function(L, "obj_build_transform_from_pos_and_angle", smlua_func_obj_build_transform_from_pos_and_angle); + smlua_bind_function(L, "obj_set_throw_matrix_from_transform", smlua_func_obj_set_throw_matrix_from_transform); + smlua_bind_function(L, "obj_build_transform_relative_to_parent", smlua_func_obj_build_transform_relative_to_parent); + smlua_bind_function(L, "obj_create_transform_from_self", smlua_func_obj_create_transform_from_self); + smlua_bind_function(L, "cur_obj_rotate_move_angle_using_vel", smlua_func_cur_obj_rotate_move_angle_using_vel); + smlua_bind_function(L, "cur_obj_rotate_face_angle_using_vel", smlua_func_cur_obj_rotate_face_angle_using_vel); + smlua_bind_function(L, "cur_obj_set_face_angle_to_move_angle", smlua_func_cur_obj_set_face_angle_to_move_angle); + smlua_bind_function(L, "cur_obj_follow_path", smlua_func_cur_obj_follow_path); + smlua_bind_function(L, "chain_segment_init", smlua_func_chain_segment_init); + smlua_bind_function(L, "random_f32_around_zero", smlua_func_random_f32_around_zero); + smlua_bind_function(L, "obj_scale_random", smlua_func_obj_scale_random); + smlua_bind_function(L, "obj_translate_xyz_random", smlua_func_obj_translate_xyz_random); + smlua_bind_function(L, "obj_translate_xz_random", smlua_func_obj_translate_xz_random); + smlua_bind_function(L, "obj_build_vel_from_transform", smlua_func_obj_build_vel_from_transform); + smlua_bind_function(L, "cur_obj_set_pos_via_transform", smlua_func_cur_obj_set_pos_via_transform); + smlua_bind_function(L, "cur_obj_reflect_move_angle_off_wall", smlua_func_cur_obj_reflect_move_angle_off_wall); + smlua_bind_function(L, "cur_obj_spawn_particles", smlua_func_cur_obj_spawn_particles); + smlua_bind_function(L, "obj_set_hitbox", smlua_func_obj_set_hitbox); + smlua_bind_function(L, "signum_positive", smlua_func_signum_positive); + smlua_bind_function(L, "cur_obj_wait_then_blink", smlua_func_cur_obj_wait_then_blink); + smlua_bind_function(L, "cur_obj_is_mario_ground_pounding_platform", smlua_func_cur_obj_is_mario_ground_pounding_platform); + smlua_bind_function(L, "obj_is_mario_ground_pounding_platform", smlua_func_obj_is_mario_ground_pounding_platform); + smlua_bind_function(L, "spawn_mist_particles", smlua_func_spawn_mist_particles); + smlua_bind_function(L, "spawn_mist_particles_with_sound", smlua_func_spawn_mist_particles_with_sound); + smlua_bind_function(L, "cur_obj_push_mario_away", smlua_func_cur_obj_push_mario_away); + smlua_bind_function(L, "cur_obj_push_mario_away_from_cylinder", smlua_func_cur_obj_push_mario_away_from_cylinder); + smlua_bind_function(L, "bhv_dust_smoke_loop", smlua_func_bhv_dust_smoke_loop); + smlua_bind_function(L, "stub_obj_helpers_3", smlua_func_stub_obj_helpers_3); + smlua_bind_function(L, "cur_obj_scale_over_time", smlua_func_cur_obj_scale_over_time); + smlua_bind_function(L, "cur_obj_set_pos_to_home_with_debug", smlua_func_cur_obj_set_pos_to_home_with_debug); + smlua_bind_function(L, "stub_obj_helpers_4", smlua_func_stub_obj_helpers_4); + smlua_bind_function(L, "cur_obj_is_mario_on_platform", smlua_func_cur_obj_is_mario_on_platform); + smlua_bind_function(L, "cur_obj_is_any_player_on_platform", smlua_func_cur_obj_is_any_player_on_platform); + smlua_bind_function(L, "cur_obj_shake_y_until", smlua_func_cur_obj_shake_y_until); + smlua_bind_function(L, "cur_obj_move_up_and_down", smlua_func_cur_obj_move_up_and_down); + smlua_bind_function(L, "spawn_star_with_no_lvl_exit", smlua_func_spawn_star_with_no_lvl_exit); + smlua_bind_function(L, "spawn_base_star_with_no_lvl_exit", smlua_func_spawn_base_star_with_no_lvl_exit); + smlua_bind_function(L, "bit_shift_left", smlua_func_bit_shift_left); + smlua_bind_function(L, "cur_obj_mario_far_away", smlua_func_cur_obj_mario_far_away); + smlua_bind_function(L, "is_mario_moving_fast_or_in_air", smlua_func_is_mario_moving_fast_or_in_air); + smlua_bind_function(L, "is_item_in_array", smlua_func_is_item_in_array); + smlua_bind_function(L, "bhv_init_room", smlua_func_bhv_init_room); + smlua_bind_function(L, "cur_obj_enable_rendering_if_mario_in_room", smlua_func_cur_obj_enable_rendering_if_mario_in_room); + smlua_bind_function(L, "cur_obj_set_hitbox_and_die_if_attacked", smlua_func_cur_obj_set_hitbox_and_die_if_attacked); + smlua_bind_function(L, "obj_explode_and_spawn_coins", smlua_func_obj_explode_and_spawn_coins); + //smlua_bind_function(L, "obj_set_collision_data", smlua_func_obj_set_collision_data); <--- UNIMPLEMENTED + smlua_bind_function(L, "cur_obj_if_hit_wall_bounce_away", smlua_func_cur_obj_if_hit_wall_bounce_away); + smlua_bind_function(L, "cur_obj_hide_if_mario_far_away_y", smlua_func_cur_obj_hide_if_mario_far_away_y); + //smlua_bind_function(L, "geo_offset_klepto_held_object", smlua_func_geo_offset_klepto_held_object); <--- UNIMPLEMENTED + //smlua_bind_function(L, "geo_offset_klepto_debug", smlua_func_geo_offset_klepto_debug); <--- UNIMPLEMENTED + smlua_bind_function(L, "obj_is_hidden", smlua_func_obj_is_hidden); + smlua_bind_function(L, "enable_time_stop", smlua_func_enable_time_stop); + smlua_bind_function(L, "enable_time_stop_if_alone", smlua_func_enable_time_stop_if_alone); + smlua_bind_function(L, "disable_time_stop", smlua_func_disable_time_stop); + smlua_bind_function(L, "set_time_stop_flags", smlua_func_set_time_stop_flags); + smlua_bind_function(L, "set_time_stop_flags_if_alone", smlua_func_set_time_stop_flags_if_alone); + smlua_bind_function(L, "clear_time_stop_flags", smlua_func_clear_time_stop_flags); + smlua_bind_function(L, "cur_obj_can_mario_activate_textbox", smlua_func_cur_obj_can_mario_activate_textbox); + smlua_bind_function(L, "cur_obj_can_mario_activate_textbox_2", smlua_func_cur_obj_can_mario_activate_textbox_2); + smlua_bind_function(L, "cur_obj_end_dialog", smlua_func_cur_obj_end_dialog); + smlua_bind_function(L, "cur_obj_has_model", smlua_func_cur_obj_has_model); + smlua_bind_function(L, "cur_obj_align_gfx_with_floor", smlua_func_cur_obj_align_gfx_with_floor); + smlua_bind_function(L, "mario_is_within_rectangle", smlua_func_mario_is_within_rectangle); + smlua_bind_function(L, "cur_obj_shake_screen", smlua_func_cur_obj_shake_screen); + smlua_bind_function(L, "obj_attack_collided_from_other_object", smlua_func_obj_attack_collided_from_other_object); + smlua_bind_function(L, "cur_obj_was_attacked_or_ground_pounded", smlua_func_cur_obj_was_attacked_or_ground_pounded); + smlua_bind_function(L, "obj_copy_behavior_params", smlua_func_obj_copy_behavior_params); + smlua_bind_function(L, "cur_obj_init_animation_and_anim_frame", smlua_func_cur_obj_init_animation_and_anim_frame); + smlua_bind_function(L, "cur_obj_init_animation_and_check_if_near_end", smlua_func_cur_obj_init_animation_and_check_if_near_end); + smlua_bind_function(L, "cur_obj_init_animation_and_extend_if_at_end", smlua_func_cur_obj_init_animation_and_extend_if_at_end); + smlua_bind_function(L, "cur_obj_check_grabbed_mario", smlua_func_cur_obj_check_grabbed_mario); + smlua_bind_function(L, "player_performed_grab_escape_action", smlua_func_player_performed_grab_escape_action); + smlua_bind_function(L, "cur_obj_unused_play_footstep_sound", smlua_func_cur_obj_unused_play_footstep_sound); + smlua_bind_function(L, "enable_time_stop_including_mario", smlua_func_enable_time_stop_including_mario); + smlua_bind_function(L, "disable_time_stop_including_mario", smlua_func_disable_time_stop_including_mario); + smlua_bind_function(L, "cur_obj_check_interacted", smlua_func_cur_obj_check_interacted); + smlua_bind_function(L, "cur_obj_spawn_loot_blue_coin", smlua_func_cur_obj_spawn_loot_blue_coin); #ifndef VERSION_JP - BIND_FUNCTION(cur_obj_spawn_star_at_y_offset); + smlua_bind_function(L, "cur_obj_spawn_star_at_y_offset", smlua_func_cur_obj_spawn_star_at_y_offset); #endif - BIND_FUNCTION(cur_obj_set_home_once); - BIND_FUNCTION(get_trajectory_length); + smlua_bind_function(L, "cur_obj_set_home_once", smlua_func_cur_obj_set_home_once); + smlua_bind_function(L, "get_trajectory_length", smlua_func_get_trajectory_length); // object_list_processor.h - BIND_FUNCTION(set_object_respawn_info_bits); + smlua_bind_function(L, "set_object_respawn_info_bits", smlua_func_set_object_respawn_info_bits); // platform_displacement.h - BIND_FUNCTION(apply_platform_displacement); + smlua_bind_function(L, "apply_platform_displacement", smlua_func_apply_platform_displacement); // rumble_init.h - BIND_FUNCTION(queue_rumble_data); - BIND_FUNCTION(queue_rumble_data_object); - BIND_FUNCTION(queue_rumble_data_mario); - BIND_FUNCTION(reset_rumble_timers); - BIND_FUNCTION(reset_rumble_timers_2); + smlua_bind_function(L, "queue_rumble_data", smlua_func_queue_rumble_data); + smlua_bind_function(L, "queue_rumble_data_object", smlua_func_queue_rumble_data_object); + smlua_bind_function(L, "queue_rumble_data_mario", smlua_func_queue_rumble_data_mario); + smlua_bind_function(L, "reset_rumble_timers", smlua_func_reset_rumble_timers); + smlua_bind_function(L, "reset_rumble_timers_2", smlua_func_reset_rumble_timers_2); // save_file.h - BIND_FUNCTION(get_level_num_from_course_num); - BIND_FUNCTION(get_level_course_num); - BIND_FUNCTION(touch_coin_score_age); - BIND_FUNCTION(save_file_do_save); - BIND_FUNCTION(save_file_erase); - BIND_FUNCTION(save_file_erase_current_backup_save); - BIND_FUNCTION(save_file_reload); - BIND_FUNCTION(save_file_get_max_coin_score); - BIND_FUNCTION(save_file_get_course_star_count); - BIND_FUNCTION(save_file_get_total_star_count); - BIND_FUNCTION(save_file_set_flags); - BIND_FUNCTION(save_file_clear_flags); - BIND_FUNCTION(save_file_get_flags); - BIND_FUNCTION(save_file_get_star_flags); - BIND_FUNCTION(save_file_set_star_flags); - BIND_FUNCTION(save_file_remove_star_flags); - BIND_FUNCTION(save_file_get_course_coin_score); - BIND_FUNCTION(save_file_set_course_coin_score); - BIND_FUNCTION(save_file_is_cannon_unlocked); - BIND_FUNCTION(save_file_set_cannon_unlocked); - BIND_FUNCTION(save_file_get_cap_pos); - BIND_FUNCTION(save_file_get_sound_mode); + smlua_bind_function(L, "get_level_num_from_course_num", smlua_func_get_level_num_from_course_num); + smlua_bind_function(L, "get_level_course_num", smlua_func_get_level_course_num); + smlua_bind_function(L, "touch_coin_score_age", smlua_func_touch_coin_score_age); + smlua_bind_function(L, "save_file_do_save", smlua_func_save_file_do_save); + smlua_bind_function(L, "save_file_erase", smlua_func_save_file_erase); + smlua_bind_function(L, "save_file_erase_current_backup_save", smlua_func_save_file_erase_current_backup_save); + smlua_bind_function(L, "save_file_reload", smlua_func_save_file_reload); + smlua_bind_function(L, "save_file_get_max_coin_score", smlua_func_save_file_get_max_coin_score); + smlua_bind_function(L, "save_file_get_course_star_count", smlua_func_save_file_get_course_star_count); + smlua_bind_function(L, "save_file_get_total_star_count", smlua_func_save_file_get_total_star_count); + smlua_bind_function(L, "save_file_set_flags", smlua_func_save_file_set_flags); + smlua_bind_function(L, "save_file_clear_flags", smlua_func_save_file_clear_flags); + smlua_bind_function(L, "save_file_get_flags", smlua_func_save_file_get_flags); + smlua_bind_function(L, "save_file_get_star_flags", smlua_func_save_file_get_star_flags); + smlua_bind_function(L, "save_file_set_star_flags", smlua_func_save_file_set_star_flags); + smlua_bind_function(L, "save_file_remove_star_flags", smlua_func_save_file_remove_star_flags); + smlua_bind_function(L, "save_file_get_course_coin_score", smlua_func_save_file_get_course_coin_score); + smlua_bind_function(L, "save_file_set_course_coin_score", smlua_func_save_file_set_course_coin_score); + smlua_bind_function(L, "save_file_is_cannon_unlocked", smlua_func_save_file_is_cannon_unlocked); + smlua_bind_function(L, "save_file_set_cannon_unlocked", smlua_func_save_file_set_cannon_unlocked); + smlua_bind_function(L, "save_file_get_cap_pos", smlua_func_save_file_get_cap_pos); + smlua_bind_function(L, "save_file_get_sound_mode", smlua_func_save_file_get_sound_mode); // seqplayer.h - BIND_FUNCTION(sequence_player_get_tempo); - BIND_FUNCTION(sequence_player_set_tempo); - BIND_FUNCTION(sequence_player_get_tempo_acc); - BIND_FUNCTION(sequence_player_set_tempo_acc); - BIND_FUNCTION(sequence_player_get_transposition); - BIND_FUNCTION(sequence_player_set_transposition); - BIND_FUNCTION(sequence_player_get_volume); - BIND_FUNCTION(sequence_player_get_fade_volume); - BIND_FUNCTION(sequence_player_get_mute_volume_scale); + smlua_bind_function(L, "sequence_player_get_tempo", smlua_func_sequence_player_get_tempo); + smlua_bind_function(L, "sequence_player_set_tempo", smlua_func_sequence_player_set_tempo); + smlua_bind_function(L, "sequence_player_get_tempo_acc", smlua_func_sequence_player_get_tempo_acc); + smlua_bind_function(L, "sequence_player_set_tempo_acc", smlua_func_sequence_player_set_tempo_acc); + smlua_bind_function(L, "sequence_player_get_transposition", smlua_func_sequence_player_get_transposition); + smlua_bind_function(L, "sequence_player_set_transposition", smlua_func_sequence_player_set_transposition); + smlua_bind_function(L, "sequence_player_get_volume", smlua_func_sequence_player_get_volume); + smlua_bind_function(L, "sequence_player_get_fade_volume", smlua_func_sequence_player_get_fade_volume); + smlua_bind_function(L, "sequence_player_get_mute_volume_scale", smlua_func_sequence_player_get_mute_volume_scale); // smlua_anim_utils.h - BIND_FUNCTION(get_mario_vanilla_animation); - BIND_FUNCTION(smlua_anim_util_set_animation); - BIND_FUNCTION(smlua_anim_util_get_current_animation_name); + smlua_bind_function(L, "get_mario_vanilla_animation", smlua_func_get_mario_vanilla_animation); + smlua_bind_function(L, "smlua_anim_util_set_animation", smlua_func_smlua_anim_util_set_animation); + smlua_bind_function(L, "smlua_anim_util_get_current_animation_name", smlua_func_smlua_anim_util_get_current_animation_name); // smlua_audio_utils.h -<<<<<<< HEAD smlua_bind_function(L, "smlua_audio_utils_reset_all", smlua_func_smlua_audio_utils_reset_all); smlua_bind_function(L, "smlua_audio_utils_replace_sequence", smlua_func_smlua_audio_utils_replace_sequence); smlua_bind_function(L, "audio_stream_load", smlua_func_audio_stream_load); @@ -38596,387 +38595,364 @@ void smlua_bind_functions_autogen(void) { smlua_bind_function(L, "audio_sample_destroy", smlua_func_audio_sample_destroy); smlua_bind_function(L, "audio_sample_stop", smlua_func_audio_sample_stop); smlua_bind_function(L, "audio_sample_play", smlua_func_audio_sample_play); -======= - BIND_FUNCTION(smlua_audio_utils_reset_all); - BIND_FUNCTION(smlua_audio_utils_replace_sequence); - BIND_FUNCTION(audio_stream_load); - BIND_FUNCTION(audio_stream_destroy); - BIND_FUNCTION(audio_stream_play); - BIND_FUNCTION(audio_stream_pause); - BIND_FUNCTION(audio_stream_stop); - BIND_FUNCTION(audio_stream_get_position); - BIND_FUNCTION(audio_stream_set_position); - BIND_FUNCTION(audio_stream_get_looping); - BIND_FUNCTION(audio_stream_set_looping); - BIND_FUNCTION(audio_stream_get_loop_points); - BIND_FUNCTION(audio_stream_set_loop_points); - BIND_FUNCTION(audio_stream_get_frequency); - BIND_FUNCTION(audio_stream_set_frequency); - BIND_FUNCTION(audio_stream_get_volume); - BIND_FUNCTION(audio_stream_set_volume); - BIND_FUNCTION(audio_sample_load); - BIND_FUNCTION(audio_sample_destroy); - BIND_FUNCTION(audio_sample_stop); - BIND_FUNCTION(audio_sample_play); ->>>>>>> 081ffe5e7 (c) // smlua_camera_utils.h - BIND_FUNCTION(camera_reset_overrides); - BIND_FUNCTION(camera_freeze); - BIND_FUNCTION(camera_unfreeze); - BIND_FUNCTION(camera_is_frozen); - BIND_FUNCTION(camera_romhack_allow_only_mods); - BIND_FUNCTION(camera_set_romhack_override); - BIND_FUNCTION(camera_romhack_allow_centering); - BIND_FUNCTION(camera_allow_toxic_gas_camera); - BIND_FUNCTION(camera_romhack_allow_dpad_usage); - BIND_FUNCTION(camera_romhack_set_collisions); - BIND_FUNCTION(camera_romhack_set_zoomed_in_dist); - BIND_FUNCTION(camera_romhack_set_zoomed_out_dist); - BIND_FUNCTION(camera_romhack_set_zoomed_in_height); - BIND_FUNCTION(camera_romhack_set_zoomed_out_height); - BIND_FUNCTION(camera_romhack_get_zoomed_in_dist); - BIND_FUNCTION(camera_romhack_get_zoomed_out_dist); - BIND_FUNCTION(camera_romhack_get_zoomed_in_height); - BIND_FUNCTION(camera_romhack_get_zoomed_out_height); - BIND_FUNCTION(camera_get_romhack_override); - BIND_FUNCTION(camera_romhack_get_allow_centering); - BIND_FUNCTION(camera_get_allow_toxic_gas_camera); - BIND_FUNCTION(camera_romhack_get_allow_dpad_usage); - BIND_FUNCTION(camera_romhack_get_collisions); - BIND_FUNCTION(camera_config_is_free_cam_enabled); - BIND_FUNCTION(camera_config_is_analog_cam_enabled); - BIND_FUNCTION(camera_config_is_dpad_enabled); - BIND_FUNCTION(camera_config_is_collision_enabled); - BIND_FUNCTION(camera_config_is_mouse_look_enabled); - BIND_FUNCTION(camera_config_is_x_inverted); - BIND_FUNCTION(camera_config_is_y_inverted); - BIND_FUNCTION(camera_config_get_x_sensitivity); - BIND_FUNCTION(camera_config_get_y_sensitivity); - BIND_FUNCTION(camera_config_get_aggression); - BIND_FUNCTION(camera_config_get_pan_level); - BIND_FUNCTION(camera_config_get_deceleration); - BIND_FUNCTION(camera_config_get_centering); - BIND_FUNCTION(camera_config_enable_free_cam); - BIND_FUNCTION(camera_config_enable_analog_cam); - BIND_FUNCTION(camera_config_enable_centering); - BIND_FUNCTION(camera_config_enable_dpad); - BIND_FUNCTION(camera_config_enable_collisions); - BIND_FUNCTION(camera_config_enable_mouse_look); - BIND_FUNCTION(camera_config_invert_x); - BIND_FUNCTION(camera_config_invert_y); - BIND_FUNCTION(camera_config_set_x_sensitivity); - BIND_FUNCTION(camera_config_set_y_sensitivity); - BIND_FUNCTION(camera_config_set_aggression); - BIND_FUNCTION(camera_config_set_pan_level); - BIND_FUNCTION(camera_config_set_deceleration); - BIND_FUNCTION(camera_get_checking_surfaces); - BIND_FUNCTION(camera_set_checking_surfaces); + smlua_bind_function(L, "camera_reset_overrides", smlua_func_camera_reset_overrides); + smlua_bind_function(L, "camera_freeze", smlua_func_camera_freeze); + smlua_bind_function(L, "camera_unfreeze", smlua_func_camera_unfreeze); + smlua_bind_function(L, "camera_is_frozen", smlua_func_camera_is_frozen); + smlua_bind_function(L, "camera_romhack_allow_only_mods", smlua_func_camera_romhack_allow_only_mods); + smlua_bind_function(L, "camera_set_romhack_override", smlua_func_camera_set_romhack_override); + smlua_bind_function(L, "camera_romhack_allow_centering", smlua_func_camera_romhack_allow_centering); + smlua_bind_function(L, "camera_allow_toxic_gas_camera", smlua_func_camera_allow_toxic_gas_camera); + smlua_bind_function(L, "camera_romhack_allow_dpad_usage", smlua_func_camera_romhack_allow_dpad_usage); + smlua_bind_function(L, "camera_romhack_set_collisions", smlua_func_camera_romhack_set_collisions); + smlua_bind_function(L, "camera_romhack_set_zoomed_in_dist", smlua_func_camera_romhack_set_zoomed_in_dist); + smlua_bind_function(L, "camera_romhack_set_zoomed_out_dist", smlua_func_camera_romhack_set_zoomed_out_dist); + smlua_bind_function(L, "camera_romhack_set_zoomed_in_height", smlua_func_camera_romhack_set_zoomed_in_height); + smlua_bind_function(L, "camera_romhack_set_zoomed_out_height", smlua_func_camera_romhack_set_zoomed_out_height); + smlua_bind_function(L, "camera_romhack_get_zoomed_in_dist", smlua_func_camera_romhack_get_zoomed_in_dist); + smlua_bind_function(L, "camera_romhack_get_zoomed_out_dist", smlua_func_camera_romhack_get_zoomed_out_dist); + smlua_bind_function(L, "camera_romhack_get_zoomed_in_height", smlua_func_camera_romhack_get_zoomed_in_height); + smlua_bind_function(L, "camera_romhack_get_zoomed_out_height", smlua_func_camera_romhack_get_zoomed_out_height); + smlua_bind_function(L, "camera_get_romhack_override", smlua_func_camera_get_romhack_override); + smlua_bind_function(L, "camera_romhack_get_allow_centering", smlua_func_camera_romhack_get_allow_centering); + smlua_bind_function(L, "camera_get_allow_toxic_gas_camera", smlua_func_camera_get_allow_toxic_gas_camera); + smlua_bind_function(L, "camera_romhack_get_allow_dpad_usage", smlua_func_camera_romhack_get_allow_dpad_usage); + smlua_bind_function(L, "camera_romhack_get_collisions", smlua_func_camera_romhack_get_collisions); + smlua_bind_function(L, "camera_config_is_free_cam_enabled", smlua_func_camera_config_is_free_cam_enabled); + smlua_bind_function(L, "camera_config_is_analog_cam_enabled", smlua_func_camera_config_is_analog_cam_enabled); + smlua_bind_function(L, "camera_config_is_dpad_enabled", smlua_func_camera_config_is_dpad_enabled); + smlua_bind_function(L, "camera_config_is_collision_enabled", smlua_func_camera_config_is_collision_enabled); + smlua_bind_function(L, "camera_config_is_mouse_look_enabled", smlua_func_camera_config_is_mouse_look_enabled); + smlua_bind_function(L, "camera_config_is_x_inverted", smlua_func_camera_config_is_x_inverted); + smlua_bind_function(L, "camera_config_is_y_inverted", smlua_func_camera_config_is_y_inverted); + smlua_bind_function(L, "camera_config_get_x_sensitivity", smlua_func_camera_config_get_x_sensitivity); + smlua_bind_function(L, "camera_config_get_y_sensitivity", smlua_func_camera_config_get_y_sensitivity); + smlua_bind_function(L, "camera_config_get_aggression", smlua_func_camera_config_get_aggression); + smlua_bind_function(L, "camera_config_get_pan_level", smlua_func_camera_config_get_pan_level); + smlua_bind_function(L, "camera_config_get_deceleration", smlua_func_camera_config_get_deceleration); + smlua_bind_function(L, "camera_config_get_centering", smlua_func_camera_config_get_centering); + smlua_bind_function(L, "camera_config_enable_free_cam", smlua_func_camera_config_enable_free_cam); + smlua_bind_function(L, "camera_config_enable_analog_cam", smlua_func_camera_config_enable_analog_cam); + smlua_bind_function(L, "camera_config_enable_centering", smlua_func_camera_config_enable_centering); + smlua_bind_function(L, "camera_config_enable_dpad", smlua_func_camera_config_enable_dpad); + smlua_bind_function(L, "camera_config_enable_collisions", smlua_func_camera_config_enable_collisions); + smlua_bind_function(L, "camera_config_enable_mouse_look", smlua_func_camera_config_enable_mouse_look); + smlua_bind_function(L, "camera_config_invert_x", smlua_func_camera_config_invert_x); + smlua_bind_function(L, "camera_config_invert_y", smlua_func_camera_config_invert_y); + smlua_bind_function(L, "camera_config_set_x_sensitivity", smlua_func_camera_config_set_x_sensitivity); + smlua_bind_function(L, "camera_config_set_y_sensitivity", smlua_func_camera_config_set_y_sensitivity); + smlua_bind_function(L, "camera_config_set_aggression", smlua_func_camera_config_set_aggression); + smlua_bind_function(L, "camera_config_set_pan_level", smlua_func_camera_config_set_pan_level); + smlua_bind_function(L, "camera_config_set_deceleration", smlua_func_camera_config_set_deceleration); + smlua_bind_function(L, "camera_get_checking_surfaces", smlua_func_camera_get_checking_surfaces); + smlua_bind_function(L, "camera_set_checking_surfaces", smlua_func_camera_set_checking_surfaces); // smlua_collision_utils.h - BIND_FUNCTION(collision_find_floor); - BIND_FUNCTION(collision_find_ceil); - BIND_FUNCTION(get_water_surface_pseudo_floor); - BIND_FUNCTION(smlua_collision_util_get); - BIND_FUNCTION(collision_get_temp_wall_collision_data); - BIND_FUNCTION(get_surface_from_wcd_index); - BIND_FUNCTION(smlua_collision_util_get_current_terrain_collision); - BIND_FUNCTION(smlua_collision_util_get_level_collision); - BIND_FUNCTION(smlua_collision_util_find_surface_types); - BIND_FUNCTION(surface_is_quicksand); - BIND_FUNCTION(surface_is_not_hard); - BIND_FUNCTION(surface_is_painting_warp); + smlua_bind_function(L, "collision_find_floor", smlua_func_collision_find_floor); + smlua_bind_function(L, "collision_find_ceil", smlua_func_collision_find_ceil); + smlua_bind_function(L, "get_water_surface_pseudo_floor", smlua_func_get_water_surface_pseudo_floor); + smlua_bind_function(L, "smlua_collision_util_get", smlua_func_smlua_collision_util_get); + smlua_bind_function(L, "collision_get_temp_wall_collision_data", smlua_func_collision_get_temp_wall_collision_data); + smlua_bind_function(L, "get_surface_from_wcd_index", smlua_func_get_surface_from_wcd_index); + smlua_bind_function(L, "smlua_collision_util_get_current_terrain_collision", smlua_func_smlua_collision_util_get_current_terrain_collision); + smlua_bind_function(L, "smlua_collision_util_get_level_collision", smlua_func_smlua_collision_util_get_level_collision); + smlua_bind_function(L, "smlua_collision_util_find_surface_types", smlua_func_smlua_collision_util_find_surface_types); + smlua_bind_function(L, "surface_is_quicksand", smlua_func_surface_is_quicksand); + smlua_bind_function(L, "surface_is_not_hard", smlua_func_surface_is_not_hard); + smlua_bind_function(L, "surface_is_painting_warp", smlua_func_surface_is_painting_warp); // smlua_deprecated.h - BIND_FUNCTION(djui_hud_set_render_behind_hud); - BIND_FUNCTION(audio_stream_get_tempo); - BIND_FUNCTION(audio_stream_set_tempo); - BIND_FUNCTION(audio_stream_set_speed); - BIND_FUNCTION(network_player_color_to_palette); - BIND_FUNCTION(network_player_palette_to_color); + smlua_bind_function(L, "djui_hud_set_render_behind_hud", smlua_func_djui_hud_set_render_behind_hud); + smlua_bind_function(L, "audio_stream_get_tempo", smlua_func_audio_stream_get_tempo); + smlua_bind_function(L, "audio_stream_set_tempo", smlua_func_audio_stream_set_tempo); + smlua_bind_function(L, "audio_stream_set_speed", smlua_func_audio_stream_set_speed); + smlua_bind_function(L, "network_player_color_to_palette", smlua_func_network_player_color_to_palette); + smlua_bind_function(L, "network_player_palette_to_color", smlua_func_network_player_palette_to_color); // smlua_gfx_utils.h - BIND_FUNCTION(set_override_fov); - BIND_FUNCTION(set_override_near); - BIND_FUNCTION(set_override_far); - BIND_FUNCTION(get_lighting_dir); - BIND_FUNCTION(set_lighting_dir); - BIND_FUNCTION(get_lighting_color); - BIND_FUNCTION(get_lighting_color_ambient); - BIND_FUNCTION(set_lighting_color); - BIND_FUNCTION(set_lighting_color_ambient); - BIND_FUNCTION(get_vertex_color); - BIND_FUNCTION(set_vertex_color); - BIND_FUNCTION(get_fog_color); - BIND_FUNCTION(set_fog_color); - BIND_FUNCTION(get_fog_intensity); - BIND_FUNCTION(set_fog_intensity); - BIND_FUNCTION(get_skybox); - BIND_FUNCTION(set_override_skybox); - BIND_FUNCTION(get_skybox_color); - BIND_FUNCTION(set_skybox_color); - BIND_FUNCTION(gfx_parse); - BIND_FUNCTION(gfx_get_op); - BIND_FUNCTION(gfx_get_display_list); - BIND_FUNCTION(gfx_get_vertex_buffer); - BIND_FUNCTION(gfx_get_vertex_count); - BIND_FUNCTION(gfx_get_texture); - BIND_FUNCTION(gfx_get_name); - BIND_FUNCTION(gfx_get_length); - BIND_FUNCTION(gfx_get_command); - BIND_FUNCTION(gfx_get_next_command); - BIND_FUNCTION(gfx_copy); - BIND_FUNCTION(gfx_create); - BIND_FUNCTION(gfx_resize); - BIND_FUNCTION(gfx_delete); - BIND_FUNCTION(gfx_delete_all); - BIND_FUNCTION(vtx_get_name); - BIND_FUNCTION(vtx_get_count); - BIND_FUNCTION(vtx_get_vertex); - BIND_FUNCTION(vtx_get_next_vertex); - BIND_FUNCTION(vtx_copy); - BIND_FUNCTION(vtx_create); - BIND_FUNCTION(vtx_resize); - BIND_FUNCTION(vtx_delete); - BIND_FUNCTION(vtx_delete_all); + smlua_bind_function(L, "set_override_fov", smlua_func_set_override_fov); + smlua_bind_function(L, "set_override_near", smlua_func_set_override_near); + smlua_bind_function(L, "set_override_far", smlua_func_set_override_far); + smlua_bind_function(L, "get_lighting_dir", smlua_func_get_lighting_dir); + smlua_bind_function(L, "set_lighting_dir", smlua_func_set_lighting_dir); + smlua_bind_function(L, "get_lighting_color", smlua_func_get_lighting_color); + smlua_bind_function(L, "get_lighting_color_ambient", smlua_func_get_lighting_color_ambient); + smlua_bind_function(L, "set_lighting_color", smlua_func_set_lighting_color); + smlua_bind_function(L, "set_lighting_color_ambient", smlua_func_set_lighting_color_ambient); + smlua_bind_function(L, "get_vertex_color", smlua_func_get_vertex_color); + smlua_bind_function(L, "set_vertex_color", smlua_func_set_vertex_color); + smlua_bind_function(L, "get_fog_color", smlua_func_get_fog_color); + smlua_bind_function(L, "set_fog_color", smlua_func_set_fog_color); + smlua_bind_function(L, "get_fog_intensity", smlua_func_get_fog_intensity); + smlua_bind_function(L, "set_fog_intensity", smlua_func_set_fog_intensity); + smlua_bind_function(L, "get_skybox", smlua_func_get_skybox); + smlua_bind_function(L, "set_override_skybox", smlua_func_set_override_skybox); + smlua_bind_function(L, "get_skybox_color", smlua_func_get_skybox_color); + smlua_bind_function(L, "set_skybox_color", smlua_func_set_skybox_color); + smlua_bind_function(L, "gfx_parse", smlua_func_gfx_parse); + smlua_bind_function(L, "gfx_get_op", smlua_func_gfx_get_op); + smlua_bind_function(L, "gfx_get_display_list", smlua_func_gfx_get_display_list); + smlua_bind_function(L, "gfx_get_vertex_buffer", smlua_func_gfx_get_vertex_buffer); + smlua_bind_function(L, "gfx_get_vertex_count", smlua_func_gfx_get_vertex_count); + smlua_bind_function(L, "gfx_get_texture", smlua_func_gfx_get_texture); + smlua_bind_function(L, "gfx_get_name", smlua_func_gfx_get_name); + smlua_bind_function(L, "gfx_get_length", smlua_func_gfx_get_length); + smlua_bind_function(L, "gfx_get_command", smlua_func_gfx_get_command); + smlua_bind_function(L, "gfx_get_next_command", smlua_func_gfx_get_next_command); + smlua_bind_function(L, "gfx_copy", smlua_func_gfx_copy); + smlua_bind_function(L, "gfx_create", smlua_func_gfx_create); + smlua_bind_function(L, "gfx_resize", smlua_func_gfx_resize); + smlua_bind_function(L, "gfx_delete", smlua_func_gfx_delete); + smlua_bind_function(L, "gfx_delete_all", smlua_func_gfx_delete_all); + smlua_bind_function(L, "vtx_get_name", smlua_func_vtx_get_name); + smlua_bind_function(L, "vtx_get_count", smlua_func_vtx_get_count); + smlua_bind_function(L, "vtx_get_vertex", smlua_func_vtx_get_vertex); + smlua_bind_function(L, "vtx_get_next_vertex", smlua_func_vtx_get_next_vertex); + smlua_bind_function(L, "vtx_copy", smlua_func_vtx_copy); + smlua_bind_function(L, "vtx_create", smlua_func_vtx_create); + smlua_bind_function(L, "vtx_resize", smlua_func_vtx_resize); + smlua_bind_function(L, "vtx_delete", smlua_func_vtx_delete); + smlua_bind_function(L, "vtx_delete_all", smlua_func_vtx_delete_all); // smlua_level_utils.h - BIND_FUNCTION(smlua_level_util_change_area); - BIND_FUNCTION(smlua_level_util_get_info); - BIND_FUNCTION(smlua_level_util_get_info_from_short_name); - BIND_FUNCTION(smlua_level_util_get_info_from_course_num); - BIND_FUNCTION(level_register); - BIND_FUNCTION(level_is_vanilla_level); - BIND_FUNCTION(warp_to_warpnode); - BIND_FUNCTION(warp_to_level); - BIND_FUNCTION(warp_restart_level); - BIND_FUNCTION(warp_to_start_level); - BIND_FUNCTION(warp_exit_level); - BIND_FUNCTION(warp_to_castle); + smlua_bind_function(L, "smlua_level_util_change_area", smlua_func_smlua_level_util_change_area); + smlua_bind_function(L, "smlua_level_util_get_info", smlua_func_smlua_level_util_get_info); + smlua_bind_function(L, "smlua_level_util_get_info_from_short_name", smlua_func_smlua_level_util_get_info_from_short_name); + smlua_bind_function(L, "smlua_level_util_get_info_from_course_num", smlua_func_smlua_level_util_get_info_from_course_num); + smlua_bind_function(L, "level_register", smlua_func_level_register); + smlua_bind_function(L, "level_is_vanilla_level", smlua_func_level_is_vanilla_level); + smlua_bind_function(L, "warp_to_warpnode", smlua_func_warp_to_warpnode); + smlua_bind_function(L, "warp_to_level", smlua_func_warp_to_level); + smlua_bind_function(L, "warp_restart_level", smlua_func_warp_restart_level); + smlua_bind_function(L, "warp_to_start_level", smlua_func_warp_to_start_level); + smlua_bind_function(L, "warp_exit_level", smlua_func_warp_exit_level); + smlua_bind_function(L, "warp_to_castle", smlua_func_warp_to_castle); // smlua_misc_utils.h - BIND_FUNCTION(get_network_area_timer); - BIND_FUNCTION(get_area_update_counter); - BIND_FUNCTION(get_temp_s32_pointer); - BIND_FUNCTION(deref_s32_pointer); - BIND_FUNCTION(djui_popup_create_global); - BIND_FUNCTION(djui_is_popup_disabled); - BIND_FUNCTION(djui_set_popup_disabled_override); - BIND_FUNCTION(djui_reset_popup_disabled_override); - BIND_FUNCTION(djui_is_playerlist_open); - BIND_FUNCTION(djui_attempting_to_open_playerlist); - BIND_FUNCTION(djui_get_playerlist_page_index); - BIND_FUNCTION(djui_is_chatbox_open); - BIND_FUNCTION(djui_menu_get_font); - BIND_FUNCTION(djui_menu_get_theme); - BIND_FUNCTION(djui_is_playerlist_ping_visible); - BIND_FUNCTION(get_dialog_box_state); - BIND_FUNCTION(get_dialog_id); - BIND_FUNCTION(get_last_star_or_key); - BIND_FUNCTION(set_last_star_or_key); - BIND_FUNCTION(get_last_completed_course_num); - BIND_FUNCTION(set_last_completed_course_num); - BIND_FUNCTION(get_last_completed_star_num); - BIND_FUNCTION(set_last_completed_star_num); - BIND_FUNCTION(get_got_file_coin_hi_score); - BIND_FUNCTION(set_got_file_coin_hi_score); - BIND_FUNCTION(get_save_file_modified); - BIND_FUNCTION(set_save_file_modified); - BIND_FUNCTION(hud_hide); - BIND_FUNCTION(hud_show); - BIND_FUNCTION(hud_is_hidden); - BIND_FUNCTION(hud_get_value); - BIND_FUNCTION(hud_set_value); - BIND_FUNCTION(hud_render_power_meter); - BIND_FUNCTION(hud_render_power_meter_interpolated); - BIND_FUNCTION(hud_get_flash); - BIND_FUNCTION(hud_set_flash); - BIND_FUNCTION(act_select_hud_hide); - BIND_FUNCTION(act_select_hud_show); - BIND_FUNCTION(act_select_hud_is_hidden); - BIND_FUNCTION(is_game_paused); - BIND_FUNCTION(is_pause_menu_hidden); - BIND_FUNCTION(set_pause_menu_hidden); - BIND_FUNCTION(game_pause); - BIND_FUNCTION(game_unpause); - BIND_FUNCTION(is_transition_playing); - BIND_FUNCTION(allocate_mario_action); - BIND_FUNCTION(get_hand_foot_pos_x); - BIND_FUNCTION(get_hand_foot_pos_y); - BIND_FUNCTION(get_hand_foot_pos_z); - BIND_FUNCTION(get_mario_anim_part_pos); - BIND_FUNCTION(get_current_save_file_num); - BIND_FUNCTION(save_file_get_using_backup_slot); - BIND_FUNCTION(save_file_set_using_backup_slot); - BIND_FUNCTION(movtexqc_register); - BIND_FUNCTION(get_water_level); - BIND_FUNCTION(set_water_level); - BIND_FUNCTION(course_is_main_course); - BIND_FUNCTION(get_ttc_speed_setting); - BIND_FUNCTION(set_ttc_speed_setting); - BIND_FUNCTION(get_time); - BIND_FUNCTION(get_date_and_time); - BIND_FUNCTION(get_envfx); - BIND_FUNCTION(set_override_envfx); - BIND_FUNCTION(get_global_timer); - BIND_FUNCTION(get_dialog_response); - BIND_FUNCTION(get_local_discord_id); - BIND_FUNCTION(get_coopnet_id); - BIND_FUNCTION(get_volume_master); - BIND_FUNCTION(get_volume_level); - BIND_FUNCTION(get_volume_sfx); - BIND_FUNCTION(get_volume_env); - BIND_FUNCTION(set_volume_master); - BIND_FUNCTION(set_volume_level); - BIND_FUNCTION(set_volume_sfx); - BIND_FUNCTION(set_volume_env); - BIND_FUNCTION(get_environment_region); - BIND_FUNCTION(set_environment_region); - BIND_FUNCTION(mod_file_exists); - BIND_FUNCTION(get_active_mod); - BIND_FUNCTION(set_window_title); - BIND_FUNCTION(reset_window_title); - BIND_FUNCTION(get_os_name); - BIND_FUNCTION(geo_get_current_root); - BIND_FUNCTION(geo_get_current_master_list); - BIND_FUNCTION(geo_get_current_perspective); - BIND_FUNCTION(geo_get_current_camera); - BIND_FUNCTION(geo_get_current_held_object); - BIND_FUNCTION(texture_to_lua_table); - BIND_FUNCTION(get_texture_name); + smlua_bind_function(L, "get_network_area_timer", smlua_func_get_network_area_timer); + smlua_bind_function(L, "get_area_update_counter", smlua_func_get_area_update_counter); + smlua_bind_function(L, "get_temp_s32_pointer", smlua_func_get_temp_s32_pointer); + smlua_bind_function(L, "deref_s32_pointer", smlua_func_deref_s32_pointer); + smlua_bind_function(L, "djui_popup_create_global", smlua_func_djui_popup_create_global); + smlua_bind_function(L, "djui_is_popup_disabled", smlua_func_djui_is_popup_disabled); + smlua_bind_function(L, "djui_set_popup_disabled_override", smlua_func_djui_set_popup_disabled_override); + smlua_bind_function(L, "djui_reset_popup_disabled_override", smlua_func_djui_reset_popup_disabled_override); + smlua_bind_function(L, "djui_is_playerlist_open", smlua_func_djui_is_playerlist_open); + smlua_bind_function(L, "djui_attempting_to_open_playerlist", smlua_func_djui_attempting_to_open_playerlist); + smlua_bind_function(L, "djui_get_playerlist_page_index", smlua_func_djui_get_playerlist_page_index); + smlua_bind_function(L, "djui_is_chatbox_open", smlua_func_djui_is_chatbox_open); + smlua_bind_function(L, "djui_menu_get_font", smlua_func_djui_menu_get_font); + smlua_bind_function(L, "djui_menu_get_theme", smlua_func_djui_menu_get_theme); + smlua_bind_function(L, "djui_is_playerlist_ping_visible", smlua_func_djui_is_playerlist_ping_visible); + smlua_bind_function(L, "get_dialog_box_state", smlua_func_get_dialog_box_state); + smlua_bind_function(L, "get_dialog_id", smlua_func_get_dialog_id); + smlua_bind_function(L, "get_last_star_or_key", smlua_func_get_last_star_or_key); + smlua_bind_function(L, "set_last_star_or_key", smlua_func_set_last_star_or_key); + smlua_bind_function(L, "get_last_completed_course_num", smlua_func_get_last_completed_course_num); + smlua_bind_function(L, "set_last_completed_course_num", smlua_func_set_last_completed_course_num); + smlua_bind_function(L, "get_last_completed_star_num", smlua_func_get_last_completed_star_num); + smlua_bind_function(L, "set_last_completed_star_num", smlua_func_set_last_completed_star_num); + smlua_bind_function(L, "get_got_file_coin_hi_score", smlua_func_get_got_file_coin_hi_score); + smlua_bind_function(L, "set_got_file_coin_hi_score", smlua_func_set_got_file_coin_hi_score); + smlua_bind_function(L, "get_save_file_modified", smlua_func_get_save_file_modified); + smlua_bind_function(L, "set_save_file_modified", smlua_func_set_save_file_modified); + smlua_bind_function(L, "hud_hide", smlua_func_hud_hide); + smlua_bind_function(L, "hud_show", smlua_func_hud_show); + smlua_bind_function(L, "hud_is_hidden", smlua_func_hud_is_hidden); + smlua_bind_function(L, "hud_get_value", smlua_func_hud_get_value); + smlua_bind_function(L, "hud_set_value", smlua_func_hud_set_value); + smlua_bind_function(L, "hud_render_power_meter", smlua_func_hud_render_power_meter); + smlua_bind_function(L, "hud_render_power_meter_interpolated", smlua_func_hud_render_power_meter_interpolated); + smlua_bind_function(L, "hud_get_flash", smlua_func_hud_get_flash); + smlua_bind_function(L, "hud_set_flash", smlua_func_hud_set_flash); + smlua_bind_function(L, "act_select_hud_hide", smlua_func_act_select_hud_hide); + smlua_bind_function(L, "act_select_hud_show", smlua_func_act_select_hud_show); + smlua_bind_function(L, "act_select_hud_is_hidden", smlua_func_act_select_hud_is_hidden); + smlua_bind_function(L, "is_game_paused", smlua_func_is_game_paused); + smlua_bind_function(L, "is_pause_menu_hidden", smlua_func_is_pause_menu_hidden); + smlua_bind_function(L, "set_pause_menu_hidden", smlua_func_set_pause_menu_hidden); + smlua_bind_function(L, "game_pause", smlua_func_game_pause); + smlua_bind_function(L, "game_unpause", smlua_func_game_unpause); + smlua_bind_function(L, "is_transition_playing", smlua_func_is_transition_playing); + smlua_bind_function(L, "allocate_mario_action", smlua_func_allocate_mario_action); + smlua_bind_function(L, "get_hand_foot_pos_x", smlua_func_get_hand_foot_pos_x); + smlua_bind_function(L, "get_hand_foot_pos_y", smlua_func_get_hand_foot_pos_y); + smlua_bind_function(L, "get_hand_foot_pos_z", smlua_func_get_hand_foot_pos_z); + smlua_bind_function(L, "get_mario_anim_part_pos", smlua_func_get_mario_anim_part_pos); + smlua_bind_function(L, "get_current_save_file_num", smlua_func_get_current_save_file_num); + smlua_bind_function(L, "save_file_get_using_backup_slot", smlua_func_save_file_get_using_backup_slot); + smlua_bind_function(L, "save_file_set_using_backup_slot", smlua_func_save_file_set_using_backup_slot); + smlua_bind_function(L, "movtexqc_register", smlua_func_movtexqc_register); + smlua_bind_function(L, "get_water_level", smlua_func_get_water_level); + smlua_bind_function(L, "set_water_level", smlua_func_set_water_level); + smlua_bind_function(L, "course_is_main_course", smlua_func_course_is_main_course); + smlua_bind_function(L, "get_ttc_speed_setting", smlua_func_get_ttc_speed_setting); + smlua_bind_function(L, "set_ttc_speed_setting", smlua_func_set_ttc_speed_setting); + smlua_bind_function(L, "get_time", smlua_func_get_time); + smlua_bind_function(L, "get_date_and_time", smlua_func_get_date_and_time); + smlua_bind_function(L, "get_envfx", smlua_func_get_envfx); + smlua_bind_function(L, "set_override_envfx", smlua_func_set_override_envfx); + smlua_bind_function(L, "get_global_timer", smlua_func_get_global_timer); + smlua_bind_function(L, "get_dialog_response", smlua_func_get_dialog_response); + smlua_bind_function(L, "get_local_discord_id", smlua_func_get_local_discord_id); + smlua_bind_function(L, "get_coopnet_id", smlua_func_get_coopnet_id); + smlua_bind_function(L, "get_volume_master", smlua_func_get_volume_master); + smlua_bind_function(L, "get_volume_level", smlua_func_get_volume_level); + smlua_bind_function(L, "get_volume_sfx", smlua_func_get_volume_sfx); + smlua_bind_function(L, "get_volume_env", smlua_func_get_volume_env); + smlua_bind_function(L, "set_volume_master", smlua_func_set_volume_master); + smlua_bind_function(L, "set_volume_level", smlua_func_set_volume_level); + smlua_bind_function(L, "set_volume_sfx", smlua_func_set_volume_sfx); + smlua_bind_function(L, "set_volume_env", smlua_func_set_volume_env); + smlua_bind_function(L, "get_environment_region", smlua_func_get_environment_region); + smlua_bind_function(L, "set_environment_region", smlua_func_set_environment_region); + smlua_bind_function(L, "mod_file_exists", smlua_func_mod_file_exists); + smlua_bind_function(L, "get_active_mod", smlua_func_get_active_mod); + smlua_bind_function(L, "set_window_title", smlua_func_set_window_title); + smlua_bind_function(L, "reset_window_title", smlua_func_reset_window_title); + smlua_bind_function(L, "get_os_name", smlua_func_get_os_name); + smlua_bind_function(L, "geo_get_current_root", smlua_func_geo_get_current_root); + smlua_bind_function(L, "geo_get_current_master_list", smlua_func_geo_get_current_master_list); + smlua_bind_function(L, "geo_get_current_perspective", smlua_func_geo_get_current_perspective); + smlua_bind_function(L, "geo_get_current_camera", smlua_func_geo_get_current_camera); + smlua_bind_function(L, "geo_get_current_held_object", smlua_func_geo_get_current_held_object); + smlua_bind_function(L, "texture_to_lua_table", smlua_func_texture_to_lua_table); + smlua_bind_function(L, "get_texture_name", smlua_func_get_texture_name); // smlua_model_utils.h - BIND_FUNCTION(smlua_model_util_get_id); + smlua_bind_function(L, "smlua_model_util_get_id", smlua_func_smlua_model_util_get_id); // smlua_obj_utils.h - BIND_FUNCTION(spawn_sync_object); - BIND_FUNCTION(spawn_non_sync_object); - BIND_FUNCTION(obj_has_behavior_id); - BIND_FUNCTION(obj_has_model_extended); - BIND_FUNCTION(obj_get_model_id_extended); - BIND_FUNCTION(obj_set_model_extended); - BIND_FUNCTION(get_trajectory); - BIND_FUNCTION(geo_get_current_object); - BIND_FUNCTION(get_current_object); - BIND_FUNCTION(get_dialog_object); - BIND_FUNCTION(get_cutscene_focus); - BIND_FUNCTION(get_secondary_camera_focus); - BIND_FUNCTION(set_cutscene_focus); - BIND_FUNCTION(set_secondary_camera_focus); - BIND_FUNCTION(obj_get_first); - BIND_FUNCTION(obj_get_first_with_behavior_id); - BIND_FUNCTION(obj_get_first_with_behavior_id_and_field_s32); - BIND_FUNCTION(obj_get_first_with_behavior_id_and_field_f32); - BIND_FUNCTION(obj_get_next); - BIND_FUNCTION(obj_get_next_with_same_behavior_id); - BIND_FUNCTION(obj_get_next_with_same_behavior_id_and_field_s32); - BIND_FUNCTION(obj_get_next_with_same_behavior_id_and_field_f32); - BIND_FUNCTION(obj_get_nearest_object_with_behavior_id); - BIND_FUNCTION(obj_count_objects_with_behavior_id); - BIND_FUNCTION(obj_get_collided_object); - BIND_FUNCTION(obj_get_field_u32); - BIND_FUNCTION(obj_get_field_s32); - BIND_FUNCTION(obj_get_field_f32); - BIND_FUNCTION(obj_get_field_s16); - BIND_FUNCTION(obj_set_field_u32); - BIND_FUNCTION(obj_set_field_s32); - BIND_FUNCTION(obj_set_field_f32); - BIND_FUNCTION(obj_set_field_s16); - BIND_FUNCTION(obj_get_temp_spawn_particles_info); - BIND_FUNCTION(obj_get_temp_water_droplet_params); - BIND_FUNCTION(get_temp_object_hitbox); - BIND_FUNCTION(obj_is_attackable); - BIND_FUNCTION(obj_is_breakable_object); - BIND_FUNCTION(obj_is_bully); - BIND_FUNCTION(obj_is_coin); - BIND_FUNCTION(obj_is_exclamation_box); - BIND_FUNCTION(obj_is_grabbable); - BIND_FUNCTION(obj_is_mushroom_1up); - BIND_FUNCTION(obj_is_secret); - BIND_FUNCTION(obj_is_valid_for_interaction); - BIND_FUNCTION(obj_check_hitbox_overlap); - BIND_FUNCTION(obj_check_overlap_with_hitbox_params); - BIND_FUNCTION(obj_set_vel); - BIND_FUNCTION(obj_move_xyz); - BIND_FUNCTION(set_whirlpools); + smlua_bind_function(L, "spawn_sync_object", smlua_func_spawn_sync_object); + smlua_bind_function(L, "spawn_non_sync_object", smlua_func_spawn_non_sync_object); + smlua_bind_function(L, "obj_has_behavior_id", smlua_func_obj_has_behavior_id); + smlua_bind_function(L, "obj_has_model_extended", smlua_func_obj_has_model_extended); + smlua_bind_function(L, "obj_get_model_id_extended", smlua_func_obj_get_model_id_extended); + smlua_bind_function(L, "obj_set_model_extended", smlua_func_obj_set_model_extended); + smlua_bind_function(L, "get_trajectory", smlua_func_get_trajectory); + smlua_bind_function(L, "geo_get_current_object", smlua_func_geo_get_current_object); + smlua_bind_function(L, "get_current_object", smlua_func_get_current_object); + smlua_bind_function(L, "get_dialog_object", smlua_func_get_dialog_object); + smlua_bind_function(L, "get_cutscene_focus", smlua_func_get_cutscene_focus); + smlua_bind_function(L, "get_secondary_camera_focus", smlua_func_get_secondary_camera_focus); + smlua_bind_function(L, "set_cutscene_focus", smlua_func_set_cutscene_focus); + smlua_bind_function(L, "set_secondary_camera_focus", smlua_func_set_secondary_camera_focus); + smlua_bind_function(L, "obj_get_first", smlua_func_obj_get_first); + smlua_bind_function(L, "obj_get_first_with_behavior_id", smlua_func_obj_get_first_with_behavior_id); + smlua_bind_function(L, "obj_get_first_with_behavior_id_and_field_s32", smlua_func_obj_get_first_with_behavior_id_and_field_s32); + smlua_bind_function(L, "obj_get_first_with_behavior_id_and_field_f32", smlua_func_obj_get_first_with_behavior_id_and_field_f32); + smlua_bind_function(L, "obj_get_next", smlua_func_obj_get_next); + smlua_bind_function(L, "obj_get_next_with_same_behavior_id", smlua_func_obj_get_next_with_same_behavior_id); + smlua_bind_function(L, "obj_get_next_with_same_behavior_id_and_field_s32", smlua_func_obj_get_next_with_same_behavior_id_and_field_s32); + smlua_bind_function(L, "obj_get_next_with_same_behavior_id_and_field_f32", smlua_func_obj_get_next_with_same_behavior_id_and_field_f32); + smlua_bind_function(L, "obj_get_nearest_object_with_behavior_id", smlua_func_obj_get_nearest_object_with_behavior_id); + smlua_bind_function(L, "obj_count_objects_with_behavior_id", smlua_func_obj_count_objects_with_behavior_id); + smlua_bind_function(L, "obj_get_collided_object", smlua_func_obj_get_collided_object); + smlua_bind_function(L, "obj_get_field_u32", smlua_func_obj_get_field_u32); + smlua_bind_function(L, "obj_get_field_s32", smlua_func_obj_get_field_s32); + smlua_bind_function(L, "obj_get_field_f32", smlua_func_obj_get_field_f32); + smlua_bind_function(L, "obj_get_field_s16", smlua_func_obj_get_field_s16); + smlua_bind_function(L, "obj_set_field_u32", smlua_func_obj_set_field_u32); + smlua_bind_function(L, "obj_set_field_s32", smlua_func_obj_set_field_s32); + smlua_bind_function(L, "obj_set_field_f32", smlua_func_obj_set_field_f32); + smlua_bind_function(L, "obj_set_field_s16", smlua_func_obj_set_field_s16); + smlua_bind_function(L, "obj_get_temp_spawn_particles_info", smlua_func_obj_get_temp_spawn_particles_info); + smlua_bind_function(L, "obj_get_temp_water_droplet_params", smlua_func_obj_get_temp_water_droplet_params); + smlua_bind_function(L, "get_temp_object_hitbox", smlua_func_get_temp_object_hitbox); + smlua_bind_function(L, "obj_is_attackable", smlua_func_obj_is_attackable); + smlua_bind_function(L, "obj_is_breakable_object", smlua_func_obj_is_breakable_object); + smlua_bind_function(L, "obj_is_bully", smlua_func_obj_is_bully); + smlua_bind_function(L, "obj_is_coin", smlua_func_obj_is_coin); + smlua_bind_function(L, "obj_is_exclamation_box", smlua_func_obj_is_exclamation_box); + smlua_bind_function(L, "obj_is_grabbable", smlua_func_obj_is_grabbable); + smlua_bind_function(L, "obj_is_mushroom_1up", smlua_func_obj_is_mushroom_1up); + smlua_bind_function(L, "obj_is_secret", smlua_func_obj_is_secret); + smlua_bind_function(L, "obj_is_valid_for_interaction", smlua_func_obj_is_valid_for_interaction); + smlua_bind_function(L, "obj_check_hitbox_overlap", smlua_func_obj_check_hitbox_overlap); + smlua_bind_function(L, "obj_check_overlap_with_hitbox_params", smlua_func_obj_check_overlap_with_hitbox_params); + smlua_bind_function(L, "obj_set_vel", smlua_func_obj_set_vel); + smlua_bind_function(L, "obj_move_xyz", smlua_func_obj_move_xyz); + smlua_bind_function(L, "set_whirlpools", smlua_func_set_whirlpools); // smlua_text_utils.h - BIND_FUNCTION(smlua_text_utils_reset_all); - BIND_FUNCTION(smlua_text_utils_dialog_get); - BIND_FUNCTION(smlua_text_utils_dialog_replace); - BIND_FUNCTION(smlua_text_utils_dialog_restore); - BIND_FUNCTION(smlua_text_utils_dialog_is_replaced); - BIND_FUNCTION(smlua_text_utils_allocate_dialog); - BIND_FUNCTION(smlua_text_utils_course_acts_replace); - BIND_FUNCTION(smlua_text_utils_secret_star_replace); - BIND_FUNCTION(smlua_text_utils_course_name_replace); - BIND_FUNCTION(smlua_text_utils_course_name_get); - BIND_FUNCTION(smlua_text_utils_course_name_mod_index); - BIND_FUNCTION(smlua_text_utils_course_name_reset); - BIND_FUNCTION(smlua_text_utils_act_name_replace); - BIND_FUNCTION(smlua_text_utils_act_name_get); - BIND_FUNCTION(smlua_text_utils_act_name_mod_index); - BIND_FUNCTION(smlua_text_utils_act_name_reset); - BIND_FUNCTION(smlua_text_utils_castle_secret_stars_replace); - BIND_FUNCTION(smlua_text_utils_castle_secret_stars_get); - BIND_FUNCTION(smlua_text_utils_castle_secret_stars_mod_index); - BIND_FUNCTION(smlua_text_utils_castle_secret_stars_reset); - BIND_FUNCTION(smlua_text_utils_extra_text_replace); - BIND_FUNCTION(smlua_text_utils_extra_text_get); - BIND_FUNCTION(smlua_text_utils_extra_text_mod_index); - BIND_FUNCTION(smlua_text_utils_extra_text_reset); - BIND_FUNCTION(smlua_text_utils_get_language); + smlua_bind_function(L, "smlua_text_utils_reset_all", smlua_func_smlua_text_utils_reset_all); + smlua_bind_function(L, "smlua_text_utils_dialog_get", smlua_func_smlua_text_utils_dialog_get); + smlua_bind_function(L, "smlua_text_utils_dialog_replace", smlua_func_smlua_text_utils_dialog_replace); + smlua_bind_function(L, "smlua_text_utils_dialog_restore", smlua_func_smlua_text_utils_dialog_restore); + smlua_bind_function(L, "smlua_text_utils_dialog_is_replaced", smlua_func_smlua_text_utils_dialog_is_replaced); + smlua_bind_function(L, "smlua_text_utils_allocate_dialog", smlua_func_smlua_text_utils_allocate_dialog); + smlua_bind_function(L, "smlua_text_utils_course_acts_replace", smlua_func_smlua_text_utils_course_acts_replace); + smlua_bind_function(L, "smlua_text_utils_secret_star_replace", smlua_func_smlua_text_utils_secret_star_replace); + smlua_bind_function(L, "smlua_text_utils_course_name_replace", smlua_func_smlua_text_utils_course_name_replace); + smlua_bind_function(L, "smlua_text_utils_course_name_get", smlua_func_smlua_text_utils_course_name_get); + smlua_bind_function(L, "smlua_text_utils_course_name_mod_index", smlua_func_smlua_text_utils_course_name_mod_index); + smlua_bind_function(L, "smlua_text_utils_course_name_reset", smlua_func_smlua_text_utils_course_name_reset); + smlua_bind_function(L, "smlua_text_utils_act_name_replace", smlua_func_smlua_text_utils_act_name_replace); + smlua_bind_function(L, "smlua_text_utils_act_name_get", smlua_func_smlua_text_utils_act_name_get); + smlua_bind_function(L, "smlua_text_utils_act_name_mod_index", smlua_func_smlua_text_utils_act_name_mod_index); + smlua_bind_function(L, "smlua_text_utils_act_name_reset", smlua_func_smlua_text_utils_act_name_reset); + smlua_bind_function(L, "smlua_text_utils_castle_secret_stars_replace", smlua_func_smlua_text_utils_castle_secret_stars_replace); + smlua_bind_function(L, "smlua_text_utils_castle_secret_stars_get", smlua_func_smlua_text_utils_castle_secret_stars_get); + smlua_bind_function(L, "smlua_text_utils_castle_secret_stars_mod_index", smlua_func_smlua_text_utils_castle_secret_stars_mod_index); + smlua_bind_function(L, "smlua_text_utils_castle_secret_stars_reset", smlua_func_smlua_text_utils_castle_secret_stars_reset); + smlua_bind_function(L, "smlua_text_utils_extra_text_replace", smlua_func_smlua_text_utils_extra_text_replace); + smlua_bind_function(L, "smlua_text_utils_extra_text_get", smlua_func_smlua_text_utils_extra_text_get); + smlua_bind_function(L, "smlua_text_utils_extra_text_mod_index", smlua_func_smlua_text_utils_extra_text_mod_index); + smlua_bind_function(L, "smlua_text_utils_extra_text_reset", smlua_func_smlua_text_utils_extra_text_reset); + smlua_bind_function(L, "smlua_text_utils_get_language", smlua_func_smlua_text_utils_get_language); // sound_init.h - BIND_FUNCTION(reset_volume); - BIND_FUNCTION(raise_background_noise); - BIND_FUNCTION(lower_background_noise); - BIND_FUNCTION(disable_background_sound); - BIND_FUNCTION(enable_background_sound); - BIND_FUNCTION(play_menu_sounds); - BIND_FUNCTION(play_painting_eject_sound); - BIND_FUNCTION(play_infinite_stairs_music); - BIND_FUNCTION(set_background_music); - BIND_FUNCTION(fadeout_music); - BIND_FUNCTION(fadeout_level_music); - BIND_FUNCTION(play_cutscene_music); - BIND_FUNCTION(play_shell_music); - BIND_FUNCTION(stop_shell_music); - BIND_FUNCTION(play_cap_music); - BIND_FUNCTION(fadeout_cap_music); - BIND_FUNCTION(stop_cap_music); + smlua_bind_function(L, "reset_volume", smlua_func_reset_volume); + smlua_bind_function(L, "raise_background_noise", smlua_func_raise_background_noise); + smlua_bind_function(L, "lower_background_noise", smlua_func_lower_background_noise); + smlua_bind_function(L, "disable_background_sound", smlua_func_disable_background_sound); + smlua_bind_function(L, "enable_background_sound", smlua_func_enable_background_sound); + smlua_bind_function(L, "play_menu_sounds", smlua_func_play_menu_sounds); + smlua_bind_function(L, "play_painting_eject_sound", smlua_func_play_painting_eject_sound); + smlua_bind_function(L, "play_infinite_stairs_music", smlua_func_play_infinite_stairs_music); + smlua_bind_function(L, "set_background_music", smlua_func_set_background_music); + smlua_bind_function(L, "fadeout_music", smlua_func_fadeout_music); + smlua_bind_function(L, "fadeout_level_music", smlua_func_fadeout_level_music); + smlua_bind_function(L, "play_cutscene_music", smlua_func_play_cutscene_music); + smlua_bind_function(L, "play_shell_music", smlua_func_play_shell_music); + smlua_bind_function(L, "stop_shell_music", smlua_func_stop_shell_music); + smlua_bind_function(L, "play_cap_music", smlua_func_play_cap_music); + smlua_bind_function(L, "fadeout_cap_music", smlua_func_fadeout_cap_music); + smlua_bind_function(L, "stop_cap_music", smlua_func_stop_cap_music); // spawn_sound.h - BIND_FUNCTION(cur_obj_play_sound_1); - BIND_FUNCTION(cur_obj_play_sound_2); - BIND_FUNCTION(create_sound_spawner); - BIND_FUNCTION(calc_dist_to_volume_range_1); - BIND_FUNCTION(calc_dist_to_volume_range_2); + smlua_bind_function(L, "cur_obj_play_sound_1", smlua_func_cur_obj_play_sound_1); + smlua_bind_function(L, "cur_obj_play_sound_2", smlua_func_cur_obj_play_sound_2); + smlua_bind_function(L, "create_sound_spawner", smlua_func_create_sound_spawner); + smlua_bind_function(L, "calc_dist_to_volume_range_1", smlua_func_calc_dist_to_volume_range_1); + smlua_bind_function(L, "calc_dist_to_volume_range_2", smlua_func_calc_dist_to_volume_range_2); // surface_collision.h - BIND_FUNCTION(find_wall_collisions); - //BIND_FUNCTION(find_ceil); <--- UNIMPLEMENTED - BIND_FUNCTION(find_ceil_height); - //BIND_FUNCTION(find_floor_height_and_data); <--- UNIMPLEMENTED - BIND_FUNCTION(find_floor_height); - //BIND_FUNCTION(find_floor); <--- UNIMPLEMENTED - BIND_FUNCTION(find_water_level); - BIND_FUNCTION(find_poison_gas_level); - //BIND_FUNCTION(find_surface_on_ray); <--- UNIMPLEMENTED - BIND_FUNCTION(set_find_wall_direction); - BIND_FUNCTION(closest_point_to_triangle); + smlua_bind_function(L, "find_wall_collisions", smlua_func_find_wall_collisions); + //smlua_bind_function(L, "find_ceil", smlua_func_find_ceil); <--- UNIMPLEMENTED + smlua_bind_function(L, "find_ceil_height", smlua_func_find_ceil_height); + //smlua_bind_function(L, "find_floor_height_and_data", smlua_func_find_floor_height_and_data); <--- UNIMPLEMENTED + smlua_bind_function(L, "find_floor_height", smlua_func_find_floor_height); + //smlua_bind_function(L, "find_floor", smlua_func_find_floor); <--- UNIMPLEMENTED + smlua_bind_function(L, "find_water_level", smlua_func_find_water_level); + smlua_bind_function(L, "find_poison_gas_level", smlua_func_find_poison_gas_level); + //smlua_bind_function(L, "find_surface_on_ray", smlua_func_find_surface_on_ray); <--- UNIMPLEMENTED + smlua_bind_function(L, "set_find_wall_direction", smlua_func_set_find_wall_direction); + smlua_bind_function(L, "closest_point_to_triangle", smlua_func_closest_point_to_triangle); // surface_load.h - BIND_FUNCTION(load_object_collision_model); - BIND_FUNCTION(load_static_object_collision); - BIND_FUNCTION(toggle_static_object_collision); - BIND_FUNCTION(get_static_object_surface); - BIND_FUNCTION(obj_get_surface_from_index); - BIND_FUNCTION(surface_has_force); + smlua_bind_function(L, "load_object_collision_model", smlua_func_load_object_collision_model); + smlua_bind_function(L, "load_static_object_collision", smlua_func_load_static_object_collision); + smlua_bind_function(L, "toggle_static_object_collision", smlua_func_toggle_static_object_collision); + smlua_bind_function(L, "get_static_object_surface", smlua_func_get_static_object_surface); + smlua_bind_function(L, "obj_get_surface_from_index", smlua_func_obj_get_surface_from_index); + smlua_bind_function(L, "surface_has_force", smlua_func_surface_has_force); // sync_object.h - BIND_FUNCTION(sync_object_get_object); - BIND_FUNCTION(sync_object_is_initialized); - BIND_FUNCTION(sync_object_is_owned_locally); + smlua_bind_function(L, "sync_object_get_object", smlua_func_sync_object_get_object); + smlua_bind_function(L, "sync_object_is_initialized", smlua_func_sync_object_is_initialized); + smlua_bind_function(L, "sync_object_is_owned_locally", smlua_func_sync_object_is_owned_locally); } diff --git a/src/pc/lua/smlua_utils.h b/src/pc/lua/smlua_utils.h index bb2d97288..6324fc57f 100644 --- a/src/pc/lua/smlua_utils.h +++ b/src/pc/lua/smlua_utils.h @@ -20,8 +20,6 @@ s16* smlua_get_vec4s_from_buffer(void); u8* smlua_get_color_from_buffer(void); void smlua_bind_function(lua_State* L, const char* name, void* func); -#define BIND_FUNCTION(name) smlua_bind_function(L, #name, smlua_func_ ## name) - bool smlua_is_table_empty(int index); bool smlua_to_boolean(lua_State* L, int index);