mirror of
https://github.com/michaelrausch/Party-Parrots-At-Sea.git
synced 2026-05-09 14:28:43 +00:00
MarkRounding Message now sent out correctly.
Added submark seqID attribute to each mark of a compound mark from parsing xml Added Rounding side attribute to each individual mark as read from the xml RoundingSide enum now has a method to get Enum from String literal Now store the closest mark to each yacht in each update for purpose of knowing which mark they round Minor code tidying, Added logger to serverToClientThread, removed 'serverLog' method removed obsolete code
This commit is contained in:
@@ -2,6 +2,7 @@ package seng302.model.mark;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import seng302.gameServer.server.messages.RoundingSide;
|
||||
import seng302.model.GeoPoint;
|
||||
import seng302.utilities.GeoUtility;
|
||||
|
||||
@@ -9,7 +10,6 @@ public class CompoundMark {
|
||||
|
||||
private int compoundMarkId;
|
||||
private String name;
|
||||
|
||||
private List<Mark> marks = new ArrayList<>();
|
||||
private GeoPoint midPoint;
|
||||
|
||||
@@ -55,6 +55,27 @@ public class CompoundMark {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public void setRoundingSide(RoundingSide roundingSide) {
|
||||
switch (roundingSide) {
|
||||
case SP:
|
||||
getSubMark(1).setRoundingSide(RoundingSide.STARBOARD);
|
||||
getSubMark(2).setRoundingSide(RoundingSide.PORT);
|
||||
break;
|
||||
case PS:
|
||||
getSubMark(1).setRoundingSide(RoundingSide.PORT);
|
||||
getSubMark(2).setRoundingSide(RoundingSide.STARBOARD);
|
||||
break;
|
||||
case PORT:
|
||||
getSubMark(1).setRoundingSide(RoundingSide.PORT);
|
||||
break;
|
||||
case STARBOARD:
|
||||
getSubMark(1).setRoundingSide(RoundingSide.STARBOARD);
|
||||
break;
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the mark contained in the compound mark. Marks are numbered 1 to n;
|
||||
* @param singleMarkId the id of the desired mark contained in this compound mark.
|
||||
|
||||
@@ -2,6 +2,7 @@ package seng302.model.mark;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import seng302.gameServer.server.messages.RoundingSide;
|
||||
import seng302.model.GeoPoint;
|
||||
|
||||
/**
|
||||
@@ -19,11 +20,13 @@ public class Mark extends GeoPoint {
|
||||
private String name;
|
||||
private int sourceID;
|
||||
private List<PositionListener> positionListeners = new ArrayList<>();
|
||||
private RoundingSide roundingSide;
|
||||
|
||||
public Mark(String name, double lat, double lng, int sourceID) {
|
||||
public Mark(String name, int seqID, double lat, double lng, int sourceID) {
|
||||
super(lat, lng);
|
||||
this.name = name;
|
||||
this.sourceID = sourceID;
|
||||
this.seqID = seqID;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -39,10 +42,6 @@ public class Mark extends GeoPoint {
|
||||
return seqID;
|
||||
}
|
||||
|
||||
public void setSeqID(int seqID) {
|
||||
this.seqID = seqID;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
@@ -55,6 +54,14 @@ public class Mark extends GeoPoint {
|
||||
return sourceID;
|
||||
}
|
||||
|
||||
public RoundingSide getRoundingSide() {
|
||||
return roundingSide;
|
||||
}
|
||||
|
||||
public void setRoundingSide(RoundingSide roundingSide) {
|
||||
this.roundingSide = roundingSide;
|
||||
}
|
||||
|
||||
public void setSourceID(int sourceID) {
|
||||
this.sourceID = sourceID;
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@ import org.slf4j.LoggerFactory;
|
||||
import org.w3c.dom.Document;
|
||||
import org.xml.sax.InputSource;
|
||||
import org.xml.sax.SAXException;
|
||||
import seng302.gameServer.server.messages.RoundingSide;
|
||||
import seng302.model.stream.xml.generator.Race;
|
||||
import seng302.model.stream.xml.parser.RaceXMLData;
|
||||
import seng302.utilities.XMLGenerator;
|
||||
@@ -104,6 +105,7 @@ public class MarkOrder {
|
||||
|
||||
for (Corner corner : corners){
|
||||
CompoundMark compoundMark = marks.get(corner.getCompoundMarkID());
|
||||
compoundMark.setRoundingSide(RoundingSide.getRoundingSide(corner.getRounding()));
|
||||
course.add(compoundMark);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user