public void TryStartFightWith(GroupMonster monster)
        {
            // todo
            var cell = monster.Position.Cell;

            Move(cell);
        }
        public bool TryStartFightWith(GroupMonster monster, ISimplePathFinder pathFinder = null)
        {
            // todo
            var cell = monster.Cell;

            return(Move(cell, pathFinder));
        }
        private static string SeekedInGroup(GroupMonster group, Bot bot)
        {
            if (group == null) return null;

            string[] monsters = group.Monsters.Where(entry => IsSeeking(entry.Name.ToLowerInvariant())).Select(entry => entry.Name).ToArray();
            if (monsters.Length == 0) return null;
            
            return monsters.FirstOrDefault();
        }
        private static string SeekedArchiMonsterInGroup(GroupMonster group, Bot bot)
        {
            if (group == null) return null;
            if (!SeekArchiMonster) return null;

            string[] monsters = group.Monsters.Where(entry => entry.IsArchMonster).Select(entry => entry.Name).ToArray();
            if (monsters.Length == 0) return null;

            return monsters.Aggregate((a,b) => a + ", " + b);
        }
        public bool TryStartFightWith(GroupMonster monster, ISimplePathFinder pathFinder = null)
        {
            // todo
            var cell = monster.Cell;

            return Move(cell, pathFinder);
        }
        public void TryStartFightWith(GroupMonster monster)
        {
            // todo
            var cell = monster.Position.Cell;

            Move(cell);
        }