96 lines
2.1 KiB
JSON
96 lines
2.1 KiB
JSON
{
|
|
"$defs" : {
|
|
"health" : {
|
|
"properties" : {
|
|
"current" : {
|
|
"type" : "number"
|
|
},
|
|
"log" : {
|
|
"description" : "history of health rolls",
|
|
"items" : {
|
|
"type" : "number"
|
|
},
|
|
"maxItems" : {
|
|
"$data" : "/level"
|
|
},
|
|
"minItems" : {
|
|
"$data" : "/level"
|
|
},
|
|
"type" : "array"
|
|
},
|
|
"max" : {
|
|
"sumOf" : {
|
|
"list" : {
|
|
"$data" : "1/log"
|
|
}
|
|
},
|
|
"type" : "number"
|
|
}
|
|
},
|
|
"required" : [
|
|
"max"
|
|
],
|
|
"type" : "object"
|
|
},
|
|
"statistic" : {
|
|
"maximum" : 20,
|
|
"minimum" : 1,
|
|
"type" : "number"
|
|
}
|
|
},
|
|
"$id" : "https://hyperboria.babyl.ca/character.json",
|
|
"additionalProperties" : false,
|
|
"properties" : {
|
|
"class" : {
|
|
"$ref" : "/classes.json"
|
|
},
|
|
"health" : {
|
|
"$ref" : "#/$defs/health"
|
|
},
|
|
"level" : {
|
|
"minimum" : 1,
|
|
"type" : "number"
|
|
},
|
|
"name" : {
|
|
"type" : "string"
|
|
},
|
|
"player" : {
|
|
"type" : "string"
|
|
},
|
|
"statistics" : {
|
|
"allRequired" : true,
|
|
"properties" : {
|
|
"charisma" : {
|
|
"$ref" : "#/$defs/statistic"
|
|
},
|
|
"constitution" : {
|
|
"$ref" : "#/$defs/statistic"
|
|
},
|
|
"dexterity" : {
|
|
"$ref" : "#/$defs/statistic"
|
|
},
|
|
"intelligence" : {
|
|
"$ref" : "#/$defs/statistic"
|
|
},
|
|
"strength" : {
|
|
"$ref" : "#/$defs/statistic"
|
|
},
|
|
"wisdom" : {
|
|
"$ref" : "#/$defs/statistic"
|
|
}
|
|
},
|
|
"type" : "object"
|
|
}
|
|
},
|
|
"required" : [
|
|
"name",
|
|
"player",
|
|
"statistics",
|
|
"class",
|
|
"level",
|
|
"health"
|
|
],
|
|
"title" : "Hyperboria character sheet",
|
|
"type" : "object"
|
|
}
|