diff --git a/bindings/GeometryDash.bro b/bindings/GeometryDash.bro index 2c3519a5..7d432bc3 100644 --- a/bindings/GeometryDash.bro +++ b/bindings/GeometryDash.bro @@ -2442,7 +2442,7 @@ class GJGameLevel : cocos2d::CCNode { void dataLoaded(DS_Dictionary* dict) = mac 0x2dc0e0, win 0xbded0, ios 0x6fca4; GJDifficulty getAverageDifficulty() = win 0xbd9b0; gd::string getUnpackedLevelDescription() = mac 0x2DDB50, win 0xbf890; - gd::string lengthKeyToString(int key) = win 0xbd910; + static gd::string lengthKeyToString(int key) = mac 0x2DBBD0, win 0xbd910; static GJGameLevel* getCurrent() { auto playLayer = PlayLayer::get(); @@ -2823,6 +2823,11 @@ class GJSearchObject : cocos2d::CCNode { bool m_songFilter; } +[[link(android)]] +class GJSongBrowser : GJDropDownLayer, FLAlertLayerProtocol { + static GJSongBrowser* create(LevelSettingsObject* levelSettingsObject) = mac 0x3685D0, win 0x14CB20; +} + [[link(android)]] class GJSpecialColorSelect { static const char* textForColorIdx(int id) = mac 0x383a50, win 0x14e1d0, ios 0x113f6c; @@ -3050,6 +3055,15 @@ class GameLevelManager : cocos2d::CCNode { const char* getAccountCommentKey(int a2, int a3){ return cocos2d::CCString::createWithFormat("a_%i_%i", a2, a3)->getCString(); } + bool getBoolForKey(char const* key) { + return m_searchFilters->valueForKey(key)->boolValue(); + } + int getIntForKey(char const* key) { + return m_searchFilters->valueForKey(key)->intValue(); + } + void setIntForKey(int value, char const* key) { + m_searchFilters->setObject(cocos2d::CCString::createWithFormat("%i", value), key); + } inline static GameLevelManager* get() { return GameLevelManager::sharedState(); @@ -4605,10 +4619,20 @@ class MenuLayer : cocos2d::CCLayer, FLAlertLayerProtocol, GooglePlayDelegate { class MessageListDelegate {} [[link(android)]] -class MoreSearchLayer : FLAlertLayer { +class MoreSearchLayer : FLAlertLayer, TextInputDelegate { static MoreSearchLayer* create() = mac 0x388180, win 0x182520; virtual bool init() = mac 0x3896b0, win 0x1825c0; void onClose(cocos2d::CCObject*) = mac 0x38aa40, win 0x1848f0; + void onSongMode(cocos2d::CCObject*) = mac 0x38b030, win 0x1842d0; + void onSongFilter(cocos2d::CCObject*) = mac 0x38aea0, win 0x183e30; + + cocos2d::CCLabelBMFont* m_audioTrackName; + CCMenuItemSpriteExtra* m_songLeftBtn; + CCMenuItemSpriteExtra* m_songRightBtn; + CCMenuItemSpriteExtra* m_normalBtn; + CCMenuItemSpriteExtra* m_customBtn; + CCTextInputNode* m_enterSongID; + } [[link(android)]] @@ -4647,6 +4671,7 @@ class MusicDownloadManager : cocos2d::CCNode, PlatformDownloadDelegate { cocos2d::CCArray* getDownloadedSongs() = win 0x195640; void songStateChanged() = win 0x194d90; void onGetSongInfoCompleted(gd::string, gd::string) = mac 0x2eec60; + bool isSongDownloaded(int songID) = mac 0x2F0E10, win 0x195FF0; cocos2d::CCDictionary* m_unknownDict; cocos2d::CCArray* m_handlers; diff --git a/loader/test/members/Android.cpp b/loader/test/members/Android.cpp index dd8ff7b5..d7e61a34 100644 --- a/loader/test/members/Android.cpp +++ b/loader/test/members/Android.cpp @@ -33,4 +33,7 @@ GEODE_MEMBER_CHECK(EditorUI, m_updateTimeMarkers, 0x1a4); GEODE_MEMBER_CHECK(EditorUI, m_selectedObjects, 0x1bc); GEODE_MEMBER_CHECK(EditorUI, m_selectedObject, 0x2c4); +GEODE_MEMBER_CHECK(MoreSearchLayer, m_enterSongID, 0x1E4); +GEODE_MEMBER_CHECK(MoreSearchLayer, m_songLeftBtn, 0x1D4); + #endif \ No newline at end of file