游戏达人
  
- 贡献度
- 270
- 金元
- 17914
- 积分
- 2871
- 精华
- 0
- 注册时间
- 2014-11-30
|
本帖最后由 fanvalen 于 2023-10-25 21:17 编辑
修改合集
https://bbs.3dmgame.com/thread-6226681-1-1.html
GlassForgeConfig.ConfigureBuildingTemplate
改成
public override void ConfigureBuildingTemplate(GameObject go, Tag prefab_tag)
{
go.AddOrGet<DropAllWorkable>();
go.AddOrGet<BuildingComplete>().isManuallyOperated = false;
GlassForge glassForge = go.AddOrGet<GlassForge>();
glassForge.sideScreenStyle = ComplexFabricatorSideScreen.StyleSetting.ListQueueHybrid;
go.AddOrGet<FabricatorIngredientStatusManager>();
go.AddOrGet<CopyBuildingSettings>();
Workable workable = go.AddOrGet<ComplexFabricatorWorkable>();
glassForge.duplicantOperated = false;
BuildingTemplates.CreateComplexFabricatorStorage(go, glassForge);
glassForge.outStorage.capacityKg = 200000f;
glassForge.storeProduced = true;
glassForge.inStorage.SetDefaultStoredItemModifiers(GlassForgeConfig.RefineryStoredItemModifiers);
glassForge.buildStorage.SetDefaultStoredItemModifiers(GlassForgeConfig.RefineryStoredItemModifiers);
glassForge.outStorage.SetDefaultStoredItemModifiers(GlassForgeConfig.OutputItemModifiers);
glassForge.outputOffset = new Vector3(1f, 0.5f);
workable.overrideAnims = new KAnimFile[]
{
Assets.GetAnim("anim_interacts_metalrefinery_kanim")
};
ConduitDispenser conduitDispenser = go.AddOrGet<ConduitDispenser>();
conduitDispenser.storage = glassForge.outStorage;
conduitDispenser.conduitType = ConduitType.Liquid;
conduitDispenser.elementFilter = null;
conduitDispenser.alwaysDispense = true;
SimHashes hash = SimHashes.Wolframite;
SimHashes hash2 = SimHashes.MoltenTungsten;
SimHashes hash3 = SimHashes.Cobaltite;
SimHashes hash4 = SimHashes.MoltenCobalt;
SimHashes hash5 = SimHashes.IronOre;
SimHashes hash6 = SimHashes.MoltenIron;
SimHashes hash7 = SimHashes.AluminumOre;
SimHashes hash8 = SimHashes.MoltenAluminum;
SimHashes hash9 = SimHashes.Cuprite;
SimHashes hash10 = SimHashes.MoltenCopper;
SimHashes hash11 = SimHashes.Iron;
SimHashes hash12 = SimHashes.MoltenSteel;
SimHashes hash13 = SimHashes.GoldAmalgam;
SimHashes hash14 = SimHashes.MoltenGold;
SimHashes hash15 = SimHashes.UraniumOre;
SimHashes hash16 = SimHashes.MoltenUranium;
SimHashes hash17 = SimHashes.IgneousRock;
SimHashes hash18 = SimHashes.Magma;
SimHashes hash19 = SimHashes.Sand;
SimHashes hash20 = SimHashes.MoltenGlass;
ComplexRecipe.RecipeElement[] array = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash).tag, 1000f)
};
ComplexRecipe.RecipeElement[] array2 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash2).tag, 1000f, ComplexRecipe.RecipeElement.TemperatureOperation.Melted, false)
};
string obsolete_id = ComplexRecipeManager.MakeObsoleteRecipeID("GlassForge", array[0].material);
string text = ComplexRecipeManager.MakeRecipeID("GlassForge", array, array2);
ComplexRecipe complexRecipe = new ComplexRecipe(text, array, array2);
complexRecipe.time = 4f;
complexRecipe.nameDisplay = ComplexRecipe.RecipeNameDisplay.Result;
complexRecipe.description = string.Format(STRINGS.BUILDINGS.PREFABS.GLASSFORGE.RECIPE_DESCRIPTION, ElementLoader.GetElement(array2[0].material).name, ElementLoader.GetElement(array[0].material).name);
complexRecipe.fabricators = new List<Tag>
{
TagManager.Create("GlassForge")
};
ComplexRecipeManager.Get().AddObsoleteIDMapping(obsolete_id, text);
if (DlcManager.IsExpansion1Active())
{
ComplexRecipe.RecipeElement[] array3 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash3).tag, 1000f)
};
ComplexRecipe.RecipeElement[] array4 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash4).tag, 1000f, ComplexRecipe.RecipeElement.TemperatureOperation.Melted, false)
};
string obsolete_id2 = ComplexRecipeManager.MakeObsoleteRecipeID("GlassForge", array3[0].material);
string text2 = ComplexRecipeManager.MakeRecipeID("GlassForge", array3, array4);
ComplexRecipe complexRecipe2 = new ComplexRecipe(text2, array3, array4);
complexRecipe2.time = 4f;
complexRecipe2.nameDisplay = ComplexRecipe.RecipeNameDisplay.Result;
complexRecipe2.description = string.Format(STRINGS.BUILDINGS.PREFABS.GLASSFORGE.RECIPE_DESCRIPTION, ElementLoader.GetElement(array4[0].material).name, ElementLoader.GetElement(array3[0].material).name);
complexRecipe2.fabricators = new List<Tag>
{
TagManager.Create("GlassForge")
};
ComplexRecipeManager.Get().AddObsoleteIDMapping(obsolete_id2, text2);
}
ComplexRecipe.RecipeElement[] array5 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash5).tag, 1000f)
};
ComplexRecipe.RecipeElement[] array6 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash6).tag, 1000f, ComplexRecipe.RecipeElement.TemperatureOperation.Melted, false)
};
string obsolete_id3 = ComplexRecipeManager.MakeObsoleteRecipeID("GlassForge", array5[0].material);
string text3 = ComplexRecipeManager.MakeRecipeID("GlassForge", array5, array6);
ComplexRecipe complexRecipe3 = new ComplexRecipe(text3, array5, array6);
complexRecipe3.time = 4f;
complexRecipe3.nameDisplay = ComplexRecipe.RecipeNameDisplay.Result;
complexRecipe3.description = string.Format(STRINGS.BUILDINGS.PREFABS.GLASSFORGE.RECIPE_DESCRIPTION, ElementLoader.GetElement(array6[0].material).name, ElementLoader.GetElement(array5[0].material).name);
complexRecipe3.fabricators = new List<Tag>
{
TagManager.Create("GlassForge")
};
ComplexRecipeManager.Get().AddObsoleteIDMapping(obsolete_id3, text3);
ComplexRecipe.RecipeElement[] array7 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash7).tag, 1000f)
};
ComplexRecipe.RecipeElement[] array8 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash8).tag, 1000f, ComplexRecipe.RecipeElement.TemperatureOperation.Melted, false)
};
string obsolete_id4 = ComplexRecipeManager.MakeObsoleteRecipeID("GlassForge", array7[0].material);
string text4 = ComplexRecipeManager.MakeRecipeID("GlassForge", array7, array8);
ComplexRecipe complexRecipe4 = new ComplexRecipe(text4, array7, array8);
complexRecipe4.time = 4f;
complexRecipe4.nameDisplay = ComplexRecipe.RecipeNameDisplay.Result;
complexRecipe4.description = string.Format(STRINGS.BUILDINGS.PREFABS.GLASSFORGE.RECIPE_DESCRIPTION, ElementLoader.GetElement(array8[0].material).name, ElementLoader.GetElement(array7[0].material).name);
complexRecipe4.fabricators = new List<Tag>
{
TagManager.Create("GlassForge")
};
ComplexRecipeManager.Get().AddObsoleteIDMapping(obsolete_id4, text4);
ComplexRecipe.RecipeElement[] array9 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash9).tag, 1000f)
};
ComplexRecipe.RecipeElement[] array10 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash10).tag, 1000f, ComplexRecipe.RecipeElement.TemperatureOperation.Melted, false)
};
string obsolete_id5 = ComplexRecipeManager.MakeObsoleteRecipeID("GlassForge", array9[0].material);
string text5 = ComplexRecipeManager.MakeRecipeID("GlassForge", array9, array10);
ComplexRecipe complexRecipe5 = new ComplexRecipe(text5, array9, array10);
complexRecipe5.time = 4f;
complexRecipe5.nameDisplay = ComplexRecipe.RecipeNameDisplay.Result;
complexRecipe5.description = string.Format(STRINGS.BUILDINGS.PREFABS.GLASSFORGE.RECIPE_DESCRIPTION, ElementLoader.GetElement(array10[0].material).name, ElementLoader.GetElement(array9[0].material).name);
complexRecipe5.fabricators = new List<Tag>
{
TagManager.Create("GlassForge")
};
ComplexRecipeManager.Get().AddObsoleteIDMapping(obsolete_id5, text5);
ComplexRecipe.RecipeElement[] array11 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash11).tag, 1000f)
};
ComplexRecipe.RecipeElement[] array12 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash12).tag, 1000f, ComplexRecipe.RecipeElement.TemperatureOperation.Melted, false)
};
string obsolete_id6 = ComplexRecipeManager.MakeObsoleteRecipeID("GlassForge", array11[0].material);
string text6 = ComplexRecipeManager.MakeRecipeID("GlassForge", array11, array12);
ComplexRecipe complexRecipe6 = new ComplexRecipe(text6, array11, array12);
complexRecipe6.time = 4f;
complexRecipe6.nameDisplay = ComplexRecipe.RecipeNameDisplay.Result;
complexRecipe6.description = string.Format(STRINGS.BUILDINGS.PREFABS.GLASSFORGE.RECIPE_DESCRIPTION, ElementLoader.GetElement(array12[0].material).name, ElementLoader.GetElement(array11[0].material).name);
complexRecipe6.fabricators = new List<Tag>
{
TagManager.Create("GlassForge")
};
ComplexRecipeManager.Get().AddObsoleteIDMapping(obsolete_id6, text6);
ComplexRecipe.RecipeElement[] array13 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash13).tag, 1000f)
};
ComplexRecipe.RecipeElement[] array14 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash14).tag, 1000f, ComplexRecipe.RecipeElement.TemperatureOperation.Melted, false)
};
string obsolete_id7 = ComplexRecipeManager.MakeObsoleteRecipeID("GlassForge", array13[0].material);
string text7 = ComplexRecipeManager.MakeRecipeID("GlassForge", array13, array14);
ComplexRecipe complexRecipe7 = new ComplexRecipe(text7, array13, array14);
complexRecipe7.time = 4f;
complexRecipe7.nameDisplay = ComplexRecipe.RecipeNameDisplay.Result;
complexRecipe7.description = string.Format(STRINGS.BUILDINGS.PREFABS.GLASSFORGE.RECIPE_DESCRIPTION, ElementLoader.GetElement(array14[0].material).name, ElementLoader.GetElement(array13[0].material).name);
complexRecipe7.fabricators = new List<Tag>
{
TagManager.Create("GlassForge")
};
ComplexRecipeManager.Get().AddObsoleteIDMapping(obsolete_id7, text7);
if (DlcManager.IsExpansion1Active())
{
ComplexRecipe.RecipeElement[] array15 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash15).tag, 1000f)
};
ComplexRecipe.RecipeElement[] array16 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash16).tag, 1000f, ComplexRecipe.RecipeElement.TemperatureOperation.Melted, false)
};
string obsolete_id8 = ComplexRecipeManager.MakeObsoleteRecipeID("GlassForge", array15[0].material);
string text8 = ComplexRecipeManager.MakeRecipeID("GlassForge", array15, array16);
ComplexRecipe complexRecipe8 = new ComplexRecipe(text8, array15, array16);
complexRecipe8.time = 4f;
complexRecipe8.nameDisplay = ComplexRecipe.RecipeNameDisplay.Result;
complexRecipe8.description = string.Format(STRINGS.BUILDINGS.PREFABS.GLASSFORGE.RECIPE_DESCRIPTION, ElementLoader.GetElement(array16[0].material).name, ElementLoader.GetElement(array15[0].material).name);
complexRecipe8.fabricators = new List<Tag>
{
TagManager.Create("GlassForge")
};
ComplexRecipeManager.Get().AddObsoleteIDMapping(obsolete_id8, text8);
}
ComplexRecipe.RecipeElement[] array17 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash17).tag, 1000f)
};
ComplexRecipe.RecipeElement[] array18 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash18).tag, 1000f, ComplexRecipe.RecipeElement.TemperatureOperation.Melted, false)
};
string obsolete_id9 = ComplexRecipeManager.MakeObsoleteRecipeID("GlassForge", array17[0].material);
string text9 = ComplexRecipeManager.MakeRecipeID("GlassForge", array17, array18);
ComplexRecipe complexRecipe9 = new ComplexRecipe(text9, array17, array18);
complexRecipe9.time = 4f;
complexRecipe9.nameDisplay = ComplexRecipe.RecipeNameDisplay.Result;
complexRecipe9.description = string.Format(STRINGS.BUILDINGS.PREFABS.GLASSFORGE.RECIPE_DESCRIPTION, ElementLoader.GetElement(array18[0].material).name, ElementLoader.GetElement(array17[0].material).name);
complexRecipe9.fabricators = new List<Tag>
{
TagManager.Create("GlassForge")
};
ComplexRecipeManager.Get().AddObsoleteIDMapping(obsolete_id9, text9);
ComplexRecipe.RecipeElement[] array19 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash19).tag, 1000f)
};
ComplexRecipe.RecipeElement[] array20 = new ComplexRecipe.RecipeElement[]
{
new ComplexRecipe.RecipeElement(ElementLoader.FindElementByHash(hash20).tag, 1000f, ComplexRecipe.RecipeElement.TemperatureOperation.Melted, false)
};
string obsolete_id10 = ComplexRecipeManager.MakeObsoleteRecipeID("GlassForge", array19[0].material);
string text10 = ComplexRecipeManager.MakeRecipeID("GlassForge", array19, array20);
ComplexRecipe complexRecipe10 = new ComplexRecipe(text10, array19, array20);
complexRecipe10.time = 4f;
complexRecipe10.nameDisplay = ComplexRecipe.RecipeNameDisplay.Result;
complexRecipe10.description = string.Format(STRINGS.BUILDINGS.PREFABS.GLASSFORGE.RECIPE_DESCRIPTION, ElementLoader.GetElement(array20[0].material).name, ElementLoader.GetElement(array19[0].material).name);
complexRecipe10.fabricators = new List<Tag>
{
TagManager.Create("GlassForge")
};
ComplexRecipeManager.Get().AddObsoleteIDMapping(obsolete_id10, text10);
Prioritizable.AddRef(go);
}
另有全自动
|
评分
-
1
查看全部评分
-
|