Главная страница
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.013 c
7-17414
Igor---
2003-01-08 13:09
2003.03.06
Клонирование дисков


3-16939
KPY
2003-02-13 15:19
2003.03.06
Опять Excel


3-16864
Толян
2003-02-18 09:38
2003.03.06
Индексация.


14-17361
Ал
2003-02-18 12:47
2003.03.06
Подскажите, где найти бесплатные HELP-редакторы?


3-16893
denis24
2003-02-13 11:00
2003.03.06
колво.десятичных при создании поля