         new-entity (conj entity {:hidden true})]
     (assoc-in state [:entities hidden-entity] new-entity)))
 
+(defn reset-game [state]
+  initial-state)
+
 (defn win-game [state]
-  (q/background 90 200 21)
-  state)
+  (assoc state :game-state :win))
 
 (defn lose-game [state]
-  (q/background 90 200 21)
-  state)
+  (assoc state :game-state :lose))
 
 (def actions-map
   {[:look :window] {:text "You look outside the window and see your home, the mighty ocean." :action []}

  (:require [quil.core :as q :include-macros true]
            [quil.middleware :as m]))

(defn setup []
  (q/frame-rate 12)
  {:entities
    {;objects
     :bucket {:x 380 :y 290 :width 50 :height 60 :path "resources/bucket.png"}

  (q/text-align :left)
  (q/text (:current-status state) 20 15 (- (q/width) 140) 90)
  (q/text-align :right)
  (q/text (:game-state state) (- (q/width) 150) 15 120 90))

(defn draw-state [state]
  (cond
    (= (:game-state state) :win) (q/text "YOU WIN" 10 10)
    (= (:game-state state) :lose) (q/text "YOU LOSE" 10 10)
    :else (do    
            (draw-entities state)
            (draw-background)
            (draw-entities state)
            (draw-status-bar state))))

(defn handle-click [state]
  (assoc state :mouse-clicked true))
