diff options
| author | Prakxo <87568477+Prakxo@users.noreply.github.com> | 2024-04-21 17:08:00 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-21 08:08:00 -0700 |
| commit | 202737c1f0e252059f16a45dcda0c8a7b3dde78c (patch) | |
| tree | 29625318bde9f28374ed17ba5a2b9d649f900ccf /src/code/m_scene_ftr.c | |
| parent | 30aaa1356fb359c25963fc1d2384a2a928bde32d (diff) | |
m_scene_ftr OK (#176)
* 1 byte off..
* m_scene_ftr OK
* newline
* warnings
Diffstat (limited to 'src/code/m_scene_ftr.c')
| -rw-r--r-- | src/code/m_scene_ftr.c | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/code/m_scene_ftr.c b/src/code/m_scene_ftr.c new file mode 100644 index 0000000..7e54fc0 --- /dev/null +++ b/src/code/m_scene_ftr.c @@ -0,0 +1,44 @@ +#include "m_scene_ftr.h" +#include "overlays/gamestates/ovl_play/m_play.h" + +void mScn_Dma2Bank(ObjectExchangeBank* exchange, s32 id, RomOffset vrom, size_t size) { + + if (vrom != NULL) { + DmaMgr_RequestSyncDebug(exchange->status[id + 3].unk14.vram, vrom, size, "../m_scene_ftr.c", 52); + } +} + +void mScn_KeepMyRoomBankNew(ObjectExchangeBank* exchange, s16 id, size_t size) { + ObjectStatus* bank = exchange->status + exchange->num; + + bank->id = id; + bank->vram = (void*)exchange->unk1800; + bank->segment = (void*)exchange->unk1800; + bank->size = size; + + if (exchange->num < (OBJECT_EXCHANGE_BANK_MAX - 1)) { + exchange->unk1800 = ALIGN16(exchange->unk1800 + size); + exchange->num++; + } +} + +void mScn_ObtainCarpetBank(Game_Play* play) { + ObjectExchangeBank* exchange = &play->objectExchangeBank; + s32 i; + + for (i = 0; i < 2; i++) { + mScn_KeepMyRoomBankNew(exchange, 18, 0x2020); + } + + for (i = 0; i < 2; i++) { + mScn_KeepMyRoomBankNew(exchange, 19, 0x1020); + } +} + +s32 mScn_ObtainFurnitureBank(UNUSED Game_Play* play, s32 bank) { + common_data.clip.unk_020 = bank; +} + +void mScn_ObtainMyRoomBank(Game_Play* play) { + mScn_ObtainCarpetBank(play); +} |
