public override void NPCTalk(Player plr) { var msg = new SKanturuStateInfo { State = _state, btEnter = 0, btDetailState = 0, btUserCount = (byte)_players.Count, }; switch (_state) { case KanturuState.BattleStandBy: msg.btDetailState = (byte)_standBy.CurrentState; msg.iRemainTime = (int)_standBy.TimeLeft.TotalSeconds; break; case KanturuState.BattleOfMaya: msg.btDetailState = (byte)_battleOfMaya.CurrentState; msg.iRemainTime = (int)_battleOfMaya.TimeLeft.TotalSeconds; switch (_battleOfMaya.CurrentState) { case KanturuBattleOfMayaState.StandBy1: case KanturuBattleOfMayaState.StandBy2: case KanturuBattleOfMayaState.StandBy3: if (_players.Count(x => x.Eventer == true) < MaxPlayers) { msg.btEnter = 1; } break; } break; case KanturuState.BattleOfNightmare: msg.btDetailState = (byte)_battleOfNightmare.CurrentState; msg.iRemainTime = (int)_battleOfNightmare.TimeLeft.TotalSeconds; break; case KanturuState.TowerOfRefinery: msg.btDetailState = (byte)_towerOfRefinement.CurrentState; msg.iRemainTime = (int)_towerOfRefinement.TimeLeft.TotalSeconds; switch (_towerOfRefinement.CurrentState) { case KanturuTowerOfRefinementState.Revitalization: case KanturuTowerOfRefinementState.Notify1: msg.btEnter = 1; break; } break; } plr.Session.SendAsync(msg) .Wait(); }
public override void NPCTalk(Player plr) { var msg = new SKanturuStateInfo { State = KanturuState.None, btDetailState = 0, btEnter = 0, btUserCount = 0, iRemainTime = 100, }; plr.Session.SendAsync(msg) .Wait(); }