#if TENGINE_NET
using TEngine.Core.Network;
namespace TEngine.Logic;
///
/// 当Scene创建时需要干什么
///
public class OnCreateScene : AsyncEventSystem
{
public override async FTask Handler(TEngine.OnCreateScene self)
{
// 服务器是以Scene为单位的、所以Scene下有什么组件都可以自己添加定义
// OnCreateScene这个事件就是给开发者使用的
// 比如Address协议这里、我就是做了一个管理Address地址的一个组件挂在到Address这个Scene下面了
// 比如Map下你需要一些自定义组件、你也可以在这里操作
var sceneConfigInfo = self.SceneInfo;
switch (sceneConfigInfo.SceneType)
{
case "Addressable":
{
sceneConfigInfo.Scene.AddComponent();
break;
}
}
Log.Info($"scene create: {self.SceneInfo.SceneType} {self.SceneInfo.Name} SceneId:{self.SceneInfo.Id} ServerId:{self.SceneInfo.RouteId} WorldId:{self.SceneInfo.WorldId}");
await FTask.CompletedTask;
}
}
#endif