игро - Компонент

  • Автор темы niello
  • Дата начала
N

niello

Гость
#1
Вопрос у меня по созданию компонента, на основе DelphiX.
Раньше я не сталкивался с созданием компонентов, но в процессе(начальном) при создании игры заметил что легче всего создать компонент с которым работать потом. В интернете вывешено много всего по созданию классов, которые потом могут быть использованы в игре(На разных сайтах одно и тоже). А вот по созданию компонентов на основе DelphiX
ничего. Так как я с этим сталкиваюсь впервые те кто что - то могут подсказать пожалуйста одзовитесь.
При попытке создать компонент мне пришло в голову что он дожен наследовать несколько компонентов: DXImageList, DXSpriteEngine(возможно больше)...
И еще некоторые свойства:
- несколько отдельных наборов рисунков(ItemsW,ItemsS,ItemsA,ItemsD,ItemsX)- так как должна присутствовать анимация, ее легче всего разбить на несколько частей по направлению дваижения(W-вперед,A-лево,S-назад,D-вправо,X-дополнительный где будут установлены такие свойства как повороты, смерть, и т.д)
- для WASD должно существовать еще такая иерархия как набор чисел... А именно 0-4 кадр движение(хотьба), 5-9-удар ножем, 10-14-стрельба, 15-19-удар ногой...Так как что в направлении A что в -W и т.д. их характер одинаков, то они характеризубтся одним числом, а вот X- не имеет общего с ними числа...
- Свойство Caption, у меня наверное единственное что получалось - отвечает за Имя игрока(да чуть не забыл это должен быть код определяющий игрока в РПГ игре).(string)
- Name - как Caption.(string)
-PotitionX(Word)
-PotitionY(Word)
- И тут Большая закладка (такой себе +) в которой указываются свойства игрока
-Year - возраст (Byte)
-HPM - количество жизней максимальное доступное тебе(Byte)
-HP- количество ХР сейчас(Byte)
-VunM - выносливость максимальное доступное тебе(Byte)
-Vun - выносливость сейчасv
-VES -максимальное количество которое может поднять(Byte)
-SkorosT - скорость (Byte)
-PlayerClass-выбор из нескольких закладок ['Воин','Оратор','Техник',] ну типа того
-Навыки-+военные___
| |-Холодное оружие(Byte)
| |-Огнестрельное(Byte)
| |-Рукопашный бой(Byte)
+оратоские_
| |-Оратор(Byte)
| |-Привлекательность(Byte)
| |-Торговля(Byte)
+умения____
| |-Доктор(Byte)
| |-Первая помощь(Byte)
| |-Взлом(Byte)
| |-Ремонт(Byte)
| |-Компьютер(Byte)
+убитые____
| |-Мужчины(Word)
| |-Женщины(Word)
| |-Военные(Word)
| |-Бандиты(Word)
| |-Монстры(Word)
| |-Секта Ночи(Word)
| |-Нечисть(Word)
+извесность__(Byte)
На счет инвентаря в инвентаре должны хранится номера, указывающие на вещь ID(WORD)
-инвентарь--------------+на тебе--------+-бРОНЯ
| |-Левая рука
| |-Правая рука
| |-И может есчо что- то
|
|
|
|
|
|в рюкзаке

-компонент должен иметь свойство как DXDraw, на который он будет автоматически прорисовываться...
-И еще таймер, в определенный момент времени которого если ничего не будет происходит он будет что-то делать...(Оживление)
Ну может еще что- то
Конешно это сложно но кто то может все таки что-то подобное делал подскажите, или кто-то что то подскажет, а то не могу....
не могу, ничего не получается. пишу а все в пустую....