粮草先行:结算逻辑
This commit is contained in:
@@ -156,8 +156,6 @@ export class RaceActivityHandler {
|
||||
|
||||
// 结束挑战
|
||||
async battleEnd(msg: { code: string, isSuccess: boolean }, session: BackendSession) {
|
||||
let roleId = session.get('roleId');
|
||||
let sid = session.get('sid');
|
||||
let guildCode = session.get('guildCode');
|
||||
let serverId = session.get('serverId');
|
||||
|
||||
@@ -172,16 +170,10 @@ export class RaceActivityHandler {
|
||||
let myGuildActivityRec = await UserGuildActivityRecModel.updateInfo(code, { isSuccess, isCompleted: true });
|
||||
if (!guildActivityRec || !myGuildActivityRec) return resResult(STATUS.INTERNAL_ERR);
|
||||
|
||||
// 发放活跃
|
||||
await addActive(roleId, serverId, GUILD_POINT_WAYS.ACTIVITY); //获得活跃值
|
||||
// 返回当前军团总军功
|
||||
let r = new Rank(REDIS_KEY.RACE_ACTIVITY, { serverId });
|
||||
let myGuildRank = await r.getMyRank({ guildCode });
|
||||
|
||||
// 任务
|
||||
await checkTask(roleId, sid, TASK_TYPE.GUILD_ACTIVITY, 1, true, { aid: this.aid });
|
||||
//成长任务
|
||||
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.GUILD_ACTIVITY, 1, { aid: this.aid })
|
||||
return resResult(STATUS.SUCCESS, {
|
||||
timestamp: Date.now(),
|
||||
woodenHorse: guildActivityRec.woodenHorse,
|
||||
|
||||
@@ -4,11 +4,11 @@ import { reduceCe } from "../pubUtils/util";
|
||||
import { GUILDACTIVITY } from "../pubUtils/dicParam";
|
||||
import { gameData, getGuildAuctionRewards, getCityActivityRewards } from "../pubUtils/data";
|
||||
import { getCurDay, nowSeconds, getTimeFun } from "../pubUtils/timeUtil";
|
||||
import { GUILD_ACTIVITY_STATUS, GET_POINT_WAYS, GUILD_ACTIVITY_TYPE, REDIS_KEY, AUCTION_SOURCE, MAIL_TYPE, CITY_STATUS, DEBUG_MAGIC_WORD } from "../consts";
|
||||
import { GUILD_ACTIVITY_STATUS, GET_POINT_WAYS, GUILD_ACTIVITY_TYPE, REDIS_KEY, AUCTION_SOURCE, MAIL_TYPE, CITY_STATUS, DEBUG_MAGIC_WORD, GUILD_POINT_WAYS, TASK_TYPE } from "../consts";
|
||||
import { Record, UserGuildActivityRecModel } from "../db/UserGuildActivityRec";
|
||||
import { GateMembersRec, CityParam, Member, WoodenHorse } from "../domain/battleField/guildActivity";
|
||||
import { DicGuildActivity } from "../pubUtils/dictionary/DicGuildActivity";
|
||||
import { getAllServers } from "./redisService";
|
||||
import { getAllServers, getRoleOnlineInfo } from "./redisService";
|
||||
import { SimpleGuildRankParam, SimpleRoleRankParam, SimpleGuildRankWithTimeParam, GuildRankInfo, RoleRankInfo } from "../domain/rank";
|
||||
import { getGuildChannelSid, getWorldChannelSid, getCityChannelSid } from "./chatChannelService";
|
||||
import { pinus } from "pinus";
|
||||
@@ -23,6 +23,8 @@ import { Rank } from "./rankService";
|
||||
import { BossInstanceModel } from "../db/BossInstance";
|
||||
import { UserGuildModel } from "../db/UserGuild";
|
||||
import { raceActivityEnd } from "./timeTaskService";
|
||||
import { addActive } from "./guildService";
|
||||
import { checkTask, checkActivityTask } from "./taskService";
|
||||
|
||||
let gateActivityObj: GateActivityObject;
|
||||
let cityActivityObj: CityActivityObject;
|
||||
@@ -708,8 +710,17 @@ export async function raceActivitySettleReward(guildCode: string, woodenHorse: W
|
||||
|
||||
let dic = gameData.guildActivity.get(GUILD_ACTIVITY_TYPE.RACE_ACTIVITY);
|
||||
let honour = dic.honour + Math.floor(durability * GUILDACTIVITY.RACEACTIVITY_DURABILITY_REWARD);
|
||||
for (let { roleId } of members) {
|
||||
|
||||
for(let { roleId } of members) {
|
||||
await updateUserRecAndSendHonour(honour, 0, myGuildRank, roleId, members);
|
||||
|
||||
let onlineUser = await getRoleOnlineInfo(roleId);
|
||||
// 发放活跃
|
||||
await addActive(roleId, serverId, GUILD_POINT_WAYS.ACTIVITY); //获得活跃值
|
||||
// 任务
|
||||
await checkTask(roleId, onlineUser.sid, TASK_TYPE.GUILD_ACTIVITY, 1, true, { aid: GUILD_ACTIVITY_TYPE.RACE_ACTIVITY });
|
||||
//成长任务
|
||||
await checkActivityTask(serverId, onlineUser.sid, roleId, TASK_TYPE.GUILD_ACTIVITY, 1, { aid: GUILD_ACTIVITY_TYPE.RACE_ACTIVITY })
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -105,7 +105,7 @@ export const GUILDACTIVITY = {
|
||||
RACEACTIVITY_NORMAL_ITEMS: '1&8&15|3&5&10|5&0&1', // 粮草先行普通道具
|
||||
RACEACTIVITY_EVENT_MEMBERCNT: 3, // 粮草先行随机道具获得人数
|
||||
RACEACTIVITY_EVENT_ITEMS: '2&1|4&1|6&1', // 粮草先行根据事件随机人可获得道具
|
||||
RACE_INIT_SPEED: 2, // 粮草先行军团初始速度
|
||||
RACE_INIT_SPEED: 20, // 粮草先行军团初始速度
|
||||
RACE_PER_SPEED: 0.1, // 粮草先行军团每人参加增速
|
||||
};
|
||||
export const GUILD_AUCTION = {
|
||||
|
||||
Reference in New Issue
Block a user