|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
05.06.2008, 16:21 | #91 | ||
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
Цитата:
Код:
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Последний раз редактировалось Beermonza; 10.06.2013 в 16:05. |
||
05.06.2008, 18:24 | #92 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
И даже в этом случае TickCount юзать необязательно, достаточно переменной счетчика.
Конструкция с TickCount может заменить таймер (TTimer), когда вешается на Application.OnIdle. В остальных случаях есть таймер и его достаточно. А так получается двойная проверка, таймер тикнул, но мы ему не верим и проверим, а правильно ли он отсчитал? А кто проверит правильно ли TickCount отсчитал?
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог |
05.06.2008, 19:31 | #93 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
Способов бывает много, причем один из равноценных не является абсурдным. Если интервалы условий выбирать кратными интервалу таймера, то все работает как нужно, за исключением если вам конкретно нужно "полтора землекопа". Бреда здесь нет
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Последний раз редактировалось Beermonza; 10.06.2013 в 16:07. |
08.06.2008, 23:33 | #94 |
Форумчанин Подтвердите свой е-майл
Регистрация: 25.02.2008
Сообщений: 289
|
Эй, народ! Напишите еще пару уроков. Я еще начинающий, но большая часть того, что сдесь пишется(в этой теме) либо очень непонятна(когда начинают о чем-то своем спорить профессионалы) или очень простым и неинтересным. Я могу наверное сделать чего-нибуть несложное типа простых шашек, или змейки, или пазлов например. Но дальше не идет. Напишите например какую-нибудь игру типа "герой прыгает по платформам через весь уровень убивая плохих и собирая юонусы". Напишите, как вы бы создавали эту игру сами, но максимально просто, желательно вообще через канву. Например сначала движение главного героя и его гравитацию(разные пружки и пр.), потом удару главного героя и вообще какую-нибудь анимацию, потом загрузка уровня, потом расположение объектов, потом... Особое внимание уделите пожалуйста графике. Я думай это будет многим интересно, надеюсь я не один такой тупой. выручайте, люди. я в тупике - то что я могу сделать не приведет к моему прогрессу, а для остального я совсем не готов. я даже не знаю что конкретно можно спросить. Поэтому напишите еще пару уроков по созданию ИГР для НОВИЧКОВ.
Упс...
|
09.06.2008, 05:39 | #95 |
Участник клуба
Регистрация: 21.11.2007
Сообщений: 1,692
|
http://www.programmersforum.ru/attac...2&d=1211033214
Это анимация. Стрелками влево, вправо, планета катится, как шар из боулинга. Реализовать прыжки проще некуда. Заводите переменную sy, скорость по y и если под ногами у героя ничего нет, то прибавляем ускорение свободного падения к скорости, а по нажатию, прыжок, нужно просто sy присвоить какоенибудь отрицательное число, естественно если sy=0. Ходьбу по платформам это тоже достаточно легко реализовать. Нужно проверить 4 точки героя на столкновение со всеми видимыми платформами(чтобы не тормозило). Две верхние и две нижние. Если одна из нижних столкнулась(если гг падает), то его sy:=0;, а если он подлетает, то нужно проверить, две верхние точки и при столкновении sy:=0; и тут гравитация притянет его к земле. При ходьбе влево вправо, тоже советую завести переменную sx, скорость по x. И проделать тоже самое, только точки нужно проверять слева и справа. http://www.programmersforum.ru/showthread.php?t=20453, здесь описано как двигать экран. Последний раз редактировалось Kostia; 09.06.2008 в 09:31. |
09.06.2008, 16:39 | #96 | |||
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
На канве...
Цитата:
Цитата:
Цитата:
Вот вы утвердились, будет главный герой, он передвигается по уровням, прыгает, стреляет из оружия, собирает предметы, убивает противников, ...типичная аркада. Создавать игру нужно со "скелета" - модели уровня, модели объектов, системы хранения ресурсов и использования ресурсов. Я со своей стороны конечно предложу в качестве модели уровня - двумерный массив. Передвижение героя по "невидимым клеткам" со смещением для плавного перехода. Возможно реализация покажется сложной, ... что скажут остальные, какие еще есть предложения?
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Последний раз редактировалось Beermonza; 10.06.2013 в 16:09. |
|||
09.06.2008, 17:59 | #97 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Если графика на канве, то самое главное отойти от использования компонента TImage. Многие новички динамически создают массивы из TImage и помещают их на форму. Далеко не лучший способ. Единственная польза - научишься динамически создавать VCL объекты, если это кому нибудь надо )
Продолжение следует ... p/s Сегодня уже нет времени, завтра порассуждаю на эту тему )
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог |
09.06.2008, 22:22 | #98 |
Форумчанин Подтвердите свой е-майл
Регистрация: 25.02.2008
Сообщений: 289
|
Ладно, тогда начнем. Вы предлагаете в качестве модели уровня двумерный массив. А что он будет хранить(из приведенного ниже)? Как связать проходимость(т.е. физику), свойства объектов и вывод графики? Массив имеется в виду на сколько: вся карта или по размеру экрана, где будут меняться данные при продвижении?
Упс...
|
10.06.2008, 11:39 | #99 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Физика - это не проходимость, физика - это симуляция естественного поведения предметов - отскакивание, подпрыгивание, сила трения, инерция и т.д. путем расчетов с помощью законов и формул физики.
В аркадах физики обычно нет, в той о к-рой ты говорил точно нет.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог |
10.06.2008, 18:11 | #100 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
Модель аркадного уровня
Пожалуй начнем.
Данный метод построения модели "игрового пространства" может быть с успехом применен для любых игр, как 2D, так и 3D. Представьте себе тетрадный лист в клеточку. Каждая клетка листа служит нам элементарной единицей пространства. Двумерный массив - математическая модель этого "тетрадного листа" (игрового пространства). Но в клетку массива обычно можно записать определенное значение некоторого типа. Для реализации множества параметров клетки (рисунок, проходимость, и пр.) потребуется "определить" эту клетку как собственный тип. Вот как это делается: Код:
Код:
Попробуем создать буфер кадра, в котором будет производиться построение, перед финальным выводом на экран, ... также загрузим картинки. Тут же построим игровой уровень, ...я покажу самый простой, статичный метод: Код:
Обновление кадра будет выполняться в таймере вот таким образом: Код:
Код:
Код:
Вот в принципе и все с моделью игрового пространства. Дальше будем разбирать модель персонажа, при условии, что знатоки помогут найти более простой способ, или просто что-то предложат
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Последний раз редактировалось Beermonza; 10.06.2013 в 16:13. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Хорошие уроки | Render | Общие вопросы Delphi | 9 | 15.09.2012 07:13 |
Акцесс вопросы новичков | Yaga | Помощь студентам | 4 | 02.06.2008 00:16 |
Учебники для новичков в програмировании | Рар | Общие вопросы Delphi | 6 | 08.01.2007 08:07 |