Class TacticalMoves

public class TacticalMoves

Title: Tactical Moves

Description: In dieser Klasse sind alle taktischen Aktionen und Abfragen definiert, die von unserer Strategie verwendet werden

Copyright: Copyright (c) 2002

Version:
1.0
Author:
Björn Konrad, Holger Stephan, Christoph Zwiener
Method Detail

moveGoalie

public void moveGoalie()
public void moveGoalie() Bewegt(move) den Goalie hat zu einer Abstoßposition in Anhängigkeit seiner derzeitigen Position
Version:
1.0
Author:
Holger Stephan

move

public void move(double x,
                 double y)
public void move(double x, doulbe y) Bewegt den Spieler zur angegebenen Position
Parameters:
x - X-Position
y - Y-Position
Version:
1.0
Author:
Holger Stephan

turn

public void turn(double moment)
public void turn(double moment) Dreht den Spieler um den Wert moment (-180 bis 180)
Parameters:
moment - Drehwinkel
Version:
1.0
Author:
Holger Stephan

dash

public void dash(double power)
public void dash(double power) Beschleunigt den Spieler um power (-100 bis 100) in Richtung seines Körpers
Parameters:
power - Stärke der Beschleunigung
Version:
1.0
Author:
Holger Stephan

kick

public void kick(double power,
                 double dir)
public void kick(double power, double dir) Schiesst den Ball mit power (-100 bis 100) und dem Winkel dir (-180 bis 180)
Parameters:
power - Stärke des Schusses
dir - Richtung des Schusses
Version:
1.0
Author:
Holger Stephan

catchBall

public void catchBall(double dir)
public void catchBall(double dir) Diese Methode ist nur für den Goalie. Er fängt den Ball in einem Winkel "dir", welcher relativ zu seinem Körper ist.
Parameters:
dir - Fangwinkel
Version:
1.0
Author:
Holger Stephan

turnNeck

public void turnNeck(double angle)
public void turnNeck(double angle) Diese Methode dreht den Kopf des Spielers um den Winkel "angle" . Der absolute Kopfwinkel des Spielers darf sich nur um +-90 vom Körper- winkel unterscheiden
Parameters:
angle - Drehwinkel
Version:
1.0
Author:
Holger Stephan

goGetBall

public void goGetBall()
public void goGetBall() Diese Methode bewegt den Spieler zu einer vorherberechneten Ballposition
Version:
1.0
Author:
Holger Stephan

ballInPenaltyArea

public boolean ballInPenaltyArea()
public boolean ballInPenaltyArea() Prüft ob der Ball in der penaltyarea ist
Returns:
true = ja, false = nein
Version:
1.0
Author:
Holger Stephan

opponentInPenaltyarea

public boolean opponentInPenaltyarea()
public boolean opponentInPenaltyarea() Prüft ob ein Gegenspieler in der penaltyarea ist
Returns:
true = ja, false = nein
Version:
1.0
Author:
Holger Stephan

ownPlayerNotInPenaltyarea

public boolean ownPlayerNotInPenaltyarea()
public boolean ownPlayerNotInPenaltyarea() Prüft ob kein Mitspieler in der Penaltyarea ist
Returns:
true = ja, false = nein
Version:
1.0
Author:
Holger Stephan

seeBall

public boolean seeBall()
public boolean seeBall() Prüft, ob der Spieler den Ball in den letzten 10 Zyklen gesehen hat
Returns:
true = ja, false = nein
Version:
1.0
Author:
Holger Stephan

nearBall

public boolean nearBall()
public boolean nearBall() Prüft, ob der Spieler einer der 2 Nähesten am Ball ist
Returns:
true = ja, false = nein
Version:
1.0
Author:
Holger Stephan

nearestBall

public boolean nearestBall()
public boolean nearestBall() Prüft, ob der Spieler der Näheste am Ball ist
Returns:
true = ja, false = nein
Version:
1.0
Author:
Holger Stephan

ballCatchable

public boolean ballCatchable()
public boolean ballCatchable() Prüft ob der Goalie den Ball fangen kann
Returns:
true = ja, false = nein
Version:
1.0
Author:
Holger Stephan

goToDefensePos

public void goToDefensePos()
public void goToDefensePos() Bewegt den Spieler zu seiner Defense Position
Version:
1.0
Author:
Björn Konrad

goToAttackPos

public void goToAttackPos()
public void goToAttackPos() Bewegt den Spieler zu seiner Attack Position
Version:
1.0
Author:
Björn Konrad

goToNormalPos

public void goToNormalPos()
public void goToNormalPos() Bewegt den Spieler zu seiner Normal Position
Version:
1.0
Author:
Björn Konrad

calculateTurnAngle

public double calculateTurnAngle(double posX,
                                 double posY)
public void calculateTurnAngle() Berechnet den Winkel, um den sich der Spieler drehen muss, damit er zu einer bestimmten Position kommt
Parameters:
posX - XPosition
posY - YPostion
Returns:
Gibt Winkel zurück
Version:
1.0
Author:
Björn Konrad

setPosition

public void setPosition()
public void setPosition() Setzt den Spieler mit der Rückennummer "unum" zu Anfang des Spiels auf seine Ausgangsposition bzw. DefensePos *
Version:
1.0
Author:
Christoph Zwiener

kickBallToPoint

public void kickBallToPoint(double posX,
                            double posY)
public void kickBallToPoint(double posX,double posY) Methode läßt den Spieler einen Schuß ausführen, der möglichst genau auf einen bestimmten Punkt auf dem Feld landen soll
Parameters:
posX - - x-Zielkoordinate
posY - - y-Zielkoordinate
Version:
1.0
Author:
Christoph Zwiener

