use of pcgen.core.Domain in project pcgen by PCGen.
the class CcskillToken method removeChoice.
@Override
public void removeChoice(ChooseDriver obj, Skill skill, PlayerCharacter pc) {
PCClass pcc = pc.getDomainSource((Domain) obj).getPcclass();
pc.removeLocalCost(pcc, skill, SkillCost.CROSS_CLASS, obj);
}
use of pcgen.core.Domain in project pcgen by PCGen.
the class CskillToken method removeChoice.
@Override
public void removeChoice(ChooseDriver obj, Skill skill, PlayerCharacter pc) {
PCClass pcc = pc.getDomainSource((Domain) obj).getPcclass();
pc.removeLocalCost(pcc, skill, SkillCost.CLASS, obj);
}
use of pcgen.core.Domain in project pcgen by PCGen.
the class DomainTokenTest method testUnparseSinglePre.
@Test
public void testUnparseSinglePre() throws PersistenceLayerException {
Domain wp1 = construct(primaryContext, "TestWP1");
CDOMDirectSingleRef<Domain> ref = CDOMDirectSingleRef.getRef(wp1);
PreParserFactory prereqParser = PreParserFactory.getInstance();
Prerequisite prereq = prereqParser.parse("PRERACE:1,Dwarf");
assertNotNull(prereq);
QualifiedObject<CDOMSingleRef<Domain>> qo = new QualifiedObject<>(ref, prereq);
primaryProf.addToListFor(ListKey.DOMAIN, qo);
String[] unparsed = getToken().unparse(primaryContext, primaryProf);
expectSingle(unparsed, getLegalValue() + "|PRERACE:1,Dwarf");
}
use of pcgen.core.Domain in project pcgen by PCGen.
the class DomainTokenTest method testUnparseSingle.
@Test
public void testUnparseSingle() throws PersistenceLayerException {
Domain wp1 = construct(primaryContext, "TestWP1");
primaryProf.addToListFor(ListKey.DOMAIN, buildQO(wp1));
String[] unparsed = getToken().unparse(primaryContext, primaryProf);
expectSingle(unparsed, getLegalValue());
}
use of pcgen.core.Domain in project pcgen by PCGen.
the class DomainTargetSaveRestoreTest method testDomainCCSkill.
@Test
public void testDomainCCSkill() {
Skill granted = create(Skill.class, "Granted");
new ExclusiveToken().parseToken(context, granted, "Yes");
Domain target = create(getObjectClass(), "Target");
create(Skill.class, "MySkill");
new CcskillToken().parseToken(context, target, "LIST");
new SkillToken().parseToken(context, target, "Granted|MySkill");
Object o = prepare(target);
finishLoad();
applyObject(target);
PCClass myclass = pc.getClassKeyed("MyClass");
assertEquals(SkillCost.CROSS_CLASS, pc.getSkillCostForClass(granted, myclass));
runRoundRobin(getPreEqualityCleanup());
assertEquals(SkillCost.CROSS_CLASS, pc.getSkillCostForClass(granted, myclass));
myclass = reloadedPC.getClassKeyed("MyClass");
assertEquals(SkillCost.CROSS_CLASS, reloadedPC.getSkillCostForClass(granted, myclass));
remove(o);
reloadedPC.setDirty(true);
assertEquals(SkillCost.EXCLUSIVE, reloadedPC.getSkillCostForClass(granted, myclass));
}
Aggregations