Thema: Delphi Image Keydown Problem

Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: Image Keydown Problem

  Alt 6. Apr 2006, 07:44
Herzlich willkommen in der Delphi-PRAXiS, Doomguard.

Ich habe keine Ahnung von Computerspielen, aber ich stelle mir vor, dass es mitunter angenehm sein könnte, wenn ein Objekt (Geldschein) von einem Akteur auch im Vorübergehen eingesackt werden kann.

Delphi-Quellcode:
uses
  ExtCtrls,
  Types;

function Interact(imgActor, imgObject: TImage; range: Integer): Boolean;
var
  r, rActor, rObject: TRect;
begin
  rActor := imgActor.BoundsRect;
  InflateRect(rActor, range, range);
  Result := IntersectRect(r, rActor, imgObject.BoundsRect);
end;
Ist range 0, dann muss mindestens eine Berührung statt finden. Mit range = 10 reicht eine Annäherung auf 10 Pixel. Etwas unrealistisch ist der Ansatz, weil die Images rechteckig sind, aber sind die Images klein, dann ist das sicher in Ordnung. Bei größeren Images wird man wohl besser mit Region anstelle von Rect arbeiten.

Freundliche Grüße vom marabu
  Mit Zitat antworten Zitat