Russian Qt Forum
Ноябрь 23, 2024, 10:25
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Кладовая готовых решений
(Модератор:
Пантер
) >
Игра "Морской Бой" с компьютером
Страниц: [
1
]
2
3
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Игра "Морской Бой" с компьютером (Прочитано 20869 раз)
Alexu007
Гость
Игра "Морской Бой" с компьютером
«
:
Июнь 13, 2013, 23:35 »
Простенькая игрушечка с примитивной графикой, написанная непрофессионалом.
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: Игра "Морской Бой" с компьютером
«
Ответ #1 :
Июнь 14, 2013, 00:06 »
постыдился бы такой ужас выкладывать. глаза просто «истекают кровью» при виде кода (как форматирования и стиля написания, так и проектирования), а ты еще этот проект новичкам рекомендуешь.
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
m_ax
Джедай : наставник для всех
Offline
Сообщений: 2095
Re: Игра "Морской Бой" с компьютером
«
Ответ #2 :
Июнь 14, 2013, 00:43 »
Цитата: kambala от Июнь 14, 2013, 00:06
постыдился бы такой ужас выкладывать. глаза просто «истекают кровью» при виде кода (как форматирования и стиля написания, так и проектирования), а ты еще этот проект новичкам рекомендуешь.
Нормально всё) Новичкам полезно знать и видеть примеры архитектурных шыдэвров от пионеров начинающих своё изучение плюсов с Qt)
Возьми густой вишневый сок
И белый мамин плащ.
Лей аккуратно сок на плащ -
Получится пятно.
Теперь, чтоб не было пятна
На мамином плаще,
Плащ надо сунуть целиком
В густой вишневый сок.
Возьми вишневый мамин плащ
И кружку молока.
Лей аккуратно молоко -
Появится пятно.
Теперь, чтоб не было пятна
На мамином плаще,
Плащ надо сунуть целиком
В кастрюлю с молоком.
Возьми густой вишневый сок
И белый мамин плащ.
Лей аккуратно ...
Григорий Остер "вредные советы"
Записан
Над водой луна двурога. Сяду выпью за Ван Гога. Хорошо, что кот не пьет, Он и так меня поймет..
Arch Linux Plasma 5
Alexu007
Гость
Re: Игра "Морской Бой" с компьютером
«
Ответ #3 :
Июнь 14, 2013, 00:57 »
Зато работает.
Записан
m_ax
Джедай : наставник для всех
Offline
Сообщений: 2095
Re: Игра "Морской Бой" с компьютером
«
Ответ #4 :
Июнь 14, 2013, 00:58 »
Цитата: Alexu007 от Июнь 14, 2013, 00:57
Зато работает.
У меня не работает
Записан
Над водой луна двурога. Сяду выпью за Ван Гога. Хорошо, что кот не пьет, Он и так меня поймет..
Arch Linux Plasma 5
Alexu007
Гость
Re: Игра "Морской Бой" с компьютером
«
Ответ #5 :
Июнь 14, 2013, 01:00 »
Почему?
Записан
m_ax
Джедай : наставник для всех
Offline
Сообщений: 2095
Re: Игра "Морской Бой" с компьютером
«
Ответ #6 :
Июнь 14, 2013, 01:02 »
Цитата: Alexu007 от Июнь 14, 2013, 01:00
Почему?
Хороший вопрос))
Со скольки раз угадаете?
«
Последнее редактирование: Июнь 14, 2013, 01:06 от m_ax
»
Записан
Над водой луна двурога. Сяду выпью за Ван Гога. Хорошо, что кот не пьет, Он и так меня поймет..
Arch Linux Plasma 5
Alexu007
Гость
Re: Игра "Морской Бой" с компьютером
«
Ответ #7 :
Июнь 14, 2013, 01:07 »
У меня всё работает, как при запуске из-под Qt, так и отдельно, при наличии необходимых библиотек ессно. У нас что, компьютеры разные, или у меня Qt кривой?
Записан
Figaro
Гость
Re: Игра "Морской Бой" с компьютером
«
Ответ #8 :
Июнь 14, 2013, 01:23 »
Сначала определитесь - зачем Вам Qt? Может проще WinAPI использовать?
См. MessageBeep
Остальное даже не хочется комментировать...
Записан
Alexu007
Гость
Re: Игра "Морской Бой" с компьютером
«
Ответ #9 :
Июнь 14, 2013, 01:28 »
Qt creator позволяет создавать внешне симпатишные программы (с кнопками там, меню, таблицами ит.д.) излишне не заморачиваясь тонкостями языка, внутренним устройством этих самых кнопок, меню, таблиц, прогрессбаров разных.
Записан
Figaro
Гость
Re: Игра "Морской Бой" с компьютером
«
Ответ #10 :
Июнь 14, 2013, 01:49 »
Мда... Qt в первую очередь кроссплатформенная библиотека (для меня)...
Да возьмите любой игровой движок и натягивайте красоту и на меню и прочее... И все редакторами и простейшими скриптами... Там и не придется "заморачиваться тонкостями языка"...
P.S. Ток плюсы незачем так уродовать
«
Последнее редактирование: Июнь 14, 2013, 08:10 от Figaro
»
Записан
Bepec
Гость
Re: Игра "Морской Бой" с компьютером
«
Ответ #11 :
Июнь 14, 2013, 07:05 »
Ыть, гениально
Цитировать
X1 = X1 + X * X * X;
Особенно радуют комментарии
Прям таки starwars вы написали.
// процедура формирует защитное поле вокруг корабля компьютера
// инициализация ГСЧ (Гигантского собакоподобного человека?
Или все новички наизусть знают сокращение от генератора случайных чисел?
)
// устанавливаем
Джедай переменная Pole_Dobivan
// ранен
// ошибка: не мимо и не ранен. (Да пребудет с тобой сила
)
// поле добивания раненых человека
// проверка - есть ли раненые: Z = 0 - нет, 1 - есть
// массив добивания раненых (Страшный пушко, да
)
// убит
// устанавливаем защитное поле вокруг убитого корабля
FINISH HIM! FATALITY!
Записан
Alexu007
Гость
Re: Игра "Морской Бой" с компьютером
«
Ответ #12 :
Июнь 14, 2013, 08:06 »
Цитата: Bepec от Июнь 14, 2013, 07:05
Ыть, гениально
Цитировать
X1 = X1 + X * X * X;
А тут то что не так? В X1 накапливаются иксы в 3 степени. Надо было X1 += X*X*X; - не всё ли равно?
Цитировать
Особенно радуют комментарии
Прям таки starwars вы написали.
// процедура формирует защитное поле вокруг корабля компьютера
// инициализация ГСЧ (Гигантского собакоподобного человека?
Или все новички наизусть знают сокращение от генератора случайных чисел?
)
// устанавливаем
Джедай переменная Pole_Dobivan
// ранен
// ошибка: не мимо и не ранен. (Да пребудет с тобой сила
)
// поле добивания раненых человека
// проверка - есть ли раненые: Z = 0 - нет, 1 - есть
// массив добивания раненых (Страшный пушко, да
)
// убит
// устанавливаем защитное поле вокруг убитого корабля
FINISH HIM! FATALITY!
Комментарии я писал для себя, чтобы спустя несколько лет посмотреть на код и вспомнить, как что работает. Что в итоге и произошло: первый вариант МБ был написан аж на ассемблере на 486-м компе под DOS - я тогда ассемблер изучал. Потом был переписан на С++ builder - я билдер осваивал. Теперь пришла очередь Qt
Задачи научить новичков писать именно морские бои не ставилось. Помощь в борьбе с непонятным Qt - сигналы, слоты, перехват событий и прочая... Посмотрите, сколько вопросов в инете - как сделать это да как сделать то? А вот как - залезай в код рабочей программы и смотри, как сделано там.
«
Последнее редактирование: Июнь 14, 2013, 08:15 от Alexu007
»
Записан
Bepec
Гость
Re: Игра "Морской Бой" с компьютером
«
Ответ #13 :
Июнь 14, 2013, 08:33 »
Я тебе по секрету скажу - мне твой код непонятнее кода того же Qt раза в полтора
И да, готовых приложений - кучи. Классных приложений с раскомментированной каждой строкой - дофига.
Сигнал слоты и всё остальное легко читается в Шлее.
PS а мешанину выкладывать с комментариями в стиле 80-х, когда все переменные это X Y Z, помоему это просто неприлично.
Ну да бог вам судья
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: Игра "Морской Бой" с компьютером
«
Ответ #14 :
Июнь 14, 2013, 10:07 »
я когда расставил кораблики произвольным образом, долго не мог понять почему игра не хочет запускаться. пришлось лезть в код, чтобы узнать, что они не могут соприкасаться. о сообщениях об ошибке видимо ты никогда не слышал.
потом я охренел когда обнаружил у компа кривые кораблики. такое надо где-то указывать при расстановке кораблей.
у тебя два класса для поля игрока и компа с копипастой кода — такое чувство, что о наследовании ты не слышал.
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Страниц: [
1
]
2
3
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...