                         (new-state (get-in state [:world :current-state])))
             _ (assert (not (nil? new-state)))
             _ (info "player" (get-in state [:world :player]))
-            _ (info "new-state" new-state)]
+            _ (info "new-state" new-state)
+            wtl       (get-in state [:world :player :will-to-live])]
         (some-> state
             (assoc-in [:world :current-state] new-state)
             (tx/when-> advance-time

                 (set (if (neg? (get-in state [:world :player :will-to-live]))
                        (conj status :dead)
                        status))))))

(defn if-poisoned-get-hurt
  "Decrease player's hp if they are poisoned."

              ;; TODO: Add appropriate level
              (add-npcs-random 1)
              ;; update visibility
              (update-visibility)
              ;; add will-to-live flavor message
              (log-will-to-live-flavor wtl))
            (update-quests)
            (arg-when-> [state] (contains? (-> state :world :player :status) :dead)
              ((fn [state]
