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); }
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; }