装备:天晶石洗练

This commit is contained in:
luying
2022-02-16 20:14:35 +08:00
parent 925468ae64
commit 82b15e5792
9 changed files with 215 additions and 190 deletions
+11 -9
View File
@@ -1,5 +1,5 @@
import { mergeSameGoods, getRandEelm, getRandValueByMinMax } from '../pubUtils/util';
import { EquipModel, RandMain, RandSe } from "../db/Equip";
import { EquipModel, RandMain } from "../db/Equip";
import { EPlace, HeroModel, HeroType, Stone } from "../db/Hero";
import { getGoodById, gameData, getQuenchGradeByValue, getQuenchConsume, getQuenchByQualityAndGrade } from "../pubUtils/data";
import { calPlayerCeAndSave } from "./playerCeService";
@@ -8,7 +8,7 @@ import { dicGoods, DicGoods } from '../pubUtils/dictionary/DicGoods';
import { QuenchLogParam } from '../domain/roleField/equip';
import { QUENCH } from '../pubUtils/dicParam';
import { DicQuenchQuality } from '../pubUtils/dictionary/DicQuenchQuality';
import { JewelType } from '../db/Jewel';
import { JewelType, RandSe } from '../db/Jewel';
/**
* 校验前端传入的消耗数量是否准确,并返回消耗的道具并加上特殊材料needConsumes
@@ -148,24 +148,26 @@ export function checkQuenchMaxByQualityAndGrade(quality: number, grade: number,
}
export function getRandSeResult(id: number, randSe: RandSe[]) {
let dicGoods = gameData.goods.get(id);
if (!dicGoods) return false;
let { randomEffect } = gameData.jewel.get(id);
let { randomEffect } = dicGoods; // 配置的可随机seid
let chosen = randSe.filter(cur => cur.locked).map(cur => cur.seid); // 上一轮随机出来的
let randomResult: number[] = getRandEelm(randomEffect.filter(cur => !chosen.includes(cur)), randSe.length); // 随机出的结果
let newRandSe: RandSe[] = [];
for (let i = 0; i < randSe.length; i++) {
if (!randSe[i].locked) {
if(randSe[i].locked) {
newRandSe.push(randSe[i]);
} else {
let random = gameData.randomEffectPool.get(randomResult[i]);
if (!random) break;
let rand = 0;
if (random.id > 0) rand = getRandValueByMinMax(random.Min, random.Max, 0);
randSe[i].seid = random.id;
randSe[i].rand = rand;
let newSe = new RandSe(randSe[i].id, random.id, rand);
newRandSe.push(newSe)
}
}
return randSe
return newRandSe
}
export async function refineOnce(lv: number, refineLv: number) {
+2 -2
View File
@@ -26,8 +26,8 @@ interface calPlayerReturn {
}
//修改并下发战力
export async function calPlayerCeAndSave(type: number, sid: string, roleId: string, originHero: HeroType, update: HeroUpdate, args?: Array<number>) {
let result = await pubCalPlayerCeAndSave(type, roleId, originHero, update, args);
export async function calPlayerCeAndSave(type: number, sid: string, roleId: string, originHero: HeroType, update: HeroUpdate, args?: Array<number>, params?: any) {
let result = await pubCalPlayerCeAndSave(type, roleId, originHero, update, args, params);
return await pushCalPlayerCe(roleId, sid, result);
}