1.已知客户端ReceiveCallBack中已经收到来自服务器返回的数据包。
2.问题是客户端MessageManager中的Update并没有拆解该数据包 ,因该是因为脚本没有挂载。
挂在SelectMenu场景中的Camera上即可。
挂载后成功达到目地
其中Update中的List是一个起到全局效果的static!
3.继续编写MessageManager.cs脚本中UserHandler函数的内容:
问题:角色列表每次只返回一个,角色信息不会在服务器的内存和硬盘中保存,多角色的选取页面
先做create的后续操作,问题不大。
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个角色,当然服务器重启后又可以创建三次,这个与实际应用的角度相差甚远!