Ejemplo n.º 1
0
 private void CheckCardCount(Player_Behavior participant)
 {
     if (participant.GetHand().GetNumberOfCards() == 0)
     {
         participant.GetPlayerState().SetPassing();
     }
 }
Ejemplo n.º 2
0
    static public void BattleBuddiesIon(GameObject current_card, Player_Behavior combatant)
    {
        List <GameObject> playfield = combatant.GetPlayField().GetComponent <SP_CardPile>().GetCardsInCardPile();

        foreach (GameObject card in playfield)
        {
            CQBCard cardCharacteristics = card.GetComponent <CQBCard>();
            if (cardCharacteristics.GetAbility() == Modifiers.CardModifiers.BattleBuddiesAssault && !cardCharacteristics.IsBuddy())
            {
                int AssaultIndex        = card.transform.GetSiblingIndex();
                int AssaultSiblingIndex = card.transform.GetSiblingIndex() + 1;
                int IonIndex            = current_card.transform.GetSiblingIndex();

                CQBCard    currentCharacteristics = current_card.GetComponent <CQBCard>();
                GameObject IonSibling             = combatant.GetHand().gameObject.transform.GetChild(AssaultSiblingIndex).gameObject;

                currentCharacteristics.ActivatePositiveSymbol();
                currentCharacteristics.ActivatePositiveCost(currentCharacteristics.GetBasePower() + 3);
                currentCharacteristics.SetBuddy();

                cardCharacteristics.ActivatePositiveSymbol();
                cardCharacteristics.ActivatePositiveCost(cardCharacteristics.GetBasePower() + 3);
                cardCharacteristics.SetBuddy();

                if (AssaultSiblingIndex != IonIndex)
                {
                    AssaultSiblingIndex = IonIndex;
                    IonIndex            = AssaultIndex + 1;

                    IonSibling.transform.SetSiblingIndex(AssaultSiblingIndex);
                    current_card.transform.SetSiblingIndex(IonIndex);
                }
            }
        }
    }
Ejemplo n.º 3
0
    private void ApplyCardModifiers(GameObject card, Player_Behavior player, Player_Behavior opponent)
    {
        Modifiers.EnviroModifier enviroModifier = SelectedBoard.GetComponent <Board>().GetModifier();
        if (enviroModifier == Modifiers.EnviroModifier.NoCapital && card.GetComponent <CQBCard>().GetUnitType() == CQBCard.UnitType.CAPITAL)
        {
            card.transform.SetParent(player.GetDiscard().transform);
        }
        else
        {
            if (card.GetComponent <CardModifier>().HasAbility() && !card.GetComponent <CQBCard>().Suppressed())
            {
                Modifiers.CardModifiers ability = card.GetComponent <CardModifier>().GetModifier();
                switch (ability)
                {
                case Modifiers.CardModifiers.BattleBuddiesAssault:
                    ModifierCharacteristics.BattleBuddiesAssault(card, player);
                    break;

                case Modifiers.CardModifiers.BattleBuddiesIon:
                    ModifierCharacteristics.BattleBuddiesIon(card, player);
                    break;

                case Modifiers.CardModifiers.HunterPack:
                    ModifierCharacteristics.HunterPack(card, player);
                    break;

                case Modifiers.CardModifiers.Anti_Fighter:
                    ModifierCharacteristics.Anti_Fighter(opponent);
                    break;

                case Modifiers.CardModifiers.Anti_Frigate:
                    ModifierCharacteristics.Anti_Frigate(opponent);
                    break;

                case Modifiers.CardModifiers.Anti_Capital:
                    ModifierCharacteristics.Anti_Capital(opponent);
                    break;

                case Modifiers.CardModifiers.Quick_Deploy:
                    ModifierCharacteristics.Quick_Deploy(player);
                    break;

                case Modifiers.CardModifiers.CAP:
                    ModifierCharacteristics.CAP(card, player);
                    break;

                case Modifiers.CardModifiers.DECOY:
                    ModifierCharacteristics.Decoy(card, player);
                    break;

                case Modifiers.CardModifiers.SPY:
                    card.transform.SetParent(opponent.GetPlayField().transform);
                    player.GetDeck().DealCards(2, player.GetHand().gameObject);
                    ApplyModifiers(player);
                    break;
                }
            }
        }
    }
