mirror of
https://github.com/coop-deluxe/sm64coopdx.git
synced 2024-11-22 03:55:11 +00:00
Properly sync BITS ferris wheel platforms
This commit is contained in:
parent
61e53a948f
commit
e780b74d1b
9 changed files with 55 additions and 0 deletions
|
@ -797,6 +797,10 @@ function bhv_ferris_wheel_axle_init()
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function bhv_ferris_wheel_platform_init()
|
||||||
|
-- ...
|
||||||
|
end
|
||||||
|
|
||||||
function bhv_ferris_wheel_platform_update()
|
function bhv_ferris_wheel_platform_update()
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
|
@ -5663,6 +5663,7 @@ const BehaviorScript bhvFerrisWheelPlatform[] = {
|
||||||
BEGIN(OBJ_LIST_SURFACE),
|
BEGIN(OBJ_LIST_SURFACE),
|
||||||
ID(id_bhvFerrisWheelPlatform),
|
ID(id_bhvFerrisWheelPlatform),
|
||||||
OR_INT(oFlags, OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE),
|
OR_INT(oFlags, OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE),
|
||||||
|
CALL_NATIVE(bhv_ferris_wheel_platform_init),
|
||||||
BEGIN_LOOP(),
|
BEGIN_LOOP(),
|
||||||
CALL_NATIVE(bhv_ferris_wheel_platform_update),
|
CALL_NATIVE(bhv_ferris_wheel_platform_update),
|
||||||
CALL_NATIVE(load_object_collision_model),
|
CALL_NATIVE(load_object_collision_model),
|
||||||
|
|
|
@ -1974,6 +1974,7 @@ static const void* sDynosBuiltinFuncs[] = {
|
||||||
define_builtin(bhv_blue_coin_switch_init),
|
define_builtin(bhv_blue_coin_switch_init),
|
||||||
define_builtin(bhv_star_number_loop),
|
define_builtin(bhv_star_number_loop),
|
||||||
define_builtin(spawn_star_number),
|
define_builtin(spawn_star_number),
|
||||||
|
define_builtin(bhv_ferris_wheel_platform_init),
|
||||||
};
|
};
|
||||||
|
|
||||||
const void* DynOS_Builtin_Func_GetFromName(const char* aDataName) {
|
const void* DynOS_Builtin_Func_GetFromName(const char* aDataName) {
|
||||||
|
|
|
@ -3526,6 +3526,24 @@
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
|
## [bhv_ferris_wheel_platform_init](#bhv_ferris_wheel_platform_init)
|
||||||
|
|
||||||
|
### Lua Example
|
||||||
|
`bhv_ferris_wheel_platform_init()`
|
||||||
|
|
||||||
|
### Parameters
|
||||||
|
- None
|
||||||
|
|
||||||
|
### Returns
|
||||||
|
- None
|
||||||
|
|
||||||
|
### C Prototype
|
||||||
|
`void bhv_ferris_wheel_platform_init(void);`
|
||||||
|
|
||||||
|
[:arrow_up_small:](#)
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
## [bhv_ferris_wheel_platform_update](#bhv_ferris_wheel_platform_update)
|
## [bhv_ferris_wheel_platform_update](#bhv_ferris_wheel_platform_update)
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
|
|
|
@ -229,6 +229,7 @@
|
||||||
- [bhv_falling_pillar_init](functions-2.md#bhv_falling_pillar_init)
|
- [bhv_falling_pillar_init](functions-2.md#bhv_falling_pillar_init)
|
||||||
- [bhv_falling_pillar_loop](functions-2.md#bhv_falling_pillar_loop)
|
- [bhv_falling_pillar_loop](functions-2.md#bhv_falling_pillar_loop)
|
||||||
- [bhv_ferris_wheel_axle_init](functions-2.md#bhv_ferris_wheel_axle_init)
|
- [bhv_ferris_wheel_axle_init](functions-2.md#bhv_ferris_wheel_axle_init)
|
||||||
|
- [bhv_ferris_wheel_platform_init](functions-2.md#bhv_ferris_wheel_platform_init)
|
||||||
- [bhv_ferris_wheel_platform_update](functions-2.md#bhv_ferris_wheel_platform_update)
|
- [bhv_ferris_wheel_platform_update](functions-2.md#bhv_ferris_wheel_platform_update)
|
||||||
- [bhv_fire_piranha_plant_init](functions-2.md#bhv_fire_piranha_plant_init)
|
- [bhv_fire_piranha_plant_init](functions-2.md#bhv_fire_piranha_plant_init)
|
||||||
- [bhv_fire_piranha_plant_update](functions-2.md#bhv_fire_piranha_plant_update)
|
- [bhv_fire_piranha_plant_update](functions-2.md#bhv_fire_piranha_plant_update)
|
||||||
|
|
|
@ -486,6 +486,7 @@ void bhv_track_ball_update(void);
|
||||||
void bhv_seesaw_platform_init(void);
|
void bhv_seesaw_platform_init(void);
|
||||||
void bhv_seesaw_platform_update(void);
|
void bhv_seesaw_platform_update(void);
|
||||||
void bhv_ferris_wheel_axle_init(void);
|
void bhv_ferris_wheel_axle_init(void);
|
||||||
|
void bhv_ferris_wheel_platform_init(void);
|
||||||
void bhv_ferris_wheel_platform_update(void);
|
void bhv_ferris_wheel_platform_update(void);
|
||||||
void bhv_water_bomb_spawner_update(void);
|
void bhv_water_bomb_spawner_update(void);
|
||||||
void bhv_water_bomb_update(void);
|
void bhv_water_bomb_update(void);
|
||||||
|
|
|
@ -56,6 +56,17 @@ void bhv_ferris_wheel_axle_init(void) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void bhv_ferris_wheel_platform_init(void) {
|
||||||
|
struct SyncObject* so = sync_object_init(o, 2000.0f);
|
||||||
|
if (so) {
|
||||||
|
so->hasStandardFields = FALSE;
|
||||||
|
so->maxUpdateRate = 5.0f;
|
||||||
|
sync_object_init_field(o, &o->oPosX);
|
||||||
|
sync_object_init_field(o, &o->oPosY);
|
||||||
|
sync_object_init_field(o, &o->oPosZ);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Update function for bhvFerrisWheelPlatform.
|
* Update function for bhvFerrisWheelPlatform.
|
||||||
* Position self relative to parent using the parent's roll.
|
* Position self relative to parent using the parent's roll.
|
||||||
|
|
|
@ -53,6 +53,7 @@ void bhv_track_ball_update(void);
|
||||||
void bhv_seesaw_platform_init(void);
|
void bhv_seesaw_platform_init(void);
|
||||||
void bhv_seesaw_platform_update(void);
|
void bhv_seesaw_platform_update(void);
|
||||||
void bhv_ferris_wheel_axle_init(void);
|
void bhv_ferris_wheel_axle_init(void);
|
||||||
|
void bhv_ferris_wheel_platform_init(void);
|
||||||
void bhv_ferris_wheel_platform_update(void);
|
void bhv_ferris_wheel_platform_update(void);
|
||||||
void bhv_water_bomb_spawner_update(void);
|
void bhv_water_bomb_spawner_update(void);
|
||||||
void bhv_water_bomb_update(void);
|
void bhv_water_bomb_update(void);
|
||||||
|
|
|
@ -3230,6 +3230,22 @@ int smlua_func_bhv_ferris_wheel_axle_init(UNUSED lua_State* L) {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int smlua_func_bhv_ferris_wheel_platform_init(UNUSED lua_State* L) {
|
||||||
|
if (!gCurrentObject) { return 0; }
|
||||||
|
if (L == NULL) { return 0; }
|
||||||
|
|
||||||
|
int top = lua_gettop(L);
|
||||||
|
if (top != 0) {
|
||||||
|
LOG_LUA_LINE("Improper param count for '%s': Expected %u, Received %u", "bhv_ferris_wheel_platform_init", 0, top);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bhv_ferris_wheel_platform_init();
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
int smlua_func_bhv_ferris_wheel_platform_update(UNUSED lua_State* L) {
|
int smlua_func_bhv_ferris_wheel_platform_update(UNUSED lua_State* L) {
|
||||||
if (!gCurrentObject) { return 0; }
|
if (!gCurrentObject) { return 0; }
|
||||||
if (L == NULL) { return 0; }
|
if (L == NULL) { return 0; }
|
||||||
|
@ -32826,6 +32842,7 @@ void smlua_bind_functions_autogen(void) {
|
||||||
smlua_bind_function(L, "bhv_falling_pillar_init", smlua_func_bhv_falling_pillar_init);
|
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_loop", smlua_func_bhv_falling_pillar_loop);
|
||||||
smlua_bind_function(L, "bhv_ferris_wheel_axle_init", smlua_func_bhv_ferris_wheel_axle_init);
|
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_ferris_wheel_platform_update", smlua_func_bhv_ferris_wheel_platform_update);
|
||||||
smlua_bind_function(L, "bhv_fire_piranha_plant_init", smlua_func_bhv_fire_piranha_plant_init);
|
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_fire_piranha_plant_update", smlua_func_bhv_fire_piranha_plant_update);
|
||||||
|
|
Loading…
Reference in a new issue