shootToGoal

public void shootToGoal()
public void shootToGoal() Veranlasst den Spieler sofort auf das gegnerische Tor zu schießen. Es wird, sofern der gegnerische Goalie gesehen wird, auf die Hälfte des Tors geschossen, in der der Goalie nicht steht.
Version:
1.0
Author:
Christoph Zwiener

passPossible

public boolean passPossible()
public boolean passPossible() Überprüft ob Passen möglich ist; d.h., ob ein Mitspieler so positioniert steht, daß es wahrscheinlich ist, daß ein Pass zu ihm auch ankommt
Returns:
passposs - true/false: je nach dem, ob ein Pass möglich ist oder nicht
Version:
1.0
Author:
Christoph Zwiener

passBall

public void passBall()
public void passBall() Methode ermittelt den Mitspieler, der am günstigsten für ein Passspiel positioniert steht, und spielt diesen an
Version:
1.0
Author:
Christoph Zwiener

dribblePossible

public boolean dribblePossible()
public boolean dribblePossible() Untersucht die Umgebung des Spielers daraufhin, ob es eine Richtung gibt, in der sich keine Gegner befinden, sodass in diese Richtung losgedribbelt werden kann
Returns:
dribbleposs - true or false - je nach dem ob dribbeln in eine bestimmte Richtung möglich ist
Version:
1.0
Author:
Christoph Zwiener

dribbleBall

public void dribbleBall()
public void dribbleBall() Der Spieler orientiert sich zunächst in 6 Richtungen, die insgesamt die 360 Grad um ihn herum abdecken. Dann entscheidet er sich für die offensivste Dribbelrichtung
Version:
1.0
Author:
Christoph Zwiener

changeFieldLine

public void changeFieldLine()
public void changeFieldLine() Nimmt einen Flankenwechsel vor
Version:
1.0
Author:
Björn Konrad

checkOffside

public boolean checkOffside()
public void checkOffside() Prüft, ob eine Abseitsstellung der Mitspieler vorliegt. Abseits liegt vor, falls das Maximum aller X-Positionen der Gegenspieler kleiner ist als das Maximum der X-Positionen der Mitspieler
Returns:
offside=true oder false
Version:
1.0
Author:
Björn Konrad

sayBallPos

public void sayBallPos()
public void sayBallPos() Übermittelt die aktuelle Ballposition ans Weltmodell durch den Say Befehl
Version:
1.0
Author:
Björn Konrad

ballInOpponentArea

public boolean ballInOpponentArea()
public boolean ballInOpponentArea() Prüft, ob der Ball in der OpponentArea ist.
Returns:
true = ja, false = nein
Version:
1.0
Author:
Holger Stephan

ballInMiddleArea

public boolean ballInMiddleArea()
public boolean ballInMiddleArea() Prüft, ob der Ball in der MiddleArea ist.
Returns:
true = ja, false = nein
Version:
1.0
Author:
Holger Stephan

ballInForwardArea

public boolean ballInForwardArea()
public boolean ballInForwardArea() Prüft, ob der Ball in der ForwardArea ist.
Returns:
true = ja, false = nein
Version:
1.0
Author:
Holger Stephan

ballInForwardMiddleArea

public boolean ballInForwardMiddleArea()
public boolean ballInForwardMiddleArea() Prüft, ob der Ball in der ForwardMiddleArea ist.
Returns:
true = ja, false = nein
Version:
1.0
Author:
Holger Stephan

ballInGoalArea

public boolean ballInGoalArea()
public boolean ballInGoalArea() Prüft, ob der Ball in der GoalArea ist.
Returns:
true = ja, false = nein
Version:
1.0
Author:
Holger Stephan

calculateDistance

public double calculateDistance(double posX1,
                                double posY1,
                                double posX2,
                                double posY2)
public double calculateDistance(double posX1,double posY1,double posX2,double posY2) Methode berechnet die Entfernung zweier Punkte in einem karthesischen Koordinatensystem - mit Hilfe des Herrn Pythagoras - und gibt sie in Form eines double-Wertes zurück
Parameters:
posX1 - - x-Koordinate des ersten Punktes
posY1 - - y-Koordinate des ersten Punktes
posX2 - - x-Koordinate des zweiten Punktes
posY2 - - y-Koordinate des zweiten Punktes
Returns:
distance - das Ergebnis der Distanzberechnung wird zurückgegeben
Version:
1.0
Author:
Christoph Zwiener

nearToNormalPos

public boolean nearToNormalPos()
public double nearToNormalPos() Prüft, ob sich der Spieler bereits "ungefähr" auf seiner NormalPosition befindet
Returns:
boolean
Version:
1.0
Author:
Björn Konrad, Holger Stephan, Christoph Zwiener

goToGoaliePos

public void goToGoaliePos()
public double goToGoaliePos() Bewegt den Torwart zu einer, in Abhängigkeit zur Ballposition berechneten, Position
Version:
1.0
Author:
Björn Konrad

goToPos

public void goToPos(double posX,
                    double posY)
public void gotoPos() Bewegt den Spieler zu einer bestimmten Position
Parameters:
posX - X Position des Zielpunktes
posY - Y Position des Zielpunktes
Version:
1.0
Author:
Björn Konrad

runIntoField

public void runIntoField()
public void runIntoField() Falls sich ein Spieler außerhalb des Feldes befindet, soll er wieder rein laufen
Version:
1.0
Author:
Björn Konrad