Esempio n. 1
0
        private static void UpdateEntities(GameTime gameTime)
        {
            for (int i = Entities.Count - 1; i >= 0; i--)
            {
                Entities[i].Update(gameTime);

                if (Entities[i] is Pipe)
                {
                    if (Entities[i].CollisionRectangle.Right < CameraLocation.X)
                    {
                        Entities[i].Remove = true;
                        EntityBuffer.Add(new Pipe(Camera.ScreenBounds.Width * 0.5f + pipeIndex++ *128));
                    }
                }

                if (Entities[i].Remove)
                {
                    Entities.RemoveAt(i);
                }
            }

            if (EntityBuffer.Count > 0)
            {
                foreach (Entity e in EntityBuffer)
                {
                    Entities.Add(e);
                }

                EntityBuffer.Clear();
            }
        }
Esempio n. 2
0
        private static void UpdateEntities(GameTime gameTime)
        {
            if (GameOver)
            {
                return;
            }

            for (int i = Entities.Count - 1; i >= 0; i--)
            {
                Entities[i].Update(gameTime);

                if (Entities[i].Remove)
                {
                    Entities.RemoveAt(i);
                }
            }

            if (EntityBuffer.Count > 0)
            {
                foreach (Entity e in EntityBuffer)
                {
                    Entities.Add(e);
                }

                EntityBuffer.Clear();
            }

            //Entities.Sort();
        }
Esempio n. 3
0
        //[TestMethod]
        public void SPRepository_Test_EntityBuffer()
        {
            using (ClientContext context = new ClientContext(ConfigurationManager.AppSettings["SiteUrl"]))
            {
                SecureString password = Common.ToSecureString(ConfigurationManager.AppSettings["UserPassword"]);
                context.Credentials = new SharePointOnlineCredentials(ConfigurationManager.AppSettings["UserLogin"], password);
                SPClientRepository <MockTestSPEntity> repo   = new SPClientRepository <MockTestSPEntity>(context);
                EntityBuffer <MockTestSPEntity>       buffer = new EntityBuffer <MockTestSPEntity>(repo, t => t.Id > 0);
                int counter = 0;
                buffer.Enumerate(delegate(MockTestSPEntity entity)
                {
                    counter++;
                }, 3);

                Assert.AreEqual(10, counter);
            }
        }
Esempio n. 4
0
        private bool SpawnFromBuffer()
        {
            var entities = EntityBuffer.GetEntities();

            foreach (var entity in entities)
            {
                var player = entity.GetEntityComponent <HeroActor>();

                if (player != null)
                {
                    Vector2Int cell = FindWalkableCell();
                    EntityBuffer.Pop(entity, Entity.Level, cell);

                    return(true);
                }
            }

            return(false);
        }
Esempio n. 5
0
 public static void AddEntity(Entity e)
 {
     EntityBuffer.Add(e);
 }