@Component(value="aiPlayer") @Scope(value="prototype") public class AIPlayer extends Player implements IAIPlayer
| Modifier and Type | Field and Description |
|---|---|
private IAICaptainHireStrategyType |
captainHireStrategyType |
private IAIConstructionSelectionStrategyType |
constructionSelectionType |
private IAIEventDecisionStrategyType |
eventDecitionStrategyType |
private static RandomNameLoader |
firstNameLoader |
private IProductionConsumptionKnowledge |
knowledge |
private static RandomNameLoader |
lastNameLoader |
private static org.apache.logging.log4j.Logger |
LOGGER |
private AIPlayerContext |
playerContext |
private IAIShipRepairStrategyType |
shipRepairStrategyType |
private IAITakeLoanStrategyType |
takeLoanStrategyType |
private Map<INavigableVessel,ITradeMissionData> |
tradeMissions |
private com.google.common.collect.LinkedHashMultimap<INavigableVessel,ITradeStep> |
tradeSteps |
private Map<INavigableVessel,IAITradeStrategyType> |
tradeStrategyType |
private Map<INavigableVessel,Boolean> |
waitingStatus
Waiting status of the trade for a ship.
|
| Constructor and Description |
|---|
AIPlayer(ICity homeTown,
java.time.LocalDateTime birthDate,
ICompany company) |
| Modifier and Type | Method and Description |
|---|---|
void |
addTradeStep(ITradeStep tradeStep,
INavigableVessel vessel)
Add a new trade step at the end of the list.
|
IAIGuildJoinStrategyType |
getGuildJoinStrategyType()
Retrieve the strategy to join guilds.
|
IAIHireSailorsStrategyType |
getHireSailorStrategyType()
Retreive the strategy type for hiring the sailors.
|
IAIHireTradeManagerStrategyType |
getHireTradeManagerStrategyType()
Retrieve the strategy for hiring and dismissing trade managers.
|
ITradeStep |
getNextTradeStep(INavigableVessel vessel)
Retrieve the next trade step that should be executed and remove it from the list.
|
private static PersonalData |
getPersonalData(ICity homeTown,
java.time.LocalDateTime birthDate) |
IProductionConsumptionKnowledge |
getProductionAndConsumptionKnowledge()
Retrieve the knowledge of production and consumption.
|
private static String |
getRandomFirstName() |
private static String |
getRandomLastName() |
IAIShipUpgradeStrategyType |
getShipUpgradeStrategyType()
Retrieve the strategy type for upgrading ships.
|
ITradeMissionData |
getTradeMission(INavigableVessel vessel)
Retrieve the trade mission of a given vessel.
|
IAITradeStrategyType |
getTradeStrategyType(INavigableVessel vessel)
Retreive the the type of trade strategy.
|
IAIBuyWeaponStrategyType |
getWeaponBuyStrategyType()
Retrieve the strategy type for buying weapons.
|
boolean |
hasMoreTradeSteps(INavigableVessel vessel)
Check if there are further trade steps.
|
void |
injectTradeStep(ITradeStep tradeStep,
INavigableVessel vessel)
Inject a trade step at the beinning of the task list for the vessel
|
boolean |
isInitialized(INavigableVessel vessel)
Check if the trade strategy for the vessel is initialized.
|
void |
setTradeMission(INavigableVessel vessel,
ITradeMissionData tradeMission)
Add trade mission data fo a vessel.
|
void |
setTradeStrategyType(INavigableVessel vessel,
IAITradeStrategyType type)
Set the trade strategy type on the level of a vessel.
|
void |
updateTradeWaitingStatus(INavigableVessel vessel,
boolean wait)
Update the waiting status upon the execution of a trade step.
|
boolean |
waitingForTradeStepToFinish(INavigableVessel vessel)
Check if the next trade step can be executed for the vessel, or if the last
trade step requires waiting on an event.
|
addSelectableVessel, addShip, equals, findBuildings, findBuildings, findShips, findTradingOffice, getFleet, getHometown, getLastName, getName, getPersonalData, getSelectableVessels, getSpouseData, hashCode, marry, receiveSum, removeSelectableVessel, removeShip, spouseDies, updateCrimialDrive, updateRankclone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitgetCaptainHireStrategyType, getConstructionSelectionType, getEventDecitionStrategyType, getPlayerContext, getShipRepairStrategyType, getTakeLoanStrategyTypeaddSelectableVessel, addShip, findBuildings, findBuildings, findShips, findTradingOffice, getCareerLevel, getChildren, getCompany, getCriminalDrive, getFleet, getPersonalData, getSegmentedMap, getSelectableVessels, getSpouseData, getUuid, marry, removeSelectableVessel, removeShip, setCareerLevel, setSegmentedMap, spouseDies, updateCrimialDrive, updateRankgetHometown, getLastName, getName, getRankreceiveSumgetLastName, getNameprivate static final org.apache.logging.log4j.Logger LOGGER
private com.google.common.collect.LinkedHashMultimap<INavigableVessel,ITradeStep> tradeSteps
private Map<INavigableVessel,ITradeMissionData> tradeMissions
private Map<INavigableVessel,Boolean> waitingStatus
private Map<INavigableVessel,IAITradeStrategyType> tradeStrategyType
private IAIShipRepairStrategyType shipRepairStrategyType
private IAIConstructionSelectionStrategyType constructionSelectionType
private IAICaptainHireStrategyType captainHireStrategyType
private IAITakeLoanStrategyType takeLoanStrategyType
private IAIEventDecisionStrategyType eventDecitionStrategyType
@Autowired private IProductionConsumptionKnowledge knowledge
private AIPlayerContext playerContext
private static RandomNameLoader firstNameLoader
private static RandomNameLoader lastNameLoader
private static PersonalData getPersonalData(ICity homeTown, java.time.LocalDateTime birthDate)
private static String getRandomFirstName()
private static String getRandomLastName()
public IProductionConsumptionKnowledge getProductionAndConsumptionKnowledge()
IAIPlayergetProductionAndConsumptionKnowledge in interface IAIPlayerpublic ITradeStep getNextTradeStep(INavigableVessel vessel)
IAIPlayergetNextTradeStep in interface IAIPlayervessel - for which the next trade step should be checked.public boolean hasMoreTradeSteps(INavigableVessel vessel)
IAIPlayerhasMoreTradeSteps in interface IAIPlayervessel - which should be checked.public void addTradeStep(ITradeStep tradeStep, INavigableVessel vessel)
IAIPlayeraddTradeStep in interface IAIPlayertradeStep - to be added.vessel - for which the step should be added.public void injectTradeStep(ITradeStep tradeStep, INavigableVessel vessel)
IAIPlayerinjectTradeStep in interface IAIPlayertradeStep - to be added.vessel - for which the step should be added.public ITradeMissionData getTradeMission(INavigableVessel vessel)
IAIPlayergetTradeMission in interface IAIPlayerpublic void setTradeMission(INavigableVessel vessel, ITradeMissionData tradeMission)
IAIPlayersetTradeMission in interface IAIPlayerpublic boolean waitingForTradeStepToFinish(INavigableVessel vessel)
IAIPlayerwaitingForTradeStepToFinish in interface IAIPlayervessel - for which the status should be checked.public void updateTradeWaitingStatus(INavigableVessel vessel, boolean wait)
IAIPlayerupdateTradeWaitingStatus in interface IAIPlayervessel - for which the status should be updated.wait - inicate if the next trade step should wait.public boolean isInitialized(INavigableVessel vessel)
IAIPlayerisInitialized in interface IAIPlayervessel - to be checkedpublic void setTradeStrategyType(INavigableVessel vessel, IAITradeStrategyType type)
setTradeStrategyType in interface IAIPlayervessel - type - public IAITradeStrategyType getTradeStrategyType(INavigableVessel vessel)
IAIPlayergetTradeStrategyType in interface IAIPlayerpublic IAIHireTradeManagerStrategyType getHireTradeManagerStrategyType()
IAIPlayergetHireTradeManagerStrategyType in interface IAIPlayerpublic IAIGuildJoinStrategyType getGuildJoinStrategyType()
IAIPlayergetGuildJoinStrategyType in interface IAIPlayerpublic IAIBuyWeaponStrategyType getWeaponBuyStrategyType()
IAIPlayergetWeaponBuyStrategyType in interface IAIPlayerpublic IAIHireSailorsStrategyType getHireSailorStrategyType()
IAIPlayergetHireSailorStrategyType in interface IAIPlayerpublic IAIShipUpgradeStrategyType getShipUpgradeStrategyType()
IAIPlayergetShipUpgradeStrategyType in interface IAIPlayerCopyright © 2011-2018 Sahits GmbH. All Rights Reserved.