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个角色,当然服务器重启后又可以创建三次,这个与实际应用的角度相差甚远!

相关推荐
Hello_Embed5 小时前
STM32HAL 快速入门(二十):UART 中断改进 —— 环形缓冲区解决数据丢失
笔记·stm32·单片机·学习·嵌入式软件
咸甜适中5 小时前
rust语言 (1.88) 学习笔记:客户端和服务器端同在一个项目中
笔记·学习·rust
Magnetic_h6 小时前
【iOS】设计模式复习
笔记·学习·ios·设计模式·objective-c·cocoa
研梦非凡7 小时前
ICCV 2025|从粗到细:用于高效3D高斯溅射的可学习离散小波变换
人工智能·深度学习·学习·3d
limengshi1383928 小时前
机器学习面试:请介绍几种常用的学习率衰减方式
人工智能·学习·机器学习
知识分享小能手8 小时前
React学习教程,从入门到精通,React 组件核心语法知识点详解(类组件体系)(19)
前端·javascript·vue.js·学习·react.js·react·anti-design-vue
周周记笔记9 小时前
学习笔记:第一个Python程序
笔记·学习
优雅鹅9 小时前
ARM、AArch64、amd64、x86_64、x86有什么区别?
arm开发·学习
..过云雨9 小时前
05.【Linux系统编程】进程(冯诺依曼体系结构、进程概念、进程状态(注意僵尸和孤儿)、进程优先级、进程切换和调度)
linux·笔记·学习
咸甜适中10 小时前
rust语言 (1.88) egui (0.32.2) 学习笔记(逐行注释)(二十八)使用图片控件显示图片
笔记·学习·rust·egui