Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorslm <-h>2010-07-07 10:39:15 (GMT)
committer slm <-h>2010-07-07 10:39:15 (GMT)
commit9a5cc0c5cf88490eaf8da338af8945f5caeb88e6 (patch)
treeb901a011b9601b4e486ec59b5bb4b9ece1941f28
parente77d946392133d238efba5cda41b868ff8f7919f (diff)
Have completed a prototype of the complete test kit UI which allows you to set up multiple tests at once and then leave the computer as they execute one after another. Final values are exported to a formatted comma seperated values file for convenience. Commenting is moderate and will have to be expanded upon in the future.
-rwxr-xr-xAnimation Styles/AnimatedSpriteTest.py (copied from Animation Styles/AnimTestMod.py)148
-rw-r--r--[-rwxr-xr-x]Animation Styles/AnimatedSpriteTest.py~ (copied from Animation Styles/AnimTestMod.py)4
-rwxr-xr-xdevtools/CompleteTestKit/AnimatedSprite.py141
-rwxr-xr-xdevtools/CompleteTestKit/AnimatedSpriteTest.py (renamed from Animation Styles/AnimTestMod.py)148
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16100/1.bmpbin0 -> 3256 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16100/2.bmpbin0 -> 3256 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16100/3.bmpbin0 -> 3256 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16100/4.bmpbin0 -> 3256 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16100/5.bmpbin0 -> 3256 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16100/6.bmpbin0 -> 3256 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16100/7.bmpbin0 -> 3256 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16100/8.bmpbin0 -> 3256 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16100/9.bmpbin0 -> 3256 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16173/1.bmpbin0 -> 9440 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16173/2.bmpbin0 -> 9440 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16173/3.bmpbin0 -> 9440 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16173/4.bmpbin0 -> 9440 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16173/5.bmpbin0 -> 9440 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16173/6.bmpbin0 -> 9440 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16173/7.bmpbin0 -> 9440 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16173/8.bmpbin0 -> 9440 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16173/9.bmpbin0 -> 9440 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16200/1.bmpbin0 -> 12536 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16200/2.bmpbin0 -> 12536 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16200/3.bmpbin0 -> 12536 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16200/4.bmpbin0 -> 12536 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16200/5.bmpbin0 -> 12536 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16200/6.bmpbin0 -> 12536 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16200/7.bmpbin0 -> 12536 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16200/8.bmpbin0 -> 12536 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16200/9.bmpbin0 -> 12536 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16400/0.bmpbin0 -> 49976 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16400/1.bmpbin0 -> 49976 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16400/2.bmpbin0 -> 49976 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16400/3.bmpbin0 -> 49976 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16400/4.bmpbin0 -> 49976 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16400/5.bmpbin0 -> 49976 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16400/6.bmpbin0 -> 49976 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16400/7.bmpbin0 -> 49976 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16400/8.bmpbin0 -> 49976 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/BMP16400/9.bmpbin0 -> 49976 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/multiAnimSheet/Buttons.bmpbin0 -> 57656 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/multiAnimSheet/text.txt2
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/singleAnimSheet/1.bmpbin0 -> 28856 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/singleAnimSheet/2.bmpbin0 -> 28856 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP16/singleAnimSheet/text.txt2
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24100/1.bmpbin0 -> 4856 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24100/2.bmpbin0 -> 4856 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24100/3.bmpbin0 -> 4856 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24100/4.bmpbin0 -> 4856 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24100/5.bmpbin0 -> 4856 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24100/6.bmpbin0 -> 4856 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24100/7.bmpbin0 -> 4856 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24100/8.bmpbin0 -> 4856 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24100/9.bmpbin0 -> 4856 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24173/1.bmpbin0 -> 14132 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24173/2.bmpbin0 -> 14132 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24173/3.bmpbin0 -> 14132 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24173/4.bmpbin0 -> 14132 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24173/5.bmpbin0 -> 14132 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24173/6.bmpbin0 -> 14132 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24173/7.bmpbin0 -> 14132 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24173/8.bmpbin0 -> 14132 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24173/9.bmpbin0 -> 14132 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24200/1.bmpbin0 -> 18936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24200/2.bmpbin0 -> 18936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24200/3.bmpbin0 -> 18936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24200/4.bmpbin0 -> 18936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24200/5.bmpbin0 -> 18936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24200/6.bmpbin0 -> 18936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24200/7.bmpbin0 -> 18936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24200/8.bmpbin0 -> 18936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24200/9.bmpbin0 -> 18936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24400/1.bmpbin0 -> 74936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24400/2.bmpbin0 -> 74936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24400/3.bmpbin0 -> 74936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24400/4.bmpbin0 -> 74936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24400/5.bmpbin0 -> 74936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24400/6.bmpbin0 -> 74936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24400/7.bmpbin0 -> 74936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24400/8.bmpbin0 -> 74936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/BMP24400/9.bmpbin0 -> 74936 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/multiAnimSheet/Buttons.bmpbin0 -> 86456 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/multiAnimSheet/text.txt2
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/singleAnimSheet/1.bmpbin0 -> 43256 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/singleAnimSheet/2.bmpbin0 -> 43256 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/BMP24/singleAnimSheet/text.txt2
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF100/1.gifbin0 -> 259 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF100/2.gifbin0 -> 411 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF100/3.gifbin0 -> 334 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF100/4.gifbin0 -> 272 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF100/5.gifbin0 -> 314 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF100/6.gifbin0 -> 282 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF100/7.gifbin0 -> 344 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF100/8.gifbin0 -> 400 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF100/9.gifbin0 -> 388 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF173/1.gifbin0 -> 1639 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF173/2.gifbin0 -> 2306 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF173/3.gifbin0 -> 1958 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF173/4.gifbin0 -> 1832 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF173/5.gifbin0 -> 2131 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF173/6.gifbin0 -> 1984 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF173/7.gifbin0 -> 1691 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF173/8.gifbin0 -> 2127 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF173/9.gifbin0 -> 1976 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF200/1.gifbin0 -> 1918 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF200/2.gifbin0 -> 2691 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF200/3.gifbin0 -> 2194 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF200/4.gifbin0 -> 2009 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF200/5.gifbin0 -> 2477 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF200/6.gifbin0 -> 2411 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF200/7.gifbin0 -> 1958 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF200/8.gifbin0 -> 2360 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF200/9.gifbin0 -> 2329 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF400/1.gifbin0 -> 3981 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF400/2.gifbin0 -> 7019 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF400/3.gifbin0 -> 5107 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF400/4.gifbin0 -> 4505 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF400/5.gifbin0 -> 6059 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF400/6.gifbin0 -> 5643 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF400/7.gifbin0 -> 4157 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF400/8.gifbin0 -> 5587 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/GIF400/9.gifbin0 -> 5557 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/multiAnimSheet/Buttons.gifbin0 -> 4053 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/multiAnimSheet/text.txt2
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/singleAnimSheet/1.gifbin0 -> 1883 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/singleAnimSheet/2.gifbin0 -> 1883 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIF/singleAnimSheet/text.txt2
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT100/1.gifbin0 -> 207 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT100/2.gifbin0 -> 316 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT100/3.gifbin0 -> 297 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT100/4.gifbin0 -> 241 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT100/5.gifbin0 -> 250 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT100/6.gifbin0 -> 233 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT100/7.gifbin0 -> 228 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT100/8.gifbin0 -> 258 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT100/9.gifbin0 -> 304 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT173/1.gifbin0 -> 612 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT173/2.gifbin0 -> 1144 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT173/3.gifbin0 -> 951 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT173/4.gifbin0 -> 652 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT173/5.gifbin0 -> 1087 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT173/6.gifbin0 -> 999 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT173/7.gifbin0 -> 639 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT173/8.gifbin0 -> 1164 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT173/9.gifbin0 -> 1012 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT200/1.gifbin0 -> 734 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT200/2.gifbin0 -> 1343 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT200/3.gifbin0 -> 1121 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT200/4.gifbin0 -> 776 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT200/5.gifbin0 -> 1235 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT200/6.gifbin0 -> 1156 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT200/7.gifbin0 -> 1000 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT200/8.gifbin0 -> 1288 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT200/9.gifbin0 -> 1159 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT400/1.gifbin0 -> 1779 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT400/2.gifbin0 -> 3699 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT400/3.gifbin0 -> 2799 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT400/4.gifbin0 -> 1883 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT400/5.gifbin0 -> 3177 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT400/6.gifbin0 -> 2882 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT400/7.gifbin0 -> 1915 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT400/8.gifbin0 -> 3488 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/GIFT400/9.gifbin0 -> 2992 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/multiAnimSheet/Buttons.gifbin0 -> 2722 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/multiAnimSheet/text.txt2
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/singleAnimSheet/1.gifbin0 -> 1162 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/singleAnimSheet/2.gifbin0 -> 1388 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/GIFT/singleAnimSheet/text.txt2
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG100/1.pngbin0 -> 3012 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG100/2.pngbin0 -> 3215 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG100/3.pngbin0 -> 3115 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG100/4.pngbin0 -> 3055 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG100/5.pngbin0 -> 3124 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG100/6.pngbin0 -> 3111 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG100/7.pngbin0 -> 3247 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG100/8.pngbin0 -> 3230 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG100/9.pngbin0 -> 3270 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG173/1.pngbin0 -> 3705 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG173/2.pngbin0 -> 4827 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG173/3.pngbin0 -> 4272 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG173/4.pngbin0 -> 4063 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG173/5.pngbin0 -> 4459 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG173/6.pngbin0 -> 4314 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG173/7.pngbin0 -> 3865 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG173/8.pngbin0 -> 4297 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG173/9.pngbin0 -> 4294 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG200/1.pngbin0 -> 3967 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG200/2.pngbin0 -> 5345 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG200/3.pngbin0 -> 4658 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG200/4.pngbin0 -> 4202 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG200/5.pngbin0 -> 4890 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG200/6.pngbin0 -> 4749 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG200/7.pngbin0 -> 4194 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG200/8.pngbin0 -> 4622 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG200/9.pngbin0 -> 4740 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG400/1.pngbin0 -> 5993 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG400/2.pngbin0 -> 9552 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG400/3.pngbin0 -> 7792 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG400/4.pngbin0 -> 6597 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG400/5.pngbin0 -> 8342 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG400/6.pngbin0 -> 7981 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG400/7.pngbin0 -> 6494 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG400/8.pngbin0 -> 7849 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/PNG400/9.pngbin0 -> 7864 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/multiAnimSheet/Buttons.pngbin0 -> 5786 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/multiAnimSheet/text.txt2
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/singleAnimSheet/1.pngbin0 -> 4317 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/singleAnimSheet/2.pngbin0 -> 4342 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGI/singleAnimSheet/text.txt2
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT100/1.pngbin0 -> 3049 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT100/2.pngbin0 -> 3356 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT100/3.pngbin0 -> 3178 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT100/4.pngbin0 -> 3095 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT100/5.pngbin0 -> 3234 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT100/6.pngbin0 -> 3177 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT100/7.pngbin0 -> 3092 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT100/8.pngbin0 -> 3171 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT100/9.pngbin0 -> 3195 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT173/1.pngbin0 -> 4819 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT173/2.pngbin0 -> 6086 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT173/3.pngbin0 -> 5488 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT173/4.pngbin0 -> 5124 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT173/5.pngbin0 -> 5478 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT173/6.pngbin0 -> 5287 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT173/7.pngbin0 -> 5197 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT173/8.pngbin0 -> 5128 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT173/9.pngbin0 -> 5310 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT200/1.pngbin0 -> 5090 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT200/2.pngbin0 -> 6914 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT200/3.pngbin0 -> 6265 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT200/4.pngbin0 -> 5422 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT200/5.pngbin0 -> 6131 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT200/6.pngbin0 -> 5968 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT200/7.pngbin0 -> 5438 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT200/8.pngbin0 -> 5751 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT200/9.pngbin0 -> 6060 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT400/1.pngbin0 -> 8925 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT400/2.pngbin0 -> 14722 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT400/3.pngbin0 -> 12460 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT400/4.pngbin0 -> 10016 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT400/5.pngbin0 -> 12098 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT400/6.pngbin0 -> 11615 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT400/7.pngbin0 -> 9843 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT400/8.pngbin0 -> 10953 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/PNGT400/9.pngbin0 -> 11875 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/multiAnimSheet/Buttons.pngbin0 -> 6542 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/multiAnimSheet/text.txt2
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/singleAnimSheet/1.pngbin0 -> 4164 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/singleAnimSheet/2.pngbin0 -> 5185 bytes
-rwxr-xr-xdevtools/CompleteTestKit/art/PNGT/singleAnimSheet/text.txt2
-rwxr-xr-xdevtools/CompleteTestKit/etc/ioexample.py20
-rwxr-xr-xdevtools/CompleteTestKit/fileTypeTests.py540
-rw-r--r--devtools/CompleteTestKit/fileTypeTests.py~284
-rw-r--r--devtools/CompleteTestKit/logs/.~lock.Test Result - Image Test with convert() - 2010-07-01 15:19:13.674333.csv#1
-rwxr-xr-xdevtools/ScaleTypeTest/scaleTest.py124
-rw-r--r--devtools/ScaleTypeTest/scaleTest.py~133
257 files changed, 1100 insertions, 467 deletions
diff --git a/Animation Styles/AnimTestMod.py b/Animation Styles/AnimatedSpriteTest.py
index c4ea5e6..6cf2e02 100755
--- a/Animation Styles/AnimTestMod.py
+++ b/Animation Styles/AnimatedSpriteTest.py
@@ -1,63 +1,90 @@
-from AnimatedSprite import Spritesheet, AnimatedSprite
-import sys, pygame, time
+#! /usr/bin/env python
+from AnimatedSprite import Spritesheet
+from AnimatedSprite import AnimatedSprite
+import pygame
+import time
pygame.init()
-print "Full Test - Authors Dave Silverman and Scott Mengel"
-print "Set size to 600 x 400 px"
-print "Running..."
-
-#--------------------------------------------------------------
-#CONSTANTS AND VARIABLES
-
make=input("How many images would you like to load? ")
img={}
ft="" #filetype
r=0 #frame refreshes
i=1 #cycles images
-size = width, height = 600,400 #screen sizes
+SIZE = WIDTH, HEIGHT = 600,400 #screen sizes
t=0 #trial number
-AnimPerLineArr=[ ["bmp","AnimationPerLine/bmp16/"] , ["bmp","AnimationPerLine/bmp24/"] , ["gif","AnimationPerLine/gif/"] , ["gif","AnimationPerLine/gift/"] , ["png","AnimationPerLine/png/"] , ["png","AnimationPerLine/pngt/"] ]
-FixedWidthArr=[ ["bmp","FixedWithSheets/bmp16/"] , ["bmp","FixedWithSheets/bmp24/"] , ["gif","FixedWithSheets/gif/"] , ["gif","FixedWithSheets/gift/"] , ["png","FixedWithSheets/png/"] , ["png","FixedWidthSheets/pngt/"] ]
-OneSheetArr=[ ["bmp","OneSheetPerAnimation/bmp16/"] , ["bmp","OneSheetPerAnimation/bmp24/"] , ["gif","OneSheetPerAnimation/gif/"] , ["gif","OneSheetPerAnimation/gift/"] , ["png","OneSheetPerAnimation/png/"] , ["png","OneSheetPerAnimation/pngt/"] ]
-IndivFrameArr=[ ["bmp","IndividualFrames/bmp16/"] , ["bmp","IndividualFrames/bmp24/"] , ["gif","IndividualFrames/gif/"] , ["gif","IndividualFrames/gift/"] , ["png","IndividualFrames/png/"] , ["png","IndividualFrames/pngt/"] ]
-
-screen = pygame.display.set_mode(size) #Screen Set 600x400
-backgroundR = 152
-backgroundG = 0
-backgroundB = 152
-screen.fill((backgroundR, backgroundG, backgroundB))
-#-----------------------------------------------------------------
-#Reading Individual Frames
+BACKGROUNDR=152
+BACKGROUNDG=0
+BACKGROUNDB=152
+
+AnimPerLineArr=[
+ [".bmp","AnimationPerLine/bmp16/"],
+ [".bmp","AnimationPerLine/bmp24/"],
+ [".gif","AnimationPerLine/gif/"] ,
+ [".gif","AnimationPerLine/gift/"] ,
+ [".png","AnimationPerLine/png/"] ,
+ [".png","AnimationPerLine/pngt/"] ]
+
+FixedWidthArr=[
+ [".bmp","FixedWithSheets/bmp16/"],
+ [".bmp","FixedWithSheets/bmp24/"],
+ [".gif","FixedWithSheets/gif/"] ,
+ [".gif","FixedWithSheets/gift/"] ,
+ [".png","FixedWithSheets/png/"] ,
+ [".png","FixedWidthSheets/pngt/"] ]
+
+OneSheetArr=[
+ [".bmp","OneSheetPerAnimation/bmp16/"],
+ [".bmp","OneSheetPerAnimation/bmp24/"],
+ [".gif","OneSheetPerAnimation/gif/"] ,
+ [".gif","OneSheetPerAnimation/gift/"] ,
+ [".png","OneSheetPerAnimation/png/"] ,
+ [".png","OneSheetPerAnimation/pngt/"] ]
+
+IndivFrameArr=[
+ [".bmp","IndividualFrames/bmp16/"],
+ [".bmp","IndividualFrames/bmp24/"],
+ [".gif","IndividualFrames/gif/"] ,
+ [".gif","IndividualFrames/gift/"] ,
+ [".png","IndividualFrames/png/"] ,
+ [".png","IndividualFrames/pngt/"] ]
+
+screen = pygame.display.set_mode(SIZE) #Screen Set 600x400
+
+screen.fill((BACKGROUNDR, BACKGROUNDG, BACKGROUNDB))
+
+"""Reading Individual Frames
+"""
def readIndivFrames(fileType, path):
switch1 = [
- [pygame.image.load("%sa1/1.%s"%(path,fileType))],
- [pygame.image.load("%sa1/2.%s"%(path,fileType))],
- [pygame.image.load("%sa1/3.%s"%(path,fileType))],
- [pygame.image.load("%sa1/4.%s"%(path,fileType))],
- [pygame.image.load("%sa1/5.%s"%(path,fileType))],
- [pygame.image.load("%sa1/6.%s"%(path,fileType))],
- [pygame.image.load("%sa1/7.%s"%(path,fileType))],
- [pygame.image.load("%sa1/8.%s"%(path,fileType))],
- [pygame.image.load("%sa1/9.%s"%(path,fileType))]
+ [pygame.image.load("%sa1/1%s"%(path,fileType))],
+ [pygame.image.load("%sa1/2%s"%(path,fileType))],
+ [pygame.image.load("%sa1/3%s"%(path,fileType))],
+ [pygame.image.load("%sa1/4%s"%(path,fileType))],
+ [pygame.image.load("%sa1/5%s"%(path,fileType))],
+ [pygame.image.load("%sa1/6%s"%(path,fileType))],
+ [pygame.image.load("%sa1/7%s"%(path,fileType))],
+ [pygame.image.load("%sa1/8%s"%(path,fileType))],
+ [pygame.image.load("%sa1/9%s"%(path,fileType))]
]
switch2 = [
- [pygame.image.load("%sa2/1.%s"%(path,fileType))],
- [pygame.image.load("%sa2/2.%s"%(path,fileType))],
- [pygame.image.load("%sa2/3.%s"%(path,fileType))],
- [pygame.image.load("%sa2/4.%s"%(path,fileType))],
- [pygame.image.load("%sa2/5.%s"%(path,fileType))],
- [pygame.image.load("%sa2/6.%s"%(path,fileType))],
- [pygame.image.load("%sa2/7.%s"%(path,fileType))],
- [pygame.image.load("%sa2/8.%s"%(path,fileType))],
- [pygame.image.load("%sa2/9.%s"%(path,fileType))]
+ [pygame.image.load("%sa2/1%s"%(path,fileType))],
+ [pygame.image.load("%sa2/2%s"%(path,fileType))],
+ [pygame.image.load("%sa2/3%s"%(path,fileType))],
+ [pygame.image.load("%sa2/4%s"%(path,fileType))],
+ [pygame.image.load("%sa2/5%s"%(path,fileType))],
+ [pygame.image.load("%sa2/6%s"%(path,fileType))],
+ [pygame.image.load("%sa2/7%s"%(path,fileType))],
+ [pygame.image.load("%sa2/8%s"%(path,fileType))],
+ [pygame.image.load("%sa2/9%s"%(path,fileType))]
]
instances= []
cnt = make
+
while cnt > 0:
animatedSprites = []
animatedSprites.append([AnimatedSprite(switch1,'',10),[(40*cnt),0,2,2]])
@@ -87,16 +114,16 @@ def readIndivFrames(fileType, path):
instances[groups][0][0].nextFrame()
instances[groups][1][0].nextFrame()
- if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > width - 40:
+ if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > WIDTH - 40:
instances[groups][0][1][2] = instances[groups][0][1][2] * -1
- if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > height - 40:
+ if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > HEIGHT - 40:
instances[groups][0][1][3] = instances[groups][0][1][3] * -1
- if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > width - 40:
+ if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > WIDTH - 40:
instances[groups][1][1][2] = instances[groups][1][1][2] * -1
- if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > height - 40:
+ if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > HEIGHT - 40:
instances[groups][1][1][3] = instances[groups][1][1][3] * -1
@@ -111,7 +138,7 @@ def readIndivFrames(fileType, path):
groups = groups - 1
pygame.display.flip()
- screen.fill((backgroundR,backgroundG,backgroundB))
+ screen.fill((BACKGROUNDR,BACKGROUNDG,BACKGROUNDB))
changes = changes + 1
trials = trials + 1
print(trials)
@@ -155,16 +182,16 @@ def readPerLine(fileType, path):
instances[groups][0][0].nextAnimFrame("anim1")
instances[groups][1][0].nextAnimFrame("anim2")
- if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > width - 40:
+ if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > WIDTH - 40:
instances[groups][0][1][2] = instances[groups][0][1][2] * -1
- if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > height - 40:
+ if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > HEIGHT - 40:
instances[groups][0][1][3] = instances[groups][0][1][3] * -1
- if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > width - 40:
+ if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > WIDTH - 40:
instances[groups][1][1][2] = instances[groups][1][1][2] * -1
- if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > height - 40:
+ if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > HEIGHT - 40:
instances[groups][1][1][3] = instances[groups][1][1][3] * -1
@@ -179,7 +206,7 @@ def readPerLine(fileType, path):
groups = groups - 1
pygame.display.flip()
- screen.fill((backgroundR,backgroundG,backgroundB))
+ screen.fill((BACKGROUNDR,BACKGROUNDG,BACKGROUNDB))
changes = changes + 1
trials = trials + 1
print(trials)
@@ -188,8 +215,8 @@ def readPerLine(fileType, path):
#-----------------------------------------------------------------
def readIndivSheet(fileType, path):
- spriteSheet1 = Spritesheet(("%s1.%s"%(path,fileType)))
- spriteSheet2 = Spritesheet(("%s2.%s"%(path,fileType)))
+ spriteSheet1 = Spritesheet(("%s1%s"%(path,fileType)))
+ spriteSheet2 = Spritesheet(("%s2%s"%(path,fileType)))
instances= []
@@ -225,16 +252,16 @@ def readIndivSheet(fileType, path):
instances[groups][0][0].nextAnimFrame("anim1")
instances[groups][1][0].nextAnimFrame("anim2")
- if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > width - 40:
+ if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > WIDTH - 40:
instances[groups][0][1][2] = instances[groups][0][1][2] * -1
- if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > height - 40:
+ if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > HEIGHT - 40:
instances[groups][0][1][3] = instances[groups][0][1][3] * -1
- if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > width - 40:
+ if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > WIDTH - 40:
instances[groups][1][1][2] = instances[groups][1][1][2] * -1
- if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > height - 40:
+ if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > HEIGHT - 40:
instances[groups][1][1][3] = instances[groups][1][1][3] * -1
@@ -249,7 +276,7 @@ def readIndivSheet(fileType, path):
groups = groups - 1
pygame.display.flip()
- screen.fill((backgroundR,backgroundG,backgroundB))
+ screen.fill((BACKGROUNDR,BACKGROUNDG,BACKGROUNDB))
changes = changes + 1
trials = trials + 1
print(trials)
@@ -258,18 +285,17 @@ def readIndivSheet(fileType, path):
#-----------------------------------------------------------------
iterator = 0
-print""
-print "Testing One Sheet Per Animation"
+print "\nTesting One Sheet Per Animation"
print ""
while iterator < len(AnimPerLineArr):
- print""
+ print ""
print OneSheetArr[iterator][1]
readIndivSheet(OneSheetArr[iterator][0],OneSheetArr[iterator][1])
iterator += 1
iterator = 0
-print""
+print ""
print "Testing One Animation Per Line"
print ""
while iterator < len(OneSheetArr):
diff --git a/Animation Styles/AnimTestMod.py b/Animation Styles/AnimatedSpriteTest.py~
index c4ea5e6..1aac3bb 100755..100644
--- a/Animation Styles/AnimTestMod.py
+++ b/Animation Styles/AnimatedSpriteTest.py~
@@ -2,9 +2,7 @@ from AnimatedSprite import Spritesheet, AnimatedSprite
import sys, pygame, time
pygame.init()
-print "Full Test - Authors Dave Silverman and Scott Mengel"
-print "Set size to 600 x 400 px"
-print "Running..."
+print "Animated Sprite Test - Authors Dave Silverman and Scott Mengel"
#--------------------------------------------------------------
#CONSTANTS AND VARIABLES
diff --git a/devtools/CompleteTestKit/AnimatedSprite.py b/devtools/CompleteTestKit/AnimatedSprite.py
new file mode 100755
index 0000000..6796600
--- /dev/null
+++ b/devtools/CompleteTestKit/AnimatedSprite.py
@@ -0,0 +1,141 @@
+import pygame
+
+class Spritesheet:
+ """
+ Class from http://www.scriptedfun.com/transcript-2-using-sprite-sheets-and-drawing-the-background/
+
+ This class can be used to seporate images from the sprite sheet
+ """
+ def __init__(self, filename):
+ self.sheet = pygame.image.load(filename)#.convert()
+
+ def imgat(self, rect):
+ rect = pygame.Rect(rect)
+ image = pygame.Surface(rect.size)#.convert()
+ image.blit(self.sheet, (0, 0), rect)
+ return image
+
+ def imgsat(self, rects):
+ imgs = []
+ for rect in rects:
+ imgs.append(self.imgat(rect))
+ return imgs
+
+ def img_extract( self, cols, rows, width, height ):
+ rect_list = []
+ for y in range(0, rows):
+ for x in range(0, cols):
+ rect_list.append( (width*x, height*y, width, height) )
+ return self.imgsat( rect_list)
+
+
+class AnimatedSprite(pygame.sprite.Sprite):
+ """
+ http://shinylittlething.com/2009/07/21/pygame-and-animated-sprites/
+ """
+
+ def __init__(self,images,textfileName,fps = 10):
+ pygame.sprite.Sprite.__init__(self)
+ self._images = images
+
+ # Track the time we started, and the time between updates.
+ # Then we can figure out when we have to switch the image.
+ self._start = pygame.time.get_ticks()
+ self._delay = 1000 / fps
+ self._last_update = 0
+ self._frame = 0
+ self.animations = {}
+
+ if textfileName != '':
+ f = open(textfileName, 'r')
+ currentLine = f.readline()
+ while currentLine != '':
+ animValues = currentLine.split(",")
+ #This is a list called animations that at each position contains a list of two values. the first value is the start position
+ #of the given animation and the second is the end position of the given animation
+ self.animations[animValues[0]] = [int(animValues[1]), int(animValues[2])]
+ currentLine = f.readline()
+
+ # Call update to set our first image.
+ #self.update(pygame.time.get_ticks())
+
+ def addImages(self, images):
+
+ self._images.extend(images)
+
+ def update(self, t):
+ # This method updates the animation in a situation where there is only one animation contained within the object.
+
+ #calculates the amount of time that has passed since the last update
+ timePassed = t - self._last_update
+ #checks if enough time has passed that it would need to update the frame of the animation
+ if timePassed > self._delay:
+ #since enough time has passed, it will determine how many times the frame was supposed to change since the last update
+ frameChanges = int(timePassed/self._delay)
+ #goes to the frame that it should be at right now and skips any frames that would have already been over and done with
+ self._frame += frameChanges
+ #checks if the current frame is past the final frame and continues to check over and over until it is not
+ while self._frame >= len(self._images):
+ #since we are past the final frame it is now figuring out how many frames past the final frame we have actually gone
+ framesPast = self._frame - len(self._images)
+ #sets the current frame to the frame it should be at
+ self._frame = framesPast - 1
+ #sets the current image to the image associated with the current frame
+ self.image = self._images[self._frame]
+ #sets the last update value to the current time so that at the next update the time change is accurate
+ self._last_update = t
+
+ def updateAnimation(self, t, animName):
+ # This method updates the animation based on the start and end frame of the specific animation you are on.
+ #This means that if your object contains multiple animations, you can use this method to reference the exact
+ #animation that you are using.
+
+ #calculates the amount of time that has passed since the last update
+ timePassed = t - self._last_update
+ #checks if enough time has passed that it would need to update the frame of the animation
+ if timePassed > self._delay:
+ #Checks to make sure that the current frame is actually set to a position within the animation
+ if self._frame < self.animations.get(animName)[0] or self._frame > self.animations.get(animName)[1]:
+ #corrects the position of the current frame
+ self._frame = self.animations.get(animName)[0]
+ #since enough time has passed, it will determine how many times the frame was supposed to change since the last update
+ frameChanges = int(timePassed/self._delay)
+ #goes to the frame that it should be at right now and skips any frames that would have already been over and done with
+ self._frame += frameChanges
+ #checks if the current frame is past the final frame of the current animation and continues to check over and over
+ #until it is not
+ while self._frame >= self.animations.get(animName)[1]:
+ #Determines how many frames past the final frame of the animation it is
+ framesPast = self._frame - self.animations.get(animName)[1]
+ #Sets the current frame to the frame it should be at
+ self._frame = framesPast - 1 + self.animations.get(animName)[0]
+ #sets the current image to the image associated with the current frame
+ self.image = self._images[self._frame]
+ #sets the last update value to the current time so that at the next update the time change is accurate
+ self._last_update = t
+
+ def nextFrame(self):
+ # This definition is designed to simply move to the next frame.
+ # All of the other definitions only move to the nex frame if
+ # enough time has passed based on the framerate. With this
+ # definition I can go right to the next frame allowing me to
+ # see how fast a framerate I can get to and not be limited by
+ # what I define.
+
+ self._frame += 1
+ if self._frame >= len(self._images):
+ framesPast = self._frame - len(self._images)
+ self._frame = framesPast
+ self.image = self._images[self._frame]
+
+ def nextAnimFrame(self, animName):
+ # This definition is designed to simply move to the next frame of the specified animation.
+ if self._frame < self.animations[animName][0]:
+ self._frame = self.animations[animName][0]
+
+ self._frame += 1
+ if self._frame > self.animations[animName][1]:
+ framesPast = self._frame - self.animations[animName][1]
+ self._frame = framesPast - 1 + self.animations[animName][0]
+ self.image = self._images[self._frame]
+
diff --git a/Animation Styles/AnimTestMod.py b/devtools/CompleteTestKit/AnimatedSpriteTest.py
index c4ea5e6..af9305f 100755
--- a/Animation Styles/AnimTestMod.py
+++ b/devtools/CompleteTestKit/AnimatedSpriteTest.py
@@ -1,63 +1,84 @@
-from AnimatedSprite import Spritesheet, AnimatedSprite
-import sys, pygame, time
-pygame.init()
-
-print "Full Test - Authors Dave Silverman and Scott Mengel"
-print "Set size to 600 x 400 px"
-print "Running..."
+#! /usr/bin/env python
-#--------------------------------------------------------------
-#CONSTANTS AND VARIABLES
+from AnimatedSprite import Spritesheet
+from AnimatedSprite import AnimatedSprite
+import pygame
+import time
+import pdb
+pygame.init()
make=input("How many images would you like to load? ")
img={}
ft="" #filetype
r=0 #frame refreshes
i=1 #cycles images
-size = width, height = 600,400 #screen sizes
+SIZE = WIDTH, HEIGHT = 600,400 #screen sizes
t=0 #trial number
-AnimPerLineArr=[ ["bmp","AnimationPerLine/bmp16/"] , ["bmp","AnimationPerLine/bmp24/"] , ["gif","AnimationPerLine/gif/"] , ["gif","AnimationPerLine/gift/"] , ["png","AnimationPerLine/png/"] , ["png","AnimationPerLine/pngt/"] ]
-FixedWidthArr=[ ["bmp","FixedWithSheets/bmp16/"] , ["bmp","FixedWithSheets/bmp24/"] , ["gif","FixedWithSheets/gif/"] , ["gif","FixedWithSheets/gift/"] , ["png","FixedWithSheets/png/"] , ["png","FixedWidthSheets/pngt/"] ]
-OneSheetArr=[ ["bmp","OneSheetPerAnimation/bmp16/"] , ["bmp","OneSheetPerAnimation/bmp24/"] , ["gif","OneSheetPerAnimation/gif/"] , ["gif","OneSheetPerAnimation/gift/"] , ["png","OneSheetPerAnimation/png/"] , ["png","OneSheetPerAnimation/pngt/"] ]
-IndivFrameArr=[ ["bmp","IndividualFrames/bmp16/"] , ["bmp","IndividualFrames/bmp24/"] , ["gif","IndividualFrames/gif/"] , ["gif","IndividualFrames/gift/"] , ["png","IndividualFrames/png/"] , ["png","IndividualFrames/pngt/"] ]
-
-screen = pygame.display.set_mode(size) #Screen Set 600x400
-backgroundR = 152
-backgroundG = 0
-backgroundB = 152
-screen.fill((backgroundR, backgroundG, backgroundB))
-#-----------------------------------------------------------------
-#Reading Individual Frames
+BACKGROUNDR=152
+BACKGROUNDG=0
+BACKGROUNDB=152
+
+AnimPerLineArr=[
+ [".bmp","art/BMP16/multiAnimSheet/"] ,
+ [".bmp","art/BMP24/multiAnimSheet/"] ,
+ [".gif", "art/GIF/multiAnimSheet/" ] ,
+ [".gif", "art/GIFT/multiAnimSheet/"] ,
+ [".png", "art/PNGI/multiAnimSheet/"] ,
+ [".png", "art/PNGT/multiAnimSheet/"] ]
+
+OneSheetArr=[
+ [".bmp","art/BMP16/singleAnimSheet/"] ,
+ [".bmp","art/BMP24/singleAnimSheet/"] ,
+ [".gif", "art/GIF/singleAnimSheet/" ] ,
+ [".gif", "art/GIFT/singleAnimSheet/"] ,
+ [".png", "art/PNGI/singleAnimSheet/"] ,
+ [".png", "art/PNGT/singleAnimSheet/"] ]
+
+IndivFrameArr=[
+ [".bmp","art/BMP16/"] ,
+ [".bmp","art/BMP24/"] ,
+ [".gif", "art/GIF/" ] ,
+ [".gif", "art/GIFT/"] ,
+ [".png", "art/PNGI/"] ,
+ [".png", "art/PNGT/"] ]
+
+screen = pygame.display.set_mode(SIZE) #Screen Set 600x400
+
+screen.fill((BACKGROUNDR, BACKGROUNDG, BACKGROUNDB))
+
+"""Reading Individual Frames
+"""
def readIndivFrames(fileType, path):
switch1 = [
- [pygame.image.load("%sa1/1.%s"%(path,fileType))],
- [pygame.image.load("%sa1/2.%s"%(path,fileType))],
- [pygame.image.load("%sa1/3.%s"%(path,fileType))],
- [pygame.image.load("%sa1/4.%s"%(path,fileType))],
- [pygame.image.load("%sa1/5.%s"%(path,fileType))],
- [pygame.image.load("%sa1/6.%s"%(path,fileType))],
- [pygame.image.load("%sa1/7.%s"%(path,fileType))],
- [pygame.image.load("%sa1/8.%s"%(path,fileType))],
- [pygame.image.load("%sa1/9.%s"%(path,fileType))]
+ [pygame.image.load("%sa1/1%s"%(path,fileType))],
+ [pygame.image.load("%sa1/2%s"%(path,fileType))],
+ [pygame.image.load("%sa1/3%s"%(path,fileType))],
+ [pygame.image.load("%sa1/4%s"%(path,fileType))],
+ [pygame.image.load("%sa1/5%s"%(path,fileType))],
+ [pygame.image.load("%sa1/6%s"%(path,fileType))],
+ [pygame.image.load("%sa1/7%s"%(path,fileType))],
+ [pygame.image.load("%sa1/8%s"%(path,fileType))],
+ [pygame.image.load("%sa1/9%s"%(path,fileType))]
]
switch2 = [
- [pygame.image.load("%sa2/1.%s"%(path,fileType))],
- [pygame.image.load("%sa2/2.%s"%(path,fileType))],
- [pygame.image.load("%sa2/3.%s"%(path,fileType))],
- [pygame.image.load("%sa2/4.%s"%(path,fileType))],
- [pygame.image.load("%sa2/5.%s"%(path,fileType))],
- [pygame.image.load("%sa2/6.%s"%(path,fileType))],
- [pygame.image.load("%sa2/7.%s"%(path,fileType))],
- [pygame.image.load("%sa2/8.%s"%(path,fileType))],
- [pygame.image.load("%sa2/9.%s"%(path,fileType))]
+ [pygame.image.load("%sa2/1%s"%(path,fileType))],
+ [pygame.image.load("%sa2/2%s"%(path,fileType))],
+ [pygame.image.load("%sa2/3%s"%(path,fileType))],
+ [pygame.image.load("%sa2/4%s"%(path,fileType))],
+ [pygame.image.load("%sa2/5%s"%(path,fileType))],
+ [pygame.image.load("%sa2/6%s"%(path,fileType))],
+ [pygame.image.load("%sa2/7%s"%(path,fileType))],
+ [pygame.image.load("%sa2/8%s"%(path,fileType))],
+ [pygame.image.load("%sa2/9%s"%(path,fileType))]
]
instances= []
cnt = make
+
while cnt > 0:
animatedSprites = []
animatedSprites.append([AnimatedSprite(switch1,'',10),[(40*cnt),0,2,2]])
@@ -87,16 +108,16 @@ def readIndivFrames(fileType, path):
instances[groups][0][0].nextFrame()
instances[groups][1][0].nextFrame()
- if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > width - 40:
+ if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > WIDTH - 40:
instances[groups][0][1][2] = instances[groups][0][1][2] * -1
- if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > height - 40:
+ if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > HEIGHT - 40:
instances[groups][0][1][3] = instances[groups][0][1][3] * -1
- if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > width - 40:
+ if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > WIDTH - 40:
instances[groups][1][1][2] = instances[groups][1][1][2] * -1
- if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > height - 40:
+ if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > HEIGHT - 40:
instances[groups][1][1][3] = instances[groups][1][1][3] * -1
@@ -111,7 +132,7 @@ def readIndivFrames(fileType, path):
groups = groups - 1
pygame.display.flip()
- screen.fill((backgroundR,backgroundG,backgroundB))
+ screen.fill((BACKGROUNDR,BACKGROUNDG,BACKGROUNDB))
changes = changes + 1
trials = trials + 1
print(trials)
@@ -155,16 +176,16 @@ def readPerLine(fileType, path):
instances[groups][0][0].nextAnimFrame("anim1")
instances[groups][1][0].nextAnimFrame("anim2")
- if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > width - 40:
+ if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > WIDTH - 40:
instances[groups][0][1][2] = instances[groups][0][1][2] * -1
- if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > height - 40:
+ if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > HEIGHT - 40:
instances[groups][0][1][3] = instances[groups][0][1][3] * -1
- if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > width - 40:
+ if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > WIDTH - 40:
instances[groups][1][1][2] = instances[groups][1][1][2] * -1
- if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > height - 40:
+ if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > HEIGHT - 40:
instances[groups][1][1][3] = instances[groups][1][1][3] * -1
@@ -179,7 +200,7 @@ def readPerLine(fileType, path):
groups = groups - 1
pygame.display.flip()
- screen.fill((backgroundR,backgroundG,backgroundB))
+ screen.fill((BACKGROUNDR,BACKGROUNDG,BACKGROUNDB))
changes = changes + 1
trials = trials + 1
print(trials)
@@ -188,8 +209,8 @@ def readPerLine(fileType, path):
#-----------------------------------------------------------------
def readIndivSheet(fileType, path):
- spriteSheet1 = Spritesheet(("%s1.%s"%(path,fileType)))
- spriteSheet2 = Spritesheet(("%s2.%s"%(path,fileType)))
+ spriteSheet1 = Spritesheet(("%s1%s"%(path,fileType)))
+ spriteSheet2 = Spritesheet(("%s2%s"%(path,fileType)))
instances= []
@@ -225,16 +246,16 @@ def readIndivSheet(fileType, path):
instances[groups][0][0].nextAnimFrame("anim1")
instances[groups][1][0].nextAnimFrame("anim2")
- if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > width - 40:
+ if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > WIDTH - 40:
instances[groups][0][1][2] = instances[groups][0][1][2] * -1
- if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > height - 40:
+ if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > HEIGHT - 40:
instances[groups][0][1][3] = instances[groups][0][1][3] * -1
- if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > width - 40:
+ if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > WIDTH - 40:
instances[groups][1][1][2] = instances[groups][1][1][2] * -1
- if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > height - 40:
+ if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > HEIGHT - 40:
instances[groups][1][1][3] = instances[groups][1][1][3] * -1
@@ -249,7 +270,13 @@ def readIndivSheet(fileType, path):
groups = groups - 1
pygame.display.flip()
- screen.fill((backgroundR,backgroundG,backgroundB))
+ #
+ #
+ print "EL O EL"
+ pdb.set_trace()
+ #
+ #
+ screen.fill((BACKGROUNDR,BACKGROUNDG,BACKGROUNDB))
changes = changes + 1
trials = trials + 1
print(trials)
@@ -258,18 +285,17 @@ def readIndivSheet(fileType, path):
#-----------------------------------------------------------------
iterator = 0
-print""
-print "Testing One Sheet Per Animation"
+print "\nTesting One Sheet Per Animation"
print ""
while iterator < len(AnimPerLineArr):
- print""
+ print ""
print OneSheetArr[iterator][1]
readIndivSheet(OneSheetArr[iterator][0],OneSheetArr[iterator][1])
iterator += 1
iterator = 0
-print""
+print ""
print "Testing One Animation Per Line"
print ""
while iterator < len(OneSheetArr):
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16100/1.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16100/1.bmp
new file mode 100755
index 0000000..57630e3
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16100/1.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16100/2.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16100/2.bmp
new file mode 100755
index 0000000..90af77a
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16100/2.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16100/3.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16100/3.bmp
new file mode 100755
index 0000000..1751a4a
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16100/3.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16100/4.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16100/4.bmp
new file mode 100755
index 0000000..1f292d1
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16100/4.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16100/5.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16100/5.bmp
new file mode 100755
index 0000000..fd8cc0e
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16100/5.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16100/6.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16100/6.bmp
new file mode 100755
index 0000000..df3a2eb
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16100/6.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16100/7.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16100/7.bmp
new file mode 100755
index 0000000..51b0052
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16100/7.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16100/8.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16100/8.bmp
new file mode 100755
index 0000000..9302c64
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16100/8.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16100/9.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16100/9.bmp
new file mode 100755
index 0000000..f5c6191
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16100/9.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16173/1.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16173/1.bmp
new file mode 100755
index 0000000..20c1d49
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16173/1.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16173/2.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16173/2.bmp
new file mode 100755
index 0000000..cc1f8a0
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16173/2.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16173/3.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16173/3.bmp
new file mode 100755
index 0000000..9637106
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16173/3.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16173/4.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16173/4.bmp
new file mode 100755
index 0000000..df62974
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16173/4.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16173/5.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16173/5.bmp
new file mode 100755
index 0000000..fea0203
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16173/5.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16173/6.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16173/6.bmp
new file mode 100755
index 0000000..5309dfc
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16173/6.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16173/7.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16173/7.bmp
new file mode 100755
index 0000000..268cde2
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16173/7.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16173/8.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16173/8.bmp
new file mode 100755
index 0000000..2fcfd96
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16173/8.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16173/9.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16173/9.bmp
new file mode 100755
index 0000000..461900e
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16173/9.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16200/1.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16200/1.bmp
new file mode 100755
index 0000000..8606ffc
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16200/1.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16200/2.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16200/2.bmp
new file mode 100755
index 0000000..6010f26
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16200/2.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16200/3.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16200/3.bmp
new file mode 100755
index 0000000..6782d68
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16200/3.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16200/4.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16200/4.bmp
new file mode 100755
index 0000000..d2a2a7c
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16200/4.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16200/5.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16200/5.bmp
new file mode 100755
index 0000000..863ee74
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16200/5.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16200/6.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16200/6.bmp
new file mode 100755
index 0000000..277191b
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16200/6.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16200/7.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16200/7.bmp
new file mode 100755
index 0000000..4507dd2
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16200/7.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16200/8.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16200/8.bmp
new file mode 100755
index 0000000..0c23be3
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16200/8.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16200/9.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16200/9.bmp
new file mode 100755
index 0000000..d4fbd1f
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16200/9.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16400/0.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16400/0.bmp
new file mode 100755
index 0000000..ff89462
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16400/0.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16400/1.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16400/1.bmp
new file mode 100755
index 0000000..5a8bb85
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16400/1.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16400/2.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16400/2.bmp
new file mode 100755
index 0000000..73f8ac4
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16400/2.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16400/3.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16400/3.bmp
new file mode 100755
index 0000000..d762fd4
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16400/3.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16400/4.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16400/4.bmp
new file mode 100755
index 0000000..5fb771b
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16400/4.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16400/5.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16400/5.bmp
new file mode 100755
index 0000000..9516331
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16400/5.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16400/6.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16400/6.bmp
new file mode 100755
index 0000000..ae2e12c
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16400/6.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16400/7.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16400/7.bmp
new file mode 100755
index 0000000..fedb857
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16400/7.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16400/8.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16400/8.bmp
new file mode 100755
index 0000000..3620d19
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16400/8.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/BMP16400/9.bmp b/devtools/CompleteTestKit/art/BMP16/BMP16400/9.bmp
new file mode 100755
index 0000000..c6a07ea
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/BMP16400/9.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/multiAnimSheet/Buttons.bmp b/devtools/CompleteTestKit/art/BMP16/multiAnimSheet/Buttons.bmp
new file mode 100755
index 0000000..7edcb3c
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/multiAnimSheet/Buttons.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/multiAnimSheet/text.txt b/devtools/CompleteTestKit/art/BMP16/multiAnimSheet/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/multiAnimSheet/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/devtools/CompleteTestKit/art/BMP16/singleAnimSheet/1.bmp b/devtools/CompleteTestKit/art/BMP16/singleAnimSheet/1.bmp
new file mode 100755
index 0000000..9798a08
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/singleAnimSheet/1.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/singleAnimSheet/2.bmp b/devtools/CompleteTestKit/art/BMP16/singleAnimSheet/2.bmp
new file mode 100755
index 0000000..68ba0ba
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/singleAnimSheet/2.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP16/singleAnimSheet/text.txt b/devtools/CompleteTestKit/art/BMP16/singleAnimSheet/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP16/singleAnimSheet/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24100/1.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24100/1.bmp
new file mode 100755
index 0000000..e910cec
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24100/1.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24100/2.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24100/2.bmp
new file mode 100755
index 0000000..0545f38
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24100/2.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24100/3.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24100/3.bmp
new file mode 100755
index 0000000..a154b29
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24100/3.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24100/4.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24100/4.bmp
new file mode 100755
index 0000000..4ab21f9
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24100/4.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24100/5.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24100/5.bmp
new file mode 100755
index 0000000..0a55d39
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24100/5.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24100/6.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24100/6.bmp
new file mode 100755
index 0000000..ad3f1b1
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24100/6.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24100/7.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24100/7.bmp
new file mode 100755
index 0000000..915ab5b
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24100/7.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24100/8.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24100/8.bmp
new file mode 100755
index 0000000..b36287d
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24100/8.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24100/9.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24100/9.bmp
new file mode 100755
index 0000000..2cab5a4
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24100/9.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24173/1.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24173/1.bmp
new file mode 100755
index 0000000..664fd2b
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24173/1.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24173/2.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24173/2.bmp
new file mode 100755
index 0000000..c8a9844
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24173/2.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24173/3.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24173/3.bmp
new file mode 100755
index 0000000..673f712
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24173/3.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24173/4.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24173/4.bmp
new file mode 100755
index 0000000..ef386f2
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24173/4.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24173/5.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24173/5.bmp
new file mode 100755
index 0000000..c13f5b9
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24173/5.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24173/6.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24173/6.bmp
new file mode 100755
index 0000000..e27051a
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24173/6.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24173/7.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24173/7.bmp
new file mode 100755
index 0000000..0196a04
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24173/7.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24173/8.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24173/8.bmp
new file mode 100755
index 0000000..3978667
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24173/8.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24173/9.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24173/9.bmp
new file mode 100755
index 0000000..9a73428
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24173/9.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24200/1.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24200/1.bmp
new file mode 100755
index 0000000..8cd2247
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24200/1.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24200/2.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24200/2.bmp
new file mode 100755
index 0000000..ae60ecd
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24200/2.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24200/3.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24200/3.bmp
new file mode 100755
index 0000000..079ecd0
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24200/3.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24200/4.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24200/4.bmp
new file mode 100755
index 0000000..e38f511
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24200/4.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24200/5.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24200/5.bmp
new file mode 100755
index 0000000..a02ff49
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24200/5.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24200/6.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24200/6.bmp
new file mode 100755
index 0000000..caef3c3
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24200/6.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24200/7.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24200/7.bmp
new file mode 100755
index 0000000..85758c2
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24200/7.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24200/8.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24200/8.bmp
new file mode 100755
index 0000000..c42b1e0
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24200/8.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24200/9.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24200/9.bmp
new file mode 100755
index 0000000..2a8cdde
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24200/9.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24400/1.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24400/1.bmp
new file mode 100755
index 0000000..9dc4d7d
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24400/1.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24400/2.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24400/2.bmp
new file mode 100755
index 0000000..e5d6c59
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24400/2.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24400/3.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24400/3.bmp
new file mode 100755
index 0000000..a36fc67
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24400/3.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24400/4.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24400/4.bmp
new file mode 100755
index 0000000..d0f7ee1
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24400/4.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24400/5.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24400/5.bmp
new file mode 100755
index 0000000..1376efb
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24400/5.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24400/6.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24400/6.bmp
new file mode 100755
index 0000000..a7e1ba8
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24400/6.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24400/7.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24400/7.bmp
new file mode 100755
index 0000000..7750f50
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24400/7.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24400/8.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24400/8.bmp
new file mode 100755
index 0000000..9afd90b
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24400/8.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/BMP24400/9.bmp b/devtools/CompleteTestKit/art/BMP24/BMP24400/9.bmp
new file mode 100755
index 0000000..7132958
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/BMP24400/9.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/multiAnimSheet/Buttons.bmp b/devtools/CompleteTestKit/art/BMP24/multiAnimSheet/Buttons.bmp
new file mode 100755
index 0000000..a96ed6b
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/multiAnimSheet/Buttons.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/multiAnimSheet/text.txt b/devtools/CompleteTestKit/art/BMP24/multiAnimSheet/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/multiAnimSheet/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/devtools/CompleteTestKit/art/BMP24/singleAnimSheet/1.bmp b/devtools/CompleteTestKit/art/BMP24/singleAnimSheet/1.bmp
new file mode 100755
index 0000000..7ff69f4
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/singleAnimSheet/1.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/singleAnimSheet/2.bmp b/devtools/CompleteTestKit/art/BMP24/singleAnimSheet/2.bmp
new file mode 100755
index 0000000..a771b04
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/singleAnimSheet/2.bmp
Binary files differ
diff --git a/devtools/CompleteTestKit/art/BMP24/singleAnimSheet/text.txt b/devtools/CompleteTestKit/art/BMP24/singleAnimSheet/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/devtools/CompleteTestKit/art/BMP24/singleAnimSheet/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/devtools/CompleteTestKit/art/GIF/GIF100/1.gif b/devtools/CompleteTestKit/art/GIF/GIF100/1.gif
new file mode 100755
index 0000000..4a89216
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF100/1.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF100/2.gif b/devtools/CompleteTestKit/art/GIF/GIF100/2.gif
new file mode 100755
index 0000000..b5019d8
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF100/2.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF100/3.gif b/devtools/CompleteTestKit/art/GIF/GIF100/3.gif
new file mode 100755
index 0000000..a87ddc6
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF100/3.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF100/4.gif b/devtools/CompleteTestKit/art/GIF/GIF100/4.gif
new file mode 100755
index 0000000..2a398e6
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF100/4.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF100/5.gif b/devtools/CompleteTestKit/art/GIF/GIF100/5.gif
new file mode 100755
index 0000000..93e5b8d
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF100/5.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF100/6.gif b/devtools/CompleteTestKit/art/GIF/GIF100/6.gif
new file mode 100755
index 0000000..0e73825
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF100/6.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF100/7.gif b/devtools/CompleteTestKit/art/GIF/GIF100/7.gif
new file mode 100755
index 0000000..061669a
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF100/7.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF100/8.gif b/devtools/CompleteTestKit/art/GIF/GIF100/8.gif
new file mode 100755
index 0000000..90dcfda
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF100/8.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF100/9.gif b/devtools/CompleteTestKit/art/GIF/GIF100/9.gif
new file mode 100755
index 0000000..aa194d9
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF100/9.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF173/1.gif b/devtools/CompleteTestKit/art/GIF/GIF173/1.gif
new file mode 100755
index 0000000..3323f2e
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF173/1.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF173/2.gif b/devtools/CompleteTestKit/art/GIF/GIF173/2.gif
new file mode 100755
index 0000000..d5426f2
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF173/2.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF173/3.gif b/devtools/CompleteTestKit/art/GIF/GIF173/3.gif
new file mode 100755
index 0000000..dda1828
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF173/3.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF173/4.gif b/devtools/CompleteTestKit/art/GIF/GIF173/4.gif
new file mode 100755
index 0000000..ff5e222
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF173/4.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF173/5.gif b/devtools/CompleteTestKit/art/GIF/GIF173/5.gif
new file mode 100755
index 0000000..d028b0a
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF173/5.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF173/6.gif b/devtools/CompleteTestKit/art/GIF/GIF173/6.gif
new file mode 100755
index 0000000..cf606bb
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF173/6.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF173/7.gif b/devtools/CompleteTestKit/art/GIF/GIF173/7.gif
new file mode 100755
index 0000000..f1232cc
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF173/7.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF173/8.gif b/devtools/CompleteTestKit/art/GIF/GIF173/8.gif
new file mode 100755
index 0000000..5069472
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF173/8.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF173/9.gif b/devtools/CompleteTestKit/art/GIF/GIF173/9.gif
new file mode 100755
index 0000000..a288e81
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF173/9.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF200/1.gif b/devtools/CompleteTestKit/art/GIF/GIF200/1.gif
new file mode 100755
index 0000000..fe61a8c
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF200/1.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF200/2.gif b/devtools/CompleteTestKit/art/GIF/GIF200/2.gif
new file mode 100755
index 0000000..edf0e73
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF200/2.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF200/3.gif b/devtools/CompleteTestKit/art/GIF/GIF200/3.gif
new file mode 100755
index 0000000..f4449f4
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF200/3.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF200/4.gif b/devtools/CompleteTestKit/art/GIF/GIF200/4.gif
new file mode 100755
index 0000000..f9c6344
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF200/4.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF200/5.gif b/devtools/CompleteTestKit/art/GIF/GIF200/5.gif
new file mode 100755
index 0000000..604fba4
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF200/5.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF200/6.gif b/devtools/CompleteTestKit/art/GIF/GIF200/6.gif
new file mode 100755
index 0000000..63e85d6
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF200/6.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF200/7.gif b/devtools/CompleteTestKit/art/GIF/GIF200/7.gif
new file mode 100755
index 0000000..9a7afd9
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF200/7.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF200/8.gif b/devtools/CompleteTestKit/art/GIF/GIF200/8.gif
new file mode 100755
index 0000000..05fb50d
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF200/8.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF200/9.gif b/devtools/CompleteTestKit/art/GIF/GIF200/9.gif
new file mode 100755
index 0000000..6694073
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF200/9.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF400/1.gif b/devtools/CompleteTestKit/art/GIF/GIF400/1.gif
new file mode 100755
index 0000000..7020dbb
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF400/1.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF400/2.gif b/devtools/CompleteTestKit/art/GIF/GIF400/2.gif
new file mode 100755
index 0000000..3c59c20
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF400/2.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF400/3.gif b/devtools/CompleteTestKit/art/GIF/GIF400/3.gif
new file mode 100755
index 0000000..f0c489b
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF400/3.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF400/4.gif b/devtools/CompleteTestKit/art/GIF/GIF400/4.gif
new file mode 100755
index 0000000..afa0654
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF400/4.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF400/5.gif b/devtools/CompleteTestKit/art/GIF/GIF400/5.gif
new file mode 100755
index 0000000..58526be
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF400/5.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF400/6.gif b/devtools/CompleteTestKit/art/GIF/GIF400/6.gif
new file mode 100755
index 0000000..81065e2
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF400/6.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF400/7.gif b/devtools/CompleteTestKit/art/GIF/GIF400/7.gif
new file mode 100755
index 0000000..2eb5844
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF400/7.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF400/8.gif b/devtools/CompleteTestKit/art/GIF/GIF400/8.gif
new file mode 100755
index 0000000..7b46a83
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF400/8.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/GIF400/9.gif b/devtools/CompleteTestKit/art/GIF/GIF400/9.gif
new file mode 100755
index 0000000..f148495
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/GIF400/9.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/multiAnimSheet/Buttons.gif b/devtools/CompleteTestKit/art/GIF/multiAnimSheet/Buttons.gif
new file mode 100755
index 0000000..8725ade
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/multiAnimSheet/Buttons.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/multiAnimSheet/text.txt b/devtools/CompleteTestKit/art/GIF/multiAnimSheet/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/multiAnimSheet/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/devtools/CompleteTestKit/art/GIF/singleAnimSheet/1.gif b/devtools/CompleteTestKit/art/GIF/singleAnimSheet/1.gif
new file mode 100755
index 0000000..223321b
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/singleAnimSheet/1.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/singleAnimSheet/2.gif b/devtools/CompleteTestKit/art/GIF/singleAnimSheet/2.gif
new file mode 100755
index 0000000..56c1a0f
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/singleAnimSheet/2.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIF/singleAnimSheet/text.txt b/devtools/CompleteTestKit/art/GIF/singleAnimSheet/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIF/singleAnimSheet/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT100/1.gif b/devtools/CompleteTestKit/art/GIFT/GIFT100/1.gif
new file mode 100755
index 0000000..2aad244
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT100/1.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT100/2.gif b/devtools/CompleteTestKit/art/GIFT/GIFT100/2.gif
new file mode 100755
index 0000000..ed22525
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT100/2.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT100/3.gif b/devtools/CompleteTestKit/art/GIFT/GIFT100/3.gif
new file mode 100755
index 0000000..246cd12
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT100/3.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT100/4.gif b/devtools/CompleteTestKit/art/GIFT/GIFT100/4.gif
new file mode 100755
index 0000000..722f240
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT100/4.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT100/5.gif b/devtools/CompleteTestKit/art/GIFT/GIFT100/5.gif
new file mode 100755
index 0000000..6a71348
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT100/5.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT100/6.gif b/devtools/CompleteTestKit/art/GIFT/GIFT100/6.gif
new file mode 100755
index 0000000..0dd2145
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT100/6.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT100/7.gif b/devtools/CompleteTestKit/art/GIFT/GIFT100/7.gif
new file mode 100755
index 0000000..1e9914b
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT100/7.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT100/8.gif b/devtools/CompleteTestKit/art/GIFT/GIFT100/8.gif
new file mode 100755
index 0000000..390124b
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT100/8.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT100/9.gif b/devtools/CompleteTestKit/art/GIFT/GIFT100/9.gif
new file mode 100755
index 0000000..61c8c3c
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT100/9.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT173/1.gif b/devtools/CompleteTestKit/art/GIFT/GIFT173/1.gif
new file mode 100755
index 0000000..844143b
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT173/1.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT173/2.gif b/devtools/CompleteTestKit/art/GIFT/GIFT173/2.gif
new file mode 100755
index 0000000..0d2f0c1
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT173/2.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT173/3.gif b/devtools/CompleteTestKit/art/GIFT/GIFT173/3.gif
new file mode 100755
index 0000000..bc24472
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT173/3.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT173/4.gif b/devtools/CompleteTestKit/art/GIFT/GIFT173/4.gif
new file mode 100755
index 0000000..bb49322
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT173/4.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT173/5.gif b/devtools/CompleteTestKit/art/GIFT/GIFT173/5.gif
new file mode 100755
index 0000000..6253999
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT173/5.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT173/6.gif b/devtools/CompleteTestKit/art/GIFT/GIFT173/6.gif
new file mode 100755
index 0000000..8b56643
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT173/6.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT173/7.gif b/devtools/CompleteTestKit/art/GIFT/GIFT173/7.gif
new file mode 100755
index 0000000..2cfd2e2
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT173/7.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT173/8.gif b/devtools/CompleteTestKit/art/GIFT/GIFT173/8.gif
new file mode 100755
index 0000000..9541df0
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT173/8.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT173/9.gif b/devtools/CompleteTestKit/art/GIFT/GIFT173/9.gif
new file mode 100755
index 0000000..035f1fc
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT173/9.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT200/1.gif b/devtools/CompleteTestKit/art/GIFT/GIFT200/1.gif
new file mode 100755
index 0000000..a8c7fdc
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT200/1.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT200/2.gif b/devtools/CompleteTestKit/art/GIFT/GIFT200/2.gif
new file mode 100755
index 0000000..239d0eb
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT200/2.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT200/3.gif b/devtools/CompleteTestKit/art/GIFT/GIFT200/3.gif
new file mode 100755
index 0000000..fcbff82
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT200/3.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT200/4.gif b/devtools/CompleteTestKit/art/GIFT/GIFT200/4.gif
new file mode 100755
index 0000000..d25e187
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT200/4.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT200/5.gif b/devtools/CompleteTestKit/art/GIFT/GIFT200/5.gif
new file mode 100755
index 0000000..78c0add
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT200/5.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT200/6.gif b/devtools/CompleteTestKit/art/GIFT/GIFT200/6.gif
new file mode 100755
index 0000000..8dd53f7
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT200/6.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT200/7.gif b/devtools/CompleteTestKit/art/GIFT/GIFT200/7.gif
new file mode 100755
index 0000000..d807073
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT200/7.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT200/8.gif b/devtools/CompleteTestKit/art/GIFT/GIFT200/8.gif
new file mode 100755
index 0000000..88c7a01
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT200/8.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT200/9.gif b/devtools/CompleteTestKit/art/GIFT/GIFT200/9.gif
new file mode 100755
index 0000000..37813cf
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT200/9.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT400/1.gif b/devtools/CompleteTestKit/art/GIFT/GIFT400/1.gif
new file mode 100755
index 0000000..3678c97
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT400/1.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT400/2.gif b/devtools/CompleteTestKit/art/GIFT/GIFT400/2.gif
new file mode 100755
index 0000000..6670dbf
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT400/2.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT400/3.gif b/devtools/CompleteTestKit/art/GIFT/GIFT400/3.gif
new file mode 100755
index 0000000..2791314
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT400/3.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT400/4.gif b/devtools/CompleteTestKit/art/GIFT/GIFT400/4.gif
new file mode 100755
index 0000000..a955f57
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT400/4.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT400/5.gif b/devtools/CompleteTestKit/art/GIFT/GIFT400/5.gif
new file mode 100755
index 0000000..0200481
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT400/5.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT400/6.gif b/devtools/CompleteTestKit/art/GIFT/GIFT400/6.gif
new file mode 100755
index 0000000..59f284e
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT400/6.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT400/7.gif b/devtools/CompleteTestKit/art/GIFT/GIFT400/7.gif
new file mode 100755
index 0000000..9c69ca0
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT400/7.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT400/8.gif b/devtools/CompleteTestKit/art/GIFT/GIFT400/8.gif
new file mode 100755
index 0000000..044b3cc
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT400/8.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/GIFT400/9.gif b/devtools/CompleteTestKit/art/GIFT/GIFT400/9.gif
new file mode 100755
index 0000000..68d365e
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/GIFT400/9.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/multiAnimSheet/Buttons.gif b/devtools/CompleteTestKit/art/GIFT/multiAnimSheet/Buttons.gif
new file mode 100755
index 0000000..4be81f6
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/multiAnimSheet/Buttons.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/multiAnimSheet/text.txt b/devtools/CompleteTestKit/art/GIFT/multiAnimSheet/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/multiAnimSheet/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/devtools/CompleteTestKit/art/GIFT/singleAnimSheet/1.gif b/devtools/CompleteTestKit/art/GIFT/singleAnimSheet/1.gif
new file mode 100755
index 0000000..895ff39
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/singleAnimSheet/1.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/singleAnimSheet/2.gif b/devtools/CompleteTestKit/art/GIFT/singleAnimSheet/2.gif
new file mode 100755
index 0000000..61d6302
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/singleAnimSheet/2.gif
Binary files differ
diff --git a/devtools/CompleteTestKit/art/GIFT/singleAnimSheet/text.txt b/devtools/CompleteTestKit/art/GIFT/singleAnimSheet/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/devtools/CompleteTestKit/art/GIFT/singleAnimSheet/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG100/1.png b/devtools/CompleteTestKit/art/PNGI/PNG100/1.png
new file mode 100755
index 0000000..663ca83
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG100/1.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG100/2.png b/devtools/CompleteTestKit/art/PNGI/PNG100/2.png
new file mode 100755
index 0000000..6f44ab5
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG100/2.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG100/3.png b/devtools/CompleteTestKit/art/PNGI/PNG100/3.png
new file mode 100755
index 0000000..c49ab7e
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG100/3.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG100/4.png b/devtools/CompleteTestKit/art/PNGI/PNG100/4.png
new file mode 100755
index 0000000..63eb7e2
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG100/4.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG100/5.png b/devtools/CompleteTestKit/art/PNGI/PNG100/5.png
new file mode 100755
index 0000000..2aaa600
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG100/5.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG100/6.png b/devtools/CompleteTestKit/art/PNGI/PNG100/6.png
new file mode 100755
index 0000000..8fa9737
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG100/6.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG100/7.png b/devtools/CompleteTestKit/art/PNGI/PNG100/7.png
new file mode 100755
index 0000000..1de0311
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG100/7.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG100/8.png b/devtools/CompleteTestKit/art/PNGI/PNG100/8.png
new file mode 100755
index 0000000..7d6332a
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG100/8.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG100/9.png b/devtools/CompleteTestKit/art/PNGI/PNG100/9.png
new file mode 100755
index 0000000..5a8b0ea
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG100/9.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG173/1.png b/devtools/CompleteTestKit/art/PNGI/PNG173/1.png
new file mode 100755
index 0000000..0fe2c13
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG173/1.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG173/2.png b/devtools/CompleteTestKit/art/PNGI/PNG173/2.png
new file mode 100755
index 0000000..63e8040
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG173/2.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG173/3.png b/devtools/CompleteTestKit/art/PNGI/PNG173/3.png
new file mode 100755
index 0000000..8474896
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG173/3.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG173/4.png b/devtools/CompleteTestKit/art/PNGI/PNG173/4.png
new file mode 100755
index 0000000..b135920
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG173/4.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG173/5.png b/devtools/CompleteTestKit/art/PNGI/PNG173/5.png
new file mode 100755
index 0000000..2f017f8
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG173/5.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG173/6.png b/devtools/CompleteTestKit/art/PNGI/PNG173/6.png
new file mode 100755
index 0000000..af0182f
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG173/6.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG173/7.png b/devtools/CompleteTestKit/art/PNGI/PNG173/7.png
new file mode 100755
index 0000000..2e5d2ab
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG173/7.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG173/8.png b/devtools/CompleteTestKit/art/PNGI/PNG173/8.png
new file mode 100755
index 0000000..8fa5983
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG173/8.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG173/9.png b/devtools/CompleteTestKit/art/PNGI/PNG173/9.png
new file mode 100755
index 0000000..3b2a56c
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG173/9.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG200/1.png b/devtools/CompleteTestKit/art/PNGI/PNG200/1.png
new file mode 100755
index 0000000..4af1285
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG200/1.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG200/2.png b/devtools/CompleteTestKit/art/PNGI/PNG200/2.png
new file mode 100755
index 0000000..f67a2e7
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG200/2.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG200/3.png b/devtools/CompleteTestKit/art/PNGI/PNG200/3.png
new file mode 100755
index 0000000..56a5270
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG200/3.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG200/4.png b/devtools/CompleteTestKit/art/PNGI/PNG200/4.png
new file mode 100755
index 0000000..aa999f5
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG200/4.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG200/5.png b/devtools/CompleteTestKit/art/PNGI/PNG200/5.png
new file mode 100755
index 0000000..55896b7
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG200/5.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG200/6.png b/devtools/CompleteTestKit/art/PNGI/PNG200/6.png
new file mode 100755
index 0000000..9a88cd0
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG200/6.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG200/7.png b/devtools/CompleteTestKit/art/PNGI/PNG200/7.png
new file mode 100755
index 0000000..6f4f7fb
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG200/7.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG200/8.png b/devtools/CompleteTestKit/art/PNGI/PNG200/8.png
new file mode 100755
index 0000000..4cea904
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG200/8.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG200/9.png b/devtools/CompleteTestKit/art/PNGI/PNG200/9.png
new file mode 100755
index 0000000..244821b
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG200/9.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG400/1.png b/devtools/CompleteTestKit/art/PNGI/PNG400/1.png
new file mode 100755
index 0000000..153de32
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG400/1.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG400/2.png b/devtools/CompleteTestKit/art/PNGI/PNG400/2.png
new file mode 100755
index 0000000..1c85c4a
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG400/2.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG400/3.png b/devtools/CompleteTestKit/art/PNGI/PNG400/3.png
new file mode 100755
index 0000000..55b6284
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG400/3.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG400/4.png b/devtools/CompleteTestKit/art/PNGI/PNG400/4.png
new file mode 100755
index 0000000..c9968fa
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG400/4.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG400/5.png b/devtools/CompleteTestKit/art/PNGI/PNG400/5.png
new file mode 100755
index 0000000..9a7c99d
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG400/5.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG400/6.png b/devtools/CompleteTestKit/art/PNGI/PNG400/6.png
new file mode 100755
index 0000000..2319fec
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG400/6.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG400/7.png b/devtools/CompleteTestKit/art/PNGI/PNG400/7.png
new file mode 100755
index 0000000..a6afb01
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG400/7.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG400/8.png b/devtools/CompleteTestKit/art/PNGI/PNG400/8.png
new file mode 100755
index 0000000..e8ab7e1
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG400/8.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/PNG400/9.png b/devtools/CompleteTestKit/art/PNGI/PNG400/9.png
new file mode 100755
index 0000000..d3d9e32
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/PNG400/9.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/multiAnimSheet/Buttons.png b/devtools/CompleteTestKit/art/PNGI/multiAnimSheet/Buttons.png
new file mode 100755
index 0000000..83bff0c
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/multiAnimSheet/Buttons.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/multiAnimSheet/text.txt b/devtools/CompleteTestKit/art/PNGI/multiAnimSheet/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/multiAnimSheet/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/devtools/CompleteTestKit/art/PNGI/singleAnimSheet/1.png b/devtools/CompleteTestKit/art/PNGI/singleAnimSheet/1.png
new file mode 100755
index 0000000..99f9800
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/singleAnimSheet/1.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/singleAnimSheet/2.png b/devtools/CompleteTestKit/art/PNGI/singleAnimSheet/2.png
new file mode 100755
index 0000000..41b01d4
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/singleAnimSheet/2.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGI/singleAnimSheet/text.txt b/devtools/CompleteTestKit/art/PNGI/singleAnimSheet/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGI/singleAnimSheet/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT100/1.png b/devtools/CompleteTestKit/art/PNGT/PNGT100/1.png
new file mode 100755
index 0000000..dab1239
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT100/1.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT100/2.png b/devtools/CompleteTestKit/art/PNGT/PNGT100/2.png
new file mode 100755
index 0000000..56312a7
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT100/2.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT100/3.png b/devtools/CompleteTestKit/art/PNGT/PNGT100/3.png
new file mode 100755
index 0000000..4ceb540
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT100/3.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT100/4.png b/devtools/CompleteTestKit/art/PNGT/PNGT100/4.png
new file mode 100755
index 0000000..38d640a
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT100/4.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT100/5.png b/devtools/CompleteTestKit/art/PNGT/PNGT100/5.png
new file mode 100755
index 0000000..dcc14d4
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT100/5.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT100/6.png b/devtools/CompleteTestKit/art/PNGT/PNGT100/6.png
new file mode 100755
index 0000000..cb2f933
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT100/6.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT100/7.png b/devtools/CompleteTestKit/art/PNGT/PNGT100/7.png
new file mode 100755
index 0000000..497ed6f
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT100/7.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT100/8.png b/devtools/CompleteTestKit/art/PNGT/PNGT100/8.png
new file mode 100755
index 0000000..693ac1e
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT100/8.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT100/9.png b/devtools/CompleteTestKit/art/PNGT/PNGT100/9.png
new file mode 100755
index 0000000..e83b570
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT100/9.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT173/1.png b/devtools/CompleteTestKit/art/PNGT/PNGT173/1.png
new file mode 100755
index 0000000..3154f54
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT173/1.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT173/2.png b/devtools/CompleteTestKit/art/PNGT/PNGT173/2.png
new file mode 100755
index 0000000..2daffd5
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT173/2.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT173/3.png b/devtools/CompleteTestKit/art/PNGT/PNGT173/3.png
new file mode 100755
index 0000000..7341a7e
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT173/3.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT173/4.png b/devtools/CompleteTestKit/art/PNGT/PNGT173/4.png
new file mode 100755
index 0000000..1114200
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT173/4.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT173/5.png b/devtools/CompleteTestKit/art/PNGT/PNGT173/5.png
new file mode 100755
index 0000000..03233a3
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT173/5.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT173/6.png b/devtools/CompleteTestKit/art/PNGT/PNGT173/6.png
new file mode 100755
index 0000000..9a1212e
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT173/6.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT173/7.png b/devtools/CompleteTestKit/art/PNGT/PNGT173/7.png
new file mode 100755
index 0000000..ed5470c
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT173/7.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT173/8.png b/devtools/CompleteTestKit/art/PNGT/PNGT173/8.png
new file mode 100755
index 0000000..218790e
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT173/8.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT173/9.png b/devtools/CompleteTestKit/art/PNGT/PNGT173/9.png
new file mode 100755
index 0000000..7f26021
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT173/9.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT200/1.png b/devtools/CompleteTestKit/art/PNGT/PNGT200/1.png
new file mode 100755
index 0000000..173526e
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT200/1.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT200/2.png b/devtools/CompleteTestKit/art/PNGT/PNGT200/2.png
new file mode 100755
index 0000000..3448294
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT200/2.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT200/3.png b/devtools/CompleteTestKit/art/PNGT/PNGT200/3.png
new file mode 100755
index 0000000..6b07141
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT200/3.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT200/4.png b/devtools/CompleteTestKit/art/PNGT/PNGT200/4.png
new file mode 100755
index 0000000..7b0f5b0
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT200/4.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT200/5.png b/devtools/CompleteTestKit/art/PNGT/PNGT200/5.png
new file mode 100755
index 0000000..0cf114c
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT200/5.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT200/6.png b/devtools/CompleteTestKit/art/PNGT/PNGT200/6.png
new file mode 100755
index 0000000..0278da2
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT200/6.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT200/7.png b/devtools/CompleteTestKit/art/PNGT/PNGT200/7.png
new file mode 100755
index 0000000..4017909
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT200/7.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT200/8.png b/devtools/CompleteTestKit/art/PNGT/PNGT200/8.png
new file mode 100755
index 0000000..226abf9
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT200/8.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT200/9.png b/devtools/CompleteTestKit/art/PNGT/PNGT200/9.png
new file mode 100755
index 0000000..b27ab95
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT200/9.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT400/1.png b/devtools/CompleteTestKit/art/PNGT/PNGT400/1.png
new file mode 100755
index 0000000..f3cf1e2
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT400/1.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT400/2.png b/devtools/CompleteTestKit/art/PNGT/PNGT400/2.png
new file mode 100755
index 0000000..7c97bc6
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT400/2.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT400/3.png b/devtools/CompleteTestKit/art/PNGT/PNGT400/3.png
new file mode 100755
index 0000000..97a4014
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT400/3.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT400/4.png b/devtools/CompleteTestKit/art/PNGT/PNGT400/4.png
new file mode 100755
index 0000000..9784d69
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT400/4.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT400/5.png b/devtools/CompleteTestKit/art/PNGT/PNGT400/5.png
new file mode 100755
index 0000000..4615722
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT400/5.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT400/6.png b/devtools/CompleteTestKit/art/PNGT/PNGT400/6.png
new file mode 100755
index 0000000..1ccb2d1
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT400/6.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT400/7.png b/devtools/CompleteTestKit/art/PNGT/PNGT400/7.png
new file mode 100755
index 0000000..ff0d53b
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT400/7.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT400/8.png b/devtools/CompleteTestKit/art/PNGT/PNGT400/8.png
new file mode 100755
index 0000000..69ed548
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT400/8.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/PNGT400/9.png b/devtools/CompleteTestKit/art/PNGT/PNGT400/9.png
new file mode 100755
index 0000000..5f538b6
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/PNGT400/9.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/multiAnimSheet/Buttons.png b/devtools/CompleteTestKit/art/PNGT/multiAnimSheet/Buttons.png
new file mode 100755
index 0000000..cb6766f
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/multiAnimSheet/Buttons.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/multiAnimSheet/text.txt b/devtools/CompleteTestKit/art/PNGT/multiAnimSheet/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/multiAnimSheet/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/devtools/CompleteTestKit/art/PNGT/singleAnimSheet/1.png b/devtools/CompleteTestKit/art/PNGT/singleAnimSheet/1.png
new file mode 100755
index 0000000..37d045a
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/singleAnimSheet/1.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/singleAnimSheet/2.png b/devtools/CompleteTestKit/art/PNGT/singleAnimSheet/2.png
new file mode 100755
index 0000000..b7a00a1
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/singleAnimSheet/2.png
Binary files differ
diff --git a/devtools/CompleteTestKit/art/PNGT/singleAnimSheet/text.txt b/devtools/CompleteTestKit/art/PNGT/singleAnimSheet/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/devtools/CompleteTestKit/art/PNGT/singleAnimSheet/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/devtools/CompleteTestKit/etc/ioexample.py b/devtools/CompleteTestKit/etc/ioexample.py
deleted file mode 100755
index 020e09e..0000000
--- a/devtools/CompleteTestKit/etc/ioexample.py
+++ /dev/null
@@ -1,20 +0,0 @@
-#! /usr/bin/env python
-#
-print "\nWelcome to the master File Type Tester Interface"
-print "Authors: Scott 'JT' Mengel and Dave Silverman"
-print "\nPlease select the test(s) you want to run, in the order you want to run them, seperated by commas.\n"
-print "1. Simple File Type Variety Test, as images"
-print "2. Simple File Type variety Test, as sprites"
-print "3. Selected Scalability Test"
-file=open('./localfile','a')
-keyIn=0
-
-while 1:
- try:
- keyIn = int(raw_input(">"))
- print "You have selected %i"%keyIn
- file.seek(5)
- file.write("File Accessed!%s"%str(keyIn))
- break
- except ValueError:
- print "Error: out of bounds."
diff --git a/devtools/CompleteTestKit/fileTypeTests.py b/devtools/CompleteTestKit/fileTypeTests.py
index b97ddb6..7878ba9 100755
--- a/devtools/CompleteTestKit/fileTypeTests.py
+++ b/devtools/CompleteTestKit/fileTypeTests.py
@@ -6,80 +6,124 @@ pygame.init()
# Scroll below the def () for the initial code for this program
-
'''
The file type array will be iterated through as the test progresses to tell the program what extension and path to use for the images
-'''
-ftArr=[ [".bmp","./art/BMP16/"] , [".bmp","./art/BMP24/"] , [".bmp","./art/BMP32/"] , [".gif","./art/GIF/"] , [".gif","./art/GIFT/"] , [".jpg","./art/JPG1/"] , [".jpg","./art/JPG2/"] , [".jpg","./art/JPG3/"] , [".jpg","./art/JPG4/"] , [".png","./art/PNGI/"] , [".png","./art/PNGT/"] ]
-
+Current issue is the fact that the attributes declared in the upper method is not being seen or involved in the inner methods
+ergo, I must manually pass the details to and from the getValues(keyIn) to the other method objects. I will probably do this
+in-line, if it allows me, as I call the other objects. This should get interesting. Actually, that would call the getValues as many
+times as I have requested a test, defeating the purpose of having a module that collects data pertenent to these tests once before
+the tests are run; so i will run the getVal() return the data in an array which is then passed onto all def's thereafter.
+preferences[0] - All Tests -
+ [0][0] - screenWidth
+ [0][1] - screenHeight
+ [0][2] - images
+ [0][3] - trials
+ [0][9] - file to write to...
+preferences[1] - speedTest Specific
+ space reserved
+preferences[2] - scaleTest Specific
+ [2][0] - scale x
+ [2][1] - scale y
'''
-Image() Animation Test
-'''
-def imgTest():
- screenSize=numImages=maxTrial=''
- def change():
- cnt=numImages
- while cnt>0:
- img[cnt,0]=imgSwitch.get(i,pygame.image.load("%s1%s"%(ft[1],ft[0])))
- cnt=cnt-1
- def collision():
- cnt=numImages
- while cnt>0:
- if img[cnt,1].left < 0 or img[cnt,1].right > screenWidth:
- img[cnt,2]=[ -img[cnt,2][0], img[cnt,2][1] ]
- if img[cnt,1].top < 0 or img[cnt,1].bottom > screenHeight:
- img[cnt,2]=[ img[cnt,2][0], -img[cnt,2][1] ]
- img[cnt,1] = img[cnt,1].move(img[cnt,2])
- screen.blit(img[cnt,0],img[cnt,1])
- cnt=cnt-1
- pygame.display.flip()
+
+def getValues(keyIn):
+#trialSize=None
+ preferences={}
- while 1:
- print "\nImage Load Test Details\nFor default values, please leave the field blank"
- try:
- print "\nSet size, formatted as '>width,height':"
- screenSize=str(raw_input('>'))
- screenSize.split(',')
- screenWidth=int(screenSize[0])
- screenHeight=int(screenSize[1])
+ print "\nTest Details\nFor default values, please leave the field blank"
+ preferences[0]={}
+ try:
+ print "\nSet size, formatted as '>width,height':"
+ print "Default value is '600,400'."
+ screenSize = str(raw_input('>>>'))
+ screenSize = screenSize.split(',')
+ preferences[0][0] = int(screenSize[0])
+ preferences[0][1] = int(screenSize[1])
- except:
- screenWidth=600
- screenHeight=400
+ except:
+ print "Value was erroneous/blank, Default set..."
+ preferences[0][0]=600
+ preferences[0][1]=400
+ try:
+ print "\nHow many images would you like to draw?"
+ print "Default value is 5 images."
+ preferences[0][2]=int(raw_input('>>>'))
+ except:
+ print "Value was erroneous/blank, Default set..."
+ preferences[0][2]=5
+ try:
+ print "\nHow many trials would you like to run?"
+ print "Default value is 5 trials."
+ preferences[0][3]=int(raw_input('>>>'))
+ except:
+ print "Value was erroneous/blank, Default set..."
+ preferences[0][3]=5
+ if '2' in keyIn:
+ preferences[2]={}
try:
- print "How many images would you like to draw?"
- numImages=int(raw_input('>'))
- except:
- numImages=5
- try:
- print "How many trials would you like to run?"
- maxTrial=int(raw_input('>'))
- break
+ print "\nWhat would you like to scale the images to in the scalability test? (format as '>width,height', in pixels)"
+ print "NOTE: Scalability test is built to resize from 160x160, 80x80, 69x69 and 40x40 pixel sizes"
+ sizeTo = raw_input(">>>").split(',')
+ preferences[2][0] = int(sizeTo[0])
+ preferences[2][1] = int(sizeTo[1])
except:
- maxTrial=5
- break
-
- f=open('./logs/Test Result - Image Test - %s.csv'%str(datetime.now()),'a')
- f.write("Width (pixels)"+','+"Height (pixels)"+','+"Trial Runs"+','+"Image Objects Drawn")
- f.write("\n"+str(screenWidth)+','+str(screenHeight)+','+str(maxTrial)+','+str(numImages))
- f.write("\nFile Type"+','+"Time taken to load images to memory"+','+"Trials")
+ print "Value was erroneous/blank, Default set..."
+ preferences[2][0] = 40
+ preferences[2][1] = 40
+
+ print "END OF INFO GATHERING - Testing beginning now...\n"
+ return preferences
+
+'''Image() Animation Test
+This test will simply load the image(s) to screen, and move them around to
+create a CPU stressful environment. The performance of the CPU in this
+environment is measured in the average frame rate demonstrated in a sample of
+500 frames. Once this test is completed and written to file, the test is rerun
+using surface.convert() to see if converting all of the different file types
+will consequentially even out the framerates between tests.
+'''
+
+def imgTest(preferences):
+ ftArr=[
+ [".bmp","./art/BMP16/"], [".bmp","./art/BMP24/"] , [".bmp","./art/BMP32/"],
+ [".gif","./art/GIF/" ] , [".gif","./art/GIFT/" ] , [ ".jpg","./art/JPG1/"],
+ [".jpg","./art/JPG2/"] , [".jpg","./art/JPG3/" ] , [ ".jpg","./art/JPG4/"],
+ [".png","./art/PNGI/"] , [".png","./art/PNGT/" ]
+ ]
+ screenWidth = preferences[0][0]
+ screenHeight = preferences[0][1]
+ numImages = preferences[0][2]
+ maxTrial = preferences[0][3]
+ try:
+ f=preferences[0][9]
+ except:
+ f=preferences[0][9]=open('./logs/Test Results - %s.csv'%str(datetime.now()),'a')
+ f.write("\n\nSpeed Test - "+str(datetime.now()))
+ f.write(",Width (pixels)"+','+"Height (pixels)"+','+"Trial Runs"+','+"Image Objects Drawn")
+ f.write("\n,"+str(screenWidth)+','+str(screenHeight)+','+str(maxTrial)+','+str(numImages))
+ f.write("\nFile Type"+','+"Time taken to load images to memory"+','+"Trials (frames per second)")
ft="" #filetype
img={}
r=0 #frame refreshes
i=1 #cycles images
t=0 #trial number n
-
- screen = pygame.display.set_mode(screenWidth, screenHeight) #Screen Set 600x400
+ print "width,height",
+ print screenWidth,
+ print ",",
+ print screenHeight
+ screen = pygame.display.set_mode( [int(screenWidth),int(screenHeight)] ) #Screen Set 600x400
background = 152, 251, 152 # pale green
while 1:
cnt=numImages
try:ft=ftArr[t]
- except:sys.exit("Test Complete")
+ except:
+ print "\nTest Complete\n"
+ break
f.seek(0,2)
- f.write(str('\n'+ft[1]+' Test'))
+ f.write(str('\n'+ft[1]+' Speed Test'))
f.seek(0,2)
start=time.time()
imgSwitch={
@@ -92,9 +136,87 @@ def imgTest():
7: pygame.image.load("%s8%s"%(ft[1],ft[0])),
8: pygame.image.load("%s9%s"%(ft[1],ft[0])),
}
- f.write(','+str(time.time()-start))
+ f.write(',')
+ f.write(str(time.time()-start))
+ #print time.time()-start()
+ print "Speed Test: "+ft[1]+" extension "+ft[0]
+ trial=maxTrial
- print "Testing "+ft[1]
+ while trial>0:
+ while cnt>0:
+ img[cnt,0]= pygame.image.load("%s1%s"%(ft[1],ft[0]))
+ img[cnt,1]= img[cnt,0].get_rect()
+ img[cnt,2]= [2,2] #speed
+ m=cnt*40 # named m cause i wanted some m&ms
+ img[cnt,1]=img[cnt,1].move(m,m) #see? (it wasn't as tasty though)
+ cnt=cnt-1
+
+ r=0
+ start=time.time()
+ while 1:
+ cnt=numImages
+ while cnt>0:
+ img[cnt,0]=imgSwitch.get(cnt,None)
+ if img[cnt,1].left < 0 or img[cnt,1].right > screenWidth:
+ img[cnt,2]=[ -img[cnt,2][0], img[cnt,2][1] ]
+ if img[cnt,1].top < 0 or img[cnt,1].bottom > screenHeight:
+ img[cnt,2]=[ img[cnt,2][0], -img[cnt,2][1] ]
+ img[cnt,1] = img[cnt,1].move(img[cnt,2])
+ screen.blit(img[cnt,0],img[cnt,1])
+ cnt=cnt-1
+ pygame.display.flip()
+ i=i+1
+ if i>9: i=1
+ screen.fill(background)
+ r=r+1
+ if r>500: break
+
+ print 1/((time.time()-start)/r)
+ f.seek(0,2)
+ f.write(','+str(1/((time.time()-start)/r)))
+ trial=trial-1
+ t=t+1
+
+ ft="" #filetype
+ img={}
+ r=0 #frame refreshes
+ i=1 #cycles images
+ t=0 #trial number n
+
+ f.write("\n\nNow using .convert()")
+ f.write("\nFile Type"+','+"Time taken to load images to memory"+','+"Trials (frames per second)")
+ ft="" #filetype
+ img={}
+ r=0 #frame refreshes
+ i=1 #cycles images
+ t=0 #trial number n
+
+ screen = pygame.display.set_mode( [screenWidth,screenHeight] ) #Screen Set 600x400
+ background = 152, 251, 152 # pale green
+
+ while 1:
+ cnt=numImages
+ try:ft=ftArr[t]
+ except:
+ print "\nTest Complete\n"
+ break
+ f.seek(0,2)
+ f.write(str('\n'+ft[1]+' Speed convert() Test'))
+ f.seek(0,2)
+ start=time.time()
+ imgSwitch={
+ 1: pygame.image.load("%s2%s"%(ft[1],ft[0])).convert(),
+ 2: pygame.image.load("%s3%s"%(ft[1],ft[0])).convert(),
+ 3: pygame.image.load("%s4%s"%(ft[1],ft[0])).convert(),
+ 4: pygame.image.load("%s5%s"%(ft[1],ft[0])).convert(),
+ 5: pygame.image.load("%s6%s"%(ft[1],ft[0])).convert(),
+ 6: pygame.image.load("%s7%s"%(ft[1],ft[0])).convert(),
+ 7: pygame.image.load("%s8%s"%(ft[1],ft[0])).convert(),
+ 8: pygame.image.load("%s9%s"%(ft[1],ft[0])).convert(),
+ }
+ f.write(',')
+ f.write( str(time.time()-start) )
+ print "Convert Test: "+ft[1]+" extension "+ft[0]
trial=maxTrial
while trial>0:
@@ -109,10 +231,19 @@ def imgTest():
r=0
start=time.time()
while 1:
- change()
+ cnt=numImages
+ while cnt>0:
+ img[cnt,0]=imgSwitch.get(cnt,None)
+ if img[cnt,1].left < 0 or img[cnt,1].right > screenWidth:
+ img[cnt,2]=[ -img[cnt,2][0], img[cnt,2][1] ]
+ if img[cnt,1].top < 0 or img[cnt,1].bottom > screenHeight:
+ img[cnt,2]=[ img[cnt,2][0], -img[cnt,2][1] ]
+ img[cnt,1] = img[cnt,1].move(img[cnt,2])
+ screen.blit(img[cnt,0],img[cnt,1])
+ cnt=cnt-1
+ pygame.display.flip()
i=i+1
if i>9: i=1
- collision()
screen.fill(background)
r=r+1
if r>500: break
@@ -123,43 +254,217 @@ def imgTest():
trial=trial-1
t=t+1
- f.close()
-#= .sprite() Animation Test ===============================================================================
-def spriteTest():
- print "spriteTest called"
- dateTime=str(datetime.now())
- file=open('./logs/testresult - %s.csv'%dateTime,'a')
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+'''Scalability Test
+The scalability test is still very much hard coded and not very elegant, but
+this is a theme with all our code.
+The pseudo-code goes as follows:
+Gather in varaibles such as how many trials, images to draw on screen, and what
+to resize the 160, 80, 69, and 40 pixel square images to.
+Then the code will generate the lists reflecting which directories to access
+and their associated filetypes and finally there are loops to cycle through
+trials where 500 frames of n moving images are placed onto the screen after
+they are transform.scale()'d and convert()'d
+
+Last step, information is printed to the terminal and, once implemented, to
+a .csv file in the logs directory.
'''
- Scalability Test
-'''
-def scaleTest():
- screenSize=maxTrial=''
- trialSize=[]
+def scaleTest(preferences):
+
+# delete these 3 lines when tests have proven program functional
+#make=input("How many images would you like to load?\n>") numImages
+#trial=input("How many runs per trial?\n>")
+#sizeTo=input("What would you like to resize to? Seperate with a comma, eg: x,y\n>" )
+
+ sizeTo = [ preferences[2][0],preferences[2][1] ]
+ screenWidth = preferences[0][0]
+ screenHeight = preferences[0][1]
+ numImages = preferences[0][2]
+ maxTrial = preferences[0][3]
+ try:
+ f=preferences[0][9]
+ except:
+ f=preferences[0][9]=open('./logs/Test Results - %s.csv'%str(datetime.now()),'a')
+
+ img={}
+ ft="" #filetype
+ r=0 #frame refreshes
+ i=1 #cycles images
+ size = screenWidth,screenHeight
+ t=0 #trial number n
+ colorkey=(255, 152, 0)
+
+# paths to and extensions for image files to be turned into surfaces
+ ftArr=[
+ [".bmp","art/BMP16/BMP16100/"] ,
+ [".bmp","art/BMP16/BMP16173/"] ,
+ [".bmp","art/BMP16/BMP16200/"] ,
+ [".bmp","art/BMP16/BMP16400/"] ,
+ [".bmp","art/BMP24/BMP24100/"] ,
+ [".bmp","art/BMP24/BMP24173/"] ,
+ [".bmp","art/BMP24/BMP24200/"] ,
+ [".bmp","art/BMP24/BMP24400/"] ,
+ [".gif","art/GIF/GIF100/"] ,
+ [".gif","art/GIF/GIF173/"] ,
+ [".gif","art/GIF/GIF200/"] ,
+ [".gif","art/GIF/GIF400/"] ,
+ [".gif","art/GIFT/GIFT100/"] ,
+ [".gif","art/GIFT/GIFT173/"] ,
+ [".gif","art/GIFT/GIFT200/"] ,
+ [".gif","art/GIFT/GIFT400/"] ,
+ [".png","art/PNGI/PNG100/"] ,
+ [".png","art/PNGI/PNG173/"] ,
+ [".png","art/PNGI/PNG200/"] ,
+ [".png","art/PNGI/PNG400/"] ,
+ [".png","art/PNGT/PNGT100/"] ,
+ [".png","art/PNGT/PNGT173/"] ,
+ [".png","art/PNGT/PNGT200/"] ,
+ [".png","art/PNGT/PNGT400/"] ]
+
+ f.write("\n\nScaling Test"+str(datetime.now()))
+ f.write(",Width (pixels)"+','+"Height (pixels)"+','+"Trial Runs"+','+"Image Objects Drawn")
+ f.write("\n,"+str(screenWidth)+','+str(screenHeight)+','+str(maxTrial)+','+str(numImages))
+ f.write("\nFile Type"+','+"Time taken to load images to memory"+','+"Trials (frames per second)")
+
+ screen = pygame.display.set_mode(size)
+ background = 152, 251, 152 # pale green
+
+ #23456789123456789212345678931234567894123456789512345678961234567897123456789*
+
+ # This is the beginning of the actual test loops; this program is a very rough
+ # learning exercise which we desire to polish to such a state that it can be
+ # used to accurately benchmark the XO laptop's speed capabilities
+ while 1:
+ cnt=numImages
+ try:ft=ftArr[t]
+ except:
+ print "\nTest Complete\n"
+ break
+ print "Scale Test: "+ft[1]+" extension "+ft[0]
+ trialthis=maxTrial
+ f.seek(0,2)
+ f.write(str('\n'+ft[1]+' Scale Test'))
+ f.seek(0,2)
+ start=time.time()
+ # This timer will reflect the time taken to load and resize images in memory
+ switcher = {
+ # This is also where we need advise regarding implementing convert()
+ 1: pygame.transform.scale( pygame.image.load("%s2%s"%(ft[1],ft[0])).convert(),(sizeTo[0],sizeTo[1] )),
+ 2: pygame.transform.scale( pygame.image.load("%s3%s"%(ft[1],ft[0])).convert(),(sizeTo[0],sizeTo[1] )),
+ 3: pygame.transform.scale( pygame.image.load("%s4%s"%(ft[1],ft[0])).convert(),(sizeTo[0],sizeTo[1] )),
+ 4: pygame.transform.scale( pygame.image.load("%s5%s"%(ft[1],ft[0])).convert(),(sizeTo[0],sizeTo[1] )),
+ 5: pygame.transform.scale( pygame.image.load("%s6%s"%(ft[1],ft[0])).convert(),(sizeTo[0],sizeTo[1] )),
+ 6: pygame.transform.scale( pygame.image.load("%s7%s"%(ft[1],ft[0])).convert(),(sizeTo[0],sizeTo[1] )),
+ 7: pygame.transform.scale( pygame.image.load("%s8%s"%(ft[1],ft[0])).convert(),(sizeTo[0],sizeTo[1] )),
+ 8: pygame.transform.scale( pygame.image.load("%s9%s"%(ft[1],ft[0])).convert(),(sizeTo[0],sizeTo[1] )),
+ 9: pygame.transform.scale( pygame.image.load("%s1%s"%(ft[1],ft[0])).convert(),(sizeTo[0],sizeTo[1] ))
+ }
+ f.write(',')
+ f.write( str(time.time()-start) )
+ # Here ends the loading section, and hereafter we jump into the main loop
+ while trialthis>0:
+ while cnt>0:
+ # establish the initial state for the images of the next trial
+ img[cnt,0]= pygame.image.load("%s1%s"%(ft[1],ft[0]))
+ img[cnt,0]= pygame.transform.scale(img[cnt,0],(sizeTo[0], sizeTo[1]))
+ img[cnt,1]= img[cnt,0].get_rect()
+ img[cnt,2]= [2,2] #speed
+ m=cnt*40
+ # Here I move images to avoid indistinguishable stacks of image rectangles
+ img[cnt,1]=img[cnt,1].move(m,m)
+ cnt=cnt-1
+ r=0
+ start=time.time()
+
+ while 1:
+ # This loop is the 'main event' so to speak, as it is the section that is
+ # measured in terms of frames per second
+
+ cnt=numImages # For each 'ball' icon loaded
+ while cnt>0: # Cycle and check if the 'ball' should bounce off the wall
+ img[cnt,0]=switcher.get(i,None)
+ if img[cnt,1].left < 0 or img[cnt,1].right > screenWidth:
+ img[cnt,2]=[ -img[cnt,2][0], img[cnt,2][1] ]
+ if img[cnt,1].top < 0 or img[cnt,1].bottom > screenHeight:
+ img[cnt,2]=[ img[cnt,2][0], -img[cnt,2][1] ]
+ img[cnt,1] = img[cnt,1].move(img[cnt,2])
+ # Move the 'ball' image accordingly, plot the change
+ screen.blit(img[cnt,0],img[cnt,1])
+ cnt=cnt-1
+ pygame.display.flip()
+ # "Make it so, number two," on those changes above
+ i=i+1
+ if i>9: i=1
+ screen.fill(background)
+ r=r+1
+ if r>500: break
+ # After 500 frames, we print the average frame rate to the terminal
+ print 1/((time.time()-start)/r)
+ f.seek(0,2)
+ f.write(','+str(1/((time.time()-start)/r)))
+ trialthis=trialthis-1
+ preferences[0][9]=f
+ t=t+1
+
+while 1:
+ print "\n\nWelcome to the master File Type Tester Interface"
+ print "Authors: Scott 'JT' Mengel and Dave Silverman"
+ print "\nPlease select the test(s) you want to run in the order you want to run them (Do not seperate them with any characters)."
+ print "Please Note: The logs for the tests you are running will automatically be placed in the logs/ directory in the test folder as a .csv file. \n"
+ print "1. Pygame.image.load() surface speed test, with and without surface.convert()"
+ print "2. Pygame.transform surface Selected Scalability Test"
+ print "Other menu options to come!\n"
+
+ acceptible='^[1-2]$'
+ list={ 1:imgTest,
+ 2:scaleTest }
+ keyIn="temp val"
+
+ while 1:
+ keyIn=str(raw_input(">>>"))
+ for i in keyIn:
+ if not re.search(acceptible,i): break
+ else:
+ preferences=dict(getValues(keyIn))
+ for i in keyIn:
+ list.get(int(i))(preferences)
+ break
+ break
+
+#ILY GEOFF A
+
+
+
+
+
+
+
+"""
+screenWidth=screenHeight=screenSize=numImages=maxTrial=''
+trialSize=[]
+sizeTo=None
+"""
+"""From line 57
+ t=1
+ while t<=maxTrial:
+ try:
+ sizeIn=raw_input('Please enter the size of the image for trial '+str(t)+' as \'>width,height\'\n>')
+ sizeIn=sizeIn.split(',')
+ print sizeIn[0]
+ print sizeIn[1]
+ if isInstance(sizeIn[0],int) and isInstance(sizeIn[1],int):
+ trialSize.append(sizeIn)
+ print trialSize[t]
+ t=t+1
+ else:
+ print "Error, please reenter..."
+ except: pass
+ break
+"""
+
+"""230 scalability test
def collision():
cnt=numImages
while cnt>0:
@@ -266,55 +571,4 @@ def scaleTest():
t=t+1
f.close()
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-while 1:
- print "\n\nWelcome to the master File Type Tester Interface"
- print "Authors: Scott 'JT' Mengel and Dave Silverman"
- print "\nPlease select the test(s) you want to run in the order you want to run them (Do not seperate them with any characters)."
- print "Please Note: The logs for the tests you are running will automatically be placed in the logs/ directory in the test folder as a .csv file. \n"
- print "1. Simple File Type Variety Test, as images (NOTE: In development)"
- print "2. Simple File Type variety Test, as sprites (NOTE: not working yet)"
- print "3. Selected Scalability Test (NOTE: not working yet)"
-
- acceptible='^[1-3]$'
- list={ 1:imgTest,
- 2:spriteTest,
- 3:scaleTest }
- keyIn="temp val"
-
- while 1:
- keyIn=str(raw_input(">"))
- for i in keyIn:
- try:
- if re.search(acceptible,i): list.get(int(i))()
- except BaseException: print sys.exc_info()[0]
- break
-
-#ILY GEOFF A
-
+"""
diff --git a/devtools/CompleteTestKit/fileTypeTests.py~ b/devtools/CompleteTestKit/fileTypeTests.py~
index b97ddb6..ce2d1af 100644
--- a/devtools/CompleteTestKit/fileTypeTests.py~
+++ b/devtools/CompleteTestKit/fileTypeTests.py~
@@ -6,23 +6,64 @@ pygame.init()
# Scroll below the def () for the initial code for this program
-
'''
The file type array will be iterated through as the test progresses to tell the program what extension and path to use for the images
'''
-ftArr=[ [".bmp","./art/BMP16/"] , [".bmp","./art/BMP24/"] , [".bmp","./art/BMP32/"] , [".gif","./art/GIF/"] , [".gif","./art/GIFT/"] , [".jpg","./art/JPG1/"] , [".jpg","./art/JPG2/"] , [".jpg","./art/JPG3/"] , [".jpg","./art/JPG4/"] , [".png","./art/PNGI/"] , [".png","./art/PNGT/"] ]
+screenWidth=screenHeight=screenSize=numImages=maxTrial=''
+trialSize=[]
+ftArr=[
+ [".bmp","./art/BMP16/"], [".bmp","./art/BMP24/"] , [".bmp","./art/BMP32/"],
+ [".gif","./art/GIF/" ] , [".gif","./art/GIFT/" ] , [ ".jpg","./art/JPG1/"],
+ [".jpg","./art/JPG2/"] , [".jpg","./art/JPG3/" ] , [ ".jpg","./art/JPG4/"],
+ [".png","./art/PNGI/"] , [".png","./art/PNGT/" ]
+]
+def getValues(keyIn):
+#trialSize=None
+ print "\nTest Details\nFor default values, please leave the field blank"
+ try:
+ print "\nSet size, formatted as '>width,height':"
+ print "Default value is '600,400'."
+ screenSize = str(raw_input('>'))
+ screenSize = screenSize.split(',')
+ screenWidth = int(screenSize[0])
+ screenHeight= int(screenSize[1])
-'''
-Image() Animation Test
+ except:
+ print "Value was erroneous/blank, Default set..."
+ screenWidth=600
+ screenHeight=400
+ try:
+ print "\nHow many images would you like to draw?"
+ print "Default value is 5 images."
+ numImages=int(raw_input('>'))
+ except:
+ print "Value was erroneous/blank, Default set..."
+ numImages=5
+ try:
+ print "\nHow many trials would you like to run?"
+ print "Default value is 5 trials."
+ maxTrial=int(raw_input('>'))
+ except:
+ print "Value was erroneous/blank, Default set..."
+ maxTrial=5
+ if '3' in keyIn:
+ try:
+ print maxTrial
+ except: pass
+
+ print "END OF INFO GATHERING"
+
+'''Image() Animation Test
+
+This test will simply load the image(s) to screen, and move them around
'''
def imgTest():
- screenSize=numImages=maxTrial=''
def change():
cnt=numImages
while cnt>0:
- img[cnt,0]=imgSwitch.get(i,pygame.image.load("%s1%s"%(ft[1],ft[0])))
+ img[cnt,0]=imgSwitch.get(cnt,'This will crash...')
cnt=cnt-1
def collision():
cnt=numImages
@@ -35,33 +76,8 @@ def imgTest():
screen.blit(img[cnt,0],img[cnt,1])
cnt=cnt-1
pygame.display.flip()
-
- while 1:
- print "\nImage Load Test Details\nFor default values, please leave the field blank"
- try:
- print "\nSet size, formatted as '>width,height':"
- screenSize=str(raw_input('>'))
- screenSize.split(',')
- screenWidth=int(screenSize[0])
- screenHeight=int(screenSize[1])
-
- except:
- screenWidth=600
- screenHeight=400
- try:
- print "How many images would you like to draw?"
- numImages=int(raw_input('>'))
- except:
- numImages=5
- try:
- print "How many trials would you like to run?"
- maxTrial=int(raw_input('>'))
- break
- except:
- maxTrial=5
- break
- f=open('./logs/Test Result - Image Test - %s.csv'%str(datetime.now()),'a')
+ f=open('./logs/Test Result - Image Test with convert() - %s.csv'%str(datetime.now()),'a')
f.write("Width (pixels)"+','+"Height (pixels)"+','+"Trial Runs"+','+"Image Objects Drawn")
f.write("\n"+str(screenWidth)+','+str(screenHeight)+','+str(maxTrial)+','+str(numImages))
f.write("\nFile Type"+','+"Time taken to load images to memory"+','+"Trials")
@@ -71,13 +87,15 @@ def imgTest():
i=1 #cycles images
t=0 #trial number n
- screen = pygame.display.set_mode(screenWidth, screenHeight) #Screen Set 600x400
+ screen = pygame.display.set_mode( [int(screenWidth),int(screenHeight)] ) #Screen Set 600x400
background = 152, 251, 152 # pale green
while 1:
cnt=numImages
try:ft=ftArr[t]
- except:sys.exit("Test Complete")
+ except:
+ print "\nTest Complete\n"
+ break
f.seek(0,2)
f.write(str('\n'+ft[1]+' Test'))
f.seek(0,2)
@@ -92,8 +110,77 @@ def imgTest():
7: pygame.image.load("%s8%s"%(ft[1],ft[0])),
8: pygame.image.load("%s9%s"%(ft[1],ft[0])),
}
- f.write(','+str(time.time()-start))
+ f.write(',')
+ f.write(time.time()-start)
+ #print time.time()-start()
+ print "Testing "+ft[1]
+ trial=maxTrial
+ while trial>0:
+ while cnt>0:
+ img[cnt,0]= pygame.image.load("%s1%s"%(ft[1],ft[0]))
+ img[cnt,1]= img[cnt,0].get_rect()
+ img[cnt,2]= [2,2] #speed
+ m=cnt*40 # named m cause i wanted some m&ms
+ img[cnt,1]=img[cnt,1].move(m,m) #see? (it wasn't as tasty though)
+ cnt=cnt-1
+
+ r=0
+ start=time.time()
+ while 1:
+ change()
+ i=i+1
+ if i>9: i=1
+ collision()
+ screen.fill(background)
+ r=r+1
+ if r>500: break
+
+ print 1/((time.time()-start)/r)
+ f.seek(0,2)
+ f.write(','+str(1/((time.time()-start)/r)))
+ trial=trial-1
+
+ t=t+1
+
+ ft="" #filetype
+ img={}
+ r=0 #frame refreshes
+ i=1 #cycles images
+ t=0 #trial number n
+
+ f.write("\nNow using .convert()")
+ f.write("\nFile Type"+','+"Time taken to load images to memory"+','+"Trials")
+ ft="" #filetype
+ img={}
+ r=0 #frame refreshes
+ i=1 #cycles images
+ t=0 #trial number n
+
+ screen = pygame.display.set_mode( [screenWidth,screenHeight] ) #Screen Set 600x400
+ background = 152, 251, 152 # pale green
+
+ while 1:
+ cnt=numImages
+ try:ft=ftArr[t]
+ except:sys.exit("Test Complete")
+ f.seek(0,2)
+ f.write(str('\n'+ft[1]+' Test'))
+ f.seek(0,2)
+ start=time.time()
+ imgSwitch={
+ 1: pygame.image.load("%s2%s"%(ft[1],ft[0])).convert(),
+ 2: pygame.image.load("%s3%s"%(ft[1],ft[0])).convert(),
+ 3: pygame.image.load("%s4%s"%(ft[1],ft[0])).convert(),
+ 4: pygame.image.load("%s5%s"%(ft[1],ft[0])).convert(),
+ 5: pygame.image.load("%s6%s"%(ft[1],ft[0])).convert(),
+ 6: pygame.image.load("%s7%s"%(ft[1],ft[0])).convert(),
+ 7: pygame.image.load("%s8%s"%(ft[1],ft[0])).convert(),
+ 8: pygame.image.load("%s9%s"%(ft[1],ft[0])).convert(),
+ }
+ f.write(',')
+ f.write( time.time()-start )
+ #print time.time()-start()
print "Testing "+ft[1]
trial=maxTrial
@@ -130,36 +217,62 @@ def spriteTest():
print "spriteTest called"
dateTime=str(datetime.now())
file=open('./logs/testresult - %s.csv'%dateTime,'a')
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
'''
Scalability Test
'''
def scaleTest():
- screenSize=maxTrial=''
- trialSize=[]
+ pass
+
+while 1:
+ print "\n\nWelcome to the master File Type Tester Interface"
+ print "Authors: Scott 'JT' Mengel and Dave Silverman"
+ print "\nPlease select the test(s) you want to run in the order you want to run them (Do not seperate them with any characters)."
+ print "Please Note: The logs for the tests you are running will automatically be placed in the logs/ directory in the test folder as a .csv file. \n"
+ print "1. Simple File Type Variety Test, as images (NOTE: In development)"
+ print "2. Simple File Type variety Test, as sprites (NOTE: not working yet)"
+ print "3. Selected Scalability Test (NOTE: In development)"
+
+ acceptible='^[1-3]$'
+ list={ 1:imgTest,
+ 2:spriteTest,
+ 3:scaleTest }
+ keyIn="temp val"
+
+ while 1:
+ keyIn=str(raw_input(">"))
+ for i in keyIn:
+# try:
+ if not re.search(acceptible,i): break
+ else:
+ getValues(keyIn)
+ for i in keyIn:
+ list.get(int(i))()
+# except BaseException: print sys.exc_info()[0]
+ break
+
+#ILY GEOFF A
+
+"""From line 57
+ t=1
+ while t<=maxTrial:
+ try:
+ sizeIn=raw_input('Please enter the size of the image for trial '+str(t)+' as \'>width,height\'\n>')
+ sizeIn=sizeIn.split(',')
+ print sizeIn[0]
+ print sizeIn[1]
+ if isInstance(sizeIn[0],int) and isInstance(sizeIn[1],int):
+ trialSize.append(sizeIn)
+ print trialSize[t]
+ t=t+1
+ else:
+ print "Error, please reenter..."
+ except: pass
+ break
+"""
+
+"""230 scalability test
def collision():
cnt=numImages
while cnt>0:
@@ -266,55 +379,4 @@ def scaleTest():
t=t+1
f.close()
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-while 1:
- print "\n\nWelcome to the master File Type Tester Interface"
- print "Authors: Scott 'JT' Mengel and Dave Silverman"
- print "\nPlease select the test(s) you want to run in the order you want to run them (Do not seperate them with any characters)."
- print "Please Note: The logs for the tests you are running will automatically be placed in the logs/ directory in the test folder as a .csv file. \n"
- print "1. Simple File Type Variety Test, as images (NOTE: In development)"
- print "2. Simple File Type variety Test, as sprites (NOTE: not working yet)"
- print "3. Selected Scalability Test (NOTE: not working yet)"
-
- acceptible='^[1-3]$'
- list={ 1:imgTest,
- 2:spriteTest,
- 3:scaleTest }
- keyIn="temp val"
-
- while 1:
- keyIn=str(raw_input(">"))
- for i in keyIn:
- try:
- if re.search(acceptible,i): list.get(int(i))()
- except BaseException: print sys.exc_info()[0]
- break
-
-#ILY GEOFF A
-
+"""
diff --git a/devtools/CompleteTestKit/logs/.~lock.Test Result - Image Test with convert() - 2010-07-01 15:19:13.674333.csv# b/devtools/CompleteTestKit/logs/.~lock.Test Result - Image Test with convert() - 2010-07-01 15:19:13.674333.csv#
new file mode 100644
index 0000000..d14d0c7
--- /dev/null
+++ b/devtools/CompleteTestKit/logs/.~lock.Test Result - Image Test with convert() - 2010-07-01 15:19:13.674333.csv#
@@ -0,0 +1 @@
+slm ,slm,slm-laptop,01.07.2010 15:20,file:///home/slm/.openoffice.org/3; \ No newline at end of file
diff --git a/devtools/ScaleTypeTest/scaleTest.py b/devtools/ScaleTypeTest/scaleTest.py
index c0fccd9..42212db 100755
--- a/devtools/ScaleTypeTest/scaleTest.py
+++ b/devtools/ScaleTypeTest/scaleTest.py
@@ -6,8 +6,6 @@ print "Scale Test - Authors Dave Silverman and Scott Mengel"
print "Set size window to 600 x 400 px"
print "Running..."
-
-
#--------------------------------------------------------------
#CONSTANTS AND VARIABLES
@@ -23,60 +21,48 @@ size = width, height = 600,400 #screen sizes
t=0 #trial number n
colorkey=(255, 152, 0)
-ftArr=[ ["bmp","BMP16100/"] , ["bmp","BMP16173/"] , ["bmp","BMP16200/"] , ["bmp","BMP16400/"] ,["bmp","BMP24100/"] , ["bmp","BMP24173/"] , ["bmp","BMP24200/"] , ["bmp","BMP24400/"] , ["gif","GIF100/"] , ["gif","GIF173/"] , ["gif","GIF200/"] , ["gif","GIF400/"] , ["gif","GIFT100/"] , ["gif","GIFT173/"] , ["gif","GIFT200/"] , ["gif","GIFT400/"] , ["png","PNG100/"] , ["png","PNG173/"] , ["png","PNG200/"] , ["png","PNG400/"] , ["png","PNGT100/"] , ["png","PNGT173/"] , ["png","PNGT200/"] , ["png","PNGT400/"] ]
+ftArr=[ ["bmp","BMP16100/"] ,
+ ["bmp","BMP16173/"] ,
+ ["bmp","BMP16200/"] ,
+ ["bmp","BMP16400/"] ,
+ ["bmp","BMP24100/"] ,
+ ["bmp","BMP24173/"] ,
+ ["bmp","BMP24200/"] ,
+ ["bmp","BMP24400/"] ,
+ ["gif","GIF100/"] ,
+ ["gif","GIF173/"] ,
+ ["gif","GIF200/"] ,
+ ["gif","GIF400/"] ,
+ ["gif","GIFT100/"] ,
+ ["gif","GIFT173/"] ,
+ ["gif","GIFT200/"] ,
+ ["gif","GIFT400/"] ,
+ ["png","PNG100/"] ,
+ ["png","PNG173/"] ,
+ ["png","PNG200/"] ,
+ ["png","PNG400/"] ,
+ ["png","PNGT100/"] ,
+ ["png","PNGT173/"] ,
+ ["png","PNGT200/"] ,
+ ["png","PNGT400/"] ]
screen = pygame.display.set_mode(size) #Screen Set 600x400
background = 152, 251, 152 # pale green
+#23456789123456789212345678931234567894123456789512345678961234567897123456789*
-#-------------------------------------------------------------
-#The switch function
-
-def chngImg():
- cnt=make
- while cnt>0:
- """switcher = {
- 1: pygame.transform.scale( pygame.image.load( "%s2.%s"%( ft[1],ft[0] ) ) ,(sizeTo[0],sizeTo[1] ),
- 2: pygame.transform.scale( pygame.image.load("%s3.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
- 3: pygame.transform.scale( pygame.image.load("%s4.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
- 4: pygame.transform.scale( pygame.image.load("%s5.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
- 5: pygame.transform.scale( pygame.image.load("%s6.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
- 6: pygame.transform.scale( pygame.image.load("%s7.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
- 7: pygame.transform.scale( pygame.image.load("%s8.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
- 8: pygame.transform.scale( pygame.image.load("%s9.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
- 9: pygame.transform.scale( pygame.image.load("%s1.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] )
- }
- """
- img[cnt,0]=switcher.get(i,pygame.image.load("%s1.%s"%(ft[1],ft[0])))
-# img[cnt,0] = pygame.transform.scale(img[cnt,0],(sizeTo[0], sizeTo[1]))
- cnt=cnt-1
-
-#-----------------------------------------------------------------
-#- Collision detection -------------------------------------------
-
-def collision():
- cnt=make
- while cnt>0:
- if img[cnt,1].left < 0 or img[cnt,1].right > width:
- img[cnt,2]=[ -img[cnt,2][0], img[cnt,2][1] ]
- if img[cnt,1].top < 0 or img[cnt,1].bottom > height:
- img[cnt,2]=[ img[cnt,2][0], -img[cnt,2][1] ]
- img[cnt,1] = img[cnt,1].move(img[cnt,2])
- screen.blit(img[cnt,0],img[cnt,1])
- cnt=cnt-1
- pygame.display.flip()
-
-
-#-----------------------------------------------------------------
-#- Number of dashed lined relates to loops -----------------------
-
+# This is the beginning of the actual test loops; this program is a very rough
+# learning exercise which we desire to polish to such a state that it can be
+# used to accurately benchmark the XO laptop's speed capabilities
while 1:
cnt=make
ft=ftArr[t]
print "Testing: "+ft[1]+" extension "+ft[0]
trialthis=trial
- start=time.time()
+ start=time.time()
+# This timer will reflect the time taken to load and resize images in memory
switcher = {
+# This is also where we need advise regarding implementing convert()
1: pygame.transform.scale( pygame.image.load("%s2.%s"%(ft[1],ft[0])).convert(),(sizeTo[0],sizeTo[1] )),
2: pygame.transform.scale( pygame.image.load("%s3.%s"%(ft[1],ft[0])).convert(),(sizeTo[0],sizeTo[1] )),
3: pygame.transform.scale( pygame.image.load("%s4.%s"%(ft[1],ft[0])).convert(),(sizeTo[0],sizeTo[1] )),
@@ -91,43 +77,45 @@ while 1:
print sizeTo
print " pixels was "
print time.time()-start
-
-#-----------------------------------------------------------------
+# Here ends the loading section, and hereafter we jump into the main loop
while trialthis>0:
-
- #-------------------------------------------------------------
- while cnt>0:
- img[cnt,0]= pygame.image.load("%s1.%s"%(ft[1],ft[0])) #image.load
+ while cnt>0:
+# establish the initial state for the images of the next trial
+ img[cnt,0]= pygame.image.load("%s1.%s"%(ft[1],ft[0]))
img[cnt,0]= pygame.transform.scale(img[cnt,0],(sizeTo[0], sizeTo[1]))
img[cnt,1]= img[cnt,0].get_rect()
img[cnt,2]= [2,2] #speed
- m=cnt*40 # named m cause i wanted some m&ms
- img[cnt,1]=img[cnt,1].move(m,m) #see? it wasn't as tastey though
+ m=cnt*40
+# Here I move images to avoid indistinguishable stacks of image rectangles
+ img[cnt,1]=img[cnt,1].move(m,m)
cnt=cnt-1
-
- #-------------------------------------------------------------
r=0
start=time.time()
- #-------------------------------------------------------------
while 1:
- chngImg()
+# This loop is the 'main event' so to speak, as it is the section that is
+# measured in terms of frames per second
+
+ cnt=make # For each 'ball' icon loaded
+ while cnt>0: # Cycle and check if the 'ball' should bounce off the wall
+ print cnt
+ img[cnt,0]=switcher.get(i,None)
+ if img[cnt,1].left < 0 or img[cnt,1].right > width:
+ img[cnt,2]=[ -img[cnt,2][0], img[cnt,2][1] ]
+ if img[cnt,1].top < 0 or img[cnt,1].bottom > height:
+ img[cnt,2]=[ img[cnt,2][0], -img[cnt,2][1] ]
+ img[cnt,1] = img[cnt,1].move(img[cnt,2])
+# Move the 'ball' image accordingly, plot the change
+ screen.blit(img[cnt,0],img[cnt,1])
+ cnt=cnt-1
+ pygame.display.flip()
+# "Make it so, number two," on those changes above
i=i+1
if i>9: i=1
-
- collision()
screen.fill(background)
-
r=r+1
if r>500: break
-
- #-------------------------------------------------------------
+# After 500 frames, we print the average frame rate to the terminal
print 1/((time.time()-start)/r)
trialthis=trialthis-1
-
-#-----------------------------------------------------------------
t=t+1
- print ""
-
-#-----------------------------------------------------------------
-#-----------------------------------------------------------------
diff --git a/devtools/ScaleTypeTest/scaleTest.py~ b/devtools/ScaleTypeTest/scaleTest.py~
new file mode 100644
index 0000000..76e87e0
--- /dev/null
+++ b/devtools/ScaleTypeTest/scaleTest.py~
@@ -0,0 +1,133 @@
+#! /usr/bin/env python
+import pygame, time
+pygame.init()
+
+print "Scale Test - Authors Dave Silverman and Scott Mengel"
+print "Set size window to 600 x 400 px"
+print "Running..."
+
+
+
+#--------------------------------------------------------------
+#CONSTANTS AND VARIABLES
+
+make=input("How many images would you like to load?\n>")
+trial=input("How many runs per trial?\n>")
+sizeTo=input("What would you like to resize to? Seperate with a comma, eg: x,y\n>" )
+
+img={}
+ft="" #filetype
+r=0 #frame refreshes
+i=1 #cycles images
+size = width, height = 600,400 #screen sizes
+t=0 #trial number n
+colorkey=(255, 152, 0)
+
+ftArr=[ ["bmp","BMP16100/"] , ["bmp","BMP16173/"] , ["bmp","BMP16200/"] , ["bmp","BMP16400/"] ,["bmp","BMP24100/"] , ["bmp","BMP24173/"] , ["bmp","BMP24200/"] , ["bmp","BMP24400/"] , ["gif","GIF100/"] , ["gif","GIF173/"] , ["gif","GIF200/"] , ["gif","GIF400/"] , ["gif","GIFT100/"] , ["gif","GIFT173/"] , ["gif","GIFT200/"] , ["gif","GIFT400/"] , ["png","PNG100/"] , ["png","PNG173/"] , ["png","PNG200/"] , ["png","PNG400/"] , ["png","PNGT100/"] , ["png","PNGT173/"] , ["png","PNGT200/"] , ["png","PNGT400/"] ]
+
+screen = pygame.display.set_mode(size) #Screen Set 600x400
+background = 152, 251, 152 # pale green
+
+
+#-------------------------------------------------------------
+#The switch function
+
+def chngImg():
+ cnt=make
+ while cnt>0:
+ """switcher = {
+ 1: pygame.transform.scale( pygame.image.load( "%s2.%s"%( ft[1],ft[0] ) ) ,(sizeTo[0],sizeTo[1] ),
+ 2: pygame.transform.scale( pygame.image.load("%s3.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
+ 3: pygame.transform.scale( pygame.image.load("%s4.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
+ 4: pygame.transform.scale( pygame.image.load("%s5.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
+ 5: pygame.transform.scale( pygame.image.load("%s6.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
+ 6: pygame.transform.scale( pygame.image.load("%s7.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
+ 7: pygame.transform.scale( pygame.image.load("%s8.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
+ 8: pygame.transform.scale( pygame.image.load("%s9.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ),
+ 9: pygame.transform.scale( pygame.image.load("%s1.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] )
+ }
+ """
+ img[cnt,0]=switcher.get(i,pygame.image.load("%s1.%s"%(ft[1],ft[0])))
+# img[cnt,0] = pygame.transform.scale(img[cnt,0],(sizeTo[0], sizeTo[1]))
+ cnt=cnt-1
+
+#-----------------------------------------------------------------
+#- Collision detection -------------------------------------------
+
+def collision():
+ cnt=make
+ while cnt>0:
+ if img[cnt,1].left < 0 or img[cnt,1].right > width:
+ img[cnt,2]=[ -img[cnt,2][0], img[cnt,2][1] ]
+ if img[cnt,1].top < 0 or img[cnt,1].bottom > height:
+ img[cnt,2]=[ img[cnt,2][0], -img[cnt,2][1] ]
+ img[cnt,1] = img[cnt,1].move(img[cnt,2])
+ screen.blit(img[cnt,0],img[cnt,1])
+ cnt=cnt-1
+ pygame.display.flip()
+
+
+#-----------------------------------------------------------------
+#- Number of dashed lined relates to loops -----------------------
+
+while 1:
+ cnt=make
+ ft=ftArr[t]
+ print "Testing: "+ft[1]+" extension "+ft[0]
+ trialthis=trial
+ start=time.time()
+ switcher = {
+ 1: pygame.transform.scale( pygame.image.load( "%s2.%s"%( ft[1],ft[0] ) ),(sizeTo[0],sizeTo[1] )),
+ 2: pygame.transform.scale( pygame.image.load("%s3.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] )),
+ 3: pygame.transform.scale( pygame.image.load("%s4.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] )),
+ 4: pygame.transform.scale( pygame.image.load("%s5.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] )),
+ 5: pygame.transform.scale( pygame.image.load("%s6.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] )),
+ 6: pygame.transform.scale( pygame.image.load("%s7.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] )),
+ 7: pygame.transform.scale( pygame.image.load("%s8.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] )),
+ 8: pygame.transform.scale( pygame.image.load("%s9.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] )),
+ 9: pygame.transform.scale( pygame.image.load("%s1.%s"%(ft[1],ft[0])),(sizeTo[0],sizeTo[1] ))
+ }
+ print "Time taken to load this test at ",
+ print sizeTo
+ print " pixels was "
+ print time.time()-start
+
+#-----------------------------------------------------------------
+ while trialthis>0:
+
+ #-------------------------------------------------------------
+ while cnt>0:
+ img[cnt,0]= pygame.image.load("%s1.%s"%(ft[1],ft[0])) #image.load
+ img[cnt,0] = pygame.transform.scale(img[cnt,0],(sizeTo[0], sizeTo[1]))
+ img[cnt,1]= img[cnt,0].get_rect()
+ img[cnt,2]= [2,2] #speed
+ m=cnt*40 # named m cause i wanted some m&ms
+ img[cnt,1]=img[cnt,1].move(m,m) #see? it wasn't as tastey though
+ cnt=cnt-1
+
+ #-------------------------------------------------------------
+ r=0
+ start=time.time()
+
+ #-------------------------------------------------------------
+ while 1:
+ chngImg()
+ i=i+1
+ if i>9: i=1
+
+ collision()
+ screen.fill(background)
+
+ r=r+1
+ if r>500: break
+
+ #-------------------------------------------------------------
+ print 1/((time.time()-start)/r)
+ trialthis=trialthis-1
+
+#-----------------------------------------------------------------
+ t=t+1
+ print ""
+
+#-----------------------------------------------------------------
+#-----------------------------------------------------------------