;; symbols.lisp --- Part of srd-tools ;; Copyright (C) 2008 Clinton Ebadi ;; Author: Clinton Ebadi ;; This program is free software: you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. ;; This program is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with this program. If not, see . (in-package :org.unknownlamer.dnd-tools.db.symbols) (defun export-symbols-in-tree (tree) (export (remove-if-not (lambda (v) (and (symbolp v) (not (null v)))) (metatilities:flatten tree)))) (defmacro defvar* (name value &optional documentation) `(prog1 (defvar ,name ,value ,documentation) (export-symbols-in-tree ,name))) (defvar* *character-classes* '(barbarian bard cleric druid fighter monk paladin ranger rogue sorceror wizard)) (defvar* *caster-classes* '((bard 1 2 4 7 10 13 16) (cleric 1 1 3 5 7 9 11 13 15 17) (druid 1 1 3 5 7 9 11 13 15 17) (paladin nil 4 8 11 14) (ranger nil 4 8 11 14) (sorceror 1 1 4 6 8 10 12 14 16 18) (wizard 1 1 3 5 7 9 11 13 15 17)) "Caster class keys and spell levels progression (nil means the caster does not get spells of the level corresponding to that position)") (defvar* *cleric-domains* '(air animal chaos death destruction earth evil fire good healing knowledge law luck magic plant protection strength sun travel trickery war water)) (defvar* *spell-schools* '((abjuration) (conjuration calling creation healing summoning teleportation) (divination scrying) (enchantment charm compulsion) (evocation) (illusion figment glamer pattern phantasm shadow) (necromancy) (transmutation) (universal)) "(school . (subschools ...)") (defvar* *spell-descriptors* '(acid air darkness cold death earth electricity fear fire force language-dependent light mind-affecting sonic water)) (defvar* *alignments* '(good evil law chaos neutral)) (defvar* *spell-components* '((verbal v) (bard-verbal bv) (somatic s) (material m) (focus f) (divine-focus df) (xp-cost xp)))