Exemple #1
0
    public static int Server2ClientChannel(ChannelType.CT channel2Server)
    {
        switch (channel2Server)
        {
        case ChannelType.CT.Faction:
            return(2);

        case ChannelType.CT.Private:
            return(4);

        case ChannelType.CT.SingleWorld:
            return(1);

        case ChannelType.CT.World:
            return(16);

        case ChannelType.CT.Team:
            return(32);

        case ChannelType.CT.System:
            return(8);

        case ChannelType.CT.TeamOrg:
            return(128);
        }
        return(1);
    }
    public void SendTalk(ChannelType.CT channel2Server, string text2chat, List <DetailInfo> items, long targetUID, List <DetailInfo> faceDetailInfos)
    {
        if (!this.IsCDPass())
        {
            return;
        }
        if (!this.IsSameLimitTalkPass(text2chat))
        {
            return;
        }
        Audience audience = new Audience();

        audience.type = channel2Server;
        audience.id   = targetUID;
        ArticleContent articleContent = new ArticleContent();

        articleContent.text = text2chat;
        if (faceDetailInfos != null)
        {
            for (int i = 0; i < faceDetailInfos.get_Count(); i++)
            {
                articleContent.items.Add(faceDetailInfos.get_Item(i));
            }
        }
        if (items != null)
        {
            for (int j = 0; j < items.get_Count(); j++)
            {
                articleContent.items.Add(items.get_Item(j));
            }
        }
        TalkReq talkReq = new TalkReq();

        talkReq.audiences.Add(audience);
        talkReq.content = articleContent;
        NetworkManager.Send(talkReq, ServerType.Chat);
    }