public void CollectorCanContainMixedGroupEventEntities() { _collectorA = new Collector <MyTestEntity>( new[] { _groupA, _groupB }, new[] { GroupEvent.Added, GroupEvent.Removed }); var eA = CreateEntityWithAComponent(); var eB = CreateEntityWithBComponent(); var entities = _collectorA.CollectedEntities; Assert.AreEqual(1, _collectorA.CollectedEntities.Count); Assert.IsTrue(_collectorA.CollectedEntities.Contains(eA)); Assert.IsFalse(_collectorA.CollectedEntities.Contains(eB)); _collectorA.ClearCollectedEntities(); eA.RemoveComponentA(); eB.RemoveComponentB(); Assert.AreEqual(1, _collectorA.CollectedEntities.Count); Assert.IsFalse(_collectorA.CollectedEntities.Contains(eA)); Assert.IsTrue(_collectorA.CollectedEntities.Contains(eB)); }
public void CollectorContainsEntitiesFromTwoGroupsWhenAddedOrRemoved() { _collectorA = new Collector <MyTestEntity>( new[] { _groupA, _groupB }, new[] { GroupEvent.AddedOrRemoved, GroupEvent.AddedOrRemoved }); var eA = CreateEntityWithAComponent(); var eB = CreateEntityWithBComponent(); Assert.AreEqual(2, _collectorA.CollectedEntities.Count); Assert.IsTrue(_collectorA.CollectedEntities.Contains(eA)); Assert.IsTrue(_collectorA.CollectedEntities.Contains(eB)); _collectorA.ClearCollectedEntities(); eA.RemoveComponentA(); eB.RemoveComponentB(); Assert.AreEqual(2, _collectorA.CollectedEntities.Count); Assert.IsTrue(_collectorA.CollectedEntities.Contains(eA)); Assert.IsTrue(_collectorA.CollectedEntities.Contains(eB)); }
private void LoadBuffer(ICollector <TEntity> collector) { foreach (var entity in collector.collectedEntities) { entity.Retain(this); _buffer.Add(entity); } collector.ClearCollectedEntities(); }
public void CollectorReferenceCountIsClearedWhenDeactivated() { _collectorA = new Collector <MyTestEntity>(_groupA, GroupEvent.Added); var e = CreateEntityWithAComponent(); e.Destroy(); _collectorA.ClearCollectedEntities(); Assert.AreEqual(0, e.RetainCount); }
public void ReplaceReaction_CollectsSecondTime() { ICollector <GameEntity> collector = m_Context.CreateCollector( GameMatcher.Reaction.Added()); GameEntity attractor = m_Context.CreateEntity(); Assert.IsFalse(collector.collectedEntities.Contains(attractor), "Before first time"); TriggerReactionSystem.ReplaceReaction(attractor, true); Assert.IsTrue(collector.collectedEntities.Contains(attractor), "First time"); collector.ClearCollectedEntities(); TriggerReactionSystem.ReplaceReaction(attractor, true); Assert.IsTrue(collector.collectedEntities.Contains(attractor), "Second time"); collector.ClearCollectedEntities(); TriggerReactionSystem.ReplaceReaction(attractor, false); Assert.IsFalse(collector.collectedEntities.Contains(attractor), "Removed but not added."); }
public void Execute() { foreach (var e in player1ScoreCollector.collectedEntities) { if (e.hasPlayer1Score) { //add player1score.value to getcomponent<Text>.text = "Score : "+ player1Score.value var currentScore = e.player1Score.points; bool leftScroreExists = gameContext.isScoreLeft; bool leftScoreHasView = gameContext.scoreLeftEntity.hasView; //This ask if the context is scoreRight && if the scoreRightEntity has viewComponent if (leftScroreExists && leftScoreHasView) { var scoreLeft = gameContext.scoreLeftEntity.view.gameObject; scoreLeft.GetComponent <Text>().text = "Score: " + currentScore; } } } foreach (var e in player2ScoreCollector.collectedEntities) { if (e.hasPlayer2Score) { var currentScore = e.player2Score.points; bool rightScroreExists = gameContext.isScoreRight; bool rightScoreHasView = gameContext.scoreRightEntity.hasView; //This ask if the context is scoreRight && if the scoreRightEntity has viewComponent if (rightScroreExists && rightScoreHasView) { var scoreRight = gameContext.scoreRightEntity.view.gameObject; scoreRight.GetComponent <Text>().text = "Score: " + currentScore; } } } player1ScoreCollector.ClearCollectedEntities(); player2ScoreCollector.ClearCollectedEntities(); }
public void CollectorContainsEntitiesWhenAddedOrRemoved() { _collectorA = new Collector <MyTestEntity>(_groupA, GroupEvent.AddedOrRemoved); var e = CreateEntityWithAComponent(); var entities = _collectorA.CollectedEntities; // Entity should be present. Assert.AreEqual(1, entities.Count); Assert.IsTrue(entities.Contains(e)); _collectorA.ClearCollectedEntities(); e.RemoveComponentA(); // Entity should be present. Assert.AreEqual(1, entities.Count); Assert.IsTrue(entities.Contains(e)); }
public void CollectorContentsCanBeCleared() { _collectorA = new Collector <MyTestEntity>(_groupA, GroupEvent.Added); var entities = _collectorA.CollectedEntities; // Collector should be empty Assert.AreEqual(0, entities.Count); var e = CreateEntityWithAComponent(); // Entity should now be present. Assert.AreEqual(1, entities.Count); Assert.IsTrue(entities.Contains(e)); // Collector should be empty after clearing _collectorA.ClearCollectedEntities(); Assert.AreEqual(0, entities.Count); }
/// <summary> /// Clears all accumulated changes. /// </summary> public void Clear() { _collector.ClearCollectedEntities(); }
public void Clear() { _addedCollector?.ClearCollectedEntities(); _removedCollector?.ClearCollectedEntities(); }