для любителей желе
Mar. 2nd, 2013 05:26 pmЯ дописал поддержку прибитых гвоздем желе и желе черного цвета (это вспомогательные желе, которые не надо объединять) в онлайн-версии Jelly No Puzzle. И добавил туда уровни с 7 по 20, которые требовали
этих возможностей.
Оставшиеся уровни 21-40 требуют поддержки "вырастающего" блока - я думаю, где-то в течение недели будет.
Замечания, предложения, сообщения о багах приветствуются. Исходники здесь.
этих возможностей.
Оставшиеся уровни 21-40 требуют поддержки "вырастающего" блока - я думаю, где-то в течение недели будет.
Замечания, предложения, сообщения о багах приветствуются. Исходники здесь.
no subject
Date: 2013-03-02 03:44 pm (UTC)no subject
Date: 2013-03-02 03:48 pm (UTC)no subject
Date: 2013-03-02 03:59 pm (UTC)ну и хотелось бы автопереход на след. уровень после сообщения о завершении)
no subject
Date: 2013-03-02 04:20 pm (UTC)no subject
Date: 2013-03-02 04:37 pm (UTC)no subject
Date: 2013-03-05 01:07 pm (UTC)no subject
Date: 2013-03-05 01:24 pm (UTC)no subject
Date: 2013-03-05 01:24 pm (UTC)no subject
Date: 2013-03-05 01:37 pm (UTC)no subject
Date: 2013-03-02 04:04 pm (UTC)no subject
Date: 2013-03-02 04:25 pm (UTC)no subject
Date: 2013-03-02 04:27 pm (UTC)no subject
Date: 2013-03-02 04:32 pm (UTC)no subject
Date: 2013-03-02 04:33 pm (UTC)no subject
Date: 2013-03-02 06:24 pm (UTC)no subject
Date: 2013-03-02 04:41 pm (UTC)no subject
Date: 2013-03-02 04:51 pm (UTC)P.S. как и ожидалось, прекрасно работает на хроме под андроидом
no subject
Date: 2013-03-02 05:22 pm (UTC)no subject
Date: 2013-03-02 05:30 pm (UTC)Прекрасная игра.
На 17-ом уровне меня охватило экзистенциальное отчаяние. Когда бьешься, бьешься, хочешь уже сдаться, но потом вспоминаешь, что решение есть, делаешь несколько глубоких вдохов и начинаешь не спеша обдумывать варианты, а потом через 20 секунд снова в раздражении бросаешь мышку, потому что это просто невозможно.
И 28-ой такой же.
Игра тем хороша, что каждый новый уровень до самого конца рождает чувство тревоги/ужаса и прошлые заслуги кажутся далекими и незначительными.
Еще постоянно ловил себя на мысли, что автор мог по приколу сделать какой-нибудь уровень непроходимым, чтобы свести людей с ума.
no subject
Date: 2013-03-02 06:51 pm (UTC)О да!
no subject
Date: 2013-03-02 06:13 pm (UTC)no subject
Date: 2013-03-02 08:12 pm (UTC)no subject
Date: 2013-03-02 08:33 pm (UTC)Пробовал в Chrome и Safari.
Дайте знать, если нужна последовательность ходов.
no subject
Date: 2013-03-02 09:15 pm (UTC)no subject
Date: 2013-03-03 05:30 am (UTC)p.s. причем даже делать цикл по этому массиву необязательно, достаточно удалять запись из массива если количество блоков равно 1. Уровень заканчивается когда массив пуст. Проверку массива на отсутствие записей достаточно проводить после каждого слияния (а не хода)
no subject
Date: 2013-03-03 06:57 am (UTC)Сначала сравните две ситуации, когда кубик присоединятся одновременно к двум другим: эти два других могут быть уже соединены, или нет:
В обоих случаях у нас есть два факта соединения (упавшего кубика с левым и правым соседом), но в первом у нас счетчик должен от 3 спуститься до 1, во втором от 2 до 1.
Естественно решить эту проблему следующим способом: первое слияние соединяет два блока в один, второе слияние видит, что оно по сути происходит уже "внутри блока", и не уменьшает счетчик.
Это у меня тоже сделано. В 11-м и 19-м уровнях это не срабатывает в ситуации типа следующей (R красный кубик, B черный, и считайте их соединенными, когда они рядом).
Тут второе слияние не уменьшает счетчик, потому что блоки соединились, но это неправильно: должно быть 4->2. Теперь представим, что блоки выглядят так:
Тут на месте слияний все выглядит идентично, но счетчик должен идти 2->1.
Выходит, что не обойтись без отслеживания (или кропотливой проверки) соединенности кубиков одного цвета внутри больших многоцветных блоков.
no subject
Date: 2013-03-03 07:03 am (UTC)no subject
Date: 2013-03-03 07:23 am (UTC)no subject
Date: 2013-03-05 08:52 am (UTC)http://en.wikipedia.org/wiki/Disjoint-set_data_structure
no subject
Date: 2013-03-05 08:57 am (UTC)no subject
Date: 2013-03-06 08:53 am (UTC)Работает даже на iPhone в Сафари ! Спасибо.
К комменту:
Я когда читал ветку и попробовал решить, у меня была идея: кольцевой список соединенных одноцветных блоков и у каждого "идентификатор связной компоненты". При соприкосновении если "идентификаторы компоненты" разные сливаем кольцевые списки и ставим вторым первый "идентификатор компоненты".
Можно и без идентификаторов, а только кольцевой список - при соприкосновении проверяем 2 списка совпадают или непересекаются (тогда сливаем).
У вас в решении один блок начальник над остальными, а у меня - все блоки равны :-)
no subject
Date: 2013-03-05 04:59 pm (UTC)no subject
Date: 2013-03-15 03:43 am (UTC)Сообщение об окончании уровня выдаётся в момент когда последний кубик еще летит вниз.
no subject
Date: 2013-03-02 08:39 pm (UTC)И undo!
no subject
Date: 2013-03-02 09:06 pm (UTC)no subject
Date: 2013-03-02 09:14 pm (UTC)no subject
Date: 2013-03-03 07:49 am (UTC)no subject
Date: 2013-03-04 03:43 pm (UTC)no subject
Date: 2013-03-04 03:44 pm (UTC)no subject
Date: 2013-03-04 03:45 pm (UTC)no subject
Date: 2013-03-07 04:08 pm (UTC)