Einzelnen Beitrag anzeigen

Mautstelle

Registriert seit: 9. Feb 2004
15 Beiträge
 
#1

delphi sprite verschwindet zu früh

  Alt 9. Feb 2004, 18:51
hiho.... ich schreibe grade ein GTA ähnliches Spiel mit DelphiX,

Als erstes habe ich eine Map, die aus einem Jpg bild besteht, und einen Typ, der immer
in der Mitte vom Bildschirm ist. Wenn ich auf die tasten drücke bewegt sich die
Map, d.h. der typ kann durch die gegend laufen. Bis hierhin kein problem, nur
jetzt habe ich extra Sprites für Gebäude (um auf kollisionen usw. zu prüfen), die Gebäude
bewegen sich mit der karte:

Delphi-Quellcode:
 
procedure THaus.DoMove(MoveCount: integer);
begin
inherited DoMove(MoveCount);
 
 X:=Karte.X+500;
 Y:=Karte.Y+800;
 {wenn man die karte bewegt, bewegt sich das haus mit (mit abstand 500 und 800 zum Kartenrand)}

end;
Das Haus bewegt sich auch und ist sichtbar, aber nur manchmal. Wenn ich unter das Haus laufe, ist alles kein Problem, das Haus wird auf dem DXDraw gezeichnet, bis es dann oben aus dem bild geht. Das Problem taucht auf, wenn ich vom Haus aus nach oben laufe, das Haus verschwindet dann bereits, wenn eigentlich noch die Hälfte vom Haus zu sehen sein sollte... (hoffe mal das versteht man)


Das Haus habe ich im Oncreate von form1 erstellt:

Delphi-Quellcode:
 Haus1:=THaus.Create(DXSpriteEngine1.Engine); {Thaus ist vom Typ TImageSprite}
 Haus1.Image:=FOrm1.DXImageList1.Items[5];
 Haus1.Width:=Haus1.Image.Width;
 Haus1.Height:=Haus1.Image.Height;
 Haus1.Visible:=true;
danke schon mal für antworten
  Mit Zitat antworten Zitat