anchor.diff:    (mod (floor (+ (/ (* (theta x) n) (* 2 pi)) 0.5d0)) n))
   
   (defmethod start-shoot ((weapon weapon) event)
  -  (shoot (parent weapon) weapon event)
  +  (shoot weapon event)
     (setf (timer weapon) (cooldown weapon)))
   
   (defmethod stop-shoot ((weapon weapon) event)
     (setf (timer weapon) nil))
   
   (defmethod alarm ((weapon weapon) event)
  -  (shoot (parent weapon) weapon event)
  +  (shoot weapon event)
     (setf (timer weapon) (cooldown weapon)))
   
   (defmethod start-shoot-primary ((thopter thopter) event)
  
positive.code:           (play fire-sound))))))
  
  (defmethod missile ((enemy enemy) event)
    (shoot enemy (secondary-weapon enemy) event)
    (when (<= (enemy-missiles (game-screen *game*)) 0)
      (setf (missile-lock (game-screen *game*))
        (play (make-instance 'sample
  
negative.code: 
  (defclass tile (sprite mobile transient)
    ())
  
  (defclass weapon (alarm)
    ((timer :initform nil)
  