Морской бой на Java с исходниками
Создал тут проект игры «Морской бой» на Java. Проект скомпилирован в Netbeans под Java 8, но может быть открыт (или быстро адаптирован при необходимости) и в Eclipse или IntelliJ IDEA. Готовая программа (jar файл) тестировалась под Windows 7 и Ubuntu 16.
Правила
Игра может вестись на поле от 6 до бесконечности (теоретически). Можно поставить клеток кораблей пропорционально стороне поля. То есть 6 – 6, 7 – 7 и т.д. Общие клетки не могут быть соединены по диагонали или быть буквой «Г». Можно играть вдвоем (по очереди на одном поле) или с компьютером (2 уровня сложности). Первый уровень – случайная стрельба; второй – вокруг «подбитой» клетки, но не по диагонали.
Реализация
Игра включает в себя две сетки (карта своих карта атаки), расположенные в JFrame.
Используемые шаблоны проектирования: MVC
GUI Framework: Swing
Файлы
- Setting.java – первоначальный экран с настройками.
- BattleShipPro.java – основной файл проекта. Вызывает настройки и хранит их в полях.
- Model.java - предоставляет данные и реагирует на команды контроллера, изменяя своё состояние.
- Viev.java - отвечает за отображение данных модели пользователю, реагируя на изменения модели.
- Controller.java - интерпретирует действия пользователя, оповещая модель о необходимости изменений.
Статистика игроков хранится в файле stat.csv – обычный текстовый файл в UTF-8, разделитель точка с запятой. Записываются победы и поражения.
Комментарии
Комментарии к методам и классам в коде программы. Цена на данный момент - 500 рублей. Возможна доработка проекта за отдельную плату.
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
Читайте также:
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.