Exemple #1
0
        public ISnapshot GenerateCompensationSnapshot()
        {
            Snapshot snapshot = Snapshot.Allocate();

            EntityMapDeepCloner.Clone(snapshot.EntityMap, _gameContexts.CompensationEntityMap, _compensationFilter);
            return(snapshot);
        }
Exemple #2
0
        public static ISnapshot CloneSnapshot(ISnapshot src)
        {
            Snapshot snapshot = Replicaton.CloneSnapshot.Allocate();

            snapshot.Header = src.Header;
            EntityMapDeepCloner.Clone(snapshot.EntityMap, src.EntityMap, EntityComponent.DummyEntityMapFilter.Instance);
            return(snapshot);
        }
Exemple #3
0
        public ISnapshot GenerateSnapshot(EntityKey self, Vector3 position)
        {
            Snapshot snapshot = Snapshot.Allocate();

            EntityMapDeepCloner.Clone(snapshot.EntityMap, _gameContexts.EntityMap,
                                      new PreSendSnapshotFilter(self, position));
            return(snapshot);
        }
Exemple #4
0
        private Snapshot CloneAndFilterSnapshot(ISnapshot srcSnapshot)
        {
            Snapshot dstSnapshot = Snapshot.Allocate();

            dstSnapshot.Header = srcSnapshot.Header;

            EntityMapDeepCloner.Clone(dstSnapshot, srcSnapshot, new Core.Replicaton.DummyEntityMapFilter());

            // filter entities here, e.g. delete bullet

            /**
             *
             */
            return(dstSnapshot);
        }