养成:升星、训练、淬火、精炼的一键消耗不每次更新&推送

This commit is contained in:
luying
2021-08-28 18:12:23 +08:00
parent ef753dec44
commit cca991367d
4 changed files with 54 additions and 30 deletions
+7 -15
View File
@@ -4,10 +4,6 @@ import { HeroModel, HeroType } from "../db/Hero";
import { getGoodById, gameData, getJewelById, getQuenchGradeByValue, getQuenchConsume, getQuenchByQualityAndGrade } from "../pubUtils/data";
import { calPlayerCeAndSave } from "./playerCeService";
import { CONSUME_TYPE, HERO_SYSTEM_TYPE, ITID, TASK_TYPE } from "../consts";
import { EquipType } from "../db/Equip";
import { calEquipSeids } from '../pubUtils/playerCe';
import { checkTask, checkTaskWithHero, checkTaskWithEquip, checkActivityTask } from './taskService';
import { handleCost } from './rewardService';
import { dicGoods, DicGoods } from '../pubUtils/dictionary/DicGoods';
import { QuenchLogParam } from '../domain/roleField/equip';
import { QUENCH } from '../pubUtils/dicParam';
@@ -88,7 +84,7 @@ export function checkEquipCanPut(hero: HeroType, id: number) {
* @param dicGoods 物品表
* @returns
*/
export async function quenchOnce(roleId: string, sid: string, randMain: RandMain[], dicQuench: DicQuenchQuality, dicGoods: DicGoods) {
export async function quenchOnce(randMain: RandMain[], dicQuench: DicQuenchQuality, dicGoods: DicGoods) {
let { quality, equipLvl } = dicGoods;
let canRandMain = randMain.filter(cur => { // 已升满的属性就不再淬火了
@@ -130,11 +126,8 @@ export async function quenchOnce(roleId: string, sid: string, randMain: RandMain
// 消耗
let consumes = getQuenchConsume(equipLvl, quality);
let result = await handleCost(roleId, sid, consumes);
if(!result) return false;
let log = new QuenchLogParam(isCriticle, add);
return { randMain, grade, log };
return { randMain, grade, log, consumes };
}
/**
@@ -175,18 +168,17 @@ export function getRandSeResult(id: number, randSe: RandSe[]) {
return randSe
}
export async function refineOnce(roleId: string, sid: string, lv: number, refineLv: number) {
export async function refineOnce(lv: number, refineLv: number) {
let dicRefine = gameData.refine.get(refineLv + 1);
if (!dicRefine) return false;
if(lv < dicRefine.levelLimited) return false;
// 消耗
let result = await handleCost(roleId, sid, dicRefine.consume);
if (!result) return false;
return refineLv + 1;
return {
refineLv: refineLv + 1,
consumes: dicRefine.consume
}
}
export function checkRefineReachNextLv(oldRefineLv: number, refineLv: number) {