Files
Fishing2Server/Hotfix/Map/System/MapUnitSystem.cs

43 lines
988 B
C#

using Fantasy;
using Fantasy.Async;
using Fantasy.Entitas.Interface;
using Unity.Mathematics;
namespace NB.Map;
public class MapUnitSystemDestroySystem : DestroySystem<MapUnit>
{
protected override void Destroy(MapUnit self)
{
self.MapId = 0;
self.Position = float3.zero;
self.Rotation = float4.zero;
self.GateRouteId = 0L;
}
}
public static class MapUnitSystem
{
public static async FTask<uint> EnterMap(this MapUnit self, int mapId)
{
var mapManageComponent = self.Scene.GetComponent<MapManageComponent>();
var map = mapManageComponent.Get(mapId);
if (map == null)
{
return ErrorCode.MapIdError;
}
// 同步客户端
self.Scene.NetworkMessagingComponent.SendInnerRoute(self.GateRouteId, new Map2C_ChangeMap()
{
Node = 1,
MapId = mapId
});
await FTask.CompletedTask;
return ErrorCode.Successful;
}
}