Spine動畫局部換裝(切換武器)

最近在用spine動畫做微信小遊戲,涉及到角色的武器升級後會切換到另一形態,就研究了一下spine的換裝,搜了一些資料發現專門介紹的資料有點少,而且spine官網上說的也不太清楚,好在最後搞出來了,記錄一下,以後用的到,廢話不多說,如圖:

需要切換人物手中的武器,

var temp=cc.find('Canvas/temp');
temp.getComponent(sp.Skeleton).setSkin('lv5');    //設置皮膚
var  skeleton = temp.getComponent(sp.Skeleton);
var  slotName = 'wq2';                             //插槽的名字
var  targetSkinName ='lv5';                        //皮膚的名字
var  targetAttaName = "role/wq6";                  //武器名字(掛件)
var  slot = skeleton.findSlot(slotName);           //先獲取插槽
var  skeletonData = skeleton.skeletonData.getRuntimeData();//獲取 Spine Runtime 使用的 SkeletonData
var  slotIndex = skeletonData.findSlotIndex(slotName);   //獲取插槽的index
var  skin = skeletonData.findSkin(targetSkinName);       //找到對應的皮膚
var  atta = skin.getAttachment(slotIndex, targetAttaName); //獲取掛件
console.log('change cloth:', slot,skin, slotIndex, atta);
slot.setAttachment(atta);//設置掛件

完事(#^.^#)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章