Ping - Pong Collision mit Oberer und Unterer Seite ?!
Übersicht

PreakzBetreff: Ping - Pong Collision mit Oberer und Unterer Seite ?! |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo Liebe Community,
Ich habe ein Problem und zwar hab ich heute angefangen PingPong zu Programmieren, und jetzt hab ich alles Fertig und ich muss nur noch ein Kleines Problemchen lösen.... Und zwar die Collision mit der Oberen und Unteren Breitenline der Blöcke. Hier mal die Collisonsabfrage(die ElseIf 'S funktionieren nicht,kann mir da jmd helfen): BlitzBasic: [AUSKLAPPEN] Function BallCollision() Und hier für die Richtungen : BlitzBasic: [AUSKLAPPEN] Select Richtung Danke für die Hilfe im Vorraus MfG Preakz |
||
- Zuletzt bearbeitet von Preakz am Sa, Jun 30, 2012 0:18, insgesamt einmal bearbeitet
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du Zahlen so für Richtungen benutzt, solltest du unbedingt Konstanten einsetzen:
BlitzBasic: [AUSKLAPPEN] Const RechtsUnten%=1 Das wäre einfacher lesbar. Der Ansatz so ist aber nicht unbedingt ideal. Teile die Geschwindigkeit in eine X und Y Komponente auf und rechne immer das gleiche: BlitzBasic: [AUSKLAPPEN] ball_x = ball_x + ball_Xspeed# Dann brauchst du bei der Kollision nur die X/Yspeed neu zu berechnen. |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
PreakzBetreff: ... |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Es ging mir eher um die Abfrage ...
Balken: _ | | |_| von den Seiten Oben und Unten , wenn der Ball jetzt von unten gegen die Untersteite des Blocks prallt. Die geschwindigkeit ist optimal schon berechnet ... Hier mal der ganze Code, kannst ihn ja auch Kompilen . vielleicht weißt du ja dann was ich jetzt meine: BlitzBasic: [AUSKLAPPEN] ;######################################################################## Wobei hier i.w. der große Denkfail ist. BlitzBasic: [AUSKLAPPEN] ;wenn Ball gegen Player Front kommt oder oben oder unten |
||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Bitte füge Leerzeichen in lange Zeilen ein, sonst verrutscht hier das ganze Forenlayout.
Du musst nicht alles explizit auf "=True" in Bedingungen prüfen, dass kannst du alles streichen. Wenn der Ausdruck <> 0 ist, ist er True. BlitzBasic: [AUSKLAPPEN] If -1 Then Print("A") Kniffelig bei der Abfrage ist z.B. "ball_y = player2_y". Das wird nur wahr, wenn die Werte exakt gleich sind - und das dürfte meistens nicht der Fall sein. Je nach dem, wo die Anfasspunkte sind, könntest du über, vor und unter Schläger feststellen. Und am besten steckst du die Berechnung in eine Extrafunktion um den If Block lesbarer zu machen. |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
Preakz |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ok ich werds mal versuchen.... | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group