# AirHockey Kollisionsprobleme, bitte um Hilfe



## Schnellsch (18. Jun 2010)

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.


----------



## Steev (18. Jun 2010)

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


----------



## Marco13 (18. Jun 2010)

Hähmja... schau dir z.B. mal sowas an wie Snooker Balls


----------

