private void DespawnUsingGetEntitiesFor()
        {
            var entities = _entityCollectionManager.GetEntitiesFor(_group).ToArray();

            for (var i = 0; i < entities.Length; i++)
            {
                _entityCollectionManager.RemoveEntity(entities[i]);
            }
        }
Esempio n. 2
0
        public override void EventTriggered(FoodPickupEvent eventData)
        {
            var playerComponent = eventData.Player.GetComponent <PlayerComponent>();
            var foodComponent   = eventData.Food.GetComponent <FoodComponent>();

            playerComponent.Food.Value += foodComponent.FoodAmount;

            this.AfterUpdateDo(x => { _entityCollectionManager.RemoveEntity(eventData.Food); });
        }
Esempio n. 3
0
        public override void EventTriggered(EnemyHitEvent eventData)
        {
            var enemyComponent = eventData.Enemy.GetComponent <EnemyComponent>();

            enemyComponent.Health.Value--;

            var animator = eventData.Player.GetUnityComponent <Animator>();

            animator.SetTrigger("playerChop");

            if (enemyComponent.Health.Value <= 0)
            {
                _entityCollectionManager.RemoveEntity(eventData.Enemy);
            }
        }
Esempio n. 4
0
        public override void EventTriggered(WallHitEvent eventData)
        {
            var wallComponent = eventData.Wall.GetComponent <WallComponent>();

            wallComponent.Health.Value--;

            var animator = eventData.Player.GetUnityComponent <Animator>();

            animator.SetTrigger("playerChop");

            if (wallComponent.Health.Value <= 0)
            {
                _entityCollectionManager.RemoveEntity(eventData.Wall);
            }
        }
Esempio n. 5
0
        /// <inheritdoc />
        public override void EventTriggered(PickupEvent eventData)
        {
            if (eventData.PickupableEntity.HasComponent <FoodComponent>())
            {
                var foodComponent = eventData.PickupableEntity.GetComponent <FoodComponent>();
                eventData.CollectorEntity.GetComponent <HitPointComponent>().HitPoint.Value += foodComponent.Amount;

                //TODO: Pool
                this.AfterUpdateDo(x =>
                {
                    GameObject gameObject = eventData.PickupableEntity.GetGameObject();
                    _entityCollectionManager.RemoveEntity(eventData.PickupableEntity);
                    Object.Destroy(gameObject);
                });
            }
        }