private static void DebugInflictStatus(StatusEffect status, Enumerations.EntityTypes entityType)
        {
            BattleEntity[] entities = BattleManager.Instance.GetEntities(entityType, null);

            for (int i = 0; i < entities.Length; i++)
            {
                entities[i].EntityProperties.AfflictStatus(status, true);
            }
        }
Example #2
0
        public SleepySheep()
        {
            Name        = "Sleepy Sheep";
            Description = "Targets all enemies and may cause them to fall asleep.";

            Icon = new CroppedTexture2D(AssetManager.Instance.LoadRawTexture2D($"{ContentGlobals.SpriteRoot}/Items.png"),
                                        new Rectangle(329, 163, 25, 25));
            ItemType = ItemTypes.Damage | ItemTypes.Status;

            StatusesInflicted = new StatusChanceHolder[] { new StatusChanceHolder(100d, new SleepStatus(2)) };

            SelectionType     = Enumerations.EntitySelectionType.All;
            MoveAffectionType = Enumerations.MoveAffectionTypes.Other;
            OtherEntTypes     = new Enumerations.EntityTypes[] { Enumerations.EntityTypes.Enemy };
        }
Example #3
0
        public DizzyDial()
        {
            Name        = "Dizzy Dial";
            Description = "If it works, dazes and\nparalyzes all enemies briefly.";

            Icon = new CroppedTexture2D(AssetManager.Instance.LoadRawTexture2D($"{ContentGlobals.SpriteRoot}/Items.png"),
                                        new Rectangle(355, 165, 23, 23));
            ItemType = ItemTypes.Status;

            StatusesInflicted = new StatusChanceHolder[] { new StatusChanceHolder(100d, new DizzyStatus(3)) };

            MoveAffectionType = Enumerations.MoveAffectionTypes.Other;
            SelectionType     = Enumerations.EntitySelectionType.All;
            OtherEntTypes     = new Enumerations.EntityTypes[] { Enumerations.EntityTypes.Enemy };
        }
 public SortEntityListBattleEvent(Enumerations.EntityTypes entityType)
 {
     EntityTypeToSort = entityType;
 }
        public static void DebugBattle()
        {
            //Default to Players - if holding 0, switch to Enemies
            Enumerations.EntityTypes entityType = Enumerations.EntityTypes.Player;
            if (Input.GetKey(Keys.D0, DebugKeyboard) == true)
            {
                entityType = Enumerations.EntityTypes.Enemy;
            }

            int turnCount = 3;

            //Inflict Poison, Payback, or Paralyzed
            if (Input.GetKeyDown(Keys.P, DebugKeyboard) == true)
            {
                StatusEffect status = new PoisonStatus(turnCount);
                //Inflict Payback
                if (Input.GetKey(Keys.B, DebugKeyboard) == true)
                {
                    status = new PaybackStatus(turnCount);
                }
                //Inflict Paralyzed
                else if (Input.GetKey(Keys.Z, DebugKeyboard) == true)
                {
                    status = new ParalyzedStatus(turnCount);
                }
                DebugInflictStatus(status, entityType);
            }
            //Inflict Invisible or Immobilized
            else if (Input.GetKeyDown(Keys.I, DebugKeyboard) == true)
            {
                StatusEffect status = new InvisibleStatus(turnCount);
                //Inflict Immobilized
                if (Input.GetKey(Keys.M, DebugKeyboard) == true)
                {
                    status = new ImmobilizedStatus(turnCount);
                }
                DebugInflictStatus(status, entityType);
            }
            //Inflict Electrified
            else if (Input.GetKeyDown(Keys.E, DebugKeyboard) == true)
            {
                DebugInflictStatus(new ElectrifiedStatus(turnCount), entityType);
            }
            //Inflict Fast, Frozen, or FPRegen
            else if (Input.GetKeyDown(Keys.F, DebugKeyboard) == true)
            {
                StatusEffect status = new FastStatus(turnCount);
                //Inflict Frozen
                if (Input.GetKey(Keys.R, DebugKeyboard) == true)
                {
                    status = new FrozenStatus(turnCount);
                }
                //Inflict FPRegen
                else if (Input.GetKey(Keys.P, DebugKeyboard) == true)
                {
                    status = new FPRegenStatus(2, turnCount);
                }
                DebugInflictStatus(status, entityType);
            }
            //Inflict Dizzy or Dodgy
            else if (Input.GetKeyDown(Keys.D, DebugKeyboard) == true)
            {
                StatusEffect status = new DizzyStatus(turnCount);
                //Inflict Dodgy
                if (Input.GetKey(Keys.O, DebugKeyboard) == true)
                {
                    status = new DodgyStatus(turnCount);
                }
                DebugInflictStatus(status, entityType);
            }
            //Inflict Sleep, Stone, or Slow
            else if (Input.GetKeyDown(Keys.S, DebugKeyboard) == true)
            {
                StatusEffect status = new SleepStatus(turnCount);
                //Inflict Stone
                if (Input.GetKey(Keys.T, DebugKeyboard) == true)
                {
                    status = new StoneStatus(turnCount);
                }
                //Inflict Slow
                else if (Input.GetKey(Keys.L, DebugKeyboard) == true)
                {
                    status = new SlowStatus(turnCount);
                }
                DebugInflictStatus(status, entityType);
            }
            //Inflict Confused
            else if (Input.GetKeyDown(Keys.C, DebugKeyboard) == true)
            {
                StatusEffect status = new ConfusedStatus(turnCount);
                DebugInflictStatus(status, entityType);
            }
            //Inflict Burn
            else if (Input.GetKeyDown(Keys.B, DebugKeyboard) == true)
            {
                StatusEffect status = new BurnStatus(turnCount);
                DebugInflictStatus(status, entityType);
            }
            //Inflict Tiny
            else if (Input.GetKeyDown(Keys.T, DebugKeyboard) == true)
            {
                StatusEffect status = new TinyStatus(turnCount);
                DebugInflictStatus(status, entityType);
            }
            //Inflict Huge or HPRegen
            else if (Input.GetKeyDown(Keys.H, DebugKeyboard) == true)
            {
                StatusEffect status = new HugeStatus(turnCount);
                //Inflict HPRegen
                if (Input.GetKey(Keys.P, DebugKeyboard) == true)
                {
                    status = new HPRegenStatus(2, turnCount);
                }
                DebugInflictStatus(status, entityType);
            }
            //Inflict Allergic
            else if (Input.GetKeyDown(Keys.A, DebugKeyboard) == true)
            {
                StatusEffect status = new AllergicStatus(turnCount);
                DebugInflictStatus(status, entityType);
            }
        }
