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(); } }
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(); }
//[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); } }
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); }
public static void AddEntity(Entity e) { EntityBuffer.Add(e); }