C2G_EnterMapHandler.cs 775 B

12345678910111213141516171819202122
  1. using System;
  2. using ETModel;
  3. namespace ETHotfix
  4. {
  5. [MessageHandler]
  6. public class C2G_EnterMapHandler : AMRpcHandler<C2G_EnterMap, G2C_EnterMap>
  7. {
  8. protected override async ETTask Run(Session session, C2G_EnterMap request, G2C_EnterMap response, Action reply)
  9. {
  10. Player player = session.GetComponent<SessionPlayerComponent>().Player;
  11. // 在map服务器上创建战斗Unit
  12. long mapInstanceId = StartConfigComponent.Instance.GetByName("Map").SceneInstanceId;
  13. M2G_CreateUnit createUnit = (M2G_CreateUnit)await ActorMessageSenderComponent.Instance.Call(
  14. mapInstanceId,
  15. new G2M_CreateUnit() { PlayerId = player.Id, GateSessionId = session.InstanceId });
  16. player.UnitId = createUnit.UnitId;
  17. response.UnitId = createUnit.UnitId;
  18. reply();
  19. }
  20. }
  21. }