public ActionPanelConfirmCreatureSummon(SorcererStreetMap Map, int ActivePlayerIndex, CreatureCard ActiveCard)
     : base(PanelName, Map, false)
 {
     this.ActivePlayerIndex = ActivePlayerIndex;
     this.ActiveCard        = ActiveCard;
     ActivePlayer           = Map.ListPlayer[ActivePlayerIndex];
 }
        public ActionPanelBattleStartPhase(SorcererStreetMap Map, Player ActivePlayer, CreatureCard Invader)
        {
            this.Map          = Map;
            this.ActivePlayer = ActivePlayer;
            this.Invader      = Invader;

            ListActionMenuChoice = new ActionPanelHolder();
        }
        public ActionPanelBattleStartPhase(SorcererStreetMap Map, int ActivePlayerIndex, CreatureCard Invader)
        {
            this.Map = Map;
            this.ActivePlayerIndex = ActivePlayerIndex;
            ActivePlayer           = Map.ListPlayer[ActivePlayerIndex];
            this.Invader           = Invader;

            ListActionMenuChoice = new ActionPanelHolder();
        }
        private void ExecutePreAttack(CreatureCard Attacker, CreatureCard Defender)
        {
            ActionPanelSorcererStreet AttackerActivationScreen = Attacker.ActivateInBattle(Map, Map.GlobalSorcererStreetBattleContext.InvaderPlayer);
            ActionPanelSorcererStreet DefenderActivationScreen = Defender.ActivateInBattle(Map, Map.GlobalSorcererStreetBattleContext.DefenderPlayer);

            if (PlayAnimations && DefenderActivationScreen != null)
            {
                AddToPanelListAndSelect(DefenderActivationScreen);
            }
            if (PlayAnimations && AttackerActivationScreen != null)
            {
                AddToPanelListAndSelect(AttackerActivationScreen);
            }
        }
Example #5
0
        public virtual void DrawCardInfo(CustomSpriteBatch g, SpriteFont fntCardInfo)
        {
            float InfoBoxX  = Constants.Width / 1.8f;
            float InfoBoxY  = Constants.Height / 10;
            int   BoxWidth  = (int)(Constants.Width / 2.8);
            int   BoxHeight = (int)(Constants.Height / 2);

            GameScreen.DrawBox(g, new Vector2(InfoBoxX, InfoBoxY), BoxWidth, BoxHeight, Color.White);

            float CurrentX = InfoBoxX + 10;
            float CurrentY = InfoBoxY + 5;

            g.DrawString(fntCardInfo, CardType + " Card", new Vector2(CurrentX, CurrentY), Color.White);

            CurrentY += 20;

            g.DrawString(fntCardInfo, Name, new Vector2(CurrentX, CurrentY), Color.White);
            g.Draw(GameScreen.sprPixel, new Rectangle((int)InfoBoxX + BoxWidth - 30, (int)CurrentY, 18, 18), Color.White);

            CurrentY += 20;

            g.DrawString(fntCardInfo, CardType, new Vector2(CurrentX, CurrentY), Color.White);
            g.Draw(GameScreen.sprPixel, new Rectangle((int)InfoBoxX + BoxWidth - 30, (int)CurrentY, 18, 18), Color.White);

            CurrentY += 20;

            if (CardType == CreatureCard.CreatureCardType)
            {
                CreatureCard ActiveCard = (CreatureCard)this;
                g.Draw(GameScreen.sprPixel, new Rectangle((int)CurrentX, (int)CurrentY, 18, 18), Color.White);
                g.DrawString(fntCardInfo, ActiveCard.MaxST.ToString(), new Vector2(CurrentX + 20, CurrentY), Color.White);

                g.Draw(GameScreen.sprPixel, new Rectangle((int)CurrentX + 50, (int)CurrentY, 18, 18), Color.White);
                g.DrawString(fntCardInfo, ActiveCard.CurrentHP.ToString(), new Vector2(CurrentX + 70, CurrentY), Color.White);

                g.Draw(GameScreen.sprPixel, new Rectangle((int)CurrentX + 100, (int)CurrentY, 18, 18), Color.White);
                g.DrawString(fntCardInfo, ActiveCard.MaxHP.ToString(), new Vector2(CurrentX + 120, CurrentY), Color.White);
            }

            CurrentY += 20;

            g.Draw(GameScreen.sprPixel, new Rectangle((int)CurrentX, (int)CurrentY, 18, 18), Color.White);
            g.DrawString(fntCardInfo, MagicCost.ToString(), new Vector2(CurrentX + 20, CurrentY), Color.White);

            CurrentY += 20;

            g.DrawString(fntCardInfo, Description.ToString(), new Vector2(CurrentX, CurrentY), Color.White);
        }
        //Attacks First Invader, Attacks First Defender, Normal Attack Invader, Normal Attack Defender, Attacks Last Invader and Attacks Last Defender
        private void DetermineAttackOrder(out CreatureCard FirstAttacker, out CreatureCard SecondAttacker)
        {
            bool InvaderFirst   = true;
            bool InvaderDecided = false;

            if (!Map.GlobalSorcererStreetBattleContext.Invader.BonusAttackLast && (Map.GlobalSorcererStreetBattleContext.Invader.Abilities.AttackFirst || Map.GlobalSorcererStreetBattleContext.Invader.BonusAttackFirst))
            {
                InvaderFirst   = true;
                InvaderDecided = true;
            }
            else if (!Map.GlobalSorcererStreetBattleContext.Defender.BonusAttackLast && (Map.GlobalSorcererStreetBattleContext.Defender.Abilities.AttackFirst || Map.GlobalSorcererStreetBattleContext.Defender.BonusAttackFirst))
            {
                InvaderFirst   = false;
                InvaderDecided = true;
            }

            if (!InvaderDecided && (Map.GlobalSorcererStreetBattleContext.Defender.BonusAttackLast || Map.GlobalSorcererStreetBattleContext.Defender.Abilities.AttackLast))
            {
                InvaderFirst = true;
            }
            else if (!InvaderDecided && (Map.GlobalSorcererStreetBattleContext.Invader.BonusAttackLast || Map.GlobalSorcererStreetBattleContext.Invader.Abilities.AttackLast))
            {
                InvaderFirst = true;
            }

            if (InvaderFirst)
            {
                FirstAttacker  = Map.GlobalSorcererStreetBattleContext.Invader;
                SecondAttacker = Map.GlobalSorcererStreetBattleContext.Defender;
            }
            else
            {
                FirstAttacker  = Map.GlobalSorcererStreetBattleContext.Defender;
                SecondAttacker = Map.GlobalSorcererStreetBattleContext.Invader;
            }
        }
Example #7
0
 public ActionPanelConfirmCreatureSummon(SorcererStreetMap Map, Player ActivePlayer, CreatureCard ActiveCard)
     : base("Confirm Creature Summon", Map, false)
 {
     this.ActivePlayer = ActivePlayer;
     this.ActiveCard   = ActiveCard;
 }