Здраствуйте у меня проблема немогу зделать как что бы когда я стрелял в кубики они исчезали?? как очистку в задоных координатах задать непойму.. или их за экран вынести если поподаю? помогите плс...
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;
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;
{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, а не цитату, пожалуйста