using JNGame.Sync.Frame.Service;
using NotImplementedException = System.NotImplementedException;

namespace JNGame.Sync.System
{
    /// <summary>
    /// 帧同步 - 逻辑系统
    /// </summary>
    public class SLogicSystem : SBaseSystem,IJNSyncCycle,IJNSyncId
    {
        
        private ulong _id;
        public ulong Id => _id;

        public virtual void OnSyncStart()
        {
            
            JNRandomSystem random;
            if (this is JNRandomSystem) random = (JNRandomSystem)this;
            else random = GetSystem<JNRandomSystem>();

            _id = random.NextId();

        }

        public virtual void OnSyncUpdate(int dt)
        {
        }

        public virtual void OnSyncDestroy(){}
        
    }
}