/** * @return How much do I want to avoid failed Piloting Rolls? */ int getFallShameValue() { return getFallShameValue(getFallShameIndex()); }
/** * @return A string log of these behavior settings. */ public String toLog() { final StringBuilder out = new StringBuilder("Princess Behavior: ").append(getDescription()); out.append("\n\tDestination Edge: ").append(getDestinationEdge()); out.append("\n\tRetreat Edge: ").append(getRetreatEdge()); out.append("\n\tForced Withdrawal: ").append(isForcedWithdrawal()); out.append("\n\tSelf Preservation: ").append(getSelfPreservationIndex()); out.append("\n\tHyper Aggression: ").append(getHyperAggressionIndex()); out.append("\n\tFall Shame: ").append(getFallShameIndex()); out.append("\n\tBravery: ").append(getBraveryIndex()); out.append("\n\tHerd Mentality: ").append(getHerdMentalityIndex()); out.append("\n\tVerbosity: ").append(getVerbosity()); out.append("\n\tTargets:"); out.append("\n\t\tCoords: "); for (final String t : getStrategicBuildingTargets()) { out.append(" ").append(t); } out.append("\n\t\tUnits:"); for (final int id : getPriorityUnitTargets()) { out.append(" ").append(id); } return out.toString(); }
fallShameNode.setTextContent("" + getFallShameIndex()); behavior.appendChild(fallShameNode);
protected void setPrincessFields() { verbosityCombo.setSelectedIndex(0); forcedWithdrawalCheck.setSelected(princessBehavior.isForcedWithdrawal()); autoFleeCheck.setSelected(princessBehavior.shouldAutoFlee()); selfPreservationSlidebar.setValue(princessBehavior.getSelfPreservationIndex()); aggressionSlidebar.setValue(princessBehavior.getHyperAggressionIndex()); fallShameSlidebar.setValue(princessBehavior.getFallShameIndex()); destinationEdgeCombo.setSelectedIndex(princessBehavior.getDestinationEdge().getIndex()); retreatEdgeCombo.setSelectedIndex(princessBehavior.getRetreatEdge().getIndex()); herdingSlidebar.setValue(princessBehavior.getHerdMentalityIndex()); braverySlidebar.setValue(princessBehavior.getBraveryIndex()); targetsListModel.clear(); for (String t : princessBehavior.getStrategicBuildingTargets()) { //noinspection unchecked targetsListModel.addElement(BUILDING_TARGET + ": " + t); } for (int id : princessBehavior.getPriorityUnitTargets()) { targetsListModel.addElement(UNIT_TARGET + ": " + id); } repaint(); }
Mockito.when(mockBehavior.getFallShameIndex()).thenReturn(5); Mockito.when(mockPrincess.getBehaviorSettings()).thenReturn(mockBehavior);
int currentFallShame = princess.getBehaviorSettings().getFallShameIndex(); int newFallShame = currentFallShame; newFallShame += princess.calculateAdjustment(adjustment); princess.getBehaviorSettings().setFallShameIndex(newFallShame); msg = "Piloting Caution changed from " + currentFallShame + " to " + princess.getBehaviorSettings().getFallShameIndex(); princess.sendChat(msg);
getPathRanker(entity).initUnitTurn(entity, getGame()); final double fallTolerance = getBehaviorSettings().getFallShameIndex() / 10d; final int startingHomeDistance = getPathRanker(entity).distanceToHomeEdge( entity.getPosition(),
public void writeToXml(PrintWriter pw1, int indent) { MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+1, "name", MekHqXmlUtil.escape(name)); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+1, "team", team); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+1, "start", start); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+1, "camoCategory", MekHqXmlUtil.escape(camoCategory)); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+1, "camoFileName", MekHqXmlUtil.escape(camoFileName)); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+1, "colorIndex", colorIndex); pw1.println(MekHqXmlUtil.indentStr(indent+1) + "<entities>"); for (Entity en : entityList) { if (en != null) { pw1.println(AtBScenario.writeEntityWithCrewToXmlString(en, indent + 2, entityList)); } } pw1.println(MekHqXmlUtil.indentStr(indent+1) + "</entities>"); pw1.println(MekHqXmlUtil.indentStr(indent+1) + "<behaviorSettings>"); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+2, "verbosity", behaviorSettings.getVerbosity().toString()); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+2, "forcedWithdrawal", behaviorSettings.isForcedWithdrawal()); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+2, "autoFlee", behaviorSettings.shouldAutoFlee()); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+2, "selfPreservationIndex", behaviorSettings.getSelfPreservationIndex()); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+2, "fallShameIndex", behaviorSettings.getFallShameIndex()); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+2, "hyperAggressionIndex", behaviorSettings.getHyperAggressionIndex()); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+2, "destinationEdge", behaviorSettings.getDestinationEdge().ordinal()); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+2, "retreatEdge", behaviorSettings.getRetreatEdge().ordinal()); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+2, "herdMentalityIndex", behaviorSettings.getHerdMentalityIndex()); MekHqXmlUtil.writeSimpleXmlTag(pw1, indent+2, "braveryIndex", behaviorSettings.getBraveryIndex()); pw1.println(MekHqXmlUtil.indentStr(indent+1) + "</behaviorSettings>"); }
/** * Gives the "utility" of a path; a number representing how good it is. * Rankers that extend this class should override this function */ RankedPath rankPath(MovePath path, IGame game) { double fallTolerance = getOwner().getBehaviorSettings().getFallShameIndex() / 10d; Entity me = path.getEntity(); int homeDistance = distanceToHomeEdge(me.getPosition(), getOwner().getHomeEdge(me), game); int maxWeaponRange = me.getMaxWeaponRange(); List<Entity> enemies = getOwner().getEnemyEntities(); List<Entity> friends = getOwner().getFriendEntities(); Coords allyCenter = calcAllyCenter(me.getId(), friends, game); return rankPath(path, game, maxWeaponRange, fallTolerance, homeDistance, enemies, allyCenter); }
Mockito.doNothing().when(mockPrincess).sendChat(Matchers.anyString()); testChatProcessor.additionalPrincessCommands(mockChatEvent, mockPrincess); Assert.assertEquals(8, mockPrincess.getBehaviorSettings().getFallShameIndex()); Mockito.doNothing().when(mockPrincess).sendChat(Matchers.anyString()); testChatProcessor.additionalPrincessCommands(mockChatEvent, mockPrincess); Assert.assertEquals(5, mockPrincess.getBehaviorSettings().getFallShameIndex()); Mockito.doNothing().when(mockPrincess).sendChat(Matchers.anyString()); testChatProcessor.additionalPrincessCommands(mockChatEvent, mockPrincess); Assert.assertEquals(6, mockPrincess.getBehaviorSettings().getFallShameIndex());
switch (getBehaviorSettings().getFallShameIndex()) { case 10: threshold = 7;
behaviorSettings.isForcedWithdrawal()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_AUTO_FLEE, behaviorSettings.shouldAutoFlee()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_FALL_SHAME_INDEX, behaviorSettings.getFallShameIndex()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_HYPER_AGGRESSION_INDEX, behaviorSettings.getHyperAggressionIndex()); behaviorSettings.isForcedWithdrawal()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_AUTO_FLEE, behaviorSettings.shouldAutoFlee()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_FALL_SHAME_INDEX, behaviorSettings.getFallShameIndex()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_HYPER_AGGRESSION_INDEX, behaviorSettings.getHyperAggressionIndex()); behaviorSettings.isForcedWithdrawal()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_AUTO_FLEE, behaviorSettings.shouldAutoFlee()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_FALL_SHAME_INDEX, behaviorSettings.getFallShameIndex()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_HYPER_AGGRESSION_INDEX, behaviorSettings.getHyperAggressionIndex()); Assert.assertEquals(false, behaviorSettings.isForcedWithdrawal()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_AUTO_FLEE, behaviorSettings.shouldAutoFlee()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_FALL_SHAME_INDEX, behaviorSettings.getFallShameIndex()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_HYPER_AGGRESSION_INDEX, behaviorSettings.getHyperAggressionIndex()); behaviorSettings.isForcedWithdrawal()); Assert.assertEquals(false, behaviorSettings.shouldAutoFlee()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_FALL_SHAME_INDEX, behaviorSettings.getFallShameIndex()); Assert.assertEquals(BehaviorSettingsTestConstants.GOOD_HYPER_AGGRESSION_INDEX, behaviorSettings.getHyperAggressionIndex());
public BehaviorSettings getCopy() throws PrincessException { final BehaviorSettings copy = new BehaviorSettings(); copy.setDestinationEdge(getDestinationEdge()); copy.setRetreatEdge(getRetreatEdge()); copy.setForcedWithdrawal(isForcedWithdrawal()); copy.setAutoFlee(shouldAutoFlee()); copy.setDescription(getDescription()); copy.setFallShameIndex(getFallShameIndex()); copy.setBraveryIndex(getBraveryIndex()); copy.setHerdMentalityIndex(getHerdMentalityIndex()); copy.setHyperAggressionIndex(getHyperAggressionIndex()); copy.setSelfPreservationIndex(getSelfPreservationIndex()); copy.setVerbosity(getVerbosity()); for (final String t : getStrategicBuildingTargets()) { copy.addStrategicTarget(t); } for (final Integer p : getPriorityUnitTargets()) { copy.addPriorityUnit(p); } return copy; }