This commit is before a restructuring to not have it in the ugly SDL
dependencies directory where changes will be lost.
* Temporarily disabled puzzle loading until I get platform-independent
file loading set up (fopen doesn't work on Android)
* Removed Decompression dependency from runtime
* Replace -1 with g-empty-cell to fix Android misinterpreting
-1 == (thing which is -1) as false
* Replace printf with SDL_Log for Android logging
* Fix potential null ptr access by checking for g-num-puzzles
* Move KittyGridlockInitialCatAssets.bmp into data/Pieces.bmp, for
consistency (makes it easier to copy all data to Android)
* Add compile-time pre-build hooks for generating data/puzzles.txt as
well as copying assets/code to the Android project
* Print which surfaces are failing to load
* Add build config label to make it easier to only copy Kitty Gridlock
source files for the Android build
* Reformatted code
* Pieces can now be moved, though there is a bug with the constrain
code constraining a bit too much
* Added timing code to confirm that the game was running at 4,000hz to
5000hz, which was causing annoying GPU coil whine. I arbitrarily sleep
now to get ~90hz instead. I have a TODO item to actually calculate a
good sleep value
This changes the size of the occupied state array from 288 bytes to
36, which just seemed criminal not to do.
Also ensure memset is setting the whole thing, not just the number of
elements' worth in bytes.
Note that this required modifying Ogre for
https://github.com/OGRECave/ogre-next/pull/186, which hasn't been
Unfortunately, I need to build relative to GameLib, because there are
way too many relative paths that depend on Cakelisp's current working
directory. I don't know yet how I would like to solve this.