Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 04.07.2014
Сообщений: 54
1

Как правильно структуризировать код (игра шашки)?

20.08.2014, 22:27. Показов 1295. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет!
В данный момент я пытаюсь написать шашки на qt, и у меня возникли некоторые вопросы.
Собственно, вопрос скорее теоретический: как организовать перерисовку сцены, чтобы получилось не очень сложно? То есть пока я представляю себе это так: по четности клика определяем, выбираем мы фишку или ходим ей, потом перемещаем шашку с одного места на другое, а шашку противника удаляем. Но мне кажется, что это что-то не то.
Как лучше организовать логику кода вообще?
Короче, подскажите что-нибудь, а то я немного растерялся.
Заранее спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.08.2014, 22:27
Ответы с готовыми решениями:

Игра шашки: Исправить копирование шашки заместо переставления
Почти написал шашки на с++, но есть одна проблема,При захвате шашки оно ейо не перставляет а...

Игра шашки
Здравствуйте! Кто может подсказать, есть игра, напоминающая игру "шашки", как в ней сделать, чтобы...

ИГРА ШАШКИ
начал делать игру шашки ,не пойму как реализовать код чтобы ходили шашки компа пробывал через...

Игра шашки по сети
Доброго времени суток господа! В общем я даже не знаю куда лучше всего обратится. Что мне нужно,...

3
63 / 63 / 15
Регистрация: 20.08.2014
Сообщений: 593
21.08.2014, 12:13 2
Все проще можно сделать. Создаем класс "клетка". Он будет ловить щелчки и менять цвет. Потом создаем массив клеток - размещаем его на QWidget. короче, объяснять долго, я тут писал когда-то. Проект прикрепляю. Правда он сырой еще. AI нет, кое-где косяки есть, но думаю пойдет для того чтобы понять что к чему, и сделать выводы.
Вложения
Тип файла: rar RussianCheckers.rar (65.0 Кб, 49 просмотров)
0
0 / 0 / 0
Регистрация: 04.07.2014
Сообщений: 54
21.08.2014, 15:19  [ТС] 3
Я делаю с помощью QGraphicsScene и QGraphicsView. Объясните, пожалуйста, как реализовать функцию mousepressevent? У меня есть класс клетки и QGraphicsScene. Я так понял, что сначала клик мыши обрабатывается в QGraphicsScene. Вот вопрос в том, как его оттуда перевести в нужную мне клетку? Нужно ли создавать отдельный класс, наследуемый от QGraphicsScene или можно сделать сразу в QGraphicsScene? Ну и собственно, как именно это все сделать?...
0
3 / 3 / 0
Регистрация: 15.01.2014
Сообщений: 62
21.08.2014, 16:02 4
Создаеш свой клас он наследуется от QGraphicsScene и в нем перегружает вот такой метод


C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
void Scene::mousePressEvent(QGraphicsSceneMouseEvent * mouseEvent)
{
   if (mouseEvent->button()==Qt::LeftButton)
   {
       QGraphicsRectItem *rec=(QGraphicsRectItem*) itemAt(mouseEvent->scenePos(),QTransform());
       if (!rec)
       {
           return;
       }
      qDebug()<<"Press";
   }
   update();
}
0
21.08.2014, 16:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.08.2014, 16:02
Помогаю со студенческими работами здесь

Сетевая игра шашки
Уважаемые господа программисты нужна ваша помощь! Необходимо написать сетевую игру шашки. т. к....

Игра шашки Pascal
Привет, можете помочь, надо написать проект в Паскале игра шашки графически, и чтобы было 2 режыма ...

Шашки на Python (игра двух человек)
Начал делать шашки(готова игра человек-бот) Нужна помощ что б создать(человек-человек)

OnMouseDown работает некорректно игра шашки
Добрый день, объясните пожалуйста, почему на абсолютно одинаковых объектах (шашках) скрипт работает...

Как правильно называется игра?
Игра. Есть лабиринт. В нём камни. Игрок должен передвинуть камни в определённые зоны. Как...

Шашки код
Здрасте, подскажите как увеличить шашки чтоб на весь экран. import java.awt.*; import...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru