public override void Construct(CharacterModel model, bool isLoad = false)
        {
            heroControllers = FindObjectsOfType <HeroController>().ToList();
            var heroModels = heroControllers.Select(controller => controller.HeroModel).ToList();

            enemyModel = model as EnemyModel;

            if (enemyModel == null)
            {
                Debug.Log("Enemy Model could not resolve in EnemyController");
                return;
            }

            if (!isLoad)
            {
                enemyModel.Construct(heroModels);
                enemyModel.CurrentHealth = enemyModel.Health;
            }

            characterGraphicsController.Construct(enemyModel.Sprite);

            healthBarController.Construct(enemyModel.name);
            PublisherSubscriber.Publish(new ProgressBarData
            {
                Id            = enemyModel.name,
                BarType       = ProgressBarType.HealthProgression,
                TotalAmount   = enemyModel.Health,
                CurrentAmount = enemyModel.CurrentHealth
            });
        }