@Override
  public ParagraphData resolve(
      final ItemCheckCommand parent, final ResolvationData resolvationData) {
    ParagraphData toResolve;

    if (resolvationData
        .getCharacterHandler()
        .getParagraphHandler()
        .visitedParagraph(resolvationData.getCharacter(), parent.getId())) {
      toResolve = parent.getHave();
    } else {
      toResolve = parent.getDontHave();
    }
    return toResolve;
  }
 @Override
 public List<ParagraphData> doResolve(
     final FfFightCommand command, final ResolvationData resolvationData) {
   final List<ParagraphData> resolveList = new ArrayList<>();
   resolveBattlingParties(command, resolvationData, null);
   final FfCharacterHandler characterHandler =
       (FfCharacterHandler) resolvationData.getCharacterHandler();
   command.setOngoing(true);
   resolveBattleRound(command, resolvationData, resolveList);
   characterHandler
       .getAttributeHandler()
       .sanityCheck((FfCharacter) resolvationData.getCharacter());
   resolveBattlingParties(command, resolvationData, resolveList);
   return resolveList;
 }
 private void resolveBattleRound(
     final FfFightCommand command,
     final ResolvationData resolvationData,
     final List<ParagraphData> resolveList) {
   final FfCharacter character = (FfCharacter) resolvationData.getCharacter();
   final FfCharacterHandler characterHandler =
       (FfCharacterHandler) resolvationData.getCharacterHandler();
   final String lastFightCommand =
       characterHandler.getInteractionHandler().getLastFightCommand(character);
   if (FfFightCommand.ATTACKING.equals(lastFightCommand)) {
     handleAttacking(command, resolvationData, resolveList);
   } else {
     command.setBattleType("ff15ship");
     command.setOngoing(true);
   }
 }
 public void testExecutePostHandlerShouldKillEnemiesAndAddMarkerItem() {
   // GIVEN
   final ImmutableMap<String, Enemy> enemiesMap =
       ImmutableMap.of("7", (Enemy) captain, "8", elvira);
   expect(resolvationData.getEnemies()).andReturn(enemiesMap);
   captain.setStamina(0);
   elvira.setStamina(0);
   expect(resolvationData.getCharacterHandler()).andReturn(characterHandler);
   expect(characterHandler.getItemHandler()).andReturn(itemHandler);
   expect(resolvationData.getCharacter()).andReturn(character);
   expect(itemHandler.addItem(character, "4001", 1)).andReturn(1);
   mockControl.replay();
   // WHEN
   underTest.executePostHandler(command, resolvationData, results, data);
   // THEN
 }