diff options
| author | notyourav <65437533+notyourav@users.noreply.github.com> | 2022-06-11 19:48:16 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-06-11 19:48:16 -0700 |
| commit | 16ffc97541e2ce3d8c010854addb7af8ae7da7ff (patch) | |
| tree | dafeda60efe80c74e94c1e073b7c80f0578dd70b /src/enemy | |
| parent | 06d6f7aaa4502698ddef83821c258f835ea41fbd (diff) | |
| parent | e11cfed066a3c7cc2fdbbdb34ca15e80b224997b (diff) | |
Merge pull request #520 from octorock/misc
Decompile some functions
Diffstat (limited to 'src/enemy')
| -rw-r--r-- | src/enemy/armos.c | 4 | ||||
| -rw-r--r-- | src/enemy/gyorgFemale.c | 13 | ||||
| -rw-r--r-- | src/enemy/helmasaur.c | 7 | ||||
| -rw-r--r-- | src/enemy/sensorBladeTrap.c | 9 |
4 files changed, 12 insertions, 21 deletions
diff --git a/src/enemy/armos.c b/src/enemy/armos.c index 076c278d..a2be046f 100644 --- a/src/enemy/armos.c +++ b/src/enemy/armos.c @@ -28,8 +28,6 @@ typedef struct { } ArmosEntity; extern Entity* gUnk_020000B0; -extern u8 gUnk_02027EB4[]; -extern u8 gUnk_0200D654[]; extern void (*const gUnk_080CE124[])(ArmosEntity*); extern void (*const gUnk_080CE13C[])(ArmosEntity*); @@ -380,7 +378,7 @@ void sub_080306C4(ArmosEntity* this) { if (!var) { super->direction = (4 + uVar3 + ((Random() & 2) - 1) * 8) & 0x18; } - if (IsTileCollision(super->collisionLayer == 2 ? gUnk_0200D654 : gUnk_02027EB4, + if (IsTileCollision(super->collisionLayer == 2 ? gMapTop.collisionData : gMapBottom.collisionData, super->x.HALF.HI + gUnk_080CE164[super->direction >> 2], super->y.HALF.HI + gUnk_080CE164[(super->direction >> 2) + 1], 0)) { super->direction = ((u8)(((uVar3 & 4) ^ 4) << 1)) | (uVar3 & 0x10); diff --git a/src/enemy/gyorgFemale.c b/src/enemy/gyorgFemale.c index a5f35588..a5948446 100644 --- a/src/enemy/gyorgFemale.c +++ b/src/enemy/gyorgFemale.c @@ -30,7 +30,6 @@ void sub_080467DC(GyorgFemaleEntity*); extern u8 gUpdateVisibleTiles; extern u8 gUnk_080B3E80[]; extern u8 gUnk_080B37A0[]; -extern u16 gMetatileTypesTop[]; extern const u8 gUnk_080D1A94[]; extern const u8 gUnk_080D1AAC[]; @@ -249,17 +248,17 @@ NONMATCH("asm/non_matching/gyorg_female/sub_08046518.inc", void sub_08046518(voi u8* r6; u32 i; u16* sl; - sl = &gMetatileTypesTop[0xFFFFBCB0]; - stack1 = &gMetatileTypesTop[0xFFFFECB0]; - stack2 = (u8*)&gMetatileTypesTop[0x00006658]; - r6 = (u8*)&gMetatileTypesTop[0xFFFFD658]; + sl = &gMapTop.metatileTypes[0xFFFFBCB0]; + stack1 = &gMapTop.metatileTypes[0xFFFFECB0]; + stack2 = (u8*)&gMapTop.metatileTypes[0x00006658]; + r6 = (u8*)&gMapTop.metatileTypes[0xFFFFD658]; for (i = 0; i < 0x10; i++) { sl += 0x40; stack1 += 0x40; for (r5 = 0; r5 < 0x10; r5++) { stack1[r5] = sl[r5]; - stack2[r5] = gUnk_080B37A0[gMetatileTypesTop[sl[r5]]]; - r6[r5] = gUnk_080B3E80[gMetatileTypesTop[sl[r5]]]; + stack2[r5] = gUnk_080B37A0[gMapTop.metatileTypes[sl[r5]]]; + r6[r5] = gUnk_080B3E80[gMapTop.metatileTypes[sl[r5]]]; } stack2 = stack2 + 0x40; r6 = r6 + 0x40; diff --git a/src/enemy/helmasaur.c b/src/enemy/helmasaur.c index 553e20e9..dd279482 100644 --- a/src/enemy/helmasaur.c +++ b/src/enemy/helmasaur.c @@ -12,9 +12,6 @@ extern u32 sub_0804A024(Entity*, u32, u32); -extern u8 gUnk_0200D654[]; -extern u8 gUnk_02027EB4[]; - void sub_0802C18C(Entity*); void sub_0802C218(Entity*); void sub_0802C1C0(Entity*); @@ -317,7 +314,7 @@ bool32 sub_0802C06C(Entity* this) { u32 xdiff = gUnk_080CD45C[(this->direction >> 2) + 0]; u32 ydiff = gUnk_080CD45C[(this->direction >> 2) + 1]; - u8* layer = this->collisionLayer == 2 ? gUnk_0200D654 : gUnk_02027EB4; + u8* layer = this->collisionLayer == 2 ? gMapTop.collisionData : gMapBottom.collisionData; u32 i; for (i = 0; i < 8; i++) { @@ -340,7 +337,7 @@ bool32 sub_0802C0E8(Entity* this) { s32 x = this->x.HALF.HI + this->hitbox->offset_x + ptr[0] * 6; s32 y = this->y.HALF.HI + this->hitbox->offset_y + ptr[1] * 6; - u8* layer = this->collisionLayer == 2 ? gUnk_0200D654 : gUnk_02027EB4; + u8* layer = this->collisionLayer == 2 ? gMapTop.collisionData : gMapBottom.collisionData; u32 ret = FALSE; if (!sub_0806FC24(TILE(x, y), 9)) { if (IsTileCollision(layer, x, y, 0)) { diff --git a/src/enemy/sensorBladeTrap.c b/src/enemy/sensorBladeTrap.c index 3736305c..627a75bb 100644 --- a/src/enemy/sensorBladeTrap.c +++ b/src/enemy/sensorBladeTrap.c @@ -4,16 +4,13 @@ * * @brief Sensor Blade Trap enemy */ - +#include "collision.h" #include "enemy.h" +#include "map.h" #include "physics.h" -#include "collision.h" extern u32 sub_0804A024(Entity*, u32, u32); -extern u8 gUnk_02027EB4[]; -extern u8 gUnk_0200D654[]; - void sub_0802BB10(Entity*); bool32 sub_0802BB2C(Entity*, u32); @@ -99,7 +96,7 @@ void sub_0802BB10(Entity* this) { } bool32 sub_0802BB2C(Entity* this, u32 param_2) { - u8* layer = this->collisionLayer == 2 ? gUnk_0200D654 : gUnk_02027EB4; + u8* layer = this->collisionLayer == 2 ? gMapTop.collisionData : gMapBottom.collisionData; const s8* ptr = &gUnk_080CD3DC[param_2 >> 2]; return IsTileCollision(layer, this->x.HALF.HI + ptr[0], this->y.HALF.HI + ptr[1], 0); } |
