军团活动:修改诸侯混战城门血量计算公式
This commit is contained in:
@@ -1092,6 +1092,8 @@ export enum LOG_TYPE {
|
||||
PAY = 'pay', // 充值
|
||||
ITEM_CHANGE = 'itemChange', // 道具变动
|
||||
RECEIVE_MAIL = 'receiveMail', // 领取邮件
|
||||
GATE_HP = 'gateHp', // 诸侯混战城门
|
||||
BOSS_HP = 'bossHp', // 演武台boss血量
|
||||
}
|
||||
|
||||
export enum CE_CHANGE_REASON {
|
||||
|
||||
@@ -53,6 +53,9 @@ export default class ServerRecord extends BaseModel {
|
||||
@prop({ required: true, type: String, default: [] })
|
||||
activeGuildCodes: string[]; // 前一天参与军团活动的军团
|
||||
|
||||
@prop({ required: true, type: String, default: [] })
|
||||
activeGuildMembers: string[]; // 前一天参与军团活动的玩家
|
||||
|
||||
@prop({ required: true, type: GuildRecord, _id: false })
|
||||
activeGuilds: GuildRecord[];
|
||||
|
||||
@@ -62,9 +65,9 @@ export default class ServerRecord extends BaseModel {
|
||||
return rec;
|
||||
}
|
||||
|
||||
public static async addActiveGuild(serverId: number, guildCode: string) {
|
||||
public static async addActiveGuild(serverId: number, roleId: string, guildCode: string) {
|
||||
let tomorrow = getZeroPoint() + 86400;
|
||||
let rec: ServerRecordType = await ServerRecordModel.findOneAndUpdate({ serverId, today: tomorrow }, { $addToSet: { activeGuildCodes: guildCode } }, { new: true, upsert: true }).lean();
|
||||
let rec: ServerRecordType = await ServerRecordModel.findOneAndUpdate({ serverId, today: tomorrow }, { $addToSet: { activeGuildCodes: guildCode, activeGuildMembers: roleId } }, { new: true, upsert: true }).lean();
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
@@ -9,6 +9,46 @@ class MalReward {
|
||||
count: number;
|
||||
}
|
||||
|
||||
export class GateHpLog {
|
||||
@prop({ required: false })
|
||||
activePlayerCnt: number;
|
||||
@prop({ required: false })
|
||||
activePlayerCe: number;
|
||||
@prop({ required: false })
|
||||
activeTopPlayerCnt: number;
|
||||
@prop({ required: false })
|
||||
activeGuildCnt: number;
|
||||
@prop({ required: false })
|
||||
atk: number;
|
||||
@prop({ required: false })
|
||||
A: number;
|
||||
@prop({ required: false })
|
||||
hpBase: number;
|
||||
@prop({ required: false })
|
||||
N: number;
|
||||
@prop({ required: false })
|
||||
gateHp: number;
|
||||
}
|
||||
|
||||
export class BossHpLog {
|
||||
@prop({ required: false })
|
||||
minBossHp: number;
|
||||
@prop({ required: false })
|
||||
bossHpRatio: number;
|
||||
@prop({ required: false })
|
||||
hp: number;
|
||||
@prop({ required: false })
|
||||
activeCe: number;
|
||||
@prop({ required: false })
|
||||
playerCnt: number;
|
||||
@prop({ required: false })
|
||||
subCe: number;
|
||||
@prop({ required: false })
|
||||
B: number;
|
||||
@prop({ required: false })
|
||||
bossHp: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* 玩家充值订单
|
||||
*/
|
||||
@@ -19,16 +59,16 @@ export default class UserLog extends BaseModel {
|
||||
@prop({ required: true })
|
||||
type: string; // 类型 LOG_TYPE
|
||||
|
||||
@prop({ required: true })
|
||||
@prop({ required: false })
|
||||
uid: number; // uid
|
||||
|
||||
@prop({ required: true })
|
||||
serverId: number; // 小区id
|
||||
|
||||
@prop({ required: true })
|
||||
@prop({ required: false })
|
||||
roleId: string; // 角色id
|
||||
|
||||
@prop({ required: true })
|
||||
@prop({ required: false })
|
||||
roleName: string; // 角色名
|
||||
|
||||
@prop({ required: false })
|
||||
@@ -101,6 +141,22 @@ export default class UserLog extends BaseModel {
|
||||
@prop({ required: false })
|
||||
mailSendName: string; // 邮件发件人
|
||||
|
||||
// 诸侯混战城门血条记录
|
||||
@prop({ required: false })
|
||||
cityId: number; // 城id
|
||||
|
||||
@prop({ required: false, type: GateHpLog, _id: false })
|
||||
gateHp: GateHpLog; // 诸侯混战血量参数
|
||||
|
||||
// 军团boss血量记录
|
||||
@prop({ required: false })
|
||||
guildCode: string; // 军团code
|
||||
|
||||
@prop({ required: false })
|
||||
warId: number; // 城id
|
||||
|
||||
@prop({ required: false, type: BossHpLog, _id: false })
|
||||
bossHp: BossHpLog; // 诸侯混战血量参数
|
||||
|
||||
public static async createRecord(params: UserLogModelTypeParam) {
|
||||
const r = await UserLogModel.insertMany(params);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { ACTIVITY_TYPE, CURRENCY_BY_TYPE, CURRENCY_TYPE, HERO_SYSTEM_TYPE, LOG_TYPE } from "../consts";
|
||||
import { RoleModel, RoleType, RoleUpdate } from "../db/Role";
|
||||
import { UserLogModel } from "../db/UserLog";
|
||||
import { UserLogModel, GateHpLog, BossHpLog } from "../db/UserLog";
|
||||
import { UserOrderModelType } from "../db/UserOrder";
|
||||
import { Figure } from "../domain/dbGeneral";
|
||||
import { MailParam } from "../domain/roleField/mail";
|
||||
@@ -109,4 +109,20 @@ export async function saveMailLog(session: any, mails: MailParam[]) {
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
}
|
||||
}
|
||||
|
||||
export async function saveGuildGateHpLog(serverId: number, cityId: number, log: GateHpLog) {
|
||||
try {
|
||||
await UserLogModel.createRecord({ type: LOG_TYPE.GATE_HP, serverId, cityId, gateHp: log });
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
}
|
||||
}
|
||||
|
||||
export async function saveGuildBossHpLog(serverId: number, warId: number, guildCode: string, log: BossHpLog) {
|
||||
try {
|
||||
await UserLogModel.createRecord({ type: LOG_TYPE.BOSS_HP, serverId, warId, guildCode, bossHp: log });
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user