Exemple #1
0
    //建立圖格鍊(僅回傳一個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);
        }
    }
Exemple #2
0
 //圖格動畫撥放事件
 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);
 }