(Gast)
n/a Beiträge
|
Re: Mauern als hinderniss
22. Feb 2007, 14:06
Aslo ich hab jetzte mal bisschen rumprobiert, es ist sogar was rausgekommen:
Delphi-Quellcode:
unit Uhaupt;
...
type
mauerna= array [1..2,1..2,1..2] of integer;
davida = array [1..2,1..2] of integer;
...
var
Form1: TForm1;
mxy : mauerna;
dxy : davida;
taste: char;
implementation
{$R *.DFM}
procedure hindernis;
var k:integer;
begin
k:=1;
for k:=1 to 2 do
begin
if ((dxy[1,2]>=mxy[k,1,1]) and(dxy[1,1]<=mxy[k,1,2])) and//x-werte vergleichen
((dxy[2,2]>=mxy[k,2,1]) and(dxy[2,1]<=mxy[k,2,2])) //y-werte vergleichen
then
begin
case taste of
' u': form1.im.top:=Form1.im.top+2;
' d': form1.im.top:=form1.im.top-2;
' l': form1.im.left:=form1.im.left+2;
' r': form1.im.left:=form1.im.left-2;
end; //ende case of
end; //ende if-then
end; //ende for..do
end; //ENDE hindernis
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
[... die bewegung des männels]
//arrays
//[a,b,c] a=mauernnummer b=x/y-wete c=anfangs/endwert
mxy [1,1,1]:=Image1.left;
mxy [1,1,2]:=Image1.left+40;
mxy [1,2,1]:=Image1.top;
mxy [1,2,2]:=Image1.top+34;
mxy [2,1,1]:=Image2.left;
mxy [2,1,2]:=Image2.left+40;
mxy [2,2,1]:=Image2.top;
mxy [2,2,2]:=Image2.top+34;
//[1,x]=x-werte
//[2,x]=y-werte
dxy [1,1]:=Im.left;
dxy [1,2]:=Im.left+38;
dxy [2,1]:=Im.top;
dxy [2,2]:=Im.top+73;
//array ende
hindernis;
end;
end.
Macht das sinn, das so zu machen?
|
|
Zitat
|