private void Notice(GamePlayer player, int id, string name) { int rate = ShopMgr.GetLimitCountByID(id) * 100 / ShopMgr.GetLimitMax(id); if (rate == 70 || rate == 50 || rate == 30 || rate == 10) { GSPacketIn pkg = new GSPacketIn(10); pkg.WriteInt(2); pkg.WriteString(LanguageMgr.GetTranslation("UserBuyLimitItemNotice.Content", new object[] { name, ShopMgr.GetLimitCountByID(id) })); GameServer.Instance.LoginServer.SendPacket(pkg); GamePlayer[] players = WorldMgr.GetAllPlayers(); GamePlayer[] array = players; for (int i = 0; i < array.Length; i++) { GamePlayer p = array[i]; if (p != player) { p.Out.SendTCP(pkg); } } } }
public override int HandlePacket(GamePlayer player, GSPacketIn packet) { ItemInfo item = player.PropBag.GetItemByCategoryID(0, 11, 4); if (item != null) { player.PropBag.RemoveCountFromStack(item, 1, eItemRemoveType.Use); player.OnUsingItem(item.TemplateID); int senderID = packet.ReadInt(); string senderName = packet.ReadString(); string msg = packet.ReadString(); GSPacketIn pkg = packet.Clone(); pkg.ClearContext(); pkg.ClientID = player.PlayerCharacter.ID; pkg.WriteInt(player.PlayerCharacter.ID); pkg.WriteString(player.PlayerCharacter.NickName); pkg.WriteString(msg); GamePlayer[] players = WorldMgr.GetAllPlayers(); GamePlayer[] array = players; for (int i = 0; i < array.Length; i++) { GamePlayer p = array[i]; p.Out.SendTCP(pkg); } } return(0); }
public int HandlePacket(GameClient client, GSPacketIn packet) { packet.ReadBoolean(); string str = packet.ReadString(); int num = 200; if (client.Player.PlayerCharacter.Money >= num) { client.Player.RemoveMoney(num); GSPacketIn gSPacketIn = new GSPacketIn(123); gSPacketIn.WriteString(str); GameServer.Instance.LoginServer.SendPacket(gSPacketIn); client.Player.LastChatTime = DateTime.Now; GamePlayer[] allPlayers = WorldMgr.GetAllPlayers(); for (int i = 0; i < allPlayers.Length; i++) { GamePlayer gamePlayer = allPlayers[i]; gSPacketIn.ClientID = gamePlayer.PlayerCharacter.ID; gamePlayer.Out.SendTCP(gSPacketIn); } } else { client.Out.SendMessage(eMessageType.ChatERROR, LanguageMgr.GetTranslation("Xu không đủ!", new object[0])); } return(0); }
public int HandlePacket(GameClient client, GSPacketIn packet) { ItemInfo itemByCategoryID = client.Player.PropBag.GetItemByCategoryID(0, 11, 4); if (itemByCategoryID != null) { client.Player.PropBag.RemoveCountFromStack(itemByCategoryID, 1); packet.ReadInt(); packet.ReadString(); string str = packet.ReadString(); if (DateTime.Compare(client.Player.LastChatTime.AddSeconds(15.0), DateTime.Now) > 0) { client.Out.SendMessage(eMessageType.ChatERROR, LanguageMgr.GetTranslation("Quá nhiều thao tác!", new object[0])); return(1); } GSPacketIn gSPacketIn = new GSPacketIn(71); gSPacketIn.WriteInt(client.Player.PlayerCharacter.ID); gSPacketIn.WriteString(client.Player.PlayerCharacter.NickName); gSPacketIn.WriteString(str); GameServer.Instance.LoginServer.SendPacket(gSPacketIn); client.Player.LastChatTime = DateTime.Now; GamePlayer[] allPlayers = WorldMgr.GetAllPlayers(); for (int i = 0; i < allPlayers.Length; i++) { GamePlayer gamePlayer = allPlayers[i]; gSPacketIn.ClientID = gamePlayer.PlayerCharacter.ID; gamePlayer.Out.SendTCP(gSPacketIn); } } return(0); }
public void HandleConsortiaDuty(GSPacketIn packet) { int updateType = packet.ReadByte(); int consortiaID = packet.ReadInt(); int playerID = packet.ReadInt(); string playerName = packet.ReadString(); int dutyLevel = packet.ReadInt(); string dutyName = packet.ReadString(); int right = packet.ReadInt(); GamePlayer[] players = WorldMgr.GetAllPlayers(); foreach (GamePlayer p in players) { if (p.PlayerCharacter.ConsortiaID == consortiaID) { if (updateType == 2 && p.PlayerCharacter.DutyLevel == dutyLevel) { p.PlayerCharacter.DutyName = dutyName; } else if (p.PlayerCharacter.ID == playerID && (updateType == 5 || updateType == 6 || updateType == 7 || updateType == 8 || updateType == 9)) { p.PlayerCharacter.DutyLevel = dutyLevel; p.PlayerCharacter.DutyName = dutyName; p.PlayerCharacter.Right = right; } p.Out.SendTCP(packet); } } }
public int HandlePacket(GameClient client, GSPacketIn packet) { if (client.Player.PlayerCharacter.ConsortiaID == 0) { return(0); } if (client.Player.PlayerCharacter.IsBanChat) { client.Out.SendMessage(eMessageType.ChatERROR, LanguageMgr.GetTranslation("ConsortiaChatHandler.IsBanChat")); return(1); } packet.ClientID = (client.Player.PlayerCharacter.ID); byte channel = packet.ReadByte(); string nick = packet.ReadString(); string msg = packet.ReadString(); packet.WriteInt(client.Player.PlayerCharacter.ConsortiaID); GamePlayer[] players = WorldMgr.GetAllPlayers(); foreach (GamePlayer p in players) { if (p.PlayerCharacter.ConsortiaID == client.Player.PlayerCharacter.ConsortiaID) { p.Out.SendTCP(packet); } } GameServer.Instance.LoginServer.SendPacket(packet); return(0); }
public void HandleConsortiaDuty(GSPacketIn packet) { int num = (int)packet.ReadByte(); int num2 = packet.ReadInt(); int num3 = packet.ReadInt(); packet.ReadString(); int num4 = packet.ReadInt(); string dutyName = packet.ReadString(); int right = packet.ReadInt(); GamePlayer[] allPlayers = WorldMgr.GetAllPlayers(); GamePlayer[] array = allPlayers; for (int i = 0; i < array.Length; i++) { GamePlayer gamePlayer = array[i]; if (gamePlayer.PlayerCharacter.ConsortiaID == num2) { if (num == 2 && gamePlayer.PlayerCharacter.DutyLevel == num4) { gamePlayer.PlayerCharacter.DutyName = dutyName; } else { if (gamePlayer.PlayerCharacter.ID == num3 && (num == 5 || num == 6 || num == 7 || num == 8 || num == 9)) { gamePlayer.PlayerCharacter.DutyLevel = num4; gamePlayer.PlayerCharacter.DutyName = dutyName; gamePlayer.PlayerCharacter.Right = right; } } gamePlayer.Out.SendTCP(packet); } } }
public override int HandlePacket(GamePlayer player, GSPacketIn packet) { int result2; if (player.PlayerCharacter.ConsortiaID == 0) { result2 = 0; } else { bool result = false; string msg = "ConsortiaSmithUpGradeHandler.Failed"; ConsortiaInfo info = ConsortiaMgr.FindConsortiaInfo(player.PlayerCharacter.ConsortiaID); if (info == null) { msg = "ConsortiaSmithUpGradeHandler.NoConsortia"; } else { using (ConsortiaBussiness cb = new ConsortiaBussiness()) { if (cb.UpGradeSmithConsortia(player.PlayerCharacter.ConsortiaID, player.PlayerCharacter.ID, ref msg)) { info.SmithLevel++; GameServer.Instance.LoginServer.SendConsortiaSmithUpGrade(info); msg = "ConsortiaSmithUpGradeHandler.Success"; result = true; } } } if (info.SmithLevel >= 3 && info.Level <= 10) { string msg2 = LanguageMgr.GetTranslation("ConsortiaSmithUpGradeHandler.Notice", new object[] { player.PlayerCharacter.ConsortiaName, info.SmithLevel }); GSPacketIn pkg = new GSPacketIn(10); pkg.WriteInt(2); pkg.WriteString(msg2); GameServer.Instance.LoginServer.SendPacket(pkg); GamePlayer[] players = WorldMgr.GetAllPlayers(); GamePlayer[] array = players; for (int i = 0; i < array.Length; i++) { GamePlayer p = array[i]; if (p != player) { p.Out.SendTCP(pkg); } } } packet.WriteBoolean(result); packet.WriteString(LanguageMgr.GetTranslation(msg, new object[0])); player.Out.SendTCP(packet); result2 = 1; } return(result2); }
public void HandleSystemNotice(GSPacketIn packet) { GamePlayer[] players = WorldMgr.GetAllPlayers(); foreach (GamePlayer p in players) { p.Out.SendTCP(packet); } }
/// <summary> /// 处理大喇叭 /// </summary> /// <param name="packet"></param> protected void HandleBigBugle(GSPacketIn packet) { GamePlayer[] players = WorldMgr.GetAllPlayers(); foreach (GamePlayer p in players) { p.Out.SendTCP(packet); } }
private void Notice(GamePlayer player, int id, string name) { float rate = (float)ShopMgr.GetLimitCountByID(id) / (float)ShopMgr.GetLimitMax(id); int index; if (rate <= 0.7f && rate > 0.5f) { index = 0; } else { if (rate <= 0.5f && rate > 0.3f) { index = 1; } else { if (rate <= 0.3f && rate > 0.1f) { index = 2; } else { if (rate > 0.1f || rate <= 0f) { return; } index = 3; } } } if (ShopMgr.GetIsNotice(id, index) != 0) { GSPacketIn pkg = new GSPacketIn(10); pkg.WriteInt(2); pkg.WriteString(LanguageMgr.GetTranslation("UserBuyLimitItemNotice.Content", new object[] { name, ShopMgr.GetLimitCountByID(id) })); GameServer.Instance.LoginServer.SendPacket(pkg); GamePlayer[] players = WorldMgr.GetAllPlayers(); GamePlayer[] array = players; for (int i = 0; i < array.Length; i++) { GamePlayer p = array[i]; if (p != player) { p.Out.SendTCP(pkg); } } ShopMgr.CloseNotice(id, index); GSPacketIn pkg2 = new GSPacketIn(204); pkg2.WriteInt(id); pkg2.WriteInt(index); GameServer.Instance.LoginServer.SendPacket(pkg2); } }
public void SendPingCenter() { GamePlayer[] players = WorldMgr.GetAllPlayers(); int playerCount = (players == null) ? 0 : players.Length; GSPacketIn pkg = new GSPacketIn(12); pkg.WriteInt(playerCount); this.SendTCP(pkg); }
public void SendPingCenter() { GamePlayer[] allPlayers = WorldMgr.GetAllPlayers(); int val = (allPlayers == null) ? 0 : allPlayers.Length; GSPacketIn gSPacketIn = new GSPacketIn(12); gSPacketIn.WriteInt(val); this.SendTCP(gSPacketIn); }
public void HandleConsortiaUserPass(GSPacketIn packet) { packet.ReadInt(); packet.ReadBoolean(); int num = packet.ReadInt(); string consortiaName = packet.ReadString(); int num2 = packet.ReadInt(); packet.ReadString(); packet.ReadInt(); packet.ReadString(); packet.ReadInt(); string dutyName = packet.ReadString(); packet.ReadInt(); packet.ReadInt(); packet.ReadInt(); packet.ReadDateTime(); packet.ReadInt(); int dutyLevel = packet.ReadInt(); packet.ReadInt(); packet.ReadBoolean(); int right = packet.ReadInt(); packet.ReadInt(); packet.ReadInt(); packet.ReadInt(); int consortiaRepute = packet.ReadInt(); GamePlayer[] allPlayers = WorldMgr.GetAllPlayers(); GamePlayer[] array = allPlayers; for (int i = 0; i < array.Length; i++) { GamePlayer gamePlayer = array[i]; if (gamePlayer.PlayerCharacter.ID == num2) { gamePlayer.BeginChanges(); gamePlayer.PlayerCharacter.ConsortiaID = num; gamePlayer.PlayerCharacter.ConsortiaName = consortiaName; gamePlayer.PlayerCharacter.DutyName = dutyName; gamePlayer.PlayerCharacter.DutyLevel = dutyLevel; gamePlayer.PlayerCharacter.Right = right; gamePlayer.PlayerCharacter.ConsortiaRepute = consortiaRepute; ConsortiaInfo consortiaInfo = ConsortiaMgr.FindConsortiaInfo(num); if (consortiaInfo != null) { gamePlayer.PlayerCharacter.ConsortiaLevel = consortiaInfo.Level; } gamePlayer.CommitChanges(); } if (gamePlayer.PlayerCharacter.ConsortiaID == num) { gamePlayer.Out.SendTCP(packet); } } }
public void HandleSystemNotice(GSPacketIn packet) { GamePlayer[] players = WorldMgr.GetAllPlayers(); GamePlayer[] array = players; for (int i = 0; i < array.Length; i++) { GamePlayer p = array[i]; p.Out.SendTCP(packet); } }
private void HandleGetItemMessage(GSPacketIn pkg) { GamePlayer[] players = WorldMgr.GetAllPlayers(); GamePlayer[] array = players; for (int i = 0; i < array.Length; i++) { GamePlayer p = array[i]; p.Out.SendTCP(pkg); } }
protected void HandleDispatches(GSPacketIn packet) { GamePlayer[] players = WorldMgr.GetAllPlayers(); GamePlayer[] array = players; for (int i = 0; i < array.Length; i++) { GamePlayer p = array[i]; p.Out.SendTCP(packet); } }
protected void HandleBigBugle(GSPacketIn packet) { GamePlayer[] allPlayers = WorldMgr.GetAllPlayers(); GamePlayer[] array = allPlayers; for (int i = 0; i < array.Length; i++) { GamePlayer gamePlayer = array[i]; gamePlayer.Out.SendTCP(packet); } }
public void HandleConsortiaUserPass(GSPacketIn packet) { int cid = packet.ReadInt(); bool isInvite = packet.ReadBoolean(); int consortiaID = packet.ReadInt(); string consortiaName = packet.ReadString(); int id = packet.ReadInt(); string userName = packet.ReadString(); int inviteUserID = packet.ReadInt(); string inviteUserName = packet.ReadString(); int dutyID = packet.ReadInt(); string dutyName = packet.ReadString(); int offer = packet.ReadInt(); int richesOffer = packet.ReadInt(); int richesRob = packet.ReadInt(); DateTime lastDate = packet.ReadDateTime(); int grade = packet.ReadInt(); int level = packet.ReadInt(); int state = packet.ReadInt(); bool sex = packet.ReadBoolean(); int right = packet.ReadInt(); int win = packet.ReadInt(); int total = packet.ReadInt(); int escape = packet.ReadInt(); int consortiaRepute = packet.ReadInt(); GamePlayer[] players = WorldMgr.GetAllPlayers(); foreach (GamePlayer p in players) { if (p.PlayerCharacter.ID == id) { p.BeginChanges(); p.PlayerCharacter.ConsortiaID = consortiaID; p.PlayerCharacter.ConsortiaName = consortiaName; p.PlayerCharacter.DutyName = dutyName; p.PlayerCharacter.DutyLevel = level; p.PlayerCharacter.Right = right; p.PlayerCharacter.ConsortiaRepute = consortiaRepute; ConsortiaInfo consotia = ConsortiaMgr.FindConsortiaInfo(consortiaID); if (consotia != null) { p.PlayerCharacter.ConsortiaLevel = consotia.Level; } p.CommitChanges(); } if (p.PlayerCharacter.ConsortiaID == consortiaID) { p.Out.SendTCP(packet); } } }
public void SendPingCenter() { GamePlayer[] players = WorldMgr.GetAllPlayers(); int playerCount = players == null ? 0 : players.Length; GSPacketIn pkg = new GSPacketIn((byte)eChatServerPacket.PING); pkg.WriteInt(playerCount); SendTCP(pkg); }
public void HandleASSState(GSPacketIn packet) { bool state = packet.ReadBoolean(); AntiAddictionMgr.SetASSState(state); GamePlayer[] players = WorldMgr.GetAllPlayers(); foreach (GamePlayer p in players) { p.Out.SendAASControl(state, p.IsAASInfo, p.IsMinor); } }
public void HandleConfigState(GSPacketIn packet) { bool aSSState = packet.ReadBoolean(); bool dailyState = packet.ReadBoolean(); AwardMgr.DailyAwardState = dailyState; AntiAddictionMgr.SetASSState(aSSState); GamePlayer[] players = WorldMgr.GetAllPlayers(); foreach (GamePlayer p in players) { p.Out.SendAASControl(aSSState, p.IsAASInfo, p.IsMinor); } }
public void HandleASSState(GSPacketIn packet) { bool flag = packet.ReadBoolean(); AntiAddictionMgr.SetASSState(flag); GamePlayer[] allPlayers = WorldMgr.GetAllPlayers(); GamePlayer[] array = allPlayers; for (int i = 0; i < array.Length; i++) { GamePlayer gamePlayer = array[i]; gamePlayer.Out.SendAASControl(flag, gamePlayer.IsAASInfo, gamePlayer.IsMinor); } }
public int HandlePacket(GameClient client, GSPacketIn packet) { GSPacketIn pkg = new GSPacketIn(255); pkg.WriteString(packet.ReadString()); foreach (var item in WorldMgr.GetAllPlayers()) { item.SendTCP(pkg); } ; // client.SendTCP(pkg); return(0); }
private void HandleAreaMessages(GSPacketIn pkg) { GSPacketIn packet = pkg.ReadPacket(); GameServer.Instance.LoginServer.SendPacket(packet); GamePlayer[] players = WorldMgr.GetAllPlayers(); GamePlayer[] array = players; for (int i = 0; i < array.Length; i++) { GamePlayer player = array[i]; player.Out.SendTCP(packet); } }
public static void SaveServerState() { DateTime dt = DateTime.Now; GameClient[] list = GameServer.Instance.GetAllClients(); int clientCount = list == null ? 0 : list.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++; } } } long memoryCount = GC.GetTotalMemory(false); ServerStateCashe.Add(string.Format("{0},{1},{2},{3},{4},{5},{6}", _headStr, dt, clientCount, playerCount, roomCount, gameCount, memoryCount)); try { string file = string.Format("{0}\\serverstate-{1:D2}{2:D2}{3:D2}-{4:yyyyMMdd}.log", _logPath, _gameType, _areaId, _serverId, dt); using (FileStream fs = File.Open(file, FileMode.Append)) { using (StreamWriter writer = new StreamWriter(fs)) { while (ServerStateCashe.Count != 0) { writer.WriteLine(ServerStateCashe[0]); ServerStateCashe.RemoveAt(0); } } } } catch (Exception ex) { log.Error("Save log error", ex); } }
public void HandleConsortiaRichesOffer(GSPacketIn packet) { int num = packet.ReadInt(); GamePlayer[] allPlayers = WorldMgr.GetAllPlayers(); GamePlayer[] array = allPlayers; for (int i = 0; i < array.Length; i++) { GamePlayer gamePlayer = array[i]; if (gamePlayer.PlayerCharacter.ConsortiaID == num) { gamePlayer.Out.SendTCP(packet); } } }
public void HandleConsortiaRichesOffer(GSPacketIn packet) { int consortiaID = packet.ReadInt(); GamePlayer[] players = WorldMgr.GetAllPlayers(); GamePlayer[] array = players; for (int i = 0; i < array.Length; i++) { GamePlayer p = array[i]; if (p.PlayerCharacter.ConsortiaID == consortiaID) { p.Out.SendTCP(packet); } } }
public void HandleConsortiaFight(GSPacketIn packet) { int consortiaID = packet.ReadInt(); int riches = packet.ReadInt(); string msg = packet.ReadString(); GamePlayer[] players = WorldMgr.GetAllPlayers(); foreach (GamePlayer p in players) { if (p.PlayerCharacter.ConsortiaID == consortiaID) { p.Out.SendMessage(eMessageType.ChatNormal, msg); } } }
public void HandleConsortiaUserInvite(GSPacketIn packet) { int id = packet.ReadInt(); int playerid = packet.ReadInt(); GamePlayer[] players = WorldMgr.GetAllPlayers(); foreach (GamePlayer p in players) { if (p.PlayerCharacter.ID == playerid) { p.Out.SendTCP(packet); return; } } }