军团活动:修复粮草先行
This commit is contained in:
@@ -91,8 +91,7 @@ export function getGuildActivityStatus(id: number) {
|
||||
}
|
||||
|
||||
export function getGuildActivityByDic(dicGuildActivity: DicGuildActivity) {
|
||||
console.log('****',dicGuildActivity.startTime, dicGuildActivity.startMinute)
|
||||
let startTime = getCurHourPoint(dicGuildActivity.startTime, dicGuildActivity.startMinute);
|
||||
let startTime = getCurHourPoint(dicGuildActivity.startTime, dicGuildActivity.startMinute, dicGuildActivity.startSeconds);
|
||||
let countdownTime = getCurHourPoint(dicGuildActivity.countDown);
|
||||
let { duringTime, openDay } = dicGuildActivity;
|
||||
let endTime = startTime + duringTime;
|
||||
@@ -308,17 +307,15 @@ export async function sendGuildActEndMsg(aid: number) {
|
||||
for(let { serverId, cityId } of cities) {
|
||||
await cityActivitySettleReward(cityId, serverId);
|
||||
}
|
||||
// 发完之后再做下周自动宣战
|
||||
let serverlists = await getAllServers();
|
||||
for(let serverId of serverlists) {
|
||||
await autoDeclare(serverId);
|
||||
}
|
||||
cityActivityObj = new CityActivityObject();
|
||||
} else if (aid == GUILD_ACTIVITY_TYPE.RACE_ACTIVITY) {
|
||||
let obj = getRaceActivityObj();
|
||||
let woodenHorseList = obj.getAllWoodenHorses();
|
||||
for(let [guildCode, woodenHorse] of woodenHorseList) {
|
||||
await raceActivitySettleReward(guildCode, woodenHorse);
|
||||
|
||||
for(let {guildCode, serverId} of obj.guildList) {
|
||||
let woodenHorse = await obj.getWoodenHorse(guildCode, serverId);
|
||||
if(woodenHorse) {
|
||||
await raceActivitySettleReward(guildCode, woodenHorse);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -474,13 +471,14 @@ export async function cityActivitySettleReward(cityId: number, serverId: number)
|
||||
/**
|
||||
* 清空完declareGuilds之后,做下一次活动的自动宣战
|
||||
*/
|
||||
async function autoDeclare(serverId: number) {
|
||||
export async function autoDeclare(serverId: number) {
|
||||
let allCities = await GuildActivityCityModel.getAllCities(serverId);
|
||||
let guardList = new Array<{ cityId: number, guardGuildCode: string }>();
|
||||
for (let { cityId, guardGuildCode } of allCities) {
|
||||
guardList.push({ cityId, guardGuildCode });
|
||||
await GuildActivityCityModel.guard(serverId, cityId, "", "");
|
||||
await GuildActivityCityModel.clearGuard(serverId, cityId);
|
||||
}
|
||||
console.log(JSON.stringify(guardList));
|
||||
for (let { cityId, guardGuildCode } of guardList) {
|
||||
let dicCity = gameData.cityActivity.get(cityId);
|
||||
if (guardGuildCode && dicCity.nextCity) {
|
||||
@@ -557,17 +555,17 @@ export function getCityStatus(guildCode: string, cityId: number, dic: DicCityAct
|
||||
status = CITY_STATUS.DECLARED;
|
||||
}
|
||||
}
|
||||
let hasGuard = false, hasDeclared = false;
|
||||
for(let { cityId: _cityId, guardGuildCode, declareGuilds } of dbCities) {
|
||||
let dicCity = gameData.cityActivity.get(_cityId);
|
||||
if(dicCity.type == dic.type) {
|
||||
if(guardGuildCode == guildCode) hasGuard = true;
|
||||
if(declareGuilds.includes(guildCode)) hasDeclared = true;
|
||||
}
|
||||
}
|
||||
if(status == CITY_STATUS.CAN_DECLARE && !hasDeclared && preCity.length > 0) {
|
||||
status = CITY_STATUS.NOT_OPEN;
|
||||
}
|
||||
// let hasGuard = false, hasDeclared = false;
|
||||
// for(let { cityId: _cityId, guardGuildCode, declareGuilds } of dbCities) {
|
||||
// let dicCity = gameData.cityActivity.get(_cityId);
|
||||
// if(dicCity.type == dic.type) {
|
||||
// if(guardGuildCode == guildCode) hasGuard = true;
|
||||
// if(declareGuilds.includes(guildCode)) hasDeclared = true;
|
||||
// }
|
||||
// }
|
||||
// if(status == CITY_STATUS.CAN_DECLARE && !hasDeclared && preCity.length > 0) {
|
||||
// status = CITY_STATUS.NOT_OPEN;
|
||||
// }
|
||||
|
||||
return status;
|
||||
}
|
||||
@@ -588,7 +586,7 @@ export async function calWoodenHorseAndSend(serverId: number) {
|
||||
for(let i = 0; i < l; i++) {
|
||||
let { rank, code, name, num } = ranks[i]
|
||||
let _obj = await obj.getWoodenHorse(code, serverId);
|
||||
let param = new SimpleGuildRankWithTimeParam(rank, code, name, num, _obj?_obj.time:0, _obj?_obj.durability:0);
|
||||
let param = new SimpleGuildRankWithTimeParam(rank, code, name, _obj?_obj.distance:0, _obj?_obj.time:0, _obj?_obj.durability:0);
|
||||
guildRank.push(param);
|
||||
}
|
||||
|
||||
@@ -677,5 +675,5 @@ export async function raceActivitySettleReward(guildCode: string, woodenHorse: W
|
||||
}
|
||||
|
||||
// 删除数据
|
||||
obj.deleteRecord(guildCode);
|
||||
obj.deleteFromList(guildCode);
|
||||
}
|
||||
Reference in New Issue
Block a user