排行榜:先做一点假数据
This commit is contained in:
@@ -308,6 +308,7 @@ export const STATUS = {
|
||||
GUILD_LV_LIMIT: { code: 30901, simStr: '军团等级不足' },
|
||||
ITEM_NOT_SOUL: { code: 30902, simStr: '该物品不是将魂' },
|
||||
SKIN_HAS_NOT_HERO: { code: 30903, simStr: '未拥有该武将不可获得皮肤' },
|
||||
HERO_NOT_MAX: { code: 30904, simStr: '该武将未升满星' },
|
||||
|
||||
// 社交相关状态 40000 - 49999
|
||||
SYS_CHANNEL_AUTH_NOT_ENOUGH: {code: 40000, simStr: '无法在系统频道发送消息'},
|
||||
|
||||
@@ -267,9 +267,6 @@ export class RaceActivityObject {
|
||||
this.initEvents(guildCode);
|
||||
let guild = await GuildModel.findByCode(guildCode, serverId);
|
||||
if(!guild) return false;
|
||||
let leader = <RoleType>guild.leader;
|
||||
let guildRankParam = new GuildRankParam(guild.icon, guild.name, guild.lv, leader);
|
||||
await setRank(REDIS_KEY.RACE_ACTIVITY, serverId, guild.code, 0, Math.pow(10, 11) - guild.guildCe, guildRankParam, true);
|
||||
let { name: guildName, guildCe } = guild;
|
||||
this.woodenHorses.set(guildCode, new WoodenHorse(guildCode, guildName, guildCe, serverId));
|
||||
this.guildList.push({guildCode, serverId});
|
||||
@@ -281,7 +278,7 @@ export class RaceActivityObject {
|
||||
let events = this.events.get(guildCode)||[];
|
||||
let needSendEnd = woodenHorse.calCurWoodenHorse(events);
|
||||
if(woodenHorse.status == 1 || woodenHorse.status == 2) { // 更新距离 // TODO 写进const表
|
||||
await setRankWithoutUserInfo(REDIS_KEY.RACE_ACTIVITY, serverId, guildCode, woodenHorse.distance, Math.floor((woodenHorse.time - woodenHorse.startTime)/1000), true, false);
|
||||
await setRankWithoutUserInfo(REDIS_KEY.RACE_ACTIVITY, serverId, guildCode, Math.floor(woodenHorse.distance * 1000), woodenHorse.time - woodenHorse.startTime, true, false, 6);
|
||||
if (needSendEnd) { // 抵达后发送奖励,发送消息,结算
|
||||
await sendSingleRaceActEndMsg(guildCode, woodenHorse);
|
||||
}
|
||||
@@ -462,7 +459,7 @@ export class WoodenHorse {
|
||||
* @returns {boolean} needSendEnd 是否跑到终点发送结束新号
|
||||
*/
|
||||
public calCurWoodenHorse(events: Event[]): boolean {
|
||||
console.log('**', JSON.stringify(events))
|
||||
console.log('**', this.guildName, this.status, this.distance, Date.now(), this.speed, JSON.stringify(events))
|
||||
if(this.status == 2) return false; // TODO 写进const表
|
||||
if(this.status == 0 && this.stopContinueTime && Date.now() > this.stopContinueTime) {
|
||||
this.status = 1; this.stopContinueTime = 0;
|
||||
@@ -474,7 +471,6 @@ export class WoodenHorse {
|
||||
this.status = 2;
|
||||
return true;
|
||||
}
|
||||
console.log('*********', this.distance, Date.now(), this.speed)
|
||||
|
||||
this.distance = Math.floor((this.distance + (Date.now() - this.time)/1000 * this.speed ) * 1000)/1000; // 1位小数点
|
||||
this.time = Date.now();
|
||||
@@ -511,6 +507,7 @@ export class WoodenHorse {
|
||||
for(let { id, count, endTime } of effectiveEvents) {
|
||||
this.calEvent(id, count, endTime);
|
||||
}
|
||||
console.log('**effect', this.speed, JSON.stringify(effectiveEvents));
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -534,6 +531,8 @@ export class WoodenHorse {
|
||||
if (this.shieldTime < Date.now()) {
|
||||
this.stopContinueTime = endTime;
|
||||
this.status = 0; // TODO 写进const表
|
||||
this.time = endTime;
|
||||
this.speed = 0;
|
||||
}
|
||||
break;
|
||||
case RACE_EVENT.FENGCHE:
|
||||
|
||||
@@ -28,6 +28,7 @@ export class GuildRankParam {
|
||||
icon: number;
|
||||
name: string;
|
||||
lv: number;
|
||||
memberCnt: number;
|
||||
leader: {
|
||||
roleName: string;
|
||||
title: number;
|
||||
@@ -38,12 +39,13 @@ export class GuildRankParam {
|
||||
|
||||
}
|
||||
|
||||
constructor(icon: number, name: string, lv: number, leader: {roleName: string, title: number, lv: number, head: number, frame: number, spine: number}) {
|
||||
constructor(icon: number, name: string, lv: number, leader: {roleName: string, title: number, lv: number, head: number, frame: number, spine: number}, memberCnt: number) {
|
||||
this.icon = icon;
|
||||
this.name = name;
|
||||
this.lv = lv;
|
||||
let _leader = new GuildLeader(leader);
|
||||
this.leader = _leader;
|
||||
this.memberCnt = memberCnt;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -83,8 +85,9 @@ export class SimpleGuildRankWithTimeParam extends SimpleGuildRankParam {
|
||||
time: number = 0;
|
||||
durability: number = 0;
|
||||
|
||||
constructor(rank: number, code: string, name: string, obj: WoodenHorse|false) {
|
||||
constructor(rank: number, code: string, name: string, obj: WoodenHorse|{distance: number, time: number, startTime: number, durability: number}|false) {
|
||||
super(rank, code, name, obj?obj.distance:0);
|
||||
console.log(JSON.stringify(obj));
|
||||
if(obj) {
|
||||
this.num = obj.distance;
|
||||
this.time = Math.floor((obj.time - obj.startTime)/1000);
|
||||
|
||||
Reference in New Issue
Block a user