github geode-sdk/geode v1.0.0-beta.6
1.0.0-beta.6

latest releases: nightly, v4.10.0, v4.9.0...
2 years ago

This release brings an overhaul of the layouts system, making it finally production-ready, aswell as applying layouts to many common layers.

Changelog

  • Reworked layouts from the ground up - see the docs page for more information about how the new system works (#137)
  • Update the IDs for a bunch of layers, aswell as adding some predefined layouts (3f64b98, ef9e741, a78bc0c, cb1a6f1, ea037a9, f7ddf0a, ...)
  • Add IDs & layouts to EditorPauseLayer (12d88ae)
  • Add CCNode::insertBefore and CCNode::insertAfter for adding children before/after existing ones (eb10eca, 4613af6)
  • Add CCSize::aspect convenience method
  • Add Mod::getResourcesDir for getting a mod's runtime resources directory (where [mod.json].resources.files are placed) (0055032)
  • Add Mod::addCustomSetting for convenience in registering custom settings (7089194)
  • Add file::readDirectory as a sanely named alternative to file::listFiles (9f60091)
  • Move GEODE_DLL to the structs themselves in JsonValidation (06bc6fd)
  • Versions now support tag numbers & version tags are now used in comparisons. This change does not affect old betas, which still internally report their version as just v1.0.0-beta, but starting with this beta the version is correctly reported as v1.0.0-beta.6 and correctly compared against other versions (bbbf332)
  • Loader::getLoadedMod and Loader::isModLoaded now only return if the mod is also enabled (3222097)
  • Geode's internal mod representation is now included in the loader's loaded mods list (4261e99)
  • Fix settings value changes not being broadcast. This causes an API break relating to custom settings; SettingValue now requires the owner mod ID in its constructor (7089194)
  • Fix some warnings (9c9706b, f7bfa21)
  • Fix CCNode::swapChildIndices (ba0851e)
  • Fix typeinfo_cast causing a crash if passed a nullptr (f4a3258)
  • Fix ranges::reverse causing UB (ffd50eb)
  • Other fixes & improvements (cb00c21)

Bindings

  • Add CCEGLView::getDisplaySize on Windows (5a1545e)
  • Add GameManager::getFontTexture on Mac (fb11ea3)
  • Add m_collidedSlope, m_isCheckpointQueued, m_hasHitRing, m_objectSnappedTo, m_checkpoint, m_hasHitPortal, m_isOnSlope, m_wasOnSlope to PlayerObject (fb11ea3, 14d0ead)
  • Add CCCircleWave::m_color (3be7ae8)
  • Add GameLevelManager::downloadLevel on Windows (3be7ae8)
  • Add GameLevelManager::hasDownloadedLevel on Windows (3be7ae8)
  • Add GameLevelManager::getSavedLevel on Windows (3be7ae8)
  • Add GameLevelManager::saveLevel on Windows (fcfbd01)
  • Add LevelInfoLayer::downloadLevel on Windows (fcfbd01)
  • Add GameSoundManager::get (3be7ae8)
  • Add MenuLayer::create (3be7ae8)
  • Add EditorPauseLayer::updateSongButton and EditorPauseLayer::onSong on Windows & Mac (262c15d)
  • Give proper names to EditorPauseLayer::m_guidelinesOffButton and EditorPauseLayer::m_guidelinesOnButton (262c15d)
  • Fix GameManager::resolutionForKey return type (5a1545e)

Don't miss a new geode release

NewReleases is sending notifications on new releases.