diff --git a/include/level_object_entries.h b/include/level_object_entries.h index daad0d12..b7e830e7 100644 --- a/include/level_object_entries.h +++ b/include/level_object_entries.h @@ -1,7 +1,7 @@ #ifndef _LEVEL_OBJECT_ENTRIES_H_ #define _LEVEL_OBJECT_ENTRIES_H_ -/* Size: 8 bytes. Shared across every entry. */ + /* Size: 8 bytes. Shared across every entry. */ typedef struct LevelObjectEntryCommon { u8 object_id; // 9-bit object ID to load (uses size's MSB). u8 size; // 7-bit total entry length (MSB is used in object_id). @@ -21,59 +21,59 @@ typedef struct LevelObjectEntry_Scenery { } LevelObjectEntry_Scenery; typedef struct LevelObjectEntry_Fish { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Fish; typedef struct LevelObjectEntry_Animator { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Animator; typedef struct LevelObjectEntry_Weapon { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Weapon; typedef struct LevelObjectEntry_Smoke { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Smoke; typedef struct LevelObjectEntry_Exit { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Exit; typedef struct LevelObjectEntry_Audio { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Audio; typedef struct LevelObjectEntry_Audioline { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Audioline; typedef struct LevelObjectEntry_CameraControl { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_CameraControl; typedef struct LevelObjectEntry_Setuppoint { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Setuppoint; typedef struct LevelObjectEntry_DinoWhale { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_DinoWhale; typedef struct LevelObjectEntry_Checkpoint { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Checkpoint; typedef struct LevelObjectEntry_Door { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Door; typedef struct LevelObjectEntry_FogChanger { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_FogChanger; typedef struct LevelObjectEntry_AiNode { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_AiNode; #define BALLOON_TYPE_BOOST 0 @@ -90,27 +90,27 @@ typedef struct LevelObjectEntry_WeaponBalloon { } LevelObjectEntry_WeaponBalloon; typedef struct LevelObjectEntry_AudioSeqLine { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_AudioSeqLine; typedef struct LevelObjectEntry_BombExplosion { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_BombExplosion; typedef struct LevelObjectEntry_WBalloonPop { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_WBalloonPop; typedef struct LevelObjectEntry_Unknown25 { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Unknown25; typedef struct LevelObjectEntry_SkyControl { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_SkyControl; typedef struct LevelObjectEntry_AudioReverb { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_AudioReverb; typedef struct LevelObjectEntry_Torch_Mist { @@ -120,139 +120,139 @@ typedef struct LevelObjectEntry_Torch_Mist { } LevelObjectEntry_Torch_Mist; typedef struct LevelObjectEntry_TexScroll { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_TexScroll; typedef struct LevelObjectEntry_ModeChange { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_ModeChange; typedef struct LevelObjectEntry_StopWatchMan { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_StopWatchMan; typedef struct LevelObjectEntry_Banana { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Banana; typedef struct LevelObjectEntry_RgbaLight { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_RgbaLight; typedef struct LevelObjectEntry_Bouy_PirateShip { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Bouy_PirateShip; typedef struct LevelObjectEntry_Weather { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Weather; typedef struct LevelObjectEntry_Bridge_WhaleRamp { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Bridge_WhaleRamp; typedef struct LevelObjectEntry_RampSwitch { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_RampSwitch; typedef struct LevelObjectEntry_SeaMonster { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_SeaMonster; typedef struct LevelObjectEntry_Bonus { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Bonus; typedef struct LevelObjectEntry_LensFlare { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_LensFlare; typedef struct LevelObjectEntry_LensFlareSwitch { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_LensFlareSwitch; typedef struct LevelObjectEntry_CollectEgg { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_CollectEgg; typedef struct LevelObjectEntry_EggCreator { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_EggCreator; typedef struct LevelObjectEntry_CharacterFlag { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_CharacterFlag; typedef struct LevelObjectEntry_Animation { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Animation; typedef struct LevelObjectEntry_InfoPoint { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_InfoPoint; typedef struct LevelObjectEntry_Trigger { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Trigger; typedef struct LevelObjectEntry_AirZippers_WaterZippers { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_AirZippers_WaterZippers; typedef struct LevelObjectEntry_Unknown58 { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Unknown58; typedef struct LevelObjectEntry_WaveGenerator { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_WaveGenerator; typedef struct LevelObjectEntry_Butterfly { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Butterfly; typedef struct LevelObjectEntry_Parkwarden { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Parkwarden; typedef struct LevelObjectEntry_WorldKey { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_WorldKey; typedef struct LevelObjectEntry_BananaCreator { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_BananaCreator; typedef struct LevelObjectEntry_TreasureSucker { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_TreasureSucker; typedef struct LevelObjectEntry_Log { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Log; typedef struct LevelObjectEntry_LavaSpurt { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_LavaSpurt; typedef struct LevelObjectEntry_PosArrow { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_PosArrow; typedef struct LevelObjectEntry_HitTester { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_HitTester; typedef struct LevelObjectEntry_MidiFade { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_MidiFade; typedef struct LevelObjectEntry_DynamicLightingObject { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_DynamicLightingObject; typedef struct LevelObjectEntry_EffectBox { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_EffectBox; typedef struct LevelObjectEntry_TrophyCab { @@ -261,15 +261,15 @@ typedef struct LevelObjectEntry_TrophyCab { } LevelObjectEntry_TrophyCab; typedef struct LevelObjectEntry_Bubbler { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Bubbler; typedef struct LevelObjectEntry_FlyCoin { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_FlyCoin; typedef struct LevelObjectEntry_GoldenBalloon { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_GoldenBalloon; typedef struct LevelObjectEntry_Laserbolt { @@ -287,87 +287,87 @@ typedef struct LevelObjectEntry_Lasergun { } LevelObjectEntry_Lasergun; typedef struct LevelObjectEntry_GroundZipper { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_GroundZipper; typedef struct LevelObjectEntry_OverRidePos { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_OverRidePos; typedef struct LevelObjectEntry_WizpigShip { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_WizpigShip; typedef struct LevelObjectEntry_SilverCoin { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_SilverCoin; typedef struct LevelObjectEntry_Boost { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Boost; typedef struct LevelObjectEntry_WardenSmoke { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_WardenSmoke; typedef struct LevelObjectEntry_Unknown94 { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Unknown94; typedef struct LevelObjectEntry_Unknown96 { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Unknown96; typedef struct LevelObjectEntry_Snowball { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Snowball; typedef struct LevelObjectEntry_Teleport { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Teleport; typedef struct LevelObjectEntry_Lighthouse_RocketSignpost { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Lighthouse; typedef struct LevelObjectEntry_Windsail { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Windsail; typedef struct LevelObjectEntry_RangeTrigger { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_RangeTrigger; typedef struct LevelObjectEntry_Fireball_Octoweapon { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Fireball_Octoweapon; typedef struct LevelObjectEntry_Frog { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Frog; typedef struct LevelObjectEntry_SilverCoinAdv2 { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_SilverCoinAdv2; typedef struct LevelObjectEntry_TTDoor { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_TTDoor; typedef struct LevelObjectEntry_MidiFadePoint { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_MidiFadePoint; typedef struct LevelObjectEntry_OctoBubble { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_OctoBubble; typedef struct LevelObjectEntry_LevelName { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_LevelName; typedef struct LevelObjectEntry_Midichset { -/* 0x00 */ LevelObjectEntryCommon common; + /* 0x00 */ LevelObjectEntryCommon common; } LevelObjectEntry_Midichset; #endif diff --git a/src/object_functions.c b/src/object_functions.c index dc31b08b..b02fe9db 100644 --- a/src/object_functions.c +++ b/src/object_functions.c @@ -469,7 +469,7 @@ void obj_loop_torch_mist(Object *obj, s32 speed) { obj->unk18 += obj->unk78 * speed; } -void obj_init_effectbox(Object *obj, s32 entry) { +void obj_init_effectbox(Object *obj, u8 *entry) { } #ifdef NON_EQUIVALENT @@ -708,7 +708,7 @@ void obj_loop_trophycab(Object *obj, s32 speed) { GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_trophycab.s") #endif -void obj_init_collectegg(Object *obj, s32 entry) { +void obj_init_collectegg(Object *obj, u8 *entry) { obj->unk4C->unk14 = 2; obj->unk4C->unk11 = 0; obj->unk4C->unk10 = 0x14; @@ -717,7 +717,7 @@ void obj_init_collectegg(Object *obj, s32 entry) { GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_collectegg.s") -void obj_init_eggcreator(Object *obj, s32 entry) { +void obj_init_eggcreator(Object *obj, u8 *entry) { } void obj_loop_eggcreator(Object *obj, s32 speed) { @@ -803,7 +803,7 @@ GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_airzippers_waterzippers.s" GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_init_groundzipper.s") GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_groundzipper.s") -void obj_init_unknown58(Object *obj, s32 entry) { +void obj_init_unknown58(Object *obj, u8 *entry) { obj->unk78 = 0; obj->unk7C.word = obj->header; } @@ -882,7 +882,7 @@ void obj_loop_characterflag(Object *obj, s32 speed) { GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80036040.s") -void obj_init_stopwatchman(Object *obj, s32 entry) { +void obj_init_stopwatchman(Object *obj, u8 *entry) { Object_64 *temp; obj->unk4C->unk14 = 1; obj->unk4C->unk11 = 0; @@ -928,7 +928,7 @@ void obj_loop_lavaspurt(Object *obj, s32 speed) { } } -void obj_init_posarrow(Object *obj, s32 entry) { +void obj_init_posarrow(Object *obj, u8 *entry) { obj->unk6 |= 0x4000; } @@ -980,14 +980,14 @@ void obj_loop_dooropener(Object *obj, s32 speed) { func_800235D0(phi_a0); } -void obj_init_overridepos(Object *obj, s32 entry) { +void obj_init_overridepos(Object *obj, u8 *entry) { } /* Unused? */ void func_80037D60(s32 arg0, s32 arg1) { } -void obj_init_wizpigship(Object *obj, s32 entry) { +void obj_init_wizpigship(Object *obj, u8 *entry) { } GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_wizpigship.s") @@ -1010,7 +1010,7 @@ void obj_loop_vehicleanim(Object *obj, s32 speed) { } } -void obj_init_hittester(Object *obj, s32 entry) { +void obj_init_hittester(Object *obj, u8 *entry) { obj->unk4C->unk14 = 0x81; obj->unk4C->unk11 = 2; obj->unk4C->unk10 = 0x14; @@ -1021,21 +1021,21 @@ void obj_loop_hittester(Object *obj, s32 speed) { func_8001F460(obj, speed, obj); } -void obj_init_dynamic_lighting_object(Object *obj, s32 entry) { +void obj_init_dynamic_lighting_object(Object *obj, u8 *entry) { obj->unk4C->unk14 = 1; obj->unk4C->unk11 = 2; obj->unk4C->unk10 = 0x14; obj->unk4C->unk12 = 0; } -void obj_init_unknown96(Object *obj, s32 entry) { +void obj_init_unknown96(Object *obj, u8 *entry) { obj->unk4C->unk14 = 0x81; obj->unk4C->unk11 = 2; obj->unk4C->unk10 = 0x14; obj->unk4C->unk12 = 0; } -void obj_init_snowball(Object *obj, s32 entry) { +void obj_init_snowball(Object *obj, u8 *entry) { obj->unk4C->unk14 = 1; obj->unk4C->unk11 = 2; obj->unk4C->unk10 = 0x14; @@ -1149,7 +1149,7 @@ void obj_loop_infopoint(Object *obj, s32 speed) { } } -void obj_init_smoke(Object *obj, s32 entry) { +void obj_init_smoke(Object *obj, u8 *entry) { } void obj_loop_smoke(Object *obj, s32 speed) { @@ -1167,7 +1167,7 @@ void obj_loop_smoke(Object *obj, s32 speed) { } } -void obj_init_unknown25(Object *obj, s32 entry) { +void obj_init_unknown25(Object *obj, u8 *entry) { } void obj_loop_unknown25(Object *obj, s32 speed) { @@ -1178,7 +1178,7 @@ void obj_loop_unknown25(Object *obj, s32 speed) { } } -void obj_init_wardensmoke(Object *obj, s32 entry) { +void obj_init_wardensmoke(Object *obj, u8 *entry) { } void obj_loop_wardensmoke(Object *obj, s32 speed) { @@ -1218,7 +1218,7 @@ GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_init_bombexplosion.s") GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_bombexplosion.s") -void obj_init_teleport(Object *obj, s32 entry) { +void obj_init_teleport(Object *obj, u8 *entry) { obj->unk4C->unk14 = 2; obj->unk4C->unk11 = 0; obj->unk4C->unk10 = 0xF; @@ -1283,7 +1283,7 @@ void obj_init_setuppoint(Object *obj, u8 *entry) { void obj_loop_setuppoint(Object *obj, s32 speed) { } -void obj_init_dino_whale(Object *obj, s32 entry) { +void obj_init_dino_whale(Object *obj, u8 *entry) { obj->unk4C->unk14 = 1; obj->unk4C->unk11 = 3; obj->unk4C->unk10 = 0x14; @@ -1310,7 +1310,7 @@ void obj_loop_dino_whale(Object *obj, s32 speed) { } } -void obj_init_parkwarden(Object *obj, s32 entry) { +void obj_init_parkwarden(Object *obj, u8 *entry) { Object_64 *temp; obj->unk4C->unk14 = (u16)1; obj->unk4C->unk11 = (u8)0; @@ -1485,7 +1485,7 @@ void obj_loop_rampswitch(Object *obj, s32 speed) { obj->unk4C->unk13 = (u8)0xFF; } -void obj_init_seamonster(Object *obj, s32 entry) { +void obj_init_seamonster(Object *obj, u8 *entry) { } void obj_loop_seamonster(Object *obj, s32 speed) { @@ -1530,18 +1530,18 @@ void obj_init_treasuresucker(Object *obj, s8 *entry) { GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_treasuresucker.s") -void obj_init_flycoin(Object *obj, s32 entry) { +void obj_init_flycoin(Object *obj, u8 *entry) { } GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_flycoin.s") -void obj_init_coincreator(Object *obj, s32 entry) { +void obj_init_coincreator(Object *obj, u8 *entry) { obj->unk18 = 0x64; } GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_coincreator.s") -void obj_init_coin(Object *obj, s32 entry) { +void obj_init_coin(Object *obj, u8 *entry) { obj->unk4C->unk14 = 2; obj->unk4C->unk11 = 0; obj->unk4C->unk10 = 0x1E; @@ -1554,7 +1554,7 @@ void obj_init_coin(Object *obj, s32 entry) { GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_coin.s") -void obj_init_silvercoin_adv2(Object *obj, s32 entry) { +void obj_init_silvercoin_adv2(Object *obj, u8 *entry) { obj->unk4C->unk14 = 2; obj->unk4C->unk11 = 0; obj->unk4C->unk10 = 0x1E; @@ -1573,7 +1573,7 @@ void obj_init_silvercoin_adv2(Object *obj, s32 entry) { } } -void obj_init_silvercoin(Object *obj, s32 entry) { +void obj_init_silvercoin(Object *obj, u8 *entry) { obj->unk4C->unk14 = 2; obj->unk4C->unk11 = 0; obj->unk4C->unk10 = 0x1E; @@ -1700,13 +1700,13 @@ void obj_init_weaponballoon(Object *obj, LevelObjectEntry_WeaponBalloon *entry) GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_weaponballoon.s") -void obj_init_wballoonpop(Object *obj, s32 entry) { +void obj_init_wballoonpop(Object *obj, u8 *entry) { } void obj_loop_wballoonpop(Object *obj, s32 speed) { } -void obj_init_weapon(Object *obj, s32 entry) { +void obj_init_weapon(Object *obj, u8 *entry) { obj->unk4C->unk14 = 2; obj->unk4C->unk11 = 0; obj->unk4C->unk10 = 0x18; @@ -1834,11 +1834,11 @@ void obj_init_texscroll(Object *obj, LevelObjectEntry800400A4 *entry, s32 arg2) GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_texscroll.s") -void obj_init_rgbalight(Object *obj, s32 entry, s32 arg2) { +void obj_init_rgbalight(Object *obj, u8 *entry, s32 arg2) { obj->unk64 = func_80031CAC(obj, entry); } -void obj_init_buoy_pirateship(Object *obj, s32 entry, s32 arg2) { +void obj_init_buoy_pirateship(Object *obj, u8 *entry, s32 arg2) { obj->unk64 = func_800BE654(obj->unk2E, obj->x_position, obj->z_position); obj->unk4C->unk14 = 1; obj->unk4C->unk11 = 0; @@ -1879,7 +1879,7 @@ void obj_init_weather(Object *obj, s16 *entry) { GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_weather.s") -void obj_init_lensflare(Object *obj, s32 entry) { +void obj_init_lensflare(Object *obj, u8 *entry) { func_800AC8A8(obj); } @@ -1889,7 +1889,7 @@ void obj_init_lensflareswitch(Object *obj, s16 *entry, s32 arg2) { obj->scale /= 40.0f; } -void obj_init_wavegenerator(Object *obj, s32 entry, s32 arg2) { +void obj_init_wavegenerator(Object *obj, u8 *entry, s32 arg2) { func_800BF524(obj); //waves.c } @@ -1926,13 +1926,13 @@ void obj_init_boost(Object *obj, s8 *entry) { obj->unk3C_a.unk3C = NULL; } -void obj_init_unknown94(Object *obj, s32 entry, s32 arg2) { +void obj_init_unknown94(Object *obj, u8 *entry, s32 arg2) { } void obj_loop_unknown94(Object *obj, s32 speed) { } -void obj_init_rangetrigger(Object *obj, s32 entry) { +void obj_init_rangetrigger(Object *obj, u8 *entry) { } void obj_loop_rangetrigger(Object *obj, s32 speed) { @@ -2009,8 +2009,8 @@ void obj_init_levelname(Object *obj, s8 *entry) { GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_levelname.s") -void obj_init_wizghosts(Object *obj, s32 entry) { - func_8001F460(obj, entry, obj); - obj->unk18 = (obj->unk18 + (entry * 8)) & 0xFF; +void obj_loop_wizghosts(Object *obj, s32 speed) { + func_8001F460(obj, speed, obj); + obj->unk18 = (obj->unk18 + (speed * 8)) & 0xFF; } diff --git a/src/object_functions.h b/src/object_functions.h index d94132c2..c2f9f1a4 100644 --- a/src/object_functions.h +++ b/src/object_functions.h @@ -481,55 +481,55 @@ void obj_init_lasergun(Object *obj, LevelObjectEntry_Lasergun *entry); void obj_init_laserbolt(Object *obj, LevelObjectEntry_Laserbolt *entry); void obj_init_torch_mist(Object *obj, LevelObjectEntry_Torch_Mist *entry); void obj_loop_torch_mist(Object *obj, s32 speed); -void obj_init_effectbox(Object *obj, s32 entry); +void obj_init_effectbox(Object *obj, u8 *entry); void obj_init_trophycab(Object *obj, LevelObjectEntry_TrophyCab *entry); -void obj_init_collectegg(Object *obj, s32 entry); -void obj_init_eggcreator(Object *obj, s32 entry); +void obj_init_collectegg(Object *obj, u8 *entry); +void obj_init_eggcreator(Object *obj, u8 *entry); void obj_loop_eggcreator(Object *obj, s32 speed); void obj_init_lighthouse_rocketsignpost(Object *obj, LevelObjectEntry8003572C *entry); void obj_loop_rocketsignpost(Object *obj, s32 speed); void obj_init_airzippers_waterzippers(Object *obj, LevelObjectEntry8003588C *entry); -void obj_init_unknown58(Object *obj, s32 entry); +void obj_init_unknown58(Object *obj, u8 *entry); void obj_loop_unknown58(Object *obj, s32 speed); void obj_init_characterflag(Object *obj, unk80035EF8 *entry); void obj_loop_characterflag(Object *obj, s32 speed); -void obj_init_stopwatchman(Object *obj, s32 entry); +void obj_init_stopwatchman(Object *obj, u8 *entry); void func_80036BCC(u16 arg0, s32 arg1); void obj_init_lavaspurt(Object *obj, u8 *entry); -void obj_init_posarrow(Object *obj, s32 entry); +void obj_init_posarrow(Object *obj, u8 *entry); void obj_init_animator(Object *obj, LevelObjectEntry800376E0 *entry, s32 arg2); void obj_loop_animobject(Object *obj, s32 speed); void obj_loop_dooropener(Object *obj, s32 speed); -void obj_init_overridepos(Object *obj, s32 entry); +void obj_init_overridepos(Object *obj, u8 *entry); void func_80037D60(s32 arg0, s32 arg1); -void obj_init_wizpigship(Object *obj, s32 entry); -void obj_init_hittester(Object *obj, s32 entry); +void obj_init_wizpigship(Object *obj, u8 *entry); +void obj_init_hittester(Object *obj, u8 *entry); void obj_loop_hittester(Object *obj, s32 speed); -void obj_init_dynamic_lighting_object(Object *obj, s32 entry); -void obj_init_unknown96(Object *obj, s32 entry); -void obj_init_snowball(Object *obj, s32 entry); +void obj_init_dynamic_lighting_object(Object *obj, u8 *entry); +void obj_init_unknown96(Object *obj, u8 *entry); +void obj_init_snowball(Object *obj, u8 *entry); void func_80038330(s32 arg0, s32 arg1); void obj_loop_animcamera(Object *obj, s32 speed); void func_800387C0(s32 arg0, s32 arg1); void obj_loop_animcar(Object *obj, s32 speed); void obj_init_infopoint(Object *obj, u8 *entry); void obj_loop_infopoint(Object *obj, s32 speed); -void obj_init_smoke(Object *obj, s32 entry); +void obj_init_smoke(Object *obj, u8 *entry); void obj_loop_smoke(Object *obj, s32 speed); -void obj_init_unknown25(Object *obj, s32 entry); +void obj_init_unknown25(Object *obj, u8 *entry); void obj_loop_unknown25(Object *obj, s32 speed); -void obj_init_wardensmoke(Object *obj, s32 entry); +void obj_init_wardensmoke(Object *obj, u8 *entry); void obj_loop_wardensmoke(Object *obj, s32 speed); -void obj_init_teleport(Object *obj, s32 entry); +void obj_init_teleport(Object *obj, u8 *entry); void obj_loop_teleport(Object *obj, s32 speed); void obj_init_exit(Object *obj, LevelObjectEntry80038E3C *entry); void obj_init_cameracontrol(Object *obj, s8 *entry); void obj_loop_cameracontrol(Object *obj, s32 speed); void obj_init_setuppoint(Object *obj, u8 *entry); void obj_loop_setuppoint(Object *obj, s32 speed); -void obj_init_dino_whale(Object *obj, s32 entry); +void obj_init_dino_whale(Object *obj, u8 *entry); void obj_loop_dino_whale(Object *obj, s32 speed); -void obj_init_parkwarden(Object *obj, s32 entry); +void obj_init_parkwarden(Object *obj, u8 *entry); void func_80039320(s16 arg0); void func_8003AC3C(u16 arg0, s32 arg1); void obj_loop_gbparkwarden(Object *obj, s32 speed); @@ -542,7 +542,7 @@ void obj_init_ttdoor(Object *obj, LevelObjectEntry8003C1E0 *entry); void obj_init_bridge_whaleramp(Object *obj, u8 *entry); void obj_init_rampswitch(Object *obj, u8 *entry); void obj_loop_rampswitch(Object *obj, s32 speed); -void obj_init_seamonster(Object *obj, s32 entry); +void obj_init_seamonster(Object *obj, u8 *entry); void obj_loop_seamonster(Object *obj, s32 speed); void obj_init_fogchanger(Object *obj, u8 *entry); void obj_init_skycontrol(Object *obj, u8 *entry); @@ -550,39 +550,39 @@ void obj_loop_skycontrol(Object *obj, s32 speed); void obj_init_ainode(Object *obj, u8 *entry); void obj_loop_ainode(Object *obj, s32 speed); void obj_init_treasuresucker(Object *obj, s8 *entry); -void obj_init_flycoin(Object *obj, s32 entry); -void obj_init_coincreator(Object *obj, s32 entry); -void obj_init_coin(Object *obj, s32 entry); -void obj_init_silvercoin_adv2(Object *obj, s32 entry); -void obj_init_silvercoin(Object *obj, s32 entry); +void obj_init_flycoin(Object *obj, u8 *entry); +void obj_init_coincreator(Object *obj, u8 *entry); +void obj_init_coin(Object *obj, u8 *entry); +void obj_init_silvercoin_adv2(Object *obj, u8 *entry); +void obj_init_silvercoin(Object *obj, u8 *entry); void obj_init_worldkey(Object *obj, unk8003DE74 *entry); void obj_loop_worldkey(Object *worldKeyObj, s32 speed); -void obj_init_wballoonpop(Object *obj, s32 entry); +void obj_init_wballoonpop(Object *obj, u8 *entry); void obj_loop_wballoonpop(Object *obj, s32 speed); -void obj_init_weapon(Object *obj, s32 entry); +void obj_init_weapon(Object *obj, u8 *entry); void obj_loop_weapon(Object *obj); void func_8003F0D0(void); void func_8003F0DC(void); void obj_init_audioline(Object *obj, LevelObjectEntry8003FEF4 *entry); void obj_init_audioreverb(Object *obj, LevelObjectEntry8004001C *entry); void obj_init_texscroll(Object *obj, LevelObjectEntry800400A4 *entry, s32 arg2); -void obj_init_rgbalight(Object *obj, s32 entry, s32 arg2); -void obj_init_buoy_pirateship(Object *obj, s32 entry, s32 arg2); +void obj_init_rgbalight(Object *obj, u8 *entry, s32 arg2); +void obj_init_buoy_pirateship(Object *obj, u8 *entry, s32 arg2); void obj_loop_buoy_pirateship(Object *obj, s32 speed); void obj_init_log(Object *obj, LevelObjectEntry8004049C *entry, s32 arg2); -void obj_init_wavegenerator(Object *obj, s32 entry, s32 arg2); +void obj_init_wavegenerator(Object *obj, u8 *entry, s32 arg2); void obj_init_midichset(Object *obj, unk80042014_arg1 *entry); void obj_init_bubbler(Object *obj, unk8004203C_arg1 *entry); void obj_loop_bubbler(Object *obj, s32 speed); void obj_init_boost(Object *obj, s8 *entry); -void obj_init_unknown94(Object *obj, s32 entry, s32 arg2); +void obj_init_unknown94(Object *obj, u8 *entry, s32 arg2); void obj_loop_unknown94(Object *obj, s32 speed); -void obj_init_rangetrigger(Object *obj, s32 entry); +void obj_init_rangetrigger(Object *obj, u8 *entry); void obj_loop_rangetrigger(Object *obj, s32 speed); void obj_init_frog(Object *obj, LevelObjectEntry80042210 *entry); void obj_loop_pigrocketeer(Object *obj, s32 speed); void obj_init_levelname(Object *obj, s8 *entry); -void obj_init_wizghosts(Object *obj, s32 entry); +void obj_loop_wizghosts(Object *obj, s32 speed); //Non Matching void obj_loop_lavaspurt(Object *obj, s32 speed); diff --git a/src/unknown_00BC20.c b/src/unknown_00BC20.c index fb17c6dc..7168c4ae 100644 --- a/src/unknown_00BC20.c +++ b/src/unknown_00BC20.c @@ -2011,7 +2011,7 @@ void run_object_loop_func(Object *obj, s32 arg1) { obj_loop_animobject(obj, arg1); break; case 119: - obj_init_wizghosts(obj, arg1); + obj_loop_wizghosts(obj, arg1); break; case 51: obj_loop_animcamera(obj, arg1);