58 lines
1.2 KiB
Java
58 lines
1.2 KiB
Java
|
|
public class Bus extends CivilVehicle {
|
|
|
|
private String UID;
|
|
private Campaign campaign;
|
|
private static int numeberOfBuses;
|
|
private final int TIME_TO_FIX = 20; //in minutes
|
|
public static final int MAX_FORWARD = 900; //Meter/Min
|
|
|
|
public static final double STD_BUS_SIZE = 10;
|
|
|
|
public Bus() {
|
|
super(STD_BUS_SIZE);
|
|
generateUID();
|
|
}
|
|
|
|
@Override
|
|
public int getMaxSpeed() {
|
|
return MAX_FORWARD;
|
|
}
|
|
|
|
@Override
|
|
public void arrive() {
|
|
super.arrive();
|
|
campaign.busArived(this);
|
|
}
|
|
|
|
@Override
|
|
public int getTimeToFix() {
|
|
return TIME_TO_FIX;
|
|
}
|
|
|
|
@Override
|
|
public String toString() {
|
|
StringBuilder s = new StringBuilder();
|
|
s.append(String.format("ID: %s, Campaign ID: %s\n",this.getUID() , getCampaign().getUID()));
|
|
s.append(super.toString());
|
|
return s.toString();
|
|
}
|
|
|
|
private void generateUID() {
|
|
numeberOfBuses++;
|
|
this.UID = String.format("BUS%04d", numeberOfBuses);
|
|
}
|
|
|
|
public String getUID(){
|
|
return this.UID;
|
|
}
|
|
|
|
public Campaign getCampaign() {
|
|
return campaign;
|
|
}
|
|
|
|
public void setCampaign(Campaign campaign) {
|
|
this.campaign = campaign;
|
|
}
|
|
}
|