Пример #1
0
        protected override void OnHandle(IPacket packet, NetState netState, ServerWorldState worldState)
        {
            ChatStatusPacket packetToHandle  = (ChatStatusPacket)packet;
            ServerCharacter  serverCharacter = (ServerCharacter)worldState.GetCharacter(netState.WorldId);

            if (serverCharacter != null)
            {
                foreach (int mapCharacterId in worldState.Characters)
                {
                    ServerCharacter  characterToUpdate = (ServerCharacter)worldState.GetCharacter(mapCharacterId);
                    NetState         clientSendTo      = characterToUpdate.Owner;
                    ChatStatusPacket packetToSend;

                    if (serverCharacter.IsDead && !characterToUpdate.IsDead)
                    {
                        packetToSend = new ChatStatusPacket(serverCharacter.Id, packetToHandle.State);
                    }
                    else
                    {
                        packetToSend = new ChatStatusPacket(serverCharacter.Id, packetToHandle.State);
                    }

                    clientSendTo.Send(packetToSend);
                }
            }
        }
Пример #2
0
        protected override void OnHandle(IPacket packet, ClientWorldState worldState)
        {
            ChatStatusPacket recivedPacket = (ChatStatusPacket)packet;

            worldState.SetChatState(recivedPacket.MobileId, recivedPacket.State);
        }
Пример #3
0
        internal void ToggleChat(int id, bool state)
        {
            ChatStatusPacket packet = new ChatStatusPacket(id, state);

            worldServerClient.Send(packet);
        }