From d625fa7eee019505f2e08a3d87d52310c8e7eec8 Mon Sep 17 00:00:00 2001 From: YouHaveTrouble Date: Tue, 3 Jun 2025 07:43:31 +0200 Subject: [PATCH] fix infinite loading screen on new save file --- package.json | 2 +- src/App.vue | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index f71914d..700c4ac 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "adventurers-guild", - "version": "0.15.2", + "version": "0.15.3", "private": true, "scripts": { "dev": "vite", diff --git a/src/App.vue b/src/App.vue index 85aff15..d4ca3a6 100644 --- a/src/App.vue +++ b/src/App.vue @@ -148,8 +148,10 @@ export default defineComponent({ if (deltaTime > 0) return; // not yet time for a new recruit if (Object.keys(this.adventurers).length <= 0) { - const firstAdventurer = this.adventurersDatabase[0]; + const firstAdventurer = this.adventurersDatabase["aldek"]; this.adventurersForHire[firstAdventurer.id] = firstAdventurer; + this.setNextRecruitArrival(currentTimestamp, cooldownModifier) + return; } const newAdventurerForHire = getNewAdventurerForHire(Object.values(this.adventurersDatabase), Object.values(this.adventurers)); @@ -338,11 +340,11 @@ export default defineComponent({ this.loadGame(); this.adventurersDatabase = removeAlreadyHiredAdventurers(this.adventurersDatabase, this.adventurers); - if (Object.keys(this.adventurersForHire).length < this.guild.recruitmentCapacity.getRecruitmentCapacity()) { + if (Object.keys(this.adventurers).length > 0 && Object.keys(this.adventurersForHire).length < this.guild.recruitmentCapacity.getRecruitmentCapacity()) { // check if more time passed than next recruit arrival and simulate next recruit arrivals up to now const now = new Date(); if (this.nextRecruitArrival.getTime() < now.getTime()) { - const slotsLeft = 2 - Object.keys(this.adventurersForHire).length; + const slotsLeft = this.guild.recruitmentCapacity.getRecruitmentCapacity() - Object.keys(this.adventurersForHire).length; for (let i = 0; i < slotsLeft; i++) { await this.checkForNewRecruit(this.nextRecruitArrival.getTime()); }