Задать вопрос
  • Где скрываются данные при парсинге?

    VoidVolker
    @VoidVolker Куратор тега JavaScript
    Dark side eye. А у нас печеньки! А у вас?
    Вероятно данные заполняются скриптом.
    Ответ написан
    Комментировать
  • Где скрываются данные при парсинге?

    pash4paul
    @pash4paul
    При "Просмотр кода страницы" разметка отображается так, как она пришла с сервера.
    При "Просмотреть код" показывается текущее состояние разметки.

    Т.е. загрузилась изначальная разметка и скрипты. Скрипты выполняются, подгружают дополнительные данные с сервера и динамически меняют разметку. Чтобы посмотреть данные, зайди на вкладку "Сеть" в отладчике хрома.
    Ответ написан
    Комментировать
  • Как реализовать игровую логику на примере данного приложения?

    Lerg
    @Lerg
    Defold, Corona, Lua, GameDev
    Всё просто. У вас есть 2d массив - карта поля. В каждой ячейке хранится объект - лампа, батарея, провод. У проводов есть свойство - четыре переменные проводимости: left, right, up, down. Какая из них true - значит в ту сторону есть соединение.
    Далее создаёте второй 2d массив - карта электричества, размер такой же, но в каждой ячейке значение true/false - есть электричество или нет электричества.
    Теперь ваша задача в том, чтобы, начиная от батарей, заполнить карту электричества согласно проводам.
    Как только это сделано, смотрите на ваши лампы, смотрите куда у них идёт контакт, есть ли у той ячейки электричество и есть ли соединение с этой ячейкой.

    Для этого в цикле обрабатываете каждую батарею: начинаете с позиции батареи присваивать true в карту электричества, идёте по карте по направлению проводов, там где разветвление - применяете рекурсию. Как только ходов не останется - переходите к следующей батареи. Если в ячейке уже есть электричество - игнорируете.

    Когда все батареи будут обработаны переходите к лампам и зажигаете их, если всё в порядке.

    Как только происходит изменение поля (поворот провода/перемещение), то очищаете карту электричества, выключаете все лампы и прогоняете алгоритм снова. Происходит это за доли секунды.
    Ответ написан
    6 комментариев
  • Как реализовать игровую логику на примере данного приложения?

    @Espleth
    Не совсем понимаю, а что тут особо сложного? Что-то типа простенькой задачи на графах. У каждой ячейки поля есть свойства: bool - есть ли в ней провод (или string/int, если может быть не только провод, но и еще что-то, например лампа), и еще 4 bool соответствующие сторонам (вверх, вниз, влево, вправо), по которым становится понятно, куда выходит провод. при каждом обновлении игры (обновлении в плане поворота провода или что-то типа того) в лоб идти по всем источникам питания по очереди и смотреть, выходят ли на лампу провода от нее. Если выходят - зажигать ее. С ходу мне чем то напомнило алгоритм Прима. Хотя тут совсем другое, но что-то общее в них определенно есть, а именно мне так кажется рекурсивная функция для прохода всех вариантов тут будет функцию для проверки на наличие зацикливаний в том алгоритме
    Ответ написан
    6 комментариев