Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Что и так? [Delphi, Windows]


Изврат ©   (2002-11-22 20:36:00) 

Вот игру пишу т столкнулся с проблемой. И с помощью DXSpriteEngine двигаю курсор и карту. Но КАК указать, когда надо рисовать карту и двигать её, а когда не надо, а то что-то в меню рисует карту.


Namo   (2002-11-30 15:24:00) [1]

Вроде так и есть, но карта рисуется без моего участия, т.е. с помощью Движка. Он рисует своё в таймере, и там есть курсор, так что рисовать или нет нельзя указать тким способом. Нужно указывать в самом движке. Там есть какие-то Итемы, но с ними у меня не получалось работать.


Shadow   (2002-11-29 18:47:00) [2]

Здесь еще проще, в OnKeyDown(Form или DXDRAW) перехватываешь кнопку вызова меню PlayMode:=pmMenu
procedure Timer1Timer(Sen...);
...
...
...
if PlayMode=pmBattle then
рисование игры
else
рисование меню

...
...
..

Z-order у меню больше чем у карты.


Namo   (2002-11-28 22:39:00) [3]

так а если в таймере рисуется и меню и игра?
Просто можно обойтис двумя ДХДвижками. Но я не собираюсь таким заниматься, ведь это наверное не красиво!


Shadow   (2002-11-27 20:18:00) [4]

Можно делать так:
Создаешь тип PlayMode (это ты наверное уже сделал), где хранишь состояние игры, например pmBattle-игра, pmMenu-меню. В OnKeyDown(Form или DXDRAW) перехватываешь кнопку вызова меню, останавливаешь таймер, ?заливаешь поле черным цветом?, рисуешь меню, по выходу из меню,?заливаешь поле черным цветом?, возобновляешь работу таймера.


Или я опять че нить не понял?


Namo   (2002-11-26 20:36:00) [5]

вот создаю, например, карту
Map:=TMap.Create(DXEngine.Engine,64,64);и теперь после этого она рисуется ВСЕГДА. А уменя перед этим есть меню игры и т.д., т.е. я хочу узнать, как мне указать, надо ли сейчас рисовать карту при каком-то условии:
if PlayMode=pmBattle then ...


Shadow   (2002-11-25 20:20:00) [6]

?В таймере перехватываешь нажатия клавиш, и от их значения в программе выполняешь определенные действия? Или я вопрос не так понял..


Изврат   (2002-11-25 19:51:00) [7]

НУ что, никто не знает, как указать, какой именно элемент рисовать? Не может быть.


Наверх

Титульная страница Поиск, карта сайта Написать письмо