1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- namespace ET.Server
- {
- [FriendOf(typeof (PlayerDataComponent))]
- public static class PlayerDataComponentSystem
- {
- public class PlayerDataComponentaAwakeSystem: AwakeSystem<PlayerDataComponent, PlayerInfo, WNPlayer>
- {
- /// <summary>
- /// 玩家基础数据组件创建
- /// </summary>
- /// <param name="self"></param>
- /// <param name="info"></param>
- /// <param name="player"></param>
- protected override void Awake(PlayerDataComponent self, PlayerInfo info, WNPlayer player)
- {
- Log.Info($"创建玩家基础数据组件...");
- self.Player = player;
- self.Data = info;
- }
- }
- public class PlayerDataComponentDestroySystem: DestroySystem<PlayerDataComponent>
- {
- /// <summary>
- /// 玩家基础数据组件销毁
- /// </summary>
- /// <param name="self"></param>
- protected override void Destroy(PlayerDataComponent self)
- {
- Log.Debug($"玩家基础数据保存");
- self?.Save();
- }
- }
- public static async ETTask Save(this PlayerDataComponent self)
- {
- if (self.Data != null)
- {
- self.Data.Id = self.Player.GetId();
- await DBManagerComponent.Instance.GetZoneDB(self.DomainZone()).Save(self.Data);
- }
- }
- }
- }
|