Example #6
0
 public SortEntityListBattleEvent(BattleManager bManager, Enumerations.EntityTypes entityType)
 {
     BManager         = bManager;
     EntityTypeToSort = entityType;
 }
Example #7
0
        public static void DebugBattle()
        {
            //Default to Players - if holding 0, switch to Enemies
            Enumerations.EntityTypes entityType = Enumerations.EntityTypes.Player;
            if (Input.GetKey(Keys.D0, DebugKeyboard) == true)
            {
                entityType = Enumerations.EntityTypes.Enemy;
            }

            int turnCount = 3;

            StatusEffect status = null;

            //Inflict NoSkills
            if (Input.GetKey(Keys.N, DebugKeyboard) == true)
            {
                //Disable Jump
                if (Input.GetKeyDown(Keys.J, DebugKeyboard) == true)
                {
                    status = new NoSkillsStatus(Enumerations.MoveCategories.Jump, turnCount);
                }
                //Disable Hammer
                else if (Input.GetKeyDown(Keys.H, DebugKeyboard) == true)
                {
                    status = new NoSkillsStatus(Enumerations.MoveCategories.Hammer, turnCount);
                }
                //Disable Items
                else if (Input.GetKeyDown(Keys.I, DebugKeyboard) == true)
                {
                    status = new NoSkillsStatus(Enumerations.MoveCategories.Item, turnCount);
                }
                //Disable Tactics
                else if (Input.GetKeyDown(Keys.T, DebugKeyboard) == true)
                {
                    status = new NoSkillsStatus(Enumerations.MoveCategories.Tactics, turnCount);
                }
                //Disable Partner moves
                else if (Input.GetKeyDown(Keys.P, DebugKeyboard) == true)
                {
                    status = new NoSkillsStatus(Enumerations.MoveCategories.Partner, turnCount);
                }
                //Disable Special moves
                else if (Input.GetKeyDown(Keys.S, DebugKeyboard) == true)
                {
                    status = new NoSkillsStatus(Enumerations.MoveCategories.Special, turnCount);
                }

                if (status != null)
                {
                    DebugInflictStatus(status, entityType);
                }
            }
            //Inflict Poison, Payback, or Paralyzed
            else if (Input.GetKeyDown(Keys.P, DebugKeyboard) == true)
            {
                //Inflict Payback
                if (Input.GetKey(Keys.B, DebugKeyboard) == true)
                {
                    status = new PaybackStatus(turnCount);
                }
                //Inflict Paralyzed
                else if (Input.GetKey(Keys.Z, DebugKeyboard) == true)
                {
                    status = new ParalyzedStatus(turnCount);
                }
                else
                {
                    status = new PoisonStatus(turnCount);
                }

                DebugInflictStatus(status, entityType);
            }
            //Inflict Invisible or Injured
            else if (Input.GetKeyDown(Keys.I, DebugKeyboard) == true)
            {
                //Inflict Injured
                if (Input.GetKey(Keys.J, DebugKeyboard) == true)
                {
                    status = new InjuredStatus(turnCount);
                }
                else
                {
                    status = new InvisibleStatus(turnCount);
                }

                DebugInflictStatus(status, entityType);
            }
            //Inflict Electrified
            else if (Input.GetKeyDown(Keys.E, DebugKeyboard) == true)
            {
                DebugInflictStatus(new ElectrifiedStatus(turnCount), entityType);
            }
            //Inflict Fast, Frozen, FPRegen, or Fright
            else if (Input.GetKeyDown(Keys.F, DebugKeyboard) == true)
            {
                //Inflict Frozen
                if (Input.GetKey(Keys.R, DebugKeyboard) == true)
                {
                    status = new FrozenStatus(turnCount);
                }
                //Inflict FPRegen
                else if (Input.GetKey(Keys.P, DebugKeyboard) == true)
                {
                    status = new FPRegenStatus(2, turnCount);
                }
                else if (Input.GetKey(Keys.I, DebugKeyboard) == true)
                {
                    status = new FrightStatus();
                }
                else
                {
                    status = new FastStatus(turnCount);
                }

                DebugInflictStatus(status, entityType);
            }
            //Inflict Dizzy or Dodgy
            else if (Input.GetKeyDown(Keys.D, DebugKeyboard) == true)
            {
                //Inflict Dodgy
                if (Input.GetKey(Keys.O, DebugKeyboard) == true)
                {
                    status = new DodgyStatus(turnCount);
                }
                else
                {
                    status = new DizzyStatus(turnCount);
                }

                DebugInflictStatus(status, entityType);
            }
            //Inflict Sleep, Stone, Slow, or Stop
            else if (Input.GetKeyDown(Keys.S, DebugKeyboard) == true)
            {
                //Inflict Stone
                if (Input.GetKey(Keys.T, DebugKeyboard) == true)
                {
                    status = new StoneStatus(turnCount);
                }
                //Inflict Slow
                else if (Input.GetKey(Keys.L, DebugKeyboard) == true)
                {
                    status = new SlowStatus(turnCount);
                }
                //Inflict Stop
                else if (Input.GetKey(Keys.P, DebugKeyboard) == true)
                {
                    status = new StopStatus(turnCount);
                }
                else
                {
                    status = new SleepStatus(turnCount);
                }

                DebugInflictStatus(status, entityType);
            }
            //Inflict Confused or Charged
            else if (Input.GetKeyDown(Keys.C, DebugKeyboard) == true)
            {
                //Inflict Charged
                if (Input.GetKey(Keys.H, DebugKeyboard) == true)
                {
                    status = new ChargedStatus(1);
                }
                else
                {
                    status = new ConfusedStatus(turnCount);
                }

                DebugInflictStatus(status, entityType);
            }
            //Inflict Burn or Blown
            else if (Input.GetKeyDown(Keys.B, DebugKeyboard) == true)
            {
                if (Input.GetKey(Keys.L, DebugKeyboard) == true)
                {
                    status = new BlownStatus();
                }
                else
                {
                    status = new BurnStatus(turnCount);
                }

                DebugInflictStatus(status, entityType);
            }
            //Inflict Tiny
            else if (Input.GetKeyDown(Keys.T, DebugKeyboard) == true)
            {
                status = new TinyStatus(turnCount);
                DebugInflictStatus(status, entityType);
            }
            //Inflict Huge or HPRegen
            else if (Input.GetKeyDown(Keys.H, DebugKeyboard) == true)
            {
                //Inflict HPRegen
                if (Input.GetKey(Keys.P, DebugKeyboard) == true)
                {
                    status = new HPRegenStatus(2, turnCount);
                }
                //Inflict Hold Fast
                else if (Input.GetKey(Keys.O, DebugKeyboard) == true)
                {
                    status = new HoldFastStatus(turnCount);
                }
                else
                {
                    status = new HugeStatus(turnCount);
                }

                DebugInflictStatus(status, entityType);
            }
            //Inflict Allergic
            else if (Input.GetKeyDown(Keys.A, DebugKeyboard) == true)
            {
                status = new AllergicStatus(turnCount);
                DebugInflictStatus(status, entityType);
            }
        }