#include "global.h" #include "room.h" #include "subtask.h" #include "common.h" #include "flags.h" void sub_08018B10(int param_1) { int iVar1; u32 index; int iVar3; int iVar4; iVar4 = 0x1f0; iVar3 = 0x1fc; index = 0; iVar1 = param_1 - 0x40; for (; index < 4; iVar1++, index++) { SetTileType(iVar4++, param_1 + index, 1); SetTileType(iVar3++, iVar1, 2); } } void sub_08018B50(int param_1) { u32 i; int iVar2; u32 j; int tilePosition; struct_080FE320* ptr; ptr = &gUnk_080FE320[param_1]; if ((ptr->entity_idx & 0x80) == 0) { iVar2 = 0x200; } else { iVar2 = 0x219; } tilePosition = (ptr->x >> 4) & 0x3f; tilePosition |= ((ptr->y >> 4) & 0x3f) << 6; tilePosition -= 0x82; for (i = 0; i < 5; tilePosition += 0x40, i++) { for (j = 0; j < 5; j++) { SetTileType(iVar2++, tilePosition + j, 1); } } } void sub_08018BB4(int param_1) { u32 layer; TileEntity tile; struct_080FE320* ptr; u32 position; MemCopy(gUnk_080FEAC8 + param_1, &tile, sizeof(TileEntity)); ptr = &gUnk_080FE320[param_1]; tile.tilePos = (ptr->x >> 4 & 0x3f) | (((ptr->y) >> 4 & 0x3f) << 6); sub_0804B3C4(&tile); if (CheckLocalFlag(tile.localFlag) == 0) { position = tile.tilePos; if ((tile._6 & 1) == 0) { layer = 1; } else { layer = 2; } SetTileType(0x73, position, layer); } } void CreateMinishEntrance(u32 tilePos) { u32 x, y; u32 tileID = 0x185; for (y = 0; y <= 3; y++) { for (x = 0; x <= 4; x++) { SetTileType(tileID++, tilePos + x, 1); } tilePos += 0x40; } } void sub_08018C58(u32 tilePos) { u32 i; for (i = 0; i < 6; i += 2, tilePos += 0x40) { SetTileType(0x260 + i, tilePos, 1); SetTileType(0x261 + i, tilePos + 1, 1); } }