练兵场:第二天武将进度清零
This commit is contained in:
@@ -23,25 +23,25 @@ import { getGuildChannelSid } from './chatChannelService';
|
|||||||
*/
|
*/
|
||||||
export async function refreshTrain(userGuild: UserGuildType, roleId: string, serverId: number) {
|
export async function refreshTrain(userGuild: UserGuildType, roleId: string, serverId: number) {
|
||||||
let { trainCount, trainTime, buyTrainCount, guildCode} = userGuild;
|
let { trainCount, trainTime, buyTrainCount, guildCode} = userGuild;
|
||||||
let resetResult = await resetTrain(guildCode, serverId);//检查重置练兵场
|
let trainId = await resetTrain(guildCode, serverId);//检查重置练兵场
|
||||||
if (trainTime < getZeroPoint()) {//重置挑战次数和购买次数
|
if (trainTime < getZeroPoint()) {//重置挑战次数和购买次数
|
||||||
trainCount = ARMY.ARMY_TRAIN_BUYTIMES;
|
trainCount = ARMY.ARMY_TRAIN_BUYTIMES;
|
||||||
|
|
||||||
buyTrainCount = 0;
|
buyTrainCount = 0;
|
||||||
userGuild = await UserGuildModel.updateInfo(roleId, {trainCount, trainTime: nowSeconds(), buyTrainCount}, {});
|
userGuild = await UserGuildModel.updateInfo(roleId, {trainCount, trainTime: nowSeconds(), buyTrainCount}, {});
|
||||||
let guildTrains: GuildTrainType[] = [];
|
if(trainId) {
|
||||||
if(resetResult && resetResult.guildTrains) {
|
|
||||||
guildTrains = resetResult.guildTrains;
|
let { trainInstances } = getArmyTrainJuDian(trainId);
|
||||||
} else {
|
// 初始化
|
||||||
guildTrains = await GuildTrainModel.getGuildTrainBoxs(guildCode);
|
let instances = trainInstances.map(trainInstance => {
|
||||||
}
|
let t = new TrainInstance();
|
||||||
for(let guildTrain of guildTrains) {
|
t.hid = trainInstance.hid;
|
||||||
guildTrain.trainInstances.forEach(instance => {
|
t.progress = 0;
|
||||||
instance.progress = 0;
|
t.endTime = 0;
|
||||||
instance.endTime = 0;
|
t.trainBoxs = [];
|
||||||
instance.trainBoxs = [];
|
return t;
|
||||||
});
|
});
|
||||||
await GuildTrainModel.updateGuildTrain(guildCode, guildTrain.trainId, { trainInstances: guildTrain.trainInstances });
|
await GuildTrainModel.updateGuildTrain(guildCode, trainId, { trainInstances: instances });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -155,12 +155,12 @@ export async function resetTrain(code: string, serverId: number) {
|
|||||||
let res:any = await lockData(serverId, DATA_NAME.GUILD, code);//加锁
|
let res:any = await lockData(serverId, DATA_NAME.GUILD, code);//加锁
|
||||||
if (!!res.err)
|
if (!!res.err)
|
||||||
return;
|
return;
|
||||||
let { structure } = await GuildModel.findGuild(code, serverId, 'structure');
|
let { structure, trainId } = await GuildModel.findGuild(code, serverId, 'structure trainId');
|
||||||
let { lv } = findWhere(structure, {id: GUILD_STRUCTURE.TRAIN});
|
let { lv } = findWhere(structure, {id: GUILD_STRUCTURE.TRAIN});
|
||||||
let guild = await GuildModel.resetGuildTrain(code, serverId, lv);
|
let guild = await GuildModel.resetGuildTrain(code, serverId, lv);
|
||||||
res.releaseCallback();//解锁
|
res.releaseCallback();//解锁
|
||||||
if (!guild) {//不满足重置条件,结束并解锁
|
if (!guild) {//不满足重置条件,结束并解锁
|
||||||
return;
|
return trainId;
|
||||||
}
|
}
|
||||||
const userGuildList = await UserGuildModel.getListByGuild(code, 'trainRewards', {});
|
const userGuildList = await UserGuildModel.getListByGuild(code, 'trainRewards', {});
|
||||||
const guildTrains = await GuildTrainModel.getGuildTrainBoxs(code);
|
const guildTrains = await GuildTrainModel.getGuildTrainBoxs(code);
|
||||||
@@ -197,7 +197,7 @@ export async function resetTrain(code: string, serverId: number) {
|
|||||||
await GuildTrainModel.resetGuildTrain(code);//将开启的练兵场锁定
|
await GuildTrainModel.resetGuildTrain(code);//将开启的练兵场锁定
|
||||||
await unlockTrain(code, 1);//开启练兵场1级
|
await unlockTrain(code, 1);//开启练兵场1级
|
||||||
await UserGuildModel.resetTrainUserGuild(code);//重置玩家的挑战次数和购买挑战次数
|
await UserGuildModel.resetTrainUserGuild(code);//重置玩家的挑战次数和购买挑战次数
|
||||||
return { guildTrains }
|
return trainId
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 检查并重置试炼
|
* 检查并重置试炼
|
||||||
|
|||||||
Reference in New Issue
Block a user