Einzelnen Beitrag anzeigen

Benutzerbild von ISAS
ISAS

Registriert seit: 24. Sep 2003
Ort: Vietnam
205 Beiträge
 
Delphi 4 Standard
 
#1

DelphiX -> MouseMove und DoCollision

  Alt 10. Mär 2004, 19:10
Habs nun geschafft, dass man jedes TPushable verschieben kann . Schick mal den Quellcode (wie ich das meine) und dann erläutere ich ein bisschen.

Delphi-Quellcode:
procedure TPushable.DoCollision(Sprite: TSprite; var Done: Boolean);
begin
if klick = true then begin
if sprite = maus then begin

repeat

procedure TForm1.DXDraw1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);

X:=round(Maus.X / 32)*32;
Y:=round(Maus.Y / 32)*32;

procedure TForm1.DXDraw1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

until klick=false;

end;
end;

end;
Maus ist ein Srite mit den richtigen Mauskoordinaten.
Also, wenn man auf ein Sprite klickt, dann soll er zu repeat gehen. In diesem soll man die Position vom Sprite sollange verändern können(MouseMove), bis man MouseUp macht (denn da wird klick zu false). Das wäre es eigentlich schon.

PS: Wenn jemand eine andere Idee hat, wie man TPushable(Besteht aus mehreren Sprites mit verschiedenen Koordinaten) so machen kann, wie ich geschildert habe, dann immer her damit.

PPS: Ein Problem gibs da noch. Wenn 2 Sprites dieselben Koordinaten haben, würde er dann beide nehmen und diese wären nicht mehr zu trennen. Lösungsvorschläge?

PPPS: Danke, ISAS!
Signatur wurde auf Wunsch geändert. Deswegen einfach hier drauf klicken-> www.geggi.at.gg
  Mit Zitat antworten Zitat