示例#1
0
  @Override
  public boolean parse(GameMode gameMode, String value, URI source) {
    final StringTokenizer aTok = new StringTokenizer(value, "\t");

    if (!aTok.hasMoreTokens()) {
      Logging.errorPrint("Empty tag in miscinfo.ACTYPE");

      return false;
    }

    final String acType = aTok.nextToken();

    while (aTok.hasMoreTokens()) {
      final String aString = aTok.nextToken();

      if (aString.startsWith("ADD:")) {
        Collection<ACControl> controls = parseACControl(aString.substring(4));
        if (controls == null) {
          return false;
        }
        gameMode.addACAdds(acType, controls);
      } else if (aString.startsWith("REMOVE:")) {
        Collection<ACControl> controls = parseACControl(aString.substring(7));
        if (controls == null) {
          return false;
        }
        gameMode.addACRemoves(acType, controls);
      } else {
        Logging.errorPrint("Incorrect tag in miscinfo.ACTYPE: " + aString);
        return false;
      }
    }
    return true;
  }
示例#2
0
 public boolean parse(GameMode gameMode, String value, URI source) {
   try {
     gameMode.setBabMaxAtt(Integer.parseInt(value));
     return true;
   } catch (NumberFormatException nfe) {
     return false;
   }
 }
 @Override
 public TemplateModel generate(GameMode mode) {
   CodeControl controller =
       mode.getModeContext()
           .getReferenceContext()
           .silentlyGetConstructedCDOMObject(CodeControl.class, "Controller");
   if (controller == null) {
     return null;
   }
   return new CodeControlModel(controller);
 }
  /* (non-Javadoc)
   * @see pcgen.persistence.lst.GameModeLstToken#parse(pcgen.core.GameMode, java.lang.String, java.net.URI)
   */
  @Override
  public boolean parse(GameMode gameMode, String value, URI source) {
    final StringTokenizer aTok = new StringTokenizer(value, "|", false);

    if (aTok.countTokens() < 2) {
      Logging.log(
          Logging.LST_ERROR,
          getTokenName() + " expecting '|', format is: " + "EquipType|IconPath was: " + value);
      return false;
    }

    if (aTok.countTokens() > 3) {
      Logging.log(
          Logging.LST_ERROR,
          getTokenName()
              + " too many '|', format is: "
              + "EquipType|IconPath|Priority was: "
              + value);
      return false;
    }

    final String equipType = aTok.nextToken();
    final String iconPath = aTok.nextToken();
    int priority = 10;
    if (aTok.hasMoreElements()) {
      String priorityToken = aTok.nextToken();
      try {
        priority = Integer.parseInt(priorityToken);
      } catch (NumberFormatException ex) {
        Logging.log(
            Logging.LST_ERROR,
            getTokenName()
                + " expected an integer priority .  Found: "
                + priorityToken
                + " in "
                + value);
        return false;
      }
    }

    gameMode.setEquipTypeIcon(equipType.intern(), iconPath.intern(), priority);
    return true;
  }
 @Override
 public boolean parse(GameMode gameMode, String value, URI source) {
   gameMode.setCRSteps(value);
   return true;
 }
示例#6
0
 @Override
 public boolean parse(GameMode gameMode, String value, URI source) {
   gameMode.setRankModFormula(value);
   return true;
 }
 public boolean parse(GameMode gameMode, String value, URI source) {
   gameMode.setShowClassDefense(value.toUpperCase().startsWith("Y"));
   return true;
 }
 public boolean parse(GameMode gameMode, String value, URI source) {
   gameMode.setVariableDisplayText(value);
   return true;
 }
