![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите! Не могу придумать как мне обнулить анимацию! (DelphiX) [Delphi, DelphiX, Windows, XP]
Jus © (2004-09-25 02:02:00)Помогите! Не могу придумать как мне обнулить анимацию! Подробнее: Переменная anim:integer;// счётчик анимации keyPress:boolean;//Если нажать кнопку и держать, то anim:=anim+1до 8, а потом опять сбрасывается. Если нажать( KeyPress:=true) на кнопку и отпустить( KeyPress:=false) её когда anim будет к примеру =5то при следующем нажатии animбудет продолжатся с 5, а надо чтоб с нуля. В таймере у меня
IF Player1.KeyPress=false Then Player1...//(загрузка картинки где Player просто стоит)если сюда же впихнуть anim=0, то анимация всегда будет 0;
Как сделать? Надеюсь вопрос понятен)
(2004-09-26 10:06:00) [1]Удалено модератором
Jus (2004-09-25 16:38:00) [2]
> Загадочный какой-то код. А на какую кнопку нажали нам глубоко
> пофигу? Честно я не слишком понял чего ты там намутил, и
> в чем была проблема, но так у тебя вышеприведенный код выполняется
> при отпускании ЛЮБОЙ клавиши, что мне кажется несколько
> странным.
Да, я уже понял и переделал всё там!:) Что с меня взять, "игровой" опыт тока набираю:)
Servelat (2004-09-25 12:42:00) [3]
> procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
> Shift: TShiftState);
> begin
> Player1.keyPush:=False;
> Player1.anim:=0;
> end;
Загадочный какой-то код. А на какую кнопку нажали нам глубоко пофигу? Честно я не слишком понял чего ты там намутил, и в чем была проблема, но так у тебя вышеприведенный код выполняется при отпускании ЛЮБОЙклавиши, что мне кажется несколько странным.
Jus (2004-09-25 09:55:00) [4]
> по ссобщению клавиши менять анимацию это круто. браво! приз
> за самое ненужное изобретение.
Там все действия всё равно через ДХтимер, а этот дхтимер подстраивается в индивидуальном порядке под каждый комп, не переживай.
> по ссобщению клавиши менять анимацию это круто. браво! приз
> за самое ненужное изобретение. А если у человека в 10 раз
> быстрее.медленнее сообщение ловится?
Ты б не призы давал, а сказал бы как надо!
Jus (2004-09-25 09:49:00) [5]
> Darth (25.09.04 03:01) [4]
Не беспокойся, я всё подумал:) Или что ты имееш ввиду?
Darth (2004-09-25 03:01:00) [6]по ссобщению клавиши менять анимацию это круто. браво! приз за самое ненужное изобретение. А если у человека в 10 раз быстрее.медленнее сообщение ловится?
Jus (2004-09-25 02:34:00) [7]Всё! Сам разобрался:)
Я работаю с DelphiX-совскими компанентами (DXInput)и совсем забыл, про Form1:) и что та есть событие OnKeyUP.
procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
Player1.keyPush:=False;
Player1.anim:=0;
end;
СПАСИБО)
Jus (2004-09-25 02:10:00) [8]Забыл описать тип:)
TPlayer=class(TImageSprite)
anim:integer; //счётчик анимации
keyPress:Boolean ;// Нажата ли кнопка (этот коментарий не совсем подходит)
look:Bolean; //в какую сторону смотрит игрок Тру-в право Фалс-влево
public
procedure DoMove(...
end;
Jus (2004-09-25 02:04:00) [9]извеняюсь
> keyPress:boolean;//дальше идёт не коментарий переменной...