Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.03.2011, 14:12   #531
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 16,220
По умолчанию

Цитата:
Сообщение от TLabel Посмотреть сообщение
как можно сделать так, чтобы призрак находил дорогу к pacman в лабиринте и за ним гонялся?
Поиском лень воспользоваться?

http://www.programmersforum.ru/showp...29&postcount=6

Arigato на форуме Ответить с цитированием
Старый 09.03.2011, 21:44   #532
Odinok
Пользователь
 
Аватар для Odinok
 
Регистрация: 08.03.2011
Сообщений: 91
По умолчанию

Блин посмотрел на ваши работы, и сравнил со своим bomberman'ом прям так разочаровался в игрописательстве, мне теперь все переделывать :/
Всё будет так, как должно было быть, даже, если будет наоборот.
Odinok вне форума Ответить с цитированием
Старый 10.03.2011, 00:37   #533
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Odinok, нужно просто выделить время и прочесть всю тему от начала, ...будет чему поучиться. Просто так копировать исходный код не рекомендую, постарайся осмыслить и сначала попытаться выполнить самостоятельно, затем, если не получается, или работает медленно, обратиться к исходным кодам этой темы.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 10.03.2011, 01:02   #534
Odinok
Пользователь
 
Аватар для Odinok
 
Регистрация: 08.03.2011
Сообщений: 91
По умолчанию

Цитата:
Сообщение от Beermonza Посмотреть сообщение
Odinok, нужно просто выделить время и прочесть всю тему от начала, ...будет чему поучиться. Просто так копировать исходный код не рекомендую, постарайся осмыслить и сначала попытаться выполнить самостоятельно, затем, если не получается, или работает медленно, обратиться к исходным кодам этой темы.
Да я карту с помощью массива Timage создаю, скелет в отдельном массиве, для редактора карт опять же массив из Timage, и все в одной программе, и редактор карт, и игра, так у меня уже в начале формирование массива игра секунд 5 думает что бы нарисовать 32х32 картинок размера 50х50, а мне еще ИИ обрабатывать так думаю совсем плохо будет. а еще как то скролинг делать и спрайты, ужос просто

Цитата:
Сообщение от Arigato Посмотреть сообщение
Для начала вполне неплохой редактор. Есть некоторые неудобства интерфейса, но, по мере развития, я уверен, они будут устранены.

Для примера прикреплю редактор карт, который писал несколько лет назад (от нечего делать, его развитие и не планировалось). Графика простетская саморисованная.
Левая кнопка мыши - рисует землю и дороги, правая - знаки, средняя - стирает. С клавиатуры: клавиши курсора - навигация, пробел - установить выбранный знак, Shift - рисуем дороги, Alt - стираем знаки, Ctrl - стираем дороги, Esc - меню.
Если кому-то понадобится, могу выложить исходники. Хотя там ничего особо интересного нет.
У тебя случайно исходники не остались, мне там интересно как так быстро у тебя такая большая карта грузиться
Всё будет так, как должно было быть, даже, если будет наоборот.

Последний раз редактировалось Odinok; 10.03.2011 в 01:25.
Odinok вне форума Ответить с цитированием
Старый 10.03.2011, 16:27   #535
AngelOfFate
Пользователь
 
Аватар для AngelOfFate
 
Регистрация: 02.03.2011
Сообщений: 12
По умолчанию

Всем добрый день, я тут уже осведомлялся по поводу PacMan'а. Хотелось прояснить следующие пару вопросов, которые останавливают работу(есть пару идей, но..):

1. Как сделать момент когда PacMan проходит по трубе(та часть где он влазит с одной стороны, и вылазит с другой)?

2. В классической версии, если PacMan катится вбок и была нажата клавиша вверх, он не останавливает движение, дайте пожалуйста идею хотя бы в каком направлении копать?

P.S. Критика кода и реализации проекта приветствуется. Если такого урока не было, могу потом оформить.
Вложения
Тип файла: rar PackManMy.rar (17.2 Кб, 29 просмотров)
AngelOfFate вне форума Ответить с цитированием
Старый 11.03.2011, 21:02   #536
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Цитата:
Сообщение от AngelOfFate Посмотреть сообщение
1. Как сделать момент когда PacMan проходит по трубе(та часть где он влазит с одной стороны, и вылазит с другой)?
Начни с создания типа TGameUnit. В нем выполни записи, которые исчерпывающим образом характеризуют любой объект (это не только колобок но и паучки, управляемые ИИ), ...примерно так:

Код:
type
  // Тип игрового объекта -----------------------------------
  TGameUnit = packed record
    GUBitmap:     TBitmap;  // текстура анимации (bmp)
    GUFrame:      TRect;    // область кадра анимации
    GUMapRect:    TRect;    // область отрисовки анимации на карте
    GUPosX:       Integer;  // координата по-X
    GUPosY:       Integer;  // координата по-Y
    GUDispX:      Integer;  // смещение по-X на пиксел
    GUDispY:      Integer;  // смещение по-Y на пиксел
    GUMove:       Byte;     // направление движения (1 - вверх, 3 - вправо, 5 - вниз, 7 - влево)
  end;
