//建立圖格鍊(僅回傳一個Enum List) //[param] isCover = 是否覆蓋儲存至共用圖格鍊 //public List<ElementImageType> BuildElementList(bool isCover) //{ // List<ElementImageType> _sourceList = new List<ElementImageType>(); //來源列表(抽取用) // List<ElementImageType> _outputList = new List<ElementImageType>(); //輸出列表 // for (int i = 0; i < elementAttribute.m_data.Count; i++) //遍歷所有種類圖格 // { // for (int j = 0; j < elementAttribute.m_data[i].amount; j++) //照各種類之設定數量重複執行 // { // _sourceList.Add(elementAttribute.m_data[i].imgType); // } // } // RandomExtract(_sourceList, ref _outputList); //打亂排序 // //TestMessageScript<ElementImageType>.PrintListElements("[BuildElementList]", _outputList); // if (isCover) defaultElementChain = _outputList; //覆蓋儲存至共用圖格鍊 // return _outputList; //} //圖格動畫撥放 //[param] animationType = 動畫類型 , targetPosList = 指定撥放動畫的座標圖格 , onOff = 開關 public void PlayElementAnimation(ElementAnimationType animationType, List <Vector2> targetPosList, bool onOff) { ElementAnimationEventArgs e = new ElementAnimationEventArgs(animationType, targetPosList, onOff); if (ElementAnimationPlayed != null) { ElementAnimationPlayed.Invoke(this, e); } }
//圖格動畫撥放事件 private void PlayElementAnimation(object sender, ElementAnimationEventArgs eventArgs) { if (!this.gameObject.activeSelf) { return; //若物件為隱藏狀態時, 直接結束程序 } if (pointerElement == null) { return; //若尚未設定圖格物件, 直接結束程序 } if (eventArgs.targetPosList != null && !eventArgs.targetPosList.Contains(coordinate)) { return; //若非作用座標的圖格, 直接結束程序(座標列表為null, 直接視為套用所有座標) } pointerElement.PlayAnimation(eventArgs.animationType, eventArgs.onOff); }