Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Прошу советов и критики по игре (https://javascript.ru/forum/project/73961-proshu-sovetov-i-kritiki-po-igre.html)

Amedeo Avogadro 31.05.2018 18:06

Прошу советов и критики по игре
 
Добрый день, случайно наткнулся на соседнюю темку (игра крестики нолики) и решил сделать нечто похожее на игру "Пятнашки".
Сейчас понемногу осваиваю JS по Фленегану и заодно вспоминаю html & css из ВУЗовской программы обучения, хотя чисто интуитивно сегодня пришлось понять как работает this и dataset, хотя возможно я их и не правильно и не к месту применил))))

Сразу скажу что есть один существенный баг - фишки можно переставлять по горизонтали или вертикали на 1, чего в оригинале естественно делать нельзя, но я об этом вспомнил только когда все было готово :lol: , а за день написания кода уже мозг не варит (возможно завтра исправлю)

https://jsfiddle.net/Amedeo_Avogadro/axbprxu5/

P.S. Сейчас прохожу объекты, но как-то на практике в данном примере вообще ума не приложу где использовать объекты.....
P.S.S. В общем хочу объективной/субъективной критики по коду:thanks:

рони 31.05.2018 19:22

Amedeo Avogadro,
может по первому клику и менять, а не по двум?

Amedeo Avogadro 31.05.2018 22:28

Цитата:

Сообщение от рони (Сообщение 486441)
Amedeo Avogadro,
может по первому клику и менять, а не по двум?

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

Amedeo Avogadro 31.05.2018 22:29

Цитата:

Сообщение от Rise (Сообщение 486446)
Ты их уже используешь, вот это cell[i] и this это всё объекты.

Ну это DOM как я понимаю, а вот именно создать пользовательский объект

рони 31.05.2018 22:32

Цитата:

Сообщение от Amedeo Avogadro
Получаем индекс дырки и сдвигаем в нее близлежащую ячейку

ищем возле кликнутой ячейки, пустую, и если такая есть, меняем содержимое этой пары, как-то так...

Amedeo Avogadro 31.05.2018 23:20

Цитата:

Сообщение от рони (Сообщение 486456)
ищем возле кликнутой ячейки, пустую, и если такая есть, меняем содержимое этой пары, как-то так...

да, я это и имел ввиду.

исправил все:

https://jsfiddle.net/Amedeo_Avogadro/axbprxu5/10/

Кода стало намного меньше:haha:

рони 31.05.2018 23:28

Amedeo Avogadro,
на всякий случай, в половине(условно) комбинаций "миссия будет не выполнима"

Amedeo Avogadro 31.05.2018 23:35

Цитата:

Сообщение от рони (Сообщение 486458)
Amedeo Avogadro,
на всякий случай, в половине(условно) комбинаций "миссия будет не выполнима"

всмысле? почему?

P.S. Есть баг .cell_game:hover не срабатывает на тех ячейках где из скрипта ( move_value() ) был применен фоновый цвет(

рони 31.05.2018 23:56

Цитата:

Сообщение от Amedeo Avogadro
всмысле? почему?

потому что не все комбинации можно упорядочить,
можно гонять пустую ячейку рандомно из начального "правильного" положения.

j0hnik 01.06.2018 00:20

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


Часовой пояс GMT +3, время: 09:45.