|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
Змейка17.10.2010, 06:00. Показов 13647. Ответов 95
Метки нет (Все метки)
wxWidgets - вот и пошло первое написание игры. Ну относительно игры конечно. Проблема вот в чем. Нам препод показал как сделать, чтобы "змейка" двигалась. Поднастроил, чтобы она двигалась правильно. Влево - влево, вниз - вертикально вниз и т.п. Но есть проблемка. При таком коде, что соответственно:
0
|
||||||
| 17.10.2010, 06:00 | |
|
Ответы с готовыми решениями:
95
Змейка не работает Змейка. Нужен совет как доработать программу Змейка на QT C++ |
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||||||||||||||||||||||
| 26.10.2010, 22:08 [ТС] | ||||||||||||||||||||||||||
|
Попробовал устроить такое:
Последний меняется со вторым, первый меняется с теперешним вторым. В итоге последний на первом месте. Т.е. хвост на месте головы по сути. Хотя нет. Не на месте головы... Вообщем как лучше менять? И потом голову мы перемещаем на нужные координаты. Так? Добавлено через 4 минуты ЗАРАБОТАЛО!!!
Итак. Оно работает. Полностью. Почти без нареканий. Есть только 2 вопроса. Как сделать, чтобы кол-во очков было видно постоянно и оно соответственно менялось? Пробовал пихнуть в статус-бар, но там оно остается 0 как и было изначально. И второй вопрос: не обрабатывает врез змейки в саму себя при двух секциях. В чем может быть проблема? Ну и последний: стоит-ли изменять код(статические переменные и некоторые другие вещи) и если да, то примерно как? П.С. Код:
0
|
||||||||||||||||||||||||||
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
|||||||||
| 27.10.2010, 02:03 | |||||||||
P.S. и паузу неплохо бы добавить )
1
|
|||||||||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|||||||
| 27.10.2010, 02:27 [ТС] | |||||||
|
rangerx,
То есть - мне нужно знать координаты и еды и вектора. Общность их проявляется только в Canvas-е, ибо до этого ни змейка ничего не знает о еде, ни еда о змейке. Как быть?
0
|
|||||||
|
33 / 33 / 0
Регистрация: 14.11.2009
Сообщений: 137
|
|
| 27.10.2010, 13:34 | |
|
А можно скомпилированный ехе? Уж очень интересно
0
|
|
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
|||||||||||
| 27.10.2010, 14:38 | |||||||||||
1
|
|||||||||||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
| 27.10.2010, 16:49 [ТС] | ||||||
"Как-то странно вы пытаетесь змейку двигать, то есть чтобы ей проползти вам надо оторвать ей хвост и приставить к голове (ну или что-то вроде), вообщем змейка-то и умереть так может".
ловим событие клавиатуры, если нажали пробел - то выдаем например бокс или еще какой диалог на тему паузы, и так же ставим таймер на стоп или паузу, если нажали пробел еще раз - запускаем таймер - игра продолжается, так?
0
|
||||||
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
|||
| 27.10.2010, 17:16 | |||
Но лучше покажи ему, то что ты уже сделал, может ему подойдёт и так...
1
|
|||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 27.10.2010, 17:36 [ТС] | |
|
rangerx, Это и была шутка) Но сказал, что так нехорошо) Змейка должна быть живая xD
0
|
|
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 29.10.2010, 00:08 [ТС] | |
|
Сейчас ушел в шок...
Попробовал сделать релиз версию змейки, другу послать на тест... Она начала выдавать мессаджбокс на тему проигрыша сходу... Вычислил, что дело в начальных координатах, передаю другие, работает, НО, змейка в дебаге начинающая расти вправо, здесь растет вверх оО. Как такое может быть?
0
|
|
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
|
| 29.10.2010, 00:21 | |
|
А ты проинициализировал переменную currSnakeDir? Чему она у тебя равна в самом начале?
1
|
|
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
| 29.10.2010, 01:18 [ТС] | ||||||
|
rangerx, Возможно в этом и есть дело. Надо бы. Ага. В этом было дело. ЗЫ
Вскрылся некоторый... Баг не баг... Даже не знаю. Вообщем когда мы открываем окно на полную, правая граница не ловит ошибки. Пробовал изменять размер клиентского окна в самой программе - не помогает. То есть за правую границу мы можем уйти сколько угодно далеко. И еще... У меня при движение в противоположную сторону от движения змейки происходит конец игры... Но в основном в змейках - такое движение просто запрещено. Как реализовать? Что-то вроде prevSnakeDirr делать? Добавлено через 33 минуты Код для паузы. Или лучше использовать не мессаджбокс?
0
|
||||||
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
|||
| 29.10.2010, 01:22 | |||
1
|
|||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 29.10.2010, 01:33 [ТС] | |
|
rangerx, GetClientSize() не помогло. Возвращает тоже самое, что и раньше было. А вот насчет неизменения это да. Надо.
0
|
|
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
||||||||||||||||
| 29.10.2010, 01:38 | ||||||||||||||||
|
Паузу я сам ради интереса вчера решил прикрутить, получилось так
При нажатии пробела
1
|
||||||||||||||||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 29.10.2010, 02:18 [ТС] | |
|
rangerx, Вах. Офигенно.
Не по теме: Ты давно с виджетами работаешь? Добавлено через 11 минут Поставил фрейм так. MyFrame::MyFrame(const wxString& title) : wxFrame(NULL, wxID_ANY, title, wxDefaultPosition, wxDefaultSize, wxMINIMIZE_BOX | wxCLOSE_BOX | wxCAPTION) Действительно. Теперь не ресайзнуть. Но внизу таки есть ползунок нажимая на который мышью можно растянуть. Как сделать абсолютно фиксированный? Добавлено через 25 минут Интересно... Он постоянно оставляет канву на 414 394... Не могу понять почему. Даже при таком в конструктор канвы, он все равно не растягивает как надо... Как поменять или закрыть изменение размера совсем?
0
|
|
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
|
| 29.10.2010, 02:24 | |
|
1
|
|
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
| 29.10.2010, 02:31 [ТС] | ||||||
|
rangerx, о как. спасибо)
Но все же не могу понять, что делать с клиенстким окном... Оно остается одного и того же размера вне зависимости от размера фрейма (практически) Добавлено через 2 минуты На движение сделал так.
0
|
||||||
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
||
| 29.10.2010, 02:41 | ||
1
|
||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|||||||||||
| 29.10.2010, 19:18 [ТС] | |||||||||||
|
rangerx, wxSizer?
Завтра почитаю про него и может что-нибудь получится. Спасибо тебе огромное. Без твоей помощи ничего бы вообще не вышло Добавлено через 15 часов 48 минут Ему вообще пофигу на то, что я посылаю... Как такое может быть? Он это ест... И рисует окно таким же размером какое и было... Как?...
Черт. Не въезжаю...
0
|
|||||||||||
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
|
| 29.10.2010, 19:27 | |
|
А что ты хочешь чтобы у тебя получилось в конечном итоге?
1
|
|
| 29.10.2010, 19:27 | |
|
Прокомментировать код игры "змейка" в QT
Игра "Змейка": чтобы змейка не съедала сама себя Змейка Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности.
Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|