AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Kollision 2er Images
Thema durchsuchen
Ansicht
Themen-Optionen

Kollision 2er Images

Ein Thema von avadex · begonnen am 7. Dez 2003 · letzter Beitrag vom 7. Dez 2003
Antwort Antwort
avadex

Registriert seit: 5. Dez 2003
13 Beiträge
 
#1

Kollision 2er Images

  Alt 7. Dez 2003, 16:51
Hi,
ich bin dabei ein kleines Pacman Spiel zu entwickeln! Das eine Image stellt meinen Pacman darf (37x37px) und das andere Image immer das Futter!
Mein Pacman bewegt sich in 4er Schritten! Ich habe also das Futter immer mit einem random so ausrichten lassen, dass es durch 4er Schritte zu erreichen ist!
Aber die einfache Abfrage
if (Image1.Left = Image2.Left) and (Image1.Top = Image2.Top) then EatFood; klappt leider nicht so gut! Wie könnte ich es besser lösen? Denn bei dieser Variante muss ich den Pacman pixelgenau auf das Fresse zubewegen! Kann ich es nicht irgendwo so ändern, dass um das Futter praktisch ein kleiner unsichtbarer Kreis ist, der beim berühren meine EatFood prozedur auslöst?
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#2

Re: Kollision 2er Images

  Alt 7. Dez 2003, 16:56
Wiee wäre es mit einem 5x5 Pixeln großem Quadrat

if (Abs(Image1.Left - Image2.Left) <= 5) and (Abs(Image1.Top - Image2.Top) <= 5) then EatFood; ......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
avadex

Registriert seit: 5. Dez 2003
13 Beiträge
 
#3

Re: Kollision 2er Images

  Alt 7. Dez 2003, 17:07
cool, funktioniert schon besser! aber ich muss immer mit der rechten oberen ecke des pacmans an das futter ran damit er es auch wirklich frisst!
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#4

Re: Kollision 2er Images

  Alt 7. Dez 2003, 17:20
Dann mal so (wenn Image1 das Futter ist)

Delphi-Quellcode:
if
  (Image1.Left > Image2.Left) and
  (Image1.Left + Image1.Width < Image2.Left) and
  (Image1.Top > Image2.Top) and
  (Image1.Top + Image1.Height < Image2.Top)
then
    EatFood;
Einfach mal mit diesem Gedanken weiterspielen

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz