|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
15.04.2011, 00:24 | #21 | |
Пользователь
Регистрация: 08.03.2011
Сообщений: 91
|
Цитата:
Чем ближе я к завершению проекта, тем больше мне хочется, усложнить задачу
Всё будет так, как должно было быть, даже, если будет наоборот.
|
|
15.04.2011, 03:54 | #22 | |
Непрофессионал
Участник клуба
Регистрация: 01.01.2008
Сообщений: 1,405
|
Я глянул ваш исходник. Сразу скажу, я не бог весть какой программист, тем более на Delphi, поэтому можете не воспринимать мой гундёж всерьёз. Но, пардон. То, чего можно было бы назвать движком - не увидел. Ожидал увидеть крутой замес из объектов, классов, структур и т.д. А не, нема их тут. Всё очень жёстко, куча констант.
У вас всего один объект. Тип клетка. И в этом объекте всё. Мне кажется это неправильно. Например, вот это: Код:
Нет уж, извините. Мухи отдельно, котлеты отдельно. Есть бомбы, заводите класс "бомбы", заводите банк (массив) объектов класса "бомба" и работаете с этим банком. То же самое с мобами, то же самое с бонусами. Про бонусы - их я вообще не увидел. Нету их там вообще ни в каком виде. Если не заметил, ткните носом. Цитата:
Анимации... Анимации должны вообще быть независимы от типа объектов. Должен быть прям класс (структура, как хотите) под названием "анимация". И универсальные методы для работы с анимациями. А то вот такой фрагмент: Код:
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------ Страничка с моими программками http://ulex-masm.ru |
|
15.04.2011, 19:19 | #23 | |
Пользователь
Регистрация: 08.03.2011
Сообщений: 91
|
Цитата:
То, чего можно было бы назвать движком - не увидел. МММмм а по вашу, что есть движок игры
Всё будет так, как должно было быть, даже, если будет наоборот.
|
|
15.04.2011, 20:27 | #24 | |
Непрофессионал
Участник клуба
Регистрация: 01.01.2008
Сообщений: 1,405
|
Цитата:
Вот например - моб, враг, в случае убийства которого из него могут вываливаться всякие плюшки. У него есть набор свойств. И надо постараться описать его класс как можно универсальнее. Они могут быть разных типов, могут быть одинаковых типов, но разные по скорости, силе, уровню брони, могут таскать разные вкусности и т.д. Вот как вы сейчас сделаете двух одинаковых мобов, но с разными скоростями движения, или как вы сейчас сделаете моба, которого можно убить с двух/трёх попаданий? Опять будете прописывать это в виде case-ов и if-ов непосредственно в функциях? Тем самым вы всё больше будете усугублять неуниверсальность ваших процедур. Это плохо. Процедуры должны быть по возможности универсальны. Это достигается путём заложения свойств объекта в сам объект, а не в методы, его обрабатывающие. Например, есть процедура, обрабатывающая передвижения моба, она универсальная, она берёт структуру объекта и там есть параметр скорость, поэтому ей впринципе даже неинтересно кого она двигает, лучника, или дракончика. А вдруг это медленный танк, который наелся бонусов скорость и должен носиться как угорелый по карте. Как вы сейчас это сделаете? Вот это и называется структурой программы (и, наверное, может называться движком).
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------ Страничка с моими программками http://ulex-masm.ru |
|
15.04.2011, 23:37 | #25 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
Добавлю пару слов, если позволите.
Движком структура будет называться только тогда, когда можно будет зайти в каталог, выбрать специализированный файл и заменить параметры не вмешиваясь в код программы, после чего объект без проблем подключится не нарушая целостности. Также должен быть набор функций и процедур для работы со спрайтами и шрифтами, т.е. на входе параметры отрисовки, на выходе графика в указанное место с анимацией или без, ...все должно быть заложено. Для начала нужно разделить объекты на группы, что есть карта, что есть моб, что есть бомба, что есть бонус, что есть банк анимации, и пр. ...все это типы записей. К этим типам нужны элементарные процедуры, например, к мобу: появление, движение, атака (съедание героя), гибель. А что нужно пользователю, если это будет РПГ? ...подумай, там хуча та еще.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
16.04.2011, 01:36 | #26 | |
Пользователь
Регистрация: 08.03.2011
Сообщений: 91
|
Цитата:
Всё будет так, как должно было быть, даже, если будет наоборот.
|
|
14.05.2011, 18:56 | #27 |
Пользователь
Регистрация: 08.03.2011
Сообщений: 91
|
Переделал структуру программы, появились отдельные типы для игрока, бомб, карты
Кто может сказать как оптимизировать вывод графики на экран, так как при взрыве бомбы заметно падает производительность игры PS Игра еще далеко не готова, нет интерфейса, анимации взрыва стен, не сделано нормальное меню, и прочие плюшки для комфортной игры
Всё будет так, как должно было быть, даже, если будет наоборот.
|
18.05.2011, 20:27 | #28 |
Старожил
Регистрация: 21.03.2009
Сообщений: 2,193
|
В код не залезал, но если поставить две бомбы подряд, то они взрываются одновременно. Стало быть, недостаточно хорошо вы выделили сущности. Каждая бомба должна иметь свой собственный таймер.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта Тема на форуме, посвященная ему же |
19.05.2011, 14:45 | #29 | |
Форумчанин
Регистрация: 04.08.2009
Сообщений: 684
|
Цитата:
Еслия Вам помог, не поленитесь нажать на весы и оставить отзыв. Это не займет много времени, но даст понять, что я старался не зря =)
Мой ник зарегистрирован, а твой? |
|
19.05.2011, 16:55 | #30 |
Пользователь
Регистрация: 08.03.2011
Сообщений: 91
|
МММмм, кто-нибудь может залезть в код и посмотреть, что можно оптимизировать
Всё будет так, как должно было быть, даже, если будет наоборот.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
На Delphi 7 сделать игру кто хочет стать миллионером в delphi 7 | 666dart666 | Помощь студентам | 11 | 04.11.2010 17:57 |
Rad Studio 2011 XE: новое в Delphi, C++ Builder, RadPHP и Delphi Prism | savva-paladin | Софт | 18 | 02.10.2010 20:24 |
Delphi. Как нарисовать в Delphi два движущиеся шара с определенной скоростью? | redred | Общие вопросы Delphi | 10 | 11.12.2007 10:43 |
Как открыть БД, написанную в Delphi если нf другой машине Delphi нет? | dagarik | БД в Delphi | 7 | 22.10.2007 17:54 |
не StringGrid1.Cells[1,1]:='Delphi'; а вот так SG1.C[1,1]:='Delphi' | Nemesisking | Компоненты Delphi | 7 | 08.09.2007 03:27 |