{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://cheeleong.dev/wwn-system-json/systems/spell.schema.json",
  "title": "WWN Spell",
  "type": "object",
  "allOf": [{ "$ref": "https://cheeleong.dev/wwn-system-json/systems/common.schema.json#/$defs/Entity" }],
  "properties": {
    "@type": { "const": "Spell" },
    "tradition": { "enum": ["high-magic", "elementalist", "necromancer"] },
    "level": { "type": "integer", "minimum": 1, "maximum": 5 },
    "range": { "type": "string" },
    "duration": { "type": "string" },
    "targets": { "type": "string" },
    "savingThrow": { "type": "string" },
    "damage": { "type": ["string", "object"] },
    "requirements": { "type": "array", "items": { "type": ["string", "object"] } },
    "effects": { "type": "array", "items": { "type": ["string", "object"] } }
  },
  "required": ["source", "tradition", "level", "rulesText"],
  "unevaluatedProperties": false
}
