军团活动:诸侯混战拍卖行

This commit is contained in:
luying
2021-11-02 16:09:11 +08:00
parent 33f2d73d20
commit eff6e5f738
3 changed files with 81 additions and 16 deletions

View File

@@ -585,8 +585,8 @@ export function getTodayGuildActivity() {
* @param aid 活动id
* @param rank 排名
*/
export function getGuildAuctionRewards(aid: number, rank: number) {
let ranksReward = gameData.guildAuction.get(aid) || [];
export function getGuildAuctionRewards(aid: number, rank: number, cityId: number = 0) {
let ranksReward = gameData.guildAuction.get(`${aid}_${cityId}`) || [];
let dic = ranksReward.find(cur => {
return rank >= cur.min && (rank <= cur.max || cur.max == 0);
});

View File

@@ -1,5 +1,5 @@
// 公会权限
import { readFileAndParse } from '../util'
import { parseNumberList, readFileAndParse } from '../util'
import { FILENAME } from '../../consts'
export interface DicGuildAuction {
@@ -12,18 +12,26 @@ export interface DicGuildAuction {
readonly max: number;
// 奖励
readonly rewards: number;
// 城池
readonly cityId: number;
}
export const dicGuildAuction = new Map<number, DicGuildAuction[]>();
export const dicGuildAuction = new Map<string, DicGuildAuction[]>();
export function loadGuildAuction() {
dicGuildAuction.clear();
let arr = readFileAndParse(FILENAME.DIC_GUILD_AUCTION);
arr.forEach(o => {
let rank = dicGuildAuction.get(o.id)||[];
rank.push(o);
dicGuildAuction.set(o.id, rank);
let cityIds = parseNumberList(o.cityId);
if(cityIds.length <= 0) { // 诸侯混战以外的活动
cityIds = [0];
}
for(let cityId of cityIds) {
let rank = dicGuildAuction.get(`${o.id}_${cityId}`)||[];
rank.push(o);
dicGuildAuction.set(`${o.id}_${cityId}`, rank);
}
});
arr = undefined;
}