Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.05;
Скачать: CL | DM;

Вниз

Что и так?   Найти похожие ветки 

 
Изврат   (2002-11-22 20:36) [0]

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


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

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


 
Shadow ©   (2002-11-25 20:20) [2]

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


 
Namo ©   (2002-11-26 20:36) [3]

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


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

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


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


 
Namo ©   (2002-11-28 22:39) [5]

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


 
Shadow ©   (2002-11-29 18:47) [6]

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

...
...
..

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


 
Namo ©   (2002-11-30 15:24) [7]

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



Страницы: 1 вся ветка

Текущий архив: 2003.05.05;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
14-12898
alex134
2003-04-10 22:26
2003.05.05
Отладка


1-12715
Zelius
2003-04-22 21:21
2003.05.05
Как экзешнику сапдейтить самого себя?


14-12883
ИгорьОк
2003-04-17 01:45
2003.05.05
Функции в стандартных DLL


1-12767
exo
2003-04-22 04:52
2003.05.05
button


14-12882
Вадим
2003-04-17 03:32
2003.05.05
Интерпретатор