89 lines
2.2 KiB
JSON
89 lines
2.2 KiB
JSON
|
|
{
|
||
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
||
|
|
"title": "Ability Definitions",
|
||
|
|
"type": "object",
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": ["schemaVersion", "abilities"],
|
||
|
|
"properties": {
|
||
|
|
"schemaVersion": {
|
||
|
|
"type": "integer",
|
||
|
|
"minimum": 1
|
||
|
|
},
|
||
|
|
"abilities": {
|
||
|
|
"type": "array",
|
||
|
|
"items": {
|
||
|
|
"type": "object",
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": ["id", "name", "targeting", "cost", "power", "statusEffectsOnHit"],
|
||
|
|
"properties": {
|
||
|
|
"id": {
|
||
|
|
"type": "string",
|
||
|
|
"minLength": 1
|
||
|
|
},
|
||
|
|
"name": {
|
||
|
|
"type": "string",
|
||
|
|
"minLength": 1
|
||
|
|
},
|
||
|
|
"targeting": {
|
||
|
|
"type": "object",
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": ["mode", "range", "requiresLos"],
|
||
|
|
"properties": {
|
||
|
|
"mode": {
|
||
|
|
"type": "string",
|
||
|
|
"minLength": 1
|
||
|
|
},
|
||
|
|
"range": {
|
||
|
|
"type": "number"
|
||
|
|
},
|
||
|
|
"requiresLos": {
|
||
|
|
"type": "boolean"
|
||
|
|
}
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"cost": {
|
||
|
|
"type": "object",
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": ["mp", "ap"],
|
||
|
|
"properties": {
|
||
|
|
"mp": {
|
||
|
|
"type": "number"
|
||
|
|
},
|
||
|
|
"ap": {
|
||
|
|
"type": "number"
|
||
|
|
}
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"power": {
|
||
|
|
"type": "object",
|
||
|
|
"additionalProperties": false,
|
||
|
|
"required": ["formula", "base", "scalingStat", "scaling"],
|
||
|
|
"properties": {
|
||
|
|
"formula": {
|
||
|
|
"type": "string",
|
||
|
|
"minLength": 1
|
||
|
|
},
|
||
|
|
"base": {
|
||
|
|
"type": "number"
|
||
|
|
},
|
||
|
|
"scalingStat": {
|
||
|
|
"type": "string",
|
||
|
|
"minLength": 1
|
||
|
|
},
|
||
|
|
"scaling": {
|
||
|
|
"type": "number"
|
||
|
|
}
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"statusEffectsOnHit": {
|
||
|
|
"type": "array",
|
||
|
|
"items": {
|
||
|
|
"type": "object"
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|