[SerializeField] private Fireball firaballPrefab; // To SO private void Awake() { rb = GetComponent <Rigidbody2D>(); // Получаем реализацию передвижения персонажа movement = GetComponent <IMovement>(); // Назначаем инпут input = isPlayer ? new PlayerInput() : new AIInput() as IInput; health = new HealthSystem(100); if (GetComponent <IHealthGUI>() != null) { healthGUI = GetComponent <IHealthGUI>(); healthGUI.Setup(health); } if (isPlayer) { ability = GetComponent <FireballAbility>(); ability.Init(firaballPrefab); } }