Добавил:
Kaz
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:АСОИ, Delphi, много вариантов 2 сем / 1классы / грузовик самосвал / USam
.pas unit USam;
interface
Uses Graphics,UGruz,SysUtils;
Type TSam=Class(TGruz)
KuzColor:Tcolor;
constructor Create(X0,y0:integer;Fill:boolean;Canvas0:Tcanvas);
Procedure Show; override;
Procedure Oprokinut;
Procedure NormalKuz;
procedure Full;
end;
implementation
var Fill:boolean;
Constructor TSam.Create;
begin
inherited Create(x0,y0,25,ClGreen,Canvas0);
normalKuz
end;
Procedure Tsam.normalKuz;
begin
KuzColor:=ClBlack;
Show
end;
Procedure TSam.show;
Var XI,YI,H,I:integer;
Begin
Inherited Show;
With Canvas do begin
Moveto(x,y);
canvas.Brush.Color:=clbtnFace;
Canvas.Pen.Color:=clbTnFace;
canvas.Rectangle(x-10,y,x+150,y-300);
canvas.Pen.Color:=KuzColor;
Canvas.Brush.color:=KuzColor;
moveto(x-5,y-10);
Lineto(x+140,y-10);
Lineto(x+140,y-70);
Lineto(x+120,y-70);
Lineto(x+120,y-50); self.
Lineto(x,y-50);
Lineto(x-5,y-10);
if fill=true then begin
Brush.Color:=clblack;
rectangle(x+10,y-49,x+100,y-70);
end;
end;
end;
Procedure TSam.oprokinut;
Begin
canvas.Brush.Color:=clbtnFace;
Canvas.Pen.Color:=clbTnFace;
canvas.Rectangle(x-10,y,x+150,y-100);
canvas.Pen.Color:=KuzColor;
Canvas.Brush.color:=KuzColor;
With Canvas do begin
moveto(x-5,y-10);
Lineto(x-5,y-50);
Lineto(x+90,y-120);
lineto(x+78,y-133);
lineto(x+90,y-142);
Lineto(x+125,y-105);
Lineto(x-5,y-10);
Brush.Color:=clblack;
rectangle(x-110,y+60,x-20,y+20);
end;
end;
procedure Tsam.Full;
var i:integer;
begin
for i:=1 to 5 do
with canvas do begin
canvas.Brush.Color:=clbtnFace;
Canvas.Pen.Color:=clbTnFace;
canvas.Rectangle(x-10,y,x+150,y-300);
canvas.Pen.Color:=KuzColor;
Canvas.Brush.color:=KuzColor;
moveto(x-5,y-10);
Lineto(x+140,y-10);
Lineto(x+140,y-70);
Lineto(x+120,y-70);
Lineto(x+120,y-50);
Lineto(x,y-50);
Lineto(x-5,y-10);
Brush.Color:=clblack;
rectangle(x+10,y-130+20*i,x+100,y-170+20*i);
Brush.Color:=clbtnFace;
pen.Color:=clbtnFace;
rectangle(x+10,y-30,x+100,y-49);
sleep(300);
end;
end;
end.
interface
Uses Graphics,UGruz,SysUtils;
Type TSam=Class(TGruz)
KuzColor:Tcolor;
constructor Create(X0,y0:integer;Fill:boolean;Canvas0:Tcanvas);
Procedure Show; override;
Procedure Oprokinut;
Procedure NormalKuz;
procedure Full;
end;
implementation
var Fill:boolean;
Constructor TSam.Create;
begin
inherited Create(x0,y0,25,ClGreen,Canvas0);
normalKuz
end;
Procedure Tsam.normalKuz;
begin
KuzColor:=ClBlack;
Show
end;
Procedure TSam.show;
Var XI,YI,H,I:integer;
Begin
Inherited Show;
With Canvas do begin
Moveto(x,y);
canvas.Brush.Color:=clbtnFace;
Canvas.Pen.Color:=clbTnFace;
canvas.Rectangle(x-10,y,x+150,y-300);
canvas.Pen.Color:=KuzColor;
Canvas.Brush.color:=KuzColor;
moveto(x-5,y-10);
Lineto(x+140,y-10);
Lineto(x+140,y-70);
Lineto(x+120,y-70);
Lineto(x+120,y-50); self.
Lineto(x,y-50);
Lineto(x-5,y-10);
if fill=true then begin
Brush.Color:=clblack;
rectangle(x+10,y-49,x+100,y-70);
end;
end;
end;
Procedure TSam.oprokinut;
Begin
canvas.Brush.Color:=clbtnFace;
Canvas.Pen.Color:=clbTnFace;
canvas.Rectangle(x-10,y,x+150,y-100);
canvas.Pen.Color:=KuzColor;
Canvas.Brush.color:=KuzColor;
With Canvas do begin
moveto(x-5,y-10);
Lineto(x-5,y-50);
Lineto(x+90,y-120);
lineto(x+78,y-133);
lineto(x+90,y-142);
Lineto(x+125,y-105);
Lineto(x-5,y-10);
Brush.Color:=clblack;
rectangle(x-110,y+60,x-20,y+20);
end;
end;
procedure Tsam.Full;
var i:integer;
begin
for i:=1 to 5 do
with canvas do begin
canvas.Brush.Color:=clbtnFace;
Canvas.Pen.Color:=clbTnFace;
canvas.Rectangle(x-10,y,x+150,y-300);
canvas.Pen.Color:=KuzColor;
Canvas.Brush.color:=KuzColor;
moveto(x-5,y-10);
Lineto(x+140,y-10);
Lineto(x+140,y-70);
Lineto(x+120,y-70);
Lineto(x+120,y-50);
Lineto(x,y-50);
Lineto(x-5,y-10);
Brush.Color:=clblack;
rectangle(x+10,y-130+20*i,x+100,y-170+20*i);
Brush.Color:=clbtnFace;
pen.Color:=clbtnFace;
rectangle(x+10,y-30,x+100,y-49);
sleep(300);
end;
end;
end.