镇念塔:排行榜

This commit is contained in:
luying
2021-08-17 19:35:44 +08:00
parent 13d55ca5c0
commit 2c338281aa
8 changed files with 17 additions and 17 deletions

View File

@@ -648,7 +648,7 @@ export class FriendHandler {
let rank = await r.getMyRank({ roleId: oppoRoleId });//去redis中获取排名
result = new PlayerDetail({ ...role, defCe: topLineupCe, heroes });
result.setWarStar(role.warStar, rank, towerLv);
result.setWarStar(role.warStar, rank, towerLv - 1);
return resResult(STATUS.SUCCESS, result);
}

View File

@@ -57,7 +57,7 @@ export class RoleHandler {
} else if (type == RANK_TYPE.SUM_CE) {
myRank = await r.generMyRankWithRole(roleId, role.ce, role.updatedAt.getTime(), role);
} else if (type == RANK_TYPE.TOWER) {
myRank = await r.generMyRankWithRole(roleId, role.towerLv, role.towerUpTime?.getTime() || 0, role);
myRank = await r.generMyRankWithRole(roleId, role.towerLv - 1, role.towerUpTime?.getTime() || 0, role);
} else if (type == RANK_TYPE.DUNGEON) {
myRank = await r.generMyRankWithRole(roleId, role.dungeonWarId, role.dungeonUpdatedAt, role);
} else if (type == RANK_TYPE.MAIN) {

View File

@@ -26,11 +26,8 @@ import { DicTowerTask } from '../pubUtils/dictionary/DicTowerTask';
export async function getTowerStatus(role: RoleType) {
let { towerLv, roleId, serverId } = role;
if (!towerLv) {
towerLv = 1;
let role = await RoleModel.towerLvUp(roleId);
// 更新redis
let r = new Rank(REDIS_KEY.TOWER_RANK, { serverId });
await r.setRankWithRoleInfo(roleId, towerLv, role.towerUpTime.getTime(), role);
towerLv = role.towerLv;
}
let towerRec = await TowerRecordModel.getRecordByLv(roleId, towerLv);
if (!towerRec) {
@@ -197,21 +194,21 @@ export async function towerBattleEnd(sid: string, funcs: number[], roleId: strin
let role = await RoleModel.towerLvUp(roleId);
// 更新redis
let r = new Rank(REDIS_KEY.TOWER_RANK, { serverId });
await r.setRankWithRoleInfo(roleId, towerLv + 1, role.towerUpTime.getTime(), role);
await r.setRankWithRoleInfo(roleId, role.towerLv - 1, role.towerUpTime.getTime(), role);
const nextTowerInfo = gameData.tower.get(towerLv + 1);
const nextTowerInfo = gameData.tower.get(role.towerLv);
if (nextTowerInfo) {
const { warArray } = nextTowerInfo;
const sts = warArray.map(id => {
return { warId: id, status: false };
});
await TowerRecordModel.createRecord({ roleId, lv: towerLv + 1, warStatus: sts });
await TowerRecordModel.createRecord({ roleId, lv: role.towerLv, warStatus: sts });
}
const { reward } = gameData.tower.get(towerLv);
const { reward } = gameData.tower.get(role.towerLv - 1);
if (reward) towerReward = reward;
if (towerLv + 1 == HANG_UP_CONSTS.ENABLE_LV) {
if (role.towerLv == HANG_UP_CONSTS.ENABLE_LV) {
await startHangUp(roleId, roleName);
pinus.app.get('channelService').pushMessageByUids('hangUpEnable', resResult(STATUS.SUCCESS, { enable: true }), [{ uid: roleId, sid }]);
}

View File

@@ -59,7 +59,8 @@ export function getRandComBtlRobots(topLineupCe: number, ceLimit: number, lv: nu
} else {
robotCe = getRandValue(topLineupCe || 0, COM_BTL_CONST.ROBOT_CE_RATIO, 0);
}
const robotLv = getRandValue(lv, COM_BTL_CONST.ROBOT_CE_RATIO, 0);
let robotLv = getRandValue(lv, COM_BTL_CONST.ROBOT_CE_RATIO, 0);
if(robotLv > gameData.maxPlayerLv.max) robotLv = gameData.maxPlayerLv.max;
// const imgHid = robot[Math.floor(Math.random() * robot.length)];
const { robotRoleId, robotRoleName } = robotInfos[idx];
let robotStatus = new RoleStatus(robotRoleId, robotRoleName, false, false, EXTERIOR.EXTERIOR_FACE, EXTERIOR.EXTERIOR_FACECASE, EXTERIOR.EXTERIOR_APPEARANCE, robotCe, robotLv, robot, true);

View File

@@ -781,7 +781,9 @@ export async function setRankRedisFromDb(type: string, args?: { serverId?: numbe
r.setIsInit(true);
for (let role of ranks) {
// console.log(roleId);
await r.setRankWithRoleInfo(role.roleId, role.towerLv, role.towerUpTime ? role.towerUpTime.getTime() : 0, role);
if(role.towerLv > 1) {
await r.setRankWithRoleInfo(role.roleId, role.towerLv, role.towerUpTime ? role.towerUpTime.getTime() : 0, role);
}
}
} else if (type == REDIS_KEY.GUILD_ACTIVE_RANK) {
let serverId = args.serverId;

View File

@@ -131,7 +131,7 @@ export class GrowthData extends ActivityBase {
let heroes = userHeroes.filter(hero => { return hero.lv >= lv })
obj.totalCount = heroes.length;
} else if (obj.taskType === TASK_TYPE.BATTLE_TOWER_LV) {
obj.totalCount = towerLv;
obj.totalCount = towerLv - 1;
}
}
}

View File

@@ -281,7 +281,7 @@ export class SevenDaysGrowthData {
let heroes = userHeroes.filter(hero => { return hero.lv >= lv })
obj.totalCount = heroes.length;
} else if (obj.taskType === TASK_TYPE.BATTLE_TOWER_LV) {
obj.totalCount = towerLv;
obj.totalCount = towerLv - 1;
}
}
}

View File

@@ -10,8 +10,8 @@ import ExportAuth from '../../../app/service/Auth';
import ExportGame from '../../../app/service/Game';
import ExportTest from '../../../app/service/Test';
import ExportTurboCore from '../../../app/service/TurboCore';
import ExportUtils from '../../../app/service/Utils';
import ExportUpdate from '../../../app/service/Update';
import ExportUtils from '../../../app/service/Utils';
declare module 'egg' {
interface IService {
@@ -19,7 +19,7 @@ declare module 'egg' {
game: AutoInstanceType<typeof ExportGame>;
test: AutoInstanceType<typeof ExportTest>;
turboCore: AutoInstanceType<typeof ExportTurboCore>;
utils: AutoInstanceType<typeof ExportUtils>;
update: AutoInstanceType<typeof ExportUpdate>;
utils: AutoInstanceType<typeof ExportUtils>;
}
}