# HG changeset patch # User Steve Losh # Date 1450117971 0 # Node ID fdcd71c3f6aac089b39a7dea637d3ef77f4b7ff7 # Parent a3f583b450a226ce2d92ce445b112ba03a43db66 Deunicodeify things, start unfucking animal collisions diff -r a3f583b450a2 -r fdcd71c3f6aa src/silt/core.clj --- a/src/silt/core.clj Mon Dec 14 18:21:36 2015 +0000 +++ b/src/silt/core.clj Mon Dec 14 18:32:51 2015 +0000 @@ -136,8 +136,8 @@ (rr/rand-nth [:white :blue :green :yellow :red]))) (update :glyph (maybe (or mc 0.01) v - (rr/rand-nth ["♞" "☃" "ℵ" "ℇ" "⧲" "⦼" "⨾" "∂" "∀" "€" - "₵" "★" "♞" "♟" "❣" "¿" "?" "§" "@"])))))) + (rr/rand-nth [";" "☃" "$" "&" "!" ":" "¥" "£" "¤" "€" + "‡" "ß" "¶" "µ" "¢" "¬" "¿" "?" "§" "@"])))))) (defn map-vals [m f] (into {} (for [[k v] m] @@ -150,6 +150,7 @@ ; eat shit, clojure (if (< n 0) (- n) n)) + ; Mysteries ------------------------------------------------------------------- (def landmarks (ref (to-loc-map @@ -211,10 +212,14 @@ (clone animal)]) (defn try-move [orig dir] - (let [dest (dir-add orig dir)] - (if (contains? @terrain dest) - orig - dest))) + (if (= dir [0 0]) + orig + (let [dest (dir-add orig dir)] + (if (or (contains? @terrain dest) + (contains? @landmarks dest) + (contains? @animals dest)) + orig + dest)))) (defn near-water [animal] @@ -271,8 +276,7 @@ try-reproduce)) (defn tick-animals [animals] - (into {} (map (juxt :loc identity) - (mapcat tick-animal (vals animals))))) + (to-loc-map (mapcat tick-animal (vals animals)))) ; World Generation ------------------------------------------------------------