Guest User

snake

a guest
Nov 24th, 2014
265
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (defn update [{:keys [food snake direction points]}]
  2.   (if (game-over? snake)
  3.     (do
  4.       {:food food
  5.        :snake snake
  6.        :direction [0,0]
  7.        :points points})
  8.     (let [head (first snake)
  9.           eating (eating? food head)
  10.           moved-snake (update-snake direction snake)
  11.           new-snake (if eating
  12.                       (conj moved-snake (last snake))
  13.                       moved-snake)
  14.           eaten-food (if eating
  15.                        (disj food head)
  16.                        food)
  17.           new-points (if eating
  18.                        (inc points)
  19.                        points)
  20.           new-food (if (< (rand) 0.005)
  21.                      (conj eaten-food [(rand-int 80),(rand-int 60)])
  22.                      eaten-food)]
  23.       {:food new-food
  24.        :snake new-snake
  25.        :direction direction
  26.        :points new-points})))
Advertisement
Add Comment
Please, Sign In to add comment