import { gameMethod } from "../../common/gameMethod"; import { UserAdok, UserAdokPram } from "../../common/Xyc"; import { SevBack } from "../../common/Xys"; import Config from "../../Config"; import EventMng from "../../manager/EventMng"; import { TimeEvent, UserEvent } from "../const/EventConst"; import { InGame } from "../const/TypeConst"; import GameDataCenter from "../GameDataCenter"; import IDataModel from "../../frameWork/model/IDataModel"; export default class TimeModel extends IDataModel { is_open_music: boolean = false; is_open_sound: boolean = false; defaultHeart: number = 15//心跳包时间,方便修改心跳发送时间 sevTime: number = 0 onlineTime: number = 0 // 上线时间 guideRuoTime: number = 0 // 弱引导时间 constructor() { super('time'); this.sevTime = 0 if (Config.upid != null) { clearInterval(Config.upid) } if (Config.upFrame != null) { clearInterval(Config.upFrame) } if (Config.upZhenWen != null) { clearInterval(Config.upZhenWen) } Config.upid = setInterval(() => { if (gameMethod.isEmpty(GameDataCenter.sevBack)) return; this.sevTime++ EventMng.emit(TimeEvent.TIME_CD, this.sevTime) }, 1000) Config.upFrame = setInterval(() => { EventMng.emit(TimeEvent.TIME_FRAME_CD, this.sevTime) }, 1000 / Config.GAME_FRAME) } doSevback(result: SevBack): void { if (result.time) { this.sevTime = result.time if (this.onlineTime == 0) { this.onlineTime = result.time } } } }