* Fix a crash on Android with Align2Npot2
glGetString can be NULL. If stored in a string it triggers a SIGSEGV.
Instead do a basic strstr and verify the pointer
* Better Align2Npot2 check (+ performance)
Targets SDK 26 as required by the playstore.
Fixes screen auto-rotation closing game.
Hides on-screen navigation bar if present.
Update gradlew.
Fix display aspect on 18+/:9 displays (like a Samsung Galaxy S9).
Remove small app icons, not required.
Fix xml in unpacking activity.
Support Android permission: On Android 6.0+ you need to manually give write
permission (as required by google).
Background during unpacking (just a demo for now).
Material Design: no more Android 2 interface.
Immersive mode (Android 4.4+ - hide NavBar for fullscreen mode).
* Add signs with visible text
* Compress signs textures (-70.6%)
* Add lbm to convert old signs to new ones
* More sensible approach in legacy
* Check for sign text on block load
Missing text can also be fixed by punching the sign.
* Finally, detect sign type on placement
* Neaten code up slightly
Nodes:
Add savanna nodes (appear in non-mgv6 mapgens only):
Add 'dirt with dry grass'.
Add 'dry grass' (dry tall grass).
Textures were derived from the green grass textures.
Mapgen aliases:
desert_stone does not exist, use redsandstone.
desert_sand does not exist, use redsand.
sandstonebrick does not exist, use sandstone.
stair_sandstonebrick does not exist, use stair_sandstone.
Ores:
Generate bedrock in lava_source too.
Change desert_stone to redsandstone.
Biomes:
Change desert_stone to redsandstone.
Change desert_sand to redsand.
Decorations:
Make bonusbox chest appear on all mgv6 surface nodes.
Add bonusbox chest to non-mgv6 mapgens.
Replace redundant multiple grass decorations with an equivalent
single grass decoration, because only 1 length is used in MultiCraft.
Change desert_sand to redsand.
General format cleanup.