新武将活动:修改字段以及ur武将处理

This commit is contained in:
luying
2022-10-12 10:35:14 +08:00
parent eccd9f0051
commit 9f5771e923
16 changed files with 79 additions and 69 deletions
@@ -483,7 +483,7 @@ export class GachaPull {
export function getAllHeroByQuality(quality: number) {
let allHero: number[] = [];
let allQuality: number[] = [];
for (let { actorId } of gameData.recruit) {
for (let [actorId] of gameData.recruit) {
let dicHero = gameData.hero.get(actorId);
if (dicHero.quality == quality) {
allHero.push(actorId);
@@ -27,6 +27,9 @@ import { refreshGacha } from './gachaService';
let userGacha: UserGachaType = await UserGachaModel.findByRole(roleId, playerData.gachaId, activityId);
let dicGacha = gameData.gacha.get(playerData.gachaId);
userGacha = await refreshGacha(dicGacha, userGacha);
if(!userGacha.pickHero) {
userGacha = await UserGachaModel.updateInfo(roleId, playerData.gachaId, activityId, { pickHero: playerData.getDefaultHero() })
}
playerData.setPlayerRecords(userGacha, dicGacha);
return playerData;
@@ -94,6 +97,15 @@ export async function challengeNewHeroGK(serverId: number, roleId: string, activ
*
*/
export async function newHeroGiftPoint(serverId: number, activityId: number, roleId: string, addPoint: number) {
let result = await ActivityNewHeroGiftModel.addPoint(serverId, activityId, roleId, addPoint);
return result.totalPoint;
let activityData = await getActivityById(activityId);
let createTime = await getRoleCreateTime(roleId);
let serverTime = await getServerCreateTime(serverId);
let playerData = new NewHeroGiftData(activityData, createTime, serverTime);
if(playerData.canRecordTaskPoint()) {
let result = await ActivityNewHeroGiftModel.addPoint(serverId, activityId, roleId, addPoint);
return result.totalPoint;
}
return 0
}
+2 -2
View File
@@ -621,8 +621,8 @@ export function getRandRobot(cnt = 1, withAttr = false) {
heroes.push(new ComRoleStatusHero({
hid: hero.actorId,
skinId: hero.actorId,
star: hero.star||dicHero.initialStars,
colorStar: 0,
star: hero.star? hero.star: dicHero.initialStar,
colorStar: hero.star? 0: dicHero.initialColorStar,
lv: hero.lv,
quality: dicHero.quality
}));
+1 -1
View File
@@ -1102,7 +1102,7 @@ export async function setRankRedisFromDb(type: string, args?: { serverId?: numbe
} else if (type == REDIS_KEY.HERO_RANK) {
let serverId = args.serverId;
for (let { actorId: hid } of gameData.recruit) {
for (let [hid] of gameData.recruit) {
let ranks = await HeroModel.getRank(hid, serverId, HERO_SELECT.RANK_LINEUP);
let r = new Rank(type, { serverId, hid });
r.setIsInit(true);