排行榜:奖励显示首通信息
This commit is contained in:
@@ -4,6 +4,7 @@ import { reloadResources } from '../../../pubUtils/data';
|
||||
import { HeroUpdate } from '../../../db/Hero';
|
||||
import { RoleUpdate } from '../../../db/Role';
|
||||
import { SkinUpdate } from '../../../db/Skin';
|
||||
import { RankFirstModel, RankFirstType } from '../../../db/RankFirst';
|
||||
import { getInitRoleInfo } from '../../../pubUtils/roleUtil';
|
||||
import { DEFAULT_HEROES } from '../../../consts';
|
||||
import { Figure } from '../../../domain/dbGeneral';
|
||||
@@ -18,12 +19,35 @@ export class RoleRemote {
|
||||
this.app = app;
|
||||
this.channelService = app.get('channelService');
|
||||
this.setInitRole();
|
||||
this.loadRankFirst();
|
||||
}
|
||||
private channelService: ChannelService;
|
||||
private initHeroes: Map<number, HeroUpdate> = new Map(); // hid => hero
|
||||
private initRole: RoleUpdate = {};
|
||||
private initSkins: Map<number, SkinUpdate> = new Map(); // hid => skin
|
||||
private figureInfo: {heads: Figure[], frames: Figure[], spines: Figure[]};
|
||||
private rankFirstRewards: Map<number, Map<number, RankFirstType>> = new Map();
|
||||
|
||||
private async loadRankFirst() {
|
||||
let rankFirstRewards = await RankFirstModel.findAllRankRewards();
|
||||
for(let rank of rankFirstRewards) {
|
||||
if(!this.rankFirstRewards.has(rank.serverId)) {
|
||||
this.rankFirstRewards.set(rank.serverId, new Map());
|
||||
}
|
||||
this.rankFirstRewards.get(rank.serverId).set(rank.id, rank);
|
||||
}
|
||||
}
|
||||
|
||||
public setRankFirst(rank: RankFirstType) {
|
||||
if(!this.rankFirstRewards.has(rank.serverId)) {
|
||||
this.rankFirstRewards.set(rank.serverId, new Map());
|
||||
}
|
||||
this.rankFirstRewards.get(rank.serverId).set(rank.id, rank);
|
||||
}
|
||||
|
||||
public getRankFirstById(serverId: number, id: number) {
|
||||
return this.rankFirstRewards.get(serverId)?.get(id);
|
||||
}
|
||||
|
||||
public setInitRole() {
|
||||
let result = getInitRoleInfo();
|
||||
|
||||
Reference in New Issue
Block a user