炼器堂:修改字段

This commit is contained in:
luying
2022-02-26 17:07:28 +08:00
parent 974b136fda
commit 0e14ea0440
9 changed files with 76 additions and 45 deletions
@@ -74,7 +74,7 @@ export class GuildRefineHandler {
} }
if(!dicDevelopConsume) return resResult(STATUS.GUILD_CANNOT_REFINE_THIS); if(!dicDevelopConsume) return resResult(STATUS.GUILD_CANNOT_REFINE_THIS);
let result = await handleCost(roleId, sid, dicDevelopConsume.honourConsume, ITEM_CHANGE_REASON.REFINE_EQUIP); let result = await handleCost(roleId, sid, dicDevelopConsume.honourConsume.map(cur=> ({...cur, count: cur.count * count })), ITEM_CHANGE_REASON.REFINE_EQUIP);
if (!result) if (!result)
return resResult(STATUS.ROLE_MATERIAL_NOT_ENOUGH); return resResult(STATUS.ROLE_MATERIAL_NOT_ENOUGH);
@@ -9,14 +9,9 @@ export function checkEquipProduceStructureLv(structure: Structure[], developCons
let curStructure = structure.find(cur => cur.id == GUILD_STRUCTURE.EQUIP_PRODUCE); let curStructure = structure.find(cur => cur.id == GUILD_STRUCTURE.EQUIP_PRODUCE);
if(!curStructure) return curStructure; if(!curStructure) return curStructure;
let dicStructure = gameData.equipProduceBase.get(curStructure.lv);
if(!dicStructure) return false
let dicDevelopConsume = getArmyDevelopConsumeById(developConsumeId); let dicDevelopConsume = getArmyDevelopConsumeById(developConsumeId);
if(dicStructure.quality < dicDevelopConsume.quality) return false; if(dicDevelopConsume.structureLevel > curStructure.lv) return false;
if(dicStructure.levelProduce.indexOf(dicDevelopConsume.qualityLevel) == -1) {
return false;
}
return true; return true;
} }
+9 -1
View File
@@ -7,12 +7,13 @@ import { Teraph, RoleModel, RoleType, RoleUpdate } from '../db/Role';
import { SCHOOL } from '../pubUtils/dicParam'; import { SCHOOL } from '../pubUtils/dicParam';
import { gameData } from '../pubUtils/data'; import { gameData } from '../pubUtils/data';
import { SchoolModel } from '../db/School'; import { SchoolModel } from '../db/School';
import { SclResultInter, SclPosInter } from '../pubUtils/interface'; import { SclResultInter, SclPosInter, RewardInter } from '../pubUtils/interface';
import { CheckMeterial } from './rewardService'; import { CheckMeterial } from './rewardService';
import { HeroUpdate } from '../db/Hero'; import { HeroUpdate } from '../db/Hero';
import { SkinUpdate } from '../db/Skin'; import { SkinUpdate } from '../db/Skin';
import { Figure } from '../domain/dbGeneral'; import { Figure } from '../domain/dbGeneral';
import { pick } from 'underscore'; import { pick } from 'underscore';
import { Reward } from '../domain/battleField/pvp';
export async function getTeraphStrengthenResult(role: RoleType, count: number, dicTeraph: DicTeraph, teraph: Teraph) { export async function getTeraphStrengthenResult(role: RoleType, count: number, dicTeraph: DicTeraph, teraph: Teraph) {
let criAttr: number[] = [], times = 0; let criAttr: number[] = [], times = 0;
@@ -150,4 +151,11 @@ export function getInitHeroById(hid: number) {
heroInfo: pinus.app.get('initHeroes').get(hid), heroInfo: pinus.app.get('initHeroes').get(hid),
skinInfo: pinus.app.get('initSkins').get(hid) skinInfo: pinus.app.get('initSkins').get(hid)
} }
}
export function addConsumeToHero(oldConsume: Reward[], consumes: RewardInter[]) {
let newConsume: Reward[] = [];
for(let {id, count} of oldConsume) {
}
} }
+4
View File
@@ -6,6 +6,7 @@ import { COUNTER, HERO_CE_RATIO } from '../consts';
import { reduceCe } from '../pubUtils/util'; import { reduceCe } from '../pubUtils/util';
import Skin from './Skin'; import Skin from './Skin';
import { SearchHeroParam } from '../domain/backEndField/search'; import { SearchHeroParam } from '../domain/backEndField/search';
import { Reward } from '../domain/battleField/pvp';
type CeAttrUpdate = Partial<CeAttrData>; type CeAttrUpdate = Partial<CeAttrData>;
export class CeAttrData { export class CeAttrData {
@@ -186,6 +187,9 @@ export default class Hero extends BaseModel {
@prop({ required: true, type: EPlace, default: [], _id: false }) @prop({ required: true, type: EPlace, default: [], _id: false })
ePlace: EPlace[]; // 武将装备引用数组 ePlace: EPlace[]; // 武将装备引用数组
@prop({ required: true, type: Reward, default: [], _id: false })
consumes: Reward[]; // 武将装备引用数组
public static async findByRole(roleId: string, sort: { field: string, sortBy: number }[] = [], select?: string, getters = false) { public static async findByRole(roleId: string, sort: { field: string, sortBy: number }[] = [], select?: string, getters = false) {
let sortParam = {}; let sortParam = {};
for (let { field, sortBy } of sort) { for (let { field, sortBy } of sort) {
@@ -21,6 +21,8 @@ export interface DicArmyDevelopConsume {
readonly fundConsume: number; readonly fundConsume: number;
// 研发需要的时间 // 研发需要的时间
readonly timeConsume: number; readonly timeConsume: number;
// 建筑物id
readonly structureLevel: number;
} }
const DicArmyDevelopConsumeKeys: KeysEnum<DicArmyDevelopConsume> = { const DicArmyDevelopConsumeKeys: KeysEnum<DicArmyDevelopConsume> = {
@@ -31,7 +33,8 @@ const DicArmyDevelopConsumeKeys: KeysEnum<DicArmyDevelopConsume> = {
max: true, max: true,
honourConsume: true, honourConsume: true,
fundConsume: true, fundConsume: true,
timeConsume: true timeConsume: true,
structureLevel: true,
}; };
export const dicArmyDevelopConsume = new Map<number, DicArmyDevelopConsume>(); export const dicArmyDevelopConsume = new Map<number, DicArmyDevelopConsume>();
+1 -5
View File
@@ -1,5 +1,5 @@
// 军团建筑物 // 军团建筑物
import {readFileAndParse, parseGoodStr, parseNumberList, decodeArrayListStr} from '../util' import {readFileAndParse, parseGoodStr, decodeArrayListStr} from '../util'
import { FILENAME } from '../../consts' import { FILENAME } from '../../consts'
import { RewardInter } from '../interface'; import { RewardInter } from '../interface';
const _ = require('lodash'); const _ = require('lodash');
@@ -32,15 +32,12 @@ export interface DicEquipProduceBase {
readonly level: number; readonly level: number;
// 可以研发的品质 // 可以研发的品质
readonly quality: number; readonly quality: number;
// 开启炼器及研发等级
readonly levelProduce: number[];
} }
const DicEquipProduceKeys: KeysEnum<DicEquipProduceBase> = { const DicEquipProduceKeys: KeysEnum<DicEquipProduceBase> = {
id: true, id: true,
level: true, level: true,
quality: true, quality: true,
levelProduce: true,
}; };
// 演武台 // 演武台
@@ -194,7 +191,6 @@ export function loadStructure() {
let arrEquip = readFileAndParse(FILENAME.DIC_GUILD_EQUIP_PRODUCE_BASE); let arrEquip = readFileAndParse(FILENAME.DIC_GUILD_EQUIP_PRODUCE_BASE);
arrEquip.forEach(o => { arrEquip.forEach(o => {
setStructureConsume(o); setStructureConsume(o);
o.levelProduce = parseNumberList(o.levelProduce);
dicEquipPriduceBase.set(o.level, _.pick(o, Object.keys(DicEquipProduceKeys))); dicEquipPriduceBase.set(o.level, _.pick(o, Object.keys(DicEquipProduceKeys)));
}); });
arrEquip = undefined; arrEquip = undefined;
@@ -3,6 +3,7 @@
"id": 1, "id": 1,
"quality": 1, "quality": 1,
"qualityLevel": 1, "qualityLevel": 1,
"structureLevel": 1,
"preposition": "&", "preposition": "&",
"max": 1, "max": 1,
"honourConsume": "40005&70", "honourConsume": "40005&70",
@@ -13,9 +14,10 @@
"id": 2, "id": 2,
"quality": 1, "quality": 1,
"qualityLevel": 2, "qualityLevel": 2,
"structureLevel": 1,
"preposition": "1&", "preposition": "1&",
"max": 2, "max": 2,
"honourConsume": "40005&70", "honourConsume": "40005&60",
"fundConsume": 19000, "fundConsume": 19000,
"timeConsume": 1200 "timeConsume": 1200
}, },
@@ -23,9 +25,10 @@
"id": 3, "id": 3,
"quality": 1, "quality": 1,
"qualityLevel": 3, "qualityLevel": 3,
"structureLevel": 1,
"preposition": "2&3", "preposition": "2&3",
"max": 3, "max": 3,
"honourConsume": "40005&70", "honourConsume": "40005&50",
"fundConsume": 27000, "fundConsume": 27000,
"timeConsume": 1800 "timeConsume": 1800
}, },
@@ -33,6 +36,7 @@
"id": 4, "id": 4,
"quality": 2, "quality": 2,
"qualityLevel": 1, "qualityLevel": 1,
"structureLevel": 2,
"preposition": "1&", "preposition": "1&",
"max": 1, "max": 1,
"honourConsume": "40005&70", "honourConsume": "40005&70",
@@ -43,9 +47,10 @@
"id": 5, "id": 5,
"quality": 2, "quality": 2,
"qualityLevel": 2, "qualityLevel": 2,
"structureLevel": 2,
"preposition": "2&4", "preposition": "2&4",
"max": 2, "max": 2,
"honourConsume": "40005&70", "honourConsume": "40005&60",
"fundConsume": 40000, "fundConsume": 40000,
"timeConsume": 2700 "timeConsume": 2700
}, },
@@ -53,9 +58,10 @@
"id": 6, "id": 6,
"quality": 2, "quality": 2,
"qualityLevel": 3, "qualityLevel": 3,
"structureLevel": 3,
"preposition": "3&5", "preposition": "3&5",
"max": 3, "max": 3,
"honourConsume": "40005&70", "honourConsume": "40005&50",
"fundConsume": 31000, "fundConsume": 31000,
"timeConsume": 2700 "timeConsume": 2700
}, },
@@ -63,6 +69,7 @@
"id": 7, "id": 7,
"quality": 3, "quality": 3,
"qualityLevel": 1, "qualityLevel": 1,
"structureLevel": 4,
"preposition": "4&", "preposition": "4&",
"max": 1, "max": 1,
"honourConsume": "40005&70", "honourConsume": "40005&70",
@@ -73,9 +80,10 @@
"id": 8, "id": 8,
"quality": 3, "quality": 3,
"qualityLevel": 2, "qualityLevel": 2,
"structureLevel": 4,
"preposition": "5&7", "preposition": "5&7",
"max": 2, "max": 2,
"honourConsume": "40005&70", "honourConsume": "40005&60",
"fundConsume": 60000, "fundConsume": 60000,
"timeConsume": 7200 "timeConsume": 7200
}, },
@@ -83,9 +91,10 @@
"id": 9, "id": 9,
"quality": 3, "quality": 3,
"qualityLevel": 3, "qualityLevel": 3,
"structureLevel": 5,
"preposition": "6&8", "preposition": "6&8",
"max": 3, "max": 3,
"honourConsume": "40005&70", "honourConsume": "40005&50",
"fundConsume": 40000, "fundConsume": 40000,
"timeConsume": 2700 "timeConsume": 2700
}, },
@@ -93,6 +102,7 @@
"id": 10, "id": 10,
"quality": 4, "quality": 4,
"qualityLevel": 1, "qualityLevel": 1,
"structureLevel": 6,
"preposition": "7&", "preposition": "7&",
"max": 1, "max": 1,
"honourConsume": "40005&70", "honourConsume": "40005&70",
@@ -103,9 +113,10 @@
"id": 11, "id": 11,
"quality": 4, "quality": 4,
"qualityLevel": 2, "qualityLevel": 2,
"structureLevel": 6,
"preposition": "8&10", "preposition": "8&10",
"max": 2, "max": 2,
"honourConsume": "40005&70", "honourConsume": "40005&60",
"fundConsume": 66000, "fundConsume": 66000,
"timeConsume": 8400 "timeConsume": 8400
}, },
@@ -113,9 +124,10 @@
"id": 12, "id": 12,
"quality": 4, "quality": 4,
"qualityLevel": 3, "qualityLevel": 3,
"structureLevel": 7,
"preposition": "9&11", "preposition": "9&11",
"max": 3, "max": 3,
"honourConsume": "40005&70", "honourConsume": "40005&50",
"fundConsume": 86000, "fundConsume": 86000,
"timeConsume": 10800 "timeConsume": 10800
}, },
@@ -123,6 +135,7 @@
"id": 13, "id": 13,
"quality": 5, "quality": 5,
"qualityLevel": 1, "qualityLevel": 1,
"structureLevel": 8,
"preposition": "10&", "preposition": "10&",
"max": 1, "max": 1,
"honourConsume": "40005&70", "honourConsume": "40005&70",
@@ -133,9 +146,10 @@
"id": 14, "id": 14,
"quality": 5, "quality": 5,
"qualityLevel": 2, "qualityLevel": 2,
"structureLevel": 9,
"preposition": "11&13", "preposition": "11&13",
"max": 2, "max": 2,
"honourConsume": "40005&70", "honourConsume": "40005&60",
"fundConsume": 84000, "fundConsume": 84000,
"timeConsume": 10800 "timeConsume": 10800
}, },
@@ -143,9 +157,10 @@
"id": 15, "id": 15,
"quality": 5, "quality": 5,
"qualityLevel": 3, "qualityLevel": 3,
"structureLevel": 10,
"preposition": "12&14", "preposition": "12&14",
"max": 3, "max": 3,
"honourConsume": "40005&70", "honourConsume": "40005&50",
"fundConsume": 115000, "fundConsume": 115000,
"timeConsume": 16800 "timeConsume": 16800
} }
@@ -4,7 +4,6 @@
"structureId": 2, "structureId": 2,
"level": 1, "level": 1,
"quality": 1, "quality": 1,
"levelProduce": "1&2&3",
"consume": 50000, "consume": 50000,
"buildWords": "&", "buildWords": "&",
"imageName": "jttubiao_2" "imageName": "jttubiao_2"
@@ -14,7 +13,6 @@
"structureId": 2, "structureId": 2,
"level": 2, "level": 2,
"quality": 2, "quality": 2,
"levelProduce": "1&2",
"consume": 125000, "consume": 125000,
"buildWords": "&", "buildWords": "&",
"imageName": "jttubiao_2" "imageName": "jttubiao_2"
@@ -24,7 +22,6 @@
"structureId": 2, "structureId": 2,
"level": 3, "level": 3,
"quality": 2, "quality": 2,
"levelProduce": "1&2&3",
"consume": 350000, "consume": 350000,
"buildWords": "&", "buildWords": "&",
"imageName": "jttubiao_2" "imageName": "jttubiao_2"
@@ -34,7 +31,6 @@
"structureId": 2, "structureId": 2,
"level": 4, "level": 4,
"quality": 3, "quality": 3,
"levelProduce": "1&2",
"consume": 800000, "consume": 800000,
"buildWords": "&", "buildWords": "&",
"imageName": "jttubiao_2" "imageName": "jttubiao_2"
@@ -44,7 +40,6 @@
"structureId": 2, "structureId": 2,
"level": 5, "level": 5,
"quality": 3, "quality": 3,
"levelProduce": "1&2&3",
"consume": 1700000, "consume": 1700000,
"buildWords": "&", "buildWords": "&",
"imageName": "jttubiao_2" "imageName": "jttubiao_2"
@@ -54,7 +49,6 @@
"structureId": 2, "structureId": 2,
"level": 6, "level": 6,
"quality": 4, "quality": 4,
"levelProduce": "1&2",
"consume": 3500000, "consume": 3500000,
"buildWords": "&", "buildWords": "&",
"imageName": "jttubiao_2" "imageName": "jttubiao_2"
@@ -64,7 +58,6 @@
"structureId": 2, "structureId": 2,
"level": 7, "level": 7,
"quality": 4, "quality": 4,
"levelProduce": "1&2&3",
"consume": 6125000, "consume": 6125000,
"buildWords": "&", "buildWords": "&",
"imageName": "jttubiao_2" "imageName": "jttubiao_2"
@@ -74,7 +67,6 @@
"structureId": 2, "structureId": 2,
"level": 8, "level": 8,
"quality": 5, "quality": 5,
"levelProduce": "1&",
"consume": 9125000, "consume": 9125000,
"buildWords": "&", "buildWords": "&",
"imageName": "jttubiao_2" "imageName": "jttubiao_2"
@@ -84,7 +76,6 @@
"structureId": 2, "structureId": 2,
"level": 9, "level": 9,
"quality": 5, "quality": 5,
"levelProduce": "2&",
"consume": 13625000, "consume": 13625000,
"buildWords": "&", "buildWords": "&",
"imageName": "jttubiao_2" "imageName": "jttubiao_2"
@@ -94,7 +85,6 @@
"structureId": 2, "structureId": 2,
"level": 10, "level": 10,
"quality": 5, "quality": 5,
"levelProduce": "3&",
"consume": 99999999, "consume": 99999999,
"buildWords": "&", "buildWords": "&",
"imageName": "jttubiao_2" "imageName": "jttubiao_2"
+30 -10
View File
@@ -7,7 +7,9 @@
"wishgoodsHero": "&", "wishgoodsHero": "&",
"consume": 50000, "consume": 50000,
"buildWords": "&", "buildWords": "&",
"imageID": "jttubiao_5" "imageID": "jttubiao_5",
"__EMPTY": 0,
"__EMPTY_1": 0
}, },
{ {
"id": 2, "id": 2,
@@ -17,7 +19,9 @@
"wishgoodsHero": "&", "wishgoodsHero": "&",
"consume": 125000, "consume": 125000,
"buildWords": "&", "buildWords": "&",
"imageID": "jttubiao_5" "imageID": "jttubiao_5",
"__EMPTY": 0,
"__EMPTY_1": 0
}, },
{ {
"id": 3, "id": 3,
@@ -27,7 +31,9 @@
"wishgoodsHero": "&", "wishgoodsHero": "&",
"consume": 350000, "consume": 350000,
"buildWords": "&", "buildWords": "&",
"imageID": "jttubiao_5" "imageID": "jttubiao_5",
"__EMPTY": 0,
"__EMPTY_1": 0
}, },
{ {
"id": 4, "id": 4,
@@ -37,7 +43,9 @@
"wishgoodsHero": "1&2", "wishgoodsHero": "1&2",
"consume": 800000, "consume": 800000,
"buildWords": "&", "buildWords": "&",
"imageID": "jttubiao_5" "imageID": "jttubiao_5",
"__EMPTY": 0,
"__EMPTY_1": 0
}, },
{ {
"id": 5, "id": 5,
@@ -47,7 +55,9 @@
"wishgoodsHero": "1&2", "wishgoodsHero": "1&2",
"consume": 1700000, "consume": 1700000,
"buildWords": "&", "buildWords": "&",
"imageID": "jttubiao_5" "imageID": "jttubiao_5",
"__EMPTY": 0,
"__EMPTY_1": 0
}, },
{ {
"id": 6, "id": 6,
@@ -57,7 +67,9 @@
"wishgoodsHero": "1&2|2&1", "wishgoodsHero": "1&2|2&1",
"consume": 3500000, "consume": 3500000,
"buildWords": "&", "buildWords": "&",
"imageID": "jttubiao_5" "imageID": "jttubiao_5",
"__EMPTY": 0,
"__EMPTY_1": 0
}, },
{ {
"id": 7, "id": 7,
@@ -67,7 +79,9 @@
"wishgoodsHero": "1&2|2&1", "wishgoodsHero": "1&2|2&1",
"consume": 6125000, "consume": 6125000,
"buildWords": "&", "buildWords": "&",
"imageID": "jttubiao_5" "imageID": "jttubiao_5",
"__EMPTY": 0,
"__EMPTY_1": 0
}, },
{ {
"id": 8, "id": 8,
@@ -77,7 +91,9 @@
"wishgoodsHero": "1&2|2&1", "wishgoodsHero": "1&2|2&1",
"consume": 9125000, "consume": 9125000,
"buildWords": "&", "buildWords": "&",
"imageID": "jttubiao_5" "imageID": "jttubiao_5",
"__EMPTY": 0,
"__EMPTY_1": 0
}, },
{ {
"id": 9, "id": 9,
@@ -87,7 +103,9 @@
"wishgoodsHero": "1&3|2&1|3&1", "wishgoodsHero": "1&3|2&1|3&1",
"consume": 13625000, "consume": 13625000,
"buildWords": "&", "buildWords": "&",
"imageID": "jttubiao_5" "imageID": "jttubiao_5",
"__EMPTY": 0,
"__EMPTY_1": 0
}, },
{ {
"id": 10, "id": 10,
@@ -97,6 +115,8 @@
"wishgoodsHero": "1&3|2&1|3&1", "wishgoodsHero": "1&3|2&1|3&1",
"consume": 99999999, "consume": 99999999,
"buildWords": "&", "buildWords": "&",
"imageID": "jttubiao_5" "imageID": "jttubiao_5",
"__EMPTY": 0,
"__EMPTY_1": 0
} }
] ]