autorefresh on reserve update

This commit is contained in:
peter
2021-01-31 18:36:36 +01:00
parent c2d2917de3
commit 75c48273ff
5 changed files with 25 additions and 16 deletions
+2 -2
View File
@@ -16,6 +16,6 @@ export class IItemManager{
decayTokens: (tier: Tiers, amount?:number) => Promise<void> decayTokens: (tier: Tiers, amount?:number) => Promise<void>
decayTokensOfCharacter: (tier: Tiers, character:Character, amount?:number) => Promise<void> decayTokensOfCharacter: (tier: Tiers, character:Character, amount?:number) => Promise<void>
increaseReserve: (token: Character & SRToken & Item) => Promise<void> increaseReserve: (token: Character & SRToken & Item, raidid?:number) => Promise<void>
decreaseReserve: (token: Character & SRToken & Item) => Promise<void> decreaseReserve: (token: Character & SRToken & Item, raidid?:number) => Promise<void>
} }
+19 -9
View File
@@ -434,7 +434,8 @@ export class ItemManager
} }
} }
increaseReserve = (token: Character & SRToken & Item) : Promise<void> => this.admin increaseReserve = async (token: Character & SRToken & Item, raidid?:number) : Promise<void> => {
await this.admin
.knex(token.tier+"tokens") .knex(token.tier+"tokens")
.where({ .where({
characterid: token.characterid, characterid: token.characterid,
@@ -443,14 +444,23 @@ export class ItemManager
level: token.level+1 level: token.level+1
}) })
decreaseReserve = (token: Character & SRToken & Item) : Promise<void> => this.admin if(raidid)
.knex(token.tier+"tokens") this.raidManager.notifyRaid({id: raidid})
.where({ }
characterid: token.characterid,
itemname: token.itemname decreaseReserve = async (token: Character & SRToken & Item, raidid?:number) : Promise<void> => {
}).update({ await this.admin
level: Math.max(1, token.level-1) .knex(token.tier+"tokens")
}) .where({
characterid: token.characterid,
itemname: token.itemname
}).update({
level: Math.max(1, token.level-1)
})
if(raidid)
this.raidManager.notifyRaid({id: raidid})
}
} }
+1
View File
@@ -16,4 +16,5 @@ export class IRaidManager{
startRaid: (raid:Raid) => Promise<RaidData> startRaid: (raid:Raid) => Promise<RaidData>
adminUnsign: (character:Character, raid:Raid) => Promise<any> adminUnsign: (character:Character, raid:Raid) => Promise<any>
cancelRaid: (raid: Raid) => Promise<void> cancelRaid: (raid: Raid) => Promise<void>
notifyRaid : (raid: Raid | { id: number }) => Promise<void>
} }
+1 -1
View File
@@ -29,7 +29,7 @@ export class RaidManager
@Inject(ICharacterManager) @Inject(ICharacterManager)
private characterManager: ICharacterManager private characterManager: ICharacterManager
@Inject(ItemManager) @Inject(IItemManager)
private itemManager: IItemManager private itemManager: IItemManager
@Inject(IPubSub) @Inject(IPubSub)
@@ -270,12 +270,10 @@ export class FrontcraftRaidComponent
} }
increaseReserve(token: Character & SRToken & Item){ increaseReserve(token: Character & SRToken & Item){
this.changeReserve.increaseReserve(token) this.changeReserve.increaseReserve(token, this.raid.id)
.then(_ => this.refresh())
} }
decreaseReserve(token: Character & SRToken & Item){ decreaseReserve(token: Character & SRToken & Item){
this.changeReserve.decreaseReserve(token) this.changeReserve.decreaseReserve(token, this.raid.id)
.then(_ => this.refresh())
} }
} }