Example #1
0
    private void FixedUpdate()
    {
        if (game.go == true)
        {
            if (game.Turn == 0)
            {
                Battle();
                if (go == true)
                {
                    but.interactable     = true;
                    LightIndicator.color = new Color(1, 1, 1, 0.2f);

                    if (click == 1)
                    {
                        if (Specialization == 1 && BattleCard.Specialization == 3 ||
                            Specialization == 2 && BattleCard.Specialization == 1 ||
                            Specialization == 3 && BattleCard.Specialization == 2)
                        {
                            SpecCard();
                        }
                        else if (Specialization == 4 && Race < 4)
                        {
                            AssassinCard();
                        }
                        else if (Race == 4)
                        {
                            MegaCard(2);
                        }
                        else if (Race == 5)
                        {
                            MegaCard(4);
                        }
                        else if (Specialization < 4 && Race < 4)
                        {
                            game.HotCard = 0;
                            Sound.AttackSound();
                        }
                        BattleCard.BattleImage.sprite = CardImage.sprite;
                        BattleCard.BattleImage.color  = new Color(1, 1, 1, 1);
                        BattleCard.Race           = Race;
                        BattleCard.Specialization = Specialization;
                        BattleCard.ForceCard      = ForceCard;
                        if (Specialization != 4)
                        {
                            game.ChangeTurn();
                        }
                        for (int i = 0; i < game.CurrentGame.PlayerHand.Count; i++)
                        {
                            if (CardImage.sprite == game.CurrentGame.PlayerHand[i].Logo)
                            {
                                game.CurrentGame.PlayerHand.RemoveAt(i);
                                break;
                            }
                        }
                        Destroy(gameObject);
                    }
                }
                else
                {
                    LightIndicator.color = new Color(1, 1, 1, 0);
                    but.interactable     = false;
                }
            }
            else
            {
                go = false;
                LightIndicator.color = new Color(1, 1, 1, 0);
                but.interactable     = false;
                FreeCard.transform.SetParent(DefaultParent.parent);
                FreeCard.transform.localPosition = TransFree;
            }
        }
    }
Example #2
0
    private void SecondEnemy() // Реализация ИИ Второго игрока
    {
        int count    = 0;
        int Assassin = 0;

        for (int i = 0; i < CurrentGame.SecondEnemyHand.Count; i++)
        {
            if (CurrentGame.SecondEnemyHand[i].Race == 4 || CurrentGame.SecondEnemyHand[i].Race == 5 || battle.Race == 4 || battle.Race == 5 ||
                CurrentGame.SecondEnemyHand[i].Race == battle.Race && CurrentGame.SecondEnemyHand[i].ForceCard == 1 && battle.ForceCard == 6 ||
                CurrentGame.SecondEnemyHand[i].Race == battle.Race && CurrentGame.SecondEnemyHand[i].ForceCard == 6 && battle.ForceCard != 1 &&
                CurrentGame.SecondEnemyHand[i].ForceCard > battle.ForceCard ||
                CurrentGame.SecondEnemyHand[i].Race == battle.Race && CurrentGame.SecondEnemyHand[i].ForceCard != 6 && CurrentGame.SecondEnemyHand[i].ForceCard > battle.ForceCard ||
                CurrentGame.SecondEnemyHand[i].Race == 1 && battle.Race == 3 || CurrentGame.SecondEnemyHand[i].Race == 2 && battle.Race == 1 ||
                CurrentGame.SecondEnemyHand[i].Race == 3 && battle.Race == 2)
            {
                if (CurrentGame.SecondEnemyHand[i].Specialization == 1 && battle.Specialization == 3 ||
                    CurrentGame.SecondEnemyHand[i].Specialization == 2 && battle.Specialization == 1 ||
                    CurrentGame.SecondEnemyHand[i].Specialization == 3 && battle.Specialization == 2)
                {
                    SpecCard(2);
                    SpecCardSound(2, i);
                }
                else if (CurrentGame.SecondEnemyHand[i].Specialization == 4 && CurrentGame.SecondEnemyHand[i].Race < 4)
                {
                    AssassinCard(2);
                    Assassin++;
                }
                else if (CurrentGame.SecondEnemyHand[i].Race == 4)
                {
                    MegaCard(2);
                    HotCard = 2;
                    LegendaryCardSound(2, i);
                }
                else if (CurrentGame.SecondEnemyHand[i].Race == 5)
                {
                    MegaCard(4);
                    HotCard = 2;
                    LegendaryCardSound(2, i);
                }
                else if (CurrentGame.SecondEnemyHand[i].Specialization < 4 && CurrentGame.SecondEnemyHand[i].Race < 4)
                {
                    HotCard = 2;
                    Sound.AttackSound();
                }

                battle.Race = CurrentGame.SecondEnemyHand[i].Race;
                battle.BattleImage.sprite = CurrentGame.SecondEnemyHand[i].Logo;
                battle.ForceCard          = CurrentGame.SecondEnemyHand[i].ForceCard;
                battle.Specialization     = CurrentGame.SecondEnemyHand[i].Specialization;

                count++;
                CurrentGame.SecondEnemyHand.RemoveAt(i);
                break;
            }
        }
        if (count == 0)
        {
            for (int i = 0; i < fine; i++)
            {
                CurrentGame.SecondEnemyHand.Add(CardManager.AllCards[Random.Range(0, CardManager.AllCards.Count)]);
                plusCard[2]++;
            }
            PlusText[2].text = $"+{plusCard[2]}";
            SaveCard         = 2;
        }
        if (Assassin == 0)
        {
            ChangeTurn();
        }
        SecondText.text = $"{CurrentGame.SecondEnemyHand.Count}";
    }