抽卡:免费抽卡次数

This commit is contained in:
luying
2022-08-03 11:27:20 +08:00
parent a77304b271
commit e1e9da4a80
7 changed files with 29 additions and 25 deletions

View File

@@ -93,12 +93,14 @@ export class GachaHandler {
userGacha = await UserGachaModel.updateInfo(roleId, gachaId, activityId, {
freeCount, hope, floor, count: historyCount + count
});
let newDicGacha = getDicGachaByGachaCnt(dicGacha, userGacha.count);
await UserGachaRecModel.createRec(roleId, gachaId, activityId, count, resultList);
if(dicGacha.isTask) await checkTaskInGacha(serverId, roleId, sid, count, resultHeroes, resultList, false);
return resResult(STATUS.SUCCESS, {
gachaId, activityId,
freeCount, refFreeTime: userGacha.refFreeTime, count: userGacha.count, point: userGacha.point, floor, hope,
isFree: freeCount < newDicGacha.free.count, cost: newDicGacha.cost,
count: userGacha.count, point: userGacha.point, floor, hope,
// heroes: resultHeroes,
addHeros: heroes,
result: resultList,

View File

@@ -275,7 +275,7 @@ export class NormalBattleHandler {
pushVestigeFirstMsg(roleId, roleName, serverId, warInfo.warType, warInfo.war_id);
}
// 是否首次3星
if (newStar == 3 && (!isFirst || curWarStar.star != 3)) {
if (newStar == 3 && (isFirst || curWarStar.star != 3)) {
warReward.setCondition(1, true);
}

View File

@@ -26,6 +26,8 @@ export async function getGachaList(roleId: string) {
let userGacha = userGachaList.find(cur => cur.gachaId == id);
if (userGacha)
userGacha = await refreshGacha(dicGacha, userGacha);
dicGacha = getDicGachaByGachaCnt(dicGacha, userGacha?.count||0);
let param = new GachaListReturn(dicGacha, userGacha);
list.push(param);
}

View File

@@ -1,15 +1,13 @@
import { ACTIVITY_TYPE } from '../../consts';
import { ActivityModel, ActivityModelType } from '../../db/Activity';
import { ActivityNewHeroGiftModel, ActivityNewHeroGiftModelType } from '../../db/ActivityNewHeroGift';
import { ActivityNewHeroGKModel, ActivityNewHeroGKModelType } from '../../db/ActivityNewHeroGK';
import { RoleModel } from '../../db/Role';
import { ServerlistModel } from '../../db/Serverlist';
import { UserGachaModel, UserGachaType } from '../../db/UserGacha';
import { NewHeroGachaData } from '../../domain/activityField/newHeroGachaField';
import { NewHeroGiftData } from '../../domain/activityField/newHeroGiftField';
import { NewHeroGKData } from '../../domain/activityField/newHeroGKField';
import { gameData } from '../../pubUtils/data';
import { getRoleCreateTime, getServerCreateTime } from '../redisService';
import { getActivitiesByType, getActivityById } from './activityService';
import { getActivityById } from './activityService';
import { refreshGacha } from './gachaService';
@@ -26,9 +24,10 @@ import { getActivitiesByType, getActivityById } from './activityService';
let createTime = await getRoleCreateTime(roleId);
let serverTime = await getServerCreateTime(serverId);
let playerData = new NewHeroGachaData(activityData, createTime, serverTime);
let playerRecord: UserGachaType = await UserGachaModel.findByRole(roleId, playerData.gachaId);
playerData.setPlayerRecords(playerRecord);
let userGacha: UserGachaType = await UserGachaModel.findByRole(roleId, playerData.gachaId);
let dicGacha = gameData.gacha.get(playerData.gachaId);
userGacha = await refreshGacha(dicGacha, userGacha);
playerData.setPlayerRecords(userGacha, dicGacha);
return playerData;
}