Mercurial > vba-clojure
view clojure/com/aurellem/gb/rival_name.clj @ 292:c31cb3043087
Tinkering with types and encounters.
author | Dylan Holmes <ocsenave@gmail.com> |
---|---|
date | Fri, 30 Mar 2012 05:57:12 -0500 (2012-03-30) |
parents | 0587f266a735 |
children |
line wrap: on
line source
1 (ns com.aurellem.gb.rival-name2 (:use (com.aurellem.gb gb-driver util characters))3 (:import [com.aurellem.gb.gb_driver SaveState]))6 (def rival-name-start-address 0xD349)8 (def rival-name-width 12)10 (defn read-rival-name11 ([^SaveState state]12 (read-name (subvec (vec (memory state))13 rival-name-start-address14 (+ rival-name-start-address15 rival-name-width))))16 ([] (read-rival-name @current-state)))18 (defn set-rival-name19 ([^SaveState state new-name]20 (assert (<= (count new-name) 10))21 (let [codes (str->character-codes new-name)]22 (set-memory-range state23 rival-name-start-address24 (concat codes [end-of-name-sentinel]))))25 ([new-name] (set-rival-name @current-state new-name)))