Пример #1
0
    public void AddHealCardToDatabase(HealCard c)
    {
        c.gameObject.name = c.CardName;
        allHealCards.Add(c.CardName, c);

        c.transform.SetParent(transform);
    }
Пример #2
0
 private void GenerateCard()
 {
     // Empty list
     // Add 2 random attack cards to list
     // Add 1/2 counter card to list
     // Add healing or no action card to list
     _generatedCardList[0] = new AttackCard(id);
     _generatedCardList[1] = new AttackCard(id);
     _generatedCardList[2] = new CounterCard(id);
     if (Utilities.IsLessThanPercentage(COUNTER_CHANCE))
     {
         _generatedCardList[3] = new CounterCard(id);
     }
     else
     {
         _generatedCardList[3] = new NoActionCard(id);
     }
     if (Utilities.IsLessThanPercentage(HEALING_CHANCE))
     {
         _generatedCardList[4] = new HealCard(id);
     }
     else
     {
         _generatedCardList[4] = new NoActionCard(id);
     }
 }
Пример #3
0
    private Card RandomHealCard()
    {
        int         value = Random.Range(0, 100);
        Card        card  = null;
        List <Temp> list  = new List <Temp>();

        for (int i = 0; i < TBL_HEAL_CARD.CountEntities; i++)
        {
            TBL_HEAL_CARD data = TBL_HEAL_CARD.GetEntity(i);
            HealCard      c    = new HealCard(data);
            list.Add(new Temp(c.percent, CardType.EnergyCard, c));
        }

        float cumulative = 0f;

        for (int i = 0; i < list.Count; i++)
        {
            cumulative += list[i].percent;
            if (value <= cumulative)
            {
                card = list[i].card;
                break;
            }
        }
        return(card);
    }
Пример #4
0
 public void CopyActionsFrom(HealCard c)
 {
     this.CardHeal        = c.CardHeal;
     this.CardName        = c.CardName;
     this.CardCost        = c.CardCost;
     this.CardDescription = c.CardDescription;
     this.Target          = c.Target;
     this.Area            = c.Area;
     this.Range           = c.Range;
     this.Effect          = c.Effect;
     this.CardDraw        = c.CardDraw;
 }
Пример #5
0
    // 힐 카드 사용
    private float UseHealCard(HealCard card)
    {
        guard = 0;

        if (Energy - card.energyCost >= 0)
        {
            AddHP(card.HPIncrease);
            AddEnergy(-card.energyCost);
        }

        return(GameSetting.HealCardTime);
    }
Пример #6
0
    public void AddHealCardToDeck(HealCard c)
    {
        //Debug.Log("AddCardToDeck: " + c.title);

        GameObject go = Instantiate(c.gameObject);

        go.GetComponent <HealCard>().CopyActionsFrom(c);
        GameObject hand = GameObject.Find("Deck");

        go.transform.SetParent(hand.transform);
        go.SetActive(false);
    }
Пример #7
0
    public void AddHealCardToDeck(string title)
    {
        if (allHealCards.ContainsKey(title) == false)
        {
            Debug.LogError("No player card with title: " + title);
            return;
        }

        HealCard c = allHealCards[title];

        AddHealCardToDeck(c);
    }
Пример #8
0
        private void SetupCardsInHands()
        {
            AttackCard.MakeCopy(Enemy1).MoveTo(Enemy1.Hand);
            AttackCard.MakeCopy(Enemy1).MoveTo(Enemy1.Hand);

            CopyCard.MakeCopy(Enemy2).MoveTo(Enemy2.Hand);


            AttackCard.MakeCopy(Friend1).MoveTo(Friend1.Hand);

            HealCard.MakeCopy(Friend2).MoveTo(Friend2.Hand);
        }
