✨ feat(gvg): 遗迹生成数据
This commit is contained in:
@@ -129,6 +129,7 @@ import { dicGVGCityAdd, loadGVGCityAdd } from './dictionary/DicGVGCityAdd';
|
||||
import { dicGVGTask, dicGVGTaskByType, loadGVGTask } from './dictionary/DicGVGTask';
|
||||
import { dicGVGVestigeByType, loadGVGVestigeType } from './dictionary/DicGVGVestigeType';
|
||||
import { dicGVGVestige, loadGVGVestige } from './dictionary/DicGVGVestige';
|
||||
import { DicGVGVestigeRange, dicGVGVestigeRange, loadGVGVestigeRange } from './dictionary/DicGVGVestigeRange';
|
||||
|
||||
export const gameData = {
|
||||
daily: dicDaily,
|
||||
@@ -325,6 +326,7 @@ export const gameData = {
|
||||
gvgVestigeByServerType: dicGVGVestigeByType,
|
||||
gvgVestigeCntByServerType: new Map<number, number>(), // 单服or跨服 => 遗迹数量
|
||||
gvgVestige: dicGVGVestige,
|
||||
gvgVestigeRange: dicGVGVestigeRange,
|
||||
};
|
||||
|
||||
// 在此提供一些原先在gamedata中提供的方法,以便更方便获取gameData数据
|
||||
@@ -1169,6 +1171,18 @@ function parseGVGVestigeCnt() {
|
||||
}
|
||||
}
|
||||
|
||||
export function getGVGVestigeRange(myRank: number) {
|
||||
let latestRank: DicGVGVestigeRange;
|
||||
for(let dic of gameData.gvgVestigeRange) {
|
||||
latestRank = dic;
|
||||
let { rankMin, rankMax } = dic;
|
||||
if((rankMin < myRank && (rankMax >= myRank || rankMax == -1))) {
|
||||
return dic;
|
||||
}
|
||||
}
|
||||
return latestRank
|
||||
}
|
||||
|
||||
// 初始加载
|
||||
function initDatas() {
|
||||
parseDicParam();
|
||||
@@ -1379,6 +1393,7 @@ function loadDatas() {
|
||||
loadGVGTask();
|
||||
loadGVGVestigeType();
|
||||
loadGVGVestige();
|
||||
loadGVGVestigeRange();
|
||||
}
|
||||
|
||||
// 重载dicParam
|
||||
|
||||
@@ -391,6 +391,8 @@ export const GVG = {
|
||||
GVG_FARM_LOCK_TIME: 300, // 农田锁定时间(秒)
|
||||
GVG_MINE_LOCK_TIME: 300, // 矿山锁定时间(秒)
|
||||
GVG_FORESTRY_LOCK_TIME: 300, // 林场锁定时间(秒)
|
||||
GVG_FIELD_TYPE_RATIO: '1&5|2&10|3&10', // 全联盟的特殊格子上限百分比(a%的格子为小麦这个)1&a|2&b|3&c
|
||||
GVG_SP_FIELD_RATIO: '10&30', // 分配给玩家的时候有多少特殊格子 min&max 填最大最小百分比即可
|
||||
GVG_FIELD_TYPE_RATIO: '1&5%|2&10%|3&10%', // 全联盟的特殊格子上限百分比(a%的格子为小麦这个)1&a|2&b|3&c
|
||||
GVG_SP_FIELD_RATIO: '10%&30%', // 分配给玩家的时候有多少特殊格子 min&max 填最大最小百分比即可
|
||||
GVG_REFRESH_TIME: 5, // 0
|
||||
GVG_ROBOT_NAME: '遗迹守护者', // 0
|
||||
};
|
||||
|
||||
@@ -12,12 +12,12 @@ export interface DicGVGVestige {
|
||||
readonly rank: number;
|
||||
// 驻扎分
|
||||
readonly score: number;
|
||||
// 机器人的名字
|
||||
readonly name: string;
|
||||
// 显示在上面的形象
|
||||
readonly spine: number;
|
||||
// 显示在详情的头像
|
||||
readonly head: number;
|
||||
// 显示在上面的形象
|
||||
readonly spine: number;
|
||||
// 显示的机器人的等级
|
||||
readonly level: number;
|
||||
// 显示战力
|
||||
readonly ce: number;
|
||||
// 突破奖励
|
||||
@@ -42,6 +42,7 @@ export function loadGVGVestige() {
|
||||
o.onceLeagueReward = parseGoodStr(o.onceLeagueReward);
|
||||
o.battleReward = parseGoodStr(o.battleReward);
|
||||
o.battleLeagueReward = parseGoodStr(o.battleLeagueReward);
|
||||
o.warId = parseInt(o.warId);
|
||||
if(!dicGVGVestige.has(o.vestigeId)) {
|
||||
dicGVGVestige.set(o.vestigeId, new Map());
|
||||
}
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
// GVG遗迹
|
||||
import { FILENAME } from '../../consts'
|
||||
import { readFileAndParse } from '../util'
|
||||
|
||||
export interface DicGVGVestigeRange {
|
||||
// id
|
||||
id: number;
|
||||
// 最低排名(不含)
|
||||
rankMin: number;
|
||||
// 最高排名(含)
|
||||
rankMax: number;
|
||||
// 往前随机的排名最高是多少名
|
||||
rangeBeforeFrom: number;
|
||||
// 往前随机的排名最低是多少名
|
||||
rangeBeforeTo: number;
|
||||
// 往前随机的排名里随机多少个
|
||||
rangeBeforeNum: number;
|
||||
// 往后随机的排名最高是多少名
|
||||
rangeAfterFrom: number;
|
||||
// 往后随机的排名最低是多少名
|
||||
rangeAfterTo: number;
|
||||
// 往后随机的排名最低是多少名
|
||||
rangeAfterNum: number;
|
||||
// 是否显示前十名/前五名
|
||||
topChallengeFrom: number;
|
||||
// 是否显示前十名/前五名
|
||||
topChallengeTo: number;
|
||||
}
|
||||
|
||||
export const dicGVGVestigeRange: DicGVGVestigeRange[] = [];
|
||||
export function loadGVGVestigeRange() {
|
||||
dicGVGVestigeRange.splice(0, dicGVGVestigeRange.length);
|
||||
|
||||
let arr = readFileAndParse(FILENAME.DIC_GVG_VESTIGE_RANGE);
|
||||
arr.forEach(o => {
|
||||
dicGVGVestigeRange.push(o);
|
||||
});
|
||||
arr = undefined;
|
||||
}
|
||||
Reference in New Issue
Block a user