From 4a96becdf0ea08f796ec645854440df352dac6e8 Mon Sep 17 00:00:00 2001 From: Melledy <121644117+Melledy@users.noreply.github.com> Date: Sun, 19 May 2024 10:25:04 -0700 Subject: [PATCH] Fix error if logging in with a broken lineup --- src/main/java/emu/lunarcore/game/player/Player.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/main/java/emu/lunarcore/game/player/Player.java b/src/main/java/emu/lunarcore/game/player/Player.java index 75ca1df..5d1b6cc 100644 --- a/src/main/java/emu/lunarcore/game/player/Player.java +++ b/src/main/java/emu/lunarcore/game/player/Player.java @@ -901,6 +901,17 @@ public class Player implements Tickable { this.enterScene(GameConstants.START_ENTRY_ID, 0, false); } + // Make sure the current lineup's leader exists + var lineup = this.getCurrentLineup(); + if (lineup.size() == 0) { + lineup.getAvatars().add(GameConstants.TRAILBLAZER_AVATAR_ID); + lineup.setLeader(0); + lineup.save(); + } else if (lineup.getLeader() >= lineup.size()) { + lineup.setLeader(0); + lineup.save(); + } + // Sanity check lineup to prevent the player from getting stuck in a loading screen if they loaded into the game with an avatar that had 0 hp var leader = this.getCurrentLeaderAvatar(); if (leader != null && leader.getCurrentHp(this.getCurrentLineup()) <= 0) {