From 41ea9bbcc5e07aa80b497efaf5be55a32df56b26 Mon Sep 17 00:00:00 2001 From: MelonSpeedruns Date: Tue, 5 Jan 2021 16:48:30 -0500 Subject: [PATCH 1/2] Heart pieces syncing in core --- cores/WindWaker/API/WWAPI.ts | 1 + cores/WindWaker/src/QuestStatus.ts | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/cores/WindWaker/API/WWAPI.ts b/cores/WindWaker/API/WWAPI.ts index 85ff08d..c6d84ff 100644 --- a/cores/WindWaker/API/WWAPI.ts +++ b/cores/WindWaker/API/WWAPI.ts @@ -157,6 +157,7 @@ export interface IQuestStatus { bracelet: Buffer; pirate_charm: Buffer; hero_charm: Buffer; + piece_of_heart: number; owned_charts: Buffer; opened_charts: Buffer; completed_charts: Buffer; diff --git a/cores/WindWaker/src/QuestStatus.ts b/cores/WindWaker/src/QuestStatus.ts index e9cc554..75abd36 100644 --- a/cores/WindWaker/src/QuestStatus.ts +++ b/cores/WindWaker/src/QuestStatus.ts @@ -105,6 +105,13 @@ export class QuestStatus extends JSONTemplate implements API.IQuestStatus { this.emulator.rdramWriteBuffer(0x803C4CC0, flag) } + get piece_of_heart(): number { + return this.emulator.rdramRead16(0x803C4C08); + } + set piece_of_heart(flag: number) { + this.emulator.rdramWrite16(0x803C4C08, flag); + } + /* 0 - Wind's Requiem 1 - Ballad of Gales From 0782526d4b481707ac868aeedb1cd835f739b1ba Mon Sep 17 00:00:00 2001 From: MelonSpeedruns Date: Wed, 6 Jan 2021 12:37:37 -0500 Subject: [PATCH 2/2] Removed unused max_hp values --- cores/WindWaker/API/WWAPI.ts | 3 +-- cores/WindWaker/src/QuestStatus.ts | 4 ++-- cores/WindWaker/src/SaveContext.ts | 7 ------- 3 files changed, 3 insertions(+), 11 deletions(-) diff --git a/cores/WindWaker/API/WWAPI.ts b/cores/WindWaker/API/WWAPI.ts index c6d84ff..2624f86 100644 --- a/cores/WindWaker/API/WWAPI.ts +++ b/cores/WindWaker/API/WWAPI.ts @@ -157,7 +157,7 @@ export interface IQuestStatus { bracelet: Buffer; pirate_charm: Buffer; hero_charm: Buffer; - piece_of_heart: number; + heart_pieces: number; owned_charts: Buffer; opened_charts: Buffer; completed_charts: Buffer; @@ -177,7 +177,6 @@ export interface ISaveContext { inventory: IInventory; questStatus: IQuestStatus; current_hp: number; - max_hp: number; current_mp: number; max_mp: number; } diff --git a/cores/WindWaker/src/QuestStatus.ts b/cores/WindWaker/src/QuestStatus.ts index 75abd36..c75688c 100644 --- a/cores/WindWaker/src/QuestStatus.ts +++ b/cores/WindWaker/src/QuestStatus.ts @@ -105,10 +105,10 @@ export class QuestStatus extends JSONTemplate implements API.IQuestStatus { this.emulator.rdramWriteBuffer(0x803C4CC0, flag) } - get piece_of_heart(): number { + get heart_pieces(): number { return this.emulator.rdramRead16(0x803C4C08); } - set piece_of_heart(flag: number) { + set heart_pieces(flag: number) { this.emulator.rdramWrite16(0x803C4C08, flag); } diff --git a/cores/WindWaker/src/SaveContext.ts b/cores/WindWaker/src/SaveContext.ts index c3ce0b0..1a98e2a 100644 --- a/cores/WindWaker/src/SaveContext.ts +++ b/cores/WindWaker/src/SaveContext.ts @@ -19,13 +19,6 @@ export class SaveContext extends JSONTemplate implements API.ISaveContext { this.questStatus = new CORE.QuestStatus(emu); } - get max_hp(): number { - return this.emulator.rdramRead16(0x803C4C08); - } - set max_hp(flag: number) { - this.emulator.rdramWrite16(0x803C4C08, flag); - } - get current_hp(): number { return this.emulator.rdramRead16(0x803C4C0A); }