浏览代码

优化选皮肤

baowen 3 周之前
父节点
当前提交
4e83e093a3
共有 2 个文件被更改,包括 10 次插入5 次删除
  1. 2 1
      assets/editor/script/SelectSkinPanel.ts
  2. 8 4
      assets/editor/script/SkinItem.ts

+ 2 - 1
assets/editor/script/SelectSkinPanel.ts

@@ -49,6 +49,7 @@ export class SelectSkinPanel extends Component {
     {
     {
         this.node.active = false
         this.node.active = false
         EventMgr.ins.dispatchEvent("regenerate")
         EventMgr.ins.dispatchEvent("regenerate")
+
     }
     }
 
 
     createItem(key: number,spineOffset:Vec2) {
     createItem(key: number,spineOffset:Vec2) {
@@ -170,7 +171,7 @@ export class SelectSkinPanel extends Component {
         {
         {
             this._items.forEach(element => {
             this._items.forEach(element => {
                 if(element !== item)
                 if(element !== item)
-                element.getComponent(SkinItem).setSelevtFrame(false)
+                element.getComponent(SkinItem).setSelevtFrame()
             });
             });
         }
         }
     }
     }

+ 8 - 4
assets/editor/script/SkinItem.ts

@@ -1,5 +1,5 @@
 import { _decorator, Button, Component, instantiate, Node, Prefab, sp, Sprite, Vec2, Vec3 } from 'cc';
 import { _decorator, Button, Component, instantiate, Node, Prefab, sp, Sprite, Vec2, Vec3 } from 'cc';
-import {Skin } from '../../script/Manager/LocalDataMgr';
+import {allSkinList, Skin } from '../../script/Manager/LocalDataMgr';
 import { LayerMgr } from '../../script/Manager/LayerMgr';
 import { LayerMgr } from '../../script/Manager/LayerMgr';
 import EventMgr from '../../script/Manager/EventMgr';
 import EventMgr from '../../script/Manager/EventMgr';
 const { ccclass, property } = _decorator;
 const { ccclass, property } = _decorator;
@@ -31,7 +31,7 @@ export class SkinItem extends Component {
         this.skinRoot.addChild(skin)
         this.skinRoot.addChild(skin)
         skin.setPosition(Vec3.ZERO)
         skin.setPosition(Vec3.ZERO)
         skin.position = skin.position.clone().add3f(spineOffset.x,spineOffset.y,0)
         skin.position = skin.position.clone().add3f(spineOffset.x,spineOffset.y,0)
-        this.selectedSprite.node.active = isSelect
+        this.setSelevtFrame()
         this._isSelected = isSelect
         this._isSelected = isSelect
         this._key = key
         this._key = key
         this._spine = skin.getComponent(sp.Skeleton)
         this._spine = skin.getComponent(sp.Skeleton)
@@ -62,8 +62,12 @@ export class SkinItem extends Component {
         EventMgr.ins.dispatchEvent("refreshSelectFrame",this.node)
         EventMgr.ins.dispatchEvent("refreshSelectFrame",this.node)
     }
     }
 
 
-    setSelevtFrame(isShow) {
-        this.selectedSprite.node.active = isShow
+    setSelevtFrame() {
+        this.selectedSprite.node.active = this._isSelected
+        if(Skin.skinData._lastSelectSpinePath !== allSkinList[this._key] && Skin.skinData.singleSelect == "true")
+        {
+            this.selectedSprite.node.active = false
+        }
     }
     }
 }
 }