From 245732893517e89807a8f350636111b28847fc3c Mon Sep 17 00:00:00 2001 From: Nashet Date: Thu, 20 Jul 2017 14:30:40 +0300 Subject: [PATCH] closes #232 --- Assets/ES-base.unity | Bin 428088 -> 428048 bytes Assets/code/Logic/Game.cs | 5 +- Assets/code/Logic/Options.cs | 6 ++- Assets/code/Logic/PopUnit.cs | 12 +++-- Assets/code/Logic/Reform.cs | 4 +- Assets/code/Panels/PopUnitPanel.cs | 78 +++++++++++++---------------- Assets/code/Panels/TopPanel.cs | 7 ++- 7 files changed, 54 insertions(+), 58 deletions(-) diff --git a/Assets/ES-base.unity b/Assets/ES-base.unity index 738143ae3c839157d8779c2e402f1cac3ca597e4..303b62ee334473a07fdf4f7fe8df7d5547ccf337 100644 GIT binary patch delta 18169 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 promotion - when popUnit has chance to get better place in hierarchy public static readonly Procent PopPromotionSpeed = new Procent(0.01f); - public static readonly Procent PopAssimilationSpeed = new Procent(0.001f); + public static readonly Procent PopAssimilationSpeed = new Procent(0.002f); + public static readonly Procent PopAssimilationSpeedWithEquality = new Procent(0.001f); + public static readonly Procent PopMigrationSpeed = new Procent(0.01f); public static readonly Procent PopImmigrationSpeed = new Procent(0.01f); @@ -67,7 +69,7 @@ public static class Options public static readonly int PopSizeConsolidationLimit = 100; /// Time before which pop wouldn't be wipe out by Pop change methods like promote\ assimilate\migrate - public static readonly int PopAgeLimitToWipeOut = 250; + public static readonly int PopAgeLimitToWipeOut = 50; //250; internal static readonly float MaxMoralChangePerTic = 0.05f; internal static readonly int PopRichStrataVotePower = 5; diff --git a/Assets/code/Logic/PopUnit.cs b/Assets/code/Logic/PopUnit.cs index 2f604433..614b5ae3 100644 --- a/Assets/code/Logic/PopUnit.cs +++ b/Assets/code/Logic/PopUnit.cs @@ -1168,13 +1168,17 @@ private void assimilate(Culture toWhom, int assimilationSize) public int getAssimilationSize() { - if (province.isCoreFor(this) || getCountry().minorityPolicy.getValue() == MinorityPolicy.Equality) + if (province.isCoreFor(this)) return 0; else { - int result = (int)(this.getPopulation() * Options.PopAssimilationSpeed.get()); - if (result > 0) - return result; + int assimilationSpeed; + if (getCountry().minorityPolicy.getValue() == MinorityPolicy.Equality) + assimilationSpeed = (int)(this.getPopulation() * Options.PopAssimilationSpeedWithEquality.get() ); + else + assimilationSpeed = (int)(this.getPopulation() * Options.PopAssimilationSpeed.get()); + if (assimilationSpeed > 0) + return assimilationSpeed; else { if (getAge() > Options.PopAgeLimitToWipeOut) diff --git a/Assets/code/Logic/Reform.cs b/Assets/code/Logic/Reform.cs index 23a1c6cd..444da2cc 100644 --- a/Assets/code/Logic/Reform.cs +++ b/Assets/code/Logic/Reform.cs @@ -1113,10 +1113,10 @@ protected override Procent howIsItGoodForPop(PopUnit pop) public MinorityPolicy(Country country) : base("Minority Policy", "- Minority Policy", country) { if (Equality == null) - Equality = new ReformValue("Equality for minorities", "- All cultures have same rights, assimilation is off", 2, + Equality = new ReformValue("Equality for minorities", "- All cultures have same rights, assimilation is slower", 2, new ConditionsList(new List() { Invention.IndividualRightsInvented })); if (Residency == null) - Residency = new ReformValue("Restricted rights for minorities", "- Only state culture can vote, assimilation is on except alien cores", 1, new ConditionsList()); + Residency = new ReformValue("Restricted rights for minorities", "- Only state culture can vote, assimilation is on except foreign core provinces", 1, new ConditionsList()); status = Residency; //IsResidencyPop = new Condition(x => (x as PopUnit).province.getOwner().minorityPolicy.status == MinorityPolicy.Residency, diff --git a/Assets/code/Panels/PopUnitPanel.cs b/Assets/code/Panels/PopUnitPanel.cs index f0f06a43..b51fe2ff 100644 --- a/Assets/code/Panels/PopUnitPanel.cs +++ b/Assets/code/Panels/PopUnitPanel.cs @@ -29,43 +29,6 @@ public void refresh() if (pop != null) { var sb = new StringBuilder(); - efficiencyText.text = "Efficiency: " + PopUnit.modEfficiency.getModifier(pop, out efficiencyText.GetComponentInChildren().tooltip); - - issues.GetComponentInChildren().setDynamicString(() => pop.getIssues().getString(" willing ", "\n")); - - string demotionText; - var target = pop.getRichestDemotionTarget(); - if (pop.wantsToDemote() && target != null && pop.getDemotionSize() > 0) - demotionText = target + " " + pop.getDemotionSize(); - else - demotionText = "none"; - - string promotionText; - var targetPro = pop.getRichestPromotionTarget(); - if (pop.wantsToPromote() && targetPro != null && pop.getPromotionSize() > 0) - promotionText = targetPro + " " + pop.getPromotionSize(); - else - promotionText = "none"; - - string migrationText; - var targetM = pop.getRichestMigrationTarget(); - if (pop.wantsToMigrate() && targetM != null && pop.getMigrationSize() > 0) - migrationText = targetM + " " + pop.getMigrationSize(); - else - migrationText = "none"; - - string immigrationText; - var targetIM = pop.getRichestImmigrationTarget(); - if (pop.wantsToImmigrate() && targetIM != null && pop.getImmigrationSize() > 0) - immigrationText = targetIM + " (" + targetIM.getCountry() + ") " + pop.getImmigrationSize(); - else - immigrationText = "none"; - - string assimilationText; - if (pop.culture != pop.province.getCountry().getCulture() && pop.getAssimilationSize() > 0) - assimilationText = pop.province.getCountry().getCulture() + " " + pop.getAssimilationSize(); - else - assimilationText = "none"; sb.Append(pop); sb.Append("\nPopulation: ").Append(pop.getPopulation()); @@ -75,11 +38,18 @@ public void refresh() sb.Append("\nGain goods: ").Append(pop.gainGoodsThisTurn.ToString()); sb.Append("\nSent to market: ").Append(pop.sentToMarket); // hide it - sb.Append("\nDemotion: ").Append(demotionText); - sb.Append("\nPromotion: ").Append(promotionText); - sb.Append("\nMigration: ").Append(migrationText); - sb.Append("\nImmigration: ").Append(immigrationText); - sb.Append("\nAssimilation: ").Append(assimilationText); + makeLine(sb, pop.getRichestDemotionTarget(), pop.getDemotionSize(), "Demotion: ", pop.wantsToDemote()); + makeLine(sb, pop.getRichestPromotionTarget(), pop.getPromotionSize(), "Promotion: ", pop.wantsToPromote()); + + makeLine(sb, pop.getRichestMigrationTarget(), pop.getMigrationSize(), "Migration: ", pop.wantsToMigrate()); + makeLine(sb, pop.getRichestImmigrationTarget(), pop.getImmigrationSize(), "Immigration: ", pop.wantsToImmigrate()); + + sb.Append("\nAssimilation: "); + if (pop.culture != pop.province.getCountry().getCulture() && pop.getAssimilationSize() > 0) + sb.Append(pop.province.getCountry().getCulture()).Append(" ").Append(pop.getAssimilationSize()); + else + sb.Append("none"); + sb.Append("\nGrowth: ").Append(pop.getGrowthSize()); sb.Append("\nUnemployment: ").Append(pop.getUnemployedProcent()); sb.Append("\nLoyalty: ").Append(pop.loyalty); @@ -89,8 +59,6 @@ public void refresh() if (pop.deposits.get() > 0f) sb.Append("\nDeposit: ").Append(pop.deposits.ToString());// hide it - - sb.Append("\nAge: ").Append(pop.getAge()); sb.Append("\nMobilized: ").Append(pop.getMobilized()); if (pop.getMovement() != null) @@ -124,8 +92,30 @@ public void refresh() money.GetComponentInChildren().setDynamicString(() => "Money income: " + pop.moneyIncomethisTurn + "\nIncome tax: " + pop.incomeTaxPayed + "\nConsumed cost: " + Game.market.getCost(pop.consumedTotal)); + + efficiencyText.text = "Efficiency: " + PopUnit.modEfficiency.getModifier(pop, out efficiencyText.GetComponentInChildren().tooltip); + issues.GetComponentInChildren().setDynamicString(() => pop.getIssues().getString(" willing ", "\n")); } } + private void makeLine(StringBuilder sb, PopType target, int size, string header, bool boolCheck) + { + //sb.Clear(); + sb.Append("\n").Append(header); + + if (boolCheck && target != null && size > 0) + sb.Append(target).Append(" ").Append(size); + else + sb.Append("none"); + } + private void makeLine(StringBuilder sb, Province target, int size, string header, bool boolCheck) + { + //sb.Clear(); + sb.Append("\n").Append(header); + if (boolCheck && target != null && size > 0) + sb.Append(target).Append(" ").Append(size); + else + sb.Append("none"); + } public void show(PopUnit ipopUnit) { gameObject.SetActive(true); diff --git a/Assets/code/Panels/TopPanel.cs b/Assets/code/Panels/TopPanel.cs index bc761e3f..e2766d24 100644 --- a/Assets/code/Panels/TopPanel.cs +++ b/Assets/code/Panels/TopPanel.cs @@ -13,8 +13,7 @@ void Start() btnStep.onClick.AddListener(() => onbtnStepClick(btnPlay)); btnPlay.image.color = Color.grey; MainCamera.topPanel = this; - hide(); - + hide(); } public void hide() { @@ -28,9 +27,9 @@ public void show() } public void refresh() { - generalText.text = "Economic Simulation v0.12.2 Date: " + Game.date.ToShortDateString() + " Country: " + Game.Player.getName() + generalText.text = "Economic Simulation v0.13.0 Date: " + Game.date.ToShortDateString() + " Country: " + Game.Player.getName() + "\nMoney: " + Game.Player.cash - + " Science points: " + Game.Player.sciencePoints + + " Science points: " + Game.Player.sciencePoints.get().ToString("N0") + " Men: " + Game.Player.getMenPopulation() + " avg. loyalty: " + Game.Player.getAverageLoyalty(); }