ref: e7762890aac4da72e75c7e7365c1cd924dadbc85
parent: 0b05325e07648f989c612e81fb6bbd37e56813de
author: yenatch <[email protected]>
date: Sat Feb 9 01:22:08 EST 2013
Don't try to convert empty 2bpp files Also, make non-square images 1 tile wide Minor path fixes and cleanup
--- a/extras/gfx.py
+++ b/extras/gfx.py
@@ -1212,12 +1212,13 @@
Takes a planar 2bpp graphics file and converts it to png.
"""
- if fileout == None: fileout = ''.join(filein.split('.')[:-1]) + '.png'
+ if fileout == None: fileout = '.'.join(filein.split('.')[:-1]) + '.png'
image = open(filein, 'rb').read()
+ if len(image) == 0: return 'empty image!'
- # unless the pic is square, at least one dimension should be given
+ # unless the pic is square, at least one dimension should be given...
if height == None and width == None:
height = int(sqrt(len(image)*4))
@@ -1227,9 +1228,13 @@
elif width == None: width = len(image)*4 / height
- assert height * width == len(image)*4, 'Please specify dimensions for non-square image!'
+ # ...or it will become 1 tile wide
+ if height * width != len(image)*4:
+ height = len(image)*4 / 8
+ width = 8
+
# map it out
lines = to_lines(flatten(image), width)
@@ -1261,7 +1266,7 @@
Takes a png and converts it to planar 2bpp.
"""
- if fileout == None: fileout = ''.join(filein.split('.')[:-1]) + '.2bpp'
+ if fileout == None: fileout = '.'.join(filein.split('.')[:-1]) + '.2bpp'
with open(filein, 'rb') as file:
@@ -1489,8 +1494,6 @@
to_2bpp(args.arg1, args.arg2)
#else:
- else:
- dump_trainer_pals()
## python gfx.py
#decompress_all()
#if debug: print 'decompressed known gfx to ../gfx/!'