25 lines
663 B
Python
25 lines
663 B
Python
# similar to spritesheet/gfx.py
|
|
|
|
from parse.generic import tokenize
|
|
from parse.generic.flatten import flatten
|
|
|
|
def tokenize_lines(lines):
|
|
for line in lines:
|
|
if '::' in line:
|
|
yield tokenize.block(line, delim='::')
|
|
|
|
def parse(prefix):
|
|
path = prefix / 'gfx/pics.asm'
|
|
with open(path) as f:
|
|
tokens = tokenize_lines(f.read().split('\n'))
|
|
l = list(flatten(tokens,
|
|
endings=['Front', 'Back', 'Pic'],
|
|
base_path='gfx/'))
|
|
d = dict(l)
|
|
assert len(l) == len(d)
|
|
return d
|
|
|
|
from pprint import pprint
|
|
from pathlib import Path
|
|
pprint(parse(Path("../pokered")))
|