Esempio n. 1
0
        private static void CollectLoot(Roguelike.RoguelikeGame game, Loot loot)
        {
            var freeTile = game.Level.GetFirstEmptyPoint().Value;

            Assert.True(game.Level.SetTile(loot, freeTile));

            Assert.True(game.Level.SetTile(game.Hero, freeTile));

            Assert.True(game.GameManager.CollectLootOnHeroPosition());
            Assert.True(game.Hero.Inventory.Contains(loot));
        }
Esempio n. 2
0
        private void TestInteraction <T>(Roguelike.RoguelikeGame game, bool interShallBeDestroyed) where T : Roguelike.Tiles.Interactive.InteractiveTile, new()
        {
            var inters      = game.Level.GetTiles <T>();
            var intersCount = inters.Count;

            Assert.GreaterOrEqual(intersCount, 5);
            foreach (var inter in inters)
            {
                InteractHeroWith(inter);
            }

            inters = game.Level.GetTiles <T>();

            Assert.AreEqual(inters.Count, interShallBeDestroyed ? 0 : intersCount);
        }
Esempio n. 3
0
        private List <Loot> GetLootFromSrc(Roguelike.RoguelikeGame game, IEnumerable <ILootSource> enemies)
        {
            List <Loot> res       = new List <Loot>();
            int         numOfLoot = 0;

            foreach (var en in enemies)
            {
                var loot = game.GameManager.LootManager.TryAddForLootSource(en);
                if (loot.Any())
                {
                    numOfLoot++;
                    foreach (var l in loot)
                    {
                        game.Level.RemoveLoot(l.point);
                        game.Level.SetEmptyTile(l.point);
                        res.Add(l);
                    }
                }
            }

            return(res);
        }
Esempio n. 4
0
 private void RevealAllEnemies(Roguelike.RoguelikeGame game)
 {
     AllEnemies.ForEach(i => i.Revealed = true);
 }