Любой объект этого типа прогоняется через один и тот же алгоритм обработки движения. Это может быть одномерный массив, ...каждая его ячейка - игровой объект. Смотри в этой теме примеры.

Далее, для карты введи еще один тип клетки, например - 2, это код тоннеля. Условие будет искать этот код, и если найдет, то будет считать координаты колобка, и если наткнется на конец карты, то телепортирует его на противоположный конец. Примерно такой код:

Код:
  If PacMan.GUPosX < 0  then PacMan.GUPosX := 20;
  If PacMan.GUPosX > 20 then PacMan.GUPosX := 0;
  If PacMan.GUPosY < 0  then PacMan.GUPosY := 20;
  If PacMan.GUPosY > 20 then PacMan.GUPosY := 0;
Цитата:
Сообщение от AngelOfFate Посмотреть сообщение
2. В классической версии, если PacMan катится вбок и была нажата клавиша вверх, он не останавливает движение, дайте пожалуйста идею хотя бы в каком направлении копать?
Смотри пример РПГ, я уже выкладывал. Движение будет сохраняться, если обработка направления отвязывается от клавиш управления. Т.е. клавиши "дают рекомендацию" о направлении, а в таймере производится обработка, и если колобок находится в определенных условиях (сканирование смежных клеток) эти рекомендации применяются и изменяется направление движения.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 11.03.2011, 23:13   #537
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 16,220
По умолчанию

Цитата:
Сообщение от Odinok Посмотреть сообщение
У тебя случайно исходники не остались, мне там интересно как так быстро у тебя такая большая карта грузиться
Надо искать, папка с откомпилированной версией есть, а где исходники, не помню. Но не такая уж и большая там карта, файл всего 4Мб.
Arigato на форуме Ответить с цитированием
Старый 12.03.2011, 21:43   #538
Odinok
Пользователь
 
Аватар для Odinok
 
Регистрация: 08.03.2011
Сообщений: 91
По умолчанию

Переделал свою игрушку используя Canvas, возник вопрос, как загрузить из bmp файла отдельный кадр в этом рисунке, то есть там нарисовано 16 действий мне надо загрузить каждое действие в bitmap'ы которые описываются массивом 2х16 где количество кадров в рисунке... кто знает как это сделать, подскажите.
PS Что бы сделать анимацию мобов мне придется делать еще один буфер? Или хватит который рисует карту?
Всё будет так, как должно было быть, даже, если будет наоборот.
Odinok вне форума Ответить с цитированием
Старый 12.03.2011, 22:00   #539
AlDelta
Реанимируюсь...
Участник клуба
 
Аватар для AlDelta
 
Регистрация: 19.07.2007
Сообщений: 1,445
По умолчанию

Цитата:
Сообщение от Odinok Посмотреть сообщение
Переделал свою игрушку используя Canvas, возник вопрос, как загрузить из bmp файла отдельный кадр в этом рисунке, то есть там нарисовано 16 действий мне надо загрузить каждое действие в bitmap'ы которые описываются массивом 2х16 где количество кадров в рисунке... кто знает как это сделать, подскажите.
PS Что бы сделать анимацию мобов мне придется делать еще один буфер? Или хватит который рисует карту?
Так и не последовали совету Beermonza:
Цитата:
Сообщение от Beermonza Посмотреть сообщение
Odinok, нужно просто выделить время и прочесть всю тему от начала, ...будет чему поучиться.


Более того, не перевернули даже одну страницу форума назад...
http://programmersforum.ru/showpost....&postcount=525
Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте.
Правила форума => Правила раздела => Для общего развития => Помощь студентам => Перед тем, как создавать тему, скачайте себе...
P.S.: форум не песочница (с)
название статьи на сайте MS: "Отмена принудительного отключения автоматического запуска в реестре Windows"
AlDelta вне форума Ответить с цитированием
Старый 12.03.2011, 22:10   #540
Odinok
Пользователь
 
Аватар для Odinok
 
Регистрация: 08.03.2011
Сообщений: 91
По умолчанию

Цитата:
Сообщение от AlDelta Посмотреть сообщение
Так и не последовали совету Beermonza:




Более того, не перевернули даже одну страницу форума назад...
http://programmersforum.ru/showpost....&postcount=525
не более того, а не дочитал до предыдущей страницы, это ты знал, что предыдущая страница ответ на мой вопрос, но все равно спасибо
Всё будет так, как должно было быть, даже, если будет наоборот.
Odinok вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хорошие уроки Render Общие вопросы Delphi 9 15.09.2012 07:13
Акцесс вопросы новичков Yaga Помощь студентам 4 02.06.2008 00:16
Учебники для новичков в програмировании Рар Общие вопросы Delphi 6 08.01.2007 08:07