Ejemplo n.º 1
0
    private void Clear()
    {
        foreach (var item in _enemies)
        {
            if (item != null)
            {
                Destroy(item.gameObject);
            }
        }

        _enemies.Clear();

        foreach (var item in _units)
        {
            if (item != null)
            {
                Destroy(item.gameObject);
            }
        }

        _units.Clear();

        foreach (var item in _buildings)
        {
            if (item != null)
            {
                Destroy(item.gameObject);
            }
        }

        _buildings.Clear();

        foreach (var item in _resources)
        {
            if (item != null)
            {
                Destroy(item.gameObject);
            }
        }

        _resources.Clear();

        foreach (var item in _enemyBuildings)
        {
            if (item != null)
            {
                Destroy(item.gameObject);
            }
        }

        _enemyBuildings.Clear();

        WorldBuilder.Clear();
    }
Ejemplo n.º 2
0
        public void NotificationsTests()
        {
            // @formatter:off
            var world = new WorldBuilder()
                        .AddCoreFeature()
                        .AddFeature("TestNotifications")
                        .DependsOn()
                        .Feature(CoreFeature.Name)
                        .End()
                        .Components <Game>()
                        .Add <EmptyTestComponent>()
                        .End()
                        .ComponentNotifications <Game>()
                        .AddAllNotifications <EmptyTestComponent>()
                        .End()
                        .End()
                        .Build();
            // @formatter:on

            var log = new List <string>();

            world.Setup();

            var context = world.Contexts.Get <Game>();
            var entity  = context.CreateEntity();

            entity.AddComponentListener(new EmptyTestComponentNotificationsListener(log));
            entity.Add(new EmptyTestComponent());
            entity.Replace(new EmptyTestComponent());
            entity.Remove <EmptyTestComponent>();

            world.Update();
            world.Cleanup();
            world.Clear();

            CollectionAssert.AreEqual(new[] { "Added", "Removed", "Replaced" }, log);
        }