Skip to content

Commit 260755b

Browse files
authored
Stable 0 5 7 0 fixes (#98)
* Added missing tools * Updated gamelibs * Fixed bottom bar scrolling * Removed unused imports
1 parent 00d9671 commit 260755b

27 files changed

Lines changed: 189 additions & 50 deletions

‎Core/TimberApi.Core/BootstrapSystem/TimberApiBootstrapSystemConfigurator.cs‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
using TimberApi.Core.LoggingSystem;
1010
using TimberApi.Core.ModLoaderSystem;
1111
using TimberApi.HarmonyPatcherSystem;
12-
using TimberApi.SceneSystem;
1312

1413
namespace TimberApi.Core.BootstrapSystem
1514
{

‎Core/TimberApi.Core/ConsoleSystem/ConsoleSystemConfigurator.cs‎

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,8 @@
22
using Bindito.Unity;
33
using TimberApi.Common.ConsoleSystem;
44
using TimberApi.Common.Helpers;
5-
using TimberApi.Common.LoggingSystem;
65
using TimberApi.ConsoleSystem;
7-
using Timberborn.InputSystem;
86
using UnityEngine;
9-
using UnityEngine.UIElements;
107

118
namespace TimberApi.Core.ConsoleSystem
129
{

‎Core/TimberApi/AssetSystem/AssetLoader.cs‎

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
using System;
2-
using System.Diagnostics;
32
using System.Linq;
43
using TimberApi.AssetSystem.Exceptions;
54
using TimberApi.ShaderSystem;
65
using Timberborn.Persistence;
76
using Timberborn.SingletonSystem;
87
using UnityEngine;
9-
using Debug = UnityEngine.Debug;
108
using Object = UnityEngine.Object;
119

1210
namespace TimberApi.AssetSystem

‎Core/TimberApi/BottomBarSystem/BottomBarService.cs‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
using TimberApi.Common.SingletonSystem;
55
using TimberApi.ToolGroupSystem;
66
using TimberApi.ToolSystem;
7-
using Timberborn.SingletonSystem;
87

98
namespace TimberApi.BottomBarSystem
109
{

‎Core/TimberApi/BottomBarSystem/Patchers/ToolButtonPatcher.cs‎

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
using HarmonyLib;
22
using TimberApi.HarmonyPatcherSystem;
33
using TimberApi.SceneSystem;
4-
using Timberborn.BuilderPrioritySystemUI;
54
using Timberborn.ToolSystem;
6-
using UnityEngine;
75

86
namespace TimberApi.BottomBarSystem.Patchers
97
{

‎Core/TimberApi/BottomBarSystem/Patchers/ToolGroupButtonPatcher.cs‎

Lines changed: 14 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,13 @@
77
using TimberApi.HarmonyPatcherSystem;
88
using TimberApi.SceneSystem;
99
using TimberApi.ToolGroupSystem;
10+
using TimberApi.ToolSystem;
11+
using Timberborn.Common;
1012
using Timberborn.CoreUI;
13+
using Timberborn.CursorToolSystem;
1114
using Timberborn.Debugging;
1215
using Timberborn.ToolSystem;
16+
using UnityEngine;
1317
using UnityEngine.UIElements;
1418

1519
namespace TimberApi.BottomBarSystem.Patchers
@@ -20,26 +24,22 @@ public class ToolGroupButtonPatcher : BaseHarmonyPatcher, ITimberApiLoadableSing
2024

2125
private static BottomBarService _bottomBarService = null!;
2226

23-
private static DevModeManager _devModeManager = null!;
24-
2527
private static readonly string ActiveClassName = "button--active";
2628

2729
public override string UniqueId => "TimberApi.ToolGroupButton";
2830

2931
public void Load()
3032
{
3133
_bottomBarService = DependencyContainer.GetInstance<BottomBarService>();
32-
_devModeManager = DependencyContainer.GetInstance<DevModeManager>();
3334
_toolGroupService = DependencyContainer.GetInstance<ToolGroupService>();
3435
}
3536

3637
public override void Apply(Harmony harmony)
3738
{
38-
3939
harmony.Patch(
4040
GetMethodInfo<ToolButtonService>(nameof(ToolButtonService.Add), new Type[] { typeof(ToolButton) }),
4141
GetHarmonyMethod(nameof(AddPatch)));
42-
42+
4343
harmony.Patch(
4444
AccessTools.PropertyGetter(typeof(ToolGroupButton), nameof(ToolGroupButton.IsVisible)),
4545
GetHarmonyMethod(nameof(ContainsToolPatch))
@@ -55,31 +55,21 @@ public override void Apply(Harmony harmony)
5555
GetHarmonyMethod(nameof(OnToolGroupExited))
5656
);
5757
}
58-
58+
5959
public static bool AddPatch(ToolButton toolButton, ToolButtonService __instance)
6060
{
61-
if(toolButton.Tool?.Default == true)
61+
__instance._toolButtons.Add(toolButton);
62+
63+
if (toolButton.Tool.ToolGroup != null)
6264
{
63-
__instance._toolButtons.Insert(0, toolButton);
64-
}
65-
else
66-
{
67-
__instance._toolButtons.Insert(__instance._toolButtons.Count > 0 ? 1 : 0, toolButton);
65+
return false;
6866
}
69-
if (toolButton.Tool?.ToolGroup == null)
67+
68+
if (toolButton.Tool is not IUnselectableTool && toolButton.Tool is not CursorTool)
7069
{
71-
if (toolButton.Root.Q<VisualElement>("ToolImage")?.style.backgroundImage.ToString() != "Options (UnityEngine.Sprite)")
72-
{
73-
if (toolButton.Tool?.Default == true)
74-
{
75-
__instance._rootButtons.Insert(0, toolButton);
76-
}
77-
else
78-
{
79-
__instance._rootButtons.Insert(1, toolButton);
80-
}
81-
}
70+
__instance._rootButtons.Add(toolButton);
8271
}
72+
8373
return false;
8474
}
8575

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
using System.Collections.Generic;
2+
using System.Linq;
3+
using HarmonyLib;
4+
using TimberApi.HarmonyPatcherSystem;
5+
using Timberborn.ToolSystem;
6+
7+
namespace TimberApi.BottomBarSystem.Patchers
8+
{
9+
public class ToolbarButtonRetrieverPatcher : BaseHarmonyPatcher
10+
{
11+
public override string UniqueId => "TimberApi.ToolButtonRetriever";
12+
13+
public override void Apply(Harmony harmony)
14+
{
15+
harmony.Patch(
16+
GetMethodInfo<ToolbarButtonRetriever>(nameof(ToolbarButtonRetriever.TryGetPreviousVisibleButton)),
17+
GetHarmonyMethod(nameof(TryGetPreviousVisibleButtonPatch))
18+
);
19+
}
20+
21+
public static bool TryGetPreviousVisibleButtonPatch(IEnumerable<IToolbarButton> buttons, out IToolbarButton? previousButton)
22+
{
23+
previousButton = null;
24+
return buttons.Any(button => button.IsVisible);
25+
}
26+
}
27+
}

‎Core/TimberApi/LocalizationSystem/LocalizationFetcher.cs‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
using System;
2-
using System.Collections;
32
using System.Collections.Generic;
43
using System.IO;
54
using System.Linq;

‎Core/TimberApi/SpecificationSystem/SpecificationTypes/FileSpecification.cs‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
using System.IO;
2-
using UnityEngine;
32

43
namespace TimberApi.SpecificationSystem.SpecificationTypes
54
{

‎Core/TimberApi/ToolGroupSystem/ToolGroupService.cs‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
using System;
21
using System.Collections.Generic;
32
using System.Collections.Immutable;
43
using System.Linq;

0 commit comments

Comments
 (0)