using System; using System.Collections.Generic; public class Multipliers { public Multipliers() { this.CommercialBuildingCostCashMultiplier = 1m; this.CommercialBuildingCostGoldMultiplier = 1m; this.CommunityBuildingCostCashMultiplier = 1m; this.CommunityBuildingCostGoldMultiplier = 1m; this.ResidentialBuildingCostCashMultiplier = 1m; this.ResidentialBuildingCostGoldMultiplier = 1m; this.UpspeedCostCashMultiplier = 1m; this.UpspeedCostGoldMultiplier = 1m; this.CommercialBuildingProfitMultiplier = 1m; } public decimal CommercialBuildingCostCashMultiplier { get; private set; } public decimal CommercialBuildingCostGoldMultiplier { get; private set; } public decimal CommunityBuildingCostCashMultiplier { get; private set; } public decimal CommunityBuildingCostGoldMultiplier { get; private set; } public decimal ResidentialBuildingCostCashMultiplier { get; private set; } public decimal ResidentialBuildingCostGoldMultiplier { get; private set; } public decimal UpspeedCostCashMultiplier { get; private set; } public decimal UpspeedCostGoldMultiplier { get; private set; } public decimal CommercialBuildingProfitMultiplier { get; private set; } public void SetStoredData(Dictionary values) { if (values.ContainsKey("commercialBuildingCostCashMultiplier")) { this.CommercialBuildingCostCashMultiplier = this.ClampMultiplier((decimal)values["commercialBuildingCostCashMultiplier"]); } if (values.ContainsKey("commercialBuildingCostGoldMultiplier")) { this.CommercialBuildingCostGoldMultiplier = this.ClampMultiplier((decimal)values["commercialBuildingCostGoldMultiplier"]); } if (values.ContainsKey("communityBuildingCostCashMultiplier")) { this.CommunityBuildingCostCashMultiplier = this.ClampMultiplier((decimal)values["communityBuildingCostCashMultiplier"]); } if (values.ContainsKey("communityBuildingCostGoldMultiplier")) { this.CommunityBuildingCostGoldMultiplier = this.ClampMultiplier((decimal)values["communityBuildingCostGoldMultiplier"]); } if (values.ContainsKey("residentialBuildingCostCashMultiplier")) { this.ResidentialBuildingCostCashMultiplier = this.ClampMultiplier((decimal)values["residentialBuildingCostCashMultiplier"]); } if (values.ContainsKey("residentialBuildingCostGoldMultiplier")) { this.ResidentialBuildingCostGoldMultiplier = this.ClampMultiplier((decimal)values["residentialBuildingCostGoldMultiplier"]); } if (values.ContainsKey("upspeedCostCashMultiplier")) { this.UpspeedCostCashMultiplier = this.ClampMultiplier((decimal)values["upspeedCostCashMultiplier"]); } if (values.ContainsKey("upspeedCostGoldMultiplier")) { this.UpspeedCostGoldMultiplier = this.ClampMultiplier((decimal)values["upspeedCostGoldMultiplier"]); } if (values.ContainsKey("commercialBuildingProfitMultiplier")) { this.CommercialBuildingProfitMultiplier = this.ClampMultiplier((decimal)values["commercialBuildingProfitMultiplier"]); } } public void HandlePullResponse(Dictionary dict) { decimal value; if (dict.ContainsKey("commercialBuildingCostCashMultiplier") && decimal.TryParse(dict["commercialBuildingCostCashMultiplier"], out value)) { this.CommercialBuildingCostCashMultiplier = this.ClampMultiplier(value); } decimal value2; if (dict.ContainsKey("commercialBuildingCostGoldMultiplier") && decimal.TryParse(dict["commercialBuildingCostGoldMultiplier"], out value2)) { this.CommercialBuildingCostGoldMultiplier = this.ClampMultiplier(value2); } decimal value3; if (dict.ContainsKey("communityBuildingCostCashMultiplier") && decimal.TryParse(dict["communityBuildingCostCashMultiplier"], out value3)) { this.CommunityBuildingCostCashMultiplier = this.ClampMultiplier(value3); } decimal value4; if (dict.ContainsKey("communityBuildingCostGoldMultiplier") && decimal.TryParse(dict["communityBuildingCostGoldMultiplier"], out value4)) { this.CommunityBuildingCostGoldMultiplier = this.ClampMultiplier(value4); } decimal value5; if (dict.ContainsKey("residentialBuildingCostCashMultiplier") && decimal.TryParse(dict["residentialBuildingCostCashMultiplier"], out value5)) { this.ResidentialBuildingCostCashMultiplier = this.ClampMultiplier(value5); } decimal value6; if (dict.ContainsKey("residentialBuildingCostGoldMultiplier") && decimal.TryParse(dict["residentialBuildingCostGoldMultiplier"], out value6)) { this.ResidentialBuildingCostGoldMultiplier = this.ClampMultiplier(value6); } decimal value7; if (dict.ContainsKey("upspeedCostCashMultiplier") && decimal.TryParse(dict["upspeedCostCashMultiplier"], out value7)) { this.UpspeedCostCashMultiplier = this.ClampMultiplier(value7); } decimal value8; if (dict.ContainsKey("upspeedCostGoldMultiplier") && decimal.TryParse(dict["upspeedCostGoldMultiplier"], out value8)) { this.UpspeedCostGoldMultiplier = this.ClampMultiplier(value8); } decimal value9; if (dict.ContainsKey("commercialBuildingProfitMultiplier") && decimal.TryParse(dict["commercialBuildingProfitMultiplier"], out value9)) { this.CommercialBuildingProfitMultiplier = this.ClampMultiplier(value9); } } private decimal ClampMultiplier(decimal value) { if (value <= 0.1m) { return 0.1m; } return value; } public const string CommercialBuildingCostCashName = "commercialBuildingCostCashMultiplier"; public const string CommercialBuildingCostGoldName = "commercialBuildingCostGoldMultiplier"; public const string CommunityBuildingCostCashName = "communityBuildingCostCashMultiplier"; public const string CommunityBuildingCostGoldName = "communityBuildingCostGoldMultiplier"; public const string ResidentialBuildingCostCashName = "residentialBuildingCostCashMultiplier"; public const string ResidentialBuildingCostGoldName = "residentialBuildingCostGoldMultiplier"; public const string UpspeedCostCashName = "upspeedCostCashMultiplier"; public const string UpspeedCostGoldName = "upspeedCostGoldMultiplier"; public const string CommercialBuildingProfitName = "commercialBuildingProfitMultiplier"; private const decimal MinumumModifierValue = 0.1m; }