试炼调试数据

This commit is contained in:
mamengke01
2021-02-01 14:08:45 +08:00
parent 8770fd9ea7
commit 67668097d6
16 changed files with 206 additions and 97 deletions

View File

@@ -89,9 +89,6 @@ export default class Guild extends BaseModel {
@prop({ required: true, default: 0 })
resetTrainTime: number;//上次刷新挑战训练场次数的时间
@prop({ required: true, default: 1 })
wishPoolLv: number; // 许愿池等级
public static async createGuild(params: { name: string, icon: number, notice: string }, role: RoleType, serverId: number) {
const doc = new GuildModel();
@@ -204,7 +201,7 @@ export default class Guild extends BaseModel {
public static async resetGuildTrain(code: string, serverId: number, trainLv: number, lean = true) {
const time = getCurWeekTime(1, 5);//每周一5点刷新
const result = await GuildModel.findOneAndUpdate({ code, status: GUILD_STATUS.RUNNING, serverId, resetTrainTime:{$ne:time}},{$set: {trainId: 1, resetTrainTime: time, trainLv}}).lean(lean);
const result = await GuildModel.findOneAndUpdate({ code, status: GUILD_STATUS.RUNNING, serverId, resetTrainTime:{$ne:time}},{$set: {trainId: 1, resetTrainTime: time, trainLv}}, {new: true}).lean(lean);
return result;
}
}

View File

@@ -13,7 +13,7 @@ class Report {
@prop({ required: true })
time: number;
@prop({ required: true })
isSuccessed: boolean;
difficulty: number;
@prop({ required: true })
type: number;//1表示普通战报 2表示系统战报即被成功压制
}

View File

@@ -12,6 +12,8 @@ class ActiveRecord {
}
class WishGood {
@prop({ required: true })
id: string;
@prop({ required: true })
type: number;
@prop({ required: true })
@@ -76,16 +78,16 @@ export default class UserGuild extends BaseModel {
trainRewards: Array<number>;//领取过的进阶等级
@prop({ required: true, default: [], type: WishGood, _id: false })
wishGoods:Array<WishGood>;
wishGoods: Array<WishGood>;
@prop({ required: true, default: [], type: Number })
receiveBoxs:Array<number>;
receiveBoxs: Array<number>;
@prop({ required: true })
wishDntCnt:number;//今天许愿池捐献次数
wishDntCnt: number;//今天许愿池捐献次数
@prop({ required: true })
donateCnt:number;//今天捐献所次数
donateCnt: number;//今天捐献所次数
public static async getMyAuth(roleId: string, guildCode?: string, userGuild?: UserGuildType) {
let myGuild: UserGuildType;
@@ -186,6 +188,10 @@ export default class UserGuild extends BaseModel {
return userGuilds;
}
public static async pushAndUpdate(roleId: string, update: UserGuildUpdateParam, pushData:{wishGoods?: WishGood}, select?: string, lean = true) {
const result: UserGuildType = await UserGuildModel.findOneAndUpdate({ roleId, status: USER_GUILD_STATUS.ON }, { $set: update, $push: pushData }, { new: true }).select(select).lean();
return result;
}
}
export const UserGuildModel = getModelForClass(UserGuild);

View File

@@ -38,7 +38,7 @@ export default class WishPoolReport extends BaseModel {
//获得day天之前的许愿池战报
public static async getReportsByTime(guildCode: string, day: number, lean = true) {
let time = getTodayZeroPoint() - day * 24 * 60;
const reports = await WishPoolReportModel.find({ guildCode, dntTime: {$gte: time}});
const reports = await WishPoolReportModel.find({ guildCode, dntTime: {$gte: time}}).sort({ dntTime : -1 });
return reports;
}
}

View File

@@ -121,7 +121,7 @@ export const gameData = {
bossBase: dicBossBase,
trainBase: dicTrainBase,
donateBase: dicDonateBase,
wishPoolBase: dicWishPoolBase,
armyWishPool: dicWishPoolBase,
storeBase: dicStoreBase,
structureConsume: dicStructureConsume,
guildActiveDayReward: dicGuildActiveDayReward,
@@ -133,7 +133,7 @@ export const gameData = {
guildActiveWays: dicGuildActiveWays,
armyDevelopConsume: dicArmyDevelopConsume,
armyBossRank: dicArmyBossRank,
armyDonateBox: dicArmyDonate
armyDonateBox: dicArmyDonate,
};
// 在此提供一些原先在gamedata中提供的方法以便更方便获取gameData数据
@@ -395,4 +395,6 @@ export function getArmyDonateBaseByLv(lv: number) {
export function getArmyDonateBoxBaseById(id: number) {
return gameData.armyDonateBox.get(id);
}
export function getArmyWishPoolBaseByLv(lv: number) {
return gameData.armyWishPool.get(lv);
}

View File

@@ -0,0 +1,29 @@
import { readJsonFile, parseGoodStr } from '../util'
import { FILENAME } from '../../consts'
type KeysEnum<T> = { [P in keyof Required<T>]: true };
import { RewardInter } from '../interface';
const _ = require('lodash');
export interface DicArmyBossRank {
readonly id: number;
readonly rankMin: number;
readonly rankMax: number;
readonly reward: Array<RewardInter>;
}
const DicArmyBossRankKeys: KeysEnum<DicArmyBossRank> = {
id: true,
rankMin: true,
rankMax: true,
reward: true,
};
const str = readJsonFile(FILENAME.DIC_ARMY_BOSS_RANK_REWARD);
let arr = JSON.parse(str);
export const dicArmyBossRank = new Array<DicArmyBossRank>();
arr.forEach(o => {
o.reward = parseGoodStr(o.reward);
dicArmyBossRank.push(_.pick(o, Object.keys(DicArmyBossRankKeys)));
});
arr = undefined;

View File

@@ -1,35 +0,0 @@
import { readJsonFile } from '../util'
import { FILENAME } from '../../consts'
type KeysEnum<T> = { [P in keyof Required<T>]: true };
const _ = require('lodash');
export interface DicArmyWishPool {
readonly id: number;
readonly wishGoodsEquips: Array<{quality: number, count: number}>;
readonly wishGoodsHeros: Array<{quality: number, count: number}>;
readonly consume: number;
}
const DicArmyWishPoolKeys: KeysEnum<DicArmyWishPool> = {
id: true,
wishGoodsEquips: true,
wishGoodsHeros: true,
consume: true,
};
const str = readJsonFile(FILENAME.DIC_ARMY_BOSS_RANK_REWARD);
let arr = JSON.parse(str);
export const dicArmyWishPool = new Array<DicArmyWishPool>();
arr.forEach(o => {
o.wishGoodsEquips = o.wishGoodsEquip.split('|').map(wishGoodsEquip=>{
let wishGoodsEquips = wishGoodsEquip.split('&');
return {quality: parseInt(wishGoodsEquips[0]), count: parseInt(wishGoodsEquips[1])};
});
o.wishGoodsHeros = o.wishGoodsHero.split('|').map(wishGoodsHero=>{
let wishGoodsHeros = wishGoodsHero.split('&');
return {quality: parseInt(wishGoodsHeros[0]), count: parseInt(wishGoodsHeros[1])};
});
dicArmyWishPool.push(_.pick(o, Object.keys(DicArmyWishPoolKeys)));
});
arr = undefined;

View File

@@ -121,19 +121,18 @@ export interface DicWishPoolBase {
readonly id: number;
// 等级
readonly level: number;
// 许愿物品
readonly wishGoodsEquip: { quality: number, count: number }[];
// 许愿将魂
readonly wishGoodsHero: { quality: number, count: number }[];
readonly wishGoodsEquips: Array<{quality: number, count: number}>;
readonly wishGoodsHeros: Array<{quality: number, count: number}>;
readonly consume: number;
}
const DicWishPoolKeys: KeysEnum<DicWishPoolBase> = {
id: true,
level: true,
wishGoodsEquip: true,
wishGoodsHero: true
wishGoodsEquips: true,
wishGoodsHeros: true,
consume: true,
};
// 商店
export interface DicStoreBase {
// id
@@ -221,8 +220,14 @@ const strWishPool = readJsonFile(FILENAME.DIC_GUILD_WISH_POOL_BASE);
let arrWishPool = JSON.parse(strWishPool);
arrWishPool.forEach(o => {
setStructureConsume(o);
o.wishGoodsEquip = parseWishGoods(o.wishgoodsEquip);
o.wishGoodsHero = parseWishGoods(o.wishgoodsHero);
o.wishGoodsEquips = o.wishgoodsEquip.split('|').map(wishGoodsEquip=>{
let wishGoodsEquips = wishGoodsEquip.split('&');
return {quality: parseInt(wishGoodsEquips[0]), count: parseInt(wishGoodsEquips[1])};
});
o.wishGoodsHeros = o.wishgoodsHero.split('|').map(wishGoodsHero=>{
let wishGoodsHeros = wishGoodsHero.split('&');
return {quality: parseInt(wishGoodsHeros[0]), count: parseInt(wishGoodsHeros[1])};
});
dicWishPoolBase.set(o.level, _.pick(o, Object.keys(DicWishPoolKeys)));
});
arrWishPool = undefined;

View File

@@ -58,7 +58,7 @@ export function getWeekDate(now: Date, day: number, hour: number){ //获得本
export function getCurWeekTime(day: number, hour: number) {
let data = getWeekDate(new Date(), day, hour);
return data.getTime();
return Math.floor(data.getTime()/PER_SECOND);
}
export function getHourPoint(hour: number) {

View File

@@ -17,7 +17,7 @@
"preposition": "1&",
"honourConsume": "40005&3000",
"fundConsume": 500,
"timeConsume": 270
"timeConsume": 16200
},
{
"id": 3,
@@ -27,7 +27,7 @@
"preposition": "1&",
"honourConsume": "40005&6000",
"fundConsume": 1000,
"timeConsume": 530
"timeConsume": 31800
},
{
"id": 4,
@@ -37,7 +37,7 @@
"preposition": "1&",
"honourConsume": "40005&13500",
"fundConsume": 2000,
"timeConsume": 1200
"timeConsume": 72000
},
{
"id": 5,
@@ -57,7 +57,7 @@
"preposition": "5&2",
"honourConsume": "40005&4500",
"fundConsume": 1000,
"timeConsume": 270
"timeConsume": 16200
},
{
"id": 7,
@@ -67,7 +67,7 @@
"preposition": "5&3",
"honourConsume": "40005&9000",
"fundConsume": 2000,
"timeConsume": 530
"timeConsume": 31800
},
{
"id": 8,
@@ -77,7 +77,7 @@
"preposition": "5&4",
"honourConsume": "40005&20250",
"fundConsume": 4000,
"timeConsume": 1200
"timeConsume": 72000
},
{
"id": 9,
@@ -97,7 +97,7 @@
"preposition": "9&6",
"honourConsume": "40005&6000",
"fundConsume": 1500,
"timeConsume": 270
"timeConsume": 16200
},
{
"id": 11,
@@ -107,7 +107,7 @@
"preposition": "9&7",
"honourConsume": "40005&12000",
"fundConsume": 3000,
"timeConsume": 530
"timeConsume": 31800
},
{
"id": 12,
@@ -117,7 +117,7 @@
"preposition": "9&8",
"honourConsume": "40005&27000",
"fundConsume": 6000,
"timeConsume": 1200
"timeConsume": 72000
},
{
"id": 13,
@@ -137,7 +137,7 @@
"preposition": "13&10",
"honourConsume": "40005&7500",
"fundConsume": 2000,
"timeConsume": 270
"timeConsume": 16200
},
{
"id": 15,
@@ -147,7 +147,7 @@
"preposition": "13&11",
"honourConsume": "40005&15000",
"fundConsume": 4000,
"timeConsume": 530
"timeConsume": 31800
},
{
"id": 16,
@@ -157,7 +157,7 @@
"preposition": "13&12",
"honourConsume": "40005&33750",
"fundConsume": 8000,
"timeConsume": 1200
"timeConsume": 72000
},
{
"id": 17,
@@ -177,7 +177,7 @@
"preposition": "17&14",
"honourConsume": "40005&9000",
"fundConsume": 2500,
"timeConsume": 270
"timeConsume": 16200
},
{
"id": 19,
@@ -187,7 +187,7 @@
"preposition": "17&15",
"honourConsume": "40005&18000",
"fundConsume": 5000,
"timeConsume": 530
"timeConsume": 31800
},
{
"id": 20,
@@ -197,7 +197,7 @@
"preposition": "17&16",
"honourConsume": "40005&40500",
"fundConsume": 10000,
"timeConsume": 1200
"timeConsume": 72000
},
{
"id": 21,
@@ -217,7 +217,7 @@
"preposition": "21&18",
"honourConsume": "40005&10500",
"fundConsume": 3000,
"timeConsume": 270
"timeConsume": 16200
},
{
"id": 23,
@@ -227,7 +227,7 @@
"preposition": "21&19",
"honourConsume": "40005&21000",
"fundConsume": 6000,
"timeConsume": 530
"timeConsume": 31800
},
{
"id": 24,
@@ -237,6 +237,6 @@
"preposition": "21&20",
"honourConsume": "40005&47250",
"fundConsume": 12000,
"timeConsume": 1200
"timeConsume": 72000
}
]

View File

@@ -1,6 +1,7 @@
[
{
"id": 1,
"id_1": 1,
"name": "试炼1-初出茅庐",
"count": 4,
"heroid": "1&3&5&4",
@@ -11,6 +12,7 @@
},
{
"id": 2,
"id_1": 2,
"name": "试炼2-过关斩将",
"count": 4,
"heroid": "2&3&5&7",
@@ -21,6 +23,7 @@
},
{
"id": 3,
"id_1": 3,
"name": "试炼3-黄巾起义",
"count": 4,
"heroid": "7&8&9&10",
@@ -31,6 +34,7 @@
},
{
"id": 4,
"id_1": 4,
"name": "试炼4-火烧赤壁",
"count": 4,
"heroid": "11&12&13&14",
@@ -41,6 +45,7 @@
},
{
"id": 5,
"id_1": 5,
"name": "试炼5-官渡之战",
"count": 4,
"heroid": "7&8&9&11",
@@ -51,6 +56,7 @@
},
{
"id": 6,
"id_1": 6,
"name": "试炼6- 后起之秀",
"count": 4,
"heroid": "11&12&13&15",
@@ -61,6 +67,7 @@
},
{
"id": 7,
"id_1": 7,
"name": "试炼7- 分庭抗礼",
"count": 4,
"heroid": "7&8&9&12",
@@ -71,6 +78,7 @@
},
{
"id": 8,
"id_1": 8,
"name": "试炼8- 群雄逐鹿",
"count": 4,
"heroid": "11&12&13&16",
@@ -81,6 +89,7 @@
},
{
"id": 9,
"id_1": 9,
"name": "试炼9-三足鼎立",
"count": 4,
"heroid": "7&8&9&13",
@@ -91,6 +100,7 @@
},
{
"id": 10,
"id_1": 10,
"name": "试炼10-封金挂印",
"count": 4,
"heroid": "11&12&13&17",

View File

@@ -0,0 +1,14 @@
[
{
"id": 1,
"str": "%d挑战%d难度据点【%d】失败压制值+0"
},
{
"id": 2,
"str": "%d挑战%d难度据点【%d】成功压制值+%d"
},
{
"id": 3,
"str": "军团据点%d被压制成功对应试炼宝藏已成功开启请各位成为前往领取奖励"
}
]

View File

@@ -16847,6 +16847,18 @@
"spineName": "&",
"rangeSeid": "0&"
},
{
"id": 5018,
"name": "墨家拳",
"img": 1,
"type": 520,
"isShow": 1,
"gainvalue": "3&",
"maxOnlyNum": 1,
"info": "一下打三下",
"spineName": "&",
"rangeSeid": "0&"
},
{
"id": 5020,
"name": "三箭齐发1",
@@ -17043,7 +17055,7 @@
"id": 5040,
"name": "蛮劲1",
"img": 1,
"type": 101,
"type": 102,
"isShow": 1,
"gainvalue": "10&1000&18&10000",
"maxOnlyNum": 1,
@@ -17309,9 +17321,9 @@
"img": 1,
"type": 254,
"isShow": 1,
"gainvalue": "3&9&2",
"gainvalue": "3&10&2",
"maxOnlyNum": 1,
"info": "自身周围格内所有吴国武将暴击率提升2%",
"info": "自身周围5格内所有吴国武将暴击率提升2%",
"spineName": "guanghuan_huang",
"rangeSeid": "1&10&0"
},
@@ -17321,9 +17333,9 @@
"img": 1,
"type": 254,
"isShow": 1,
"gainvalue": "3&9&5",
"gainvalue": "3&10&5",
"maxOnlyNum": 1,
"info": "自身周围格内所有吴国武将暴击率提升5%",
"info": "自身周围5格内所有吴国武将暴击率提升5%",
"spineName": "guanghuan_huang",
"rangeSeid": "1&10&0"
},