Exemple #1
0
        public override void DrawCard(SpriteBatch sBatch, SpriteFont dungeonFont)
        {
            sBatch.Draw(CardTexture, new Vector2(274, 130), new Rectangle?(), Color.White, 0f, new Vector2(248, 0), .75f, SpriteEffects.None, 1);

            switch (enemyTurnState)
            {
            case EnemyTurnState.STARTCOMBAT:

                sBatch.Draw(Buttons["Combat Button"].ButtonTexture, new Vector2(770, 600), new Rectangle?(), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 1);


                break;

            case EnemyTurnState.COMBAT:

                CurrentCombat.DrawCombat(sBatch, dungeonFont);
                break;

            case EnemyTurnState.COMPLETE:
                break;

            default:
                break;
            }
        }
Exemple #2
0
        //---------------------- METHODS -----------------------------


        /// <summary>
        /// Handles Enemy card turn.
        /// </summary>
        /// <param name="player"></param>
        /// <returns></returns>
        public override bool HandleCard(Player player, MouseState current, MouseState previous, float xPos, float yPos)
        {
            XPos = xPos;
            YPos = yPos;
            CurrentMouseState  = current;
            PreviousMouseState = previous;

            switch (enemyTurnState)
            {
            case EnemyTurnState.STARTCOMBAT:
                HandleButtons(player);
                return(false);

            case EnemyTurnState.COMBAT:

                if (CurrentCombat.HandleCombat(player, CurrentMouseState, PreviousMouseState, XPos, yPos, false, false))
                {
                    enemyTurnState = EnemyTurnState.COMPLETE;
                }



                return(false);


            case EnemyTurnState.COMPLETE:
                player.HasFoughtMonster = true;
                return(true);

            default:
                return(false);
            }
        }
Exemple #3
0
        public override void DrawCard(SpriteBatch sBatch, SpriteFont dungeonFont)
        {
            sBatch.Draw(CardTexture, new Vector2(274, 130), new Rectangle?(), Color.White, 0f, new Vector2(248, 0), .75f, SpriteEffects.None, 1);

            switch (bossTurnState)
            {
            case BossTurnState.STARTCOMBAT:

                sBatch.Draw(Buttons["Combat Button"].ButtonTexture, new Vector2(770, 600), new Rectangle?(), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 1);

                break;

            case BossTurnState.COMBAT:

                CurrentCombat.DrawCombat(sBatch, dungeonFont);

                break;

            case BossTurnState.REWARDS:

                sBatch.Draw(Buttons["Roll Die"].ButtonTexture, new Vector2(770, 600), new Rectangle?(), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 1);
                sBatch.DrawString(dungeonFont, "Roll to determine your reward.", new Vector2(620, 230), Color.White);

                break;

            case BossTurnState.ROLLANIMATION:

                RewardDie.DrawCombatDie(sBatch);

                break;

            case BossTurnState.REMOVESPELL:

                RewardDie.DrawCombatDie(sBatch);
                sBatch.Draw(Buttons["Rewards"].ButtonTexture, new Vector2(650, 150), new Rectangle?(), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 1);
                //sBatch.DrawString(dungeonFont, "You Rolled a:  " + TreasureResult, new Vector2(725, 200), Color.White);
                sBatch.DrawString(dungeonFont, "Click a spell to remove or", new Vector2(650, 290), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 0f);
                sBatch.DrawString(dungeonFont, "click done to keep current spells", new Vector2(600, 340), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 0f);
                sBatch.Draw(Buttons["Done Button"].ButtonTexture, new Vector2(770, 600), new Rectangle?(), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 1);

                break;

            case BossTurnState.REVIEW:

                RewardDie.DrawCombatDie(sBatch);
                sBatch.Draw(Buttons["Rewards"].ButtonTexture, new Vector2(650, 150), new Rectangle?(), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 1);
                sBatch.Draw(Buttons["Done Button"].ButtonTexture, new Vector2(770, 600), new Rectangle?(), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 1);

                break;

            case BossTurnState.COMPLETE:


                break;

            default:
                break;
            }
        }
