Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите! Не могу придумать как мне обнулить анимацию! (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;//
дальше идёт не коментарий переменной...


Наверх

Титульная страница Поиск, карта сайта Написать письмо