✨ feat(gvg): 占领城池对内政产量的加成
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
// GVG城池
|
||||
import { FILENAME } from '../../consts'
|
||||
import { parseNumberList, readFileAndParse } from '../util'
|
||||
|
||||
export interface DicGVGArea {
|
||||
// 区域id
|
||||
areaId: number;
|
||||
// 大地图id
|
||||
mapId: string
|
||||
// 大地图类型 1-单服 2-跨服
|
||||
mapType: number;
|
||||
// 城池id
|
||||
cityId: number;
|
||||
// 城池类型
|
||||
cityType: number;
|
||||
// 区域类型 1-守方备战区 2-攻方备战区 3-大据点区 4-中据点区 5-小据点区 6-投石车区
|
||||
areaType: number;
|
||||
// 区域管理
|
||||
relateArea: number[];
|
||||
// 0表不能被投石车选中作为攻击区域,1表能
|
||||
catapultAttack: number;
|
||||
}
|
||||
|
||||
export const dicGVGArea = new Map<number, DicGVGArea>();
|
||||
export const dicGVGCity = new Map<number, { cityType: number, areaIds: number[] }>();
|
||||
export function loadGVGArea() {
|
||||
dicGVGArea.clear();
|
||||
dicGVGCity.clear();
|
||||
|
||||
let arr = readFileAndParse(FILENAME.DIC_GVG_AREA);
|
||||
arr.forEach(o => {
|
||||
o.relateArea = parseNumberList(o.relateArea);
|
||||
if(!dicGVGCity.has(o.cityId)) {
|
||||
dicGVGCity.set(o.cityId, { cityType: o.cityType, areaIds: [] });
|
||||
}
|
||||
dicGVGCity.get(o.cityId)?.areaIds.push(o.areaId);
|
||||
dicGVGArea.set(o.areaId, o);
|
||||
});
|
||||
arr = undefined;
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
// GVG城池
|
||||
import { FILENAME } from '../../consts'
|
||||
import { readFileAndParse } from '../util'
|
||||
|
||||
export interface DicGVGCityAdd {
|
||||
// 城池类型 1-大城 2-中城 3-小城
|
||||
cityType: number;
|
||||
// dic_zyz_GVGResourceBase的type
|
||||
resourceType: number;
|
||||
// 联盟币的加成
|
||||
coinAdd: number;
|
||||
// 产量加成
|
||||
outputAdd: number;
|
||||
}
|
||||
|
||||
export const dicGVGCityAdd = new Map<string, DicGVGCityAdd>();
|
||||
export function loadGVGCityAdd() {
|
||||
dicGVGCityAdd.clear();
|
||||
|
||||
let arr = readFileAndParse(FILENAME.DIC_GVG_CITY_ADD);
|
||||
arr.forEach(o => {
|
||||
dicGVGCityAdd.set(`${o.cityType}_${o.resourceType}`, o);
|
||||
});
|
||||
arr = undefined;
|
||||
}
|
||||
Reference in New Issue
Block a user