summaryrefslogtreecommitdiff
path: root/src/manager/bombableWallManager.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/manager/bombableWallManager.c')
-rw-r--r--src/manager/bombableWallManager.c206
1 files changed, 103 insertions, 103 deletions
diff --git a/src/manager/bombableWallManager.c b/src/manager/bombableWallManager.c
index 0dd5379d..9ba2d688 100644
--- a/src/manager/bombableWallManager.c
+++ b/src/manager/bombableWallManager.c
@@ -13,7 +13,7 @@
#include "sound.h"
#include "tiles.h"
-u32 BombableWallManager_GetBombableType(u32 metaTilePos, u32 layer);
+u32 BombableWallManager_GetBombableType(u32 tilePos, u32 layer);
void BombableWallManager_DestroyWall(BombableWallManager*);
u32 getArchwayType(void);
@@ -37,8 +37,8 @@ void BombableWallManager_Main(BombableWallManager* this) {
void BombableWallManager_Init(BombableWallManager* this) {
super->action = 1;
- this->metaTilePos = (this->x >> 4 & 0x3fU) | (((this->y << 0x10) >> 0x14 & 0x3fU) << 6);
- super->type = BombableWallManager_GetBombableType(this->metaTilePos, this->layer);
+ this->tilePos = (this->x >> 4 & 0x3fU) | (((this->y << 0x10) >> 0x14 & 0x3fU) << 6);
+ super->type = BombableWallManager_GetBombableType(this->tilePos, this->layer);
if (CheckLocalFlag(this->flag) != 0) {
BombableWallManager_DestroyWall(this);
DeleteManager(super);
@@ -46,7 +46,7 @@ void BombableWallManager_Init(BombableWallManager* this) {
}
void BombableWallManager_Action1(BombableWallManager* this) {
- if (GetVvvAtMetaTilePos(this->metaTilePos, this->layer) != VVV_46) {
+ if (GetVvvAtTilePos(this->tilePos, this->layer) != VVV_46) {
super->action = 2;
super->timer = 90;
BombableWallManager_DestroyWall(this);
@@ -61,29 +61,29 @@ void BombableWallManager_Action2(BombableWallManager* this) {
}
}
-u32 BombableWallManager_GetBombableType(u32 metaTilePos, u32 layer) {
- u32 metaTileType = GetMetaTileType(metaTilePos, layer);
+u32 BombableWallManager_GetBombableType(u32 tilePos, u32 layer) {
+ u32 tileType = GetTileType(tilePos, layer);
- switch (metaTileType) {
- case META_TILE_TYPE_236:
+ switch (tileType) {
+ case TILE_TYPE_236:
return 1;
- case META_TILE_TYPE_191:
+ case TILE_TYPE_191:
return 4;
- case META_TILE_TYPE_175:
+ case TILE_TYPE_175:
return 0;
- case META_TILE_TYPE_204:
+ case TILE_TYPE_204:
return 2;
- case META_TILE_TYPE_223:
+ case TILE_TYPE_223:
return 3;
- case META_TILE_TYPE_255:
+ case TILE_TYPE_255:
return 0;
- case META_TILE_TYPE_277:
+ case TILE_TYPE_277:
return 1;
- case META_TILE_TYPE_264:
+ case TILE_TYPE_264:
return 2;
- case META_TILE_TYPE_272:
+ case TILE_TYPE_272:
return 3;
- case META_TILE_TYPE_261:
+ case TILE_TYPE_261:
return 4;
}
return 0xff;
@@ -95,38 +95,38 @@ void BombableWallManager_DestroyWall(BombableWallManager* this) {
BombableWallManager_DestroyWall3, BombableWallManager_DestroyWall4,
};
if (super->type != 0xff) {
- gUnk_08108CE8[super->type](this->metaTilePos, this->layer);
+ gUnk_08108CE8[super->type](this->tilePos, this->layer);
}
}
-void BombableWallManager_DestroyWall0(u32 metaTilePos, u32 layer) {
- SetMetaTileType(META_TILE_TYPE_177, metaTilePos + TILE_POS(-1, -1), layer);
- SetMetaTileType(META_TILE_TYPE_178, metaTilePos + TILE_POS(0, -1), layer);
- SetMetaTileType(META_TILE_TYPE_179, metaTilePos + TILE_POS(1, -1), layer);
- SetMetaTileType(META_TILE_TYPE_180, metaTilePos + TILE_POS(-1, 0), layer);
- SetMetaTileType(META_TILE_TYPE_183, metaTilePos + TILE_POS(1, 0), layer);
+void BombableWallManager_DestroyWall0(u32 tilePos, u32 layer) {
+ SetTileType(TILE_TYPE_177, tilePos + TILE_POS(-1, -1), layer);
+ SetTileType(TILE_TYPE_178, tilePos + TILE_POS(0, -1), layer);
+ SetTileType(TILE_TYPE_179, tilePos + TILE_POS(1, -1), layer);
+ SetTileType(TILE_TYPE_180, tilePos + TILE_POS(-1, 0), layer);
+ SetTileType(TILE_TYPE_183, tilePos + TILE_POS(1, 0), layer);
if (layer == LAYER_BOTTOM) {
if (AreaHasEnemies()) {
Entity* object = CreateObject(ARCHWAY, 0xe, 0);
if (object != NULL) {
- object->x.HALF.HI = ((metaTilePos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
- object->y.HALF.HI = ((metaTilePos & 0xfc0) >> 2) - 8 + gRoomControls.origin_y;
+ object->x.HALF.HI = ((tilePos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
+ object->y.HALF.HI = ((tilePos & 0xfc0) >> 2) - 8 + gRoomControls.origin_y;
}
- SetMetaTileType(META_TILE_TYPE_181, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_181, tilePos, LAYER_BOTTOM);
} else {
if (AreaIsDungeon()) {
- SetMetaTileType(META_TILE_TYPE_181, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_181, tilePos, LAYER_BOTTOM);
} else {
- SetMetaTileType(META_TILE_TYPE_182, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_182, tilePos, LAYER_BOTTOM);
}
}
- SetMetaTileType(META_TILE_TYPE_184, metaTilePos + TILE_POS(-1, -1), LAYER_TOP);
- SetMetaTileType(META_TILE_TYPE_185, metaTilePos + TILE_POS(0, -1), LAYER_TOP);
- SetMetaTileType(META_TILE_TYPE_186, metaTilePos + TILE_POS(1, -1), LAYER_TOP);
+ SetTileType(TILE_TYPE_184, tilePos + TILE_POS(-1, -1), LAYER_TOP);
+ SetTileType(TILE_TYPE_185, tilePos + TILE_POS(0, -1), LAYER_TOP);
+ SetTileType(TILE_TYPE_186, tilePos + TILE_POS(1, -1), LAYER_TOP);
} else {
Entity* object;
- SetMetaTileType(META_TILE_TYPE_181, metaTilePos, LAYER_TOP);
+ SetTileType(TILE_TYPE_181, tilePos, LAYER_TOP);
if (!AreaIsDungeon()) {
return;
}
@@ -134,41 +134,41 @@ void BombableWallManager_DestroyWall0(u32 metaTilePos, u32 layer) {
if (object == NULL) {
return;
}
- object->x.HALF.HI = ((metaTilePos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
- object->y.HALF.HI = ((metaTilePos & 0xfc0) >> 2) - 0x10 + gRoomControls.origin_y;
+ object->x.HALF.HI = ((tilePos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
+ object->y.HALF.HI = ((tilePos & 0xfc0) >> 2) - 0x10 + gRoomControls.origin_y;
object->collisionLayer = LAYER_TOP;
}
}
-void BombableWallManager_DestroyWall1(u32 metaTilePos, u32 layer) {
+void BombableWallManager_DestroyWall1(u32 tilePos, u32 layer) {
Entity* object;
- SetMetaTileType(META_TILE_TYPE_241, metaTilePos + TILE_POS(0, -1), layer);
- SetMetaTileType(META_TILE_TYPE_245, metaTilePos + TILE_POS(1, -1), layer);
- SetMetaTileType(META_TILE_TYPE_246, metaTilePos + TILE_POS(1, 0), layer);
- SetMetaTileType(META_TILE_TYPE_244, metaTilePos + TILE_POS(0, 1), layer);
- SetMetaTileType(META_TILE_TYPE_247, metaTilePos + TILE_POS(1, 1), layer);
+ SetTileType(TILE_TYPE_241, tilePos + TILE_POS(0, -1), layer);
+ SetTileType(TILE_TYPE_245, tilePos + TILE_POS(1, -1), layer);
+ SetTileType(TILE_TYPE_246, tilePos + TILE_POS(1, 0), layer);
+ SetTileType(TILE_TYPE_244, tilePos + TILE_POS(0, 1), layer);
+ SetTileType(TILE_TYPE_247, tilePos + TILE_POS(1, 1), layer);
if (layer == LAYER_BOTTOM) {
if (AreaHasEnemies()) {
object = CreateObject(ARCHWAY, 0xe, 1);
if (object != NULL) {
- object->x.HALF.HI = ((metaTilePos & 0x3f) << 4) + 0x18 + gRoomControls.origin_x;
- object->y.HALF.HI = ((metaTilePos & 0xfc0) >> 2) + 8 + gRoomControls.origin_y;
+ object->x.HALF.HI = ((tilePos & 0x3f) << 4) + 0x18 + gRoomControls.origin_x;
+ object->y.HALF.HI = ((tilePos & 0xfc0) >> 2) + 8 + gRoomControls.origin_y;
}
- SetMetaTileType(META_TILE_TYPE_242, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_242, tilePos, LAYER_BOTTOM);
} else {
if (AreaIsDungeon()) {
- SetMetaTileType(META_TILE_TYPE_242, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_242, tilePos, LAYER_BOTTOM);
} else {
- SetMetaTileType(META_TILE_TYPE_243, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_243, tilePos, LAYER_BOTTOM);
}
}
- SetMetaTileType(META_TILE_TYPE_248, metaTilePos + TILE_POS(1, -1), LAYER_TOP);
- SetMetaTileType(META_TILE_TYPE_249, metaTilePos + 1, LAYER_TOP);
- SetMetaTileType(META_TILE_TYPE_250, metaTilePos + TILE_POS(1, 1), LAYER_TOP);
+ SetTileType(TILE_TYPE_248, tilePos + TILE_POS(1, -1), LAYER_TOP);
+ SetTileType(TILE_TYPE_249, tilePos + 1, LAYER_TOP);
+ SetTileType(TILE_TYPE_250, tilePos + TILE_POS(1, 1), LAYER_TOP);
} else {
- SetMetaTileType(META_TILE_TYPE_242, metaTilePos, LAYER_TOP);
+ SetTileType(TILE_TYPE_242, tilePos, LAYER_TOP);
if (!AreaIsDungeon()) {
return;
}
@@ -176,40 +176,40 @@ void BombableWallManager_DestroyWall1(u32 metaTilePos, u32 layer) {
if (object == NULL) {
return;
}
- object->x.HALF.HI = ((metaTilePos & 0x3f) << 4) + 0x20 + gRoomControls.origin_x;
- object->y.HALF.HI = ((metaTilePos & 0xfc0) >> 2) + 8 + gRoomControls.origin_y;
+ object->x.HALF.HI = ((tilePos & 0x3f) << 4) + 0x20 + gRoomControls.origin_x;
+ object->y.HALF.HI = ((tilePos & 0xfc0) >> 2) + 8 + gRoomControls.origin_y;
object->collisionLayer = LAYER_TOP;
}
}
-void BombableWallManager_DestroyWall2(u32 metaTilePos, u32 layer) {
+void BombableWallManager_DestroyWall2(u32 tilePos, u32 layer) {
Entity* object;
- SetMetaTileType(META_TILE_TYPE_209, metaTilePos + TILE_POS(-1, 0), layer);
- SetMetaTileType(META_TILE_TYPE_212, metaTilePos + TILE_POS(1, 0), layer);
- SetMetaTileType(META_TILE_TYPE_213, metaTilePos + TILE_POS(-1, 1), layer);
- SetMetaTileType(META_TILE_TYPE_214, metaTilePos + TILE_POS(0, 1), layer);
- SetMetaTileType(META_TILE_TYPE_215, metaTilePos + TILE_POS(1, 1), layer);
+ SetTileType(TILE_TYPE_209, tilePos + TILE_POS(-1, 0), layer);
+ SetTileType(TILE_TYPE_212, tilePos + TILE_POS(1, 0), layer);
+ SetTileType(TILE_TYPE_213, tilePos + TILE_POS(-1, 1), layer);
+ SetTileType(TILE_TYPE_214, tilePos + TILE_POS(0, 1), layer);
+ SetTileType(TILE_TYPE_215, tilePos + TILE_POS(1, 1), layer);
if (layer == LAYER_BOTTOM) {
if (AreaHasEnemies()) {
object = CreateObject(ARCHWAY, 0xe, 2);
if (object != NULL) {
- object->x.HALF.HI = ((metaTilePos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
- object->y.HALF.HI = ((metaTilePos & 0xfc0) >> 2) + 0x20 + gRoomControls.origin_y;
+ object->x.HALF.HI = ((tilePos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
+ object->y.HALF.HI = ((tilePos & 0xfc0) >> 2) + 0x20 + gRoomControls.origin_y;
}
- SetMetaTileType(META_TILE_TYPE_210, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_210, tilePos, LAYER_BOTTOM);
} else {
if (AreaIsDungeon()) {
- SetMetaTileType(META_TILE_TYPE_210, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_210, tilePos, LAYER_BOTTOM);
} else {
- SetMetaTileType(META_TILE_TYPE_211, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_211, tilePos, LAYER_BOTTOM);
}
}
- SetMetaTileType(META_TILE_TYPE_216, metaTilePos + TILE_POS(-1, 1), LAYER_TOP);
- SetMetaTileType(META_TILE_TYPE_217, metaTilePos + TILE_POS(0, 1), LAYER_TOP);
- SetMetaTileType(META_TILE_TYPE_218, metaTilePos + TILE_POS(1, 1), LAYER_TOP);
+ SetTileType(TILE_TYPE_216, tilePos + TILE_POS(-1, 1), LAYER_TOP);
+ SetTileType(TILE_TYPE_217, tilePos + TILE_POS(0, 1), LAYER_TOP);
+ SetTileType(TILE_TYPE_218, tilePos + TILE_POS(1, 1), LAYER_TOP);
} else {
- SetMetaTileType(META_TILE_TYPE_210, metaTilePos, LAYER_TOP);
+ SetTileType(TILE_TYPE_210, tilePos, LAYER_TOP);
if (AreaIsDungeon() == 0) {
return;
}
@@ -217,40 +217,40 @@ void BombableWallManager_DestroyWall2(u32 metaTilePos, u32 layer) {
if (object == NULL) {
return;
}
- object->x.HALF.HI = ((metaTilePos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
- object->y.HALF.HI = ((metaTilePos & 0xfc0) >> 2) + 0x20 + gRoomControls.origin_y;
+ object->x.HALF.HI = ((tilePos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
+ object->y.HALF.HI = ((tilePos & 0xfc0) >> 2) + 0x20 + gRoomControls.origin_y;
object->collisionLayer = LAYER_TOP;
}
}
-void BombableWallManager_DestroyWall3(u32 metaTilePos, u32 layer) {
+void BombableWallManager_DestroyWall3(u32 tilePos, u32 layer) {
Entity* object;
- SetMetaTileType(META_TILE_TYPE_225, metaTilePos + TILE_POS(-1, -1), layer);
- SetMetaTileType(META_TILE_TYPE_228, metaTilePos + TILE_POS(0, -1), layer);
- SetMetaTileType(META_TILE_TYPE_226, metaTilePos + TILE_POS(-1, 0), layer);
- SetMetaTileType(META_TILE_TYPE_227, metaTilePos + TILE_POS(-1, 1), layer);
- SetMetaTileType(META_TILE_TYPE_231, metaTilePos + TILE_POS(0, 1), layer);
+ SetTileType(TILE_TYPE_225, tilePos + TILE_POS(-1, -1), layer);
+ SetTileType(TILE_TYPE_228, tilePos + TILE_POS(0, -1), layer);
+ SetTileType(TILE_TYPE_226, tilePos + TILE_POS(-1, 0), layer);
+ SetTileType(TILE_TYPE_227, tilePos + TILE_POS(-1, 1), layer);
+ SetTileType(TILE_TYPE_231, tilePos + TILE_POS(0, 1), layer);
if (layer == LAYER_BOTTOM) {
if (AreaHasEnemies()) {
object = CreateObject(ARCHWAY, 0xe, 3);
if (object != NULL) {
- object->x.HALF.HI = ((metaTilePos & 0x3f) << 4) + -0x10 + gRoomControls.origin_x;
- object->y.HALF.HI = ((metaTilePos & 0xfc0) >> 2) + 8 + gRoomControls.origin_y;
+ object->x.HALF.HI = ((tilePos & 0x3f) << 4) + -0x10 + gRoomControls.origin_x;
+ object->y.HALF.HI = ((tilePos & 0xfc0) >> 2) + 8 + gRoomControls.origin_y;
}
- SetMetaTileType(META_TILE_TYPE_229, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_229, tilePos, LAYER_BOTTOM);
} else {
if (AreaIsDungeon()) {
- SetMetaTileType(META_TILE_TYPE_229, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_229, tilePos, LAYER_BOTTOM);
} else {
- SetMetaTileType(META_TILE_TYPE_230, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_230, tilePos, LAYER_BOTTOM);
}
}
- SetMetaTileType(META_TILE_TYPE_232, metaTilePos + TILE_POS(-1, -1), LAYER_TOP);
- SetMetaTileType(META_TILE_TYPE_233, metaTilePos + TILE_POS(-1, 0), LAYER_TOP);
- SetMetaTileType(META_TILE_TYPE_234, metaTilePos + TILE_POS(-1, 1), LAYER_TOP);
+ SetTileType(TILE_TYPE_232, tilePos + TILE_POS(-1, -1), LAYER_TOP);
+ SetTileType(TILE_TYPE_233, tilePos + TILE_POS(-1, 0), LAYER_TOP);
+ SetTileType(TILE_TYPE_234, tilePos + TILE_POS(-1, 1), LAYER_TOP);
} else {
- SetMetaTileType(META_TILE_TYPE_229, metaTilePos, LAYER_TOP);
+ SetTileType(TILE_TYPE_229, tilePos, LAYER_TOP);
if (!AreaIsDungeon()) {
return;
}
@@ -259,40 +259,40 @@ void BombableWallManager_DestroyWall3(u32 metaTilePos, u32 layer) {
if (object == NULL) {
return;
}
- object->x.HALF.HI = ((metaTilePos & 0x3f) << 4) + -0x10 + gRoomControls.origin_x;
- object->y.HALF.HI = ((metaTilePos & 0xfc0) >> 2) + 8 + gRoomControls.origin_y;
+ object->x.HALF.HI = ((tilePos & 0x3f) << 4) + -0x10 + gRoomControls.origin_x;
+ object->y.HALF.HI = ((tilePos & 0xfc0) >> 2) + 8 + gRoomControls.origin_y;
object->collisionLayer = LAYER_TOP;
}
}
-void BombableWallManager_DestroyWall4(u32 metaTilePos, u32 layer) {
+void BombableWallManager_DestroyWall4(u32 tilePos, u32 layer) {
Entity* object;
- SetMetaTileType(META_TILE_TYPE_193, metaTilePos + TILE_POS(-1, -1), layer);
- SetMetaTileType(META_TILE_TYPE_194, metaTilePos + TILE_POS(0, -1), layer);
- SetMetaTileType(META_TILE_TYPE_195, metaTilePos + TILE_POS(1, -1), layer);
- SetMetaTileType(META_TILE_TYPE_196, metaTilePos + TILE_POS(-1, 0), layer);
- SetMetaTileType(META_TILE_TYPE_199, metaTilePos + TILE_POS(1, 0), layer);
+ SetTileType(TILE_TYPE_193, tilePos + TILE_POS(-1, -1), layer);
+ SetTileType(TILE_TYPE_194, tilePos + TILE_POS(0, -1), layer);
+ SetTileType(TILE_TYPE_195, tilePos + TILE_POS(1, -1), layer);
+ SetTileType(TILE_TYPE_196, tilePos + TILE_POS(-1, 0), layer);
+ SetTileType(TILE_TYPE_199, tilePos + TILE_POS(1, 0), layer);
if (layer == LAYER_BOTTOM) {
if (AreaHasEnemies()) {
object = CreateObject(ARCHWAY, 0xe, 0);
if (object != NULL) {
- object->x.HALF.HI = ((metaTilePos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
- object->y.HALF.HI = ((metaTilePos & 0xfc0) >> 2) + -0x10 + gRoomControls.origin_y;
+ object->x.HALF.HI = ((tilePos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
+ object->y.HALF.HI = ((tilePos & 0xfc0) >> 2) + -0x10 + gRoomControls.origin_y;
}
- SetMetaTileType(META_TILE_TYPE_197, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_197, tilePos, LAYER_BOTTOM);
} else {
if (AreaIsDungeon()) {
- SetMetaTileType(META_TILE_TYPE_197, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_197, tilePos, LAYER_BOTTOM);
} else {
- SetMetaTileType(META_TILE_TYPE_198, metaTilePos, LAYER_BOTTOM);
+ SetTileType(TILE_TYPE_198, tilePos, LAYER_BOTTOM);
}
}
- SetMetaTileType(META_TILE_TYPE_200, metaTilePos + TILE_POS(-1, -1), LAYER_TOP);
- SetMetaTileType(META_TILE_TYPE_201, metaTilePos + TILE_POS(0, -1), LAYER_TOP);
- SetMetaTileType(META_TILE_TYPE_202, metaTilePos + TILE_POS(1, -1), LAYER_TOP);
+ SetTileType(TILE_TYPE_200, tilePos + TILE_POS(-1, -1), LAYER_TOP);
+ SetTileType(TILE_TYPE_201, tilePos + TILE_POS(0, -1), LAYER_TOP);
+ SetTileType(TILE_TYPE_202, tilePos + TILE_POS(1, -1), LAYER_TOP);
} else {
- SetMetaTileType(META_TILE_TYPE_197, metaTilePos, LAYER_TOP);
+ SetTileType(TILE_TYPE_197, tilePos, LAYER_TOP);
if (!AreaIsDungeon()) {
return;
}
@@ -301,8 +301,8 @@ void BombableWallManager_DestroyWall4(u32 metaTilePos, u32 layer) {
if (object == NULL) {
return;
}
- object->x.HALF.HI = ((metaTilePos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
- object->y.HALF.HI = ((metaTilePos & 0xfc0) >> 2) + -0x10 + gRoomControls.origin_y;
+ object->x.HALF.HI = ((tilePos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
+ object->y.HALF.HI = ((tilePos & 0xfc0) >> 2) + -0x10 + gRoomControls.origin_y;
object->collisionLayer = LAYER_TOP;
}
}