Attempt to decompile doorTick

This commit is contained in:
Ryan Dwyer
2020-06-06 17:45:28 +10:00
parent d16796d5d6
commit d5aaeaf5d8
15 changed files with 253 additions and 135 deletions
+5 -5
View File
@@ -516,10 +516,10 @@
#define DOORFLAG_0800 0x0800 // Non-CI lasers, and floor grates
#define DOORFLAG_4000 0x4000 // Two Investigation vertical doors after lasers
#define DOORMODE_IDLE 0
#define DOORMODE_OPENING 1
#define DOORMODE_CLOSING 2
#define DOORMODE_3 3
#define DOORMODE_IDLE 0
#define DOORMODE_OPENING 1
#define DOORMODE_CLOSING 2
#define DOORMODE_WAITING 3 // Waiting for sibling door to close. Eg. Dam gates in GE
// For AI commands - bitwise ORable
#define DOORSTATE_CLOSED 1
@@ -1902,7 +1902,7 @@
#define OBJFLAG_08000000 0x08000000 // Not used in scripts
#define OBJFLAG_DEACTIVATED 0x10000000
#define OBJFLAG_20000000 0x20000000 // Editor: "Door Opens Backwards/Special Function/Conceal Weapon"
#define OBJFLAG_40000000 0x40000000 // Editor: "Door open by default/Empty weapon"
#define OBJFLAG_DOORKEEPOPEN 0x40000000 // Editor: "Door open by default/Empty weapon"
#define OBJFLAG_INTERCEPTOR_DISABLED 0x80000000 // Or lift disabled
// obj->flags2
+1 -1
View File
@@ -68,7 +68,7 @@ extern u32 var80069bbc;
extern u32 var80069bc8;
extern u32 var80069bcc;
extern u32 var80069bd0;
extern u32 var80069bd4;
extern u32 g_DebugDoor;
extern u32 var80069bd8;
extern u32 var80069c48;
extern u32 var80069cc4;
+4 -4
View File
@@ -15,7 +15,7 @@ void countdownTimerSetValue(f32 frames);
void countdownTimerSetVisible(u32 flag, bool show);
void countdownTimerTick(void);
bool func0f066310(struct prop *doorprop, bool arg1);
u32 func0f0665ac(void);
bool func0f0665ac(struct doorobj *door);
u32 func0f066640(void);
u32 func0f0666cc(void);
u32 func0f0667ac(void);
@@ -147,7 +147,7 @@ u32 func0f0732d4(void);
u32 func0f073478(void);
u32 func0f073ae8(void);
u32 func0f073c6c(void);
u32 func0f076f30(void);
void doorTick(struct prop *doorprop);
u32 func0f07731c(void);
u32 func0f077448(void);
u32 func0f07766c(void);
@@ -286,7 +286,7 @@ bool func0f08bd00(struct prop *playerprop, struct prop *doorprop);
u32 func0f08bdd4(void);
u32 func0f08be80(void);
u32 func0f08bf78(void);
u32 func0f08c040(void);
s32 func0f08c040(struct doorobj *door);
void func0f08c190(void);
u32 func0f08c424(void);
u32 func0f08c484(void);
@@ -317,7 +317,7 @@ u32 func0f08e8ac(void);
bool func0f08e9e4(struct coord *arg);
void func0f08ea50(struct doorobj *door);
bool func0f08ed74(struct doorobj *door);
u32 func0f08f11c(void);
void doorDoCalc(struct doorobj *door);
u32 func0f08f538(void);
u32 func0f08f604(void);
u32 func0f08f968(void);
+9 -8
View File
@@ -125,12 +125,19 @@ struct anim {
/*0x88*/ u32 animscale;
};
struct stagethinglist {
u16 stage;
u16 numthings;
u16 *things;
};
struct model08_00 {
u16 unk00;
};
struct model08 {
struct model08_00 *unk00;
struct stagethinglist *unk04;
};
struct model10 {
@@ -887,7 +894,7 @@ struct doorobj { // objtype 0x01
/*0x70*/ u16 doorflags;
/*0x72*/ u16 doortype;
/*0x74*/ u32 keyflags;
/*0x78*/ u32 autoclosetime;
/*0x78*/ s32 autoclosetime;
/*0x7c*/ f32 frac;
/*0x80*/ f32 fracspeed;
/*0x84*/ s8 mode;
@@ -906,7 +913,7 @@ struct doorobj { // objtype 0x01
/*0xb4*/ u32 unkb4;
/*0xb8*/ u32 unkb8;
/*0xbc*/ struct doorobj *sibling;
/*0xc0*/ u32 lastopen60;
/*0xc0*/ s32 lastopen60;
/*0xc4*/ s16 portal;
/*0xc6*/ s8 soundtype;
/*0xc7*/ s8 fadetime60;
@@ -2970,12 +2977,6 @@ struct menu_dialog {
struct menu_dialog *nextsibling;
};
struct stagethinglist {
u16 stage;
u16 numthings;
u16 *things;
};
struct twowords {
u32 unk00;
u32 unk04;