示例#1
0
 void Start()
 {
     if (Dir == 0)
     {
         Dir = 1;
     }
     parent = GetComponentInParent <BaseProduction>();
 }
示例#2
0
        public override PdxSublist GetHistoryFile()
        {
            var data = new PdxSublist(null, FileName);

            foreach (var core in Cores)
            {
                if (core != null)
                {
                    data.KeyValuePairs.Add("add_core", core.CountryTag);
                }
            }
            if (Owner != null)
            {
                data.KeyValuePairs["owner"] = Owner.CountryTag;
            }
            if (ControllerTag != null)
            {
                data.AddValue("controller", ControllerTag);
            }
            if (Culture != null)
            {
                data.KeyValuePairs["culture"] = Culture;
            }
            if (Religion != null)
            {
                data.KeyValuePairs["religion"] = Religion;
            }
            data.BoolValues["hre"] = new List <bool>();
            data.BoolValues["hre"].Add(IsHRE);

            data.AddValue("base_tax", BaseTax.ToString());
            data.AddValue("base_production", BaseProduction.ToString());
            data.AddValue("base_manpower", BaseManpower.ToString());
            //todo: trade goods

            data.AddValue("is_city", (Owner != null) ? "yes" : "no");

            if (LatentTradeGoods.Count != 0)
            {
                var latentGoods = new PdxSublist();
                LatentTradeGoods.ForEach((good) =>
                {
                    latentGoods.AddValue(good);
                });

                data.AddSublist("latent_trade_goods", latentGoods);
            }

            if (TradeGood != null)
            {
                data.AddValue("trade_goods", TradeGood);
            }

            if (CentreOfTradeWeight >= 1)
            {
                data.AddValue("center_of_trade", ((int)Math.Min(3, CentreOfTradeWeight)).ToString());
            }

            foreach (var mod in Modifiers)
            {
                var modSub = new PdxSublist();
                modSub.AddValue("name", mod);
                modSub.AddValue("duration", "-1");

                data.AddSublist("add_permanent_province_modifier", modSub);
            }

            //TODO: something more sophisticated
            data.AddValue("discovered_by", "western");
            data.AddValue("discovered_by", "muslim");
            data.AddValue("discovered_by", "ottoman");
            data.AddValue("discovered_by", "eastern");
            data.AddValue("discovered_by", "indian");
            data.AddValue("discovered_by", "sub_saharan");

            if (Revolt != null && RevoltArmy != -1)
            {
                var revolt = new PdxSublist();
                revolt.AddValue("type", Revolt);
                revolt.AddValue("size", RevoltArmy.ToString());
                if (RevoltLeader != null)
                {
                    revolt.AddValue("leader", RevoltLeader);
                }

                data.AddSublist("revolt", revolt);
            }
            return(data);
        }