private void updateResearchInformations(IResearchType researchType) { setPath(researchType.GetImageRectangle(), researchType, researchType.GetLevel() + 1); setBonus(researchType.GetCurrentBonusLabel(), researchType, researchType.GetLevel()); setNextBonus(researchType.GetNextBonusLabel(), researchType, researchType.GetLevel()); setResearchCost(researchType); if (researchType.GetLevel() == researchType.GetMaxLevel()) { researchType.GetResearchButton().Visibility = Visibility.Hidden; researchType.GetCostCanvas().Visibility = Visibility.Hidden; } }
public void UpdateResearch(IResearchType researchType) { // If you have enough ressources if (!BuyResearch.Instance.Buy(researchType)) { ErrorManager.Instance.AddError(new Error.Error() { Description = Error.Error.Type.NOT_ENOUGH_RESSOURCES_RESEARCH }); return; } // Buy sucessfull researchType.SetLevel(researchType.GetLevel() + 1); var mainWindow = MainWindow.MIns; if (mainWindow == null) { return; } updateResearchInformations(researchType); // update ressource production with new research RessourcesManager.Instance.CalculateRessources(); }
private void setResearchCost(IResearchType researchType) { var level = researchType.GetLevel(); if (level >= 0 && level < researchType.GetMaxLevel()) { var researchCost = researchType.GetResearchCost(level + 1); researchType.GetResearchCostLabel().Content = researchCost.Research; researchType.GetGoldCostLabel().Content = researchCost.Gold; researchType.GetRessourceCostLabel().Content = researchCost.GetFirstCost(); } }
public bool Buy(IResearchType research) { if (research == null) return false; int researchLevel = research.GetLevel(); if (researchLevel < 0 || researchLevel >= research.GetMaxLevel()) return false; ResearchCost cost = research.GetResearchCost(researchLevel + 1); if (cost == null) return false; return CheckRessourcesAvailability(cost); }
public void UpdateResearch(IResearchType researchType) { // If you have enough ressources if (!BuyResearch.Instance.Buy(researchType)) { ErrorManager.Instance.AddError(new Error.Error() { Description = Error.Error.Type.NOT_ENOUGH_RESSOURCES_RESEARCH }); return; } // Buy sucessfull researchType.SetLevel(researchType.GetLevel() + 1); var mainWindow = MainWindow.MIns; if (mainWindow == null) return; updateResearchInformations(researchType); // update ressource production with new research RessourcesManager.Instance.CalculateRessources(); }
public bool Buy(IResearchType research) { if (research == null) { return(false); } int researchLevel = research.GetLevel(); if (researchLevel < 0 || researchLevel >= research.GetMaxLevel()) { return(false); } ResearchCost cost = research.GetResearchCost(researchLevel + 1); if (cost == null) { return(false); } return(CheckRessourcesAvailability(cost)); }