mirror of
https://github.com/YouHaveTrouble/GuildMaster.git
synced 2026-05-12 06:26:59 +00:00
fix remaining typescript errors
This commit is contained in:
@@ -3,10 +3,13 @@ export class Guild {
|
||||
level: number;
|
||||
displayUpgradeCost: number|string;
|
||||
|
||||
upgradeCost: number|null = null;
|
||||
|
||||
constructor(level: number, gold: number) {
|
||||
this.gold = gold;
|
||||
this.level = level;
|
||||
this.displayUpgradeCost = this.getUpgradeCost() ?? "Max level";
|
||||
this.upgradeCost = this.getUpgradeCost();
|
||||
}
|
||||
|
||||
upgrade(): void {
|
||||
@@ -27,6 +30,10 @@ export class Guild {
|
||||
getUpgradeCost(): number|null {
|
||||
return upgradeCosts[this.level] ?? null;
|
||||
}
|
||||
|
||||
isMaxLevel(): boolean {
|
||||
return this.level >= 7;
|
||||
}
|
||||
}
|
||||
|
||||
const upgradeCosts = {
|
||||
|
||||
@@ -48,17 +48,23 @@ export default defineComponent({
|
||||
name: "AdventurerMiniComponent",
|
||||
components: {AdventurerTile},
|
||||
emits: [ "freeAdventurer", "hireAdventurer" ],
|
||||
data() {
|
||||
data: () => {
|
||||
return {
|
||||
selection: false,
|
||||
}
|
||||
},
|
||||
props: {
|
||||
adventurer: {
|
||||
type: Object as PropType<Adventurer>,
|
||||
type: Object as PropType<Adventurer|any>,
|
||||
default() {
|
||||
return {} as Adventurer;
|
||||
},
|
||||
},
|
||||
allAdventurers: {
|
||||
type: Object as PropType<{[key: string]: Adventurer}>,
|
||||
default() {
|
||||
return {} as {[key: string]: Adventurer};
|
||||
},
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
</button>
|
||||
</div>
|
||||
<div class="progressWrap">
|
||||
<span>{{ this.progressPercentage }}</span>
|
||||
<span>{{ progressPercentage }}</span>
|
||||
<span class="progress"></span>
|
||||
|
||||
</div>
|
||||
@@ -50,7 +50,7 @@ export default defineComponent({
|
||||
components: {AdventurerComponent},
|
||||
props: {
|
||||
missive: {
|
||||
type: Object as PropType<Quest>,
|
||||
type: Object as PropType<Quest|any>,
|
||||
default() {
|
||||
return new Quest("0", QuestRank.F, "", "", 1, 0, 0) as Quest;
|
||||
},
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
</span>
|
||||
<span
|
||||
title="Dismiss"
|
||||
:class="{disabled: Object.keys(this.adventurers).length <= 0}"
|
||||
:class="{disabled: Object.keys(adventurers).length <= 0}"
|
||||
@click="dismissAdventurer()"
|
||||
>
|
||||
✗
|
||||
@@ -96,7 +96,7 @@ export default defineComponent({
|
||||
window.localStorage.setItem("currentlyForHire", adventurer.id);
|
||||
|
||||
},
|
||||
hireAdventurer(adventurer: Adventurer): void {
|
||||
hireAdventurer(adventurer: Adventurer|any): void {
|
||||
this.adventurers[adventurer.id] = adventurer;
|
||||
this.currentlyForHire = null;
|
||||
window.localStorage.removeItem("currentlyForHire");
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
</section>
|
||||
<section class="upgrade">
|
||||
<p>Guild level: {{ guild.level }}</p>
|
||||
<button :disabled="guild.gold < guild.getUpgradeCost()" @click="guild.upgrade()">
|
||||
<button :disabled="guild.upgradeCost ? guild.gold < guild.upgradeCost : true" @click="guild.upgrade()">
|
||||
<span>Upgrade guild level</span><br>
|
||||
<span>({{ guild.displayUpgradeCost }})</span>
|
||||
</button>
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
:key="key"
|
||||
:adventurers="adventurers"
|
||||
:missive="missive"
|
||||
@click="finalizeQuest(missive)"
|
||||
@click="finalizeQuest((missive))"
|
||||
/>
|
||||
</section>
|
||||
</div>
|
||||
@@ -125,7 +125,8 @@ export default defineComponent({
|
||||
},
|
||||
emits: [ 'finalizeQuest', 'wipeSave', 'recruitActionTaken'],
|
||||
methods: {
|
||||
finalizeQuest(quest: Quest) {
|
||||
// This is a workaround for vue not reporting Quest as Quest in v-for
|
||||
finalizeQuest(quest: any|Quest): void {
|
||||
if (quest.progressPoints < quest.maxProgress) return;
|
||||
this.$emit('finalizeQuest', quest)
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user