mirror of
https://github.com/zeldaret/ph
synced 2026-05-23 15:01:37 -04:00
Fix match
This commit is contained in:
@@ -38,7 +38,7 @@ src/Main/Message/BMG.cpp:
|
||||
|
||||
src/Main/Unknown/UnkStruct_02037750.cpp:
|
||||
.text start:0x02037750 end:0x020387e0
|
||||
.data start:0x02057d00 end:0x02057d70
|
||||
.data start:0x02057cb8 end:0x02057d70
|
||||
|
||||
src/Main/Unknown/UnkStruct_02038aa0.cpp:
|
||||
.text start:0x0203881c end:0x02039578
|
||||
|
||||
@@ -207,4 +207,3 @@ public:
|
||||
};
|
||||
|
||||
extern ItemManager *gItemManager;
|
||||
extern UnkStruct_027e0d38 *data_027e0d38;
|
||||
|
||||
@@ -5,19 +5,18 @@
|
||||
#include "types.h"
|
||||
|
||||
#define BMG_MAGIC "MESGbmg1"
|
||||
#define BMG_TAG(a, b, c, d) (((d) << 24) | ((c) << 16) | ((b) << 8) | (a))
|
||||
#define BMG_GET_INF1(pGroups, flags) ((pGroups)->entries[(flags) >> 0x10].func_02037258((flags) & 0xFFFF))
|
||||
#define BMG_GET_MSG_OFFSET(pGroups, flags) (BMG_GET_INF1((pGroups), (flags))->offset)
|
||||
#define BMG_GET_MSG_ADDR(pGroups, flags) \
|
||||
((u32) (pGroups)->entries[(flags) >> 0x10].pDAT1 + (BMG_GET_MSG_OFFSET((pGroups), (flags)) & ~1))
|
||||
|
||||
enum BMGTag {
|
||||
/* "INF1" */ BMG_TAG_INF1 = BMG_TAG('I', 'N', 'F', '1'),
|
||||
/* "FLW1" */ BMG_TAG_FLW1 = BMG_TAG('F', 'L', 'W', '1'),
|
||||
/* "FLI1" */ BMG_TAG_FLI1 = BMG_TAG('F', 'L', 'I', '1'),
|
||||
/* "DAT1" */ BMG_TAG_DAT1 = BMG_TAG('D', 'A', 'T', '1'),
|
||||
/* "MID1" */ BMG_TAG_MID1 = BMG_TAG('M', 'I', 'D', '1'),
|
||||
/* "MID1" */ BMG_TAG_STR1 = BMG_TAG('S', 'T', 'R', '1'),
|
||||
/* "INF1" */ BMG_TAG_INF1 = '1FNI',
|
||||
/* "FLW1" */ BMG_TAG_FLW1 = '1WLF',
|
||||
/* "FLI1" */ BMG_TAG_FLI1 = '1ILF',
|
||||
/* "DAT1" */ BMG_TAG_DAT1 = '1TAD',
|
||||
/* "MID1" */ BMG_TAG_MID1 = '1DIM',
|
||||
/* "STR1" */ BMG_TAG_STR1 = '1RTS',
|
||||
};
|
||||
|
||||
enum BMGEncoding {
|
||||
|
||||
@@ -37,7 +37,7 @@ public:
|
||||
|
||||
UnkStruct_02037750(unk32 param1, unk32 param2);
|
||||
static LinkStateInteract *GetLinkStateInteract();
|
||||
void func_020385d0(s32 param1, u8 *param2);
|
||||
unk32 func_020385d0(s32 param1, u8 *param2);
|
||||
};
|
||||
|
||||
class UnkStruct_020386d8_24 {
|
||||
|
||||
@@ -48,7 +48,6 @@ ARM bool UnkStruct_02037750::vfunc_24(unk32 param1) {
|
||||
ARM unk32 UnkStruct_02037750::vfunc_28(s32 param1) {
|
||||
u16 uVar1;
|
||||
s64 lVar2;
|
||||
Random *pRVar3;
|
||||
char cVar4;
|
||||
u16 uVar5;
|
||||
int iVar6;
|
||||
@@ -59,8 +58,7 @@ ARM unk32 UnkStruct_02037750::vfunc_28(s32 param1) {
|
||||
u32 uVar11;
|
||||
bool bVar12;
|
||||
|
||||
pRVar3 = gRandom;
|
||||
uVar7 = (u32) * (u16 *) (param1 + 0x2);
|
||||
uVar7 = (u32) * (u16 *) (param1 + 0x2);
|
||||
|
||||
if (uVar7 >= 0xF && uVar7 <= 0x2E) {
|
||||
pcVar8 = this->mUnk_04[((uVar7 - 0xF) << 0x1E) >> 0x1C];
|
||||
@@ -101,17 +99,17 @@ ARM unk32 UnkStruct_02037750::vfunc_28(s32 param1) {
|
||||
if (uVar7 == 0x0) {
|
||||
uVar10 = 0x0;
|
||||
} else {
|
||||
lVar2 = gRandom->mRandomValue * gRandom->mFactor;
|
||||
uVar10 = gRandom->Next(lVar2);
|
||||
// uVar10 = *(int *)((int)&gRandom->mAddend + 0x4) +
|
||||
// *(int *)((int)&gRandom->mFactor + 0x4) *
|
||||
// *(uint *)&gRandom->mRandomValue + *(uint *)&gRandom->mFactor *
|
||||
// *(int *)((int)&gRandom->mRandomValue + 0x4) +
|
||||
// (lVar2 >> 0x20) + (gRandom->mAddend << uVar11); // CARRY4
|
||||
lVar2 = gRandom.mRandomValue * gRandom.mFactor;
|
||||
uVar10 = gRandom.Next(lVar2);
|
||||
// uVar10 = *(int *)((int)&gRandom.mAddend + 0x4) +
|
||||
// *(int *)((int)&gRandom.mFactor + 0x4) *
|
||||
// *(uint *)&gRandom.mRandomValue + *(uint *)&gRandom.mFactor *
|
||||
// *(int *)((int)&gRandom.mRandomValue + 0x4) +
|
||||
// (lVar2 >> 0x20) + (gRandom.mAddend << uVar11); // CARRY4
|
||||
|
||||
// part of the inline?
|
||||
// *(uint *)&gRandom->mRandomValue = *(uint *)&gRandom->mAddend + uVar11;
|
||||
// *(uint *)((int)&gRandom->mRandomValue + 0x4) = uVar10;
|
||||
// *(uint *)&gRandom.mRandomValue = *(uint *)&gRandom.mAddend + uVar11;
|
||||
// *(uint *)((int)&gRandom.mRandomValue + 0x4) = uVar10;
|
||||
|
||||
if (uVar7 != 0x0) {
|
||||
uVar10 = (uVar7 * uVar10 >> 0x20);
|
||||
@@ -126,9 +124,9 @@ ARM unk32 UnkStruct_02037750::vfunc_28(s32 param1) {
|
||||
case 0x9: break;
|
||||
case 0xa: break;
|
||||
case 0xb:
|
||||
lVar2 = gRandom->mRandomValue * gRandom->mFactor;
|
||||
lVar2 = gRandom.mRandomValue * gRandom.mFactor;
|
||||
uVar7 = lVar2;
|
||||
uVar10 = gRandom->Next(uVar7);
|
||||
uVar10 = gRandom.Next(uVar7);
|
||||
|
||||
return (int) (uVar10 * 0x64 >> 0x20) < (param1 + 0x4);
|
||||
case 0xc:
|
||||
@@ -136,9 +134,9 @@ ARM unk32 UnkStruct_02037750::vfunc_28(s32 param1) {
|
||||
if (uVar7 == 0x0) {
|
||||
uVar10 = 0x0;
|
||||
} else {
|
||||
lVar2 = gRandom->mRandomValue * gRandom->mFactor;
|
||||
lVar2 = gRandom.mRandomValue * gRandom.mFactor;
|
||||
uVar11 = lVar2;
|
||||
uVar10 = gRandom->Next(uVar11);
|
||||
uVar10 = gRandom.Next(uVar11);
|
||||
|
||||
if (uVar7 != 0x0) {
|
||||
uVar10 = (uVar7 * uVar10 >> 0x20);
|
||||
@@ -159,9 +157,9 @@ ARM unk32 UnkStruct_02037750::vfunc_28(s32 param1) {
|
||||
if (uVar7 == 0x0) {
|
||||
uVar10 = 0x0;
|
||||
} else {
|
||||
lVar2 = gRandom->mRandomValue * gRandom->mFactor;
|
||||
lVar2 = gRandom.mRandomValue * gRandom.mFactor;
|
||||
uVar11 = lVar2;
|
||||
uVar10 = gRandom->Next(uVar11);
|
||||
uVar10 = gRandom.Next(uVar11);
|
||||
|
||||
if (uVar7 != 0x0) {
|
||||
uVar10 = (uVar7 * uVar10 >> 0x20);
|
||||
|
||||
Reference in New Issue
Block a user