DoodleJump programmieren: Kollisionsabfrage

abccba10

Mitglied
Hallo,
im Rahmen des Schulunterrichts habe ich mir vorgenommen ein DoodleJump änhliches Spiel zu machen. Einen Großteil des Codes (wichtige Klassen und Methoden die jeder Schüler für sein eigenes Spiel brauchen wird) hat uns der Lehrer bereits gegeben.Nun zu meinem Spiel: Mit jedem Spielstart werden an zufälligen Orten in einem Bereich Rechtecke erstellt, welche die Sprungplattformen darstellen sollen. Nun zu meinem Problem: Die Figur soll von unten durch das Rechteck durchfliegen können aber wenn es von oben kommt abgestoßen werden. Wie erkenne ich aus welcher Richtung die Figur kommt? Zudem bin ich mir nicht ganz sicher wie ich allgemein die Kollisionsabfrage durchführen soll. Mein erster Gedanke war einfach die Koordinaten jeder Plattform mit der der Figur abzugleichen was aber durch die vielen Plattformen absolut unrealistisch ist. Mein darauf folgender Gedanke war, dass z.B nur ein Block an Plattformen erstellt wird(20 Plattformen) und sobald die Figur diese passiert hat gelöscht werden bzw. über der Figur wieder neu platziert werden. Somit müsste sich die Anzahl der Plattformen in Grenzen halten und somit würde dieser Koordinaten-Abgleich wieder realistischer werden. Aber irgendwie sind meine Ideen auch nicht das gelbe vom Ei, vor allem wenn ich nur über so wenig Java Wissen verfüge.
LG
 

Robat

Top Contributor
Ob man durch eine Plattform durchfliegen kann oder nicht kann man über die Velocity regeln / abfragen. Wenn die velocity > 0 ist dann springt dein Spieler nach oben .. d.h. er kann durchfliegen. Wenn sie negativ ist dann fällt er .. er prallt also ab. (Größer 0 bzw kleiner 0 können ggf variieren je nach dem von wo der Koordinatenursprung ist).
Das mit den Plattformen löschen / generieren ist schon mal ein guter Ansatz. Die Plattformen die außerhalb des Bildschirmes sind interessieren dich nicht .. wieso also behalten.
 

abccba10

Mitglied
Danke für eure Hilfe!
Ich habe nun die Kollisionsabfrage nach den im YouTube Video genannten Bedingungen gestaltet und dazu noch die Velocity mit eingebaut. Jedoch fliegt meine Figur weiterhin durch die Plattformen durch.
Hier der Code für die Kollision. Ich hoffe es ist halbwegs verständlich. Wie gesagt: Ich bin blutiger Anfänger.
Java:
 public void Kollision(){
        while(true){
            JumpPosX = JumpFigur.getXPos();  //Jump ist die sich bewegende Figur
            JumpPosY = JumpFigur.getYPos(); 
            JumpVy = JumpFigur.getVy();
            for(zz=1;zz<=anzPlattformen;zz++){
               

                if( JumpPosX<PlattformXPos[zz]+PlattformBreite && JumpPosX+158>PlattformXPos[zz] && 
                JumpPosY<PlattformYPos[zz]+PlattformLaenge && JumpPosY+335>PlattformXPos[zz] && JumpVy<0)
                {
                    JumpFigur.setVy(-100);
                }

            }
            JumpFigur.animate();
            warten(300);

        }
    }
 

Java20134

Bekanntes Mitglied
Das kann auch nicht funktionieren. Du musst die Kollision für dich anpassen, sodass die 'untere' Kollision nicht mit überprüft wird.
 

mihe7

Top Contributor
Ich würde eher sagen, dass er schon die Richtung wechseln muss: if (JumpVy < 0) setVy(wertKleiner0); bringt es jetzt nicht wirklich.
 

abccba10

