public AutomationBuilder(PlayerData playerData, AutomationsData automationsData, AutomationPresentation automationPrefab)
 {
     _playerData      = playerData;
     _automationsData = automationsData;
     _automationPresentationPrefab = automationPrefab;
     Reset();
 }
 public void InstantiateAutomation(Transform parent, Automation automationData)
 {
     _product = Object.Instantiate(_automationPresentationPrefab.gameObject, parent)
                .GetComponent <AutomationPresentation>();
     _automation = automationData;
     _product.Init(automationData);
     _automationLogic = new AutomationLogic(_playerData, _automationsData, _product, _automation);
 }
Beispiel #3
0
        public AutomationLogic(PlayerData playerData, AutomationsData automationsData,
                               AutomationPresentation automationPresentation, Automation automationData)
        {
            _playerData             = playerData;
            _automationsData        = automationsData;
            _automationPresentation = automationPresentation;
            _automationData         = automationData;

            _automationPresentation.UpgradeButtonPressed += TryUpgradeAutomation;
            _playerData.Attach(this);
            _automationData.Attach(this);
            OnGoldAmountUpdated(_playerData.Gold);
            _automationPresentation.gameObject.SetActive(_automationData.IsUnlocked);
        }
 private void Reset()
 {
     _product = _automationPresentationPrefab;
 }