示例#1
0
    /// <summary>
    /// 创建卡片
    /// </summary>
    /// <param name="position"></param>
    /// <param name="itemType"></param>
    /// <param name="objContainer"></param>
    /// <returns></returns>
    public GameObject CreateCardItem(int position, ItemMiniGameDebateCardCpt.DebateCardTypeEnun itemType, GameObject objContainer)
    {
        GameObject    objItem = Instantiate(objContainer, objDebateCardModel);
        RectTransform rtfItem = (RectTransform)objItem.transform;

        //初始默认不可点击
        ItemMiniGameDebateCardCpt cardItem = objItem.GetComponent <ItemMiniGameDebateCardCpt>();

        cardItem.ClosePointerListener();
        //设置初始透明度
        CanvasGroup cgItem = objItem.GetComponent <CanvasGroup>();

        cgItem.alpha = 0;

        if (objContainer == objUserDebateCardContainer)
        {
            cardItem.SetData(itemType, 1);
            rtfItem
            .DOLocalMoveY(120, 1)
            .From()
            .SetEase(Ease.OutBack)
            .SetDelay(position * 0.2f)
            .OnStart(
                delegate()
            {
                cgItem.alpha = 1;
                AudioHandler.Instance.PlaySound(AudioSoundEnum.GetCard);
            })
            .OnComplete(
                delegate()
            {
                cardItem.OpenPointerListener();
            });
            miniGameData.listUserCard.Add(cardItem);
        }
        else if (objContainer == objEnemyDebateCardContainer)
        {
            cardItem.SetData(itemType, 2);
            rtfItem
            .DOLocalMoveY(120, 1)
            .From()
            .SetEase(Ease.OutBack)
            .SetDelay(position * 0.2f)
            .OnStart(
                delegate()
            {
                cgItem.alpha = 1;
            })
            .OnComplete(
                delegate()
            {
                cardItem.OpenPointerListener();
            });
            miniGameData.listEnemyCard.Add(cardItem);
        }
        return(objItem);
    }
示例#2
0
 /// <summary>
 /// 创建卡片集合
 /// </summary>
 /// <param name="listUserDebate"></param>
 /// <param name="listEnemyDebate"></param>
 public void CreateCardItemList(List <ItemMiniGameDebateCardCpt.DebateCardTypeEnun> listUserDebate, List <ItemMiniGameDebateCardCpt.DebateCardTypeEnun> listEnemyDebate)
 {
     for (int i = 0; i < listUserDebate.Count; i++)
     {
         ItemMiniGameDebateCardCpt.DebateCardTypeEnun itemType = listUserDebate[i];
         GameObject objItem = CreateCardItem(i, itemType, objUserDebateCardContainer);
     }
     for (int i = 0; i < listEnemyDebate.Count; i++)
     {
         ItemMiniGameDebateCardCpt.DebateCardTypeEnun itemType = listEnemyDebate[i];
         GameObject objItem = CreateCardItem(i, itemType, objEnemyDebateCardContainer);
     }
 }
示例#3
0
    /// <summary>
    /// 检测胜利者
    /// </summary>
    /// <param name="userCard"></param>
    /// <param name="enemyCard"></param>
    /// <returns></returns>
    public void CheckCombatWinner(
        ItemMiniGameDebateCardCpt userCard, ItemMiniGameDebateCardCpt enemyCard,
        out ItemMiniGameDebateCardCpt winnerCard, out ItemMiniGameDebateCardCpt loserCard)
    {
        ItemMiniGameDebateCardCpt.DebateCardTypeEnun userCardType  = userCard.debateCardType;
        ItemMiniGameDebateCardCpt.DebateCardTypeEnun enemyCardType = enemyCard.debateCardType;
        int result = (int)userCardType - (int)enemyCardType;

        if (result == -1 || result == 2)
        {
            winnerCard = userCard;
            loserCard  = enemyCard;
        }
        else if (result == 0)
        {
            winnerCard = null;
            loserCard  = null;
        }
        else
        {
            winnerCard = enemyCard;
            loserCard  = userCard;
        }
    }