Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/55: Рейтинг темы: голосов - 55, средняя оценка - 4.82
26 / 26 / 15
Регистрация: 20.10.2012
Сообщений: 180
1

Управление объектом с клавиатуры (задать движение)

06.12.2012, 13:34. Показов 10197. Ответов 5

Author24 — интернет-сервис помощи студентам
есть флаг, нужно сделать так, чтобы можно было управлять им с клавиатуры.
Код флага:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
program pr;
uses graphABC;
 
var
x,y:integer;
l,h:integer;
w:integer;
i:integer;
begin
x:=100;
y:=100;
l:=50;
h:=25;
w:=round(h/3);
SetBrushColor(clWhite); 
Rectangle(x,y,x+l,y+w); 
 
SetBrushColor(clBlue); 
Rectangle(x,y+w,x+l,y+2*w); 
 
SetBrushColor(clRed); 
Rectangle(x,y+2*w,x+l,y+3*w); 
 
 
 
readln;
end.
Добавлено через 16 часов 59 минут
помогитеееее
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.12.2012, 13:34
Ответы с готовыми решениями:

Управление объектом с клавиатуры
Добрый день пытаюсь сделать игру Астероид, и вот столкнулся с проблемой управления космическим...

Движение за объектом
Возник еще один вопрос.. Надеюсь, последний в этом разделе)) Есть блок слева(Heroy), а справа...

Движение камеры за объектом
Добрый день! Захотелось:) написать что-то похожое на гонки. Возник вопрос - как перемещать камеру...

Движение, вращение, управление движением, управление вращением фигуры
Написать программу, выполняющую четыре операции над графическим...

5
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
06.12.2012, 14:13 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
program pr;
uses graphABC,crt;
procedure flag(x,y,l,h:integer);
var w:integer;
begin
w:=h div 3;
SetBrushColor(clWhite);
Rectangle(x-l,y-w div 2,x+l,y-3*w div 2);
SetBrushColor(clBlue);
Rectangle(x-l,y-w div 2,x+l,y+w div 2);
SetBrushColor(clRed);
Rectangle(x-l,y+w div 2,x+l,y+3*w div 2);
end;
var x,y,r,d,l,h:integer;
    k:char;
begin
x:=windowwidth div 2;
y:=windowheight div 2;
textout(x-150,0,'Управление стрелкакми, Выход - Esc');
hidecursor;
l:=25;
h:=25;
Flag(x,y,l,h);
lockdrawing;
repeat
if keypressed then
  begin
   k:=readkey;
   if k=#0 then k:=readkey;
   case k of
   #80:begin
       clearwindow;
       if y>windowheight-h div 2 then d:=0
       else d:=10;
       y:=y+d;
       Flag(x,y,l,h);
       delay(100);
       redraw;
      end;
   #72: begin
        clearwindow ;
        if y<h div 2 then d:=0
        else d:=10;
        y:=y-d;
        Flag(x,y,l,h);
        delay(100);
        redraw
       end;
   #75:begin
       clearwindow;
       if x>windowwidth-l then d:=0
       else d:=10;
       x:=x+d;
       Flag(x,y,l,h);
       delay(100);
       redraw;
      end;
   #77:begin
       clearwindow;
       if x<l then d:=0
       else d:=10;
       x:=x-d;
       Flag(x,y,l,h);
       delay(100);
       redraw;
      end;
   #27:exit;
   end;
 end;
until k=#27;
end.
Добавлено через 4 минуты
Я поправлял, если что.
0
26 / 26 / 15
Регистрация: 20.10.2012
Сообщений: 180
06.12.2012, 14:49  [ТС] 3
Puporev, спс, но я уже сам сделал)

Добавлено через 8 минут
Puporev, а как сделать ограничения окна? чтобы флаг не уходил за его пределы...
0
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
06.12.2012, 14:50 4
leobrn, Так у меня не уходит.
0
26 / 26 / 15
Регистрация: 20.10.2012
Сообщений: 180
06.12.2012, 14:52  [ТС] 5
хорошо =)
0
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
06.12.2012, 14:54 6
leobrn, Нет уж, сам, так сам...
0
06.12.2012, 14:54
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.12.2012, 14:54
Помогаю со студенческими работами здесь

Управление объектом в canvas
Graphics::TBitmap* gBitmap = new Graphics::TBitmap; gBitmap-&gt;LoadFromFile(&quot;0.bmp&quot;);...

Тач-управление объектом
Здравствуйте гуру У меня возникла проблема При движении пальца вверх или вниз по экрану...

Движение камеры вслед за объектом
Ребята привет. Есть скрипт движения камеры с помощью мышки по X Y Z + вращение, прям как в...

Управление объектом в экранных координатах
Здравствуйте , хочу узнать как можно выставить объект не в мировых координатах , а в экранных


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru