From 0bee6092d772931e2d0891714be3f9c1a7fe5091 Mon Sep 17 00:00:00 2001 From: "Matthew D. Steele" Date: Sat, 16 Mar 2024 20:46:44 -0400 Subject: [PATCH] Add placeholder data for missing sewer rooms --- src/room.asm | 12 +++++ src/room.inc | 4 ++ src/rooms/factory_east.asm | 2 +- src/rooms/sewer_ascent.asm | 2 +- src/rooms/sewer_basin.asm | 2 +- src/rooms/sewer_east.asm | 102 +++++++++++++++++++++++++++++++++++++ src/rooms/sewer_east.bg | 30 +++++++++++ src/rooms/sewer_faucet.asm | 79 ++++++++++++++++++++++++++++ src/rooms/sewer_faucet.bg | 20 ++++++++ src/rooms/sewer_flower.asm | 2 +- src/rooms/sewer_north.asm | 79 ++++++++++++++++++++++++++++ src/rooms/sewer_north.bg | 20 ++++++++ src/rooms/sewer_pipe.asm | 79 ++++++++++++++++++++++++++++ src/rooms/sewer_pipe.bg | 20 ++++++++ src/rooms/sewer_west.asm | 4 +- 15 files changed, 451 insertions(+), 6 deletions(-) create mode 100644 src/rooms/sewer_east.asm create mode 100644 src/rooms/sewer_east.bg create mode 100644 src/rooms/sewer_faucet.asm create mode 100644 src/rooms/sewer_faucet.bg create mode 100644 src/rooms/sewer_north.asm create mode 100644 src/rooms/sewer_north.bg create mode 100644 src/rooms/sewer_pipe.asm create mode 100644 src/rooms/sewer_pipe.bg diff --git a/src/room.asm b/src/room.asm index f4eebd12..710b99e6 100644 --- a/src/room.asm +++ b/src/room.asm @@ -136,7 +136,11 @@ .IMPORT DataC_Prison_Upper_sRoom .IMPORT DataC_Sewer_Ascent_sRoom .IMPORT DataC_Sewer_Basin_sRoom +.IMPORT DataC_Sewer_East_sRoom +.IMPORT DataC_Sewer_Faucet_sRoom .IMPORT DataC_Sewer_Flower_sRoom +.IMPORT DataC_Sewer_North_sRoom +.IMPORT DataC_Sewer_Pipe_sRoom .IMPORT DataC_Sewer_Pool_sRoom .IMPORT DataC_Sewer_South_sRoom .IMPORT DataC_Sewer_Trap_sRoom @@ -398,7 +402,11 @@ _LoadNewRoom: d_entry table, PrisonUpper, DataC_Prison_Upper_sRoom d_entry table, SewerAscent, DataC_Sewer_Ascent_sRoom d_entry table, SewerBasin, DataC_Sewer_Basin_sRoom + d_entry table, SewerEast, DataC_Sewer_East_sRoom + d_entry table, SewerFaucet, DataC_Sewer_Faucet_sRoom d_entry table, SewerFlower, DataC_Sewer_Flower_sRoom + d_entry table, SewerNorth, DataC_Sewer_North_sRoom + d_entry table, SewerPipe, DataC_Sewer_Pipe_sRoom d_entry table, SewerPool, DataC_Sewer_Pool_sRoom d_entry table, SewerSouth, DataC_Sewer_South_sRoom d_entry table, SewerTrap, DataC_Sewer_Trap_sRoom @@ -587,7 +595,11 @@ _PrisonMusic: d_byte PrisonUpper, bRoomMusic::Prison d_byte SewerAscent, eMusic::Silence d_byte SewerBasin, eMusic::Silence + d_byte SewerEast, eMusic::Silence + d_byte SewerFaucet, eMusic::Silence d_byte SewerFlower, eMusic::Silence + d_byte SewerNorth, eMusic::Silence + d_byte SewerPipe, eMusic::Silence d_byte SewerPool, eMusic::Silence d_byte SewerSouth, eMusic::Silence d_byte SewerTrap, eMusic::Silence diff --git a/src/room.inc b/src/room.inc index be242c5a..7d1f0b9f 100644 --- a/src/room.inc +++ b/src/room.inc @@ -146,7 +146,11 @@ kMaxPassages = 8 PrisonUpper SewerAscent SewerBasin + SewerEast + SewerFaucet SewerFlower + SewerNorth + SewerPipe SewerPool SewerSouth SewerTrap diff --git a/src/rooms/factory_east.asm b/src/rooms/factory_east.asm index 2013720a..c2e05f03 100644 --- a/src/rooms/factory_east.asm +++ b/src/rooms/factory_east.asm @@ -117,7 +117,7 @@ _Passages_sPassage_arr: D_END D_STRUCT sPassage d_byte Exit_bPassage, ePassage::Top | 0 - d_byte Destination_eRoom, eRoom::FactoryEast ; TODO + d_byte Destination_eRoom, eRoom::SewerFaucet d_byte SpawnBlock_u8, 13 d_byte SpawnAdjust_byte, $e9 D_END diff --git a/src/rooms/sewer_ascent.asm b/src/rooms/sewer_ascent.asm index 9b317e2f..c86c1553 100644 --- a/src/rooms/sewer_ascent.asm +++ b/src/rooms/sewer_ascent.asm @@ -100,7 +100,7 @@ _Passages_sPassage_arr: D_END D_STRUCT sPassage d_byte Exit_bPassage, ePassage::Bottom | 0 - d_byte Destination_eRoom, eRoom::SewerAscent ; TODO SewerEast + d_byte Destination_eRoom, eRoom::SewerEast d_byte SpawnBlock_u8, 8 d_byte SpawnAdjust_byte, $29 D_END diff --git a/src/rooms/sewer_basin.asm b/src/rooms/sewer_basin.asm index a4591da9..ce5e6b59 100644 --- a/src/rooms/sewer_basin.asm +++ b/src/rooms/sewer_basin.asm @@ -239,7 +239,7 @@ _Passages_sPassage_arr: D_END D_STRUCT sPassage d_byte Exit_bPassage, ePassage::Top | 0 - d_byte Destination_eRoom, eRoom::SewerBasin ; TODO SewerEast + d_byte Destination_eRoom, eRoom::SewerEast d_byte SpawnBlock_u8, 7 d_byte SpawnAdjust_byte, $01 D_END diff --git a/src/rooms/sewer_east.asm b/src/rooms/sewer_east.asm new file mode 100644 index 00000000..746d8cd3 --- /dev/null +++ b/src/rooms/sewer_east.asm @@ -0,0 +1,102 @@ +;;;=========================================================================;;; +;;; Copyright 2022 Matthew D. Steele ;;; +;;; ;;; +;;; This file is part of Annalog. ;;; +;;; ;;; +;;; Annalog is free software: you can redistribute it and/or modify it ;;; +;;; under the terms of the GNU General Public License as published by the ;;; +;;; Free Software Foundation, either version 3 of the License, or (at your ;;; +;;; option) any later version. ;;; +;;; ;;; +;;; Annalog is distributed in the hope that it will be useful, but WITHOUT ;;; +;;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ;;; +;;; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ;;; +;;; for more details. ;;; +;;; ;;; +;;; You should have received a copy of the GNU General Public License along ;;; +;;; with Annalog. If not, see . ;;; +;;;=========================================================================;;; + +.INCLUDE "../macros.inc" +.INCLUDE "../platform.inc" +.INCLUDE "../room.inc" + +.IMPORT DataA_Room_Sewer_sTileset +.IMPORT Data_Empty_sActor_arr +.IMPORT Data_Empty_sDevice_arr +.IMPORT FuncA_Room_SewagePushAvatar +.IMPORT Func_Noop +.IMPORT Ppu_ChrObjSewer + +;;;=========================================================================;;; + +.SEGMENT "PRGC_Sewer" + +.EXPORT DataC_Sewer_East_sRoom +.PROC DataC_Sewer_East_sRoom + D_STRUCT sRoom + d_byte MinScrollX_u8, $10 + d_word MaxScrollX_u16, $0010 + d_byte Flags_bRoom, bRoom::Tall | eArea::Sewer + d_byte MinimapStartRow_u8, 5 + d_byte MinimapStartCol_u8, 22 + d_addr TerrainData_ptr, _TerrainData + d_byte NumMachines_u8, 0 + d_addr Machines_sMachine_arr_ptr, 0 + d_byte Chr18Bank_u8, <.bank(Ppu_ChrObjSewer) + d_addr Ext_sRoomExt_ptr, _Ext_sRoomExt + D_END +_Ext_sRoomExt: + D_STRUCT sRoomExt + d_addr Terrain_sTileset_ptr, DataA_Room_Sewer_sTileset + d_addr Platforms_sPlatform_arr_ptr, _Platforms_sPlatform_arr + d_addr Actors_sActor_arr_ptr, Data_Empty_sActor_arr + d_addr Devices_sDevice_arr_ptr, Data_Empty_sDevice_arr + d_addr Passages_sPassage_arr_ptr, _Passages_sPassage_arr + d_addr Enter_func_ptr, Func_Noop + d_addr FadeIn_func_ptr, Func_Noop + d_addr Tick_func_ptr, FuncA_Room_SewagePushAvatar + d_addr Draw_func_ptr, Func_Noop + D_END +_TerrainData: +: .incbin "out/rooms/sewer_east.room" + .assert * - :- = 18 * 24, error +_Platforms_sPlatform_arr: +: D_STRUCT sPlatform + d_byte Type_ePlatform, ePlatform::Water + d_word WidthPx_u16, $40 + d_byte HeightPx_u8, $20 + d_word Left_i16, $0070 + d_word Top_i16, $0074 + D_END + .assert * - :- <= kMaxPlatforms * .sizeof(sPlatform), error + .byte ePlatform::None +_Passages_sPassage_arr: +: D_STRUCT sPassage + d_byte Exit_bPassage, ePassage::Western | 0 + d_byte Destination_eRoom, eRoom::SewerNorth + d_byte SpawnBlock_u8, 7 + d_byte SpawnAdjust_byte, 0 + D_END + D_STRUCT sPassage + d_byte Exit_bPassage, ePassage::Eastern | 0 + d_byte Destination_eRoom, eRoom::SewerFlower + d_byte SpawnBlock_u8, 9 + d_byte SpawnAdjust_byte, 0 + D_END + D_STRUCT sPassage + d_byte Exit_bPassage, ePassage::Top | 0 + d_byte Destination_eRoom, eRoom::SewerAscent + d_byte SpawnBlock_u8, 9 + d_byte SpawnAdjust_byte, $f1 + D_END + D_STRUCT sPassage + d_byte Exit_bPassage, ePassage::Bottom | 0 + d_byte Destination_eRoom, eRoom::SewerBasin + d_byte SpawnBlock_u8, 7 + d_byte SpawnAdjust_byte, $c1 + D_END + .assert * - :- <= kMaxPassages * .sizeof(sPassage), error +.ENDPROC + +;;;=========================================================================;;; diff --git a/src/rooms/sewer_east.bg b/src/rooms/sewer_east.bg new file mode 100644 index 00000000..29a8f93f --- /dev/null +++ b/src/rooms/sewer_east.bg @@ -0,0 +1,30 @@ +@BG 0 0 0 18x24 +>sewer_0 +>sewer_1 +>sewer_2 +>sewer_4 + +DCDCDCDCDCDCDCDBCJCIDADCDCDCDCDCDCDC +DCDCDCDCDB CGCNCMCH DADCDCDCDC +DCDCDB CIDADBCJ DADCDC +DCDCDB CI CJ DADCDC +DCDCDB CI CJDD DADCDC + CI CJ DD DADCDC + CI CJ DADCDC + DDBMBPBPBNDD +DCDCDB DD DD +DCDCDB DADCDCDCDCDCDCDB +DCDCDB DADCDC +DCDCDB DADCDC +DCDCDB DADB DADCDC +DCDCDB DADCDC +DCDCDB DADB DADCDC +DCDCDB DADCDC +DCDCDB DADB DADCDC +DCDCDB CB DADCDC +DCDCDB CC DADB DADCDC +DCDCDB CC DADCDC +DCDCDB CC DADB DADCDC +DCDCDB CC DADCDC +DCDCDCDCDB CC DADCDCDCDCDCDCDC +DCDCDCDCDCDB CC DADCDCDCDCDCDCDCDC diff --git a/src/rooms/sewer_faucet.asm b/src/rooms/sewer_faucet.asm new file mode 100644 index 00000000..9315c772 --- /dev/null +++ b/src/rooms/sewer_faucet.asm @@ -0,0 +1,79 @@ +;;;=========================================================================;;; +;;; Copyright 2022 Matthew D. Steele ;;; +;;; ;;; +;;; This file is part of Annalog. ;;; +;;; ;;; +;;; Annalog is free software: you can redistribute it and/or modify it ;;; +;;; under the terms of the GNU General Public License as published by the ;;; +;;; Free Software Foundation, either version 3 of the License, or (at your ;;; +;;; option) any later version. ;;; +;;; ;;; +;;; Annalog is distributed in the hope that it will be useful, but WITHOUT ;;; +;;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ;;; +;;; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ;;; +;;; for more details. ;;; +;;; ;;; +;;; You should have received a copy of the GNU General Public License along ;;; +;;; with Annalog. If not, see . ;;; +;;;=========================================================================;;; + +.INCLUDE "../macros.inc" +.INCLUDE "../room.inc" + +.IMPORT DataA_Room_Sewer_sTileset +.IMPORT Data_Empty_sActor_arr +.IMPORT Data_Empty_sDevice_arr +.IMPORT Data_Empty_sPlatform_arr +.IMPORT Func_Noop +.IMPORT Ppu_ChrObjSewer + +;;;=========================================================================;;; + +.SEGMENT "PRGC_Sewer" + +.EXPORT DataC_Sewer_Faucet_sRoom +.PROC DataC_Sewer_Faucet_sRoom + D_STRUCT sRoom + d_byte MinScrollX_u8, $0 + d_word MaxScrollX_u16, $0 + d_byte Flags_bRoom, eArea::Sewer + d_byte MinimapStartRow_u8, 5 + d_byte MinimapStartCol_u8, 16 + d_addr TerrainData_ptr, _TerrainData + d_byte NumMachines_u8, 0 + d_addr Machines_sMachine_arr_ptr, 0 + d_byte Chr18Bank_u8, <.bank(Ppu_ChrObjSewer) + d_addr Ext_sRoomExt_ptr, _Ext_sRoomExt + D_END +_Ext_sRoomExt: + D_STRUCT sRoomExt + d_addr Terrain_sTileset_ptr, DataA_Room_Sewer_sTileset + d_addr Platforms_sPlatform_arr_ptr, Data_Empty_sPlatform_arr + d_addr Actors_sActor_arr_ptr, Data_Empty_sActor_arr + d_addr Devices_sDevice_arr_ptr, Data_Empty_sDevice_arr + d_addr Passages_sPassage_arr_ptr, _Passages_sPassage_arr + d_addr Enter_func_ptr, Func_Noop + d_addr FadeIn_func_ptr, Func_Noop + d_addr Tick_func_ptr, Func_Noop + d_addr Draw_func_ptr, Func_Noop + D_END +_TerrainData: +: .incbin "out/rooms/sewer_faucet.room" + .assert * - :- = 17 * 15, error +_Passages_sPassage_arr: +: D_STRUCT sPassage + d_byte Exit_bPassage, ePassage::Eastern | 0 + d_byte Destination_eRoom, eRoom::SewerPipe + d_byte SpawnBlock_u8, 8 + d_byte SpawnAdjust_byte, 0 + D_END + D_STRUCT sPassage + d_byte Exit_bPassage, ePassage::Bottom | 0 + d_byte Destination_eRoom, eRoom::FactoryEast + d_byte SpawnBlock_u8, 12 + d_byte SpawnAdjust_byte, $a1 + D_END + .assert * - :- <= kMaxPassages * .sizeof(sPassage), error +.ENDPROC + +;;;=========================================================================;;; diff --git a/src/rooms/sewer_faucet.bg b/src/rooms/sewer_faucet.bg new file mode 100644 index 00000000..715f60c4 --- /dev/null +++ b/src/rooms/sewer_faucet.bg @@ -0,0 +1,20 @@ +@BG 0 0 0 17x15 +>sewer_0 +>sewer_1 +>sewer_4 + +CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC +CB CACC +CB CACC +CB CACC +CB CACC +CB CACC +CB +CB +CB +CB CACCCC +CB CACC +CB CACB CACC +CB CACC +COCOCOCOCOCOCOCOCO COCO +COCOCOCOCOCOCOCOCOCO COCOCO diff --git a/src/rooms/sewer_flower.asm b/src/rooms/sewer_flower.asm index 18bd4d7c..ef6e97e0 100644 --- a/src/rooms/sewer_flower.asm +++ b/src/rooms/sewer_flower.asm @@ -173,7 +173,7 @@ _Devices_sDevice_arr: _Passages_sPassage_arr: : D_STRUCT sPassage d_byte Exit_bPassage, ePassage::Western | 0 - d_byte Destination_eRoom, eRoom::SewerFlower ; TODO SewerEast + d_byte Destination_eRoom, eRoom::SewerEast d_byte SpawnBlock_u8, 10 d_byte SpawnAdjust_byte, 0 D_END diff --git a/src/rooms/sewer_north.asm b/src/rooms/sewer_north.asm new file mode 100644 index 00000000..e6afdc8d --- /dev/null +++ b/src/rooms/sewer_north.asm @@ -0,0 +1,79 @@ +;;;=========================================================================;;; +;;; Copyright 2022 Matthew D. Steele ;;; +;;; ;;; +;;; This file is part of Annalog. ;;; +;;; ;;; +;;; Annalog is free software: you can redistribute it and/or modify it ;;; +;;; under the terms of the GNU General Public License as published by the ;;; +;;; Free Software Foundation, either version 3 of the License, or (at your ;;; +;;; option) any later version. ;;; +;;; ;;; +;;; Annalog is distributed in the hope that it will be useful, but WITHOUT ;;; +;;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ;;; +;;; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ;;; +;;; for more details. ;;; +;;; ;;; +;;; You should have received a copy of the GNU General Public License along ;;; +;;; with Annalog. If not, see . ;;; +;;;=========================================================================;;; + +.INCLUDE "../macros.inc" +.INCLUDE "../room.inc" + +.IMPORT DataA_Room_Sewer_sTileset +.IMPORT Data_Empty_sActor_arr +.IMPORT Data_Empty_sDevice_arr +.IMPORT Data_Empty_sPlatform_arr +.IMPORT Func_Noop +.IMPORT Ppu_ChrObjSewer + +;;;=========================================================================;;; + +.SEGMENT "PRGC_Sewer" + +.EXPORT DataC_Sewer_North_sRoom +.PROC DataC_Sewer_North_sRoom + D_STRUCT sRoom + d_byte MinScrollX_u8, $10 + d_word MaxScrollX_u16, $110 + d_byte Flags_bRoom, eArea::Sewer + d_byte MinimapStartRow_u8, 5 + d_byte MinimapStartCol_u8, 20 + d_addr TerrainData_ptr, _TerrainData + d_byte NumMachines_u8, 0 + d_addr Machines_sMachine_arr_ptr, 0 + d_byte Chr18Bank_u8, <.bank(Ppu_ChrObjSewer) + d_addr Ext_sRoomExt_ptr, _Ext_sRoomExt + D_END +_Ext_sRoomExt: + D_STRUCT sRoomExt + d_addr Terrain_sTileset_ptr, DataA_Room_Sewer_sTileset + d_addr Platforms_sPlatform_arr_ptr, Data_Empty_sPlatform_arr + d_addr Actors_sActor_arr_ptr, Data_Empty_sActor_arr + d_addr Devices_sDevice_arr_ptr, Data_Empty_sDevice_arr + d_addr Passages_sPassage_arr_ptr, _Passages_sPassage_arr + d_addr Enter_func_ptr, Func_Noop + d_addr FadeIn_func_ptr, Func_Noop + d_addr Tick_func_ptr, Func_Noop + d_addr Draw_func_ptr, Func_Noop + D_END +_TerrainData: +: .incbin "out/rooms/sewer_north.room" + .assert * - :- = 34 * 15, error +_Passages_sPassage_arr: +: D_STRUCT sPassage + d_byte Exit_bPassage, ePassage::Western | 0 + d_byte Destination_eRoom, eRoom::SewerWest + d_byte SpawnBlock_u8, 8 + d_byte SpawnAdjust_byte, 0 + D_END + D_STRUCT sPassage + d_byte Exit_bPassage, ePassage::Eastern | 0 + d_byte Destination_eRoom, eRoom::SewerEast + d_byte SpawnBlock_u8, 8 + d_byte SpawnAdjust_byte, 0 + D_END + .assert * - :- <= kMaxPassages * .sizeof(sPassage), error +.ENDPROC + +;;;=========================================================================;;; diff --git a/src/rooms/sewer_north.bg b/src/rooms/sewer_north.bg new file mode 100644 index 00000000..48886480 --- /dev/null +++ b/src/rooms/sewer_north.bg @@ -0,0 +1,20 @@ +@BG 0 0 0 34x15 +>sewer_0 +>sewer_1 +>sewer_4 + +CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC +CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC +CCCCCB CACCCC +CCCCCB CACCCC +CCCCCB CACCCC +CCCCCB CACCCC + + + +CCCCCB CACCCC +CCCCCB CACCCC +CCCCCB CACB CACB CACB CACB CACB CACB CACCCC +CCCCCB CACCCC +CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC +CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC diff --git a/src/rooms/sewer_pipe.asm b/src/rooms/sewer_pipe.asm new file mode 100644 index 00000000..ef206027 --- /dev/null +++ b/src/rooms/sewer_pipe.asm @@ -0,0 +1,79 @@ +;;;=========================================================================;;; +;;; Copyright 2022 Matthew D. Steele ;;; +;;; ;;; +;;; This file is part of Annalog. ;;; +;;; ;;; +;;; Annalog is free software: you can redistribute it and/or modify it ;;; +;;; under the terms of the GNU General Public License as published by the ;;; +;;; Free Software Foundation, either version 3 of the License, or (at your ;;; +;;; option) any later version. ;;; +;;; ;;; +;;; Annalog is distributed in the hope that it will be useful, but WITHOUT ;;; +;;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ;;; +;;; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ;;; +;;; for more details. ;;; +;;; ;;; +;;; You should have received a copy of the GNU General Public License along ;;; +;;; with Annalog. If not, see . ;;; +;;;=========================================================================;;; + +.INCLUDE "../macros.inc" +.INCLUDE "../room.inc" + +.IMPORT DataA_Room_Sewer_sTileset +.IMPORT Data_Empty_sActor_arr +.IMPORT Data_Empty_sDevice_arr +.IMPORT Data_Empty_sPlatform_arr +.IMPORT Func_Noop +.IMPORT Ppu_ChrObjSewer + +;;;=========================================================================;;; + +.SEGMENT "PRGC_Sewer" + +.EXPORT DataC_Sewer_Pipe_sRoom +.PROC DataC_Sewer_Pipe_sRoom + D_STRUCT sRoom + d_byte MinScrollX_u8, $10 + d_word MaxScrollX_u16, $110 + d_byte Flags_bRoom, eArea::Sewer + d_byte MinimapStartRow_u8, 5 + d_byte MinimapStartCol_u8, 17 + d_addr TerrainData_ptr, _TerrainData + d_byte NumMachines_u8, 0 + d_addr Machines_sMachine_arr_ptr, 0 + d_byte Chr18Bank_u8, <.bank(Ppu_ChrObjSewer) + d_addr Ext_sRoomExt_ptr, _Ext_sRoomExt + D_END +_Ext_sRoomExt: + D_STRUCT sRoomExt + d_addr Terrain_sTileset_ptr, DataA_Room_Sewer_sTileset + d_addr Platforms_sPlatform_arr_ptr, Data_Empty_sPlatform_arr + d_addr Actors_sActor_arr_ptr, Data_Empty_sActor_arr + d_addr Devices_sDevice_arr_ptr, Data_Empty_sDevice_arr + d_addr Passages_sPassage_arr_ptr, _Passages_sPassage_arr + d_addr Enter_func_ptr, Func_Noop + d_addr FadeIn_func_ptr, Func_Noop + d_addr Tick_func_ptr, Func_Noop + d_addr Draw_func_ptr, Func_Noop + D_END +_TerrainData: +: .incbin "out/rooms/sewer_pipe.room" + .assert * - :- = 34 * 15, error +_Passages_sPassage_arr: +: D_STRUCT sPassage + d_byte Exit_bPassage, ePassage::Western | 0 + d_byte Destination_eRoom, eRoom::SewerFaucet + d_byte SpawnBlock_u8, 8 + d_byte SpawnAdjust_byte, 0 + D_END + D_STRUCT sPassage + d_byte Exit_bPassage, ePassage::Eastern | 0 + d_byte Destination_eRoom, eRoom::SewerWest + d_byte SpawnBlock_u8, 8 + d_byte SpawnAdjust_byte, 0 + D_END + .assert * - :- <= kMaxPassages * .sizeof(sPassage), error +.ENDPROC + +;;;=========================================================================;;; diff --git a/src/rooms/sewer_pipe.bg b/src/rooms/sewer_pipe.bg new file mode 100644 index 00000000..02951086 --- /dev/null +++ b/src/rooms/sewer_pipe.bg @@ -0,0 +1,20 @@ +@BG 0 0 0 34x15 +>sewer_0 +>sewer_1 +>sewer_4 + +CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC +CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC +CCCCCB CACCCC +CCCCCB CACCCC +CCCCCB CACCCC +CCCCCB CACCCC + + + +CCCCCB CACCCC +CCCCCB CACCCC +CCCCCB CACB CACB CACCCC +CCCCCB CACCCC +CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC +CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC diff --git a/src/rooms/sewer_west.asm b/src/rooms/sewer_west.asm index 2df2a7a0..9d3f7763 100644 --- a/src/rooms/sewer_west.asm +++ b/src/rooms/sewer_west.asm @@ -167,13 +167,13 @@ _Devices_sDevice_arr: _Passages_sPassage_arr: : D_STRUCT sPassage d_byte Exit_bPassage, ePassage::Western | 0 - d_byte Destination_eRoom, eRoom::SewerWest ; TODO + d_byte Destination_eRoom, eRoom::SewerPipe d_byte SpawnBlock_u8, 7 d_byte SpawnAdjust_byte, 0 D_END D_STRUCT sPassage d_byte Exit_bPassage, ePassage::Eastern | 0 - d_byte Destination_eRoom, eRoom::SewerWest ; TODO SewerNorth + d_byte Destination_eRoom, eRoom::SewerNorth d_byte SpawnBlock_u8, 5 d_byte SpawnAdjust_byte, 0 D_END