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

Вниз

Стычки между ботами. Glscene   Найти похожие ветки 

 
Trof ©   (2005-04-23 12:04) [0]

Использую Glactor и загружаю его из smd, нужно чтобы когда actor подходит к какому-то персонажу грузится анимация атаки (мечом) и
когда текущий фрайм = последнему, то у того персонажа отбираются жизни.
procedure Tlifeobject.attack(obj : tglbasesceneobject);
var
sdf: TAffineVector;

begin
with form1 do begin
button1.Caption:=self.Parent.Name;

if distanceto(obj) < 10 then begin
if baseAnimation<>"attack" then begin
baseAnimation:="attack";
SwitchToAnimation(baseAnimation,true);
SetStartFrame(1);
setendframe(100);
end;
self.Parent.PointTo(obj,NULLHmgVector);
if CurrentFrame=endframe then begin

 obj.life:=obj.life-10;
 
 end;
end else begin
if baseAnimation<>"walk" then begin
baseAnimation:="walk";
SwitchToAnimation(baseAnimation,true);
end;
self.Parent.PointTo(obj,yHmgVector);
sdf[2]:=100;
GetOrCreateDCEDynamic(self.Parent).ApplyAccel(sdf);

end;

end;
end;
Всю эту процедуру я пихаю в Cadencer, но вот в чём проблема - у obj никогда не отбирается ровно 10 жизней а почему-то иногда 20,30 или даже 50. В чём проблема?


 
DeadMeat ©   (2005-04-23 13:14) [1]

Во первых - отформатируй код нормально.. А невозможно читать..
Во вторых - попробуй в if CurrentFrame=endframe then begin останавливать анимацию.. Резко и сразу. И смотри что это была за анимация по имени.

Может так поможет... Но не уверен.

---
...Death Is Only The Begining...


 
Trof ©   (2005-04-23 15:42) [2]

Всё я понял -
if CurrentFrame=endframe then begin

obj.life:=obj.life-10;
CurrentFrame:=1;
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.039 c
6-1115050639
read_me
2005-05-02 20:17
2005.08.14
получить размер файла из интернета


6-1114349646
Alpine
2005-04-24 17:34
2005.08.14
Помогите плизз составить POST запрос в NMHTTP !


14-1121727913
pasha_golub
2005-07-19 03:05
2005.08.14
Пока меня не заставили работать


1-1122017906
stud
2005-07-22 11:38
2005.08.14
обратиться к потоку в рантайм


1-1122040713
Андрей Жук
2005-07-22 17:58
2005.08.14
Как прикрутит эдитор к VirtualTree?