Всем доброго времени суток
Будучи еще школьником и изучая программирование у репетитора (Pascal), как и все, я захотел написать игрушку. С репетитором написал консольную игру Быки и Коровы, но раздутое чсв требовало чего-нибудь посерьезнее. Выбор остановился на морском бое. Стал писать его на паскале. В планах была консольная игра, в которой компьютер просто сообщает игроку адрес ячейки, по которой он стреляет, а игрок, в свою очередь, сообщает компьютеру адрес своей ячейки. Все тогда застопорилось на том, что не смог научить компьютер "добивать" раненные кораблики, а дописывать игру, в которой компьютер рандомно стреляет по полю не хотелось.
Прошло 9 лет, открыл для себя javarush, на 21-ом уровне проснулось чсв и потребовало морской бой.
Основными целями были:
- Наличие интерфейса
- Адекватная стрельба компьютера (он должен добивать раненые корабли)
Первую цель достиг с помощью библиотеки Swing
А вторую с помощью библиотеки КостыльВелосипедИВераВБога
Всем заинтересовавшимся предлагаю
опробовать сего франкенштейна на GitHub
Качеством кода, признаться, недоволен сам, но как делать лучше пока не знаю. Так что буду признателен за конструктивную критику и любые комментарии.
Всем спасибо!
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
но если есть таки желание:
Страшный говноКод консольной версии
1) 1-й уровень — надводный бой, 2-й уровень подводный бой, 3-й уровень морская авиация и т.д.;
2) С каждым уровнем повышать интелект ПК… 1-й рандомный обстрел, 2-й обстрел с добиванием, 3-й использование логики уменьшения количества обстреливаемых полей в два раза (я её назвал шахматная доска), 4-й применение логики при расстановке кораблей (увеличение свободного пространства для маленьких кораблей) и т.п.;
В общем с таким успехом ещё немного пофантазирую и глядишь начну команду подыскивать для совместного проекта «МОРСКОЙ БОЙ» :))) :D
1) Держатель проекта — он же заказчик;
2) Архитектор;
3) Дизайнер;
4) Проект менеджер;
Мозговой штурм, этапы проектирования, временные отрезки выполнения модулей, и т.д. :)
А прежде всего необходимо общее пространство разработки Git или нечно подобное (у меня это совсем слабое место… ничем кроме дропбокса не пользовался пока ...).
В школьных классах игра будет хитом =)
Только писать его самим скорее всего прийдётся :)
Раз пошла такая каша, предлагаю скриншоты своих варинатов морского боя.
Консольная версия:
Свинг версия
Консольную версию делал на 10-м уровне, реализовал два уровня сложности.
Свинговую версию пока не доделал, решил логику заново переписать, да намудрил с потоками всё работает, но логика слабая и вообще надо все доделывать и переделывать… доучу паттерны, потом подумаю над переработкой :)
Консольная версия у вас прямо таки огонь )
Хотя и на Дизайн СВИНГовой потратил достаточно много времени, просто реализация СВИНГовой сложнее, потому и упростил по максимуму, хотя кораблики лучше :)