Ejemplo n.º 4
0
    private void ApplyModifiers(Player_Behavior combatant)
    {
        List <GameObject> cards = combatant.GetHand().GetCardsInCardPile();

        foreach (GameObject card in cards)
        {
            if (!card.GetComponent <CQBCard>().Is_Modified_Enviro())
            {
                ProcessEnviroModifier(card);
            }
        }
    }
Ejemplo n.º 5
0
    static public void Anti_Capital(Player_Behavior opponent)
    {
        List <GameObject> opponentPlayfield = opponent.GetPlayField().GetComponent <SP_CardPile>().GetCardsInCardPile();

        foreach (GameObject card in opponentPlayfield)
        {
            CQBCard cardCharacteristics = card.GetComponent <CQBCard>();
            if (cardCharacteristics.GetUnitType() == CQBCard.UnitType.CAPITAL)
            {
                cardCharacteristics.SetPower(cardCharacteristics.GetCurrentPower() / 3);
                return;
            }
        }
    }
Ejemplo n.º 6
0
    static public void Bomber(Player_Behavior opponent)
    {
        List <GameObject> opponentPlayfield = opponent.GetPlayField().GetComponent <SP_CardPile>().GetCardsInCardPile();

        foreach (GameObject card in opponentPlayfield)
        {
            CQBCard cardCharacteristics = card.GetComponent <CQBCard>();
            if (cardCharacteristics.GetUnitType() == CQBCard.UnitType.FRIGATE && !cardCharacteristics.GetDebuff())
            {
                cardCharacteristics.SetPower(cardCharacteristics.GetCurrentPower() / 2);
                cardCharacteristics.SetDebuff();
                return;
            }
        }
    }
Ejemplo n.º 7
0
    // Use this for initialization
    void Start()
    {
        //Initialize components
        myRigidbody          = GetComponent <Rigidbody2D> ();
        mySpriteRenderer     = GetComponent <SpriteRenderer> ();
        eyeSpriteRenderer    = transform.GetChild(0).GetComponent <SpriteRenderer> ();
        attackSpriteRenderer = transform.GetChild(3).GetComponent <SpriteRenderer> ();

        soundController = GetComponent <Player_SoundControl> ();
        myBehavior      = GetComponent <Player_Behavior> ();
        myAnimation     = GetComponent <Player_Animation> ();
        myAStack        = GetComponent <Player_AbilityStack> ();


        //Initialize player and bullet sprites
        InitializeSprites();
    }
Ejemplo n.º 8
0
 private void DetermineNewStates()
 {
     if (Player.GetPlayerState().isPlayersPassing() && !Opponent.GetPlayerState().isPlayersPassing())
     {
         Opponent.GetPlayerState().SetBattleState(1);
         CheckCardCount(Opponent);
         CurrentTurnToken.GetComponent <TurnToken>().ActivateOpponentTurn();
         CurrentPlayer = Opponent;
         NextPlayer    = Player;
     }
     else if (!Player.GetPlayerState().isPlayersPassing() && Opponent.GetPlayerState().isPlayersPassing())
     {
         Player.GetPlayerState().SetBattleState(1);
         CheckCardCount(Player);
         CurrentTurnToken.GetComponent <TurnToken>().ActivatePlayerTurn();
         CurrentPlayer = Player;
         NextPlayer    = Opponent;
     }
     else if (!Player.GetPlayerState().isPlayersTurn() && Opponent.GetPlayerState().isPlayersTurn())
     {
         Opponent.GetPlayerState().SetBattleState(0);
         Player.GetPlayerState().SetBattleState(1);
         CheckCardCount(Player);
         CurrentTurnToken.GetComponent <TurnToken>().ActivatePlayerTurn();
         CurrentPlayer = Player;
         NextPlayer    = Opponent;
     }
     else if (Player.GetPlayerState().isPlayersTurn() && !Opponent.GetPlayerState().isPlayersTurn())
     {
         int current_card_count = Player.GetHand().GetNumberOfCards();
         if (player_cards != current_card_count)
         {
             player_cards = current_card_count;
             Player.GetPlayerState().SetBattleState(0);
             Opponent.GetPlayerState().SetBattleState(1);
             CheckCardCount(Opponent);
             CurrentTurnToken.GetComponent <TurnToken>().ActivateOpponentTurn();
             CurrentPlayer = Opponent;
             NextPlayer    = Player;
         }
     }
 }
