public void SetValue(MjData data) { this.data = data; Player player = data.player; if (player != null) { gameObject.SetActive(true); //detail.Ready_Text.text = player.isReady[0] ? "已准备" : "未准备"; if (player.offline) { detail.AwayFlag_Image.gameObject.SetActive(false); detail.OfflineFlag_Image.gameObject.SetActive(true); } else { detail.AwayFlag_Image.gameObject.SetActive(player.leave); detail.OfflineFlag_Image.gameObject.SetActive(false); } //players[p.index].detail.Zhuang_Text.gameObject.SetActive(Game.MJMgr.makersIndex == p.playerInfo.Index); detail.Ting_Image.gameObject.SetActive(player.ting); bool IsMakers = Game.MJMgr.MakersPosition == player.position; detail.Zhuang_Image.gameObject.SetActive(IsMakers); //detail.Icon_Image.sprite = Game.IconMgr.GetFace(player.headImg); Game.IconMgr.SetFace(detail.Icon_Image, player.headImg); detail.Name_Text.text = player.nickName; if (RoomMgr.IsVipRoom() || RoomMgr.IsSingeRoom()) { detail.Coins_Text.text = player.score.ToString(); } else { detail.Coins_Text.text = player.coin.ToString(); } detail.TalkingFlag_Image.gameObject.SetActive(showVoice); detail.WordRoot_Text.gameObject.SetActive(showWord); detail.MoodRoot_UIItem.gameObject.SetActive(showMood); detail.Icon_Button.onClick.AddListener(showUserInfo); detail.userInfo_Button.onClick.AddListener(closeUserInfo); bool isActivePlayer = Game.MJMgr.ActivePosition == player.position; // if (null == eff) { eff = Game.PoolManager.EffectPool.Spawn("FrameEffect"); eff.transform.SetParent(this.transform); eff.transform.localPosition = Vector3.zero; eff.transform.localScale = Vector3.one; } eff.SetActive(isActivePlayer); } else { gameObject.SetActive(false); //players[p.index].detail.Coins_Text.text = "100"; //players[p.index].detail.Ready_Text.text = ""; //players[p.index].detail.OfflineFlag_Text.text = ""; } }
/// <summary> /// Handles the server action /// </summary> /// <param name="parameters"></param> public void OnAction(Hashtable parameters) { Console.WriteLine("This server DDTankII, edit and build by Trminhpc!"); Console.WriteLine("Starting GameServer ... please wait a moment!"); GameServer.CreateInstance(new GameServerConfig()); GameServer.Instance.Start(); GameServer.KeepRunning = true; Console.WriteLine("Server started!"); ConsoleClient client = new ConsoleClient(); while (GameServer.KeepRunning) { try { handler = ConsoleCtrHandler; SetConsoleCtrlHandler(handler, true); Console.Write("> "); string line = Console.ReadLine(); string[] para = line.Split(' '); switch (para[0]) { case "exit": GameServer.KeepRunning = false; break; case "cp": GameClient[] clients = GameServer.Instance.GetAllClients(); int clientCount = clients == null ? 0 : clients.Length; GamePlayer[] players = WorldMgr.GetAllPlayers(); int playerCount = players == null ? 0 : players.Length; List <BaseRoom> rooms = RoomMgr.GetAllUsingRoom(); int roomCount = 0; int gameCount = 0; foreach (BaseRoom r in rooms) { if (!r.IsEmpty) { roomCount++; if (r.IsPlaying) { gameCount++; } } } double memoryCount = GC.GetTotalMemory(false); Console.WriteLine(string.Format("Total Clients/Players:{0}/{1}", clientCount, playerCount)); Console.WriteLine(string.Format("Total Rooms/Games:{0}/{1}", roomCount, gameCount)); Console.WriteLine(string.Format("Total Momey Used:{0} MB", memoryCount / 1024 / 1024)); break; case "shutdown": _count = 6; //_timer = new Timer(new TimerCallback(GameServer.Instance.ShutDownCallBack), null, 0, 60 * 1000); _timer = new Timer(new TimerCallback(ShutDownCallBack), null, 0, 60 * 1000); break; case "savemap": //TODO: break; case "clear": Console.Clear(); break; case "ball&reload": if (BallMgr.ReLoad()) { Console.WriteLine("Ball info is Reload!"); } else { Console.WriteLine("Ball info is Error!"); } break; case "map&reload": if (MapMgr.ReLoadMap()) { Console.WriteLine("Map info is Reload!"); } else { Console.WriteLine("Map info is Error!"); } break; case "mapserver&reload": if (MapMgr.ReLoadMapServer()) { Console.WriteLine("mapserver info is Reload!"); } else { Console.WriteLine("mapserver info is Error!"); } break; case "prop&reload": if (PropItemMgr.Reload()) { Console.WriteLine("prop info is Reload!"); } else { Console.WriteLine("prop info is Error!"); } break; case "item&reload": if (ItemMgr.ReLoad()) { Console.WriteLine("item info is Reload!"); } else { Console.WriteLine("item info is Error!"); } break; case "shop&reload": if (ShopMgr.ReLoad()) { Console.WriteLine("shop info is Reload!"); } else { Console.WriteLine("shop info is Error!"); } break; case "quest&reload": if (QuestMgr.ReLoad()) { Console.WriteLine("quest info is Reload!"); } else { Console.WriteLine("quest info is Error!"); } break; case "fusion&reload": if (FusionMgr.ReLoad()) { Console.WriteLine("fusion info is Reload!"); } else { Console.WriteLine("fusion info is Error!"); } break; case "consortia&reload": if (ConsortiaMgr.ReLoad()) { Console.WriteLine("consortiaMgr info is Reload!"); } else { Console.WriteLine("consortiaMgr info is Error!"); } break; case "rate&reload": if (RateMgr.ReLoad()) { Console.WriteLine("Rate Rate is Reload!"); } else { Console.WriteLine("Rate Rate is Error!"); } break; case "fight&reload": if (FightRateMgr.ReLoad()) { Console.WriteLine("FightRateMgr is Reload!"); } else { Console.WriteLine("FightRateMgr is Error!"); } break; case "dailyaward&reload": if (AwardMgr.ReLoad()) { Console.WriteLine("dailyaward is Reload!"); } else { Console.WriteLine("dailyaward is Error!"); } break; case "language&reload": if (LanguageMgr.Reload("")) { Console.WriteLine("language is Reload!"); } else { Console.WriteLine("language is Error!"); } break; case "nickname": Console.WriteLine("Please enter the nickname"); string nickname = Console.ReadLine(); string state = WorldMgr.GetPlayerStringByPlayerNickName(nickname); Console.WriteLine(state); break; default: if (line.Length <= 0) { break; } if (line[0] == '/') { line = line.Remove(0, 1); line = line.Insert(0, "&"); } try { bool res = CommandMgr.HandleCommandNoPlvl(client, line); if (!res) { Console.WriteLine("Unknown command: " + line); } } catch (Exception e) { Console.WriteLine(e.ToString()); } break; } } catch (Exception ex) { Console.WriteLine(ex); } } if (GameServer.Instance != null) { GameServer.Instance.Stop(); } LogManager.Shutdown(); }
public int HandlePacket(GameClient client, GSPacketIn packet) { RoomMgr.ExitWaitingRoom(client.Player); return(0); }
public int HandlePacket(GameClient client, GSPacketIn packet) { switch (packet.ReadInt()) { case 0: { byte roomType = packet.ReadByte(); byte timeType = packet.ReadByte(); string name = packet.ReadString(); string password = packet.ReadString(); RoomMgr.CreateRoom(client.Player, name, password, (eRoomType)roomType, timeType); break; } case 1: { packet.ReadBoolean(); int num = packet.ReadInt(); int num2 = packet.ReadInt(); int roomId = -1; string pwd = null; if (num2 == -1) { roomId = packet.ReadInt(); pwd = packet.ReadString(); } if (num == 1) { num = 0; } else { if (num == 2) { num = 4; } } RoomMgr.EnterRoom(client.Player, roomId, pwd, num); break; } case 2: if (client.Player.CurrentRoom != null && client.Player == client.Player.CurrentRoom.Host && !client.Player.CurrentRoom.IsPlaying) { int num3 = packet.ReadInt(); eRoomType roomType2 = (eRoomType)packet.ReadByte(); bool isOpenBoss = packet.ReadBoolean(); string password2 = packet.ReadString(); string roomname = packet.ReadString(); byte timeMode = packet.ReadByte(); byte hardLevel = packet.ReadByte(); int levelLimits = packet.ReadInt(); bool isCrosszone = packet.ReadBoolean(); packet.ReadInt(); Console.WriteLine("=====>MapID: " + num3.ToString() + " |roomType: " + roomType2.ToString()); if (num3 == 0) { num3 = 401; //ME CUNG } RoomMgr.UpdateRoomGameType(client.Player.CurrentRoom, roomType2, timeMode, (eHardLevel)hardLevel, levelLimits, num3, password2, roomname, isCrosszone, isOpenBoss); //log.Error("=====>1: " + client.Player.CurrentRoom + " |2: " + roomType2 + " |3: " + timeMode + " |4: " + (eHardLevel)hardLevel + " |5: " + levelLimits + " |6: " + num3 + " |7: " + password2 + " |8: " + roomname + " |9: " + isCrosszone + " |10: " + isOpenBoss); } break; case 3: if (client.Player.CurrentRoom != null && client.Player == client.Player.CurrentRoom.Host) { RoomMgr.KickPlayer(client.Player.CurrentRoom, packet.ReadByte()); } break; case 5: if (client.Player.CurrentRoom != null) { RoomMgr.ExitRoom(client.Player.CurrentRoom, client.Player); } break; case 6: if (client.Player.CurrentRoom == null || client.Player.CurrentRoom.RoomType == eRoomType.Match) { return(0); } RoomMgr.SwitchTeam(client.Player); break; case 7: { BaseRoom currentRoom = client.Player.CurrentRoom; if (currentRoom != null && currentRoom.Host == client.Player) { if (client.Player.MainWeapon == null) { client.Player.SendMessage(LanguageMgr.GetTranslation("Game.Server.SceneGames.NoEquip", new object[0])); return(0); } if (currentRoom.RoomType == eRoomType.Dungeon && !client.Player.IsPvePermission(currentRoom.MapId, currentRoom.HardLevel)) { client.Player.SendMessage("Do not PvePermission enter this map!"); return(0); } RoomMgr.StartGame(client.Player.CurrentRoom); } break; } case 9: { packet.ReadInt(); int num4 = packet.ReadInt(); int num5 = 1011; if (num4 == -2) { packet.ReadInt(); num5 = packet.ReadInt(); } BaseRoom[] rooms = RoomMgr.Rooms; List <BaseRoom> list = new List <BaseRoom>(); for (int i = 0; i < rooms.Length; i++) { if (!rooms[i].IsEmpty) { switch (num4) { case 3: if (rooms[i].RoomType == eRoomType.Match || rooms[i].RoomType == eRoomType.Freedom) { list.Add(rooms[i]); } break; case 4: if (rooms[i].RoomType == eRoomType.Match) { list.Add(rooms[i]); } break; case 5: if (rooms[i].RoomType == eRoomType.Freedom) { list.Add(rooms[i]); } break; default: if (rooms[i].RoomType == eRoomType.Dungeon) { switch (num5) { case 1007: if (rooms[i].HardLevel == eHardLevel.Simple) { list.Add(rooms[i]); } break; case 1008: if (rooms[i].HardLevel == eHardLevel.Normal) { list.Add(rooms[i]); } break; case 1009: if (rooms[i].HardLevel == eHardLevel.Hard) { list.Add(rooms[i]); } break; case 1010: if (rooms[i].HardLevel == eHardLevel.Terror) { list.Add(rooms[i]); } break; default: list.Add(rooms[i]); break; } } break; } } } if (list.Count > 0) { client.Out.SendUpdateRoomList(list); } break; } case 10: if (client.Player.CurrentRoom != null && client.Player == client.Player.CurrentRoom.Host) { byte pos = packet.ReadByte(); int place = packet.ReadInt(); bool isOpened = packet.ReadBoolean(); int placeView = packet.ReadInt(); RoomMgr.UpdateRoomPos(client.Player.CurrentRoom, (int)pos, isOpened, place, placeView); } break; case 11: if (client.Player.CurrentRoom != null && client.Player.CurrentRoom.BattleServer != null) { client.Player.CurrentRoom.BattleServer.RemoveRoom(client.Player.CurrentRoom); if (client.Player != client.Player.CurrentRoom.Host) { client.Player.CurrentRoom.Host.Out.SendMessage(eMessageType.ChatERROR, LanguageMgr.GetTranslation("Game.Server.SceneGames.PairUp.Failed", new object[0])); RoomMgr.UpdatePlayerState(client.Player, 0); } else { RoomMgr.UpdatePlayerState(client.Player, 2); } } break; case 12: packet.ReadInt(); if (client.Player.CurrentRoom != null) { int num6 = packet.ReadInt(); int num7 = num6; if (num7 == 0) { client.Player.CurrentRoom.GameType = eGameType.Free; } else { client.Player.CurrentRoom.GameType = eGameType.Guild; } GSPacketIn pkg = client.Player.Out.SendRoomType(client.Player, client.Player.CurrentRoom); client.Player.CurrentRoom.SendToAll(pkg, client.Player); } break; case 15: if (client.Player.MainWeapon == null) { client.Player.SendMessage(LanguageMgr.GetTranslation("Game.Server.SceneGames.NoEquip", new object[0])); return(0); } if (client.Player.CurrentRoom != null) { RoomMgr.UpdatePlayerState(client.Player, packet.ReadByte()); } break; } return(0); }
void showDissolveNotice(DissolveInfo dv) { RoomMgr rm = RoomMgr.GetInstance(); mDissolve.SetActive(true); int now = (int)((DateTime.Now.Ticks - DateTime.Parse("1970-01-01").Ticks) / 10000000); mEndTime = dv.time + now; UIGrid grid = mSeats[0].GetComponentInParent <UIGrid>(); int index = 0; for (int i = 0; i < rm.players.Count && i < mSeats.Count; i++, index++) { Transform s = mSeats[i]; PlayerInfo p = rm.players[i]; s.gameObject.SetActive(true); s.Find("bghead/icon").GetComponent <IconLoader>().setUserID(p.userid); s.Find("name").GetComponent <UILabel>().text = p.name; } for (int i = index; i < mSeats.Count; i++) { mSeats[i].gameObject.SetActive(false); } string[] descs = new string[] { "等待中", "已拒绝", "已同意", "离线", "申请解散" }; for (int i = 0; i < rm.players.Count && i < mSeats.Count; i++) { Transform status = mSeats [i].Find("status"); UILabel desc = status.GetComponentInChildren <UILabel>(); SpriteMgr sm = status.Find("icon").GetComponent <SpriteMgr>(); int state = dv.states[i]; int id = 0; if (state > 2) { id = 4; } bool online = dv.online[i]; if (state <= 2) { if (!online) { id = 3; } else { id = state; } } sm.setIndex(id); desc.text = descs[id]; } grid.Reposition(); int si = rm.seatindex; int st = dv.states[si]; bool[] check = new bool[] { false, false, false, false }; if (dv.reason == "offline") { check [2] = true; } else { if (0 == st) { check [0] = true; check [1] = true; } else { check [3] = true; } } mBtnAgree.SetActive(check[0]); mBtnReject.SetActive(check[1]); mBtnDissolve.SetActive(check[2]); }
public override int HandlePacket(GamePlayer player, GSPacketIn packet) { RoomMgr.ExitWaitingRoom(player); return(0); }
public FightHandler(BaseServer server) { baseServer = server; roomMgr = new RoomMgr(); }
public void OnAction(Hashtable parameters) { Console.WriteLine("This server GunnyII, edit and build by SkelletonX!"); Console.WriteLine("Starting GameServer ... please wait a moment!"); GameServer.CreateInstance(new GameServerConfig()); GameServer.Instance.Start(); GameServer.KeepRunning = true; Console.WriteLine("Server started!"); ConsoleClient client = new ConsoleClient(); while (GameServer.KeepRunning) { try { ConsoleStart.handler = new ConsoleStart.ConsoleCtrlDelegate(ConsoleStart.ConsoleCtrHandler); ConsoleStart.SetConsoleCtrlHandler(ConsoleStart.handler, true); Console.Write("> "); string text = Console.ReadLine(); string[] array = text.Split(new char[] { ' ' }); string key; switch (key = array[0]) { case "exit": GameServer.KeepRunning = false; continue; //dragonares case "lock": Console.Clear(); Console.WriteLine("Ten tai khoan: "); string bnickname = Console.ReadLine(); Console.WriteLine("Ly do band: "); string breason = Console.ReadLine(); DateTime dt2 = new DateTime(2014, 07, 02); //Tempo de banimento using (ManageBussiness mg = new ManageBussiness()) { mg.ForbidPlayerByNickName(bnickname, dt2, false); } Console.WriteLine("Nguoi dung " + bnickname + " da bi khoa."); break; case "unlock": Console.Clear(); Console.WriteLine("Ten tai khoan: "); string bnickname2 = Console.ReadLine(); DateTime dt22 = new DateTime(2014, 07, 02); //Tempo de banimento using (ManageBussiness mg = new ManageBussiness()) { mg.ForbidPlayerByNickName(bnickname2, dt22, true); } Console.WriteLine("Nguoi dung " + bnickname2 + " da mo khoa."); break; case "thongbao": { Console.WriteLine("Thong bao: "); string value = Console.ReadLine(); Console.WriteLine(string.Format(value)); Console.WriteLine("Thong bao thanh cong ."); continue; } case "cp": { GameClient[] allClients = GameServer.Instance.GetAllClients(); int num2 = (allClients == null) ? 0 : allClients.Length; GamePlayer[] allPlayers = WorldMgr.GetAllPlayers(); int num3 = (allPlayers == null) ? 0 : allPlayers.Length; List <BaseRoom> allUsingRoom = RoomMgr.GetAllUsingRoom(); int num4 = 0; int num5 = 0; foreach (BaseRoom current in allUsingRoom) { if (!current.IsEmpty) { num4++; if (current.IsPlaying) { num5++; } } } double num6 = (double)GC.GetTotalMemory(false); Console.WriteLine(string.Format("Total Clients/Players:{0}/{1}", num2, num3)); Console.WriteLine(string.Format("Total Rooms/Games:{0}/{1}", num4, num5)); Console.WriteLine(string.Format("Total Momey Used:{0} MB", num6 / 1024.0 / 1024.0)); continue; } case "shutdown": ConsoleStart._count = 6; ConsoleStart._timer = new Timer(new TimerCallback(ConsoleStart.ShutDownCallBack), null, 0, 60000); continue; case "savemap": continue; case "clear": Console.Clear(); continue; case "ball&reload": if (BallMgr.ReLoad()) { Console.WriteLine("Ball info is Reload!"); continue; } Console.WriteLine("Ball info is Error!"); continue; case "map&reload": if (MapMgr.ReLoadMap()) { Console.WriteLine("Map info is Reload!"); continue; } Console.WriteLine("Map info is Error!"); continue; case "mapserver&reload": if (MapMgr.ReLoadMapServer()) { Console.WriteLine("mapserver info is Reload!"); continue; } Console.WriteLine("mapserver info is Error!"); continue; case "prop&reload": if (PropItemMgr.Reload()) { Console.WriteLine("prop info is Reload!"); continue; } Console.WriteLine("prop info is Error!"); continue; case "item&reload": if (ItemMgr.ReLoad()) { Console.WriteLine("item info is Reload!"); continue; } Console.WriteLine("item info is Error!"); continue; case "shop&reload": if (ShopMgr.ReLoad()) { Console.WriteLine("shop info is Reload!"); continue; } Console.WriteLine("shop info is Error!"); continue; case "quest&reload": if (QuestMgr.ReLoad()) { Console.WriteLine("quest info is Reload!"); continue; } Console.WriteLine("quest info is Error!"); continue; case "fusion&reload": if (FusionMgr.ReLoad()) { Console.WriteLine("fusion info is Reload!"); continue; } Console.WriteLine("fusion info is Error!"); continue; case "consortia&reload": if (ConsortiaMgr.ReLoad()) { Console.WriteLine("consortiaMgr info is Reload!"); continue; } Console.WriteLine("consortiaMgr info is Error!"); continue; case "rate&reload": if (RateMgr.ReLoad()) { Console.WriteLine("Rate Rate is Reload!"); continue; } Console.WriteLine("Rate Rate is Error!"); continue; case "fight&reload": if (FightRateMgr.ReLoad()) { Console.WriteLine("FightRateMgr is Reload!"); continue; } Console.WriteLine("FightRateMgr is Error!"); continue; case "dailyaward&reload": if (AwardMgr.ReLoad()) { Console.WriteLine("dailyaward is Reload!"); continue; } Console.WriteLine("dailyaward is Error!"); continue; case "language&reload": if (LanguageMgr.Reload("")) { Console.WriteLine("language is Reload!"); continue; } Console.WriteLine("language is Error!"); continue; case "nickname": { Console.WriteLine("Please enter the nickname"); string nickName = Console.ReadLine(); string playerStringByPlayerNickName = WorldMgr.GetPlayerStringByPlayerNickName(nickName); Console.WriteLine(playerStringByPlayerNickName); continue; } } if (text.Length > 0) { if (text[0] == '/') { text = text.Remove(0, 1); text = text.Insert(0, "&"); } try { if (!CommandMgr.HandleCommandNoPlvl(client, text)) { Console.WriteLine("Unknown command: " + text); } } catch (Exception ex) { Console.WriteLine(ex.ToString()); } } } catch (Exception value) { Console.WriteLine(value); } } if (GameServer.Instance != null) { GameServer.Instance.Stop(); } LogManager.Shutdown(); }
public override bool Start() { bool result = true; try { IsRunning = 0; Thread.CurrentThread.Priority = ThreadPriority.Normal; AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(this.CurrentDomain_UnhandledException); if (!this.StartScriptComponents()) { result = false; GameServer.log.Error("初始化脚本失败,请检查!"); return(result); } GameServer.log.Info("初始化脚本成功!"); if (!this.InitSocket(IPAddress.Parse(this.Config.GameIP), this.Config.GamePort)) { result = false; GameServer.log.Error("初始化监听端口失败,请检查!"); return(result); } GameServer.log.Info("初始化监听端口成功!"); if (!this.AllocatePacketBuffers()) { result = false; GameServer.log.Error("分配数据包缓冲区失败,请检查!"); return(result); } GameServer.log.Info("分配数据包缓冲区成功!"); //LogMgr.Setup if (!WorldMgr.Init()) { result = false; GameServer.log.Error("初始化世界场景失败,请检查!"); return(result); } GameServer.log.Info("初始化世界场景成功!"); if (!FusionMgr.Init()) { result = false; GameServer.log.Error("初始化熔炼失败,请检查!"); return(result); } GameServer.log.Info("初始化熔炼成功!"); if (!AwardMgr.Init()) { result = false; GameServer.log.Error("初始化奖励失败,请检查!"); return(result); } GameServer.log.Info("初始化奖励成功!"); if (!MissionInfoMgr.Init()) { result = false; GameServer.log.Error("初始化关卡失败,请检查!"); return(result); } GameServer.log.Info("初始化关卡成功!"); if (!PveInfoMgr.Init()) { result = false; GameServer.log.Error("初始化pve失败,请检查!"); return(result); } GameServer.log.Info("初始化pve成功!"); if (!FightRateMgr.Init()) { result = false; GameServer.log.Error("初始化战斗倍率失败,请检查!"); return(result); } GameServer.log.Info("初始化战斗倍率成功!"); if (!ConsortiaLevelMgr.Init()) { result = false; GameServer.log.Error("初始化公会等级失败,请检查!"); return(result); } GameServer.log.Info("初始化公会等级成功!"); if (!StrengthenMgr.Init()) { result = false; GameServer.log.Error("初始化强化失败,请检查!"); return(result); } GameServer.log.Info("初始化强化成功!"); if (!ShopMgr.Init()) { result = false; GameServer.log.Error("初始化商店失败,请检查!"); return(result); } GameServer.log.Info("初始化商店成功!"); if (!BoxMgr.Init()) { result = false; GameServer.log.Error("初始化时间宝箱失败,请检查!"); return(result); } GameServer.log.Info("初始化时间宝箱成功!"); if (!QuestMgr.Init()) { result = false; GameServer.log.Error("初始化任务失败,请检查!"); return(result); } GameServer.log.Info("初始化任务成功!"); if (!AchievementMgr.Init()) { result = false; GameServer.log.Error("初始化成就失败,请检查!"); return(result); } GameServer.log.Info("初始化成就成功!"); if (!AchievementMgr.Init()) { result = false; GameServer.log.Error("初始化成就失败,请检查!"); return(result); } GameServer.log.Info("初始化成就成功!"); if (!RoomMgr.Setup(this.Config.MaxRoomCount)) { result = false; GameServer.log.Error("初始化房间管理服务失败,请检查!"); return(result); } GameServer.log.Info("初始化房间管理服务成功!"); if (!GameMgr.Setup(1, 4)) { result = false; GameServer.log.Error("初始化游戏管理服务失败,请检查!"); return(result); } GameServer.log.Info("初始化游戏管理服务成功!"); if (!ConsortiaMgr.Init()) { result = false; GameServer.log.Error("初始化公会失败,请检查!"); return(result); } GameServer.log.Info("初始化公会成功!"); if (!Game.Server.Managers.RateMgr.Init(this.Config)) { result = false; GameServer.log.Error("初始化经验倍率管理服务失败,请检查!"); return(result); } GameServer.log.Info("初始化经验倍率管理服务成功!"); if (!MacroDropMgr.Init()) { result = false; GameServer.log.Error("初始化宏观掉落失败,请检查!"); return(result); } GameServer.log.Info("初始化宏观掉落成功!"); if (!BattleMgr.Setup(this.Config)) { result = false; GameServer.log.Error("加载战斗管理服务失败,请检查!"); return(result); } GameServer.log.Info("加载战斗管理服务成功!"); if (!this.InitGlobalTimer()) { result = false; GameServer.log.Error("初始化全局Timers失败,请检查!"); return(result); } GameServer.log.Info("初始化全局Timers成功!"); if (!this.InitLoginServer()) { result = false; GameServer.log.Error("登陆到中心服务器失败,请检查!"); return(result); } GameServer.log.Info("登陆到中心服务器成功!"); if (!MarryRoomMgr.Init()) { result = false; GameServer.log.Error("初始化礼堂失败,请检查!"); return(result); } GameServer.log.Info("初始化礼堂成功!"); if (!SpaRoomMgr.Init()) { result = false; GameServer.log.Error("初始化温泉失败,请检查!"); return(result); } GameServer.log.Info("初始化温泉成功!"); if (!ActiveMgr.Init()) { result = false; GameServer.log.Error("初始化活动失败,请检查!"); return(result); } GameServer.log.Info("初始化活动成功!"); if (!VIPMgr.Init()) { result = false; GameServer.log.Error("初始化VIP失败,请检查!"); return(result); } GameServer.log.Info("初始化VIP成功!"); if (!LevelMgr.Init()) { result = false; GameServer.log.Error("初始化等级失败,请检查!"); return(result); } GameServer.log.Info("初始化等级成功!"); /* if (!WorldBossMgr.Init()) * { * result = false; * GameServer.log.Error("初始化世界Boss失败,请检查!"); * return result; * } * GameServer.log.Info("初始化世界Boss成功!"); */ RoomMgr.Start(); GameMgr.Start(); BattleMgr.Start(); MacroDropMgr.Start(); if (!base.Start()) { result = false; GameServer.log.Error("启动基础服务失败,请检查!"); return(result); } GameServer.log.Info("启动基础服务成功!"); GameEventMgr.Notify(ScriptEvent.Loaded); GC.Collect(GC.MaxGeneration); //LogMgr.Setup(1, 1, 1); GameServer.log.Warn("游戏服务器启动成功!"); IsRunning = 1; } catch (Exception e) { GameServer.log.Error("Failed to start the server", e); // throw e; result = false; } return(result); }
public RoomMgr() { instance = this; RoomNum = 0; }