Mercurial > vba-clojure
view clojure/com/aurellem/exp/rival_name.clj @ 268:82ee2704c973
Since the game uses zeros as delimiters in the evolution/learnset section, it increments all of the move/pokemon indices by 1. Altered my code so that all returned values are consistently non-incremented.
author | Dylan Holmes <ocsenave@gmail.com> |
---|---|
date | Mon, 26 Mar 2012 23:25:18 -0500 |
parents | 412ca096a9ba |
children |
line wrap: on
line source
1 (ns com.aurellem.exp.rival-name2 (:use (com.aurellem.gb gb-driver))3 (:import [com.aurellem.gb.gb_driver SaveState]))5 (defn talk-to-rival []6 (read-state "talk-to-rival"))9 ;; determined by naming rival "ZZZZZZZ" and noticing the10 ;; pattern in the memory past the item list.12 (def rival-name-start 0xD349)14 (defn set-rival-name [^SaveState state codes]15 (set-state! state)16 (let [mem (memory state)]17 (dorun (map (fn [index val]18 (aset mem index val))19 (range rival-name-start20 (+ rival-name-start21 (count codes))) codes))22 (write-memory! mem)23 (update-state)))25 (defn view-rival-name [name-codes]26 (->27 (set-rival-name (talk-to-rival) name-codes)28 (step [:a])29 (play 50)))31 (defn rival-name-sequence []32 (let [i (atom 1)]33 (fn []34 (let [codes (range @i (+ 5 @i))]35 (println codes)36 (view-rival-name codes)37 (reset! i (+ 5 @i))))))40 ;; results:42 ;; 0x00 : end-of-name-sentinel43 ;; 0x01 :44 ;; 0x02 :45 ;; 0x03 :46 ;; 0x04 :47 ;; 0x05 :48 ;; 0x06 :49 ;; 0x07 :50 ;; 0x08 :51 ;; 0x09 :52 ;; 0x0A :53 ;; 0x0B :54 ;; 0x0C :55 ;; 0x0D :56 ;; 0x0E :57 ;; 0x0F :58 ;; 0x10 :59 ;; 0x11 :60 ;; 0x12 :61 ;; 0x13 :62 ;; 0x14 :63 ;; 0x15 :64 ;; 0x16 :65 ;; 0x17 :66 ;; 0x18 :67 ;; 0x19 :68 ;; 0x1A :69 ;; 0x1B :70 ;; 0x1C :71 ;; 0x1D :72 ;; 0x1E :73 ;; 0x1F :74 ;; 0x20 :75 ;; 0x21 :76 ;; 0x22 :77 ;; 0x23 :78 ;; 0x24 :79 ;; 0x25 :80 ;; 0x26 :81 ;; 0x27 :82 ;; 0x28 :83 ;; 0x29 :84 ;; 0x2A :85 ;; 0x2B :86 ;; 0x2C :87 ;; 0x2D :88 ;; 0x2E :89 ;; 0x2F :90 ;; 0x30 :91 ;; 0x31 :92 ;; 0x32 :93 ;; 0x33 :94 ;; 0x34 :95 ;; 0x35 :96 ;; 0x36 :97 ;; 0x37 :98 ;; 0x38 :99 ;; 0x39 :100 ;; 0x3A :101 ;; 0x3B :102 ;; 0x3C :103 ;; 0x3D :104 ;; 0x3E :105 ;; 0x3F :106 ;; 0x40 :107 ;; 0x41 :108 ;; 0x42 :109 ;; 0x43 :110 ;; 0x44 :111 ;; 0x45 :112 ;; 0x46 :113 ;; 0x47 :114 ;; 0x48 :115 ;; 0x49 :116 ;; 0x4A :117 ;; 0x4B :118 ;; 0x4C :119 ;; 0x4D :120 ;; 0x4E :121 ;; 0x4F :122 ;; 0x50 :123 ;; 0x51 :124 ;; 0x52 :125 ;; 0x53 :126 ;; 0x54 :127 ;; 0x55 :128 ;; 0x56 :129 ;; 0x57 :130 ;; 0x58 :131 ;; 0x59 :132 ;; 0x5A :133 ;; 0x5B :134 ;; 0x5C :135 ;; 0x5D :136 ;; 0x5E :137 ;; 0x5F :138 ;; 0x60 : A (small-bold)139 ;; 0x61 : B (small-bold)140 ;; 0x62 : C (small-bold)141 ;; 0x63 : D (small-bold)142 ;; 0x64 : E (small-bold)143 ;; 0x65 : F (small-bold)144 ;; 0x66 : G (small-bold)145 ;; 0x67 : H (small-bold)146 ;; 0x68 : I (small-bold)147 ;; 0x69 : V (small-bold)148 ;; 0x6A : S (small-bold)149 ;; 0x6B : L (small-bold)150 ;; 0x6C : M (small-bold)151 ;; 0x6D :152 ;; 0x6E :153 ;; 0x6F :154 ;; 0x70 :155 ;; 0x71 :156 ;; 0x72 :157 ;; 0x73 :158 ;; 0x74 :159 ;; 0x75 :160 ;; 0x76 :161 ;; 0x77 :162 ;; 0x78 :163 ;; 0x79 :164 ;; 0x7A :165 ;; 0x7B :166 ;; 0x7C :167 ;; 0x7D :168 ;; 0x7E :169 ;; 0x7F :170 ;; 0x80 : A171 ;; 0x81 : B172 ;; 0x82 : C173 ;; 0x83 : D174 ;; 0x84 : E175 ;; 0x85 : F176 ;; 0x86 : G177 ;; 0x87 : H178 ;; 0x88 : I179 ;; 0x89 : J180 ;; 0x8A : K181 ;; 0x8B : L182 ;; 0x8C : M183 ;; 0x8D : N184 ;; 0x8E : O185 ;; 0x8F : P186 ;; 0x90 : Q187 ;; 0x91 : R188 ;; 0x92 : S189 ;; 0x93 : T190 ;; 0x94 : U191 ;; 0x95 : V192 ;; 0x96 : W193 ;; 0x97 : X194 ;; 0x98 : Y195 ;; 0x99 : Z196 ;; 0x9A : (197 ;; 0x9B : )198 ;; 0x9C : :199 ;; 0x9D : ;200 ;; 0x9E :201 ;; 0x9F :202 ;; 0xA0 : a203 ;; 0xA1 : b204 ;; 0xA2 : c205 ;; 0xA3 : d206 ;; 0xA4 : e207 ;; 0xA5 : f208 ;; 0xA6 : g209 ;; 0xA7 : h210 ;; 0xA8 : i211 ;; 0xA9 : j212 ;; 0xAA : k213 ;; 0xAB : l214 ;; 0xAC : m215 ;; 0xAD : n216 ;; 0xAE : o217 ;; 0xAF : p218 ;; 0xB0 : q219 ;; 0xB1 : r220 ;; 0xB2 : s221 ;; 0xB3 : t222 ;; 0xB4 : u223 ;; 0xB5 : v224 ;; 0xB6 : w225 ;; 0xB7 : x226 ;; 0xB8 : y227 ;; 0xB9 : z228 ;; 0xBA : e-with-grave229 ;; 0xBB :230 ;; 0xBC :231 ;; 0xBD :232 ;; 0xBE :233 ;; 0xBF :234 ;; 0xC0 :235 ;; 0xC1 :236 ;; 0xC2 :237 ;; 0xC3 :238 ;; 0xC4 :239 ;; 0xC5 :240 ;; 0xC6 :241 ;; 0xC7 :242 ;; 0xC8 :243 ;; 0xC9 :244 ;; 0xCA :245 ;; 0xCB :246 ;; 0xCC :247 ;; 0xCD :248 ;; 0xCE :249 ;; 0xCF :250 ;; 0xD0 :251 ;; 0xD1 :252 ;; 0xD2 :253 ;; 0xD3 :254 ;; 0xD4 :255 ;; 0xD5 :256 ;; 0xD6 :257 ;; 0xD7 :258 ;; 0xD8 :259 ;; 0xD9 :260 ;; 0xDA :261 ;; 0xDB :262 ;; 0xDC :263 ;; 0xDD :264 ;; 0xDE :265 ;; 0xDF :266 ;; 0xE0 : '267 ;; 0xE1 : PK268 ;; 0xE2 : MN269 ;; 0xE3 :270 ;; 0xE4 :271 ;; 0xE5 :272 ;; 0xE6 : ?273 ;; 0xE7 : !274 ;; 0xE8 : .275 ;; 0xE9 :276 ;; 0xEA :277 ;; 0xEB :278 ;; 0xEC :279 ;; 0xED :280 ;; 0xEE :281 ;; 0xEF : male-symbol282 ;; 0xF0 : pokemon-money-symbol283 ;; 0xF1 : .284 ;; 0xF2 : /285 ;; 0xF3 : ,286 ;; 0xF4 : female-symbol287 ;; 0xF5 :288 ;; 0xF6 : 0289 ;; 0xF7 : 1290 ;; 0xF8 : 2291 ;; 0xF9 : 3292 ;; 0xFA : 4293 ;; 0xFB : 5294 ;; 0xFC : 6295 ;; 0xFD : 7296 ;; 0xFE : 8297 ;; 0xFF : 9