More progress with object_functions

This commit is contained in:
David Benepe
2022-02-13 10:52:06 -05:00
parent 6e40c21b89
commit 57515fdbd0
5 changed files with 210 additions and 210 deletions
+39 -18
View File
@@ -9,12 +9,16 @@ typedef struct LevelObjectEntryCommon {
} LevelObjectEntryCommon;
typedef struct LevelObjectEntry_1 {
/* 0x00 */ LevelObjectEntryCommon common;
/* 0x00 */ LevelObjectEntryCommon common;
} LevelObjectEntry_1;
typedef struct LevelObjectEntry_2 {
/* 0x00 */ LevelObjectEntryCommon common;
} LevelObjectEntry_2;
typedef struct LevelObjectEntry_Scenery {
/* 0x00 */ LevelObjectEntryCommon common;
/* 0x08 */ u8 unk8;
/* 0x09 */ u8 unk9;
/* 0x0A */ u8 unkA;
/* 0x0B */ u8 unkB;
} LevelObjectEntry_Scenery;
typedef struct LevelObjectEntry_3 {
/* 0x00 */ LevelObjectEntryCommon common;
@@ -72,9 +76,18 @@ typedef struct LevelObjectEntry_16 {
/* 0x00 */ LevelObjectEntryCommon common;
} LevelObjectEntry_16;
typedef struct LevelObjectEntry_17 {
/* 0x00 */ LevelObjectEntryCommon common;
} LevelObjectEntry_17;
#define BALLOON_TYPE_BOOST 0
#define BALLOON_TYPE_MISSILE 1
#define BALLOON_TYPE_TRAP 2
#define BALLOON_TYPE_SHIELD 3
#define BALLOON_TYPE_MAGNET 4
typedef struct LevelObjectEntry_WeaponBalloon {
/* 0x00 */ LevelObjectEntryCommon common;
/* 0x08 */ u8 unk8; // Unused?
/* 0x09 */ u8 balloonType;
/* 0x0A */ u8 scale; // This is divided by 64 to get actual scale.
} LevelObjectEntry_WeaponBalloon;
typedef struct LevelObjectEntry_18 {
/* 0x00 */ LevelObjectEntryCommon common;
@@ -104,9 +117,11 @@ typedef struct LevelObjectEntry_27 {
/* 0x00 */ LevelObjectEntryCommon common;
} LevelObjectEntry_27;
typedef struct LevelObjectEntry_28 {
/* 0x00 */ LevelObjectEntryCommon common;
} LevelObjectEntry_28;
typedef struct LevelObjectEntry_Torch_Mist {
/* 0x00 */ LevelObjectEntryCommon common;
/* 0x08 */ u8 unk8;
/* 0x09 */ u8 unk9;
} LevelObjectEntry_Torch_Mist;
typedef struct LevelObjectEntry_29 {
/* 0x00 */ LevelObjectEntryCommon common;
@@ -260,13 +275,19 @@ typedef struct LevelObjectEntry_77 {
/* 0x00 */ LevelObjectEntryCommon common;
} LevelObjectEntry_77;
typedef struct LevelObjectEntry_78 {
/* 0x00 */ LevelObjectEntryCommon common;
} LevelObjectEntry_78;
typedef struct LevelObjectEntry_Laserbolt {
/* 0x00 */ LevelObjectEntryCommon common;
} LevelObjectEntry_Laserbolt;
typedef struct LevelObjectEntry_79 {
/* 0x00 */ LevelObjectEntryCommon common;
} LevelObjectEntry_79;
typedef struct LevelObjectEntry_Lasergun {
/* 0x00 */ LevelObjectEntryCommon common;
/* 0x08 */ u8 unk8;
/* 0x09 */ u8 unk9;
/* 0x0A */ s8 unkA;
/* 0x0B */ s8 unkB;
/* 0x0C */ u8 unkC;
/* 0x0D */ u8 unkD;
} LevelObjectEntry_Lasergun;
typedef struct LevelObjectEntry_82 {
/* 0x00 */ LevelObjectEntryCommon common;
@@ -344,9 +365,9 @@ typedef struct LevelObjectEntry_105 {
/* 0x00 */ LevelObjectEntryCommon common;
} LevelObjectEntry_105;
typedef struct LevelObjectEntry_108 {
typedef struct LevelObjectEntry_Fireball_Octoweapon {
/* 0x00 */ LevelObjectEntryCommon common;
} LevelObjectEntry_108;
} LevelObjectEntry_Fireball_Octoweapon;
typedef struct LevelObjectEntry_109 {
/* 0x00 */ LevelObjectEntryCommon common;
+1 -1
View File
@@ -9,7 +9,7 @@ then
fi
# Rename all instances within text files.
grep -rl "$1" asm/**/*.s src/**/*.{c,h} lib/**/*.{c,s} include/*.h undefined_syms.txt | xargs sed -i "s/\b$1\b/$2/g"
grep -rl "$1" asm/**/*.s src/**/*.{c,h} lib/**/*.{c,s} include/*.h undefined_syms.txt dkr.ld | xargs sed -i "s/\b$1\b/$2/g"
# Rename filenames & directories.
python3 ./tools/python/rename_file.py "$1" "$2"
+60 -71
View File
@@ -131,57 +131,49 @@ s16 D_8011D4E2;
/******************************/
#ifdef NON_EQUIVALENT
typedef struct LevelObjectEntry80033CC0 {
LevelObjectEntryCommon common;
u8 unk8;
u8 unk9;
u8 unkA;
u8 unkB;
} LevelObjectEntry80033CC0;
typedef struct Object_50_80033CC0 {
f32 unk0;
} Object_50_80033CC0;
void obj_init_scenery(Object *arg0, LevelObjectEntry80033CC0 *arg1) {
void obj_init_scenery(Object *obj, LevelObjectEntry_Scenery *entry) {
f32 phi_f0;
arg0->unk6 |= 2;
phi_f0 = arg1->unk9 & 0xFF;
obj->unk6 |= 2;
phi_f0 = entry->unk9 & 0xFF;
if (phi_f0 < 10) {
phi_f0 = 10;
}
phi_f0 /= 64;
arg0->scale = arg0->header->scale * phi_f0;
((Object_50_80033CC0 *)arg0->unk50)->unk0 = arg0->header->unk4 * phi_f0;
arg0->unk3A = arg1->unk8;
arg0->y_rotation = arg1->unkA << 6 << 4;
if (arg1->unkB) {
obj->scale = obj->header->scale * phi_f0;
((Object_50_80033CC0 *)obj->unk50)->unk0 = obj->header->unk4 * phi_f0;
obj->unk3A = entry->unk8;
obj->y_rotation = entry->unkA << 6 << 4;
if (entry->unkB) {
// Regalloc issue here
arg0->unk4C->unk14 = 1;
arg0->unk4C->unk11 = 1;
arg0->unk4C->unk10 = 0x14;
arg0->unk4C->unk12 = 0;
arg0->unk4C->unk16 = -5;
arg0->unk4C->unk17 = arg1->unkB;
obj->unk4C->unk14 = 1;
obj->unk4C->unk11 = 1;
obj->unk4C->unk10 = 0x14;
obj->unk4C->unk12 = 0;
obj->unk4C->unk16 = -5;
obj->unk4C->unk17 = entry->unkB;
}
if (arg0->unk3A >= arg0->header->numberOfModelIds) {
arg0->unk3A = 0;
if (obj->unk3A >= obj->header->numberOfModelIds) {
obj->unk3A = 0;
}
arg0->unk78 = 0;
arg0->unk7C.word = 0;
obj->unk78 = 0;
obj->unk7C.word = 0;
}
#else
GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_init_scenery.s")
#endif
void obj_loop_scenery(Object *obj, s32 arg1) {
void obj_loop_scenery(Object *obj, s32 speed) {
Object78_80033DD0 *obj78;
s32 temp_v0;
if (obj->unk4C != NULL) {
obj78 = &obj->unk78;
if (obj->unk7C.half.upper > 0) {
obj78->unk4 -= arg1;
obj78->unk4 -= speed;
}
if ((obj->unk4C->unk14 & 0x40) && ((s32) obj78->unk4 <= 0)) {
func_80009558(316, obj->x_position, obj->y_position, obj->z_position, 4, NULL);
@@ -207,7 +199,7 @@ void obj_loop_scenery(Object *obj, s32 arg1) {
}
}
void obj_init_fireball_octoweapon(Object *arg0, s32 arg1) {
void obj_init_fireball_octoweapon(Object *arg0, LevelObjectEntry_Fireball_Octoweapon *arg1) {
arg0->unk4C->unk14 = 2;
arg0->unk4C->unk11 = 0;
}
@@ -359,7 +351,7 @@ void obj_loop_fireball_octoweapon(Object *obj, s32 arg1) {
GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_fireball_octoweapon.s")
#endif
void obj_init_lasergun(Object *arg0, unk80034530 *arg1) {
void obj_init_lasergun(Object *arg0, LevelObjectEntry_Lasergun *arg1) {
Object_64 *temp;
arg0->unk4C->unk14 = 0x22;
arg0->unk4C->unk11 = 0;
@@ -375,8 +367,7 @@ void obj_init_lasergun(Object *arg0, unk80034530 *arg1) {
GLOBAL_ASM("asm/non_matchings/unknown_032760/obj_loop_lasergun.s")
// Literally the same function as obj_init_fireball_octoweapon()
void obj_init_laserbolt(Object *arg0, s32 arg1) {
void obj_init_laserbolt(Object *arg0, LevelObjectEntry_Laserbolt *arg1) {
arg0->unk4C->unk14 = 2;
arg0->unk4C->unk11 = 0;
}
@@ -464,18 +455,18 @@ void obj_loop_laserbolt(Object *obj, s32 arg1) {
}
}
void obj_init_torch_mist(Object *arg0, u8 *arg1) {
f32 phi_f0 = (s32)(arg1[9] & 0xFF);
void obj_init_torch_mist(Object *obj, LevelObjectEntry_Torch_Mist *entry) {
f32 phi_f0 = (s32)(entry->unk9 & 0xFF);
if (phi_f0 < 10.0f) {
phi_f0 = 10.0f;
}
phi_f0 /= 64;
arg0->scale = arg0->header->scale * phi_f0;
arg0->unk78 = arg1[8];
obj->scale = obj->header->scale * phi_f0;
obj->unk78 = entry->unk8;
}
void obj_loop_torch_mist(unk80034B4C *arg0, s32 arg1) {
arg0->unk18 += arg0->unk78 * arg1;
void obj_loop_torch_mist(Object *obj, s32 speed) {
obj->unk18 += obj->unk78 * speed;
}
void obj_init_effectbox(s32 arg0, s32 arg1) {
@@ -1654,61 +1645,59 @@ void obj_loop_worldkey(Object *worldKeyObj, s32 speed) {
typedef struct Object_64_8003DFCC {
f32 unk0;
s16 unk4;
char unk6[0x2];
u8 unk8;
u8 unk9;
u8 unkA;
s8 unk6[0x2];
} Object_64_8003DFCC;
void obj_init_weaponballoon(Object *arg0, Object_64_8003DFCC *arg1) {
void obj_init_weaponballoon(Object *obj, LevelObjectEntry_WeaponBalloon *entry) {
s32 cheats;
Object_64_8003DFCC *obj;
f32 temp;
Object_64_8003DFCC *obj64;
f32 scalef;
arg0->unk4C->unk14 = 2;
arg0->unk4C->unk11 = 4;
arg0->unk4C->unk10 = 0x14;
obj->unk4C->unk14 = 2;
obj->unk4C->unk11 = 4;
obj->unk4C->unk10 = 0x14;
cheats = get_filtered_cheats();
if (cheats & CHEAT_ALL_BALLOONS_ARE_BLUE) {
arg1->unk9 = 0;
entry->balloonType = BALLOON_TYPE_BOOST;
} else if (cheats & CHEAT_ALL_BALLOONS_ARE_RED) {
arg1->unk9 = 1;
entry->balloonType = BALLOON_TYPE_MISSILE;
} else if (cheats & CHEAT_ALL_BALLOONS_ARE_GREEN) {
arg1->unk9 = 2;
entry->balloonType = BALLOON_TYPE_TRAP;
} else if (cheats & CHEAT_ALL_BALLOONS_ARE_YELLOW) {
arg1->unk9 = 3;
entry->balloonType = BALLOON_TYPE_SHIELD;
} else if (cheats & CHEAT_ALL_BALLOONS_ARE_RAINBOW) {
arg1->unk9 = 4;
entry->balloonType = BALLOON_TYPE_MAGNET;
}
if (arg1->unk8 >= 6) {
arg1->unk8 = 0;
// I guess unk8 is unused?
if (entry->unk8 >= 6) {
entry->unk8 = 0;
}
if (arg0->unk3A >= arg0->header->numberOfModelIds) {
arg0->unk3A = 0;
if (obj->unk3A >= obj->header->numberOfModelIds) {
obj->unk3A = 0;
}
arg0->unk3A = arg1->unk9;
arg0->unk78 = arg0->unk3A;
obj->unk3A = entry->balloonType;
obj->unk78 = obj->unk3A;
temp = arg1->unkA & 0xFF;
if (temp < 10) {
temp = 10;
scalef = entry->scale & 0xFF;
if (scalef < 10) {
scalef = 10;
}
temp /= 64;
scalef /= 64;
obj = (Object_64_8003DFCC*)arg0->unk64;
obj64 = (Object_64_8003DFCC*)obj->unk64;
arg0->scale = arg0->header->scale * temp;
obj->unk0 = arg0->scale;
obj->unk4 = 0;
arg0->unk7C.word = 0;
obj->scale = obj->header->scale * scalef;
obj64->unk0 = obj->scale;
obj64->unk4 = 0;
obj->unk7C.word = 0;
if (get_filtered_cheats() & CHEAT_DISABLE_WEAPONS) {
gParticlePtrList_addObject(arg0);
gParticlePtrList_addObject(obj);
}
}
@@ -1729,8 +1718,8 @@ void obj_init_weapon(Object *arg0, s32 arg1) {
arg0->unk7C.word = 0;
}
void obj_loop_weapon(Object *arg0) {
Object_64 *obj64 = arg0->unk64;
void obj_loop_weapon(Object *obj) {
Object_64 *obj64 = obj->unk64;
switch (obj64->unk18) {
case 0:
case 1:
+25 -35
View File
@@ -14,16 +14,6 @@ typedef struct Object78_80033DD0 {
s16 unk6;
} Object78_80033DD0;
typedef struct unk80034530 {
u8 pad0[0x8];
u8 unk8;
u8 unk9;
s8 unkA;
s8 unkB;
u8 unkC;
u8 unkD;
} unk80034530;
typedef struct unk80034B4C {
u8 pad0[0x18];
s16 unk18;
@@ -486,11 +476,11 @@ f32 func_800707F8(s16); // No idea where it's located
s32 get_random_number_from_range(s32, s32); // Non Matching src/unknown_070110.c
s32 func_8007066C(s32, s32); // Non Matching src/unknown_070110.c
void obj_init_fireball_octoweapon(Object *arg0, s32 arg1);
void obj_init_lasergun(Object *arg0, unk80034530 *arg1);
void obj_init_laserbolt(Object *arg0, s32 arg1);
void obj_init_torch_mist(Object *arg0, u8 *arg1);
void obj_loop_torch_mist(unk80034B4C *arg0, s32 arg1);
void obj_init_fireball_octoweapon(Object *obj, LevelObjectEntry_Fireball_Octoweapon *entry);
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(s32 arg0, s32 arg1);
void obj_init_trophycab(Object *arg0, u8 *arg1);
void obj_init_collectegg(Object *arg0, s32 arg1);
@@ -502,14 +492,14 @@ void obj_init_airzippers_waterzippers(Object *arg0, LevelObjectEntry8003588C *ar
void obj_init_unknown58(unk80035E20 *arg0, s32 arg1);
void obj_loop_unknown58(Object *obj, s32 arg1);
void obj_init_characterflag(Object *arg0, unk80035EF8 *arg1);
void obj_loop_characterflag(Object *obj, s32 arg1);
void obj_loop_characterflag(Object *obj, s32 speed);
void obj_init_stopwatchman(Object *arg0, s32 arg1);
void func_80036BCC(u16 arg0, s32 arg1);
void obj_init_lavaspurt(unk80037578 *arg0, u8 *arg1);
void obj_init_posarrow(unk80037624 *arg0, s32 arg1);
void obj_init_animator(Object *arg0, LevelObjectEntry800376E0 *arg1, s32 arg2);
void obj_loop_animobject(s32 arg0, s32 arg1);
void obj_loop_dooropener(unk80037D08_arg0 *arg0, s32 arg1);
void obj_loop_animobject(s32 arg0, s32 speed);
void obj_loop_dooropener(unk80037D08_arg0 *arg0, s32 speed);
void obj_init_overridepos(s32 arg0, s32 arg1);
void func_80037D60(s32 arg0, s32 arg1);
void obj_init_wizpigship(s32 arg0, s32 arg1);
@@ -545,20 +535,20 @@ void func_8003AC3C(u16 arg0, s32 arg1);
void obj_loop_gbparkwarden(s32 arg0, s32 arg1);
f32 func_8003ACAC(void);
void obj_init_checkpoint(Object *arg0, u8 *arg1, s32 arg2);
void obj_loop_checkpoint(s32 arg0, s32 arg1);
void obj_loop_checkpoint(s32 arg0, s32 speed);
void obj_init_modechange(Object *obj, LevelObjectEntry8003AD34 *arg1);
void obj_init_bonus(Object *obj, LevelObjectEntry8003AD34 *arg1);
void obj_init_ttdoor(Object *obj, LevelObjectEntry8003C1E0 *arg1);
void obj_init_bridge_whaleramp(Object *arg0, u8 *arg1);
void obj_init_rampswitch(Object *arg0, u8 *arg1);
void obj_loop_rampswitch(Object *arg0, s32 arg1);
void obj_loop_rampswitch(Object *arg0, s32 speed);
void obj_init_seamonster(s32 arg0, s32 arg1);
void obj_loop_seamonster(s32 arg0, s32 arg1);
void obj_loop_seamonster(s32 arg0, s32 speed);
void obj_init_fogchanger(unk8003CF18 *arg0, u8 *arg1);
void obj_init_skycontrol(Object *arg0, u8 *arg1);
void obj_loop_skycontrol(Object *arg0, s32 arg1);
void obj_loop_skycontrol(Object *arg0, s32 speed);
void obj_init_ainode(s32 arg0, u8 *arg1);
void obj_loop_ainode(s32 arg0, s32 arg1);
void obj_loop_ainode(s32 arg0, s32 speed);
void obj_init_treasuresucker(unk8003D038 *arg0, s8 *arg1);
void obj_init_flycoin(s32 arg0, s32 arg1);
void obj_init_coincreator(unk8003D3EC *arg0, s32 arg1);
@@ -568,9 +558,9 @@ void obj_init_silvercoin(Object *obj, s32 arg1);
void obj_init_worldkey(Object *obj, unk8003DE74 *arg1);
void obj_loop_worldkey(Object *worldKeyObj, s32 speed);
void obj_init_wballoonpop(s32 arg0, s32 arg1);
void obj_loop_wballoonpop(s32 arg0, s32 arg1);
void obj_loop_wballoonpop(s32 arg0, s32 speed);
void obj_init_weapon(Object *arg0, s32 arg1);
void obj_loop_weapon(Object *arg0);
void obj_loop_weapon(Object *obj);
void func_8003F0D0(void);
void func_8003F0DC(void);
void obj_init_audioline(Object *arg0, LevelObjectEntry8003FEF4 *arg1);
@@ -578,27 +568,27 @@ void obj_init_audioreverb(Object *arg0, LevelObjectEntry8004001C *entry);
void obj_init_texscroll(Object *obj, LevelObjectEntry800400A4 *arg1, s32 arg2);
void obj_init_rgbalight(Object *arg0, s32 arg1, s32 arg2);
void obj_init_buoy_pirateship(Object *arg0, s32 arg1, s32 arg2);
void obj_loop_buoy_pirateship(Object *arg0, s32 arg1);
void obj_loop_buoy_pirateship(Object *arg0, s32 speed);
void obj_init_log(Object *arg0, LevelObjectEntry8004049C *arg1, s32 arg2);
void obj_init_wavegenerator(s32 arg0, s32 arg1, s32 arg2);
void obj_init_midichset(unk80042014_arg0 *arg0, unk80042014_arg1 *arg1);
void obj_init_bubbler(Object *arg0, unk8004203C_arg1 *arg1);
void obj_loop_bubbler(Object *arg0, s32 arg1);
void obj_loop_bubbler(Object *arg0, s32 speed);
void obj_init_boost(unk8004210C *arg0, s8 *arg1);
void obj_init_unknown94(s32 arg0, s32 arg1, s32 arg2);
void obj_loop_unknown94(s32 arg0, s32 arg1);
void obj_loop_unknown94(s32 arg0, s32 speed);
void obj_init_rangetrigger(s32 arg0, s32 arg1);
void obj_loop_rangetrigger(Object *obj, s32 arg1);
void obj_loop_rangetrigger(Object *obj, s32 speed);
void obj_init_frog(Object *obj, LevelObjectEntry80042210 *arg1);
void obj_loop_pigrocketeer(s32 arg0, s32 arg1);
void obj_loop_pigrocketeer(s32 arg0, s32 speed);
void obj_init_levelname(unk80042A1C *arg0, s8 *arg1);
void obj_init_wizghosts(unk80042CD0 *arg0, s32 arg1);
//Non Matching
void obj_loop_lavaspurt(Object *obj, s32 arg1);
void obj_loop_animator(Object *obj, s32 arg1);
void obj_loop_vehicleanim(Object *obj, s32 arg1);
void obj_loop_snowball(Object *obj, s32 arg1);
void obj_loop_goldenballoon(s32 arg0);
void obj_loop_lavaspurt(Object *obj, s32 speed);
void obj_loop_animator(Object *obj, s32 speed);
void obj_loop_vehicleanim(Object *obj, s32 speed);
void obj_loop_snowball(Object *obj, s32 speed);
void obj_loop_goldenballoon(s32 arg0, s32 speed);
#endif
+85 -85
View File
@@ -1508,264 +1508,264 @@ void func_800235D0(s32 arg0) {
GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_800235DC.s")
void run_object_init_func(Object *arg0, void *arg1) {
arg0->behaviorId = arg0->header->behaviorId;
switch (arg0->behaviorId - 1) { // Why the minus 1?
void run_object_init_func(Object *obj, void *entry) {
obj->behaviorId = obj->header->behaviorId;
switch (obj->behaviorId - 1) { // Why the minus 1?
case 0:
obj_init_racer(arg0, arg1);
obj_init_racer(obj, entry);
break;
case 1:
obj_init_scenery(arg0, arg1);
obj_init_scenery(obj, (LevelObjectEntry_Scenery*)entry);
break;
case 2:
obj_init_fish(arg0, arg1);
obj_init_fish(obj, entry);
break;
case 3:
obj_init_animator(arg0, arg1);
obj_init_animator(obj, entry);
break;
case 5:
obj_init_smoke(arg0, arg1);
obj_init_smoke(obj, entry);
break;
case 24:
obj_init_unknown25(arg0, arg1);
obj_init_unknown25(obj, entry);
break;
case 21:
obj_init_bombexplosion(arg0, arg1);
obj_init_bombexplosion(obj, entry);
break;
case 6:
obj_init_exit(arg0, arg1);
obj_init_exit(obj, entry);
break;
case 7:
obj_init_audio(arg0, arg1);
obj_init_audio(obj, entry);
break;
case 8:
case 18:
obj_init_audioline(arg0, arg1);
obj_init_audioline(obj, entry);
break;
case 26:
obj_init_audioreverb(arg0, arg1);
obj_init_audioreverb(obj, entry);
break;
case 9:
obj_init_cameracontrol(arg0, arg1);
obj_init_cameracontrol(obj, entry);
break;
case 10:
obj_init_setuppoint(arg0, arg1);
obj_init_setuppoint(obj, entry);
break;
case 11:
obj_init_dino_whale(arg0, arg1);
obj_init_dino_whale(obj, entry);
break;
case 12:
obj_init_checkpoint(arg0, arg1);
obj_init_checkpoint(obj, entry);
break;
case 29:
obj_init_modechange(arg0, arg1);
obj_init_modechange(obj, entry);
break;
case 40:
obj_init_bonus(arg0, arg1);
obj_init_bonus(obj, entry);
break;
case 13:
obj_init_door(arg0, arg1);
obj_init_door(obj, entry);
break;
case 110:
obj_init_ttdoor(arg0, arg1);
obj_init_ttdoor(obj, entry);
break;
case 14:
obj_init_fogchanger(arg0, arg1);
obj_init_fogchanger(obj, entry);
break;
case 15:
obj_init_ainode(arg0, arg1);
obj_init_ainode(obj, entry);
break;
case 16:
obj_init_weaponballoon(arg0, arg1);
obj_init_weaponballoon(obj, entry);
break;
case 22:
obj_init_wballoonpop(arg0, arg1);
obj_init_wballoonpop(obj, entry);
break;
case 4:
case 17:
obj_init_weapon(arg0, arg1);
obj_init_weapon(obj, entry);
break;
case 25:
obj_init_skycontrol(arg0, arg1);
obj_init_skycontrol(obj, entry);
break;
case 27:
obj_init_torch_mist(arg0, arg1);
obj_init_torch_mist(obj, entry);
break;
case 28:
obj_init_texscroll(arg0, arg1);
obj_init_texscroll(obj, entry);
break;
case 30:
obj_init_stopwatchman(arg0, arg1);
obj_init_stopwatchman(obj, entry);
break;
case 31:
obj_init_coin(arg0, arg1);
obj_init_coin(obj, entry);
break;
case 32:
obj_init_rgbalight(arg0, arg1);
obj_init_rgbalight(obj, entry);
break;
case 35:
obj_init_buoy_pirateship(arg0, arg1);
obj_init_buoy_pirateship(obj, entry);
break;
case 66:
obj_init_log(arg0, arg1);
obj_init_log(obj, entry);
break;
case 36:
obj_init_weather(arg0, arg1);
obj_init_weather(obj, entry);
break;
case 37:
obj_init_bridge_whaleramp(arg0, arg1);
obj_init_bridge_whaleramp(obj, entry);
break;
case 38:
obj_init_rampswitch(arg0, arg1);
obj_init_rampswitch(obj, entry);
break;
case 39:
obj_init_seamonster(arg0, arg1);
obj_init_seamonster(obj, entry);
break;
case 42:
obj_init_lensflare(arg0, arg1);
obj_init_lensflare(obj, entry);
break;
case 43:
obj_init_lensflareswitch(arg0, arg1);
obj_init_lensflareswitch(obj, entry);
break;
case 44:
obj_init_collectegg(arg0, arg1);
obj_init_collectegg(obj, entry);
break;
case 45:
obj_init_eggcreator(arg0, arg1);
obj_init_eggcreator(obj, entry);
break;
case 46:
obj_init_characterflag(arg0, arg1);
obj_init_characterflag(obj, entry);
break;
case 48:
obj_init_animation(arg0, arg1);
obj_init_animation(obj, entry);
break;
case 51:
obj_init_infopoint(arg0, arg1);
obj_init_infopoint(obj, entry);
break;
case 54:
obj_init_trigger(arg0, arg1);
obj_init_trigger(obj, entry);
break;
case 56:
case 92:
obj_init_airzippers_waterzippers(arg0, arg1);
obj_init_airzippers_waterzippers(obj, entry);
break;
case 57:
obj_init_unknown58(arg0, arg1);
obj_init_unknown58(obj, entry);
break;
case 58:
obj_init_wavegenerator(arg0, arg1);
obj_init_wavegenerator(obj, entry);
break;
case 60:
obj_init_butterfly(arg0, arg1);
obj_init_butterfly(obj, entry);
break;
case 61:
obj_init_parkwarden(arg0, arg1);
obj_init_parkwarden(obj, entry);
break;
case 63:
obj_init_worldkey(arg0, arg1);
obj_init_worldkey(obj, entry);
break;
case 64:
obj_init_coincreator(arg0, arg1);
obj_init_coincreator(obj, entry);
break;
case 65:
obj_init_treasuresucker(arg0, arg1);
obj_init_treasuresucker(obj, entry);
break;
case 67:
obj_init_lavaspurt(arg0, arg1);
obj_init_lavaspurt(obj, entry);
break;
case 68:
obj_init_posarrow(arg0, arg1);
obj_init_posarrow(obj, entry);
break;
case 69:
case 102:
obj_init_hittester(arg0, arg1);
obj_init_hittester(obj, entry);
break;
case 71:
case 94:
case 103:
obj_init_dynamic_lighting_object(arg0, arg1);
obj_init_dynamic_lighting_object(obj, entry);
break;
case 95:
case 100:
obj_init_unknown96(arg0, arg1);
obj_init_unknown96(obj, entry);
break;
case 96:
case 101:
obj_init_snowball(arg0, arg1);
obj_init_snowball(obj, entry);
break;
case 70:
obj_init_midifade(arg0, arg1);
obj_init_midifade(obj, entry);
break;
case 111:
obj_init_midifadepoint(arg0, arg1);
obj_init_midifadepoint(obj, entry);
break;
case 117:
obj_init_midichset(arg0, arg1);
obj_init_midichset(obj, entry);
break;
case 72:
obj_init_effectbox(arg0, arg1);
obj_init_effectbox(obj, entry);
break;
case 73:
obj_init_trophycab(arg0, arg1);
obj_init_trophycab(obj, entry);
break;
case 74:
obj_init_bubbler(arg0, arg1);
obj_init_bubbler(obj, entry);
break;
case 75:
obj_init_flycoin(arg0, arg1);
obj_init_flycoin(obj, entry);
break;
case 76:
obj_init_goldenballoon(arg0, arg1);
obj_init_goldenballoon(obj, entry);
break;
case 77:
obj_init_laserbolt(arg0, arg1);
obj_init_laserbolt(obj, entry);
break;
case 78:
obj_init_lasergun(arg0, arg1);
obj_init_lasergun(obj, entry);
break;
case 81:
obj_init_groundzipper(arg0, arg1);
obj_init_groundzipper(obj, entry);
break;
case 82:
obj_init_overridepos(arg0, arg1);
obj_init_overridepos(obj, entry);
break;
case 83:
obj_init_wizpigship(arg0, arg1);
obj_init_wizpigship(obj, entry);
break;
case 88:
obj_init_boost(arg0, arg1);
obj_init_boost(obj, entry);
break;
case 87:
obj_init_silvercoin(arg0, arg1);
obj_init_silvercoin(obj, entry);
break;
case 89:
obj_init_wardensmoke(arg0, arg1);
obj_init_wardensmoke(obj, entry);
break;
case 93:
obj_init_unknown94(arg0, arg1);
obj_init_unknown94(obj, entry);
break;
case 97:
obj_init_teleport(arg0, arg1);
obj_init_teleport(obj, entry);
break;
case 98:
case 99:
obj_init_lighthouse_rocketsignpost(arg0, arg1);
obj_init_lighthouse_rocketsignpost(obj, entry);
break;
case 104:
obj_init_rangetrigger(arg0, arg1);
obj_init_rangetrigger(obj, entry);
break;
case 107:
case 115:
obj_init_fireball_octoweapon(arg0, arg1);
obj_init_fireball_octoweapon(obj, entry);
break;
case 108:
obj_init_frog(arg0, arg1);
obj_init_frog(obj, entry);
break;
case 109:
obj_init_silvercoin_adv2(arg0, arg1);
obj_init_silvercoin_adv2(obj, entry);
break;
case 116:
obj_init_levelname(arg0, arg1);
obj_init_levelname(obj, entry);
break;
}
}