public static HearSoulEmote read(BinaryReader binaryReader)
        {
            var newObj = new HearSoulEmote();

            newObj.SenderID     = binaryReader.ReadUInt32();
            newObj.SenderName   = PStringChar.read(binaryReader);
            newObj.EmoteMessage = PStringChar.read(binaryReader);
            return(newObj);
        }
    public override bool acceptMessageData(BinaryReader messageDataReader, TreeView outputTreeView)
    {
        bool handled = true;

        PacketOpcode opcode = Util.readOpcode(messageDataReader);

        switch (opcode)
        {
        case PacketOpcode.Evt_Communication__Talk_ID:     // 0x0015
        {
            var message = Talk.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__PopUpString_ID:     // 0x0004
        {
            var message = PopUpString.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__TalkDirect_ID:     // 0x0032
        {
            var message = TalkDirect.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__TalkDirectByName_ID:     // 0x005D
        {
            var message = TalkDirectByName.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__ChannelBroadcast_ID:     // 0x0147
        {
            var message = ChannelBroadcast.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        /*case PacketOpcode.Evt_Communication__SetSquelchDB_ID: // 0x01F4
         *  {
         *      var message = SetSquelchDB.read(messageDataReader);
         *      message.contributeToTreeView(outputTreeView);
         *      break;
         *  }*/
        case PacketOpcode.Evt_Communication__Emote_ID:     // 0x01DF
        {
            var message = Emote.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__HearEmote_ID:     // 0x01E0
        {
            var message = HearEmote.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__SoulEmote_ID:     // 0x01E1
        {
            var message = SoulEmote.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__HearSoulEmote_ID:     // 0x01E2
        {
            var message = HearSoulEmote.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__Recv_ChatRoomTracker_ID:     // 0x0295
        {
            var message = Recv_ChatRoomTracker.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__WeenieError_ID:     // 0x028A
        {
            WeenieError message = WeenieError.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__WeenieErrorWithString_ID:     // 0x028B
        {
            WeenieErrorWithString message = WeenieErrorWithString.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__HearSpeech_ID:     // 0x02BB
        {
            var message = HearSpeech.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__HearRangedSpeech_ID:     // 0x02BC
        {
            var message = HearRangedSpeech.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__HearDirectSpeech_ID:     // 0x2BD
        {
            var message = HearDirectSpeech.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__TransientString_ID:     // 0x2EB
        {
            var message = TransientString.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Communication__TextboxString_ID:     // 0xF7E0
        {
            var message = TextBoxString.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        default: {
            handled = false;
            break;
        }
        }

        return(handled);
    }