void LeftMouseClick() { if (actionBase.inProgress) { if (actionBase.localInvestCounter == actionBase.nBenefit) { actionBase.ConcludeAction(); ActionEvents.Instance.investComplete.Raise(); } else if (actionBase.localInvestCounter < actionBase.nBenefit) { ActionEvents.Instance.useAllBenefits.Raise(); } return; } if (!actionBase.Validate()) { return; } actionBase.SaveStateToUndo(); if (actionBase.nBenefit < actionBase.gameData.investCounter) { actionCounter.ResetBenefits(); actionBase.gameData.investCounter = 0; actionBase.gameData.investments = new bool[4]; actionBase.resources.GetComponent <ResourceManager>().UpdateHighlight(); } ActionEvents.Instance.investStarted.Raise(); actionBase.Activate(); }
void LeftMouseClick() { if (actionBase.inProgress) { if (actionBase.gameData.productCounter == actionBase.nBenefit) { actionBase.ConcludeAction(); actionBase.gameData.AddProductResources(); ActionEvents.Instance.productionComplete.Raise(); } else if (actionBase.gameData.productCounter < actionBase.nBenefit) { ActionEvents.Instance.useAllBenefits.Raise(); } return; } if (!actionBase.Validate()) { return; } if (actionBase.needInvestment) { if (actionBase.CheckInvestmentsNeeded()) { ActionEvents.Instance.needToInvest.Raise(); return; } int investmentsFinded = 0; for (int i = 0; i < investmentNeeded.Length; i++) { if (investmentNeeded[i] == true && investmentNeeded[i] == actionBase.gameData.investments[i]) { investmentsFinded++; } } if (investmentsFinded == 0) { ActionEvents.Instance.needCorrectInvest.Raise(); return; } } actionBase.SaveStateToUndo(); ActionEvents.Instance.productionStarted.Raise(); actionBase.Activate(); }