Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Repository files navigation

Описание реализации сапера

Использовавшиеся инструменты

Qt версии 5.12 и соответствующий QtCreator.

Об игре :

Изначально есть 10 мин и 10 флажков. Поле 9х9 Время 180 секунд.

Игра сапер реализует принцип модель-представление

Описание классов MinesweeperModel - наследован от абстрактной модели и тут реализована логика работы с данными. CellData - содержит свойства ячейки. View.qml - содержит элементы HMI.

Содержимое QML файла view.qml

TableView - вид для модели MinesweeperModel boomdelegate - делегат TableView где, реализована простенькая анимация на основе ParticleSystem имитирующая взрыв. msdelegate - делегат TableView где, храниться данные для ячейки поля. PopupWindow - всплывающее окно которое появляется в случае проигрыша по истечению времени или в случае выигрыша.

Тестирование

Сапер тестировался на OS Win7 professional - 64 bit. В версии приложения под Windows использовалась иконка приложения.

Возможности развития

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

Примечание

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

About

C++/Qt/QML Minesweeper (MVC/Animation)

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages