Plaster

common-lisp
(define-storyline test :title "Test Storyline" :initial-state (sequence 0) (first :predicate (and (typep ev 'enter-area) (= 0 sequence)) :state-change (setf sequence 1) :character :player "Testing testing one two three." :emote thinking "Bla bla bla" :shake :emote cheeky "!" "Gotcha!") (second :predicate (and (typep ev 'enter-area) (= 1 sequence)) :state-change (setf sequence 2) :character :player :emote concerned "A follow-up, eh" :emote :default "And this is it."))