- add CCArray::firstObject and CCArray::removeFirstObject
- add minizip zip headers and sources (going to add file::Zip class soon)
- redesign Notifications to be simpler
- rework Result to not have dual implementations
- Result::expect now has one default named argument for formatting the error in
- rewrote Loader to have a public loading API
- moved logging away from Loader
- moved texture path handling away from Loader into CCFileUtils, added new functions there for that
- bumped version to v0.7.0
- moved ModInfo to its own header
- added early loading support through mod.json instead of loader stuff
- wrote a custom Unzip implementation (essentially same as ZipUtils except with a much more simple and clean API)
- renamed `src/load` to `src/loader`
- other stuff i prolly forgor
- add TableView virtuals on windows
- rework events to match new events system
- rename NodeStringIDManager to NodeIDs and add a syntactically sugary NodeIDs::provideFor function
- change test mod to use event callbacks instead of exported ones
- add Loader::waitForModsToBeLoaded to ensure mods are loaded at startup before loading screen
- add Mod::saveData and Mod::loadData (these have to reworked wholly in v1.0.0 to be more reasonable)
- add ranges::indexOf
- fix ranges::move
- add CCFileUtils::removeAllPaths on mac
- make sure custom resources are loaded before GD
- reworked mod resource loading again
- added `Loader::addTexturePath` and `Loader::removeTexturePath` for texture pack managers to add search paths
- added `LayerBG.hpp` header with `createLayerBG` function for creating the blue background GD layers have
- add `CCFileUtils::get`
- turns out i was doing semver wrong. i'm deeply sorry. read: https://www.twitlonger.com/show/n_1ss44g2
- fix MenuLayer crashes related to node IDs
- remove `Loader::updateModResourcePaths` and `Loader::updateResourcePaths`. Loader minimum mod version is still v0.4.0 however, as you should not have used these ever.
- rework how mod resources are added
- loader checks if resources are correct at startup, if not, downloads them and replaces
- add sha256 to hash
- change hash to use paths instead of strings
- cmake rework; GeodeFile.cmake now checks CLI version
- add optional `DONT_INSTALL` argument to `create_geode_file`
- test mods are now not installed by default
- add package_geode_resources_now command for packaging resources at configure time and creating a header with their calculated hashes
supports user objects again through proxies + string IDs for nodes +
fix nightly folder in cmake + fix codegen not hooking cocos2d funcs +
add every missing virtual to GeometryDash.bro + tons of other addresses
to Popup and move setup to be last in init + add
GEODE_PLATFORM_SHORT_IDENTIFIER macro for the platform's identifier in
GitHub release zips + add GEODE_VERSION to cmake + move unzipTo from
Index to be an exported util in file namespace + add mod resources
directories in accordance with new CLI