Exemple #4
0
        //---------------------- METHODS -----------------------------

        public override bool HandleCard(Player player, MouseState current, MouseState previous, float xPos, float yPos)
        {
            XPos = xPos;
            YPos = yPos;
            CurrentMouseState  = current;
            PreviousMouseState = previous;

            switch (eventCardTurnState)
            {
            case EventCardTurnState.INITIAL_ROLL:
                SkillCheck = false;
                HandleButtons(player);

                return(false);

            case EventCardTurnState.ROLLANIMATION:

                if (AnimationCounter < 60)
                {
                    RollAnimation();
                }
                else
                {
                    if (SkillCheck)
                    {
                        SkillCheckResult        = player.playerDice.RollDice();
                        EventDie.CurrentTexture = EventDie.DieTextures["Roll " + SkillCheckResult];
                        if (SkillCheckResult <= player.Rank)
                        {
                            CurrentButtons.Clear();
                            LoadSkillCheckButtons();
                            eventCardTurnState = EventCardTurnState.ADJUSTOPTION;
                        }
                        else
                        {
                            eventCardTurnState = EventCardTurnState.HANDLE_EVENT;
                        }
                        AnimationCounter = 0;
                    }
                    else
                    {
                        Option = player.playerDice.RollDice();
                        EventDie.CurrentTexture = EventDie.DieTextures["Roll " + Option];
                        LoadInitialRollButtons(Option);

                        eventCardTurnState = EventCardTurnState.SKILL_CHECK;
                        AnimationCounter   = 0;
                    }
                }



                return(false);

            case EventCardTurnState.SKILL_CHECK:

                HandleButtons(player);

                return(false);

            case EventCardTurnState.ADJUSTOPTION:

                HandleButtons(player);

                return(false);

            case EventCardTurnState.HANDLE_EVENT:

                HandleButtons(player);

                return(false);

            case EventCardTurnState.FIGHT_MONSTER:

                HandleButtons(player);


                return(false);

            case EventCardTurnState.COMBAT:

                if (CurrentCombat.HandleCombat(player, CurrentMouseState, PreviousMouseState, XPos, yPos, false, true))
                {
                    eventCardTurnState = EventCardTurnState.COMPLETE;
                }

                return(false);



            case EventCardTurnState.COMPLETE:

                return(true);

            default:
                return(false);
            }
        }
Exemple #5
0
        public override void DrawCard(SpriteBatch sBatch, SpriteFont dungeonFont)
        {
            sBatch.Draw(CardTexture, new Vector2(274, 130), new Rectangle?(), Color.White, 0f, new Vector2(248, 0), .75f, SpriteEffects.None, 1);
            switch (eventCardTurnState)
            {
            case EventCardTurnState.INITIAL_ROLL:
                sBatch.DrawString(dungeonFont, "Roll for event.", new Vector2(770, 200), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 0f);
                sBatch.Draw(Buttons["Roll Die"].ButtonTexture, new Vector2(770, 600), new Rectangle?(), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 1);

                break;

            case EventCardTurnState.ROLLANIMATION:

                EventDie.DrawCombatDie(sBatch);

                break;

            case EventCardTurnState.SKILL_CHECK:

                EventDie.DrawCombatDie(sBatch);
                sBatch.DrawString(dungeonFont, "Roll for skill check.", new Vector2(720, 200), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 0f);
                sBatch.Draw(Buttons["Roll Die"].ButtonTexture, new Vector2(770, 600), new Rectangle?(), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 1);

                int counter = 650;
                foreach (var item in CurrentButtons)
                {
                    sBatch.Draw(item.ButtonTexture, new Vector2(counter, 300), new Rectangle?(), Color.White, 0f, new Vector2(), .50f, SpriteEffects.None, 1);
                    counter += 80;
                }

                break;

            case EventCardTurnState.ADJUSTOPTION:

                EventDie.DrawCombatDie(sBatch);
                int counter2 = 650;
                foreach (var item in CurrentButtons)
                {
                    sBatch.Draw(item.ButtonTexture, new Vector2(counter2, 300), new Rectangle?(), Color.White, 0f, new Vector2(), .50f, SpriteEffects.None, 1);
                    counter2 += 80;
                }
                sBatch.DrawString(dungeonFont, "Success! Adjust your event +1 or -1 ", new Vector2(600, 200), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 0f);


                break;

            case EventCardTurnState.HANDLE_EVENT:

                EventDie.DrawCombatDie(sBatch);
                int counter3 = 650;
                foreach (var item in CurrentButtons)
                {
                    sBatch.Draw(item.ButtonTexture, new Vector2(counter3, 300), new Rectangle?(), Color.White, 0f, new Vector2(), .50f, SpriteEffects.None, 1);
                    counter3 += 80;
                }
                sBatch.DrawString(dungeonFont, "Failed skill check.", new Vector2(740, 200), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 0f);


                break;

            case EventCardTurnState.FIGHT_MONSTER:


                sBatch.Draw(Buttons["Combat Button"].ButtonTexture, new Vector2(770, 600), new Rectangle?(), Color.White, 0f, new Vector2(), 1f, SpriteEffects.None, 1);

                break;

            case EventCardTurnState.COMBAT:

                CurrentCombat.DrawCombat(sBatch, dungeonFont);

                break;

            case EventCardTurnState.COMPLETE:
                break;

            default:
                break;
            }
        }
