private void Resource_OnResourceDepleted(BaseResourceContainer baseResourceContainer) { if (OnResourceDepleted != null) { OnResourceDepleted(baseResourceContainer); } }
private void Resource_OnMaxCountReached(BaseResourceContainer baseResourceContainer) { if (OnResourceMaxCountReached != null) { OnResourceMaxCountReached(baseResourceContainer); } }
private void InitResources() { _availableResources = new List <BaseResourceContainer>(); foreach (var resourceData in _initialResources) { if (_availableResources.Any(c => c.ResourceType == resourceData.type)) { continue; } var resContainer = new BaseResourceContainer(resourceData.type, resourceData.value, resourceData.capacity); resContainer.OnMaxCountReached += Resource_OnMaxCountReached; resContainer.OnResourceDepleted += Resource_OnResourceDepleted; _availableResources.Add(resContainer); } }
void Start() { _resourceContainer = Base.Instance.AvaliableResources.AvailableResources.Find(r => r.ResourceType == _resourceType); _resourceContainer.OnValueUpdated += TargetContainer_OnValueUpdated; DrawResourceCount(_resourceContainer.Count); }