work on tiles after inital extraction

This commit is contained in:
Travis Shears 2026-04-10 14:59:26 +02:00
parent 97a9d0450c
commit 402aa9051c
Signed by: travisshears
GPG key ID: CB9BF1910F3F7469

View file

@ -27,20 +27,21 @@
(def level-001-tmx (xml/parse (io/reader "./tiled/level_001.tmx"))) (def level-001-tmx (xml/parse (io/reader "./tiled/level_001.tmx")))
(def level-001 (def level-001
(let [tags (remove string? (:content level-001-tmx))] (let [tags (remove string? (:content level-001-tmx))
tile-nums (-> (filter #(= (:tag %) :layer) tags)
first
:content
second
:content
first
str/split-lines
(->>
(remove empty?)
(map #(str/split % #","))
(map (fn [row] (map Integer/parseInt row)))))]
(hash-map (hash-map
:tiles :tiles tile-nums
(-> (filter #(= (:tag %) :layer) tags)
first
:content
second
:content
first
str/split-lines
(->>
(remove empty?)
(map #(str/split % #","))
(map (fn [row] (map Integer/parseInt row)))))
:spawns (reduce (fn [acc tag] :spawns (reduce (fn [acc tag]
(if (= (:tag tag) :object) (if (= (:tag tag) :object)
@ -51,7 +52,7 @@
:y (Math/round (Double/parseDouble (get-in tag [:attrs :y]))))) :y (Math/round (Double/parseDouble (get-in tag [:attrs :y])))))
acc)) '() (:content (first (filter #(= (get-in % [:attrs :name]) "spawns") tags))))))) acc)) '() (:content (first (filter #(= (get-in % [:attrs :name]) "spawns") tags)))))))
;; (pprint/pprint {:tile (ffirst (:tiles level-001)) (pprint/pprint :row (ffirst (:tiles level-001)))
;; :wall-colliders wall-colliders}) ;; :wall-colliders wall-colliders})
;; (fs/write-lines "level_001.lua" (pr-str '(local name "travis"))) ;; (fs/write-lines "level_001.lua" (pr-str '(local name "travis")))