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

Вниз

Полоска здоровья: DelphiX   Найти похожие ветки 

 
greenrul ©   (2002-09-29 20:26) [0]

Как вообще такие вещи рисуются зная координаты юнитов? Ну разумеется цвет полоски можно менять, а саму полоску "сжимать".

И где вообще можно найти НОРМАЛЬНЫЙ хелп или руководство на английском по DelphiX с ПРИМЕРАМИ (чего в стандартном DelphiX хелпе нет)


 
greenrul ©   (2002-09-30 15:13) [1]

Please help


 
Карлсон ©   (2002-09-30 20:39) [2]

насчет полоски я лично делаю так, мож ето конечно и не правильно, но все же.
у мя есть два интегера типа life1 и life2.
при запуске игры их значения устанавливаются в "5".
на таймере который перелистывает буфера, у меня стоит проверка значений этих жизней.
если жизнь полная, то рисуем над юнитом полоску типа "полностью зеленый битмап".
если жизнь=4, то рисуем полоску из трех желтых сегментов и т.д.
все жизни у меня нарисованы в битмапах, т.к. если делать заполнение области точками, то будет все очень сильно тормозить.
а координаты прорисовки жизней просто высчитать. нужно x перевести кажется в Float, потом флоат перевести в стринг, а потом опять в интегер.
опять же это наверняка неправильно, но если знаете другой метод, то поделитесь плиз!


 
greenrul ©   (2002-10-01 20:35) [3]

А можно на Canvas рисовать?

я в хелпе видел описание ф-ции procedureDrawWaveX(Dest:TDirectDrawSurface;X,Y,Width,Height,PatternIndex:amp,Len,ph:Integer);
но честно говоря так и не понял, что такое ph и пр.

Если кто ее использует - приведите пример с рисованием на коорд. x,y шириной 100, высотой 5 и задаваемым цветом.

СПАСИБО


 
Карлсон ©   (2002-10-01 21:01) [4]

посмотри примеры, которые идут вместе с дельфиИксом.
там все и так понятно.

на канвасе я как раз и рисовал кажись....


 
Drunken Cat   (2002-10-02 10:49) [5]

Посмотри в примерах на DelphiGFX (Пример изометрии, с монстриком из Дьяблы... кажись) Там для вывода на экран энергии монстра какраз используется эта функция... может станет понятнее :)


 
greenrul ©   (2002-10-02 19:29) [6]

2Drunken Cat
Вот его я и смотрел - нифига не понял, что там за последнияя переменная и почему все не в таком порядке, как в хелпе


 
Drunken Cat   (2002-10-03 04:38) [7]

Если смотрел, тогда не очень понятно чего тебе не понятно ;)
Метод TPictureCollectionItem.DrawWaveX(Dest:TDirectDrawSurface;X,Y,Width,Height,PatternIndex:amp,Len,ph:Integer);
Деформирует и выводит спрайтик (угу-угу, wave - волна... вроде :))
Dest - ну... надеюсь понятно :)
X, Y - надеюсь тоже ;)
Width,Height - на сколько растянуть по вертикали и горизонтали
PatternIndex - номер спрайта
amp - амплитуда волны (расстояние до вершины волны)
Len - длина волны (расстояние от одной до другой волны)
ph - мгм... фаза волны (то бишь, здесь можно указывать с какого момента начнется волна - с самой верхней точки, с нижней... или гдет в промежутке)
Теперь - есть картика Energy размером 128x8 в коей плавно изменяется цвет от красного к зеленому. В ImegList"e у данной картинке в пропертях PatternHeight и PatternWidth прописывается 8 и 1... так как 1, то максимальная энергия равна 127 (хочешь сделать 100, лабай картинку с шириной 100px) Все... Картинка разбита на 128 частей (1x8) номер сей части указывается в FEnergy. Метод DrawWaveX берет картинку, растягивает, дефармирует, выводит...
Вообще, насколько я понял, вся сия байда с DrawWaveX использована лишь чтоб анимировать полоску жизни (она эдак извивается), если тебе это собственно и не нужно, то используй StretchDraw.
P.S. Надеюсь понятно объяснил ;)



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

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

Наверх




Память: 0.48 MB
Время: 0.026 c
1-17174
ghg
2003-02-24 09:57
2003.03.06
Popup у TWinControl


6-17232
Anton
2003-01-17 11:54
2003.03.06
Что за ошибка EidSocketError : SocketError #10110


4-17454
NikolaB
2003-01-19 01:29
2003.03.06
U function MessageBox est parametri MB_ICON...


4-17429
kamik
2003-01-16 17:48
2003.03.06
Значки


14-17297
chernoruk
2003-02-19 23:15
2003.03.06
управление Media Player