Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   www.boolean.name > Программирование в широком смысле слова > Алгоритмика

Алгоритмика Об алгоритмах вообще; методы, обсуждения способов решения

Ответ
 
Опции темы
Старый 18.12.2019, 16:34   #1
JeanWinters
ПроЭктировщик
 
Регистрация: 22.12.2007
Сообщений: 197
Написано 18 полезных сообщений
(для 43 пользователей)
Проверка возможных ходов в игре "три в ряд"

Подскажите, как можно реализовать алгоритм проверки доступных ходов с учетом перемешивания всех элементов. Сейчас есть обычная проверка, которая учитывает только текущее расположение элементов.




Например:
1. Имеется поле с элементами (f - замороженные элементы, которые нельзя двигать).
2. Игрок передвигает фиолетовый элемент, меняет местами с желтым.
3. Происходит удаление линии.
4. Сверху падают новые элементы, заморозка распространяется на соседний верхний элемент.
5. Так как нет доступных ходов, то запускается функция перемешивания не замороженных элементов.
6. Перемешивание будет происходить пока не достигнет доступных ходов. Есть только два варианта: если синий элемент встанет на позицию 3,4
7. или на позицию 3,5.



Но если сверху упадут немного другие элементы:

То функция перемешивания будет происходить постоянно и произойдет зацикливание, игрок будет наблюдать за тем, как элементы меняются местами и не сможет нажать на что-либо.



Вопрос такой: как можно проверить существует ли возможность доступных ходов в принципе (не учитывая позиций не замороженных элементов), даже если потенциально перемешивать много раз, то выводить игроку, что уровень не пройден, так как доступных ходов не осталось совсем.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +1, время: 12:49.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com