AirHockey Kollisionsprobleme, bitte um Hilfe

Schnellsch

Mitglied
Hallo Java-Freunde,

hab Probleme wie ich bei meinem AirHockey die Kollisionen realisier.

Daweil habe ich es mit 45° gemacht, doch diese Lösung ist für meinen Lehrer inakzeptabel.


if((b + 25) > SchlaegerUnten.y && b < (SchlaegerUnten.y + 40) && (a + 25) > SchlaegerUnten.x && (a + 25) < (SchlaegerUnten.x + 20)) { //Kollision Puck mit Schlägerunten: links 45°
posX = -1;
posY = -1;
}

else if((b + 25) > SchlaegerUnten.y && b < (SchlaegerUnten.y + 40) && a < (SchlaegerUnten.x + 40) && a > (SchlaegerUnten.x + 20)) { //Kollision Puck mit Schlägerunten: rechts 45°
posX = 1;
posY = -1;
}
if(b < (SchlaegerOben.yAchse + 40) && (b + 15) > SchlaegerOben.yAchse && (a + 25) > SchlaegerOben.xAchse && (a + 25) < (SchlaegerOben.xAchse + 20)) { //Kollision Puck mit Schlägeroben: links 45°
posX = -1;
posY = 1;
}

else if(b < (SchlaegerOben.yAchse + 40) && (b + 15) > SchlaegerOben.yAchse && a < (SchlaegerOben.xAchse + 40) && a > (SchlaegerOben.xAchse + 20)) { //Kollision Puck mit Schlägeroben: rechts 45°
posX = +1;
posY = +1;
}




a bzw. b..............Koordinaten des Puckes
SchlaegerUnten bzw. SchlaegerOben...............eigener und gegnerischer Schläger
posX bzw. posY................für Bewegung des Puckes




Nun meine Bitte an euch, wie kann ich die Kollision durchführen, so dass ich viele verschiedene Abprallwinkel habe?

Wäre echt super, wenn mir einer von euch helfen könnte, danke.
 
Zuletzt bearbeitet:

Steev

Bekanntes Mitglied
Du kannst die Position des Balles relativ zum Schläger in einen Winkel umrechnen. Dazu würde ich den Mittelpunkt verwenden.
 

Ähnliche Java Themen

Neue Themen


Oben