示例#1
0
 internal void InvokeFrameSyncDataInitialize(FrameSyncGame game)
 {
     foreach (IFrameSyncData frameSyncData in _frameSyncDatas)
     {
         frameSyncData.FrameSyncDataInitialize(game);
     }
 }
示例#2
0
 public override void Update(FrameSyncGame game, FrameSyncInput input, FrameSyncUpdateType updateType)
 {
     foreach (var pair in _behaviours)
     {
         StaticFrameSyncBehaviour behaviour = pair.Value;
         if (!behaviour._isInitialized)
         {
             behaviour.InvokeFrameSyncDataInitialize(game);
         }
         behaviour.InvokeFrameSyncFixedUpdate(input, updateType);
     }
 }
示例#3
0
        private void Awake()
        {
            _engine = new FrameSyncEngine();

            OnFrameSyncEngineCreated(_engine);

            _engine.SetInputSaveHandler(SaveInput);

            _game = new FrameSyncGame(_engine._input);
            OnFrameSyncGameCreated(_game, null);

            OnFrameSyncGameWillStart();

            StartGame();
        }
示例#4
0
        public override void Update(FrameSyncGame game, FrameSyncInput input, FrameSyncUpdateType updateType)
        {
            foreach (var pair in _behaviours)
            {
                DynamicFrameSyncBehaviour behaviour = pair.Value;

                if (behaviour.hasBufferedToRemove)
                {
                    continue;
                }

                if (!behaviour._isInitialized)
                {
                    behaviour.InvokeFrameSyncDataInitialize(game);
                }

                behaviour.InvokeFrameSyncFixedUpdate(input, updateType);
            }

            foreach (DynamicFrameSyncBehaviour behaviour in _bufferedNewBehaviours)
            {
                if (!behaviour._isInitialized)
                {
                    behaviour.InvokeFrameSyncDataInitialize(game);
                }
                behaviour.InvokeFrameSyncFixedUpdate(input, updateType);

                _behaviours.Add(behaviour.FrameSyncBehaviourID, behaviour);
            }

            foreach (DynamicFrameSyncBehaviour behaviour in _bufferedRemovedBehaviours)
            {
                Remove(behaviour);
            }

            _bufferedNewBehaviours.Clear();
            _bufferedRemovedBehaviours.Clear();
        }
 internal void SetFrameSyncGame(FrameSyncGame game)
 {
     _game = game;
 }
 public virtual void Update(FrameSyncGame game, FrameSyncInput input, FrameSyncUpdateType updateType)
 {
 }
示例#7
0
 public abstract void OnCollectLocalPlayerInputs(FrameSyncInput input, FrameSyncGame game);
示例#8
0
 public abstract void OnFrameSyncGameCreated(FrameSyncGame game, FrameSyncReplay replay);