Ejemplo n.º 9
0
    private void RollForInitiative()
    {
        int toss = Random.Range(1, 100);

        if (toss % 2 == 0)
        {
            Player.GetPlayerState().SetBattleState(1);
            CurrentTurnToken.GetComponent <TurnToken>().ActivatePlayerTurn();
            CurrentPlayer = Player;
            NextPlayer    = Opponent;
            Opponent.GetPlayerState().SetBattleState(0);
        }
        else
        {
            Player.GetPlayerState().SetBattleState(0);
            Opponent.GetPlayerState().SetBattleState(1);
            CurrentTurnToken.GetComponent <TurnToken>().ActivateOpponentTurn();
            CurrentPlayer = Opponent;
            NextPlayer    = Player;
        }
    }
Ejemplo n.º 10
0
    static public void JunkYard(Player_Behavior player, Player_Behavior opponent)
    {
        Random.InitState((int)Time.realtimeSinceStartup * 1000);
        int roll = Random.Range(1, 100);

        if (roll <= JUNKYARDCHANCE)
        {
            Player_Behavior combatant;
            roll = Random.Range(1, 100);
            if (roll % 2 == 0)
            {
                combatant = player;
            }
            else
            {
                combatant = opponent;
            }
            List <GameObject> cards = combatant.GetPlayField().GetComponent <SP_CardPile>().GetCardsInCardPile();
            roll = Random.Range(0, cards.Count - 1);
            cards[roll].transform.SetParent(combatant.GetDiscard().transform);
        }
    }
Ejemplo n.º 11
0
    private void ApplyCardModifiers(GameObject card, Player_Behavior player, Player_Behavior opponent)
    {
        Modifiers.EnviroModifier enviroModifier = SelectedBoard.GetComponent <Board>().GetModifier();
        if (enviroModifier == Modifiers.EnviroModifier.NoCapital && card.GetComponent <CQBCard>().GetUnitType() == CQBCard.UnitType.CAPITAL)
        {
            card.transform.SetParent(player.GetDiscard().transform);
        }
        else
        {
            if (card.GetComponent <CQBCard>().HasAbility() && !card.GetComponent <CQBCard>().Suppressed())
            {
                Modifiers.CardModifiers ability = card.GetComponent <CQBCard>().GetAbility();
                switch (ability)
                {
                case Modifiers.CardModifiers.BattleBuddiesAssault:
                    ModifierCharacteristics.BattleBuddiesAssault(card, player);
                    break;

                case Modifiers.CardModifiers.BattleBuddiesIon:
                    ModifierCharacteristics.BattleBuddiesIon(card, player);
                    break;

                case Modifiers.CardModifiers.HunterPack:
                    break;

                case Modifiers.CardModifiers.Anti_Strike:
                    break;

                case Modifiers.CardModifiers.Bomber:
                    break;

                case Modifiers.CardModifiers.Quick_Deploy:
                    break;
                }
            }
        }
    }
