diff --git a/assets/bundles/battleGame/prefab/格子锁.prefab b/assets/bundles/battleGame/prefab/格子锁.prefab index 5ea0919..576d73a 100644 --- a/assets/bundles/battleGame/prefab/格子锁.prefab +++ b/assets/bundles/battleGame/prefab/格子锁.prefab @@ -26,22 +26,19 @@ }, { "__id__": 14 + }, + { + "__id__": 32 } ], "_active": true, "_components": [ { - "__id__": 20 - }, - { - "__id__": 22 - }, - { - "__id__": 24 + "__id__": 38 } ], "_prefab": { - "__id__": 26 + "__id__": 40 }, "_lpos": { "__type__": "cc.Vec3", @@ -74,7 +71,7 @@ }, { "__type__": "cc.Node", - "_name": "锁定", + "_name": "bg", "_objFlags": 0, "__editorExtras__": {}, "_parent": { @@ -95,7 +92,7 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": -45.1845703125, + "x": 0, "y": 0, "z": 0 }, @@ -108,8 +105,8 @@ }, "_lscale": { "__type__": "cc.Vec3", - "x": 1, - "y": 1, + "x": 1.2, + "y": 1.2, "z": 1 }, "_mobility": 0, @@ -136,8 +133,8 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 42, - "height": 45 + "width": 96, + "height": 68 }, "_anchorPoint": { "__type__": "cc.Vec2", @@ -148,7 +145,7 @@ }, { "__type__": "cc.CompPrefabInfo", - "fileId": "52BfiQtHBLk5IrGlqyFIeP" + "fileId": "eeGzSh9ttB14faENR7nkL1" }, { "__type__": "cc.Sprite", @@ -173,7 +170,7 @@ "a": 255 }, "_spriteFrame": { - "__uuid__": "201e9a69-4d94-4182-b893-c972f15ee76e@f9941", + "__uuid__": "0b9461e4-38ea-4e13-b133-f28d07bc5178@f9941", "__expectedType__": "cc.SpriteFrame" }, "_type": 0, @@ -193,7 +190,7 @@ }, { "__type__": "cc.CompPrefabInfo", - "fileId": "50cCFcSOJGPbVuqJkpsr7c" + "fileId": "85jSymFOxH47oesupv6Cs1" }, { "__type__": "cc.PrefabInfo", @@ -203,14 +200,14 @@ "asset": { "__id__": 0 }, - "fileId": "39f4GsgNtNsq8/wCLq3tPA", + "fileId": "9fCGAPLiROlKwMBu5E73hC", "instance": null, "targetOverrides": null, "nestedPrefabInstanceRoots": null }, { "__type__": "cc.Node", - "_name": "num", + "_name": "box", "_objFlags": 0, "__editorExtras__": {}, "_parent": { @@ -231,8 +228,8 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": -5.5, - "y": 0, + "x": 0, + "y": 8, "z": 0 }, "_lrot": { @@ -272,8 +269,8 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 37.369140625, - "height": 54.4 + "width": 48, + "height": 39 }, "_anchorPoint": { "__type__": "cc.Vec2", @@ -284,10 +281,10 @@ }, { "__type__": "cc.CompPrefabInfo", - "fileId": "a7rWzpiMxPDrFoMqw0xD9h" + "fileId": "3c7wrtDV1CJ6wben99cdUf" }, { - "__type__": "cc.Label", + "__type__": "cc.Sprite", "_name": "", "_objFlags": 0, "__editorExtras__": {}, @@ -308,51 +305,28 @@ "b": 255, "a": 255 }, - "_string": "32", - "_horizontalAlign": 1, - "_verticalAlign": 1, - "_actualFontSize": 30, - "_fontSize": 30, - "_fontFamily": "Arial", - "_lineHeight": 40, - "_overflow": 0, - "_enableWrapText": true, - "_font": null, - "_isSystemFontUsed": true, - "_spacingX": 0, - "_isItalic": false, - "_isBold": true, - "_isUnderline": false, - "_underlineHeight": 2, - "_cacheMode": 0, - "_enableOutline": true, - "_outlineColor": { - "__type__": "cc.Color", - "r": 213, - "g": 123, - "b": 85, - "a": 255 - }, - "_outlineWidth": 2, - "_enableShadow": false, - "_shadowColor": { - "__type__": "cc.Color", - "r": 0, - "g": 0, - "b": 0, - "a": 255 + "_spriteFrame": { + "__uuid__": "c284dbf4-a1a8-413d-8d01-7f5fdfaa15dd@f9941", + "__expectedType__": "cc.SpriteFrame" }, - "_shadowOffset": { + "_type": 0, + "_fillType": 0, + "_sizeMode": 1, + "_fillCenter": { "__type__": "cc.Vec2", - "x": 2, - "y": 2 + "x": 0, + "y": 0 }, - "_shadowBlur": 2, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, "_id": "" }, { "__type__": "cc.CompPrefabInfo", - "fileId": "b8MyhW1LFDR7LJQVwPdPvM" + "fileId": "0bX4WRHEZG/ruUMZuQIumt" }, { "__type__": "cc.PrefabInfo", @@ -362,35 +336,92 @@ "asset": { "__id__": 0 }, - "fileId": "a0kjvwE+JJI7QzpIQAs4CB", + "fileId": "1elxSYwQBKopyaVp9y4v2w", "instance": null, "targetOverrides": null, "nestedPrefabInstanceRoots": null }, { "__type__": "cc.Node", - "_name": "box", + "_name": "lock", "_objFlags": 0, "__editorExtras__": {}, "_parent": { "__id__": 1 }, + "_children": [ + { + "__id__": 15 + }, + { + "__id__": 21 + } + ], + "_active": true, + "_components": [ + { + "__id__": 27 + }, + { + "__id__": 29 + } + ], + "_prefab": { + "__id__": 31 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -4.059, + "y": -15, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.Node", + "_name": "锁定", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 14 + }, "_children": [], "_active": true, "_components": [ { - "__id__": 15 + "__id__": 16 }, { - "__id__": 17 + "__id__": 18 } ], "_prefab": { - "__id__": 19 + "__id__": 20 }, "_lpos": { "__type__": "cc.Vec3", - "x": 37.1845703125, + "x": -30.369140625, "y": 0, "z": 0 }, @@ -423,16 +454,16 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 14 + "__id__": 15 }, "_enabled": true, "__prefab": { - "__id__": 16 + "__id__": 17 }, "_contentSize": { "__type__": "cc.Size", - "width": 48, - "height": 39 + "width": 42, + "height": 45 }, "_anchorPoint": { "__type__": "cc.Vec2", @@ -443,7 +474,7 @@ }, { "__type__": "cc.CompPrefabInfo", - "fileId": "3c7wrtDV1CJ6wben99cdUf" + "fileId": "52BfiQtHBLk5IrGlqyFIeP" }, { "__type__": "cc.Sprite", @@ -451,11 +482,11 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 14 + "__id__": 15 }, "_enabled": true, "__prefab": { - "__id__": 18 + "__id__": 19 }, "_customMaterial": null, "_srcBlendFactor": 2, @@ -468,7 +499,7 @@ "a": 255 }, "_spriteFrame": { - "__uuid__": "c284dbf4-a1a8-413d-8d01-7f5fdfaa15dd@f9941", + "__uuid__": "201e9a69-4d94-4182-b893-c972f15ee76e@f9941", "__expectedType__": "cc.SpriteFrame" }, "_type": 0, @@ -488,7 +519,7 @@ }, { "__type__": "cc.CompPrefabInfo", - "fileId": "0bX4WRHEZG/ruUMZuQIumt" + "fileId": "50cCFcSOJGPbVuqJkpsr7c" }, { "__type__": "cc.PrefabInfo", @@ -498,50 +529,100 @@ "asset": { "__id__": 0 }, - "fileId": "1elxSYwQBKopyaVp9y4v2w", + "fileId": "39f4GsgNtNsq8/wCLq3tPA", "instance": null, "targetOverrides": null, "nestedPrefabInstanceRoots": null }, + { + "__type__": "cc.Node", + "_name": "num", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 14 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 22 + }, + { + "__id__": 24 + } + ], + "_prefab": { + "__id__": 26 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": -19.369140625, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, { "__type__": "cc.UITransform", "_name": "", "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 1 + "__id__": 21 }, "_enabled": true, "__prefab": { - "__id__": 21 + "__id__": 23 }, "_contentSize": { "__type__": "cc.Size", - "width": 142.369140625, - "height": 68 + "width": 70.73828125, + "height": 54.4 }, "_anchorPoint": { "__type__": "cc.Vec2", - "x": 0.5, + "x": 0, "y": 0.5 }, "_id": "" }, { "__type__": "cc.CompPrefabInfo", - "fileId": "85sTDvKSNMXZkiAHpfcCpx" + "fileId": "a7rWzpiMxPDrFoMqw0xD9h" }, { - "__type__": "cc.Sprite", + "__type__": "cc.Label", "_name": "", "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 1 + "__id__": 21 }, "_enabled": true, "__prefab": { - "__id__": 23 + "__id__": 25 }, "_customMaterial": null, "_srcBlendFactor": 2, @@ -553,28 +634,92 @@ "b": 255, "a": 255 }, - "_spriteFrame": { - "__uuid__": "0b9461e4-38ea-4e13-b133-f28d07bc5178@f9941", - "__expectedType__": "cc.SpriteFrame" + "_string": "4096", + "_horizontalAlign": 1, + "_verticalAlign": 1, + "_actualFontSize": 30, + "_fontSize": 30, + "_fontFamily": "Arial", + "_lineHeight": 40, + "_overflow": 0, + "_enableWrapText": true, + "_font": null, + "_isSystemFontUsed": true, + "_spacingX": 0, + "_isItalic": false, + "_isBold": true, + "_isUnderline": false, + "_underlineHeight": 2, + "_cacheMode": 0, + "_enableOutline": true, + "_outlineColor": { + "__type__": "cc.Color", + "r": 213, + "g": 123, + "b": 85, + "a": 255 }, - "_type": 0, - "_fillType": 0, - "_sizeMode": 0, - "_fillCenter": { + "_outlineWidth": 2, + "_enableShadow": false, + "_shadowColor": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_shadowOffset": { "__type__": "cc.Vec2", - "x": 0, - "y": 0 + "x": 2, + "y": 2 }, - "_fillStart": 0, - "_fillRange": 0, - "_isTrimmedMode": true, - "_useGrayscale": false, - "_atlas": null, + "_shadowBlur": 2, "_id": "" }, { "__type__": "cc.CompPrefabInfo", - "fileId": "715KNuSXlNAabmEpf0YdgP" + "fileId": "b8MyhW1LFDR7LJQVwPdPvM" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "a0kjvwE+JJI7QzpIQAs4CB", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 14 + }, + "_enabled": true, + "__prefab": { + "__id__": 28 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 102.73828125, + "height": 100 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "fcv7Wo3AxPX6YsufpIkmuU" }, { "__type__": "cc.Layout", @@ -582,11 +727,11 @@ "_objFlags": 0, "__editorExtras__": {}, "node": { - "__id__": 1 + "__id__": 14 }, "_enabled": true, "__prefab": { - "__id__": 25 + "__id__": 30 }, "_resizeMode": 1, "_layoutType": 1, @@ -596,11 +741,11 @@ "height": 40 }, "_startAxis": 0, - "_paddingLeft": 5, - "_paddingRight": 10, + "_paddingLeft": 0, + "_paddingRight": 0, "_paddingTop": 0, "_paddingBottom": 0, - "_spacingX": 0, + "_spacingX": -10, "_spacingY": 0, "_verticalDirection": 1, "_horizontalDirection": 0, @@ -612,7 +757,181 @@ }, { "__type__": "cc.CompPrefabInfo", - "fileId": "70ZyhmoIhBg4ERUGYZrVVb" + "fileId": "40ylG/THxAkIObTgh+/bGZ" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "00Rgp16ypAhIfVM0NEnr1t", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.Node", + "_name": "five", + "_objFlags": 0, + "__editorExtras__": {}, + "_parent": { + "__id__": 1 + }, + "_children": [], + "_active": true, + "_components": [ + { + "__id__": 33 + }, + { + "__id__": 35 + } + ], + "_prefab": { + "__id__": 37 + }, + "_lpos": { + "__type__": "cc.Vec3", + "x": 37.075, + "y": 24.626, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_mobility": 0, + "_layer": 33554432, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 32 + }, + "_enabled": true, + "__prefab": { + "__id__": 34 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 22, + "height": 23 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "f1QjlLcHlJ1K3GBOYmXjMN" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 32 + }, + "_enabled": true, + "__prefab": { + "__id__": 36 + }, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 255, + "g": 255, + "b": 255, + "a": 255 + }, + "_spriteFrame": null, + "_type": 0, + "_fillType": 0, + "_sizeMode": 1, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "bbtyOKny5KSrImNP+Zdigp" + }, + { + "__type__": "cc.PrefabInfo", + "root": { + "__id__": 1 + }, + "asset": { + "__id__": 0 + }, + "fileId": "96svdA705I/bJwg2GxPH7W", + "instance": null, + "targetOverrides": null, + "nestedPrefabInstanceRoots": null + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "__editorExtras__": {}, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 39 + }, + "_contentSize": { + "__type__": "cc.Size", + "width": 96, + "height": 68 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "85sTDvKSNMXZkiAHpfcCpx" }, { "__type__": "cc.PrefabInfo", diff --git a/assets/script/battle/map/legacy/MapAreaUnlock.ts b/assets/script/battle/map/legacy/MapAreaUnlock.ts index 3169e78..2097bab 100644 --- a/assets/script/battle/map/legacy/MapAreaUnlock.ts +++ b/assets/script/battle/map/legacy/MapAreaUnlock.ts @@ -1,4 +1,4 @@ -import { Label, Layout, Node, Sprite, UITransform, Vec3, isValid } from 'cc'; +import { Label, Node, UITransform, Vec3, isValid } from 'cc'; import { SpriteLoad } from 'db://assets/mx/components/SpriteLoad'; import { TableNames } from '../../../game/ConfigTableData'; import { GBundle, GPath } from '../../../game/ConfigRes'; @@ -9,14 +9,18 @@ import { MapGrid } from './MapGrid'; const LOCK_TIP_PATH = 'prefab/'; /** 解锁条件气泡预制体名 */ const LOCK_TIP_NAME = '格子锁'; -/** 预制体上显示数字的子节点名 */ +/** 锁与数字容器 */ +const LOCK_TIP_LOCK = 'lock'; +/** 预制体上显示数字的子节点名(在 lock 下) */ const LOCK_TIP_NUM = 'num'; -/** 动态条件图标子节点名前缀 */ -const LOCK_TIP_COND = 'cond_'; /** 三选一宝箱提示子节点 */ const LOCK_TIP_BOX = 'box'; -/** 条件图标占位尺寸(与 icons/img 五行图接近) */ -const COND_ICON_SIZE = 22; +/** 五行属性图标子节点 */ +const LOCK_TIP_FIVE = 'five'; +/** 无宝箱时 lock 的本地 Y */ +const LOCK_Y_NO_BOX = 0; +/** 有宝箱时 lock 的本地 Y */ +const LOCK_Y_WITH_BOX = -15; /** 气泡世界坐标转本地时复用 */ const _tipWorld = new Vec3(); /** 气泡本地坐标复用 */ @@ -297,19 +301,18 @@ export class MapAreaUnlock { this._tipCamps.push(0); continue; } - const numNode = tip.getChildByName(LOCK_TIP_NUM); - const label = numNode?.getComponent(Label); + const lock = tip.getChildByName(LOCK_TIP_LOCK); + const label = lock?.getChildByName(LOCK_TIP_NUM)?.getComponent(Label); if (!label) { - console.warn('[MapAreaUnlock] 格子锁缺少 num Label'); + console.warn('[MapAreaUnlock] 格子锁缺少 lock/num Label'); tip.active = false; this._tipCamps.push(0); continue; } label.string = String(jobs[i].num); - this._syncCondIcons(tip, jobs[i].heroType); + this._syncFiveIcon(tip, jobs[i].heroType); const nextCount = this.completedCount(jobs[i].camp) + 1; this._syncBoxVisible(tip, this._isSelectTriggerCount(nextCount)); - tip.getComponent(Layout)?.updateLayout(); this._placeTipCenter(tip, jobs[i].grids); tip.active = true; this._tipCamps.push(jobs[i].camp); @@ -321,7 +324,7 @@ export class MapAreaUnlock { } /** - * 下次解锁是否触发三选一时显示 box。 + * 下次解锁是否触发三选一时显示 box,并调整 lock 的 Y。 * @param tip 格子锁气泡 * @param show 是否显示 */ @@ -332,6 +335,13 @@ export class MapAreaUnlock { return; } box.active = show; + const lock = tip.getChildByName(LOCK_TIP_LOCK); + if (!lock) { + console.warn('[MapAreaUnlock] 格子锁缺少 lock'); + return; + } + const pos = lock.position; + lock.setPosition(pos.x, show ? LOCK_Y_WITH_BOX : LOCK_Y_NO_BOX, pos.z); } /** @@ -349,67 +359,31 @@ export class MapAreaUnlock { } /** - * 同步解锁条件五行图标:类型 0 不加载;1–5 各挂一张对应图标(锁与数字之间)。 + * 同步 five 五行图标:类型 0 隐藏;1–5 显示并加载对应图标。 * @param tip 格子锁气泡 * @param heroType 当前随机到的 Hero.herotype;0 为无属性限制 */ - private _syncCondIcons(tip: Node, heroType: number): void { - this._clearCondIcons(tip); - const names = this._condIconNames(heroType); - if (names.length <= 0) return; - const numNode = tip.getChildByName(LOCK_TIP_NUM); - let insertAt = numNode ? numNode.getSiblingIndex() : tip.children.length; - for (let i = 0; i < names.length; i++) { - const icon = this._makeCondIcon(names[i]); - tip.insertChild(icon, insertAt); - insertAt++; + private _syncFiveIcon(tip: Node, heroType: number): void { + const five = tip.getChildByName(LOCK_TIP_FIVE); + if (!five) { + console.warn('[MapAreaUnlock] 格子锁缺少 five'); + return; } - } - - /** - * 当前条件需要展示的五行图标名列表;无限制返回空。 - * @param heroType Hero.herotype - */ - private _condIconNames(heroType: number): string[] { const type = Math.floor(Number(heroType) || 0); - if (type <= 0) return []; + if (type <= 0) { + five.active = false; + return; + } const name = HERO_TYPE_ICON[type]; if (!name) { - console.warn('[MapAreaUnlock] 未知解锁 herotype,无法加载条件图标', type); - return []; - } - return [name]; - } - - /** - * 创建单张条件图标节点(SpriteLoad 从 icons 包加载)。 - * @param name 金/木/水/火/土 - */ - private _makeCondIcon(name: string): Node { - const node = new Node(LOCK_TIP_COND + name); - node.layer = 33554432; - const ut = node.addComponent(UITransform); - ut.setContentSize(COND_ICON_SIZE, COND_ICON_SIZE); - const sp = node.addComponent(Sprite); - sp.sizeMode = Sprite.SizeMode.TRIMMED; - node.addComponent(SpriteLoad).setSprite(GPath.ElementAttr(name), GBundle.Items); - return node; - } - - /** - * 清除气泡上动态挂的条件图标(池化复用前必须清干净)。 - * @param tip 格子锁气泡 - */ - private _clearCondIcons(tip: Node): void { - if (!tip?.isValid) return; - const children = tip.children; - for (let i = children.length - 1; i >= 0; i--) { - const child = children[i]; - if (!child?.isValid) continue; - if (child.name.indexOf(LOCK_TIP_COND) !== 0) continue; - child.removeFromParent(); - child.destroy(); + console.warn('[MapAreaUnlock] 未知解锁 herotype,无法加载属性图标', type); + five.active = false; + return; } + five.active = true; + let sl = five.getComponent(SpriteLoad); + if (!sl) sl = five.addComponent(SpriteLoad); + sl.setSprite(GPath.ElementAttr(name), GBundle.Items); } /** @@ -529,7 +503,8 @@ export class MapAreaUnlock { for (let i = 0; i < this._tips.length; i++) { const tip = this._tips[i]; if (!tip || !isValid(tip)) continue; - this._clearCondIcons(tip); + const five = tip.getChildByName(LOCK_TIP_FIVE); + if (five?.isValid) five.active = false; if (tip['resKey']) gg.res.putNode(tip); else tip.destroy(); } diff --git a/docs/方案-局内Battlebuff三选一.md b/docs/方案-局内Battlebuff三选一.md index 4e1bf32..fc955dd 100644 --- a/docs/方案-局内Battlebuff三选一.md +++ b/docs/方案-局内Battlebuff三选一.md @@ -12,7 +12,8 @@ | 玩家 | `UIID.PopSelect`(`pauseBattle`) | | AI | `BattleBuffSelectService.autoPickOne`(无 UI) | | 携带 | `BattleBuffCarryStore`(开战 clear,不写跨天存档) | -| box | 格子锁 tip 子节点 `box`:下一次解锁次数在 Const27 时显示 | +| box | 格子锁 tip 子节点 `box`:下一次解锁次数在 Const27 时显示;有 box 时 `lock.y=-15`,否则 `0` | +| five | 格子锁 tip 子节点 `five`:解锁条件有五行时显示对应金木水火土图标,无则隐藏 | ## 2. 抽取