From 15e3fefd80715f258a3331c5d32e53a518ba8d02 Mon Sep 17 00:00:00 2001 From: Flashfyre Date: Tue, 9 Apr 2024 18:48:34 -0400 Subject: [PATCH] Properly reset data when logging out to avoid data leakage --- src/battle-scene.ts | 5 ++++- src/ui/menu-ui-handler.ts | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/battle-scene.ts b/src/battle-scene.ts index daf250b7c71..fd1ba7fee89 100644 --- a/src/battle-scene.ts +++ b/src/battle-scene.ts @@ -591,7 +591,10 @@ export default class BattleScene extends SceneBase { return this.currentBattle.randSeedInt(this, range, min); } - reset(clearScene?: boolean): void { + reset(clearScene: boolean = false, clearData: boolean = false): void { + if (clearData) + this.gameData = new GameData(this); + this.gameMode = gameModes[GameModes.CLASSIC]; this.setSeed(SEED_OVERRIDE || Utils.randomString(24)); diff --git a/src/ui/menu-ui-handler.ts b/src/ui/menu-ui-handler.ts index 26103f51ed8..7c50d9241b7 100644 --- a/src/ui/menu-ui-handler.ts +++ b/src/ui/menu-ui-handler.ts @@ -284,7 +284,7 @@ export default class MenuUiHandler extends MessageUiHandler { if (!res.ok) console.error(`Log out failed (${res.status}: ${res.statusText})`); Utils.setCookie(Utils.sessionIdKey, ''); - updateUserInfo().then(() => this.scene.reset(true)); + updateUserInfo().then(() => this.scene.reset(true, true)); }); }; if (this.scene.currentBattle) {