示例#9
0
 @Override
 public boolean parse(GameMode gameMode, String value, URI source) {
   gameMode.setAlignmentText(value);
   return true;
 }
  protected void setUpContext() throws PersistenceLayerException {
    ChooserFactory.pushChooserClassname(RandomChooser.class.getName());
    TokenRegistration.clearTokens();
    TokenRegistration.register(AUTO_LANG_TOKEN);
    TokenRegistration.register(ABILITY_VISIBLE_TOKEN);
    TokenRegistration.register(AUTO_TOKEN);
    TokenRegistration.register(CHOOSE_TOKEN);
    TokenRegistration.register(CHOOSE_LANG_TOKEN);
    TokenRegistration.register(ABILITY_MULT_TOKEN);
    TokenRegistration.register(EQUIP_TYPE_TOKEN);
    TokenRegistration.register(EQUIP_PROFICIENCY_TOKEN);
    TokenRegistration.register(LANGBONUS_PRIM);
    TokenRegistration.register(PC_QUAL);
    TokenRegistration.register(getToken());
    TokenRegistration.register(plugin.bonustokens.Feat.class);

    directAbilityFacet = FacetLibrary.getFacet(DirectAbilityFacet.class);
    activeEqModFacet = FacetLibrary.getFacet(ActiveEqModFacet.class);
    alignmentFacet = FacetLibrary.getFacet(AlignmentFacet.class);
    bioSetFacet = FacetLibrary.getFacet(BioSetFacet.class);
    checkFacet = FacetLibrary.getFacet(CheckFacet.class);
    classFacet = FacetLibrary.getFacet(ClassFacet.class);
    classLevelFacet = FacetLibrary.getFacet(ClassLevelFacet.class);
    companionModFacet = FacetLibrary.getFacet(CompanionModFacet.class);
    deityFacet = FacetLibrary.getFacet(DeityFacet.class);
    domainFacet = FacetLibrary.getFacet(DomainFacet.class);
    expandedCampaignFacet = FacetLibrary.getFacet(ExpandedCampaignFacet.class);
    languageFacet = FacetLibrary.getFacet(LanguageFacet.class);
    raceFacet = FacetLibrary.getFacet(RaceInputFacet.class);
    sizeFacet = FacetLibrary.getFacet(SizeFacet.class);
    skillFacet = FacetLibrary.getFacet(SkillFacet.class);
    statFacet = FacetLibrary.getFacet(StatFacet.class);
    templateInputFacet = FacetLibrary.getFacet(TemplateInputFacet.class);
    templateConsolidationFacet = FacetLibrary.getFacet(TemplateFacet.class);
    weaponProfModelFacet = FacetLibrary.getFacet(WeaponProfModelFacet.class);

    Globals.createEmptyRace();
    Globals.setUseGUI(false);
    Globals.emptyLists();
    GameMode gamemode = SettingsHandler.getGame();
    gamemode.clearLoadContext();

    str = BuildUtilities.createStat("Strength", "STR");
    str.put(VariableKey.getConstant("LOADSCORE"), FormulaFactory.getFormulaFor("STRSCORE"));
    str.put(VariableKey.getConstant("OFFHANDLIGHTBONUS"), FormulaFactory.getFormulaFor(2));
    dex = BuildUtilities.createStat("Dexterity", "DEX");
    PCStat con = BuildUtilities.createStat("Constitution", "CON");
    intel = BuildUtilities.createStat("Intelligence", "INT");
    wis = BuildUtilities.createStat("Wisdom", "WIS");
    cha = BuildUtilities.createStat("Charisma", "CHA");

    AbstractReferenceContext ref = Globals.getContext().getReferenceContext();
    lg = BuildUtilities.createAlignment("Lawful Good", "LG");
    ref.importObject(lg);
    ln = BuildUtilities.createAlignment("Lawful Neutral", "LN");
    ref.importObject(ln);
    le = BuildUtilities.createAlignment("Lawful Evil", "LE");
    ref.importObject(le);
    ng = BuildUtilities.createAlignment("Neutral Good", "NG");
    ref.importObject(ng);
    tn = BuildUtilities.createAlignment("True Neutral", "TN");
    ref.importObject(tn);
    ne = BuildUtilities.createAlignment("Neutral Evil", "NE");
    ref.importObject(ne);
    cg = BuildUtilities.createAlignment("Chaotic Good", "CG");
    ref.importObject(cg);
    cn = BuildUtilities.createAlignment("Chaotic Neutral", "CN");
    ref.importObject(cn);
    ce = BuildUtilities.createAlignment("Chaotic Evil", "CE");
    ref.importObject(ce);
    ref.importObject(BuildUtilities.createAlignment("None", "NONE"));
    ref.importObject(BuildUtilities.createAlignment("Deity's", "Deity"));

    gamemode.setBonusFeatLevels("3|3");

    SettingsHandler.setGame("3.5");

    ref.importObject(str);
    ref.importObject(dex);
    ref.importObject(con);
    ref.importObject(intel);
    ref.importObject(wis);
    ref.importObject(cha);

    fine = BuildUtilities.createSize("Fine");
    diminutive = BuildUtilities.createSize("Diminutive");
    tiny = BuildUtilities.createSize("Tiny");
    small = BuildUtilities.createSize("Small");
    medium = BuildUtilities.createSize("Medium");
    medium.put(ObjectKey.IS_DEFAULT_SIZE, Boolean.TRUE);
    large = BuildUtilities.createSize("Large");
    huge = BuildUtilities.createSize("Huge");
    gargantuan = BuildUtilities.createSize("Gargantuan");
    colossal = BuildUtilities.createSize("Colossal");

    context = Globals.getContext();
    create(Language.class, "Common");
    BuildUtilities.createFact(context, "ClassType", PCClass.class);
    FactDefinition<?, String> fd = BuildUtilities.createFact(context, "SpellType", PCClass.class);
    fd.setSelectable(true);
    context.getReferenceContext().importObject(AbilityCategory.FEAT);
    SourceFileLoader.createLangBonusObject(Globals.getContext());
  }
示例#11
0
 @Override
 public boolean parse(GameMode gameMode, String value, URI source) {
   gameMode.setAltHPAbbrev(value);
   return true;
 }