unity学习(45)——选择角色菜单——客户端处理服务器的数据

1.已知客户端ReceiveCallBack中已经收到来自服务器返回的数据包。

2.问题是客户端MessageManager中的Update并没有拆解该数据包 ,因该是因为脚本没有挂载。

挂在SelectMenu场景中的Camera上即可。

挂载后成功达到目地

其中Update中的List是一个起到全局效果的static!

3.继续编写MessageManager.cs脚本中UserHandler函数的内容:

问题:角色列表每次只返回一个,角色信息不会在服务器的内存和硬盘中保存,多角色的选取页面

先做create的后续操作,问题不大。

cs 复制代码
public void UserHandler(SocketModel model)//type=LOGIN的都先进这里
{
    Debug.Log("UserHandler!!!!!!!!!!!!!!!!!!!!!");
    //速度不会很快,还是需要一点一点来
    switch (model.command)
    {
        case UserProtocol.LIST_SRES:
            //list(model.message);//直接展开写过来
            break;
        case UserProtocol.CREATE_SRES:
            //create(model.message);
            if (model.message != null)
            {
                //WindowConstans.windowList.Add (WindowConstans.JOB_CREATE_SUCCEED);
                string m = Coding<StringDTO>.encode(new StringDTO(GameInfo.ACC_ID));
                NetWorkScript.getInstance().sendMessage(Protocol.USER, 0, UserProtocol.LIST_CREQ, m);
                Debug.Log("接着乐接着舞!"+ model.message);
            }
            break;
        case UserProtocol.SELECT_SRES:
            //selectPlayer(model.message);
            break;
    }
}

4.实测发现,当前每个账号最多只能创建3个角色,当然服务器重启后又可以创建三次,这个与实际应用的角度相差甚远!

相关推荐
心祭丫丫1 小时前
【每天一个 Python 小案例17】Python 实现通讯录
开发语言·人工智能·笔记·python·学习
Nerd(BUG版)4 小时前
Flutter学习day5--事件手势与命中测试
学习·flutter
Nerd(BUG版)5 小时前
KMP学习day4--Kotlin空安全与泛型
学习·安全·kotlin
東隅已逝,桑榆非晚5 小时前
算法6. 双指针法-查找总价格为目标的两个商品
c++·学习·算法
wdyan2976 小时前
带着小白学习-微服务-5 实战:配置中心-数据库连接
数据库·学习·微服务
叼烟扛炮7 小时前
Linux 学习笔记(五十):网络层——IP 协议、子网划分与 NAT 魔法
linux·笔记·学习
叼烟扛炮7 小时前
Linux 学习笔记(六十):单线程的逆袭——epoll 高并发服务器实战
linux·服务器·网络·笔记·学习·算法
Rabitebla8 小时前
【Linux操作系统】进程篇(十一):进程程序替换——从底层原理到 exec 函数族
linux·服务器·c++·笔记·学习·算法
叼烟扛炮9 小时前
[LangChain] 学习笔记(03):打破失忆症——对话机制与上下文管理
java·前端·javascript·笔记·学习·langchain
旖旎夜光9 小时前
【C++ 基础入门】类和对象(下):初始化列表、static 成员、友元与内部类
c++·笔记·学习