Mitglied
Danke für eure Hilfe!
mihe7 hat Recht ich habe aus versehen das "<" bzw. ">" falsch herum gesetzt. Der Fehler der mich dann aber länger suchen lassen hat war, dass ich bei der vorletzten Bedingung, also vor der Velocity-abfrage, vermutlich aus Hektik statt "PlattformYPos[zz]" "PlattformXPos" geschrieben habe. Also statt:
Java:
JumpPosY+335>PlattformXPos[zz]
ist folgendes richtig:
Java:
JumpPosY+335>PlattformYPos[zz]
Jetzt funktioniert auch die Kollision mehr oder weniger. Jetzt fehlt nur noch die Steuerung der Figur, jedoch habe ich was das angeht kaum Ahnung. Ich hatte an einen KeyListener gedacht, weis aber nicht wie ich das einsetze, bzw. in meine Abfrage einbaue.
Wäre echt super wenn ihr mir hierbei noch ein paar Tipps geben könnt.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M BlueJ Schach Steuerung programmieren Spiele- und Multimedia-Programmierung 28
ItundMathe1994 TicTacToe Spiel programmieren Spiele- und Multimedia-Programmierung 2
N Escape the Room - Spiele Apps programmieren Spiele- und Multimedia-Programmierung 14
Laaalo Tic tac toe programmieren Spiele- und Multimedia-Programmierung 4
mihe7 Wie man einfache Spiele programmieren kann Spiele- und Multimedia-Programmierung 23
M Brauche Hilfe was zu Programmieren Spiele- und Multimedia-Programmierung 4
N Minecraft Spigot-Plugin | Schusswaffe programmieren Spiele- und Multimedia-Programmierung 3
A Programmieren eines Memorys mit Java (in Eclipse) Spiele- und Multimedia-Programmierung 5
I Vier gewinnt programmieren, Klick-Reihenfolge Spiele- und Multimedia-Programmierung 2
B Programmieren wie der Befehl /ban in Minecraft geblockt wird aber nicht /ban mit einem Argument Spiele- und Multimedia-Programmierung 1
K Android Spiel Programmieren Spiele- und Multimedia-Programmierung 6
P Tennis- Spielstand- Zähler für Schule programmieren Spiele- und Multimedia-Programmierung 6
J HDMI Ausgänge mit Java programmieren? Spiele- und Multimedia-Programmierung 18
L Hörtest programmieren und implementieren Spiele- und Multimedia-Programmierung 2
E Möchte Jump and Run programmieren Spiele- und Multimedia-Programmierung 2
E Möchte Spiel Programmieren Spiele- und Multimedia-Programmierung 7
M Gesellschaftsspiel Mühle in Java programmieren Spiele- und Multimedia-Programmierung 3
M Textbasiertes Spiel programmieren Spiele- und Multimedia-Programmierung 4
M Logitech G15/G510 Applets programmieren Spiele- und Multimedia-Programmierung 3
F Spiel ähnlich wie SimCity/o.ä programmieren Spiele- und Multimedia-Programmierung 5
O Rundenbasiertes strategiespiel programmieren Spiele- und Multimedia-Programmierung 2
K 2D Blockade Programmieren Spiele- und Multimedia-Programmierung 3
wolfgang63 Mit JavaFX einfaches Game programmieren Spiele- und Multimedia-Programmierung 5
J Mod Loader programmieren Spiele- und Multimedia-Programmierung 11
I Hitpoints/Lifepoints programmieren, wie? Spiele- und Multimedia-Programmierung 7
L Minecraft Minecraft Plugin programmieren (Craftbukkit 1.7.2) Problem Spiele- und Multimedia-Programmierung 4
B Spiel Programmieren, die Anfänge Spiele- und Multimedia-Programmierung 6
wolfgang63 Einfachen Soundgenerator programmieren Spiele- und Multimedia-Programmierung 1
J UNO Programmieren Spiele- und Multimedia-Programmierung 4
F Bot Programmieren Spiele- und Multimedia-Programmierung 10
N Game GUI Programmieren Spiele- und Multimedia-Programmierung 16
1 Minecraft Minecraft Plugins programmieren Spiele- und Multimedia-Programmierung 6
T MiniCraft - selbst nach Programmieren Spiele- und Multimedia-Programmierung 25
A Klickgame ala "Harveys neue Augen" oder "Edna bricht aus" in Java programmieren... Fragen zu Kleinig Spiele- und Multimedia-Programmierung 8
S Spiel Programmieren (Kreise treffen) Spiele- und Multimedia-Programmierung 5
F wie richtig spiele programmieren ? Spiele- und Multimedia-Programmierung 19
C Hinterteil von Snake programmieren Spiele- und Multimedia-Programmierung 11
B Spiele programmieren für ein Fenster? Spiele- und Multimedia-Programmierung 14
B Kartenspiel Leben und Tod programmieren Spiele- und Multimedia-Programmierung 11
T Vier gewinnt programmieren Spiele- und Multimedia-Programmierung 9
N Stimme programmieren Spiele- und Multimedia-Programmierung 11
Sebi Mit Java Online games programmieren ? Spiele- und Multimedia-Programmierung 8
N Labyrinth programmieren/Denkhilfe Spiele- und Multimedia-Programmierung 3
data89 Spiel mit JMonkey programmieren Spiele- und Multimedia-Programmierung 6
O Programmieren von "Familienduell" Spiele- und Multimedia-Programmierung 3
A Wie JAVA Webcam Client programmieren? Spiele- und Multimedia-Programmierung 11
T vier gewinnt programmieren - aber wie Spiele- und Multimedia-Programmierung 19
N In einem Kasten springende Bälle programmieren...Hilfe Spiele- und Multimedia-Programmierung 7
B Problem beim Programmieren von 4Gewinnt Spiele- und Multimedia-Programmierung 5
A Programmieren eines Bruchrechners Spiele- und Multimedia-Programmierung 3
K Malefiz programmieren - Frage zu den einzelnen Spielfeldern Spiele- und Multimedia-Programmierung 5
G wer möchte mit mir risiko programmieren? Spiele- und Multimedia-Programmierung 7
B Problem beim Programmieren Von Mühle Spiele- und Multimedia-Programmierung 6
N Sinus Welle programmieren! Spiele- und Multimedia-Programmierung 4
J Gesellschaftsspiele programmieren Spiele- und Multimedia-Programmierung 8
P 2D Spiel mir drehbaren Bildern (Sprites) programmieren Spiele- und Multimedia-Programmierung 10
U Ball programmieren Spiele- und Multimedia-Programmierung 26
A "Wegnehm-Spiel" programmieren, Tipps + Links? Spiele- und Multimedia-Programmierung 8
T Problem bei Kollisionsabfrage Spiele- und Multimedia-Programmierung 4
S Polygon Kollisionsabfrage Spiele- und Multimedia-Programmierung 2
RalleYTN Erweiterte Kollisionsabfrage Spiele- und Multimedia-Programmierung 7
S Kollisionsabfrage zwischen Rechteck und Polygon Spiele- und Multimedia-Programmierung 1
J Java Kollisionsabfrage Spiele- und Multimedia-Programmierung 21
kaoZ Kollisionsabfrage implementieren Spiele- und Multimedia-Programmierung 63
T Problem mit Kollisionsabfrage der NPC Spiele- und Multimedia-Programmierung 1
F Kollisionsabfrage bei schnellen Objekten Spiele- und Multimedia-Programmierung 2
J Problem bei pixelgenauer Kollisionsabfrage Spiele- und Multimedia-Programmierung 10
M Kollisionsabfrage Spiele- und Multimedia-Programmierung 7
N Quake - Kollisionsabfrage Spiele- und Multimedia-Programmierung 21
N Problem mit Kollisionsabfrage beim Fallen Jump & Run Spiele- und Multimedia-Programmierung 5
R Kollisionsabfrage haut nicht hin Spiele- und Multimedia-Programmierung 15
Gossi Quaxlis 2D Tutorial....Probleme nach hinzufügen der Kollisionsabfrage Spiele- und Multimedia-Programmierung 16
U Jump n' Run 2D Geometrie und Kollisionsabfrage? Spiele- und Multimedia-Programmierung 11
baddestpoet Problem mit Kollisionsabfrage Spiele- und Multimedia-Programmierung 18
D Kollisionsabfrage von 2 Autos Spiele- und Multimedia-Programmierung 2
G Kollisionsabfrage (Mario klon) Spiele- und Multimedia-Programmierung 6
gieser Buggy Kollisionsabfrage Spiele- und Multimedia-Programmierung 4
masta // thomas Kollisionsabfrage - inspiriert durch "pixelgenaue Kolli Spiele- und Multimedia-Programmierung 13
gieser pixelgenaue Kollisionsabfrage der Kreise Spiele- und Multimedia-Programmierung 9
T Kollisionsabfrage von einem Stein mit einem Ball Spiele- und Multimedia-Programmierung 5
N Kollisionsabfrage Spiele- und Multimedia-Programmierung 6
D Jump and Run Game -- Kollisionsabfrage Spiele- und Multimedia-Programmierung 30
J Kollisionsabfrage Ball <-> Paddle Spiele- und Multimedia-Programmierung 2

Ähnliche Java Themen

Neue Themen


Oben