军团活动测试:debug诸侯混战挑战时间
This commit is contained in:
@@ -372,6 +372,7 @@ export class GmHandler {
|
|||||||
await pinus.app.rpc.systimer.systimerRemote.setGuildActivitySchedule.broadcast();
|
await pinus.app.rpc.systimer.systimerRemote.setGuildActivitySchedule.broadcast();
|
||||||
// 向客户端发送时间
|
// 向客户端发送时间
|
||||||
let time = <number>getTimeFunM().getTimeWithWeek(day, 20, 0, 0) - startActivity;
|
let time = <number>getTimeFunM().getTimeWithWeek(day, 20, 0, 0) - startActivity;
|
||||||
|
pinus.app.rpc.guild.guildActivityRemote.setCurrentTime.broadcast(time);
|
||||||
await pushCurrentTime(time);
|
await pushCurrentTime(time);
|
||||||
return resResult(STATUS.SUCCESS, {
|
return resResult(STATUS.SUCCESS, {
|
||||||
startActivity: startTimes[0],
|
startActivity: startTimes[0],
|
||||||
@@ -382,4 +383,22 @@ export class GmHandler {
|
|||||||
endWorldAuction: startTimes[0] + endActivity * 1000 + startGuildAuction * 1000 + endGuildAuction * 1000 + startWorldAuction * 1000 + endWorldAuction * 1000,
|
endWorldAuction: startTimes[0] + endActivity * 1000 + startGuildAuction * 1000 + endGuildAuction * 1000 + startWorldAuction * 1000 + endWorldAuction * 1000,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async cancelGuildActivityDebug(msg: { }, session: BackendSession) {
|
||||||
|
// 设置字典
|
||||||
|
let now = new Date();
|
||||||
|
|
||||||
|
await pinus.app.rpc.guild.guildRemote.reloadResources.broadcast();
|
||||||
|
await pinus.app.rpc.systimer.systimerRemote.reloadResources.broadcast();
|
||||||
|
await pinus.app.rpc.guild.guildActivityRemote.setDay.broadcast(now.getDay());
|
||||||
|
await pinus.app.rpc.systimer.systimerRemote.setDay.broadcast(now.getDay());
|
||||||
|
|
||||||
|
// 开启定时器
|
||||||
|
await pinus.app.rpc.systimer.systimerRemote.setAuctionSchedule.broadcast();
|
||||||
|
await pinus.app.rpc.systimer.systimerRemote.setGuildActivitySchedule.broadcast();
|
||||||
|
// 向客户端发送时间
|
||||||
|
pinus.app.rpc.guild.guildActivityRemote.setCurrentTime.broadcast(now.getTime());
|
||||||
|
await pushCurrentTime(now.getTime());
|
||||||
|
return resResult(STATUS.SUCCESS);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -10,12 +10,13 @@ import { UserGuildModel } from "../../../db/UserGuild";
|
|||||||
import { GuildActivityRecordModel } from "../../../db/GuildActivityRec";
|
import { GuildActivityRecordModel } from "../../../db/GuildActivityRec";
|
||||||
import { nowSeconds, getTimeFun } from "../../../pubUtils/timeUtil";
|
import { nowSeconds, getTimeFun } from "../../../pubUtils/timeUtil";
|
||||||
import { getGoldObject } from "../../../pubUtils/itemUtils";
|
import { getGoldObject } from "../../../pubUtils/itemUtils";
|
||||||
import { GUILDACTIVITY } from "../../../pubUtils/dicParam";
|
import { GUILDACTIVITY, SERVER_DEBUG_MODE } from "../../../pubUtils/dicParam";
|
||||||
import { handleCost } from "../../../services/rewardService";
|
import { handleCost } from "../../../services/rewardService";
|
||||||
import { addActive } from "../../../services/guildService";
|
import { addActive } from "../../../services/guildService";
|
||||||
import { Rank } from "../../../services/rankService";
|
import { Rank } from "../../../services/rankService";
|
||||||
import { checkActivityTask, checkTask } from "../../../services/taskService";
|
import { checkActivityTask, checkTask } from "../../../services/taskService";
|
||||||
import { guildInter } from "../../../pubUtils/interface";
|
import { guildInter } from "../../../pubUtils/interface";
|
||||||
|
import { dispatch } from "../../../pubUtils/dispatcher";
|
||||||
|
|
||||||
export default function (app: Application) {
|
export default function (app: Application) {
|
||||||
new HandlerService(app, {});
|
new HandlerService(app, {});
|
||||||
@@ -69,7 +70,10 @@ export class CityActivityHandler {
|
|||||||
let obj = getCityActivityObj();
|
let obj = getCityActivityObj();
|
||||||
let gateHp = obj.getGateHpAndInc(serverId, cityId, dicCity.hp);
|
let gateHp = obj.getGateHpAndInc(serverId, cityId, dicCity.hp);
|
||||||
|
|
||||||
let myGuildActivityRec = await UserGuildActivityRecModel.findByRoleId(roleId, this.aid);
|
let guildActivityRec = await GuildActivityRecordModel.getRecord(guildCode, serverId, this.aid);
|
||||||
|
if (!guildActivityRec) return resResult(STATUS.INTERNAL_ERR);
|
||||||
|
|
||||||
|
let myGuildActivityRec = await UserGuildActivityRecModel.findByRoleId(roleId, guildActivityRec.code);
|
||||||
let challengeTime = 0;
|
let challengeTime = 0;
|
||||||
if (myGuildActivityRec) {
|
if (myGuildActivityRec) {
|
||||||
challengeTime = myGuildActivityRec.challengeTime;
|
challengeTime = myGuildActivityRec.challengeTime;
|
||||||
@@ -278,7 +282,13 @@ export class CityActivityHandler {
|
|||||||
if (!dicCity) return resResult(STATUS.DIC_DATA_NOT_FOUND);
|
if (!dicCity) return resResult(STATUS.DIC_DATA_NOT_FOUND);
|
||||||
|
|
||||||
// 更新userGuildActivityRecord
|
// 更新userGuildActivityRecord
|
||||||
let challengeTime = <number>getTimeFun().getBeforeSeconds(-1 * GUILDACTIVITY.CITYACTIVITY_CHALLENGE_CD);
|
let challengeTime = nowSeconds() + GUILDACTIVITY.CITYACTIVITY_CHALLENGE_CD;
|
||||||
|
if(SERVER_DEBUG_MODE.CURRENT_TIME == 1) {
|
||||||
|
let guilds = pinus.app.getServersByType('guild');
|
||||||
|
let guild = dispatch(roleId, guilds, 'guild');
|
||||||
|
let currentTime = await pinus.app.rpc.guild.guildActivityRemote.getCurrentTime.toServer(guild.id);
|
||||||
|
challengeTime = Math.floor(currentTime/1000) + GUILDACTIVITY.CITYACTIVITY_CHALLENGE_CD;
|
||||||
|
}
|
||||||
let myGuildActivityRec = await UserGuildActivityRecModel.updateInfo(code, { isSuccess, isCompleted: true, cityId, challengeTime });
|
let myGuildActivityRec = await UserGuildActivityRecModel.updateInfo(code, { isSuccess, isCompleted: true, cityId, challengeTime });
|
||||||
if (!myGuildActivityRec) return resResult(STATUS.INTERNAL_ERR);
|
if (!myGuildActivityRec) return resResult(STATUS.INTERNAL_ERR);
|
||||||
|
|
||||||
|
|||||||
@@ -16,6 +16,8 @@ export class GuildActivityRemote {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private channelService: ChannelService;
|
private channelService: ChannelService;
|
||||||
|
private currentTime: number = Date.now();
|
||||||
|
private setTime: number = Date.now();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 从systimer服分发到guild各个服,发送排行榜数据
|
* 从systimer服分发到guild各个服,发送排行榜数据
|
||||||
@@ -88,4 +90,13 @@ export class GuildActivityRemote {
|
|||||||
async setDay(week: number) {
|
async setDay(week: number) {
|
||||||
setWeek(week);
|
setWeek(week);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
setCurrentTime(time: number) {
|
||||||
|
this.currentTime = time;
|
||||||
|
this.setTime = Date.now();
|
||||||
|
}
|
||||||
|
|
||||||
|
getCurrentTime() {
|
||||||
|
return Date.now() - this.setTime + this.currentTime;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -7,7 +7,7 @@ import { getCurDay, getTimeFunD, getTimeFunM } from '../pubUtils/timeUtil';
|
|||||||
import { gameData, getGoodById } from '../pubUtils/data';
|
import { gameData, getGoodById } from '../pubUtils/data';
|
||||||
import { DividendParam, DividendType } from '../db/Dividend';
|
import { DividendParam, DividendType } from '../db/Dividend';
|
||||||
import { sendMailByContent } from './mailService';
|
import { sendMailByContent } from './mailService';
|
||||||
import { FrontendOrBackendSession } from 'pinus';
|
import { FrontendOrBackendSession, pinus } from 'pinus';
|
||||||
import { participants } from './guildActivityService';
|
import { participants } from './guildActivityService';
|
||||||
import { Member } from '../domain/battleField/guildActivity';
|
import { Member } from '../domain/battleField/guildActivity';
|
||||||
import * as dicParam from '../pubUtils/dicParam';
|
import * as dicParam from '../pubUtils/dicParam';
|
||||||
@@ -230,7 +230,7 @@ export async function startGuildAuction() {
|
|||||||
if(dicParam.SERVER_DEBUG_MODE.CURRENT_TIME == 1) {
|
if(dicParam.SERVER_DEBUG_MODE.CURRENT_TIME == 1) {
|
||||||
let day = getCurDay();
|
let day = getCurDay();
|
||||||
let time = <number>getTimeFunM().getTimeWithWeek(day, 20, 20, 0);
|
let time = <number>getTimeFunM().getTimeWithWeek(day, 20, 20, 0);
|
||||||
await pushCurrentTime(time);
|
pinus.app.rpc.guild.guildActivityRemote.setCurrentTime.broadcast(time);
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
@@ -251,7 +251,7 @@ export async function startWorldAuction() {
|
|||||||
if(dicParam.SERVER_DEBUG_MODE.CURRENT_TIME == 1) {
|
if(dicParam.SERVER_DEBUG_MODE.CURRENT_TIME == 1) {
|
||||||
let day = getCurDay();
|
let day = getCurDay();
|
||||||
let time = <number>getTimeFunM().getTimeWithWeek(day, 20, 40, 0);
|
let time = <number>getTimeFunM().getTimeWithWeek(day, 20, 40, 0);
|
||||||
await pushCurrentTime(time);
|
pinus.app.rpc.guild.guildActivityRemote.setCurrentTime.broadcast(time);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
@@ -270,7 +270,7 @@ export async function stopAuction() {
|
|||||||
if(dicParam.SERVER_DEBUG_MODE.CURRENT_TIME == 1) {
|
if(dicParam.SERVER_DEBUG_MODE.CURRENT_TIME == 1) {
|
||||||
let day = getCurDay();
|
let day = getCurDay();
|
||||||
let time = <number>getTimeFunM().getTimeWithWeek(day, 22, 0, 0);
|
let time = <number>getTimeFunM().getTimeWithWeek(day, 22, 0, 0);
|
||||||
await pushCurrentTime(time);
|
pinus.app.rpc.guild.guildActivityRemote.setCurrentTime.broadcast(time);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import { refDailyTask, refDailyTaskBox } from './taskService'
|
|||||||
// import { EVENT_STATUS, FUNCS_ID } from "../consts";
|
// import { EVENT_STATUS, FUNCS_ID } from "../consts";
|
||||||
// import { startEvent } from "./eventSercive";
|
// import { startEvent } from "./eventSercive";
|
||||||
import * as dicParam from '../pubUtils/dicParam';
|
import * as dicParam from '../pubUtils/dicParam';
|
||||||
|
import { dispatch } from "../pubUtils/dispatcher";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 刷新
|
* 刷新
|
||||||
@@ -17,7 +18,14 @@ export async function refresh(session: FrontendOrBackendSession) {
|
|||||||
const sid = session.get('sid');
|
const sid = session.get('sid');
|
||||||
|
|
||||||
let uids = [{uid: roleId, sid}];
|
let uids = [{uid: roleId, sid}];
|
||||||
if(dicParam.SERVER_DEBUG_MODE.CURRENT_TIME != 1) pinus.app.get('channelService').pushMessageByUids('onPushCurrentTime', resResult(STATUS.SUCCESS, {time: Date.now()}), uids);
|
if(dicParam.SERVER_DEBUG_MODE.CURRENT_TIME != 1) {
|
||||||
|
pinus.app.get('channelService').pushMessageByUids('onPushCurrentTime', resResult(STATUS.SUCCESS, {time: Date.now()}), uids);
|
||||||
|
} else {
|
||||||
|
let guilds = pinus.app.getServersByType('guild');
|
||||||
|
let guild = dispatch(roleId, guilds, 'guild');
|
||||||
|
let currentTime = await pinus.app.rpc.guild.guildActivityRemote.getCurrentTime.toServer(guild.id);
|
||||||
|
pinus.app.get('channelService').pushMessageByUids('onPushCurrentTime', resResult(STATUS.SUCCESS, {time: currentTime }), uids);
|
||||||
|
}
|
||||||
await refreshDaily(session);
|
await refreshDaily(session);
|
||||||
// await startEvent(session);
|
// await startEvent(session);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ export class DamageRecord {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@index({ code: 1 })
|
@index({ code: 1 })
|
||||||
|
@index({ roleId: 1, sourceCode: 1 })
|
||||||
export default class UserGuildActivityRec extends BaseModel {
|
export default class UserGuildActivityRec extends BaseModel {
|
||||||
|
|
||||||
@prop({ required: true })
|
@prop({ required: true })
|
||||||
@@ -105,9 +106,9 @@ export default class UserGuildActivityRec extends BaseModel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static async findByRoleId(roleId: string, aid: number) {
|
public static async findByRoleId(roleId: string, sourceCode: string) {
|
||||||
let today = getZeroPointD();
|
let today = getZeroPointD();
|
||||||
let rec: UserGuildActivityRecType = await UserGuildActivityRecModel.findOne({ roleId, aid, createdAt: { $gte: today }}).lean();
|
let rec: UserGuildActivityRecType = await UserGuildActivityRecModel.findOne({ roleId, sourceCode, createdAt: { $gte: today }}).lean();
|
||||||
|
|
||||||
return rec;
|
return rec;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user