任务:装备精炼次数

This commit is contained in:
luying
2022-04-26 17:56:12 +08:00
parent c1b36d38b0
commit b37586a706
5 changed files with 25 additions and 3 deletions

View File

@@ -199,7 +199,7 @@ export class EquipHandler {
let isEnough = await check.decrease(nextEquipQuality.consume);
if(!isEnough) break; // 消耗不足
equipUpdate.qualityStage++;
nextEquipQuality = getNextEquipQuality(curEquip.equipId, equipUpdate.quality, equipUpdate.qualityStage)
nextEquipQuality = getNextEquipQuality(curEquip.equipId, equipUpdate.quality, equipUpdate.qualityStage);
}
} else { // 往下一阶,包括满点之后的升品
let isEnough = await check.decrease(nextEquipQuality.consume);
@@ -260,6 +260,8 @@ export class EquipHandler {
let dicEquipStar = getEquipStarIdByEquipId(curEquip.equipId, curEquip.star);
if(!dicEquipStar) return resResult(STATUS.DIC_DATA_NOT_FOUND);
let isUpStar = curEquip.starStage == dicEquipStar.count;
let count = 0;
if(isUpStar) { // 升星
if(isOneClick) {
return resResult(STATUS.EQUIP_STARSTAGE_IS_MAX);
@@ -276,6 +278,7 @@ export class EquipHandler {
equipUpdate.star = nextEquipStar.star;
equipUpdate.starStage = 0;
incEquipStarSum += equipUpdate.star - curEquip.star;
count++;
}
}
} else { // 升小点,包括一键升到满小点和升一个小点
@@ -284,6 +287,7 @@ export class EquipHandler {
let isEnough = await check.decrease(dicEquipStar.mainConsume);
if(!isEnough) break; // 消耗不足
equipUpdate.starStage = stage;
count++;
}
}
@@ -303,7 +307,7 @@ export class EquipHandler {
console.log('### incEquipStarSum', incEquipStarSum)
let { curRole } = await calculateCeWithHero(HERO_SYSTEM_TYPE.EQUIP_STAR, roleId, serverId, sid, hid, update, { ePlaceId, roleIncUpdate: { equipStarSum: incEquipStarSum } });
await checkTaskInEquipStarUp(serverId, roleId, sid, oldEplace, newEplace, ePlaceId, hid, isUpStar, curRole.equipStarSum);
await checkTaskInEquipStarUp(serverId, roleId, sid, oldEplace, newEplace, ePlaceId, hid, isUpStar, curRole.equipStarSum, count);
pushEquipStarMax(roleId, roleName, serverId, hid, newEquip, isUpStar);
const curHero = {

View File

@@ -1206,6 +1206,12 @@ export class CheckSingleTask {
}
break;
}
case TASK_TYPE.EQUIP_STAR_UP_CNT_SUM: // 110. 装备总共升星x次
{
let { count } = param;
result = { inc: count };
break;
}
}
return result
}

View File

@@ -215,7 +215,7 @@ export async function checkTaskInPutStone(serverId: number, roleId: string, sid:
await task.saveAndPush(sid);
}
export async function checkTaskInEquipStarUp(serverId: number, roleId: string, sid: string, oldEplace: EPlace[], newEplace: EPlace[], ePlaceId: number, hid: number, isUpStar: boolean, equipStarSum: number) {
export async function checkTaskInEquipStarUp(serverId: number, roleId: string, sid: string, oldEplace: EPlace[], newEplace: EPlace[], ePlaceId: number, hid: number, isUpStar: boolean, equipStarSum: number, count: number) {
let task = new CheckTask(serverId, roleId);
if(isUpStar) {
let { oldEquip, newEquip } = getEquipById(oldEplace, newEplace, ePlaceId);
@@ -223,6 +223,7 @@ export async function checkTaskInEquipStarUp(serverId: number, roleId: string, s
task.setParam(TASK_TYPE.EQUIP_SUIT_SEID_NUM, { oldEplace, newEplace, ePlaceId, hid });
}
task.setParam(TASK_TYPE.EQUIP_STAR_UP_CNT, { hid, ePlaceId });
task.setParam(TASK_TYPE.EQUIP_STAR_UP_CNT_SUM, { count });
await task.saveAndPush(sid);
if(isUpStar) {
checkPopUpCondition(serverId, roleId, POP_UP_SHOP_CONDITION_TYPE.EQUIP_STAR, { equipStar: equipStarSum }, sid);

View File

@@ -746,6 +746,7 @@ export enum TASK_TYPE {
JEWEL_QUENCH_SUCCESS = 107, // 天晶淬炼成功
COM_BATTLE_LV = 108, // 军团寻宝
GUILD_REFINE = 109, // 军团兑换
EQUIP_STAR_UP_CNT_SUM = 110, // 装备总共升星x次
}
// 任务累积类型

View File

@@ -898,5 +898,15 @@
"content": 0,
"condition": "count",
"sumType": 2
},
{
"id": 110,
"name": "装备",
"info": "装备精炼x次",
"param": "count&",
"string": "次数&",
"content": 0,
"condition": "count",
"sumType": 2
}
]