AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi [Andorra] Kollision bei Breakout-Spiel
Thema durchsuchen
Ansicht
Themen-Optionen

[Andorra] Kollision bei Breakout-Spiel

Offene Frage von "Diamondback2007"
Ein Thema von Diamondback2007 · begonnen am 15. Jul 2008 · letzter Beitrag vom 19. Jul 2008
Antwort Antwort
Benutzerbild von Diamondback2007
Diamondback2007

Registriert seit: 2. Feb 2007
260 Beiträge
 
Delphi 2007 Professional
 
#1

[Andorra] Kollision bei Breakout-Spiel

  Alt 15. Jul 2008, 12:30
hallo zusammen,

ich habe folgendes problem.
ich möchte bei einem breakout-spiel die Kollisionen realiseren. dazu hab ich halt einfach mal in die demos geguckt und
das auch so gemacht wie der igel.
Jetzt gibts aber eine problem. die kollisionen werden immer so behandelt als wäre der brick von unten oder oben berührt worden, egal ob dies der fall ist oder der ball die seite getroffen hat.
wenn er die seite berührt muss aber natürlich anders vorgeganen werden. wie also soll ich erkenn wo der brick getroffen wurde?
eine idee wäre zu prüfen wo sich der ball verhältnismäßig zum brick befindet also ob links oder rechts oder oben oder unten.
gibt es da noch was besser?

gruß
Fabian E.
  Mit Zitat antworten Zitat
Benutzerbild von igel457
igel457

Registriert seit: 31. Aug 2005
1.622 Beiträge
 
FreePascal / Lazarus
 
#2

Re: [Andorra] Kollision bei Breakout-Spiel

  Alt 15. Jul 2008, 12:37
In der Kollisionsroutine wird dir das Sprite, mit dem die Kollision stattgefunden hat übergeben. Nun musst du einfach nur die aktuellen Koordinaten des Balles mit denen der Blöcke vergleichen und schon weißt du, wo die Kollision stattgefunden hat.
Andreas
"Sollen sich auch alle schämen, die gedankenlos sich der Wunder der Wissenschaft und Technik bedienen, und nicht mehr davon geistig erfasst haben als die Kuh von der Botanik der Pflanzen, die sie mit Wohlbehagen frisst." - Albert Einstein
  Mit Zitat antworten Zitat
Benutzerbild von Diamondback2007
Diamondback2007

Registriert seit: 2. Feb 2007
260 Beiträge
 
Delphi 2007 Professional
 
#3

Re: [Andorra] Kollision bei Breakout-Spiel

  Alt 15. Jul 2008, 12:43
Gut also gibts nichts anderes? Dann mach ich das so! Danke
Fabian E.
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#4

Re: [Andorra] Kollision bei Breakout-Spiel

  Alt 18. Jul 2008, 12:16
warum so aufwendig ?
für ein Brekout Clone reicht das doch aus, wenn du weiß das eine Kollision statt gefunden hat.
Dann kannst du einfach den Ball zurückfliegen lassen, in einen anderen winkel.

Evlt. hilft dir mein Code im Anhang weiter. Allerdings ist der für mein Game Pack geschrieben. Aber das sollte kein Problem sein.

Dort schau dir mal die Methode:
procedure TGamePackBreakOut.onTimer(Sender: TObject);
an. Die sollte deine Frage(n)beantworten.
Angehängte Dateien
Dateityp: pas gamepackbreakout_102.pas (6,6 KB, 17x aufgerufen)
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Benutzerbild von Diamondback2007
Diamondback2007

Registriert seit: 2. Feb 2007
260 Beiträge
 
Delphi 2007 Professional
 
#5

Re: [Andorra] Kollision bei Breakout-Spiel

  Alt 18. Jul 2008, 13:01
Hmm...du lässt deine Kugel halt immer gleich abprallen. Ich möchte aber, dass der Ball wenn er unten gegenkommt halt die XRichtung wechselt und wenn er die Seite berührt die YRichtung.
Fabian E.
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#6

Re: [Andorra] Kollision bei Breakout-Spiel

  Alt 18. Jul 2008, 13:02
Das passiert bei mir. Indem ich den Winkel zufällig bestimmen lasse !
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.686 Beiträge
 
Delphi 2007 Enterprise
 
#7

Re: [Andorra] Kollision bei Breakout-Spiel

  Alt 18. Jul 2008, 17:40
Das ist glaube ich nicht, was man so intuitiv erwarten würde Das stell ich mir kaum spielbar vor!
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#8

Re: [Andorra] Kollision bei Breakout-Spiel

  Alt 18. Jul 2008, 18:24
Doch ist ganz nett eigentlich. Bis auf ein paar Macken *G* das macht es ja gerade so spanend. du weiß nicht wo der Ball hinfliegen wird bei einer Kollision *G* Bei meinen führen Versionen wusstest du es sofort !
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.686 Beiträge
 
Delphi 2007 Enterprise
 
#9

Re: [Andorra] Kollision bei Breakout-Spiel

  Alt 19. Jul 2008, 02:23
FÜr mich waren und sind Breakout-Varianten bislang keine Glücks- sonder Geschicklichkeitsspiele, aber gut, jeder wie er mag 8)
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#10

Re: [Andorra] Kollision bei Breakout-Spiel

  Alt 19. Jul 2008, 11:17
Ja gedult das brauchst du bei Brekout aufjedenfall. darum möchte ich auch noch eine Speicher Funktion Einbauen *G* für den Spielstand !
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  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 07:40 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