diff --git a/UXAssist/FactoryPatch.cs b/UXAssist/FactoryPatch.cs
index 12b12ef..8d7fb56 100644
--- a/UXAssist/FactoryPatch.cs
+++ b/UXAssist/FactoryPatch.cs
@@ -993,11 +993,8 @@ public static class FactoryPatch
{
if (!VFInput._chainReaction) return true;
var factory = dismantle.factory;
- var entity = factory.entityPool[id];
- var factorySystem = factory.factorySystem;
- if (entity.labId <= 0 || entity.labId > factorySystem.labCursor) return true;
- ref var lab = ref factory.factorySystem.labPool[entity.labId];
- if (lab.id != entity.labId) return true;
+ var prefDesc = dismantle.GetPrefabDesc(id);
+ if (!prefDesc.isLab) return true;
factory.ReadObjectConn(id, 14, out _, out var nextId, out _);
/* We keep last lab if selected lab is not the ground one */
if (nextId > 0)
diff --git a/UXAssist/PlayerPatch.cs b/UXAssist/PlayerPatch.cs
index df2a071..766a090 100644
--- a/UXAssist/PlayerPatch.cs
+++ b/UXAssist/PlayerPatch.cs
@@ -325,7 +325,9 @@ public static class PlayerPatch
}
else
{
- if (_canUseWarper && GameMain.localPlanet == null && distance > GalaxyData.AU * DistanceToWarp.Value && player.mecha.UseWarper())
+ var mecha = player.mecha;
+ var energyRatio = mecha.coreEnergy / mecha.coreEnergyCap;
+ if (_canUseWarper && GameMain.localPlanet == null && distance > GalaxyData.AU * DistanceToWarp.Value && energyRatio >= 0.5 && player.mecha.UseWarper())
{
player.warpCommand = true;
VFAudio.Create("warp-begin", player.transform, Vector3.zero, true);
@@ -333,7 +335,7 @@ public static class PlayerPatch
else
{
/* Speed up if needed */
- _speedUp = speed + 0.2f < player.mecha.maxSailSpeed;
+ _speedUp = speed + 0.2f < player.mecha.maxSailSpeed && energyRatio >= 0.1;
}
}
diff --git a/UXAssist/README.md b/UXAssist/README.md
index 666e448..9d77753 100644
--- a/UXAssist/README.md
+++ b/UXAssist/README.md
@@ -4,6 +4,11 @@
#### 一些提升用户体验的功能和补丁
## Changlog
+* 1.0.22
+ + Fix a crash issue caused by `Quick build and dismantle stacking labs`
+* 1.0.21
+ + Fix a bug that stepped rotation is not working in `Off-grid building and stepped rotation`, which is caused by latest game update
+ + Fix some issues in `Auto nativation` and `Auto-cruise`, now only speeds up when core energy at least 10% and warps when core energy at least 50%
* 1.0.20
+ Fix a infinite-loop issue when `Quick build and dismantle stacking labs` and `No condition build` are both enabled
+ Fix a crash caused by `Re-initialize planet` in combat mode
@@ -151,6 +156,11 @@
* [CruiseAssist](https://dsp.thunderstore.io/package/tanu/CruiseAssist/) and its extension [AutoPilot](https://dsp.thunderstore.io/package/tanu/AutoPilot/): `Auto navigation on sailings` and `Auto-cruise` implementations
## 更新日志
+* 1.0.22
+ + 修复了`快速建造和拆除堆叠研究站`导致的崩溃问题
+* 1.0.21
+ + 修复了`脱离网格建造和小角度旋转`在最新游戏更新后无法小角度旋转的问题
+ + 修复了`航行时自动导航`和`自动巡航`的一些问题。现在只有能量至少10%时才加速,能量至少50%时才启动曲速
* 1.0.20
+ 修复了`快速建造和拆除堆叠研究站`和`无条件建造`同时启用时可能导致的逻辑死循环问题
+ 修复了在战斗模式下`初始化本行星`导致的崩溃问题
diff --git a/UXAssist/UXAssist.csproj b/UXAssist/UXAssist.csproj
index 964dd67..8b43b8d 100644
--- a/UXAssist/UXAssist.csproj
+++ b/UXAssist/UXAssist.csproj
@@ -4,7 +4,7 @@
net472
org.soardev.uxassist
DSP MOD - UXAssist
- 1.0.20
+ 1.0.22
true
latest
UXAssist
diff --git a/UXAssist/package/manifest.json b/UXAssist/package/manifest.json
index 5e949ec..c7d6f0f 100644
--- a/UXAssist/package/manifest.json
+++ b/UXAssist/package/manifest.json
@@ -1,6 +1,6 @@
{
"name": "UXAssist",
- "version_number": "1.0.20",
+ "version_number": "1.0.22",
"website_url": "https://github.com/soarqin/DSP_Mods/tree/master/UXAssist",
"description": "Some functions and patches for better user experience / 一些提升用户体验的功能和补丁",
"dependencies": [