diff --git a/Assets/MyGame/aa/UI/Game/GameMainPanel_FishBase.cs b/Assets/MyGame/aa/UI/Game/GameMainPanel_FishBase.cs index 1ba0c7ace..ea22cd2e8 100644 --- a/Assets/MyGame/aa/UI/Game/GameMainPanel_FishBase.cs +++ b/Assets/MyGame/aa/UI/Game/GameMainPanel_FishBase.cs @@ -3925,10 +3925,11 @@ public class GameMainPanel_FishBase : GameMainPanel_Base // ⭐ 三发锁位全空后处于"等玩家手动点击"状态 → 不自动接管(否则会和"等手动点击"的语义打架) if (_tripleLockWaitManual && IsZhanShenTripleMode()) return; - // ⭐⭐⭐ 换目标规则(当前使用:立即升级版): + // ⭐⭐⭐ 换目标规则(当前使用:只有 手动点选 / 走完路线 / 目标死亡 才换): // ① 手动锁定 → 玩家自己点的鱼,离场前一直跟,死了才换 - // ② 自动锁定,路径在可锁范围(0.1~0.9) → 保持锁定; - // 但场上出现严格更高优先级的鱼时立即切换过去 + // ② 自动锁定,路径仍在可锁范围(0.1~0.9) → 保持锁定 + // ⭐ 此时场上就算出现更高级的鱼也绝不抢,只有当前这条被打死(或被回收)后才换 + // (换的那一刻 FindAutoLockTarget 会按优先级优先选高级鱼) // ③ 自动锁定,路径离场(超出 0.1~0.9) 或 被 SuoDing 取消勾选 → 落到下面重新找目标 if (currSitData.isLock && currSitData.monCotl_Lock != null && @@ -3937,33 +3938,29 @@ public class GameMainPanel_FishBase : GameMainPanel_Base // 手动锁定:死了才转换(玩家自己点的鱼,不受白名单限制) if (currSitData.isManualLock) return; + // 目标活着且还没走完路线 → 保持锁定,不因"出现更高级的鱼"而乱换 if (IsFishPathLockable(currSitData.monCotl_Lock) && IsFishAllowedBySuoDing(currSitData.monCotl_Lock)) - { - // 当前目标仍有效且在白名单内 → 没有更高优先级目标就保持锁定,有就落到下面切换 - if (!HasHigherPriorityTarget(currSitData.monCotl_Lock)) return; - } - // 当前目标离场(超出 0.1~0.9) 或 被取消勾选(不在白名单) → 落到下面重新找目标 + return; + // 路径离场(超出 0.1~0.9) 或 被取消勾选(不在白名单) → 落到下面重新找目标 } - /* ==================== 不立即抢版本(2026-09-28 注释保留,方便回退) ==================== - // ⭐⭐⭐ 换目标规则: - // ① 手动锁定 → 玩家自己点的鱼,离场前一直跟,死了才换 - // ② 自动锁定,路径仍在可锁范围(0.1~0.9) → 保持锁定 - // ⭐ 此时场上就算出现更高级的鱼也不立刻抢,等当前这条被打死后再换 - // (那时 FindAutoLockTarget 会按优先级优先选高级鱼) - // ③ 自动锁定,路径离场(超出 0.1~0.9) 或 被 SuoDing 取消勾选 → 落到下面重新找目标 + /* ==================== 立即升级版本(2026-10-06 注释保留,方便回退) ==================== + // 目标活着时也做"优先级升级":场上出现更高优先级的鱼 → 立即抢过来锁定 + // ⚠ 这个版本会在你没打死当前鱼时就把锁定抢走,表现为"实时切换" if (currSitData.isLock && currSitData.monCotl_Lock != null && currSitData.monCotl_Lock.gameObject.activeInHierarchy) { if (currSitData.isManualLock) return; + if (IsFishPathLockable(currSitData.monCotl_Lock) && IsFishAllowedBySuoDing(currSitData.monCotl_Lock)) - return; - // 路径离场 / 不在白名单 → 重新找目标 + { + if (!HasHigherPriorityTarget(currSitData.monCotl_Lock)) return; + } } - ==================== 不立即抢版本结束 ==================== */ + ==================== 立即升级版本结束 ==================== */ // 当前锁定目标已死亡/失效 → 自动找下一个目标 MonsterContral target = FindAutoLockTarget(); diff --git a/Assets/MyGame/aa/UI/Game/Sub/SuoDing.prefab b/Assets/MyGame/aa/UI/Game/Sub/SuoDing.prefab index c944b5733..c67aa68c9 100644 --- a/Assets/MyGame/aa/UI/Game/Sub/SuoDing.prefab +++ b/Assets/MyGame/aa/UI/Game/Sub/SuoDing.prefab @@ -210,8 +210,8 @@ MonoBehaviour: m_fontMaterials: [] m_fontColor32: serializedVersion: 2 - rgba: 4281479730 - m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} m_enableVertexGradient: 0 m_colorMode: 3 m_fontColorGradient: @@ -228,8 +228,8 @@ MonoBehaviour: m_faceColor: serializedVersion: 2 rgba: 4294967295 - m_fontSize: 24 - m_fontSizeBase: 24 + m_fontSize: 31.32 + m_fontSizeBase: 31.32 m_fontWeight: 400 m_enableAutoSizing: 0 m_fontSizeMin: 18 @@ -988,18 +988,18 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6159534244263082863} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 4305826225048651879} - m_Father: {fileID: 8397583342337227981} + m_Father: {fileID: 7631497657104308255} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 267, y: 269} - m_SizeDelta: {x: 160, y: 63.3973} + m_AnchoredPosition: {x: 267, y: 259} + m_SizeDelta: {x: 232, y: 67} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &798723080874069159 CanvasRenderer: @@ -1029,8 +1029,8 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 + m_Sprite: {fileID: 21300000, guid: 884427a03d5125f4ea6033ca161d98df, type: 3} + m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 @@ -1109,18 +1109,18 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6591561198047952787} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 5390884768536855454} - m_Father: {fileID: 8397583342337227981} + m_Father: {fileID: 7631497657104308255} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 269} - m_SizeDelta: {x: 160, y: 63.3973} + m_AnchoredPosition: {x: 0, y: 259} + m_SizeDelta: {x: 232, y: 67} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &6320832002482700212 CanvasRenderer: @@ -1150,8 +1150,8 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 + m_Sprite: {fileID: 21300000, guid: 884427a03d5125f4ea6033ca161d98df, type: 3} + m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 @@ -1298,9 +1298,12 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 31455bfe456b95244ad1179b3dd07fa7, type: 3} m_Name: m_EditorClassIdentifier: + BossFlag: {fileID: 0} sprite_image: {fileID: 2570669243713776960} tMP_nameText: {fileID: 740162329038859501} tMP_Mult: {fileID: 9199189622884582188} + nameText: {fileID: 0} + multText: {fileID: 0} roomFishDetailConfig: type: 0 fishNumber: @@ -1404,11 +1407,11 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 8397583342337227981} + m_Father: {fileID: 7631497657104308255} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -470.00003, y: -192.50002} + m_AnchoredPosition: {x: -470.00003, y: -202.50002} m_SizeDelta: {x: 202, y: 319} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &9156163814954783210 @@ -1524,8 +1527,8 @@ MonoBehaviour: m_fontMaterials: [] m_fontColor32: serializedVersion: 2 - rgba: 4281479730 - m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} m_enableVertexGradient: 0 m_colorMode: 3 m_fontColorGradient: @@ -1542,8 +1545,8 @@ MonoBehaviour: m_faceColor: serializedVersion: 2 rgba: 4294967295 - m_fontSize: 24 - m_fontSizeBase: 24 + m_fontSize: 31.32 + m_fontSizeBase: 31.32 m_fontWeight: 400 m_enableAutoSizing: 0 m_fontSizeMin: 18 @@ -1617,9 +1620,6 @@ RectTransform: m_Children: - {fileID: 7631497657104308255} - {fileID: 5434431711328695294} - - {fileID: 7691104739120218253} - - {fileID: 5938599548425996449} - - {fileID: 3351060656275957879} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} @@ -1809,6 +1809,9 @@ RectTransform: - {fileID: 5140083223186328077} - {fileID: 6051004391025610183} - {fileID: 3259878258162517814} + - {fileID: 7691104739120218253} + - {fileID: 5938599548425996449} + - {fileID: 3351060656275957879} m_Father: {fileID: 8397583342337227981} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5}