|
|
@@ -17,6 +17,7 @@ const WuBianConstKey = {
|
|
|
ActivityId: 'WubianActivityId',
|
|
|
SynthesisConcurrentMode: 'WubianSynthesisConcurrentMode',
|
|
|
SynthesisRunsPerSecond: 'WubianSynthesisRunsPerSecond',
|
|
|
+ SynthesisAmount: 'WubianSynthesisAmount',
|
|
|
|
|
|
SynthesisCompositeGoodsListReqTime: 'WubianSynthesisCompositeGoodsListReqTime',
|
|
|
SynthesisConvertGoodsListReqTime: 'WubianSynthesisConvertGoodsListReqTime',
|
|
|
@@ -266,6 +267,15 @@ function setActivityDisabled(activityId, bDisabled = true) {
|
|
|
magicJS.data.write(key, bDisabled);
|
|
|
}
|
|
|
|
|
|
+function getSynthesisAmount() {
|
|
|
+ let amount = magicJS.data.read(WuBianConstKey.SynthesisAmount, 10);
|
|
|
+ return Number(amount);
|
|
|
+}
|
|
|
+
|
|
|
+function setSynthesisAmount(amount) {
|
|
|
+ magicJS.data.write(WuBianConstKey.SynthesisAmount, amount);
|
|
|
+}
|
|
|
+
|
|
|
async function trySynthesize() {
|
|
|
let activityData = await getWillActivityData();
|
|
|
magicJS.logger.info(`activityData=${JSON.stringify(activityData)}`);
|
|
|
@@ -288,6 +298,7 @@ async function trySynthesize() {
|
|
|
return;
|
|
|
}
|
|
|
let willCount = getActivityWillCount();
|
|
|
+ willCount = getSynthesisAmount();
|
|
|
let combinationLst = getSynthesizeCombination(retCvtData);
|
|
|
magicJS.logger.info(`combinationLst=${JSON.stringify(combinationLst)}`);
|
|
|
let nExcuteCount = Math.min(willCount, combinationLst.length);
|
|
|
@@ -330,6 +341,12 @@ async function trySynthesize() {
|
|
|
tipsText += `成功兑换次数:${nSuccCount}\n`;
|
|
|
tipsText += `失败兑换次数:${nFailCount}\n`;
|
|
|
tipsText += `未知结果次数:${nExcuteCount * nRuns - nSuccCount - nFailCount}\n`;
|
|
|
+ if (nSuccCount >= willCount) {
|
|
|
+ tipsText += `由于兑换次数已达到配置的次数,该活动自动禁用\n`;
|
|
|
+ setActivityDisabled(activityId, true);
|
|
|
+ } else {
|
|
|
+ setSynthesisAmount(willCount - nSuccCount);
|
|
|
+ }
|
|
|
} else {
|
|
|
for (let n = 0; n < nRuns; n++) {
|
|
|
let startTime = Date.now();
|