ActorLocationSenderComponent.Instance是每个进程持有的。 如果现在A服的玩家重登了,EntityId变化了,B服原先持有的Location会有问题呀。需不需要让通知全服进行更新。
b服根据id发,发不成功会重新取a的instanceid啊,好好看看ETBook
egametang
请问“跨服请求玩家详情”这种怎么去做呀。。。客户端发送的请求是playerId到服务器请求。 用LocationSender做不了了吧。。Location存的是会变化的EntityId。
可能要手动发到所在的Realm再转发Gate再转发到Map?
看了代码: 1,发送给不会变位置的,需要业务人自己判断。用ActorLocationSenderOneType.Send。 2,发送给可能变位置的,用ActorLocationSenderOneType.SendInner。
Location存的是会变化的EntityId 怎么是变化的EntityId啊
egametang A服玩家玩家重登了。。EntityId变了。。B服持有的A服玩家重登前的
hpyff 你这不是瞎扯吗?同一个玩家EntityId怎么会变化?
https://et-framework.cn/d/2670-messagelocationsender/2
https://et-framework.cn/d/2639-locationtypeplayerlocationtypegatesession 以上是在论坛收集遇见相同问题的人
https://github.com/egametang/ET/commit/6aefe28d8a3c02c007ccbe0d2c577a18bf7f6a5a 好了,发现1月份作者已经改了
这行代码问题很大
ET7.2,帮忙看下这个player,断线重连了,player.Id是不是一直变化的
这是demo,只是一个演示,实际上player会存在数据库中,从数据库取出来,id还是不变
egametang 好呀~那就大方加业务改了。。我以为是其他代码导致这个问题