diff options
author | Grant Shoshin Shangreaux <shoshin@cicadas.surf> | 2023-01-28 10:27:33 -0600 |
---|---|---|
committer | Grant Shoshin Shangreaux <shoshin@cicadas.surf> | 2023-01-28 10:27:33 -0600 |
commit | 2920173c75c9c8102d8a7f27df523569d61d7c7a (patch) | |
tree | b12025d12a48f3d9208b764686752cabe0846a6a /model.lisp | |
parent | 45361bfd67a3c0d63df08860b3944ef578472b60 (diff) |
Research: adding notes to hazards and task categories
Diffstat (limited to 'model.lisp')
-rw-r--r-- | model.lisp | 27 |
1 files changed, 21 insertions, 6 deletions
@@ -8,6 +8,9 @@ (deftype character-class () `(member :hero)) +(deftype priority () + `(member :low :medium :high)) + (defun hero-class (h) "barGaryan") ; TODO: real implementation @@ -37,6 +40,7 @@ :documentation "The list of slots available to this entity.")) (:metaclass db:persistent-class)) + (defclass has-chronicle () ((chronicle :accessor chronicle :initform nil)) (:metaclass db:persistent-class) @@ -108,10 +112,9 @@ (rumors :accessor campaign-rumors :initarg nil - :documentation "Beasts and Monsters rumored to be lurking about.")) + :documentation "Beasts, Monsters, and Hazards rumored to be lurking about.")) (:metaclass db:persistent-class) - (:documentation "A campaign is a container of quests. Campaigns are expected to be -engaged with on a particular schedule, and are run by particular people.")) + (:documentation "A campaign is a container of quests. Campaigns are expected to be engaged with on a particular schedule, and are run by particular people.")) (defclass quest (game-object) ((campaign @@ -144,14 +147,26 @@ engaged with on a particular schedule, and are run by particular people.")) (defclass hazard (game-object) ((quest - :accessor quest + :accessor quest-of :index-type idx:hash-list-index :index-reader hazards-in-quest :documentation "The quest to which this hazard belongs. Initially it is unbound. It becomes boudn when the hazard is added to a quest.") (overcomep - :accessor overcomep + :accessor is-overcome :initform nil - :documentation "indicates whether or not this hazard has been overcome.")) + :documentation "indicates whether or not this hazard has been overcome.") + (imminence + :accessor imminence-of + :type priority + :documentation "") + (menace ;; difficulty + :accessor menace-of + :type integer + :documentation "How dangerous the hazard is." )) (:metaclass db:persistent-class) (:documentation "Hazard is a superclass for all hazards encountered in a quest. It's chronicle includes data about which heroes fought and which overcame.")) +(defclass monster ()) + + + |