コード例 #1
0
ファイル: PacketNotifier.cs プロジェクト: agentran/GameServer
        public void NotifyEmotions(Emotions type, uint netId)
        {
            // convert type
            EmotionType targetType;

            switch (type)
            {
            case Emotions.DANCE:
                targetType = EmotionType.DANCE;
                break;

            case Emotions.TAUNT:
                targetType = EmotionType.TAUNT;
                break;

            case Emotions.LAUGH:
                targetType = EmotionType.LAUGH;
                break;

            case Emotions.JOKE:
                targetType = EmotionType.JOKE;
                break;

            case Emotions.UNK:
                targetType = (EmotionType)type;
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(type), type, null);
            }

            var packet = new EmotionPacketResponse((byte)targetType, netId);

            _packetHandlerManager.BroadcastPacket(packet, Channel.CHL_S2C);
        }
コード例 #2
0
ファイル: HandleEmotion.cs プロジェクト: Kaap0/GameServer
        public override bool HandlePacket(Peer peer, byte[] data)
        {
            var emotion = new EmotionPacketRequest(data);
            //for later use -> tracking, etc.
            var playerName = _playerManager.GetPeerInfo(peer).Champion.Model;

            switch (emotion.id)
            {
            case (byte)Emotions.Dance:
                _logger.LogCoreInfo("Player " + playerName + " is dancing.");
                break;

            case (byte)Emotions.Taunt:
                _logger.LogCoreInfo("Player " + playerName + " is taunting.");
                break;

            case (byte)Emotions.Laugh:
                _logger.LogCoreInfo("Player " + playerName + " is laughing.");
                break;

            case (byte)Emotions.Joke:
                _logger.LogCoreInfo("Player " + playerName + " is joking.");
                break;
            }

            var response = new EmotionPacketResponse(emotion.id, emotion.netId);

            return(_game.PacketHandlerManager.broadcastPacket(response, Channel.CHL_S2C));
        }