Ejemplo n.º 12
0
    private string DetermineRoundWinner()
    {
        int            player   = playerCounter.GetCurrentPoints();
        int            opponent = opponentCounter.GetCurrentPoints();
        RoundTokenPile pile;
        string         outcome = "";

        if (player > opponent)
        {
            outcome = "Player Won The Round!";
            pile    = Opponent.GetTokens();
            pile.DisableToken();
            Player.IncreaseScore();
            RoundWinner = Player;
            //PlayerDeck.DealCards(1, Player.GetHand().gameObject);
        }
        else if (player < opponent)
        {
            outcome = "Opponent Won The Round!";
            pile    = Player.GetTokens();
            pile.DisableToken();
            Opponent.IncreaseScore();
            RoundWinner = Opponent;
            //OpponentDeck.DealCards(1, Opponent.GetHand().gameObject);
        }
        else
        {
            outcome = "DRAW";
            pile    = Player.GetTokens();
            pile.DisableToken();
            pile = Opponent.GetTokens();
            pile.DisableToken();
            RoundWinner = null;
        }
        games_played++;
        return(outcome);
    }
Ejemplo n.º 13
0
    static public void Quick_Deploy(Player_Behavior player)
    {
        List <GameObject> cards = player.GetDeck().GetCards();
        int deployed            = 0;

        for (int i = 0; i < cards.Count && deployed < MAXQUICKDEPLOY; i++)
        {
            if (cards[i].GetComponent <CQBCard>().GetUnitType() == CQBCard.UnitType.FIGHTER)
            {
                cards[i].GetComponent <CQBCard>().ActivatePlayable();
                cards[i].transform.SetParent(player.GetPlayField().transform);
                deployed++;
            }
        }
        cards = player.GetHand().GetCardsInCardPile();
        for (int i = 0; i < cards.Count && deployed < MAXQUICKDEPLOY; i++)
        {
            if (cards[i].GetComponent <CQBCard>().GetUnitType() == CQBCard.UnitType.FIGHTER)
            {
                cards[i].transform.SetParent(player.GetPlayField().transform);
                deployed++;
            }
        }
    }
Ejemplo n.º 14
0
    static public void HunterPack(GameObject current_card, Player_Behavior combatant)
    {
        List <GameObject> playfield = combatant.GetPlayField().GetComponent <SP_CardPile>().GetCardsInCardPile();
        int siblingIndex            = 0;
        int new_power;
        int index;
        List <GameObject> pack = new List <GameObject>();

        foreach (GameObject card in playfield)
        {
            if (current_card != card && current_card.GetComponent <CardModifier>().GetModifier() == card.GetComponent <CardModifier>().GetModifier())
            {
                pack.Add(card);
            }
        }

        if (pack.Count > 0)
        {
            new_power = pack[0].GetComponent <CQBCard>().GetCurrentPower() + current_card.GetComponent <CQBCard>().GetCurrentPower();
            current_card.GetComponent <CQBCard>().ActivatePositiveCost(new_power);
            foreach (GameObject pack_mate in pack)
            {
                pack_mate.GetComponent <CQBCard>().ActivatePositiveCost(new_power);
                siblingIndex++;
            }

            siblingIndex = pack[pack.Count - 1].transform.GetSiblingIndex();
            index        = current_card.transform.GetSiblingIndex() - 1;
            if (siblingIndex != index)
            {
                GameObject tempSibling = pack[pack.Count - 1].transform.parent.gameObject.transform.GetChild(siblingIndex).gameObject;
                tempSibling.transform.SetSiblingIndex(index);
                current_card.transform.SetSiblingIndex(siblingIndex);
            }
        }
    }
Ejemplo n.º 15
0
 static public void SPY(GameObject current_card, Player_Behavior player, Player_Behavior opponent)
 {
     player.GetDeck().DealCards(2, player.GetHand().gameObject);
     current_card.transform.SetParent(opponent.GetPlayField().transform);
 }
Ejemplo n.º 16
0
 static public void CAP(GameObject current_card, Player_Behavior player)
 {
     Debug.Log("TODO");
 }