;; Xeno Report Chances and Roll Variables ;; Grey Variables (defparameter *xeno-grey-rand* 35) (defparameter *xeno-grey-roll* 1) (defparameter *xeno-grey-height-min* 5.0) (defparameter *xeno-grey-height-max* 7.5) (defparameter *xeno-grey-height-result* 0.0) (defparameter *xeno-grey-stance-straight* 90) (defparameter *xeno-grey-stance-hunched* 100) (defparameter *xeno-grey-stance-list* (list *xeno-grey-stance-straight* *xeno-grey-stance-hunched*)) (defparameter *xeno-grey-walk-normal* 10) (defparameter *xeno-grey-walk-slow* 50) (defparameter *xeno-grey-walk-fluid* 70) (defparameter *xeno-grey-walk-floating* 100) (defparameter *xeno-grey-walk-list* (list *xeno-grey-walk-normal* *xeno-grey-walk-slow* *xeno-grey-walk-fluid* *xeno-grey-walk-floating*)) (defparameter *xeno-grey-skin-lightgrey* 40) (defparameter *xeno-grey-skin-darkgrey* 90) (defparameter *xeno-grey-skin-fleshtone* 100) (defparameter *xeno-grey-skin-list (list *xeno-grey-skin-lightgrey* *xeno-grey-skin-darkgrey* *xeno-grey-skin-fleshtone*)) (defparameter *xeno-grey-skintype-sharkskin* 40) (defparameter *xeno-grey-skintype-smooth* 90) (defparameter *xeno-grey-skintype-humanlike* 100) (defparameter *xeno-grey-skintype-list* (list *xeno-grey-skintype-sharkskin* *xeno-grey-skintype-smooth* *xeno-grey-skintype-humanlike*)) (defparameter *xeno-grey-eyes-ellipticallarge* 90) (defparameter *xeno-grey-eyes-ellipticalsmall* 95) (defparameter *xeno-grey-eyes-humanlike* 100) (defparameter *xeno-grey-eyes-list (list *xeno-grey-eyes-ellipticallarge* *xeno-grey-eyes-ellipticalsmall* *xeno-grey-eyes-ellpitcalhumanlike*)) ;; Reptoid Variables (defparameter *xeno-reptoid-rand* 80) (defparameter *xeno-reptoid-roll* 2) (defparameter *xeno-reptoid-height-min* 6.5) (defparameter *xeno-reptoid-height-max* 8.5) (defparameter *xeno-reptoid-height-result* 0.0) (defparameter *xeno-reptoid-stances* (list :a straight :b slightly-hunched :c hunched :d hands-and-feet)) (defparameter *xeno-reptoid-walkingpattern* (list :a normal :b rapid)) ;; Nordic Variables (defparameter *xeno-nordic-rand* 90) (defparameter *xeno-nordic-roll* 3) (defparameter *xeno-nordic-height-min* 5.0) (defparameter *xeno-nordic-height-max* 7.0) (defparameter *xeno-nordic-height-result* 0.0) (defparameter *xeno-nordic-stances* (list :a straight)) (defparameter *xeno-nordic-walkingpattern* (list :a normal :b fluid :c floating)) (defparameter *xeno-liquidmetal-rand* 93) (defparameter *xeno-liquidmetal-roll* 4) (defparameter *xeno-liquidmetal-size-min* 1.0) (defparameter *xeno-liquidmetal-size-max* 5.0) (defparameter *xeno-liquidmetal-size-result* 0.0) (defparameter *xeno-artificalint-rand* 96) (defparameter *xeno-artificalint-roll* 5) (defparameter *xeno-artificalint-size-min* 1.0) (defparameter *xeno-artificalint-size-max* 10.0) (defparameter *xeno-artificalint-size-result* 0.0) (defparameter *xeno-monsterous-rand* 100) (defparameter *xeno-monsterous-roll* 6) (defparameter *xeno-monsterous-size-min* 6.0) (defparameter *xeno-monsterous-size-max* 15.0) (defparameter *xeno-monsterous-size-result* 0.0) (defparameter *xeno-report-roll* 0) (defparameter *xeno-report-roll-number* 0) (defparameter *xeno-report-result* nil) (defparameter *xeno-report-types* (list *xeno-grey-rand* *xeno-reptoid-rand* *xeno-nordic-rand* *xeno-liquidmetal-rand* *xeno-artificalint-rand* *xeno-monsterous-rand*)) (defun xeno-random-type () (setf *xeno-report-roll* (random 100)) (dolist (x *xeno-report-types*) (incf *xeno-report-roll-number*) (when (>= x *xeno-report-roll*) (return x)))) (defun xeno-random-type-var () (cond ((= *xeno-report-roll-number* 1) (setq *xeno-report-result* 'Grey)) ((= *xeno-report-roll-number* 2) (setq *xeno-report-result* 'Reptoid)) ((= *xeno-report-roll-number* 3) (setq *xeno-report-result* 'Nordic)) ((= *xeno-report-roll-number* 4) (setq *xeno-report-result* 'Liquidmetal)) ((= *xeno-report-roll-number* 5) (setq *xeno-report-result* 'Artificalint)) ((= *xeno-report-roll-number* 6) (setq *xeno-report-result* 'Monsterous)))) (defun xeno-biology-rand-grey () (setq *xeno-grey-height-result* (+ *xeno-grey-height-min* (random (- *xeno-grey-height-max* *xeno-grey-height-min*))))) (defun xeno-biology-rand-reptoid () (setq *xeno-reptoid-height-result* (+ *xeno-reptoid-height-min* (random (- *xeno-grey-height-max* *xeno-grey-height-min*))))) (defun xeno-biology-rand-nordic () (setq *xeno-nordic-height-result* (+ *xeno-nordic-height-min* (random (- *xeno-nordic-height-max* *xeno-grey-height-min*))))) (defun xeno-biology-rand-liquidmetal () (setq *xeno-liquidmetal-size-result* (+ *xeno-liquidmetal-size-min* (random (- *xeno-liquidmetal-size-max* *xeno-liquidmetal-size-min*))))) (defun xeno-biology-rand-artificalint () (setq *xeno-artificalint-size-result* (+ *xeno-artificalint-size-min* (random (- *xeno-artificalint-size-max* *xeno-grey-height-min*))))) (defun xeno-biology-rand-monsterous () (setq *xeno-monsterous-size-result* (+ *xeno-monsterous-size-min* (random (- *xeno-monsterous-size-max* *xeno-monsterous-size-min*)))))