diff --git a/src/App.vue b/src/App.vue
index 2b2e387..85aff15 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -54,6 +54,12 @@ import {version} from "@/../package.json";
@finalizeQuest="finalizeQuest($event)"
@hireAdventurer="recruitAdventurer($event)"
@dismissAdventurer="dismissRecruit($event)"
+ @findNewRecruit="() => {
+ const newAdventurerForHire = getNewAdventurerForHire(Object.values(adventurersDatabase), Object.values(adventurers));
+ if (newAdventurerForHire === null) return;
+ adventurersForHire[newAdventurerForHire.id] = newAdventurerForHire;
+ setNextRecruitArrival(new Date().getTime())
+ }"
/>
diff --git a/src/components/AdventurerRecruitment.vue b/src/components/AdventurerRecruitment.vue
index 0ae416a..543a35b 100644
--- a/src/components/AdventurerRecruitment.vue
+++ b/src/components/AdventurerRecruitment.vue
@@ -30,6 +30,13 @@
No one applied as of now. Check back later!
+
+
+
@@ -39,6 +46,7 @@ import {defineComponent, type PropType} from "vue";
import AdventurerTile from "@/components/AdventurerTile.vue";
import type {Guild} from "@/classes/Guild";
import type {Adventurer} from "@/classes/Adventurer";
+import {formatGold} from "@/classes/NumberMagic";
export default defineComponent({
name: "RecruitView",
@@ -50,8 +58,16 @@ export default defineComponent({
canRecruitMore() {
return Object.keys(this.adventurersForHire).length < this.guild.adventurerCapacity.getAdventurerCapacity();
},
+ newRecruitCost(): number {
+ const guildLevel = this.guild.level;
+ return Math.max(500, 500 * Math.pow(2, guildLevel - 1));
+ },
+ recruitSlotsFilled(): boolean {
+ return Object.keys(this.adventurersForHire).length >= this.guild.recruitmentCapacity.getRecruitmentCapacity();
+ }
},
methods: {
+ formatGold,
hireAdventurer(adventurer: Adventurer): void {
if (!this.canRecruitMore) return;
this.$emit("hireAdventurer", adventurer);
@@ -63,6 +79,10 @@ export default defineComponent({
previewAdventurer(adventurer: Adventurer): void {
this.$emit("previewAdventurer", adventurer);
},
+ findNewRecruit(): void {
+ if (!this.canRecruitMore) return;
+ this.$emit("findNewRecruit");
+ },
},
props: {
guild: {
@@ -74,11 +94,16 @@ export default defineComponent({
required: true,
},
},
- emits: ["dismissAdventurer", "hireAdventurer", "previewAdventurer"],
+ emits: ["dismissAdventurer", "hireAdventurer", "previewAdventurer", "findNewRecruit"],
})