Einzelnen Beitrag anzeigen

ATwardz

Registriert seit: 12. Mai 2003
205 Beiträge
 
Delphi 7 Professional
 
#3

Re: DelphiX+Kollision+Kein leichtes Problem

  Alt 10. Feb 2004, 13:55
Hi,
keine Lösung aber nahe dran!

Delphi-Quellcode:
Procedure Tgegenstand.DoMove(MoveCount: Integer);
Begin
  Inherited domove(movecount);
  If isup in form1.dxinput1.states
  Then
  Begin
  Player.y:=Player.Y-1;
  Player.collision;
  Player.Y:=Player.Y+1;
  If g=0 then y:=y+1;
  g:=0;
  end;

  If isleft in form1.dxinput1.states
  Then
  Begin
  Player.x:=Player.x-1;
  Player.collision;
  Player.x:=Player.x+1;
  If g=0 then x:=x+1;
  g:=0;
  end;

  If isdown in form1.dxinput1.states
  Then
  Begin
  Player.y:=Player.Y+1;
  Player.collision;
  Player.Y:=Player.Y-1;
  If g=0 then y:=y-1;
  g:=0;
  end;

  If isright in form1.dxinput1.states
  Then
  Begin
  Player.x:=Player.x+1;
  Player.collision;
  Player.x:=Player.x-1;
  If g=0 then x:=x-1;
  g:=0;
  end;

end;


Procedure TPlayer.docollision(sprite:Tsprite;var done:boolean);
Begin
if sprite is TGegenstand then
Begin
 g:=1;
end;
end;
Der Code benutz den Plyer um zu prüfen ob eine Collision beim nächsten Schritt stattfinden würde! Je nachdem wir der Schritt ausgeführ oder nicht!
Allerdeings bleiben manche Büsche ein Pixel zurück!<-- Warm das so ist weiss ich nicht ,leider!

Das Problem ist das DelphiX nicht kapiert das es alle Gegenstände vom Typ TGegenstand identisch behandeln soll!

Vielleicht kann dir hier jemand weiter helfen!

http://terraqueous.f2o.org/dgdev/viewforum.php?f=15
-->-->
Dreamteam: Delphi und Bier!
  Mit Zitat antworten Zitat