mirror of
https://github.com/soarqin/DSP_Mods.git
synced 2025-12-11 06:43:29 +08:00
UXAssist: buffer tweaks for ejector and silo
This commit is contained in:
@@ -8,6 +8,9 @@
|
|||||||
- Fix a crash on dismantling preview buildings.
|
- Fix a crash on dismantling preview buildings.
|
||||||
- Rename to `Shortcut keys for Blueprint Copy mode`, while adding a shortcut key to select all buildings (Ctrl+A by default).
|
- Rename to `Shortcut keys for Blueprint Copy mode`, while adding a shortcut key to select all buildings (Ctrl+A by default).
|
||||||
+ `Allow overflow for Logistic Stations and Advanced Mining Machines`: Working for Logistics Control Panel now.
|
+ `Allow overflow for Logistic Stations and Advanced Mining Machines`: Working for Logistics Control Panel now.
|
||||||
|
+ `Tweak building buffer`: add buffer tweaking for 2 new buildings
|
||||||
|
- `Ejector Solar Sails buffer count`: Range 5-400 (step by 5), default is 20 (same as game)
|
||||||
|
- `Silo Rockets buffer count`: Range 1-20, default is 20 (same as game)
|
||||||
* 1.3.5
|
* 1.3.5
|
||||||
+ `Mod manager profile based save folder`: Fix crash on game startup
|
+ `Mod manager profile based save folder`: Fix crash on game startup
|
||||||
* 1.3.4
|
* 1.3.4
|
||||||
@@ -323,6 +326,9 @@
|
|||||||
- 修复了拆除虚影建筑时崩溃的问题
|
- 修复了拆除虚影建筑时崩溃的问题
|
||||||
- 重命名为`蓝图复制模式快捷键`,同时添加了选择所有建筑的快捷键(默认为Ctrl+A)
|
- 重命名为`蓝图复制模式快捷键`,同时添加了选择所有建筑的快捷键(默认为Ctrl+A)
|
||||||
+ `允许物流站和大型采矿机物品溢出`:现在也适用于物流控制面板
|
+ `允许物流站和大型采矿机物品溢出`:现在也适用于物流控制面板
|
||||||
|
+ `调整建筑缓冲区`:为2个新建筑添加缓冲区调整
|
||||||
|
- `弹射太阳帆缓冲区数量`:范围5-400(步进值为5),默认值为20(与游戏相同)
|
||||||
|
- `发射井火箭缓冲区数量`:范围1-20,默认值为20(与游戏相同)
|
||||||
* 1.3.5
|
* 1.3.5
|
||||||
+ `基于mod管理器配置档案的存档文件夹`:修复游戏启动时崩溃的问题
|
+ `基于mod管理器配置档案的存档文件夹`:修复游戏启动时崩溃的问题
|
||||||
* 1.3.4
|
* 1.3.4
|
||||||
|
|||||||
@@ -41,6 +41,8 @@ public class FactoryPatch : PatchImpl<FactoryPatch>
|
|||||||
public static ConfigEntry<int> LabBufferExtraCountForAdvancedAssemble;
|
public static ConfigEntry<int> LabBufferExtraCountForAdvancedAssemble;
|
||||||
public static ConfigEntry<int> LabBufferMaxCountForResearch;
|
public static ConfigEntry<int> LabBufferMaxCountForResearch;
|
||||||
public static ConfigEntry<int> ReceiverBufferCount;
|
public static ConfigEntry<int> ReceiverBufferCount;
|
||||||
|
public static ConfigEntry<int> EjectorBufferCount;
|
||||||
|
public static ConfigEntry<int> SiloBufferCount;
|
||||||
public static ConfigEntry<bool> ShortcutKeysForBlueprintCopyEnabled;
|
public static ConfigEntry<bool> ShortcutKeysForBlueprintCopyEnabled;
|
||||||
|
|
||||||
private static PressKeyBind _doNotRenderEntitiesKey;
|
private static PressKeyBind _doNotRenderEntitiesKey;
|
||||||
@@ -126,6 +128,8 @@ public class FactoryPatch : PatchImpl<FactoryPatch>
|
|||||||
LabBufferExtraCountForAdvancedAssemble.SettingChanged += (_, _) => TweakBuildingBuffer.RefreshLabBufferMaxCountForAssemble();
|
LabBufferExtraCountForAdvancedAssemble.SettingChanged += (_, _) => TweakBuildingBuffer.RefreshLabBufferMaxCountForAssemble();
|
||||||
LabBufferMaxCountForResearch.SettingChanged += (_, _) => TweakBuildingBuffer.RefreshLabBufferMaxCountForResearch();
|
LabBufferMaxCountForResearch.SettingChanged += (_, _) => TweakBuildingBuffer.RefreshLabBufferMaxCountForResearch();
|
||||||
ReceiverBufferCount.SettingChanged += (_, _) => TweakBuildingBuffer.RefreshReceiverBufferCount();
|
ReceiverBufferCount.SettingChanged += (_, _) => TweakBuildingBuffer.RefreshReceiverBufferCount();
|
||||||
|
EjectorBufferCount.SettingChanged += (_, _) => TweakBuildingBuffer.RefreshEjectorBufferCount();
|
||||||
|
SiloBufferCount.SettingChanged += (_, _) => TweakBuildingBuffer.RefreshSiloBufferCount();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Start()
|
public static void Start()
|
||||||
@@ -2053,6 +2057,24 @@ public class FactoryPatch : PatchImpl<FactoryPatch>
|
|||||||
patch.Patch(AccessTools.Method(typeof(PowerGeneratorComponent), nameof(PowerGeneratorComponent.GameTick_Gamma)), null, null, new HarmonyMethod(typeof(TweakBuildingBuffer), nameof(PowerGeneratorComponent_GameTick_Gamma_Transpiler)));
|
patch.Patch(AccessTools.Method(typeof(PowerGeneratorComponent), nameof(PowerGeneratorComponent.GameTick_Gamma)), null, null, new HarmonyMethod(typeof(TweakBuildingBuffer), nameof(PowerGeneratorComponent_GameTick_Gamma_Transpiler)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void RefreshEjectorBufferCount()
|
||||||
|
{
|
||||||
|
if (!TweakBuildingBufferEnabled.Value) return;
|
||||||
|
/* re-patch to use new value */
|
||||||
|
var patch = Instance._patch;
|
||||||
|
patch.Unpatch(AccessTools.Method(typeof(EjectorComponent), nameof(EjectorComponent.InternalUpdate)), AccessTools.Method(typeof(TweakBuildingBuffer), nameof(EjectorComponent_InternalUpdate_Transpiler)));
|
||||||
|
patch.Patch(AccessTools.Method(typeof(EjectorComponent), nameof(EjectorComponent.InternalUpdate)), null, null, new HarmonyMethod(typeof(TweakBuildingBuffer), nameof(EjectorComponent_InternalUpdate_Transpiler)));
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void RefreshSiloBufferCount()
|
||||||
|
{
|
||||||
|
if (!TweakBuildingBufferEnabled.Value) return;
|
||||||
|
/* re-patch to use new value */
|
||||||
|
var patch = Instance._patch;
|
||||||
|
patch.Unpatch(AccessTools.Method(typeof(SiloComponent), nameof(SiloComponent.InternalUpdate)), AccessTools.Method(typeof(TweakBuildingBuffer), nameof(SiloComponent_InternalUpdate_Transpiler)));
|
||||||
|
patch.Patch(AccessTools.Method(typeof(SiloComponent), nameof(SiloComponent.InternalUpdate)), null, null, new HarmonyMethod(typeof(TweakBuildingBuffer), nameof(SiloComponent_InternalUpdate_Transpiler)));
|
||||||
|
}
|
||||||
|
|
||||||
[HarmonyTranspiler]
|
[HarmonyTranspiler]
|
||||||
[HarmonyPatch(typeof(PowerGeneratorComponent), nameof(PowerGeneratorComponent.GameTick_Gamma))]
|
[HarmonyPatch(typeof(PowerGeneratorComponent), nameof(PowerGeneratorComponent.GameTick_Gamma))]
|
||||||
private static IEnumerable<CodeInstruction> PowerGeneratorComponent_GameTick_Gamma_Transpiler(IEnumerable<CodeInstruction> instructions, ILGenerator generator)
|
private static IEnumerable<CodeInstruction> PowerGeneratorComponent_GameTick_Gamma_Transpiler(IEnumerable<CodeInstruction> instructions, ILGenerator generator)
|
||||||
@@ -2175,5 +2197,33 @@ public class FactoryPatch : PatchImpl<FactoryPatch>
|
|||||||
matcher.Repeat(m => m.SetAndAdvance(OpCodes.Ldc_I4, LabBufferMaxCountForResearch.Value * 3600));
|
matcher.Repeat(m => m.SetAndAdvance(OpCodes.Ldc_I4, LabBufferMaxCountForResearch.Value * 3600));
|
||||||
return matcher.InstructionEnumeration();
|
return matcher.InstructionEnumeration();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[HarmonyTranspiler]
|
||||||
|
[HarmonyPatch(typeof(EjectorComponent), nameof(EjectorComponent.InternalUpdate))]
|
||||||
|
private static IEnumerable<CodeInstruction> EjectorComponent_InternalUpdate_Transpiler(IEnumerable<CodeInstruction> instructions, ILGenerator generator)
|
||||||
|
{
|
||||||
|
var matcher = new CodeMatcher(instructions, generator);
|
||||||
|
matcher.MatchForward(false,
|
||||||
|
new CodeMatch(OpCodes.Ldarg_0),
|
||||||
|
new CodeMatch(OpCodes.Ldfld, AccessTools.Field(typeof(EjectorComponent), nameof(EjectorComponent.bulletCount))),
|
||||||
|
new CodeMatch(ci => (ci.opcode == OpCodes.Ldc_I4 || ci.opcode == OpCodes.Ldc_I4_S) && ci.OperandIs(20))
|
||||||
|
);
|
||||||
|
matcher.Advance(2).Set(OpCodes.Ldc_I4, EjectorBufferCount.Value);
|
||||||
|
return matcher.InstructionEnumeration();
|
||||||
|
}
|
||||||
|
|
||||||
|
[HarmonyTranspiler]
|
||||||
|
[HarmonyPatch(typeof(SiloComponent), nameof(SiloComponent.InternalUpdate))]
|
||||||
|
private static IEnumerable<CodeInstruction> SiloComponent_InternalUpdate_Transpiler(IEnumerable<CodeInstruction> instructions, ILGenerator generator)
|
||||||
|
{
|
||||||
|
var matcher = new CodeMatcher(instructions, generator);
|
||||||
|
matcher.MatchForward(false,
|
||||||
|
new CodeMatch(OpCodes.Ldarg_0),
|
||||||
|
new CodeMatch(OpCodes.Ldfld, AccessTools.Field(typeof(SiloComponent), nameof(SiloComponent.bulletCount))),
|
||||||
|
new CodeMatch(ci => (ci.opcode == OpCodes.Ldc_I4 || ci.opcode == OpCodes.Ldc_I4_S) && ci.OperandIs(20))
|
||||||
|
);
|
||||||
|
matcher.Advance(2).Operand = SiloBufferCount.Value;
|
||||||
|
return matcher.InstructionEnumeration();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -91,6 +91,8 @@
|
|||||||
- `Extra buffer count for Self-evolution Labs`: Range 1-10, default is 3 (same as game)
|
- `Extra buffer count for Self-evolution Labs`: Range 1-10, default is 3 (same as game)
|
||||||
- `Buffer count for researching in labs`: Range 2-20, default is 10 (same as game)
|
- `Buffer count for researching in labs`: Range 2-20, default is 10 (same as game)
|
||||||
- `Ray Receiver Graviton Lens buffer count`: Range 1-20, default is 1 (game default is 20)
|
- `Ray Receiver Graviton Lens buffer count`: Range 1-20, default is 1 (game default is 20)
|
||||||
|
- `Ejector Solar Sails buffer count`: Range 5-400 (step by 5), default is 20 (same as game)
|
||||||
|
- `Silo Rockets buffer count`: Range 1-20, default is 20 (same as game)
|
||||||
+ Logistics
|
+ Logistics
|
||||||
- Enhanced control for logistic storage capacities
|
- Enhanced control for logistic storage capacities
|
||||||
- Logistic storage capacities are not scaled on upgrading `Logistics Carrier Capacity`, if they are not set to maximum capacity or already greater than maximum capacity.
|
- Logistic storage capacities are not scaled on upgrading `Logistics Carrier Capacity`, if they are not set to maximum capacity or already greater than maximum capacity.
|
||||||
@@ -244,6 +246,8 @@
|
|||||||
- `自演化研究站矩阵额外缓冲数量`:范围1-10,默认为3(同游戏)
|
- `自演化研究站矩阵额外缓冲数量`:范围1-10,默认为3(同游戏)
|
||||||
- `研究站科研模式缓存数量`:范围2-20,默认为10(同游戏)
|
- `研究站科研模式缓存数量`:范围2-20,默认为10(同游戏)
|
||||||
- `射线接收器透镜缓冲数量`:范围1-20,默认为1(游戏默认为20)
|
- `射线接收器透镜缓冲数量`:范围1-20,默认为1(游戏默认为20)
|
||||||
|
- `弹射太阳帆缓冲区数量`:范围5-400(步进值为5),默认值为20(与游戏相同)
|
||||||
|
- `发射井火箭缓冲区数量`:范围1-20,默认值为20(与游戏相同)
|
||||||
+ 物流
|
+ 物流
|
||||||
- 物流塔存储数量限制控制改进
|
- 物流塔存储数量限制控制改进
|
||||||
- 当升级`运输机舱扩容`时,不会对各种物流塔的存储限制按比例提升,除非设置为最大允许容量或者已经超过升级后的最大容量。
|
- 当升级`运输机舱扩容`时,不会对各种物流塔的存储限制按比例提升,除非设置为最大允许容量或者已经超过升级后的最大容量。
|
||||||
|
|||||||
@@ -248,6 +248,22 @@ public class MyWindow : ManualBehaviour
|
|||||||
public override int Max => max;
|
public override int Max => max;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class RangeValueWithMultiplierMapper<T>(int min, int max, T multiplier) : ValueMapper<T>
|
||||||
|
{
|
||||||
|
public override int Min => min;
|
||||||
|
public override int Max => max;
|
||||||
|
|
||||||
|
public override T IndexToValue(int index)
|
||||||
|
{
|
||||||
|
return (T)Convert.ChangeType((float)index * (float)Convert.ChangeType(multiplier, typeof(float)), typeof(T));
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int ValueToIndex(T value)
|
||||||
|
{
|
||||||
|
return Mathf.RoundToInt((float)Convert.ChangeType(value, typeof(float)) / (float)Convert.ChangeType(multiplier, typeof(float)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private class ArrayMapper<T> : ValueMapper<T>
|
private class ArrayMapper<T> : ValueMapper<T>
|
||||||
{
|
{
|
||||||
private readonly T[] _values;
|
private readonly T[] _values;
|
||||||
|
|||||||
@@ -121,6 +121,8 @@ public static class UIConfigWindow
|
|||||||
I18N.Add("Extra buffer count for Self-evolution Labs", "Extra buffer count for Self-evolution Labs", "自演化研究站矩阵额外缓冲数量");
|
I18N.Add("Extra buffer count for Self-evolution Labs", "Extra buffer count for Self-evolution Labs", "自演化研究站矩阵额外缓冲数量");
|
||||||
I18N.Add("Buffer count for researching in labs", "Buffer count for researching in labs", "研究站科研模式缓存数量");
|
I18N.Add("Buffer count for researching in labs", "Buffer count for researching in labs", "研究站科研模式缓存数量");
|
||||||
I18N.Add("Ray Receiver Graviton Lens buffer count", "Ray Receiver Graviton Lens buffer count", "射线接收器透镜缓冲数量");
|
I18N.Add("Ray Receiver Graviton Lens buffer count", "Ray Receiver Graviton Lens buffer count", "射线接收器透镜缓冲数量");
|
||||||
|
I18N.Add("Ejector Solar Sails buffer count", "Ejector Solar Sails buffer count", "弹射器太阳能帆缓冲数量");
|
||||||
|
I18N.Add("Silo Rockets buffer count", "Silo Rockets buffer count", "发射井火箭缓冲数量");
|
||||||
I18N.Add("Shortcut keys for Blueprint Copy mode", "Shortcut keys for Blueprint Copy mode", "蓝图复制模式快捷键");
|
I18N.Add("Shortcut keys for Blueprint Copy mode", "Shortcut keys for Blueprint Copy mode", "蓝图复制模式快捷键");
|
||||||
I18N.Add("Shortcut keys for Blueprint Copy mode tips", "You can set 2 shortcut keys in Settings panel:\n 1. Select all buildings\n 2. Dismantle selected buildings", "你可以在设置面板中设置2个快捷键:\n 1. 选择所有建筑\n 2. 拆除选中的建筑");
|
I18N.Add("Shortcut keys for Blueprint Copy mode tips", "You can set 2 shortcut keys in Settings panel:\n 1. Select all buildings\n 2. Dismantle selected buildings", "你可以在设置面板中设置2个快捷键:\n 1. 选择所有建筑\n 2. 拆除选中的建筑");
|
||||||
I18N.Add("Shortcut keys for showing stars' name", "Shortcut keys for showing stars' name", "启用显示所有星系名称的快捷键");
|
I18N.Add("Shortcut keys for showing stars' name", "Shortcut keys for showing stars' name", "启用显示所有星系名称的快捷键");
|
||||||
@@ -470,19 +472,29 @@ public static class UIConfigWindow
|
|||||||
y += 27f;
|
y += 27f;
|
||||||
txt = wnd.AddText2(x + 20f, y, tab2, "Ray Receiver Graviton Lens buffer count", 13);
|
txt = wnd.AddText2(x + 20f, y, tab2, "Ray Receiver Graviton Lens buffer count", 13);
|
||||||
var nx6 = txt.preferredWidth + 5f;
|
var nx6 = txt.preferredWidth + 5f;
|
||||||
y -= 135f;
|
|
||||||
var mx = Mathf.Max(nx1, nx2, nx3, nx4, nx5, nx6) + 20f;
|
|
||||||
var assemblerBufferTimeMultiplierSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.AssemblerBufferTimeMultiplier, new MyWindow.RangeValueMapper<int>(2, 10), "0", 80f).WithSmallerHandle();
|
|
||||||
y += 27f;
|
y += 27f;
|
||||||
var assemblerBufferMininumMultiplierSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.AssemblerBufferMininumMultiplier, new MyWindow.RangeValueMapper<int>(2, 10), "0", 80f).WithSmallerHandle();
|
txt = wnd.AddText2(x + 20f, y, tab2, "Ejector Solar Sails buffer count", 13);
|
||||||
|
var nx7 = txt.preferredWidth + 5f;
|
||||||
y += 27f;
|
y += 27f;
|
||||||
var labBufferMaxCountForAssembleSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.LabBufferMaxCountForAssemble, new MyWindow.RangeValueMapper<int>(2, 20), "0", 80f).WithSmallerHandle();
|
txt = wnd.AddText2(x + 20f, y, tab2, "Silo Rockets buffer count", 13);
|
||||||
|
var nx8 = txt.preferredWidth + 5f;
|
||||||
|
y -= 189f;
|
||||||
|
var mx = Mathf.Max(nx1, nx2, nx3, nx4, nx5, nx6, nx7, nx8) + 20f;
|
||||||
|
var assemblerBufferTimeMultiplierSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.AssemblerBufferTimeMultiplier, new MyWindow.RangeValueMapper<int>(2, 10), "0", 120f).WithSmallerHandle();
|
||||||
y += 27f;
|
y += 27f;
|
||||||
var labBufferExtraCountForAdvancedAssembleSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.LabBufferExtraCountForAdvancedAssemble, new MyWindow.RangeValueMapper<int>(1, 10), "0", 80f).WithSmallerHandle();
|
var assemblerBufferMininumMultiplierSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.AssemblerBufferMininumMultiplier, new MyWindow.RangeValueMapper<int>(2, 10), "0", 120f).WithSmallerHandle();
|
||||||
y += 27f;
|
y += 27f;
|
||||||
var labBufferMaxCountForResearchSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.LabBufferMaxCountForResearch, new MyWindow.RangeValueMapper<int>(2, 20), "0", 80f).WithSmallerHandle();
|
var labBufferMaxCountForAssembleSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.LabBufferMaxCountForAssemble, new MyWindow.RangeValueMapper<int>(2, 20), "0", 120f).WithSmallerHandle();
|
||||||
y += 27f;
|
y += 27f;
|
||||||
var receiverBufferCountSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.ReceiverBufferCount, new MyWindow.RangeValueMapper<int>(1, 20), "0", 80f).WithSmallerHandle();
|
var labBufferExtraCountForAdvancedAssembleSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.LabBufferExtraCountForAdvancedAssemble, new MyWindow.RangeValueMapper<int>(1, 10), "0", 120f).WithSmallerHandle();
|
||||||
|
y += 27f;
|
||||||
|
var labBufferMaxCountForResearchSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.LabBufferMaxCountForResearch, new MyWindow.RangeValueMapper<int>(2, 20), "0", 120f).WithSmallerHandle();
|
||||||
|
y += 27f;
|
||||||
|
var receiverBufferCountSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.ReceiverBufferCount, new MyWindow.RangeValueMapper<int>(1, 20), "0", 120f).WithSmallerHandle();
|
||||||
|
y += 27f;
|
||||||
|
var ejectorBufferCountSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.EjectorBufferCount, new MyWindow.RangeValueWithMultiplierMapper<int>(1, 80, 5), "0", 120f).WithSmallerHandle();
|
||||||
|
y += 27f;
|
||||||
|
var siloBufferCountSlider = wnd.AddSlider(x + mx, y + 5f, tab2, FactoryPatch.SiloBufferCount, new MyWindow.RangeValueMapper<int>(1, 40), "0", 120f).WithSmallerHandle();
|
||||||
FactoryPatch.TweakBuildingBufferEnabled.SettingChanged += TweakBuildingBufferChanged;
|
FactoryPatch.TweakBuildingBufferEnabled.SettingChanged += TweakBuildingBufferChanged;
|
||||||
wnd.OnFree += () => { FactoryPatch.TweakBuildingBufferEnabled.SettingChanged -= TweakBuildingBufferChanged; };
|
wnd.OnFree += () => { FactoryPatch.TweakBuildingBufferEnabled.SettingChanged -= TweakBuildingBufferChanged; };
|
||||||
TweakBuildingBufferChanged(null, null);
|
TweakBuildingBufferChanged(null, null);
|
||||||
|
|||||||
@@ -134,6 +134,8 @@ public class UXAssist : BaseUnityPlugin, IModCanSave
|
|||||||
FactoryPatch.LabBufferExtraCountForAdvancedAssemble = Config.Bind("Factory", "LabBufferExtraCountForAdvancedAssemble", 3, new ConfigDescription("Extra buffer count for Self-evolution Labs", new AcceptableValueRange<int>(1, 10)));
|
FactoryPatch.LabBufferExtraCountForAdvancedAssemble = Config.Bind("Factory", "LabBufferExtraCountForAdvancedAssemble", 3, new ConfigDescription("Extra buffer count for Self-evolution Labs", new AcceptableValueRange<int>(1, 10)));
|
||||||
FactoryPatch.LabBufferMaxCountForResearch = Config.Bind("Factory", "LabBufferMaxCountForResearch", 10, new ConfigDescription("Buffer count for researching in labs", new AcceptableValueRange<int>(2, 20)));
|
FactoryPatch.LabBufferMaxCountForResearch = Config.Bind("Factory", "LabBufferMaxCountForResearch", 10, new ConfigDescription("Buffer count for researching in labs", new AcceptableValueRange<int>(2, 20)));
|
||||||
FactoryPatch.ReceiverBufferCount = Config.Bind("Factory", "ReceiverBufferCount", 1, new ConfigDescription("Ray Receiver Graviton Lens buffer count", new AcceptableValueRange<int>(1, 20)));
|
FactoryPatch.ReceiverBufferCount = Config.Bind("Factory", "ReceiverBufferCount", 1, new ConfigDescription("Ray Receiver Graviton Lens buffer count", new AcceptableValueRange<int>(1, 20)));
|
||||||
|
FactoryPatch.EjectorBufferCount = Config.Bind("Factory", "EjectorBufferCount", 1, new ConfigDescription("Ejector buffer count", new AcceptableValueRange<int>(5, 400)));
|
||||||
|
FactoryPatch.SiloBufferCount = Config.Bind("Factory", "SiloBufferCount", 1, new ConfigDescription("Silo buffer count", new AcceptableValueRange<int>(1, 40)));
|
||||||
FactoryPatch.ShortcutKeysForBlueprintCopyEnabled = Config.Bind("Factory", "DismantleBlueprintSelection", false,
|
FactoryPatch.ShortcutKeysForBlueprintCopyEnabled = Config.Bind("Factory", "DismantleBlueprintSelection", false,
|
||||||
"Dismantle blueprint selected buildings");
|
"Dismantle blueprint selected buildings");
|
||||||
LogisticsPatch.AutoConfigLogisticsEnabled = Config.Bind("Factory", "AutoConfigLogistics", false,
|
LogisticsPatch.AutoConfigLogisticsEnabled = Config.Bind("Factory", "AutoConfigLogistics", false,
|
||||||
|
|||||||
Reference in New Issue
Block a user