Decompile hudmsgsTick

This commit is contained in:
Ryan Dwyer 2021-06-08 23:04:50 +10:00
parent 177dba1725
commit 9c12bb0e99
8 changed files with 284 additions and 1013 deletions

View File

@ -365,7 +365,7 @@ void func0f092a98(s32 channelnum)
#endif
if (channel->flags & AUDIOCHANNELFLAG_0200) {
func0f0ddd44(channelnum);
hudmsgsHideByChannel(channelnum);
}
if (channel->flags & AUDIOCHANNELFLAG_0008) {
@ -1099,7 +1099,7 @@ glabel var7f1ab740
.PF0f093364:
/* f093364: 53200004 */ beqzl $t9,.PF0f093378
/* f093368: 240a0001 */ li $t2,0x1
/* f09336c: 0fc378de */ jal func0f0ddd44
/* f09336c: 0fc378de */ jal hudmsgsHideByChannel
/* f093370: 8fa40058 */ lw $a0,0x58($sp)
/* f093374: 240a0001 */ li $t2,0x1
.PF0f093378:
@ -1753,7 +1753,7 @@ glabel var7f1ab740
.L0f093474:
/* f093474: 51400004 */ beqzl $t2,.L0f093488
/* f093478: 240b0001 */ addiu $t3,$zero,0x1
/* f09347c: 0fc37751 */ jal func0f0ddd44
/* f09347c: 0fc37751 */ jal hudmsgsHideByChannel
/* f093480: 8fa40058 */ lw $a0,0x58($sp)
/* f093484: 240b0001 */ addiu $t3,$zero,0x1
.L0f093488:
@ -2333,7 +2333,7 @@ glabel var7f1ab740
.NB0f0919b4:
/* f0919b4: 51a0000e */ beqzl $t5,.NB0f0919f0
/* f0919b8: 24190001 */ addiu $t9,$zero,0x1
/* f0919bc: 0fc36cd5 */ jal func0f0ddd44
/* f0919bc: 0fc36cd5 */ jal hudmsgsHideByChannel
/* f0919c0: 8fa40058 */ lw $a0,0x58($sp)
/* f0919c4: 1000000a */ beqz $zero,.NB0f0919f0
/* f0919c8: 24190001 */ addiu $t9,$zero,0x1

File diff suppressed because it is too large Load Diff

View File

@ -5301,7 +5301,7 @@ Gfx *titleRenderRarePresents(Gfx *gdl)
if (var80062868) {
if (g_TitleAudioHandle == NULL) {
sndStart(var80095200, SFX_TITLE_RAREPRESENTS, &g_TitleAudioHandle, -1, -1, -1, -1, -1);
sndStart(var80095200, SFX_HUDMSG, &g_TitleAudioHandle, -1, -1, -1, -1, -1);
}
} else {
if (g_TitleAudioHandle) {

View File

@ -1106,28 +1106,30 @@
#define HUDHALIGN_LEFT 1
#define HUDHALIGN_MIDDLE 2
#define HUDMSGFLAG_ONLYIFALIVE 0x1
#define HUDMSGFLAG_2 0x2
#define HUDMSGFLAG_4 0x4
#define HUDMSGFLAG_ALLOWDUPES 0x8
#define HUDMSGFLAG_ONLYIFALIVE 0x01
#define HUDMSGFLAG_FORCEOFF 0x02 // for subtitles - turn off message immediately rather than when audio finishes
#define HUDMSGFLAG_NOCHANNEL 0x04 // not linked to audio
#define HUDMSGFLAG_ALLOWDUPES 0x08
#define HUDMSGFLAG_DELAY 0x10 // wait minimum 3 frames before showing
#define HUDMSGREASON_NOCONTROL 0x00000002
#define HUDMSGSTATE_FREE 0
#define HUDMSGSTATE_QUEUED 1
#define HUDMSGSTATE_FADINGIN 3
#define HUDMSGSTATE_ONSCREEN 4
#define HUDMSGSTATE_FADINGOUT 5
#define HUDMSGSTATE_FREE 0
#define HUDMSGSTATE_QUEUED 1
#define HUDMSGSTATE_CHOOSETRANSITION 2
#define HUDMSGSTATE_FADINGIN 3
#define HUDMSGSTATE_ONSCREEN 4
#define HUDMSGSTATE_FADINGOUT 5
#define HUDMSGTYPE_DEFAULT 0
#define HUDMSGTYPE_OBJECTIVECOMPLETE 1
#define HUDMSGTYPE_OBJECTIVEFAILED 2
#define HUDMSGTYPE_3 3
#define HUDMSGTYPE_4 4
#define HUDMSGTYPE_SUBTITLE 6
#define HUDMSGTYPE_INGAMESUBTITLE 6
#define HUDMSGTYPE_MPSCENARIO 9
#define HUDMSGTYPE_TRAINING 10
#define HUDMSGTYPE_11 11
#define HUDMSGTYPE_CUTSCENESUBTITLE 11
#define HUDVALIGN_BOTTOM 0
#define HUDVALIGN_TOP 1

View File

@ -11,7 +11,7 @@ s32 channelGetUnk06(s32 channelnum);
u32 func0f09294c(void);
void func0f092a98(s32 channelnum);
u32 func0f092b50(void);
u32 func0f092b7c(void);
u32 func0f092b7c(s32 channelnum);
void func0f092c04(s32 channelnum);
u32 func0f093508(void);
void func0f093630(struct prop *prop, f32 arg1, s32 arg2);

View File

@ -10,7 +10,7 @@ Gfx *hudmsgRenderMissionTimer(Gfx *gdl, u32 arg1);
Gfx *hudmsgRenderZoomRange(Gfx *gdl, s32 arg1);
Gfx *hudmsgRenderBox(Gfx *gdl, s32 x1, s32 y1, s32 x2, s32 y2, f32 bgopacity, u32 bordercolour, f32 textopacity);
s32 func0f0ddb1c(u32 *arg0, u32 arg1);
void func0f0ddd44(s32 value);
void hudmsgsHideByChannel(s32 value);
void hudmsgsInit(void);
void hudmsgRemoveAll(void);
s32 hudmsgGetNext(s32 refid);

View File

@ -61,7 +61,7 @@ enum sfx {
SFX_003B,
SFX_003C,
SFX_003D,
SFX_TITLE_RAREPRESENTS,
SFX_HUDMSG,
SFX_003F,
SFX_0040,
SFX_0041,

View File

@ -5166,7 +5166,7 @@ struct hudmessageconfig {
struct hudmessage {
/*0x000*/ u8 state;
/*0x001*/ u8 boxed;
/*0x002*/ u8 unk002;
/*0x002*/ u8 allowfadein;
/*0x003*/ u8 flash;
/*0x004*/ u8 opacity;
/*0x006*/ u16 timer;
@ -5179,10 +5179,10 @@ struct hudmessage {
/*0x01c*/ u16 width;
/*0x01e*/ u16 height;
/*0x020*/ char text[400];
/*0x1b0*/ s32 unk1b0;
/*0x1b0*/ s32 channelnum;
/*0x1b4*/ u32 type;
/*0x1b8*/ s32 id;
/*0x1bc*/ u32 unk1bc; // duration
/*0x1bc*/ s32 showduration;
/*0x1c0*/ s32 playernum;
/*0x1c4*/ u32 flags;
/*0x1c8*/ u8 alignh;