Exemplo n.º 1
0
 static void PostfixGetFactory(Pathea.FarmFactoryNs.FarmFactory __result, int id)
 {
     if (__result != null)
     {
         FactoryMatHelper.InitItemContainer(id);
     }
 }
Exemplo n.º 2
0
 public Pathea.FarmFactoryNs.FarmFactory getFactory()
 {
     if (factory == null)
     {
         factory = Pathea.FarmFactoryNs.FarmFactoryMgr.Self.GetFactory(factoryId);
     }
     return(factory);
 }
Exemplo n.º 3
0
        static bool PrefixGetMatCount(ref int __result, int ietmId, Pathea.FarmFactoryNs.FarmFactory __instance)
        {
            if (!Main.modSettings.FactoryConnectCraftingResources)
            {
                return(true);
            }
            int count = Pathea.ItemSystem.ItemPackage.GetItemCount(ietmId, true);

            __result = count;

            return(false);
        }
Exemplo n.º 4
0
        static bool PrefixRemoveAllMat(List <IdCount> list, int num, Pathea.FarmFactoryNs.FarmFactory __instance)
        {
            if (!Main.modSettings.FactoryConnectCraftingResources)
            {
                return(true);
            }

            foreach (global::IdCount idCount in list)
            {
                Main.dmp("Pathea.FarmFactoryNs.FarmFactory::RemoveAllMat", idCount.ToString());
                Pathea.ItemSystem.ItemPackage.RemoveItem(idCount.id, idCount.count, true, true);
            }

            return(false);
        }
Exemplo n.º 5
0
 static void PostfixGetDashBoardSpeed(ref float __result, ref Pathea.FarmFactoryNs.FarmFactory __instance)
 {
     // should already be applied at compount item level.
     // automatic crafting time  cna be improved with research levels.
     //__result *= Main.modSettings.TimeCraftingMultiplier;
 }
Exemplo n.º 6
0
        static void PrefixGetTransportData(ref List <Pathea.FarmFactoryNs.Factory_TransmissionLevel> ___transportDataList, ref Pathea.FarmFactoryNs.FarmFactory __instance)
        {
            if (null == ___transportDataList)
            {
                List <Pathea.FarmFactoryNs.Factory_TransmissionLevel> tmp = new List <Pathea.FarmFactoryNs.Factory_TransmissionLevel>();

                int maxLevel = Math.Max(Main.modSettings.FactoryPerformanceLevelCap, __instance.TransportLV);

                for (int i = 0; i < maxLevel; i++)
                {
                    Pathea.FarmFactoryNs.Factory_TransmissionLevel t = new Pathea.FarmFactoryNs.Factory_TransmissionLevel();

                    Traverse.Create(t).Property("Level").SetValue(i);
                    Traverse.Create(t).Property("Speed").SetValue(1.0F + (i * Main.modSettings.FactoryPerformanceLevelGain));
                    // always cost 1 research note
                    Traverse.Create(t).Property("CostStr").SetValue("2060003,1");
                    tmp.Add(t);
                }

                foreach (Pathea.FarmFactoryNs.Factory_TransmissionLevel t in tmp)
                {
                    t.Init();
                    // Main.mod.Logger.Log(string.Format("Level {0} {1}", t.Level, t.Cost.ToString()));
                }

                ___transportDataList = tmp;
            }
        }
Exemplo n.º 7
0
        static void PrefixGetPerformanceData(ref List <Pathea.FarmFactoryNs.Factory_PerformanceLevelData> ___performanceDataList, ref Pathea.FarmFactoryNs.FarmFactory __instance)
        {
            if (null == ___performanceDataList)
            {
                List <Pathea.FarmFactoryNs.Factory_PerformanceLevelData> tmp = new List <Pathea.FarmFactoryNs.Factory_PerformanceLevelData>();


                int maxLevel = Math.Max(Main.modSettings.FactoryPerformanceLevelCap, __instance.PerformanceLevel);

                for (int i = 0; i < maxLevel; i++)
                {
                    Pathea.FarmFactoryNs.Factory_PerformanceLevelData p = new Pathea.FarmFactoryNs.Factory_PerformanceLevelData();

                    Traverse.Create(p).Property("Level").SetValue(i);
                    Traverse.Create(p).Property("Speed").SetValue(1.0F + (i * Main.modSettings.FactoryPerformanceLevelGain));
                    // always cost 1 research note
                    Traverse.Create(p).Property("CostStr").SetValue("2060003,1");
                    //string[] arr = new string[] { "",""};
                    //Traverse.Create(p).Property("PlugListStr").SetValue(arr);
                    //Traverse.Create(p).Field("Cost").SetValue(IdCount.GetIdCountList("2060003,1", ';', ','));
                    tmp.Add(p);
                }

                foreach (Pathea.FarmFactoryNs.Factory_PerformanceLevelData p in tmp)
                {
                    p.Init();
                    //Main.mod.Logger.Log(string.Format("Level {0} {1}", p.Level, p.Cost.ToString()));
                }

                ___performanceDataList = tmp;
            }
        }