Пример #9
0
    void SetCard()
    {
        int startCount = CardSetting.AttackCardStartCount;

        while (startCount > 0)
        {
            int        random = Random.Range(0, TBL_ATTACK_CARD.CountEntities);
            AttackCard card   = new AttackCard(TBL_ATTACK_CARD.GetEntity(random));
            if (!CheckDuplicate(card))
            {
                cardList.Add(card);
                startCount--;
            }
        }

        startCount = CardSetting.EnergyCardStartCount;
        while (startCount > 0)
        {
            int        random = Random.Range(0, TBL_ENERGY_CARD.CountEntities);
            EnergyCard card   = new EnergyCard(TBL_ENERGY_CARD.GetEntity(random));
            if (!CheckDuplicate(card))
            {
                cardList.Add(card);
                startCount--;
            }
        }

        startCount = CardSetting.GuardCardStartCount;
        while (startCount > 0)
        {
            int       random = Random.Range(0, TBL_GUARD_CARD.CountEntities);
            GuardCard card   = new GuardCard(TBL_GUARD_CARD.GetEntity(random));
            if (!CheckDuplicate(card))
            {
                cardList.Add(card);
                startCount--;
            }
        }

        startCount = CardSetting.HealCardStartCount;
        while (startCount > 0)
        {
            int      random = Random.Range(0, TBL_HEAL_CARD.CountEntities);
            HealCard card   = new HealCard(TBL_HEAL_CARD.GetEntity(random));
            if (!CheckDuplicate(card))
            {
                cardList.Add(card);
                startCount--;
            }
        }

        startCount = CardSetting.MoveCardStartCount;
        while (startCount > 0)
        {
            int      random = Random.Range(0, TBL_MOVE_CARD.CountEntities);
            MoveCard card   = new MoveCard(TBL_MOVE_CARD.GetEntity(random));
            if (!CheckDuplicate(card))
            {
                cardList.Add(card);
                startCount--;
            }
        }



        Shuffle(cardList);

        //for(int i=0; i<list.Count; i++)
        //{
        //    cardPos[i].GetComponent<CardComponent>().SetCard(list[i]);
        //}

        UpdateCardPos();
    }
Пример #10
0
    public void OnDrop(PointerEventData eventData)
    {
        d = eventData.pointerDrag.GetComponent <Draggable> ();
//		GameObject GameController = GameObject.Find ("GameController");
//		GameController gameController = GameController.GetComponent<GameController> ();
//		GameObject ButtonScripts = GameObject.Find ("ButtonsCanvas");
//		ButtonScripts buttonScripts = ButtonScripts.GetComponent<ButtonScripts> ();
        buttonScripts.TurnEverythingFalse();
        GameController.control.TurnFalsePlayerButtons();


//		Debug.Log("OnDrop cone");

//		if (d != null  ) {
//			Debug.Log(d.attack);
//			attack = d.attack;
//			movementCost = d.movementCost;
//			effect = d.effect;
        d.parentToReturnTo = this.transform;

//		}
        mobility = false;
//		else{
//			Debug.Log("OnDrop cone");
//			Debug.Log(d.cardType);
        switch (d.cardType)
        {
        case CardTypes.Damage:

//				GameObject Unit = GameObject.Find(map.selecterPlayer);
//				Unit unit = Unit.GetComponent<Unit> ();
            DamageCard damageCard = d.GetComponentInParent <DamageCard>();
//				DamageCard damageCard = eventData.pointerDrag.GetComponent<DamageCard>();
            Debug.Log(damageCard.DamageType);
            mobility   = damageCard.Mobility;
            range      = damageCard.Range;
            target     = damageCard.Target;
            areaRange  = damageCard.Area;
            damageType = damageCard.DamageType;
            GameController.control.cardCost = damageCard.CardCost;

            DamageType();

            effect = damageCard.Effect;
            RunTargets();
            break;

        case CardTypes.Heal:
            HealCard          healCard = d.GetComponentInParent <HealCard>();
            GameObject        Player   = GameObject.Find(map.selecterPlayer);
            PlayableCharacter player   = Player.GetComponent <PlayableCharacter> ();
//				DamageCard damageCard = eventData.pointerDrag.GetComponent<DamageCard>();
//				mobility = damageCard.Mobility;
//				buttonScripts.healSelected = true;
//				playingPlayer = map.selecterPlayer;
            range     = healCard.Range;
            target    = healCard.Target;
            areaRange = healCard.Area;
            effect    = healCard.Effect;
            healDot   = player.PlayerClass.HealValue / 2;
            heal      = (player.PlayerClass.HealValue * healCard.CardHeal) / 3;
            GameController.control.cardCost = healCard.CardCost;
            RunTargets();
            break;

        case CardTypes.Utility:
            UtilityCard utilityCard = d.GetComponentInParent <UtilityCard>();
//				DamageCard damageCard = eventData.pointerDrag.GetComponent<DamageCard>();
//				mobility = damageCard.Mobility;
            range     = utilityCard.Range;
            target    = utilityCard.Target;
            areaRange = utilityCard.Area;
            effect    = utilityCard.Effect;
            GameController.control.cardCost = utilityCard.CardCost;
            RunTargets();
            break;

        default:
            break;
        }

//		}
        //TODO värjää väärin
        if (d != null)
        {
            GameObject     HighlightTiles = GameObject.Find("_Scripts");
            HighlightTiles highlightTiles = HighlightTiles.GetComponent <HighlightTiles> ();
            highlightTiles.HighlightTilesInRange();
        }
    }