Exemple #6
0
        public override bool HandleCard(Player player, MouseState current, MouseState previous, float xPos, float yPos)
        {
            XPos = xPos;
            YPos = yPos;
            CurrentMouseState  = current;
            PreviousMouseState = previous;

            switch (bossTurnState)
            {
            case BossTurnState.STARTCOMBAT:
                HandleButtons(player);
                AnimationCounter = 0;
                return(false);

            case BossTurnState.COMBAT:

                if (CurrentCombat.HandleCombat(player, CurrentMouseState, PreviousMouseState, XPos, yPos, true, false))
                {
                    bossTurnState = BossTurnState.REWARDS;
                }

                return(false);

            case BossTurnState.REWARDS:

                if (player.DungeonArea == 14)
                {
                    bossTurnState = BossTurnState.COMPLETE;
                }
                HandleButtons(player);

                return(false);

            case BossTurnState.ROLLANIMATION:

                if (AnimationCounter < 60)
                {
                    RollAnimation();
                }
                else
                {
                    TreasureResult           = player.playerDice.RollDice();
                    RewardDie.CurrentTexture = RewardDie.DieTextures["Roll " + TreasureResult];
                    switch (TreasureResult)
                    {
                    case 1:
                        player.Armor++;
                        break;

                    case 2:
                        player.Experience += 2;
                        break;

                    case 3:
                        AwardedSpell = "Fire";
                        break;

                    case 4:
                        AwardedSpell = "Ice";
                        break;

                    case 5:
                        AwardedSpell = "Poison";
                        break;

                    case 6:
                        AwardedSpell = "Healing";
                        break;

                    default:
                        break;
                    }
                    if (TreasureResult > 2 && player.Spells.Count == 2)
                    {
                        bossTurnState = BossTurnState.REMOVESPELL;
                    }
                    else if (TreasureResult > 2)
                    {
                        player.AddSpell(AwardedSpell);
                        bossTurnState = BossTurnState.REVIEW;
                    }
                }

                return(false);

            case BossTurnState.REMOVESPELL:

                HandleButtons(player);

                return(false);

            case BossTurnState.REVIEW:

                //if (TreasureResult > 2 && player.Spells.Count == 2)
                //{
                //    bossTurnState = BossTurnState.REMOVESPELL;
                //}
                //else if (TreasureResult > 2)
                //{
                //    player.AddSpell(AwardedSpell);
                //}
                HandleButtons(player);

                return(false);

            case BossTurnState.COMPLETE:


                return(true);

            default:
                return(false);
            }
        }