|
|
|
|
|
для: Никчай
(09.01.2013 в 16:28)
| | А какие проблемы с js?
самые что ни на есть серьезные, проще говоря я его не знаю, мне уже лет 5 его "некогда" выучить :) | |
|
|
|
|
|
|
|
для: Valick
(09.01.2013 в 14:16)
| | У нас можно было делать корабль даже так: по номерам ячеек 1, 2, 12, 22. и рядом корабли могли быть. Может это не правильно, мало с этой игрой дружил.
А какие проблемы с js? Как отправлять данные? Так же как Вы делаете на php. Лучше сразу отправить, когда все будет готово. Можно сделать два глобальных массива, в одном хранить правила по кол-ву кораблей (pravila), а в другой помещать клики (dannie). Если правила не допускают слияние кораблей, то фунция будет в dannie, ячейки которого тоже будут массивами, переводить на следующий элемент. После каждого клика пробегаться по pravila, когда происходит переход на следующий элемент в dannie, удалять соответствующий корабль из pravila, если последний пуст отправлять на сервер.
Сама игра ajax-ом, все тоже самое что сейчас у Вас только без рисования. Всего два цикла по короблям и по ячейкам. | |
|
|
|
|
|
|
|
для: Никчай
(09.01.2013 в 13:57)
| | :) Игра написана 3 года назад, 2 года назад переписана с использованием базы данных (но пока не выкладывал в сеть), просто расстановка реализована на РНР, а хотелось бы на JS | |
|
|
|
|
|
|
|
для: Valick
(08.01.2013 в 15:06)
| | Тоже решил подумать над реализацией этой игры. На клиенте две таблицы в одной поле морского боя с айди номером столбца, в другой размеры кораблей. Клик по кораблю и далее клики по полю, если клик по следующему полю больше или меньше единицы или не равен соседним двум строкам, то ошибка, можно подсвечивать возможные клики. На сервере ключ это кол-во палуб, значение - номер ячейки. | |
|
|
|
|
|
|
|
для: ЯСА
(05.08.2012 в 16:40)
| | Подскажите как отправить на сервер полученную расстановку для валидации? | |
|
|
|
|
|
|
|
для: ЯСА
(05.08.2012 в 16:40)
| | Желательно, если это не сильно затруднит. | |
|
|
|
|
|
|
|
для: Valick
(05.08.2012 в 14:57)
| | Функцию вполне можно ещё "причесать", упростив код.
По большому счёту все "проверки" можно расписать по всего четырём функциям ("верху"-"справа"-"снизу"-"слева") - код будет и короче, и читабельней.
Что до удаления (типа "передумал"), то вполне можно реализовать, причём на любом (кроме последней клетки) этапе "построения" очередного корабля - можно дополнительно навесить "клик" по любой из "синих" клеток, который приведёт к предыдущему состоянию. Это несложно.
Если очень надо, то можно и "причесать", и добавить удаление. | |
|
|
|
|
|
|
|
для: Valick
(05.08.2012 в 14:57)
| | Полностью согласен. Я сделал что бы расстановка была при помощи JS, а сам PHP скрипт проверял её правильность. | |
|
|
|
|
|
|
|
для: ЯСА
(04.08.2012 в 09:31)
| | Хорошая функция, если не возражаете то возьму к себе на заметку, может когда-нибудь дойдут руки доделать свой морской бой.
Единственный минус функция позволяет только расставлять, но не позволяет убрать хотя бы последний поставленный фрагмент корабля.
Когда я писал расстановку на РНР, то сделал автоматическую случайную расстановку, а так как хотел предоставить пользователю полный контроль над расстановкой, то сделал возможность редактировать и ручную и автоматическую расстановку в произвольном порядке, но так и не довел скрипт до ума (ума как раз и не хватило) и осталась возможность "обмануть" расстановку.
Естественно вариант реализации расстановки на JS во всех отношениях и удобнее и рациональнее. | |
|
|
|
|
|
|
|
для: ЯСА
(04.08.2012 в 09:31)
| | Вы гений! Спасибо большое! Я парился неделю и не как не получалось!!!!!! | |
|
|
|
|