Use metatile enum

This commit is contained in:
octorock
2023-07-05 18:30:27 +02:00
parent f89bb66911
commit b6a94d5062
155 changed files with 5374 additions and 3749 deletions
+14 -14
View File
@@ -14,9 +14,9 @@ typedef struct {
/*0x00*/ Entity base;
/*0x68*/ u8 unk_68[8];
/*0x70*/ u16 tileIndex;
/*0x72*/ u8 unk_72;
/*0x72*/ u8 collisionData;
/*0x73*/ u8 unk_73;
/*0x74*/ u16 tilePosition;
/*0x74*/ u16 tilePos;
/*0x76*/ u8 unk_76[0x10];
/*0x86*/ u16 pushedFlag;
} PushableRockEntity;
@@ -43,12 +43,12 @@ void PushableRock_Action1(PushableRockEntity* this) {
u32 tileType;
u32 tmp;
tileType = GetMetaTileType(this->tilePosition, super->collisionLayer);
tileType = GetMetaTileType(this->tilePos, super->collisionLayer);
switch (tileType) {
case 0x401c:
case 0x401d:
case 0x401e:
case 0x401f:
case SPECIAL_META_TILE_28:
case SPECIAL_META_TILE_29:
case SPECIAL_META_TILE_30:
case SPECIAL_META_TILE_31:
tmp = (tileType - 0x1c);
super->animationState = tmp * 2;
super->direction = tmp * 8;
@@ -57,7 +57,7 @@ void PushableRock_Action1(PushableRockEntity* this) {
} else {
super->spriteSettings.flipX = 0;
}
SetMetaTile(this->tileIndex, this->tilePosition, super->collisionLayer);
SetMetaTile(this->tileIndex, this->tilePos, super->collisionLayer);
super->action = 2;
InitializeAnimation(super, (super->animationState >> 1) + 1);
EnqueueSFX(SFX_10F);
@@ -90,12 +90,12 @@ void PushableRock_Action3(PushableRockEntity* this) {
void sub_0808A644(PushableRockEntity* this) {
u32 vvv;
this->tilePosition = COORD_TO_TILE(super);
this->tileIndex = GetMetaTileIndex(this->tilePosition, super->collisionLayer);
this->unk_72 = GetCollisionDataAtMetaTilePos(this->tilePosition, super->collisionLayer);
vvv = GetVvvAtMetaTilePos(this->tilePosition, super->collisionLayer);
this->tilePos = COORD_TO_TILE(super);
this->tileIndex = GetMetaTileIndex(this->tilePos, super->collisionLayer);
this->collisionData = GetCollisionDataAtMetaTilePos(this->tilePos, super->collisionLayer);
vvv = GetVvvAtMetaTilePos(this->tilePos, super->collisionLayer);
if ((vvv == VVV_25) || (vvv == VVV_240)) {
SetMetaTile(0x4015, this->tilePosition, super->collisionLayer);
SetMetaTile(SPECIAL_META_TILE_21, this->tilePos, super->collisionLayer);
super->action = 3;
if (!CheckFlags(this->pushedFlag)) {
SetFlag(this->pushedFlag);
@@ -105,7 +105,7 @@ void sub_0808A644(PushableRockEntity* this) {
InitializeAnimation(super, 6);
}
} else {
SetMetaTile(0x401b, this->tilePosition, super->collisionLayer);
SetMetaTile(SPECIAL_META_TILE_27, this->tilePos, super->collisionLayer);
}
}