Esempio n. 1
0
        public bool removeCard(BattleCard battle_card, bool is_unuse_card)
        {
            for (int idx = 0; idx < m_BattleCards.Length; idx++)
            {
                if (m_BattleCards[idx] == battle_card)
                {
                    m_CardCount--;
                    for (; idx < m_CardCount; idx++)
                    {
                        m_BattleCards[idx] = m_BattleCards[idx + 1];
                        m_BattleCards[idx].setPhase(BattleCard.Phase.FIELD_AREA);   // 描画位置を更新
                    }
                    m_BattleCards[idx] = null;

                    if (is_unuse_card)
                    {
                        battle_card.setPhase(BattleCard.Phase.UNUSED);
                        battle_card.m_ViewControl.gameObject.SetActive(false);
                    }
                    return(true);
                }
            }

            return(false);
        }
Esempio n. 2
0
 public void setCardToNextArea(int index, BattleCard battle_card)
 {
     if (m_NextArea != null)
     {
         removeCard(battle_card, false);
         m_NextArea.setCard(index, battle_card);
         battle_card.setPhase(BattleCard.Phase.NEXT_AREA);
     }
 }
Esempio n. 3
0
 public void addCard(BattleCard battle_card)
 {
     if (m_CardCount < m_BattleCards.Length)
     {
         battle_card.setPhase(BattleCard.Phase.IN_HAND);
         m_BattleCards[m_CardCount] = battle_card;
         m_CardCount++;
     }
 }
Esempio n. 4
0
    // Update is called once per frame
    void Update()
    {
        if (m_HandArea != null)
        {
            for (int idx = 0; idx < m_HandArea.getCardMaxCount(); idx++)
            {
                BattleScene.BattleCard battle_card = m_HandArea.getCard(idx);
                if (battle_card != null)
                {
                    if (battle_card.getChangeCause() == BattleScene.BattleCard.ChangeCause.NEW_CARD)
                    {
                        battle_card.resetChageCause();
                        battle_card.setPhase(BattleScene.BattleCard.Phase.HAND_AREA);
                        battle_card.m_ViewControl.transform.SetParent(getBattleCardTransform(idx, TransformType.NEXT_AREA), false);
                        battle_card.m_ViewControl.transform.localPosition = Vector3.zero;
                        battle_card.m_ViewControl.transform.localRotation = Quaternion.identity;
                        battle_card.m_ViewControl.transform.localScale    = Vector3.one;
                    }

                    if (battle_card.isChangePhase())
                    {
                        float hold_time = battle_card.m_HoldMoveTime;
                        battle_card.resetChangePhase();
                        battle_card.m_ViewControl.gameObject.SetActive(true);
                        battle_card.m_ViewControl.setSnapToParent(getBattleCardTransform(idx, TransformType.HAND_AREA), 0.1f, hold_time);
                    }
                }
            }
        }

        if (m_NextArea != null)
        {
            for (int idx = 0; idx < m_NextArea.getCardMaxCount(); idx++)
            {
                BattleScene.BattleCard battle_card = m_NextArea.getCard(idx);
                if (battle_card != null)
                {
                    if (battle_card.getChangeCause() == BattleScene.BattleCard.ChangeCause.NEW_CARD)
                    {
                        battle_card.resetChageCause();
                        battle_card.setPhase(BattleScene.BattleCard.Phase.NEXT_AREA);
                        battle_card.m_ViewControl.transform.SetParent(getBattleCardTransform(idx, TransformType.APPEAR_AREA), false);
                        battle_card.m_ViewControl.transform.localPosition = Vector3.zero;
                        battle_card.m_ViewControl.transform.localRotation = Quaternion.identity;
                        battle_card.m_ViewControl.transform.localScale    = Vector3.one;
                    }

                    if (battle_card.isChangePhase())
                    {
                        battle_card.resetChangePhase();
                        battle_card.m_ViewControl.gameObject.SetActive(true);
                        battle_card.m_ViewControl.setSnapToParent(getBattleCardTransform(idx, TransformType.NEXT_AREA), 0.1f);
                    }
                }
            }
        }
    }
Esempio n. 5
0
        public bool addCard(BattleCard battle_card)
        {
            if (isFull() == false)
            {
                battle_card.setPhase(BattleCard.Phase.FIELD_AREA);
                m_BattleCards[m_CardCount] = battle_card;
                m_CardCount++;
                return(true);
            }

            return(false);
        }
Esempio n. 6
0
 public void removeCard(BattleCard battle_card, bool is_unuse_card)
 {
     for (int idx = 0; idx < m_BattleCards.Length; idx++)
     {
         if (m_BattleCards[idx] == battle_card)
         {
             m_BattleCards[idx] = null;
             if (is_unuse_card)
             {
                 battle_card.setPhase(BattleCard.Phase.UNUSED);
                 battle_card.m_ViewControl.gameObject.SetActive(false);
             }
             break;
         }
     }
 }
Esempio n. 7
0
        public void setCard(int index, BattleCard battle_card)
        {
            if (m_BattleCards[index] != null)
            {
                int free_index = -1;
                int dist_min   = m_BattleCards.Length;
                for (int idx = 0; idx < m_BattleCards.Length; idx++)
                {
                    if (m_BattleCards[idx] == null)
                    {
                        int dist = Mathf.Abs(idx - index);
                        if (dist < dist_min)
                        {
                            dist_min   = dist;
                            free_index = idx;
                        }
                    }
                }

                if (free_index >= 0)
                {
                    int step = (index > free_index) ? 1 : -1;
                    for (int idx = free_index; idx != index; idx += step)
                    {
                        m_BattleCards[idx] = m_BattleCards[idx + step];
                        m_BattleCards[idx].m_HandCardIndex = idx;
                        m_BattleCards[idx].setPhase(BattleCard.Phase.HAND_AREA);
                    }
                    m_BattleCards[index] = null;
                }
            }

            battle_card.setPhase(BattleCard.Phase.HAND_AREA);
            battle_card.m_HandCardIndex = index;
            m_BattleCards[index]        = battle_card;
        }