|
|
@@ -3,6 +3,7 @@ package org.leumasjaffe.charsheet.model.magic.impl;
|
|
|
import java.io.File;
|
|
|
import java.util.Collection;
|
|
|
import java.util.Collections;
|
|
|
+import java.util.LinkedHashSet;
|
|
|
import java.util.List;
|
|
|
import java.util.Objects;
|
|
|
import java.util.Set;
|
|
|
@@ -13,6 +14,7 @@ import org.leumasjaffe.charsheet.model.magic.DDSpell;
|
|
|
|
|
|
import com.fasterxml.jackson.annotation.JsonCreator;
|
|
|
import com.fasterxml.jackson.annotation.JsonIgnore;
|
|
|
+import com.fasterxml.jackson.annotation.JsonValue;
|
|
|
import com.fasterxml.jackson.core.type.TypeReference;
|
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
|
import com.fasterxml.jackson.datatype.jdk8.Jdk8Module;
|
|
|
@@ -32,13 +34,14 @@ public class Domain extends Prepared implements DDSpellbook.Secondary {
|
|
|
return mapper.readValue(new File("resources/spells/domain/" + name.toLowerCase() + ".json"),
|
|
|
new TypeReference<SpellBookImpl>() {});
|
|
|
}
|
|
|
+ @JsonValue private String getImplName() { return name.replaceAll(".*::", ""); }
|
|
|
String name;
|
|
|
List<Object> powers;
|
|
|
List<DDSpell> spells;
|
|
|
}
|
|
|
|
|
|
@JsonIgnore DDSpellbook mainSpellbook;
|
|
|
- Set<SpellBookImpl> domains;
|
|
|
+ Set<SpellBookImpl> domains = new LinkedHashSet<>();
|
|
|
List<DDSpell> spellsPrepared, spellsPreparedPreviously;
|
|
|
|
|
|
@Override
|
|
|
@@ -66,7 +69,7 @@ public class Domain extends Prepared implements DDSpellbook.Secondary {
|
|
|
|
|
|
@Override
|
|
|
public int numSpellsPerDayAtLevel(int level) {
|
|
|
- return 1; // TODO
|
|
|
+ return mainSpellbook.numSpellsKnownAtLevel(level) != 0 ? 1 : 0;
|
|
|
}
|
|
|
|
|
|
@Override
|