Boats bounce away from marks.
- Changed onCollisionEnter signature to pass boat info #story[1100]
This commit is contained in:
@@ -400,6 +400,6 @@ public class Boat extends Collider {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCollisionEnter(Collision e) {
|
||||
public void onCollisionEnter(Boat collider, Collision e) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,6 +24,10 @@ public class Mark extends Collider {
|
||||
*/
|
||||
private GPSCoordinate position;
|
||||
|
||||
/**
|
||||
* Repulsion radius of the mark
|
||||
*/
|
||||
private double repulsionRadius = 50;
|
||||
|
||||
/**
|
||||
* Constructs a mark with a given source ID, name, and position.
|
||||
@@ -81,10 +85,12 @@ public class Mark extends Collider {
|
||||
|
||||
@Override
|
||||
public boolean rayCast(Boat boat) {
|
||||
return rayCast(boat, 100);
|
||||
return rayCast(boat, repulsionRadius);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCollisionEnter(Collision e) {
|
||||
public void onCollisionEnter(Boat collider, Collision e) {
|
||||
Azimuth reverseAzimuth = Azimuth.fromDegrees(collider.getBearing().degrees() - 180d);
|
||||
collider.setPosition(GPSCoordinate.calculateNewPosition(collider.getPosition(), 2 * repulsionRadius, reverseAzimuth));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user