1
0
mirror of https://github.com/soarqin/DSP_Mods.git synced 2025-12-09 10:13:31 +08:00

work in progress

This commit is contained in:
2025-04-23 02:49:59 +08:00
parent 996a57130c
commit 1ae4aa3ecb
6 changed files with 67 additions and 55 deletions

View File

@@ -109,7 +109,6 @@ public class FactoryPatch : PatchImpl<FactoryPatch>
BeltSignalsForBuyOutEnabled.SettingChanged += (_, _) => BeltSignalsForBuyOut.Enable(BeltSignalsForBuyOutEnabled.Value);
TankFastFillInAndTakeOutEnabled.SettingChanged += (_, _) => TankFastFillInAndTakeOut.Enable(TankFastFillInAndTakeOutEnabled.Value);
TankFastFillInAndTakeOutMultiplier.SettingChanged += (_, _) => UpdateTankFastFillInAndTakeOutMultiplierRealValue();
CutConveyorBeltEnabled.SettingChanged += (_, _) => CutConveyorBelt.Enable(CutConveyorBeltEnabled.Value);
TweakBuildingBufferEnabled.SettingChanged += (_, _) => TweakBuildingBuffer.Enable(TweakBuildingBufferEnabled.Value);
AssemblerBufferTimeMultiplier.SettingChanged += (_, _) => TweakBuildingBuffer.RefreshAssemblerBufferMultipliers();
AssemblerBufferMininumMultiplier.SettingChanged += (_, _) => TweakBuildingBuffer.RefreshAssemblerBufferMultipliers();
@@ -135,7 +134,6 @@ public class FactoryPatch : PatchImpl<FactoryPatch>
DragBuildPowerPoles.Enable(DragBuildPowerPolesEnabled.Value);
BeltSignalsForBuyOut.Enable(BeltSignalsForBuyOutEnabled.Value);
TankFastFillInAndTakeOut.Enable(TankFastFillInAndTakeOutEnabled.Value);
CutConveyorBelt.Enable(CutConveyorBeltEnabled.Value);
TweakBuildingBuffer.Enable(TweakBuildingBufferEnabled.Value);
Enable(true);
@@ -147,7 +145,6 @@ public class FactoryPatch : PatchImpl<FactoryPatch>
Enable(false);
TweakBuildingBuffer.Enable(false);
CutConveyorBelt.Enable(false);
TankFastFillInAndTakeOut.Enable(false);
BeltSignalsForBuyOut.Enable(false);
DragBuildPowerPoles.Enable(false);
@@ -171,10 +168,20 @@ public class FactoryPatch : PatchImpl<FactoryPatch>
_tankFastFillInAndTakeOutMultiplierRealValue = Mathf.Max(1, TankFastFillInAndTakeOutMultiplier.Value) * 2;
}
public static void OnUpdate()
public static void OnInputUpdate()
{
if (_doNotRenderEntitiesKey.keyValue)
DoNotRenderEntitiesEnabled.Value = !DoNotRenderEntitiesEnabled.Value;
if (CutConveyorBeltEnabled.Value && _cutConveyorBeltKey.keyValue)
{
var raycast = GameMain.mainPlayer.controller?.cmd.raycast;
int beltId;
if (raycast != null && raycast.castEntity.id > 0 && (beltId = raycast.castEntity.beltId) > 0)
{
var cargoTraffic = raycast.planet.factory.cargoTraffic;
Functions.FactoryFunctions.CutConveyorBelt(cargoTraffic, beltId);
}
}
if (DismantleBlueprintSelectionEnabled.Value && _dismantleBlueprintSelectionKey.keyValue)
Functions.FactoryFunctions.DismantleBlueprintSelectedBuildings();
}
@@ -1992,23 +1999,6 @@ public class FactoryPatch : PatchImpl<FactoryPatch>
}
}
private class CutConveyorBelt : PatchImpl<CutConveyorBelt>
{
[HarmonyPostfix]
[HarmonyPatch(typeof(PlayerController), nameof(PlayerController.GameTick))]
private static void PlayerController_GameTick_Postfix(PlayerController __instance)
{
if (!_cutConveyorBeltKey.keyValue) return;
var raycast = __instance.cmd.raycast;
if (raycast == null) return;
if (raycast.castEntity.id <= 0) return;
int beltId;
if ((beltId = raycast.castEntity.beltId) <= 0) return;
var cargoTraffic = raycast.planet.factory.cargoTraffic;
Functions.FactoryFunctions.CutConveyorBelt(cargoTraffic, beltId);
}
}
private class TweakBuildingBuffer : PatchImpl<TweakBuildingBuffer>
{
public static void RefreshAssemblerBufferMultipliers()

View File

@@ -126,7 +126,7 @@ public class GamePatch : PatchImpl<GamePatch>
ConvertSavesFromPeace.Enable(false);
}
public static void OnUpdate()
public static void OnInputUpdate()
{
if (!_enableGameUpsFactor) return;
if (_speedDownKey.keyValue)

View File

@@ -89,7 +89,11 @@ public static class LogisticsPatch
{
RealtimeLogisticsInfoPanel.StationInfoPanelsUpdate();
}
if (LogisticsCapacityTweaksEnabled.Value && VFInput.onGUI && !VFInput.inputing)
}
public static void OnInputUpdate()
{
if (VFInput.onGUI && LogisticsCapacityTweaksEnabled.Value)
{
LogisticsCapacityTweaks.UpdateInput();
}

View File

@@ -68,9 +68,9 @@ public static class PlayerPatch
AutoNavigation.Enable(AutoNavigationEnabled.Value);
}
public static void OnUpdate()
public static void OnInputUpdate()
{
ShortcutKeysForStarsName.OnUpdate();
ShortcutKeysForStarsName.OnInputUpdate();
if (_autoDriveKey.keyValue)
{
AutoNavigation.ToggleAutoCruise();
@@ -166,7 +166,7 @@ public static class PlayerPatch
_forceShowAllStarsNameExternal = value;
}
public static void OnUpdate()
public static void OnInputUpdate()
{
if (!UIRoot.instance.uiGame.starmap.active) return;
if (_toggleAllStarsNameKey.keyValue)