Attempt to decompile func0f08ed74
This commit is contained in:
parent
6847571ecc
commit
b852ba5cb8
|
|
@ -46200,7 +46200,7 @@ void func0f08e0c4(struct doorobj *door)
|
|||
door->fadetime60 = door->doortype == DOORTYPE_LASER ? 60 : 0;
|
||||
|
||||
if (door->doortype == DOORTYPE_LASER) {
|
||||
door->laserfade = -1;
|
||||
door->laserfade = 255;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -47149,6 +47149,88 @@ glabel func0f08ed74
|
|||
/* f08f118: 27bd0040 */ addiu $sp,$sp,0x40
|
||||
);
|
||||
|
||||
//bool func0f08ed74(struct doorobj *door)
|
||||
//{
|
||||
// bool result = false;
|
||||
//
|
||||
// if (door->doortype == DOORTYPE_LASER && door->fadetime60 != 0) {
|
||||
// door->fadetime60 -= g_Vars.lvupdate240_60;
|
||||
//
|
||||
// if (door->fadetime60 < 0) {
|
||||
// door->fadetime60 = 0;
|
||||
// }
|
||||
//
|
||||
// if (door->mode == 1) {
|
||||
// u32 laserfade = (door->fadetime60 * 255.0f) / 60.0f;
|
||||
// door->laserfade = laserfade;
|
||||
//
|
||||
// return result;
|
||||
// } else {
|
||||
// u32 laserfade = ((60.0f - door->fadetime60) * 255.0f) / 60.0f;
|
||||
// door->laserfade = laserfade;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// if (door->mode == 1 || door->mode == 2) {
|
||||
// f32 maxfrac = door->mode == 1 ? door->maxfrac : 0;
|
||||
//
|
||||
// if (door->base.flags3 & OBJECTFLAG2_00000004) {
|
||||
// s32 value = (random() % 64) + 30;
|
||||
//
|
||||
// if ((g_Vars.lvframenum % value) == 0) {
|
||||
// bool dothething = false;
|
||||
// struct doorobj *loopdoor;
|
||||
//
|
||||
// door->fracspeed = 0;
|
||||
// func0f08ea50(door);
|
||||
//
|
||||
// if (random() % 2) {
|
||||
// dothething = true;
|
||||
// func0f0926bc(door->base.prop, 12, 0xffff);
|
||||
// door->mode = 0;
|
||||
// door->lastopen60 = g_Vars.lvframe60;
|
||||
// }
|
||||
//
|
||||
// loopdoor = door;
|
||||
//
|
||||
// while (loopdoor) {
|
||||
// if (random() % 2 && loopdoor->mode != 0) {
|
||||
// loopdoor->fracspeed = 0;
|
||||
// func0f08ea50(loopdoor);
|
||||
//
|
||||
// if (dothething) {
|
||||
// func0f0926bc(loopdoor->base.prop, 12, 0xffff);
|
||||
// loopdoor->mode = 0;
|
||||
// loopdoor->lastopen60 = g_Vars.lvframe60;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// loopdoor = loopdoor->sibling;
|
||||
//
|
||||
// if (loopdoor == door) {
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// func0f08df10(door->soundtype, door->base.prop);
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// func0f06d90c(&door->frac, maxfrac, &door->fracspeed,
|
||||
// door->accel, door->decel, door->maxspeed);
|
||||
//
|
||||
// if (door->frac >= door->maxfrac) {
|
||||
// door->frac = door->maxfrac;
|
||||
// } else if (door->frac <= 0) {
|
||||
// door->frac = 0;
|
||||
// }
|
||||
//
|
||||
// result = true;
|
||||
// }
|
||||
//
|
||||
// return result;
|
||||
//}
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f08f11c
|
||||
/* f08f11c: 27bdffc8 */ addiu $sp,$sp,-56
|
||||
|
|
|
|||
|
|
@ -672,7 +672,7 @@
|
|||
// obj->flags3
|
||||
#define OBJECTFLAG2_PUSHABLE 0x00000001
|
||||
#define OBJECTFLAG2_GRABBABLE 0x00000002
|
||||
#define OBJECTFLAG2_00000004 0x00000004 // Not used in scripts
|
||||
#define OBJECTFLAG2_00000004 0x00000004 // Related to doors
|
||||
#define OBJECTFLAG2_00000008 0x00000008 // Not used in scripts
|
||||
#define OBJECTFLAG2_00000010 0x00000010 // Used heaps
|
||||
#define OBJECTFLAG2_00000020 0x00000020 // Not used in scripts
|
||||
|
|
|
|||
|
|
@ -105,7 +105,7 @@ u32 func0f06c28c(void);
|
|||
u32 func0f06c8ac(void);
|
||||
u32 func0f06cd00(void);
|
||||
u32 func0f06d37c(void);
|
||||
u32 func0f06d90c(void);
|
||||
void func0f06d90c(f32 *frac, f32 maxfrac, f32 *fracspeed, f32 accel, f32 decel, f32 maxspeed);
|
||||
u32 func0f06db00(void);
|
||||
u32 func0f06dbd8(void);
|
||||
u32 func0f06e87c(void);
|
||||
|
|
@ -315,8 +315,8 @@ u32 func0f08e6bc(void);
|
|||
u32 func0f08e794(void);
|
||||
u32 func0f08e8ac(void);
|
||||
u32 func0f08e9e4(void);
|
||||
u32 func0f08ea50(void);
|
||||
u32 func0f08ed74(void);
|
||||
void func0f08ea50(struct doorobj *door);
|
||||
bool func0f08ed74(struct doorobj *door);
|
||||
u32 func0f08f11c(void);
|
||||
u32 func0f08f538(void);
|
||||
u32 func0f08f604(void);
|
||||
|
|
@ -351,7 +351,7 @@ u32 func0f0923d4(void);
|
|||
u32 func0f092420(void);
|
||||
u32 func0f092484(void);
|
||||
u32 func0f092610(void);
|
||||
u32 func0f0926bc(struct prop *prop, u32 arg1, u32 arg2);
|
||||
void func0f0926bc(struct prop *prop, u32 arg1, s32 arg2);
|
||||
s32 func0f0927d4(f32 arg0, f32 arg1, f32 arg2, f32 arg3, s16 arg4);
|
||||
s32 func0f092914(s32 arg0);
|
||||
u32 func0f09294c(void);
|
||||
|
|
|
|||
|
|
@ -700,9 +700,9 @@ struct doorobj { // objtype 0x01
|
|||
struct defaultobj base;
|
||||
/*0x5c*/ f32 maxfrac;
|
||||
/*0x60*/ f32 perimfrac;
|
||||
/*0x64*/ u32 accel;
|
||||
/*0x68*/ u32 decel;
|
||||
/*0x6c*/ u32 maxspeed;
|
||||
/*0x64*/ f32 accel;
|
||||
/*0x68*/ f32 decel;
|
||||
/*0x6c*/ f32 maxspeed;
|
||||
/*0x70*/ u16 doorflags;
|
||||
/*0x72*/ u16 doortype;
|
||||
/*0x74*/ u32 keyflags;
|
||||
|
|
|
|||
Loading…
Reference in New Issue