IPB
ЛогинПароль:

 
 Ответить  Открыть новую тему 
> помогите с курсовой
shortt
сообщение 4.12.2009 4:02
Сообщение #1





Группа: Пользователи
Сообщений: 1
Пол: Мужской

Репутация: -  0  +


Здраствуйте у меня проблема немогу зделать как что бы когда я стрелял в кубики они исчезали??
как очистку в задоных координатах задать непойму.. или их за экран вынести если поподаю?
помогите плс...
program KURSOVOY;
Uses crt,Graph;

Var Gd, Gm : Integer;
P : Pointer; key:char;
Size : Word; c,k, x,y,x1,y1:integer;


procedure zastavka;
begin
setcolor(black);
line(305,180,215,290);
line(305,180,395,290);
line(215,290,395,290);
setcolor(yellow);
outtextxy(240,450,'Nazhmite ®® Enter ЇЇ');
outtextxy(270,240,'Star Wars');
end;

procedure avtor;
begin
outtextxy(270,240,'Avtor: Dyadya Roma');
end;
procedure rekordi;
begin
outtextxy(200,200,'1: Dyadya Roma');
outtextxy(200,220,'2: 2132');
outtextxy(200,240,'3: 43434');
end;
procedure igra;
var
x,y,w,yw:integer;

gd,gm:integer;
j, k,t, x2,y2,x1,y1:integer;
procedure war(x,y:integer);
begin
moveto(x,y);
rectangle(x-20,y+50,x+40,y+40);
end;
procedure kubik1(x,y:integer);
begin
moveto(x,y);
rectangle(x,y,x+20,y+10);
if y<500 then y1:=y1+3 else begin y1:=5;
x1:=random(640);
end;
end;
procedure kubik2(x,y:integer);
begin
moveto(x,y);
rectangle(x2,y,x2+20,y+10);
if y<500 then y2:=y2+3
else begin y2:=5;
x2:=random(640);
end;
end;
procedure klavishi; begin
if keypressed then
case readkey of
#13: begin repeat readkey; until readkey=#13; end;

#72: begin w:=1 ; end;
#77: x:=x+80;
#75: x:=x-80; {
#72: y:=y-80;
#80: y:=y+80; }
end;
end;
procedure wistrel(x:integer;var y:integer);
begin
rectangle(x,y,x+1,y+2);

end;
begin
randomize;
gd:=detect;
Initgraph(gd,gm,'');
y:=390;
x:=300;
w:=0;
yw:=390;
repeat
cleardevice;
klavishi;
wistrel(x,yw);
if (w=1) and (yw>0) then yw:=yw-7 else begin yw:=y; w:=0; end;
war(x,y);
kubik1(x1,y1);
if (x2>=x-20) and (x2<=x+40) and (y2>=y) and (y2<=y+100) then
begin
klavishi;
repeat
cleardevice; outtextxy(280,240,'GAME OVER '); setcolor(red);
outtextxy(210,450,'Nazhmite ®® ESC ЇЇ chtobi viyti');
readkey; until readkey=#27; halt;
end;
kubik2(x2,y2);

klavishi;
if (x1>=x-20) and (x1<=x+40) and (y1>=y) and (y1<=y+100) then
begin
repeat cleardevice; outtextxy(280,240,'GAME OVER '); setcolor(red);
outtextxy(210,450,'Nazhmite ®® ESC ЇЇ chtobi viyti');
readkey; until readkey=#27; halt;
end;

delay(3000);

until (keypressed) and (readkey=#27);
readln;


case key of
#77: x:=345;
#75: x:=265;
#72: begin

end;
#80: begin

end;
#27: halt;
end;
end;
Begin
Gd:=Detect;
InitGraph(Gd, Gm, '');
If GraphResult <> grOk Then Halt(1);
SetFillStyle(1,blue);
Bar(0, 0, GetMaxX, GetMaxY);
zastavka;
Size := ImageSize(10, 20, 30, 40);
GetMem(P, Size);
GetImage(10, 10, 130, 20, P^);
ReadLn;
x:=10;y:=18;
ClearDevice;
setfillstyle(1,1);
setcolor(15);
bar(10,10,130,140);
outtextxy(20,20, 'New igra');
outtextxy(20,40, 'Prodolzhit');
outtextxy(20,60, 'Vybor igroka ');
outtextxy(20,80, 'Rekordy ');
outtextxy(20,100,'Avtor ');
outtextxy(20,120,'Exit');

{delaem vxod v samu igru}
if y=18 then
begin
PutImage(x, y, P^, XorPut);
if readkey=#13 then
begin PutImage(x, y, P^, XorPut);igra;
PutImage(x, y, P^, XorPut);
end; PutImage(x, y, P^, XorPut); end;

PutImage(x, y, P^, xorPut);
repeat
PutImage(x, y, P^, XorPut);
if keypressed then key:=readkey;
case key of
#72: y:=y-20;
#80: y:=y+20;
end;
if y>118 then y:=18;
if y<18 then y:=118;

{delaem vyxod iz igry}
if y=118 then
begin
PutImage(x, y, P^, xorPut);
if readkey=#13 then exit;
PutImage(x, y, P^, XorPut);
end;


{delaem vxod v samu igru}
if y=18 then
begin
PutImage(x, y, P^, XorPut);
if readkey=#13 then
begin PutImage(x, y, P^, XorPut);igra;
PutImage(x, y, P^, XorPut);
end; PutImage(x, y, P^, XorPut); end;
{avtor}
if y=98 then
begin
PutImage(x, y, P^, XorPut);
if readkey=#13 then
begin PutImage(x, y, P^, XorPut);cleardevice;avtor;
PutImage(x, y, P^, XorPut);
end; PutImage(x, y, P^, XorPut); end;
{rekordi}
if y=78 then
begin
PutImage(x, y, P^, XorPut);
if readkey=#13 then
begin PutImage(x, y, P^, XorPut);cleardevice;rekordi;
PutImage(x, y, P^, XorPut);
end; PutImage(x, y, P^, XorPut); end;

PutImage(x, y, P^, XorPut);
until readkey=#27;


ReadLn;
CloseGraph;
End.


М
Используй тэги code=pas и /code, а не цитату, пожалуйста



Сообщение отредактировано: Lapp - 4.12.2009 5:18
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 5.11.2024 4:06
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"