From 76410ed7c138ccbed9bc9cdfe00d9d08bbb0a4e2 Mon Sep 17 00:00:00 2001 From: user95401 <90561697+user95401@users.noreply.github.com> Date: Sun, 8 Sep 2024 12:46:49 +0400 Subject: [PATCH 01/84] Update GeometryDash.bro --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 364b5f740..766f93893 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -13825,7 +13825,7 @@ class ParentalOptionsLayer : FLAlertLayer { class ParticleGameObject : EnhancedGameObject { // virtual ~ParticleGameObject(); - static ParticleGameObject* create(); + static ParticleGameObject* create() = win 0x473a20; TodoReturn applyParticleSettings(cocos2d::CCParticleSystemQuad*); TodoReturn createAndAddCustomParticle(); From f0ff49e442fb31bf737b89798d4c53ded1d93a0f Mon Sep 17 00:00:00 2001 From: user95401 <90561697+user95401@users.noreply.github.com> Date: Sun, 8 Sep 2024 15:15:10 +0400 Subject: [PATCH 02/84] Update GeometryDash.bro --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 766f93893..113b32735 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -3904,7 +3904,7 @@ class EditorUI : cocos2d::CCLayer, FLAlertLayerProtocol, ColorSelectDelegate, GJ void createLoop(); void createMoveMenu() = win 0x116ee0, m1 0x40df0, imac 0x468a0; TodoReturn createNewKeyframeAnim(); - TodoReturn createObject(int, cocos2d::CCPoint) = win 0x10c3e0; + GameObject* createObject(int, cocos2d::CCPoint) = win 0x10c3e0; TodoReturn createOutlines(cocos2d::CCArray*); TodoReturn createPrefab(GJSmartTemplate*, gd::string, int); TodoReturn createRockBases(cocos2d::CCArray*) = win 0x12B590, imac 0x620050; From 1cd601f0a8f0d80ee1e56a647d62852cf11f079c Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Mon, 9 Sep 2024 17:45:10 -0400 Subject: [PATCH 03/84] AccountLayer::doBackup and AccountLayer::doSync (#745) --- bindings/2.206/GeometryDash.bro | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 364b5f740..dee8361f1 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -34,8 +34,16 @@ class AccountLayer : GJDropDownLayer, GJAccountDelegate, GJAccountBackupDelegate static AccountLayer* create() = win 0x7bf70; TodoReturn createToggleButton(gd::string, cocos2d::SEL_MenuHandler, bool, cocos2d::CCMenu*, cocos2d::CCPoint); - void doBackup(); - void doSync(); + void doBackup() = win inline, m1 0xb82c4, imac 0xd06a0 { + this->updatePage(false); + if (!GJAccountManager::sharedState()->getAccountBackupURL()) this->backupAccountFailed((BackupAccountError)-1, 0); + else this->showLoadingUI(); + } + void doSync() = win inline, m1 0xb83a0, imac 0xd0770 { + this->updatePage(false); + if (!GJAccountManager::sharedState()->getAccountSyncURL()) this->syncAccountFailed((BackupAccountError)-1, 0); + else this->showLoadingUI(); + } void exitLayer() { this->setKeypadEnabled(false); this->disableUI(); @@ -7419,8 +7427,8 @@ class GJAccountManager : cocos2d::CCNode { void dataLoaded(DS_Dictionary*) = imac 0xd7f90, m1 0xbf188; void encodeDataTo(DS_Dictionary*) = imac 0xd7f30, m1 0xbf130; void firstSetup(); - void getAccountBackupURL(); - void getAccountSyncURL(); + bool getAccountBackupURL() = win 0x1f25a0; + bool getAccountSyncURL() = win 0x1f3500; cocos2d::CCObject* getDLObject(char const*); gd::string getShaPassword(gd::string) = win 0x1F4FF0; void handleIt(bool, gd::string, gd::string, GJHttpType) = win 0x1f1590, imac 0xd2c80, m1 0xba5d4; From a65570e0efa96f7994da221853f84bde47c32638 Mon Sep 17 00:00:00 2001 From: Oleksandr Nemesh Date: Tue, 10 Sep 2024 17:55:43 +0300 Subject: [PATCH 04/84] fix FMODAudioEngine and PlayerObject depends --- bindings/2.206/GeometryDash.bro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index dee8361f1..909288c8b 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -4946,7 +4946,7 @@ class FMODQueuedEffect { PAD = win 0x70, android32 0x48, android64 0x58; } -[[link(android), depends(FMODAudioState), depends(FMODMusic), depends(FMODSound), depends(FMODQueuedEffect)]] +[[link(android), depends(FMODAudioState), depends(FMODSoundState), depends(FMODMusic), depends(FMODSound), depends(FMODQueuedEffect), depends(FMODQueuedMusic), depends(FMODSoundTween)]] class FMODAudioEngine : cocos2d::CCNode { // virtual ~FMODAudioEngine(); FMODAudioEngine() = win 0x52250, ios 0x145344; @@ -14101,7 +14101,7 @@ class PlayerFireBoostSprite : cocos2d::CCSprite { float m_size; } -[[link(android)]] +[[link(android), depends(GJPointDouble)]] class PlayerObject : GameObject, AnimatedSpriteDelegate { // virtual ~PlayerObject(); // PlayerObject() = ios 0x23e4dc; From f43dec6a2bc3a7f12bfe6444e69e37d3e0ec6a1e Mon Sep 17 00:00:00 2001 From: Oleksandr Nemesh Date: Tue, 10 Sep 2024 19:20:10 +0300 Subject: [PATCH 05/84] GJBaseGameLayer::lightningFlash --- bindings/2.206/GeometryDash.bro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 909288c8b..c7989c490 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -7724,8 +7724,8 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { void increaseBatchNodeCapacity() = win 0x1fd9d0; bool isFlipping(); bool isPlayer2Button(int); - TodoReturn lightningFlash(cocos2d::CCPoint, cocos2d::ccColor3B); - TodoReturn lightningFlash(cocos2d::CCPoint, cocos2d::CCPoint, cocos2d::ccColor3B, float, float, int, bool, float) = imac 0x1154f0; + void lightningFlash(cocos2d::CCPoint to, cocos2d::ccColor3B color); + void lightningFlash(cocos2d::CCPoint from, cocos2d::CCPoint to, cocos2d::ccColor3B color, float lineWidth, float duration, int displacement, bool flash, float opacity) = win 0x235db0, imac 0x1154f0, m1 0xf2a4c; TodoReturn loadGroupParentsFromString(GameObject*, gd::string); void loadLevelSettings() = win 0x229e30, imac 0x14cce0, m1 0x11edfc; void loadStartPosObject() = win 0x225710; From 6fbdcef14df4a5b1a711ec75b149b55a9817db72 Mon Sep 17 00:00:00 2001 From: ninXout <58670749+ninXout@users.noreply.github.com> Date: Tue, 10 Sep 2024 13:29:15 -0400 Subject: [PATCH 06/84] some mac stuff --- bindings/2.206/Cocos2d.bro | 38 ++++++++++++++++----------------- bindings/2.206/GeometryDash.bro | 2 +- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index 2e15b9bb0..799a6a4d8 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -376,7 +376,7 @@ class cocos2d::CCScene { [[link(win, android)]] class cocos2d::CCSet { - static cocos2d::CCSet* create(); + static cocos2d::CCSet* create() = m1 0x6c59d4, imac 0x7bfc00; //CCSet(cocos2d::CCSet const&) = imac 0x7bf970, m1 0x6c576c; CCSet() = imac 0x7bf920, m1 0x6c570c; @@ -2691,24 +2691,24 @@ class cocos2d::CCTextFieldTTF { void setDelegate(cocos2d::CCTextFieldDelegate* var); - virtual void draw(); - virtual const cocos2d::ccColor3B& getColorSpaceHolder(); - virtual void setColorSpaceHolder(const cocos2d::ccColor3B& color); - virtual const char* getPlaceHolder(); - virtual void setPlaceHolder(const char* text); - virtual void setSecureTextEntry(bool value); - virtual bool isSecureTextEntry(); - - virtual void setString(const char* text); - virtual const char* getString(); - - virtual bool attachWithIME(); - virtual bool detachWithIME(); - virtual bool canAttachWithIME(); - virtual bool canDetachWithIME(); - virtual void insertText(const char* text, int len, cocos2d::enumKeyCodes keyCode); - virtual void deleteBackward(); - virtual const char* getContentText(); + virtual void draw() = m1 0x21e620; + virtual const cocos2d::ccColor3B& getColorSpaceHolder() = m1 0x21e6e0; + virtual void setColorSpaceHolder(const cocos2d::ccColor3B& color) = m1 0x21e6e8; + virtual const char* getPlaceHolder() = m1 0x21eae8; + virtual void setPlaceHolder(const char* text) = m1 0x21e9a0; + virtual void setSecureTextEntry(bool value) = m1 0x21eb00; + virtual bool isSecureTextEntry() = m1 0x21eb54; + + virtual void setString(const char* text) = m1 0x21e6fc; + virtual const char* getString() = m1 0x21e970; + + virtual bool attachWithIME() = m1 0x21dd40; + virtual bool detachWithIME() = m1 0x21ddcc; + virtual bool canAttachWithIME() = m1 0x21de58; + virtual bool canDetachWithIME() = m1 0x21decc; + virtual void insertText(const char* text, int len, cocos2d::enumKeyCodes keyCode) = m1 0x21df40; + virtual void deleteBackward() = m1 0x21e2f8; + virtual const char* getContentText() = m1 0x21e5f0; } [[link(win, android)]] diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index c7989c490..412b80c0f 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -7183,7 +7183,7 @@ class GameToolbox { static CCMenuItemToggler* createToggleButton(gd::string label, cocos2d::SEL_MenuHandler selector, bool state, cocos2d::CCMenu* menu, cocos2d::CCPoint position, cocos2d::CCNode* parent, cocos2d::CCNode* labelParent, float buttonScale, float maxLabelScale, float maxLabelWidth, cocos2d::CCPoint labelOffset, char const* font, bool labelTop, int labelTag, cocos2d::CCArray* container) = win 0x63080, imac 0x4f9b80, m1 0x4528d0, ios 0x4a4f8; static bool doWeHaveInternet(); static TodoReturn easeToText(int); - static TodoReturn fast_rand_0_1() = imac 0x4fc6c0; + static float fast_rand_0_1() = imac 0x4fc6c0, m1 0x4551ac; static TodoReturn fast_rand_minus1_1(); static TodoReturn fast_rand(); static void fast_srand(uint64_t) = m1 0x45516c, imac 0x4fc670; From 7327a4a9cd46b76862662e1daae11a4c969c5ec9 Mon Sep 17 00:00:00 2001 From: dankmeme01 <42031238+dankmeme01@users.noreply.github.com> Date: Tue, 10 Sep 2024 20:41:31 +0200 Subject: [PATCH 07/84] CountTriggerAction --- bindings/2.206/GeometryDash.bro | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 412b80c0f..c8e1a2b76 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -2646,7 +2646,15 @@ class ConfigureValuePopupDelegate { class CountTriggerAction { // CountTriggerAction(CountTriggerAction&&); - PAD = win 0x24; + bool m_unk0; + int m_previousCount; + int m_targetCount; + int m_targetGroup; + bool m_unk10; + int m_unk14; + int m_unk18; + int m_itemID; + bool m_multiActivate; gd::vector m_unkVecInt; } @@ -8811,14 +8819,14 @@ class GJEffectManager : cocos2d::CCNode { virtual bool init() = m1 0x275984, imac 0x2d8d70; - void* m_unk140; + TriggerEffectDelegate* m_triggerEffectDelegate; cocos2d::CCDictionary* m_unkObject148; cocos2d::CCDictionary* m_unkDict150; gd::vector m_pulseEffectVector; // 0x158 gd::unordered_map> m_pulseEffectMap; // 0x170 gd::unordered_map m_opacityEffectMap; // 0x1a8 gd::vector m_unkVector1e0; - gd::unordered_map> m_unkMap1f8; + gd::unordered_map> m_countTriggerActions; gd::vector m_unkVector230; gd::vector m_unkVector248; cocos2d::CCDictionary* m_colorActionDict; From 873432b77b14bf197ddeb76735a7b93a15663a0f Mon Sep 17 00:00:00 2001 From: camila314 <47485054+camila314@users.noreply.github.com> Date: Tue, 10 Sep 2024 13:50:19 -0500 Subject: [PATCH 08/84] CCGLProgram bindings for m1 --- bindings/2.206/Cocos2d.bro | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index 799a6a4d8..a6340bd69 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -748,7 +748,7 @@ class cocos2d::CCFileUtils { [[link(win, android)]] class cocos2d::CCGLProgram { - bool initWithVertexShaderByteArray(char const*, char const*); + bool initWithVertexShaderByteArray(char const*, char const*) = m1 0x3a71ac; bool initWithVertexShaderFilename(char const*, char const*); unsigned int const getProgram(); @@ -773,17 +773,17 @@ class cocos2d::CCGLProgram { void setUniformsForBuiltins() = m1 0x3a8704, imac 0x435940, ios 0x13c230; // CCGLProgram(cocos2d::CCGLProgram const&); - // CCGLProgram(); - void addAttribute(char const*, unsigned int); + CCGLProgram() = m1 0x3a6fd8; + void addAttribute(char const*, unsigned int) = m1 0x3a744c; bool compileShader(unsigned int*, unsigned int, char const*); char const* description(); char const* fragmentShaderLog(); - bool link(); + bool link() = m1 0x3a75e8; // char const* logForOpenGLObject(unsigned int, void (__cdecl*)(unsigned int, unsigned int, int*), void (__cdecl*)(unsigned int, int, int*, char*)); char const* programLog(); void reset() = m1 0x3a89bc, imac 0x435c70; bool updateUniformLocation(int, void*, unsigned int); - void updateUniforms(); + void updateUniforms() = m1 0x3a7460; void use() = m1 0x3a758c, imac 0x434970, ios 0x13b990; char const* vertexShaderLog(); } From 71cc85c796c4f1409eb0cf0037453c217018cffe Mon Sep 17 00:00:00 2001 From: camila314 <47485054+camila314@users.noreply.github.com> Date: Tue, 10 Sep 2024 13:59:50 -0500 Subject: [PATCH 09/84] destructor for CCGLProgram --- bindings/2.206/Cocos2d.bro | 1 + 1 file changed, 1 insertion(+) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index a6340bd69..3d85d2153 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -773,6 +773,7 @@ class cocos2d::CCGLProgram { void setUniformsForBuiltins() = m1 0x3a8704, imac 0x435940, ios 0x13c230; // CCGLProgram(cocos2d::CCGLProgram const&); + ~CCGLProgram() = m1 0x3a7194; CCGLProgram() = m1 0x3a6fd8; void addAttribute(char const*, unsigned int) = m1 0x3a744c; bool compileShader(unsigned int*, unsigned int, char const*); From 70fb081a01ad4fd16ebd492660b0e2d1933a0861 Mon Sep 17 00:00:00 2001 From: Oleksandr Nemesh Date: Tue, 10 Sep 2024 22:01:05 +0300 Subject: [PATCH 10/84] fix two m1 addresses (#746) * EditorUI::constrainGameLayerPosition m1 * fix pushButton m1 --- bindings/2.206/GeometryDash.bro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index c8e1a2b76..dc1b1b766 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -3906,7 +3906,7 @@ class EditorUI : cocos2d::CCLayer, FLAlertLayerProtocol, ColorSelectDelegate, GJ TodoReturn closeLiveHSVSelect(); void colorSelectClosed(cocos2d::ccColor3B); void constrainGameLayerPosition(); - void constrainGameLayerPosition(float, float) = win 0x11e960, imac 0x2ae30; + void constrainGameLayerPosition(float, float) = win 0x11e960, imac 0x2ae30, m1 0x2bc50; TodoReturn convertKeyBasedOnNeighbors(int, int, cocos2d::CCPoint, cocos2d::CCArray*); TodoReturn convertToBaseKey(int); void copyObjects(cocos2d::CCArray* objects, bool copyColors, bool sort); @@ -14214,7 +14214,7 @@ class PlayerObject : GameObject, AnimatedSpriteDelegate { void preCollision() = m1 0x3855d8, imac 0x40d7d0; bool preSlopeCollision(float, GameObject*) = win 0x36d370; void propellPlayer(float, bool, int) = win 0x37d860, imac 0x424240, m1 0x398e28; - void pushButton(PlayerButton) = win 0x375f70, imac 0x41d330, m1 0x27f4b0; + void pushButton(PlayerButton) = win 0x375f70, imac 0x41d330, m1 0x392760; TodoReturn pushDown(); void pushPlayer(float); TodoReturn redirectDash(float); From f4fc7eb6fcb0345bdadc090104f08fb34b9abc4e Mon Sep 17 00:00:00 2001 From: SorkoPiko Date: Wed, 11 Sep 2024 09:00:41 +1000 Subject: [PATCH 11/84] AccountLayer backup and sync return types (#747) --- bindings/2.206/GeometryDash.bro | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index dc1b1b766..cd2c929ad 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -71,10 +71,10 @@ class AccountLayer : GJDropDownLayer, GJAccountDelegate, GJAccountBackupDelegate virtual void customSetup() = win 0x7c0d0, m1 0xb6d88, imac 0xcf0e0; virtual void layerHidden() = win 0x7de20, m1 0xb8e88, imac 0xd12e0; - virtual TodoReturn backupAccountFinished() = win 0x7d500, m1 0xb8444, imac 0xd0830; - virtual TodoReturn backupAccountFailed(BackupAccountError, int) = win 0x7d6b0, m1 0xb8604, imac 0xd09f0; - virtual TodoReturn syncAccountFinished() = win 0x7d9c0, m1 0xb8974, imac 0xd0da0; - virtual TodoReturn syncAccountFailed(BackupAccountError, int) = win 0x7db80, m1 0xb8adc, imac 0xd0f20; + virtual void backupAccountFinished() = win 0x7d500, m1 0xb8444, imac 0xd0830; + virtual void backupAccountFailed(BackupAccountError, int) = win 0x7d6b0, m1 0xb8604, imac 0xd09f0; + virtual void syncAccountFinished() = win 0x7d9c0, m1 0xb8974, imac 0xd0da0; + virtual void syncAccountFailed(BackupAccountError, int) = win 0x7db80, m1 0xb8adc, imac 0xd0f20; virtual TodoReturn accountStatusChanged() = win 0x7d120, m1 0xb8430, imac 0xd0800; virtual void FLAlert_Clicked(FLAlertLayer*, bool) = win 0x7dd10, m1 0xb8d58, imac 0xd11c0; @@ -7403,8 +7403,8 @@ class GhostTrailEffect : cocos2d::CCNode { [[link(android)]] class GJAccountBackupDelegate { - virtual TodoReturn backupAccountFinished(); - virtual TodoReturn backupAccountFailed(BackupAccountError, int); + virtual void backupAccountFinished(); + virtual void backupAccountFailed(BackupAccountError, int); } [[link(android)]] @@ -7553,8 +7553,8 @@ class GJAccountSettingsLayer : FLAlertLayer, TextInputDelegate { [[link(android)]] class GJAccountSyncDelegate { - virtual TodoReturn syncAccountFinished(); - virtual TodoReturn syncAccountFailed(BackupAccountError, int); + virtual void syncAccountFinished(); + virtual void syncAccountFailed(BackupAccountError, int); } [[link(android)]] From b51e8145d107fd4aa2831c77e906765288a7ca8c Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Thu, 12 Sep 2024 00:49:46 -0400 Subject: [PATCH 12/84] a few bindings (#748) --- bindings/2.206/GeometryDash.bro | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index cd2c929ad..39dfa5331 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -5545,7 +5545,7 @@ class GameLevelManager : cocos2d::CCNode { void getUserList(UserListType) = win 0x15c5e0, m1 0x4aca14, imac 0x55df10; void getUserMessages(bool, int, int); void getUsers(GJSearchObject*) = win 0x153920, m1 0x4a32f0, imac 0x553eb0; - void gotoLevelPage(GJGameLevel*) = win 0x143f60; + void gotoLevelPage(GJGameLevel*) = win 0x143f60, m1 0x490f94, imac 0x53eee0; void handleIt(bool, gd::string, gd::string, GJHttpType) = win 0x13e4c0, imac 0x523b00, m1 0x478b88; void handleItDelayed(bool, gd::string, gd::string, GJHttpType); void handleItND(cocos2d::CCNode*, void*); @@ -11535,14 +11535,19 @@ class LeaderboardsLayer : cocos2d::CCLayer, LeaderboardManagerDelegate, FLAlertL bool init(LeaderboardState) = win 0x2aed30, m1 0x46fd08, imac 0x51a7d0, ios 0x3b976c; bool isCorrect(char const*); - void onBack(cocos2d::CCObject* sender); + void onBack(cocos2d::CCObject* sender) = win 0x2b0f30, m1 0x470a18, imac 0x51b560; void onCreators(cocos2d::CCObject* sender); void onGlobal(cocos2d::CCObject* sender); void onInfo(cocos2d::CCObject* sender); void onTop(cocos2d::CCObject* sender); void onWeek(cocos2d::CCObject* sender); void refreshTabs() = win 0x2afce0; - static cocos2d::CCScene* scene(LeaderboardState); + static cocos2d::CCScene* scene(LeaderboardState state) = win inline, m1 0x46fb50, imac 0x51a5a0 { + auto scene = cocos2d::CCScene::create(); + auto layer = LeaderboardsLayer::create(state); + scene->addChild(layer); + return scene; + } void selectLeaderboard(LeaderboardState) = win 0x2afe10, imac 0x51b440, m1 0x4708ec; void setupLevelBrowser(cocos2d::CCArray*) = win 0x2afb80; TodoReturn setupTabs(); From c6c9e9dea1def516fd16f873e698cc710c1da4ef Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Thu, 12 Sep 2024 00:50:23 -0400 Subject: [PATCH 13/84] GJColorSetupLayer and GJSpecialColorSelect (#741) * GJColorSetupLayer * GJSpecialColorSelect --- bindings/2.206/GeometryDash.bro | 45 +++++++++++++++++++++++---------- 1 file changed, 31 insertions(+), 14 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 39dfa5331..60db2e43f 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -8554,18 +8554,32 @@ class GJChestSprite : cocos2d::CCSprite { class GJColorSetupLayer : FLAlertLayer, ColorSelectDelegate, FLAlertLayerProtocol { // virtual ~GJColorSetupLayer(); - static GJColorSetupLayer* create(LevelSettingsObject*); + static GJColorSetupLayer* create(LevelSettingsObject*) = win 0x2445c0, m1 0x1b7184, imac 0x205b50; - bool init(LevelSettingsObject*); - void onClose(cocos2d::CCObject* sender); - void onColor(cocos2d::CCObject* sender); - void onPage(cocos2d::CCObject* sender); - void showPage(int); - void updateSpriteColor(ColorChannelSprite*, cocos2d::CCLabelBMFont*, int) = ios 0x19a2e8; - TodoReturn updateSpriteColors(); + bool init(LevelSettingsObject*) = win 0x244700, m1 0x1b72b0, imac 0x205ce0; + void onClose(cocos2d::CCObject* sender) = win 0x245390, m1 0x1b7c50, imac 0x2066e0; + void onColor(cocos2d::CCObject* sender) = win 0x245240, m1 0x1b7958, imac 0x2063f0; + void onPage(cocos2d::CCObject* sender) = win 0x2451f0, m1 0x1b7bb4, imac 0x206640; + void showPage(int) = win 0x245320, m1 0x1b7cb0, imac 0x206730; + void updateSpriteColor(ColorChannelSprite*, cocos2d::CCLabelBMFont*, int) = win 0x245080, m1 0x1b7d14, imac 0x2067a0, ios 0x19a2e8; + void updateSpriteColors() = win 0x244f60, m1 0x1b7a1c, imac 0x2064b0; virtual void keyBackClicked() = win 0x2453e0, m1 0x1b7dc8, imac 0x206870; virtual void colorSelectClosed(cocos2d::CCNode*) = win 0x245310, m1 0x1b7dbc, imac 0x206840; + + LevelSettingsObject* m_settingsObject; + cocos2d::CCDictionary* m_unk290; + cocos2d::CCDictionary* m_unk298; + cocos2d::CCArray* m_colorLabels; + cocos2d::CCArray* m_colorSprites; + int m_page; + int m_colorsPerPage; + int m_totalPages; + CCMenuItemSpriteExtra* m_prevButton; + CCMenuItemSpriteExtra* m_nextButton; + bool m_closeOnSelect; + ColorSetupDelegate* m_delegate; + int m_colorID; } [[link(android)]] @@ -10628,17 +10642,20 @@ class GJSongBrowser : GJDropDownLayer, FLAlertLayerProtocol, TableViewCellDelega class GJSpecialColorSelect : FLAlertLayer { // virtual ~GJSpecialColorSelect(); - static GJSpecialColorSelect* create(int, GJSpecialColorSelectDelegate*, ColorSelectType); + static GJSpecialColorSelect* create(int, GJSpecialColorSelectDelegate*, ColorSelectType) = win 0x2a5740, m1 0x551bcc, imac 0x631150; - TodoReturn getButtonByTag(int); - TodoReturn highlightSelected(ButtonSprite*); + ButtonSprite* getButtonByTag(int) = m1 0x553a84, imac 0x633ab0; + void highlightSelected(ButtonSprite*) = m1 0x553b14, imac 0x633b30; bool init(int, GJSpecialColorSelectDelegate*, ColorSelectType) = win 0x2a5850, m1 0x551cec, imac 0x6312c0; - void onClose(cocos2d::CCObject* sender); - void onSelectColor(cocos2d::CCObject* sender); + void onClose(cocos2d::CCObject* sender) = win 0x2a63f0, m1 0x553924, imac 0x633950; + void onSelectColor(cocos2d::CCObject* sender) = win 0x2a6310, m1 0x5539a8, imac 0x6339d0; static const char* textForColorIdx(int) = win 0x2a6490, m1 0x553980, imac 0x6339a0; - TodoReturn tryShowAd(); virtual void keyBackClicked() = win 0x2a6440, m1 0x553bc8, imac 0x633bf0; + + GJSpecialColorSelectDelegate* m_delegate; + int m_colorID; + cocos2d::CCArray* m_buttonSprites; } [[link(android)]] From 6718b519018db7b46275bfc845bc02797435f8df Mon Sep 17 00:00:00 2001 From: Fire <17692105+FireMario211@users.noreply.github.com> Date: Thu, 12 Sep 2024 16:50:52 +0000 Subject: [PATCH 14/84] for a certain mod --- bindings/2.206/GeometryDash.bro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 60db2e43f..21f407fc3 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -3909,7 +3909,7 @@ class EditorUI : cocos2d::CCLayer, FLAlertLayerProtocol, ColorSelectDelegate, GJ void constrainGameLayerPosition(float, float) = win 0x11e960, imac 0x2ae30, m1 0x2bc50; TodoReturn convertKeyBasedOnNeighbors(int, int, cocos2d::CCPoint, cocos2d::CCArray*); TodoReturn convertToBaseKey(int); - void copyObjects(cocos2d::CCArray* objects, bool copyColors, bool sort); + gd::string copyObjects(cocos2d::CCArray* objects, bool copyColors, bool sort) = win 0x10f0f0, imac 0x385ed0, m1 0x3143c, ios 0x3f1078; TodoReturn copyObjectsDetailed(cocos2d::CCArray*); cocos2d::CCArray* createCustomItems() = win 0xe0c80, imac 0x31990, m1 0x31cb4; TodoReturn createEdgeForObject(GameObject*, int); @@ -4031,7 +4031,7 @@ class EditorUI : cocos2d::CCLayer, FLAlertLayerProtocol, ColorSelectDelegate, GJ void onGroupSticky(cocos2d::CCObject* sender) = win 0x10ec80; void onGroupUp(cocos2d::CCObject* sender) = win 0x11b600; void onLockLayer(cocos2d::CCObject* sender) = win 0x11b790, m1 0x2d26c, imac 0x2cb20; - void onNewCustomItem(cocos2d::CCObject* sender) = win 0xe0530; + void onNewCustomItem(cocos2d::CCObject* sender) = win 0xe0530, imac 0x30b10, m1 0x30f28, ios 0x3f0dac; void onPaste(cocos2d::CCObject* sender) = win 0x10f610; void onPasteColor(cocos2d::CCObject* sender) = win 0x110860; void onPasteInPlace(cocos2d::CCObject* sender); From fd1495d3bc82e647833eff5e2b0239ad0fb27678 Mon Sep 17 00:00:00 2001 From: dankmeme01 <42031238+dankmeme01@users.noreply.github.com> Date: Thu, 12 Sep 2024 22:44:27 +0200 Subject: [PATCH 15/84] little bindings update --- bindings/2.206/GeometryDash.bro | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 21f407fc3..06eb3bf5b 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -7592,7 +7592,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { TodoReturn activatedAudioTrigger(SFXTriggerGameObject*, float); TodoReturn activateEventTrigger(EventLinkTrigger*, gd::vector const&); TodoReturn activateItemCompareTrigger(ItemTriggerGameObject*, gd::vector const&); - TodoReturn activateItemEditTrigger(ItemTriggerGameObject*); + void activateItemEditTrigger(ItemTriggerGameObject*) = win 0x224200; void activateObjectControlTrigger(ObjectControlGameObject*); TodoReturn activatePersistentItemTrigger(ItemTriggerGameObject*); void activatePlayerControlTrigger(PlayerControlGameObject*); @@ -12337,7 +12337,7 @@ class LevelOptionsLayer : GJOptionsLayer { void onSettings(cocos2d::CCObject* sender) = win 0x303f00, m1 0x2140a4, imac 0x26da20; virtual void valueDidChange(int, float) = win 0x3040e0, m1 0x214280, imac 0x26dcc0; - virtual TodoReturn getValue(int) = win 0x304100, m1 0x214298, imac 0x26dce0; + virtual float getValue(int) = win 0x304100, m1 0x214298, imac 0x26dce0; virtual void setupOptions() = win 0x303a40, m1 0x213c34, imac 0x26d570; virtual void didToggle(int) = win 0x304120, m1 0x2142b4, imac 0x26dd00; @@ -17443,7 +17443,7 @@ class SetupTriggerPopup : FLAlertLayer, TextInputDelegate, ConfigureValuePopupDe virtual TodoReturn updateInputNode(int, float) = win 0x44bfd0, m1 0x1e473c, imac 0x239290; virtual TodoReturn updateToggleItem(int, bool) = win 0x44c370, m1 0x1e49c0, imac 0x2394e0; virtual void valueDidChange(int, float) {} - virtual TodoReturn getValue(int) = win 0x44c3e0, m1 0x1e4a78, imac 0x2395a0; + virtual float getValue(int) = win 0x44c3e0, m1 0x1e4a78, imac 0x2395a0; virtual TodoReturn triggerValueFromSliderValue(int, float) = win 0x450300, m1 0x1e4e8c, imac 0x2399a0; virtual TodoReturn triggerSliderValueFromValue(int, float) = win 0x450390, m1 0x1e4f18, imac 0x239a20; virtual void onCustomToggleTriggerValue(cocos2d::CCObject* sender) {} @@ -19117,7 +19117,7 @@ class UIOptionsLayer : SetupTriggerPopup { virtual void registerWithTouchDispatcher() = m1 0x2517fc, imac 0x2b0f80; virtual void onClose(cocos2d::CCObject* sender) = m1 0x250ca4, imac 0x2b0310; virtual void valueDidChange(int, float) = m1 0x250df4, imac 0x2b04a0; - virtual TodoReturn getValue(int) = m1 0x251058, imac 0x2b07b0; + virtual float getValue(int) = m1 0x251058, imac 0x2b07b0; } [[link(android)]] From c03ba5dee1567115012b8a001c717bf8a9a53f63 Mon Sep 17 00:00:00 2001 From: Chloe <25387744+qimiko@users.noreply.github.com> Date: Sat, 14 Sep 2024 05:05:45 -0700 Subject: [PATCH 16/84] a free binding --- bindings/2.206/GeometryDash.bro | 4 ++-- test/members/Android64.cpp | 1 + test/members/MacOSArm.cpp | 1 + 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 06eb3bf5b..715c85df0 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -7727,7 +7727,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { TodoReturn gravBumpPlayer(PlayerObject*, EffectGameObject*) = imac 0x11c8e0, m1 0xf8c48; void groupStickyObjects(cocos2d::CCArray*) = imac 0x132930; void handleButton(bool down, int button, bool isPlayer1) = win 0x2238a0, imac 0x13fc40, m1 0x114ea0; - TodoReturn hasItem(int); + bool hasItem(int) = m1 0xf9bac, imac 0x11d8a0; bool hasUniqueCoin(EffectGameObject*) = win 0x207020, imac 0x11ce50, m1 0xf91ec; void increaseBatchNodeCapacity() = win 0x1fd9d0; bool isFlipping(); @@ -8347,7 +8347,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { int m_unk2a90; int m_unk2a94; int m_unk2a98; - cocos2d::CCDictionary* m_unk2a9c; + cocos2d::CCDictionary* m_collectedItems; // can be found in GJBaseGameLayer::pickupItem/hasItem float m_levelLength; int m_unk2aa4; EndPortalObject* m_endPortal; diff --git a/test/members/Android64.cpp b/test/members/Android64.cpp index b476c5e5b..df0e47da8 100644 --- a/test/members/Android64.cpp +++ b/test/members/Android64.cpp @@ -40,6 +40,7 @@ GEODE_MEMBER_CHECK(GJBaseGameLayer, m_shaderLayer, 0x3198); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_startPosObject, 0x31a8); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_isPracticeMode, 0x3210); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_loadingProgress, 0x3214); +GEODE_MEMBER_CHECK(GJBaseGameLayer, m_collectedItems, 0x3238); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_endPortal, 0x3248); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_queuedButtons, 0x3308); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_uiLayer, 0x3468); diff --git a/test/members/MacOSArm.cpp b/test/members/MacOSArm.cpp index cf7d55b91..0b1ccde40 100644 --- a/test/members/MacOSArm.cpp +++ b/test/members/MacOSArm.cpp @@ -29,6 +29,7 @@ GEODE_MEMBER_CHECK(GJBaseGameLayer, m_temporaryParticles, 0x2f98); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_shaderLayer, 0x2fd8); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_startPosObject, 0x2fe8); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_isPracticeMode, 0x3050); +GEODE_MEMBER_CHECK(GJBaseGameLayer, m_collectedItems, 0x3078); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_queuedButtons, 0x3158); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_unk3458, 0x3288); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_uiLayer, 0x3298); From 7039cbaf139d218c8d77d7abc0a6f5c16108a2c5 Mon Sep 17 00:00:00 2001 From: Oleksandr Nemesh Date: Sat, 14 Sep 2024 15:26:08 +0300 Subject: [PATCH 17/84] EditorUI::toggleStickyControls --- bindings/2.206/GeometryDash.bro | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 715c85df0..6c987907f 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -4111,7 +4111,13 @@ class EditorUI : cocos2d::CCLayer, FLAlertLayerProtocol, ColorSelectDelegate, GJ TodoReturn toggleObjectInfoLabel() = win 0xdf2d0; void toggleSnap(cocos2d::CCObject*) = win 0x10c5c0; TodoReturn toggleSpecialEditButtons(); - TodoReturn toggleStickyControls(bool); + void toggleStickyControls(bool enable) = win inline, imac 0x2d430, m1 0x2da98 { + m_stickyControlsEnabled = enable; + m_linkBtn->setEnabled(enable); + m_linkBtn->setVisible(enable); + m_unlinkBtn->setEnabled(enable); + m_unlinkBtn->setVisible(enable); + } void toggleSwipe(cocos2d::CCObject*) = win 0x10c480; void transformObject(GameObject*, EditCommand, bool) = win 0x11c890, imac 0x4c1f0; void transformObjectCall(cocos2d::CCObject*) = m1 0x43774; @@ -4215,8 +4221,11 @@ class EditorUI : cocos2d::CCLayer, FLAlertLayerProtocol, ColorSelectDelegate, GJ float m_toolbarHeight; float m_unk244; bool m_updatedSpeedObjects; + bool m_unkBool1; + bool m_unkBool2; + bool m_stickyControlsEnabled; - PAD = win 0xf, android32 0xf, android64 0xf, mac 0xf, ios 0xf; + PAD = win 0xc, android32 0xc, android64 0xc, mac 0xc, ios 0xc; cocos2d::CCArray* m_unk258; PAD = win 0x8, android32 0x8, android64 0x8, mac 0x8, ios 0x8; From d42aa7ee77d38816b98335703b37a076d5f7ba16 Mon Sep 17 00:00:00 2001 From: Chloe <25387744+qimiko@users.noreply.github.com> Date: Sat, 14 Sep 2024 20:20:30 -0700 Subject: [PATCH 18/84] my friend the cckeypaddispatcher --- bindings/2.206/Cocos2d.bro | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index 3d85d2153..739aa4491 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -1509,6 +1509,18 @@ class cocos2d::CCKeyboardDispatcher { void updateModifierKeys(bool, bool, bool, bool) = m1 0x1b06c0, imac 0x1fde80; } +[[link(win, android)]] +class cocos2d::CCKeypadDispatcher { + // CCKeypadDispatcher(cocos2d::CCKeypadDispatcher const&); + // CCKeypadDispatcher(); + + void addDelegate(cocos2d::CCKeypadDelegate*); + bool dispatchKeypadMSG(cocos2d::ccKeypadMSGType); + void forceAddDelegate(cocos2d::CCKeypadDelegate*); + void forceRemoveDelegate(cocos2d::CCKeypadDelegate*); + void removeDelegate(cocos2d::CCKeypadDelegate*); +} + [[link(win, android)]] class cocos2d::CCDirector { static cocos2d::CCDirector* sharedDirector() = imac 0x48b350, m1 0x3f0da8, ios 0x180c2c; From 8a0c540d4b850ef6d5ce65f0cbf6c93e33dd897e Mon Sep 17 00:00:00 2001 From: altalk23 <45172705+altalk23@users.noreply.github.com> Date: Mon, 16 Sep 2024 09:54:11 +0300 Subject: [PATCH 19/84] reloadall on list --- bindings/2.206/GeometryDash.bro | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 6c987907f..ef412b856 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -3102,7 +3102,7 @@ class CustomListView : BoomListView { } float getCellHeight(BoomListType) = ios 0x102794, imac 0x23ce80; - TodoReturn reloadAll() = win 0xaa280, imac 0x249a00; + void reloadAll() = win 0xaa280, imac 0x249a00; virtual void setupList(float) = win 0xa9bb0, m1 0x1f3900, imac 0x2491d0; virtual TableViewCell* getListCell(char const*) = m1 0x1e72a4, imac 0x23bdc0; @@ -11676,7 +11676,9 @@ class LevelBrowserLayer : cocos2d::CCLayerColor, LevelManagerDelegate, FLAlertLa void onSavedMode(cocos2d::CCObject* sender) = win 0x2ba900; void onSearch(cocos2d::CCObject* sender) = win 0x2bb5b0; void onToggleAllObjects(cocos2d::CCObject* sender) = win 0x2bbfc0, imac 0x496300; - void reloadAllObjects(); + void reloadAllObjects() { + static_cast(m_list->m_listView)->reloadAll(); + } void setSearchObject(GJSearchObject*) = imac 0x495d30, m1 0x3fa8f4; void setupLevelBrowser(cocos2d::CCArray*) = win 0x2b8440, m1 0x3fda3c, imac 0x4990a0; void show() = win 0x2bc7d0, m1 0x3ffc14, imac 0x49b600; From 37f803aaee076c1c3a07095217347e4649b5c582 Mon Sep 17 00:00:00 2001 From: Chloe <25387744+qimiko@users.noreply.github.com> Date: Mon, 16 Sep 2024 00:21:20 -0700 Subject: [PATCH 20/84] broke the geode build :( --- bindings/2.206/GeometryDash.bro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index ef412b856..f5c55986c 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -3102,7 +3102,7 @@ class CustomListView : BoomListView { } float getCellHeight(BoomListType) = ios 0x102794, imac 0x23ce80; - void reloadAll() = win 0xaa280, imac 0x249a00; + void reloadAll() = win 0xaa280, imac 0x249a00, m1 0x1f3f7c; virtual void setupList(float) = win 0xa9bb0, m1 0x1f3900, imac 0x2491d0; virtual TableViewCell* getListCell(char const*) = m1 0x1e72a4, imac 0x23bdc0; @@ -11676,7 +11676,7 @@ class LevelBrowserLayer : cocos2d::CCLayerColor, LevelManagerDelegate, FLAlertLa void onSavedMode(cocos2d::CCObject* sender) = win 0x2ba900; void onSearch(cocos2d::CCObject* sender) = win 0x2bb5b0; void onToggleAllObjects(cocos2d::CCObject* sender) = win 0x2bbfc0, imac 0x496300; - void reloadAllObjects() { + void reloadAllObjects() = m1 0x3ff3d0 { static_cast(m_list->m_listView)->reloadAll(); } void setSearchObject(GJSearchObject*) = imac 0x495d30, m1 0x3fa8f4; From 5f4ad3d012ce4b70f6e38e1eb33173a5d957e38d Mon Sep 17 00:00:00 2001 From: HJfod <60038575+HJfod@users.noreply.github.com> Date: Thu, 19 Sep 2024 01:06:40 +0300 Subject: [PATCH 21/84] add scaleFromValue and valueFromScale inline definitions --- bindings/2.206/GeometryDash.bro | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index f5c55986c..1e9b2dd8c 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -10186,13 +10186,18 @@ class GJScaleControl : cocos2d::CCLayer { void finishTouch(); void loadValues(GameObject*, cocos2d::CCArray*, gd::unordered_map&) = win 0x125d20, m1 0x3abb0, imac 0x3f770; void onToggleLockScale(cocos2d::CCObject* sender) = win 0x125c90, m1 0x4a7c4, imac 0x52a60; - float scaleFromValue(float) = m1 0x4a99c, imac 0x52c30; + float scaleFromValue(float value) = win inline, m1 0x4a99c, imac 0x52c30 { + return (m_upperBound - m_lowerBound) * value + m_lowerBound; + } float skewFromValue(float) = m1 0x4a9d8, imac 0x52c70; void sliderChanged(cocos2d::CCObject* sender) = win 0x126330, m1 0x4a834, imac 0x52ac0; void updateLabelX(float) = win 0x126ab0, m1 0x4a864, imac 0x52b10; void updateLabelXY(float) = win 0x126bb0, m1 0x4a934, imac 0x52bd0; void updateLabelY(float) = win 0x126b30, m1 0x4a8cc, imac 0x52b70; - float valueFromScale(float) = m1 0x4a83c, imac 0x52ad0; + float valueFromScale(float scale) = win inline, m1 0x4a83c, imac 0x52ad0 { + auto value = (scale - m_lowerBound) / (m_upperBound - m_lowerBound); + return value < 0 ? 0 : (value > 1 ? 1 : value); + } float valueFromSkew(float) = m1 0x4a9f0, imac 0x52cc0; virtual bool init() = win 0x125850, m1 0x4a3e0, imac 0x52650; From 7eba932e15346e6e8ba185521f1d5c3c171ebb17 Mon Sep 17 00:00:00 2001 From: HJfod <60038575+HJfod@users.noreply.github.com> Date: Thu, 19 Sep 2024 15:38:47 +0300 Subject: [PATCH 22/84] fix activateRotationControl return type --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 1e9b2dd8c..968205fc3 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -3885,7 +3885,7 @@ class EditorUI : cocos2d::CCLayer, FLAlertLayerProtocol, ColorSelectDelegate, GJ return lel->m_editorUI; } - TodoReturn activateRotationControl(cocos2d::CCObject*) = win 0x11efb0; + void activateRotationControl(cocos2d::CCObject*) = win 0x11efb0; void activateScaleControl(cocos2d::CCObject*) = win 0x110e10; void activateTransformControl(cocos2d::CCObject*) = win 0x111460; TodoReturn addObjectsToSmartTemplate(GJSmartTemplate*, cocos2d::CCArray*); From e1480a5b18072b964dc5d00e44f8414d8d4cc30b Mon Sep 17 00:00:00 2001 From: dankmeme01 <42031238+dankmeme01@users.noreply.github.com> Date: Thu, 19 Sep 2024 16:22:40 +0200 Subject: [PATCH 23/84] fix return type for pushButton and releaseButton --- bindings/2.206/GeometryDash.bro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 968205fc3..7968a78ec 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -14252,13 +14252,13 @@ class PlayerObject : GameObject, AnimatedSpriteDelegate { void preCollision() = m1 0x3855d8, imac 0x40d7d0; bool preSlopeCollision(float, GameObject*) = win 0x36d370; void propellPlayer(float, bool, int) = win 0x37d860, imac 0x424240, m1 0x398e28; - void pushButton(PlayerButton) = win 0x375f70, imac 0x41d330, m1 0x392760; + bool pushButton(PlayerButton) = win 0x375f70, imac 0x41d330, m1 0x392760; TodoReturn pushDown(); void pushPlayer(float); TodoReturn redirectDash(float); TodoReturn redirectPlayerForce(float, float, float, float); void releaseAllButtons() = win 0x37d110, imac 0x423a90, m1 0x398664; - void releaseButton(PlayerButton) = win 0x376200, imac 0x41e7b0, m1 0x393880; + bool releaseButton(PlayerButton) = win 0x376200, imac 0x41e7b0, m1 0x393880; TodoReturn removeAllParticles(); void removePendingCheckpoint() = win 0x3801a0, imac 0x41bf70; TodoReturn removePlacedCheckpoint() = imac 0x41cd90; From 8cc6c07724f78084e0b4b5cab8f2017b25a61ecb Mon Sep 17 00:00:00 2001 From: camila314 <47485054+camila314@users.noreply.github.com> Date: Thu, 19 Sep 2024 16:12:16 -0500 Subject: [PATCH 24/84] getFrameName --- bindings/2.206/Cocos2d.bro | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index 3d85d2153..c8eb59fa1 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -2485,7 +2485,9 @@ class cocos2d::CCSpriteFrame { } bool initWithTextureFilename(char const*, cocos2d::CCRect const&, bool, cocos2d::CCPoint const&, cocos2d::CCSize const&) = m1 0x2e68d8, imac 0x358a60, ios 0x25db44; - gd::string getFrameName() const; + gd::string getFrameName() const = m1 inline, imac inline { + return m_pszFrameName; + } cocos2d::CCPoint const& getOffset() = m1 0x2e6e28, imac 0x359100; cocos2d::CCPoint const& getOffsetInPixels() = m1 0x2e6e9c, imac 0x3591a0; cocos2d::CCSize const& getOriginalSize(); From 5d4abb542bcd918777381dd78932f9615df61667 Mon Sep 17 00:00:00 2001 From: camila314 <47485054+camila314@users.noreply.github.com> Date: Thu, 19 Sep 2024 16:14:43 -0500 Subject: [PATCH 25/84] oops --- bindings/2.206/Cocos2d.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index dce4a49b2..8ffc59ac1 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -2498,7 +2498,7 @@ class cocos2d::CCSpriteFrame { bool initWithTextureFilename(char const*, cocos2d::CCRect const&, bool, cocos2d::CCPoint const&, cocos2d::CCSize const&) = m1 0x2e68d8, imac 0x358a60, ios 0x25db44; gd::string getFrameName() const = m1 inline, imac inline { - return m_pszFrameName; + return m_strFrameName; } cocos2d::CCPoint const& getOffset() = m1 0x2e6e28, imac 0x359100; cocos2d::CCPoint const& getOffsetInPixels() = m1 0x2e6e9c, imac 0x3591a0; From f519dfdee2bbcef2327ca5b2b188c41a5d21886e Mon Sep 17 00:00:00 2001 From: Ashton <38200084+Alphalaneous@users.noreply.github.com> Date: Fri, 20 Sep 2024 01:38:39 -0400 Subject: [PATCH 26/84] Group callbacks (#750) --- bindings/2.206/GeometryDash.bro | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 7968a78ec..62b5ac4d6 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -15841,8 +15841,8 @@ class SetGroupIDLayer : FLAlertLayer, TextInputDelegate { TodoReturn createTextInput(cocos2d::CCPoint, int, int, gd::string, float, int); TodoReturn determineStartValues(); bool init(GameObject* obj, cocos2d::CCArray* objs) = win 0x3cde60, m1 0x2a31bc, imac 0x311790, ios 0x419a0; - void onAddGroup(cocos2d::CCObject* sender); - void onAddGroupParent(cocos2d::CCObject* sender); + void onAddGroup(cocos2d::CCObject* sender) = win 0x3d1eb0; + void onAddGroupParent(cocos2d::CCObject* sender) = win 0x3d2020; void onAnim(cocos2d::CCObject* sender); void onArrow(int tag, int increment) = win 0x3d05e0; void onArrowLeft(cocos2d::CCObject* sender) = win 0x3d0580; @@ -15856,7 +15856,7 @@ class SetGroupIDLayer : FLAlertLayer, TextInputDelegate { void onNextFreeOrderChannel(cocos2d::CCObject* sender) = win 0x3d28c0; void onNextGroupID1(cocos2d::CCObject* sender) = win 0x3d14d0, m1 0x2a5700, imac 0x313ed0; void onPaste(cocos2d::CCObject* sender); - void onRemoveFromGroup(cocos2d::CCObject* sender); + void onRemoveFromGroup(cocos2d::CCObject* sender) = win 0x3d1de0; void onSmoothEase(cocos2d::CCObject* sender); void onToggleGuide(cocos2d::CCObject* sender); void onToggleSelectedOrder(cocos2d::CCObject* sender); From a14f4e3029c6cfd0699801ba15bc5e03a5d7b29c Mon Sep 17 00:00:00 2001 From: Oleksandr Nemesh Date: Fri, 20 Sep 2024 16:20:45 +0300 Subject: [PATCH 27/84] VideoOptionsLayer/SecretLayer3 members --- bindings/2.206/GeometryDash.bro | 39 +++++++++++++++++++++++++++++++-- 1 file changed, 37 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 62b5ac4d6..59f1666cc 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -15464,8 +15464,23 @@ class SecretLayer2 : cocos2d::CCLayer, TextInputDelegate, FLAlertLayerProtocol, [[link(android)]] class SecretLayer3 : cocos2d::CCLayer, DialogDelegate { // virtual ~SecretLayer3(); + SecretLayer3() { + m_lockInput = false; + m_locksArray = nullptr; + m_demonEyes = nullptr; + m_demonBody = nullptr; + m_secretChest = nullptr; + } - static SecretLayer3* create(); + static SecretLayer3* create() = win inline { + auto ret = new SecretLayer3(); + if (ret->init()) { + ret->autorelease(); + return ret; + } + delete ret; + return nullptr; + } TodoReturn animateEyes(); TodoReturn firstInteractionStep1(); @@ -15488,6 +15503,13 @@ class SecretLayer3 : cocos2d::CCLayer, DialogDelegate { virtual void onExit() = m1 0x414e18, imac 0x4b2400; virtual void keyBackClicked() = win 0x3c9c80, m1 0x414e0c, imac 0x4b23d0; virtual void dialogClosed(DialogLayer*) = win 0x3c9680, m1 0x414ad4, imac 0x4b20b0; + + DungeonBarsSprite* m_dungeonBars; + bool m_lockInput; + cocos2d::CCArray* m_locksArray; + cocos2d::CCSprite* m_demonEyes; + cocos2d::CCSprite* m_demonBody; + CCMenuItemSpriteExtra* m_secretChest; } [[link(android)]] @@ -19334,7 +19356,7 @@ class VideoOptionsLayer : FLAlertLayer { static VideoOptionsLayer* create() = win 0x355140, ios 0xeed80; - void createToggleButton(gd::string, cocos2d::SEL_MenuHandler, bool, cocos2d::CCMenu*, cocos2d::CCPoint, float, float, bool) = ios 0xf21a8; + CCMenuItemToggler* createToggleButton(gd::string, cocos2d::SEL_MenuHandler, bool, cocos2d::CCMenu*, cocos2d::CCPoint, float, float, bool, cocos2d::CCArray*) = ios 0xf21a8; void onAdvanced(cocos2d::CCObject* sender) = ios 0xf2810; void onApply(cocos2d::CCObject* sender) = ios 0xf24ac, imac 0x7ac480; void onClose(cocos2d::CCObject* sender) = ios 0xf2454; @@ -19352,6 +19374,19 @@ class VideoOptionsLayer : FLAlertLayer { virtual bool init() = win 0x355250, m1 0x6b23b4, ios 0xf154c, imac 0x7ab1a0; virtual void keyBackClicked() = win 0x356df0, m1 0x6b3cb4, imac 0x7acc20; + + CCMenuItemSpriteExtra* m_prevResolutionBtn; + CCMenuItemSpriteExtra* m_nextResolutionBtn; + cocos2d::CCLabelBMFont* m_windowedResolutionLabel; + cocos2d::CCLabelBMFont* m_selectedResolutionLabel; + cocos2d::CCLabelBMFont* m_qualityLabel; + int m_textureQuality; + cocos2d::CCArray* m_availableResolutions; + CCMenuItemToggler* m_borderlessToggle; + cocos2d::CCLabelBMFont* m_borderlessLabel; + bool m_windowed; + bool m_borderless; + int m_currentResolution; } [[link(android)]] From 336d55fc333c7488ffd2c25380f23813b58e855e Mon Sep 17 00:00:00 2001 From: dankmeme01 <42031238+dankmeme01@users.noreply.github.com> Date: Fri, 20 Sep 2024 17:27:36 +0200 Subject: [PATCH 28/84] SetupInstantCountPopup members --- bindings/2.206/GeometryDash.bro | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 59f1666cc..4e863fe59 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -16626,6 +16626,15 @@ class SetupInstantCountPopup : SetupTriggerPopup { virtual TodoReturn determineStartValues() = m1 0x51bab0, imac 0x5f3870; virtual void onClose(cocos2d::CCObject* sender) = m1 0x51bff8, imac 0x5f3ea0; virtual void textChanged(CCTextInputNode*) = win 0x3f8340, m1 0x51bd74, imac 0x5f3bb0; + + CCTextInputNode* m_unk3a8; + CCTextInputNode* m_unk3b0; + CCTextInputNode* m_unk3b8; + int m_itemID; + int m_targetID; + int m_targetCount; + int m_unk3cc; // uninit + int m_mode; // 0 = equals, 1 = larger, 2 = smaller } [[link(android)]] From a1d128ebb239bb3684c53127254fac72788a26ec Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Fri, 20 Sep 2024 16:35:35 -0400 Subject: [PATCH 29/84] Three PlayerObject functions (#742) * PlayerObject::isFlying and PlayerObject::isInNormalMode * PlayerObject::isInBasicMode --- bindings/2.206/GeometryDash.bro | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 4e863fe59..93f9f2977 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -14219,9 +14219,15 @@ class PlayerObject : GameObject, AnimatedSpriteDelegate { void incrementJumps() = win 0x36acd0, imac 0x40c980, m1 0x38487c; bool init(int, int, GJBaseGameLayer*, cocos2d::CCLayer*, bool) = win 0x364970, m1 0x37c678, imac 0x403590, ios 0x227dd4; bool isBoostValid(float); - bool isFlying() = imac 0x40a810, m1 0x38285c; - bool isInBasicMode(); - bool isInNormalMode(); + bool isFlying() = win inline, imac 0x40a810, m1 0x38285c { + return m_isShip || m_isBird || m_isDart || m_isSwing; + } + bool isInBasicMode() = win inline, m1 0x38d8e0, imac 0x4179f0 { + return !this->isFlying() && !m_isBall && !m_isSpider; + } + bool isInNormalMode() = win inline, m1 0x3812f4, imac 0x408e90 { + return !this->isFlying() && !m_isBall && !m_isRobot && !m_isSpider; + } bool isSafeFlip(float) = m1 0x38b488, imac 0x415120; bool isSafeHeadTest(); bool isSafeMode(float); @@ -14284,7 +14290,7 @@ class PlayerObject : GameObject, AnimatedSpriteDelegate { void runNormalRotation() { this->runNormalRotation(false, 1.0f); } - void runNormalRotation(bool, float) = win 0x9999999, m1 0x381364, mac 0x408ef0; + void runNormalRotation(bool, float) = win 0x9999999, m1 0x381364, imac 0x408ef0; void runRotateAction(bool, int) = win 0x36b480; TodoReturn saveToCheckpoint(PlayerCheckpoint*); void setSecondColor(cocos2d::ccColor3B const&) = win 0x37b3b0, m1 0x37fac8, imac 0x407090; From 5ae4e230969bec82f2b7196f8e1c3fce41bd56a8 Mon Sep 17 00:00:00 2001 From: HJfod <60038575+HJfod@users.noreply.github.com> Date: Sat, 21 Sep 2024 00:51:06 +0300 Subject: [PATCH 30/84] add editor copy paste stuff --- bindings/2.206/GeometryDash.bro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 968205fc3..d21736895 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -4050,7 +4050,7 @@ class EditorUI : cocos2d::CCLayer, FLAlertLayerProtocol, ColorSelectDelegate, GJ void onUpdateDeleteFilter(cocos2d::CCObject* sender); void orderDownCustomItem(cocos2d::CCObject*) = win 0xe0bf0; void orderUpCustomItem(cocos2d::CCObject*) = win 0xe0b60; - void pasteObjects(gd::string, bool); + cocos2d::CCArray* pasteObjects(gd::string, bool, bool) = win 0x10f8a0; TodoReturn playCircleAnim(cocos2d::CCPoint, float, float); TodoReturn playerTouchBegan(cocos2d::CCTouch*, cocos2d::CCEvent*); TodoReturn playerTouchEnded(cocos2d::CCTouch*, cocos2d::CCEvent*); @@ -6184,7 +6184,7 @@ class GameManager : GManager { int m_unkSize4_3; bool m_loaded; bool m_googlePlaySignedIn; - gd::string m_unknownString; + gd::string m_editorClipboard; int m_unkSize4_4; PlayLayer* m_playLayer; LevelEditorLayer* m_levelEditorLayer; From 6d0523f4c10a00059b8b7cd0ae75e5bb8c67a25c Mon Sep 17 00:00:00 2001 From: Capeling <113705504+Capeling@users.noreply.github.com> Date: Sat, 21 Sep 2024 13:50:03 +0930 Subject: [PATCH 31/84] fix gauntlettype enum --- bindings/include/Geode/Enums.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/include/Geode/Enums.hpp b/bindings/include/Geode/Enums.hpp index 0ee692c61..6fd5c7b63 100644 --- a/bindings/include/Geode/Enums.hpp +++ b/bindings/include/Geode/Enums.hpp @@ -245,7 +245,7 @@ enum class DifficultyIconType { NoText = 2 }; enum class GauntletType { - Fire = 0, + Fire = 1, Ice = 2, Poison = 3, Shadow = 4, From ae9814dfd6b752d5b61eac29f0130fef200960e4 Mon Sep 17 00:00:00 2001 From: Oleksandr Nemesh Date: Sat, 21 Sep 2024 22:54:33 +0300 Subject: [PATCH 32/84] GJBaseGameLayer::shakeCamera --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index e23b82cd2..412f7d58b 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -7892,7 +7892,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { void setupLayers() = win 0x1f9870, m1 0xe4c84, imac 0x104950; void setupLevelStart(LevelSettingsObject*) = win 0x202d80, m1 0xf48f0, imac 0x117720; void setupReplay(gd::string) = win 0x229a20, imac 0x14c060, m1 0x11e2c8; - void shakeCamera(float, float, float) = imac 0x14f790, m1 0x120cf8, ios 0x20df2c; + void shakeCamera(float duration, float strength, float interval) = win 0x22ad80, imac 0x14f790, m1 0x120cf8, ios 0x20df2c; TodoReturn shouldExitHackedLevel() = imac 0x107120; TodoReturn sortAllGroupsX(); TodoReturn sortGroups() = imac 0x10ae60; From f3d83f8ab66570782f9398dec7d913e009351b0a Mon Sep 17 00:00:00 2001 From: HJfod <60038575+HJfod@users.noreply.github.com> Date: Sat, 21 Sep 2024 23:41:11 +0300 Subject: [PATCH 33/84] stuff --- bindings/2.206/GeometryDash.bro | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index e23b82cd2..cb18a8508 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -10145,9 +10145,9 @@ class GJRotationControl : cocos2d::CCLayer { [[link(android)]] class GJRotationControlDelegate { - virtual void angleChanged(float); - virtual void angleChangeBegin(); - virtual void angleChangeEnded(); + virtual void angleChanged(float angle) {} + virtual void angleChangeBegin() {} + virtual void angleChangeEnded() {} } [[link(android)]] @@ -10230,13 +10230,13 @@ class GJScaleControl : cocos2d::CCLayer { [[link(android)]] class GJScaleControlDelegate { - virtual void scaleXChanged(float, bool); - virtual void scaleYChanged(float, bool); - virtual void scaleXYChanged(float, float, bool); - virtual void scaleChangeBegin(); - virtual void scaleChangeEnded(); - virtual void updateScaleControl(); - virtual void anchorPointMoved(cocos2d::CCPoint); + virtual void scaleXChanged(float scaleX, bool lock) {} + virtual void scaleYChanged(float scaleY, bool lock) {} + virtual void scaleXYChanged(float scaleX, float scaleY, bool lock) {} + virtual void scaleChangeBegin() {} + virtual void scaleChangeEnded() {} + virtual void updateScaleControl() {} + virtual void anchorPointMoved(cocos2d::CCPoint newAnchor) {} } [[link(android)]] From 6b20d0aa403454c711943e6819aa2724cc4614d5 Mon Sep 17 00:00:00 2001 From: Fire <17692105+FireMario211@users.noreply.github.com> Date: Sun, 22 Sep 2024 18:21:10 +0000 Subject: [PATCH 34/84] add names --- bindings/2.206/GeometryDash.bro | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 791c0ccf9..a56711eaa 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -11262,9 +11262,9 @@ class HSVWidgetPopup : FLAlertLayer { class InfoAlertButton : CCMenuItemSpriteExtra { // virtual ~InfoAlertButton(); - static InfoAlertButton* create(gd::string, gd::string, float) = win 0x2a7e50, m1 0x4c9214, imac 0x57cca0; + static InfoAlertButton* create(gd::string title, gd::string desc, float spriteScale) = win 0x2a7e50, m1 0x4c9214, imac 0x57cca0; - bool init(gd::string, gd::string, float) = m1 0x4c94b0, imac 0x57cf20; + bool init(gd::string title, gd::string desc, float spriteScale) = m1 0x4c94b0, imac 0x57cf20; virtual void activate() = win 0x2a8050, m1 0x4c9554, imac 0x57cfc0; @@ -18074,7 +18074,7 @@ class SlideInLayer : cocos2d::CCLayerColor { class Slider : cocos2d::CCLayer { // virtual ~Slider(); - static Slider* create(cocos2d::CCNode*, cocos2d::SEL_MenuHandler, char const*, char const*, char const*, char const*, float) = win 0x70230, m1 0x296e54, imac 0x303500, ios 0x2ff908; + static Slider* create(cocos2d::CCNode* target, cocos2d::SEL_MenuHandler handler, char const* bar, char const* groove, char const* thumb, char const* thumbSel, float scale) = win 0x70230, m1 0x296e54, imac 0x303500, ios 0x2ff908; static Slider* create(cocos2d::CCNode* target, cocos2d::SEL_MenuHandler handler) = imac 0x3032c0, m1 0x296c3c { return Slider::create(target, handler, 1.f); } From fcfb02a8d1df5a88b5c79392f195584e2d89424d Mon Sep 17 00:00:00 2001 From: Fire <17692105+FireMario211@users.noreply.github.com> Date: Sun, 22 Sep 2024 18:25:34 +0000 Subject: [PATCH 35/84] oh and some slider inline funcs --- bindings/2.206/GeometryDash.bro | 54 +++++++++++++++++++++++++-------- 1 file changed, 42 insertions(+), 12 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index a56711eaa..e5a537057 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -18082,22 +18082,35 @@ class Slider : cocos2d::CCLayer { return Slider::create(target, handler, "sliderBar.png", "slidergroove.png", "sliderthumb.png", "sliderthumbsel.png", scale); } - TodoReturn disableSlider(); + void disableSlider(); void disableTouch() = imac 0x303b10, m1 0x297408; - TodoReturn enableSlider(); + void enableSlider(); bool getLiveDragging() { return m_touchLogic->m_activateThumb; } SliderThumb* getThumb() { return m_touchLogic->m_thumb; } - float getValue(); - TodoReturn hideGroove(bool); + float getValue() { + return this->getThumb()->getValue(); + } + void hideGroove(bool visibility) { + m_groove->setVisible(!visibility); + } bool init(cocos2d::CCNode*, cocos2d::SEL_MenuHandler, char const*, char const*, char const*, char const*, float) = win 0x70360, imac 0x303620, m1 0x296f64; - void setBarVisibility(bool) = imac 0x303c00, ios 0x2ffdc8, m1 0x2974b4; - void setLiveDragging(bool); - void setMaxOffset(float); - void setRotated(bool); + void setBarVisibility(bool visibility) = imac 0x303c00, ios 0x2ffdc8, m1 0x2974b4, win inline { + m_sliderBar->setVisible(visibility); + } + void setLiveDragging(bool activateThumb) { + m_touchLogic->m_activateThumb = activateThumb; + } + void setMaxOffset(float offset) { + m_touchLogic->setMaxOffset(offset); + } + void setRotated(bool rotated) { + m_touchLogic->setRotated(rotated); + m_groove->setRotation((rotated) ? -90 : 0); + } void setValue(float val) = win 0x70710, imac 0x303960, m1 0x29727c, ios 0x2ffccc; TodoReturn sliderBegan(); TodoReturn sliderEnded(); @@ -18147,8 +18160,18 @@ class SliderThumb : cocos2d::CCMenuItemImage { float getValue() = win 0x6fdc0, ios 0x2ff24c, m1 0x296090, imac 0x3025d0; bool init(cocos2d::CCNode*, cocos2d::SEL_MenuHandler, char const*, char const*); - void setMaxOffset(float); - void setRotated(bool); + void setMaxOffset(float offset) { + float value = getValue(); + m_length = offset; + this->setPosition({0, 0}); + setValue(value); + } + void setRotated(bool rotated) { + float value = getValue(); + m_vertical = rotated; + this->setPosition({0, 0}); + setValue(value); + } void setValue(float) = win 0x6fe50, imac 0x302670, ios 0x2ff2d0, m1 0x296114; float m_length; @@ -18162,8 +18185,15 @@ class SliderTouchLogic : cocos2d::CCMenu { static SliderTouchLogic* create(cocos2d::CCNode*, cocos2d::SEL_MenuHandler, char const*, char const*, float) = imac 0x302890; bool init(cocos2d::CCNode*, cocos2d::SEL_MenuHandler, char const*, char const*, float); - void setMaxOffset(float); - void setRotated(bool); + void setMaxOffset(float offset) { + float newOffset = m_thumb->getScale() * offset; + m_length = newOffset; + m_thumb->setMaxOffset(newOffset); + } + void setRotated(bool rotated) { + m_rotated = rotated; + m_thumb->setRotated(rotated); + } virtual bool ccTouchBegan(cocos2d::CCTouch*, cocos2d::CCEvent*) = win 0x6ffc0, m1 0x29676c, imac 0x302d40; virtual void ccTouchMoved(cocos2d::CCTouch*, cocos2d::CCEvent*) = win 0x700b0, m1 0x296980, imac 0x302f70; From 2d389c1eb89999166117835b146a73fcb846ee27 Mon Sep 17 00:00:00 2001 From: Ashton <38200084+Alphalaneous@users.noreply.github.com> Date: Sun, 22 Sep 2024 20:29:17 -0400 Subject: [PATCH 36/84] dynamicGroupUpdate return (#751) --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index e5a537057..fec6e54d4 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -3944,7 +3944,7 @@ class EditorUI : cocos2d::CCLayer, FLAlertLayerProtocol, ColorSelectDelegate, GJ void doCopyObjects(bool) = win 0x10f490, imac 0x3e6d0; TodoReturn doPasteInPlace(bool); void doPasteObjects(bool) = win 0x10f620; - TodoReturn dynamicGroupUpdate(bool) = imac 0x451e0; + void dynamicGroupUpdate(bool) = imac 0x451e0; TodoReturn edgeForObject(int, int); TodoReturn editButton2Usable() = imac 0x49680; TodoReturn editButtonUsable() = imac 0x48910; From 26d20ced0b7c26ced1bb92232b5e6159fc4f535e Mon Sep 17 00:00:00 2001 From: Ashton <38200084+Alphalaneous@users.noreply.github.com> Date: Sun, 22 Sep 2024 22:51:48 -0400 Subject: [PATCH 37/84] Add dynamicGroupUpdate for windows --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index fec6e54d4..81e846480 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -3944,7 +3944,7 @@ class EditorUI : cocos2d::CCLayer, FLAlertLayerProtocol, ColorSelectDelegate, GJ void doCopyObjects(bool) = win 0x10f490, imac 0x3e6d0; TodoReturn doPasteInPlace(bool); void doPasteObjects(bool) = win 0x10f620; - void dynamicGroupUpdate(bool) = imac 0x451e0; + void dynamicGroupUpdate(bool) = win 0x114b90, imac 0x451e0; TodoReturn edgeForObject(int, int); TodoReturn editButton2Usable() = imac 0x49680; TodoReturn editButtonUsable() = imac 0x48910; From 350a4851bfc16d45be47da9b457575316e32e852 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Tue, 24 Sep 2024 11:35:41 -0400 Subject: [PATCH 38/84] addSpriteFrame (#755) --- bindings/2.206/Cocos2d.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index 8ffc59ac1..792d1910f 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -2535,7 +2535,7 @@ class cocos2d::CCSpriteFrameCache { // CCSpriteFrameCache(); // CCSpriteFrameCache(cocos2d::CCSpriteFrameCache const&); - void addSpriteFrame(cocos2d::CCSpriteFrame*, char const*); + void addSpriteFrame(cocos2d::CCSpriteFrame*, char const*) = m1 0x2aca14, imac 0x31bbf0; void addSpriteFramesWithDictionary(cocos2d::CCDictionary*, cocos2d::CCTexture2D*) = m1 0x2ab7d8, imac 0x31acd0; void addSpriteFramesWithFile(char const*, char const*); void addSpriteFramesWithFile(char const*) = imac 0x31b8b0, m1 0x2ac58c, ios 0x3c5734; From 00b47a63b281fefaba232d8c41080ae134481057 Mon Sep 17 00:00:00 2001 From: Ashton <38200084+Alphalaneous@users.noreply.github.com> Date: Thu, 26 Sep 2024 18:13:28 -0400 Subject: [PATCH 39/84] Add SetGroupIDLayer::onExtra callback --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 81e846480..9cbcfd5a6 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -15877,7 +15877,7 @@ class SetGroupIDLayer : FLAlertLayer, TextInputDelegate { void onArrowRight(cocos2d::CCObject* sender) = win 0x3d05b0; void onClose(cocos2d::CCObject* sender) = win 0x3d2b60, m1 0x2a4f2c, imac 0x3136a0; void onCopy(cocos2d::CCObject* sender); - void onExtra(cocos2d::CCObject* sender); + void onExtra(cocos2d::CCObject* sender) = win 0x3d0cd0; void onExtra2(cocos2d::CCObject* sender); void onNextFreeEditorLayer1(cocos2d::CCObject* sender) = win 0x3d23b0; void onNextFreeEditorLayer2(cocos2d::CCObject* sender) = win 0x3d2420; From e258c602bfeb73513342ceff5357e2e62f889089 Mon Sep 17 00:00:00 2001 From: TechStudent10 <76978184+TechStudent10@users.noreply.github.com> Date: Fri, 27 Sep 2024 11:24:59 -0600 Subject: [PATCH 40/84] add GameLevelManager::createNewLevel (#757) --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 9cbcfd5a6..d255706e7 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -5430,7 +5430,7 @@ class GameLevelManager : cocos2d::CCNode { cocos2d::CCArray* createAndGetLevels(gd::string) = imac 0x535c60, m1 0x488f5c; cocos2d::CCArray* createAndGetMapPacks(gd::string) = win 0x142370; cocos2d::CCArray* createAndGetScores(gd::string, GJScoreType); - GJGameLevel* createNewLevel() = win 0x13fe60; + GJGameLevel* createNewLevel() = win 0x13fe60, m1 0x486b68, imac 0x5334d0; GJLevelList* createNewLevelList() = win 0x140910, m1 0x4877e8, imac 0x534200; TodoReturn createPageInfo(int, int, int); GJSmartTemplate* createSmartTemplate(); From d8a51fafd331aaf0df542b0d6aa887fc562d0d0b Mon Sep 17 00:00:00 2001 From: km7 dev <100500023+Kingminer7@users.noreply.github.com> Date: Fri, 27 Sep 2024 20:10:34 -0700 Subject: [PATCH 41/84] LevelSearchLayer::onBack (#758) --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index d255706e7..fef84bbb6 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -12449,7 +12449,7 @@ class LevelSearchLayer : cocos2d::CCLayer, TextInputDelegate, FLAlertLayerProtoc return cocos2d::CCString::createWithFormat("T%i", time)->getCString(); } bool init(int) = win 0x2ebc60, m1 0x5546b0, imac 0x634960, ios 0x57aa0; - void onBack(cocos2d::CCObject* sender); + void onBack(cocos2d::CCObject* sender) = win 0x2f1560, imac 0x6383d0, m1 0x558158; void onClearFreeSearch(cocos2d::CCObject* sender) = win 0x2f1520, m1 0x5574e8, imac 0x6377c0; void onClose(cocos2d::CCObject* sender) = win inline { m_searchInput->onClickTrackNode(false); From 84fce31dcc1832422d16275549d4784afcf91092 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Tue, 1 Oct 2024 01:27:59 -0400 Subject: [PATCH 42/84] getCreatedLevels and getCreatedLists (#760) * getCreatedLevels and getCreatedLists * Update verify.yml * Update verify.yml --- bindings/2.206/GeometryDash.bro | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index fef84bbb6..68825779c 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -12917,13 +12917,31 @@ class LocalLevelManager : GManager { static LocalLevelManager* sharedState() = win 0x30f5d0, m1 0x527e4c, imac 0x601110, ios 0x1d1c58; inline static LocalLevelManager* get() { - return LocalLevelManager::sharedState(); - } + return LocalLevelManager::sharedState(); + } cocos2d::CCDictionary* getAllLevelsInDict() = win 0x30fa40; TodoReturn getAllLevelsWithName(gd::string); - TodoReturn getCreatedLevels(int); - TodoReturn getCreatedLists(int); + cocos2d::CCArray* getCreatedLevels(int folder) = win inline, m1 0x5290f4, imac 0x602660 { + if (folder < 1) return m_localLevels; + auto ret = cocos2d::CCArray::create(); + CCObject* obj; + CCARRAY_FOREACH(m_localLevels, obj) { + if (!obj) return ret; + if (static_cast(obj)->m_levelFolder == folder) ret->addObject(obj); + } + return ret; + } + cocos2d::CCArray* getCreatedLists(int folder) = win inline, m1 0x529260, imac 0x6027c0 { + if (folder < 1) return m_localLists; + auto ret = cocos2d::CCArray::create(); + CCObject* obj; + CCARRAY_FOREACH(m_localLists, obj) { + if (!obj) return ret; + if (static_cast(obj)->m_folder == folder) ret->addObject(obj); + } + return ret; + } cocos2d::CCDictionary* getLevelsInNameGroups() = m1 0x528540, imac 0x601940; gd::string getMainLevelString(int) = win 0x30f930; TodoReturn markLevelsAsUnmodified(); From b6f12456046d1a6d31f0717ee85e14ff167a71a1 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Tue, 1 Oct 2024 01:28:18 -0400 Subject: [PATCH 43/84] toggleLockPlayer and other functions (#756) --- bindings/2.206/GeometryDash.bro | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 68825779c..2e62253b1 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -7944,7 +7944,11 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { void toggleDualMode(GameObject*, bool, PlayerObject*, bool) = win 0x207160, m1 0xf5020, imac 0x117fa0; void toggleFlipped(bool, bool) = win 0x235880, imac 0x11c4e0, m1 0xf8868; void toggleGroup(int, bool) = imac 0x131520, m1 0x1095c0; - TodoReturn toggleLockPlayer(bool, bool) = win 0x37d510; + void toggleLockPlayer(bool disable, bool p2) = win inline, m1 0x1099c0, imac 0x1319a0 { + auto player = p2 ? m_player2 : m_player1; + if (disable) player->disablePlayerControls(); + else player->enablePlayerControls(); + } void togglePlayerStreakBlend(bool) = imac 0x131910, m1 0x10994c; void togglePlayerVisibility(bool visible, bool player1) = win inline { if (player1) @@ -14199,14 +14203,14 @@ class PlayerObject : GameObject, AnimatedSpriteDelegate { void disableCustomGlowColor() { m_hasCustomGlowColor = false; } - TodoReturn disablePlayerControls(); + void disablePlayerControls() = win 0x37d3c0, m1 0x3987e8, imac 0x423c30; void disableSwingFire() = win 0x378f10, m1 0x3924d4, imac 0x41d060, ios 0x238034; void doReversePlayer(bool) = win 0x376540, m1 0x383584, imac 0x40b5e0; void enableCustomGlowColor(cocos2d::_ccColor3B const& color) { m_hasCustomGlowColor = true; m_glowColor = color; } - void enablePlayerControls(); + void enablePlayerControls() = win 0x37d510, m1 0x398844, imac 0x423c90; void exitPlatformerAnimateJump(); void fadeOutStreak2(float) = win 0x37e1a0, m1 0x392438, imac 0x41cfd0, ios 0x237f98; void flashPlayer(float, float, cocos2d::ccColor3B mainColor, cocos2d::ccColor3B secondColor) = imac 0x418210; From 16e81623510e2517620ccf21e1c2312fd385705a Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Tue, 1 Oct 2024 01:28:46 -0400 Subject: [PATCH 44/84] TableView fixes and stuff (#754) * Update GeometryDash.bro * okay * build * revert --- bindings/2.206/GeometryDash.bro | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 2e62253b1..1ab464c64 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -18653,6 +18653,8 @@ class TableView : CCScrollLayerExt, CCScrollLayerExtDelegate { m_dataSource = nullptr; m_cellDelegate = nullptr; m_unused2 = false; + this->setTouchEnabled(true); + this->setMouseEnabled(true); m_vScrollbarVisible = false; m_hScrollbarVisible = false; m_disableHorizontal = false; @@ -18699,8 +18701,8 @@ class TableView : CCScrollLayerExt, CCScrollLayerExtDelegate { TodoReturn scrollToIndexPath(CCIndexPath&); TodoReturn touchFinish(cocos2d::CCTouch*); - virtual void onEnter() = imac 0x62e110 { cocos2d::CCLayer::onEnter(); } - virtual void onExit() = imac 0x62e120 { cocos2d::CCLayer::onExit(); } + virtual void onEnter() = win 0x51f30, m1 0x54f058, imac 0x62e110; + virtual void onExit() = win 0x73d50, m1 0x54f05c, imac 0x62e120; virtual bool ccTouchBegan(cocos2d::CCTouch*, cocos2d::CCEvent*) = win 0x73d60, m1 0x54f1d8, ios 0x3101d0, imac 0x62e2c0; virtual void ccTouchMoved(cocos2d::CCTouch*, cocos2d::CCEvent*) = win 0x73ff0, m1 0x54fc20, ios 0x310988, imac 0x62ee00; virtual void ccTouchEnded(cocos2d::CCTouch*, cocos2d::CCEvent*) = win 0x73f10, m1 0x54f9d8, imac 0x62ebc0; From 92adbf2f8fac59a045a0e728fc96dd443f72a5c0 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Tue, 1 Oct 2024 01:29:31 -0400 Subject: [PATCH 45/84] TopArtistsLayer (#752) * TopArtistsLayer * Update Windows.cpp * gg * LMFAO * fixed... * m * revert --- bindings/2.206/GeometryDash.bro | 48 +++++++++++++++++++++++++-------- test/members/Windows.cpp | 1 + 2 files changed, 38 insertions(+), 11 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 1ab464c64..4196f81e7 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -19016,25 +19016,51 @@ class ToggleTriggerAction { [[link(android)]] class TopArtistsLayer : FLAlertLayer, OnlineListDelegate { // virtual ~TopArtistsLayer(); + TopArtistsLayer() { + m_topArtists = nullptr; + m_listLayer = nullptr; + m_loadingCircle = nullptr; + m_page = 0; + } - static TopArtistsLayer* create(); + static TopArtistsLayer* create() = win inline, m1 0x2a15b8, imac 0x30f920 { + auto ret = new TopArtistsLayer(); + if (ret->init()) { + ret->autorelease(); + return ret; + } + delete ret; + return nullptr; + } - bool isCorrect(char const*); - void loadPage(int); - void onClose(cocos2d::CCObject* sender); - void onNextPage(cocos2d::CCObject* sender); - void onPrevPage(cocos2d::CCObject* sender); - TodoReturn setupLeaderboard(cocos2d::CCArray*); - TodoReturn updateLevelsLabel(); + bool isCorrect(char const*) = m1 0x2a2018, imac 0x310450; + void loadPage(int) = win 0x49eab0, m1 0x2a269c, imac 0x310b20; + void onClose(cocos2d::CCObject* sender) = win 0x82fc0, m1 0x2a1de4, imac 0x3101f0; + void onNextPage(cocos2d::CCObject* sender) = win 0x49ef20, m1 0x2a1e2c, imac 0x310240; + void onPrevPage(cocos2d::CCObject* sender) = win 0x49ef30, m1 0x2a1e20, imac 0x310220; + void setupLeaderboard(cocos2d::CCArray*) = win 0x49e780, m1 0x2a1e38, imac 0x310260; + void updateLevelsLabel() = m1 0x2a2614, imac 0x310a80; virtual bool init() = win 0x49df70, m1 0x2a16c0, imac 0x30fa80; - virtual void registerWithTouchDispatcher() = m1 0x2a1fe0, imac 0x310410; - TodoReturn doPause(); - virtual void keyBackClicked() = m1 0x2a1f64, imac 0x3103a0; + virtual void registerWithTouchDispatcher() = win 0x41750, m1 0x2a1fe0, imac 0x310410; + virtual void keyBackClicked() = win 0x82ff0, m1 0x2a1f64, imac 0x3103a0; virtual void show() = win 0x84fb0, m1 0x2a2a5c, imac 0x310ee0; virtual void loadListFinished(cocos2d::CCArray*, char const*) = win 0x49e710, m1 0x2a2020, imac 0x310460; virtual void loadListFailed(char const*) = win 0x49e770, m1 0x2a20e4, imac 0x310520; virtual void setupPageInfo(gd::string, char const*) = win 0x49e8d0, m1 0x2a210c, imac 0x310560; + + cocos2d::CCArray* m_topArtists; + GJCommentListLayer* m_listLayer; + LoadingCircle* m_loadingCircle; + CCMenuItemSpriteExtra* m_nextButton; + CCMenuItemSpriteExtra* m_prevButton; + void* m_unkPtr; + cocos2d::CCLabelBMFont* m_pageInfoLabel; + int m_itemCount; + int m_pageStartIdx; + int m_pageEndIdx; + int m_unkSize4; + int m_page; } [[link(android)]] diff --git a/test/members/Windows.cpp b/test/members/Windows.cpp index a7edba686..05039dc24 100644 --- a/test/members/Windows.cpp +++ b/test/members/Windows.cpp @@ -312,6 +312,7 @@ GEODE_SIZE_CHECK(RateLevelLayer, 0x298); GEODE_SIZE_CHECK(CustomSongLayer, 0x2b0); GEODE_SIZE_CHECK(SelectFontLayer, 0x290); GEODE_SIZE_CHECK(CCSpriteWithHue, 0x298); +GEODE_SIZE_CHECK(TopArtistsLayer, 0x2d0); GEODE_MEMBER_CHECK(EditorUI, m_transformState, 0x210); From b8ebb824bfe121dde59976405e296f683ad2ff0f Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Tue, 1 Oct 2024 01:31:14 -0400 Subject: [PATCH 46/84] GJMapPack and MapPackCell (#736) * gjmappack * mappackcell * lemme try this * that could have been bad --- bindings/2.206/GeometryDash.bro | 70 +++++++++++++++++++++++---------- 1 file changed, 50 insertions(+), 20 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 4196f81e7..14b219eab 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -9612,15 +9612,38 @@ class GJMapObject : cocos2d::CCNode { [[link(android)]] class GJMapPack : cocos2d::CCNode { // virtual ~GJMapPack(); + GJMapPack() { + m_levels = nullptr; + m_packID = 0; + m_difficulty = GJDifficulty::Auto; + m_stars = 0; + m_coins = 0; + m_packName = ""; + m_levelStrings = ""; + m_MId = 0; + m_isGauntlet = false; + } + + static GJMapPack* create() = win inline, m1 0x4b4a58, imac 0x566970 { + auto ret = new GJMapPack(); + if (ret->init()) { + ret->autorelease(); + return ret; + } + delete ret; + return nullptr; + } + static GJMapPack* create(cocos2d::CCDictionary*) = win 0x1679a0, m1 0x48c0a8, imac 0x539620; - static GJMapPack* create(); - static GJMapPack* create(cocos2d::CCDictionary*); - - int completedMaps() = imac 0x566e40; - bool hasCompletedMapPack() = win 0x168810, imac 0x566ef0, m1 0x4b4f88, ios 0xb1614; - TodoReturn parsePackColors(gd::string, gd::string); - TodoReturn parsePackLevels(gd::string); - int totalMaps() { + int completedMaps() = win 0x168810, m1 0x4b4ec4, imac 0x566e40; + bool hasCompletedMapPack() = win inline, imac 0x566ef0, m1 0x4b4f88, ios 0xb1614 { + auto total = this->totalMaps(); + if (total > 0) return this->completedMaps() >= total; + else return 0; + } + void parsePackColors(gd::string, gd::string) = win 0x168560, m1 0x4b4c00, imac 0x566b40; + void parsePackLevels(gd::string) = m1 0x4b4afc, imac 0x566a30; + int totalMaps() = win inline, m1 0x48c988, imac 0x53a080 { if (this->m_levels) { return this->m_levels->count(); } @@ -9628,7 +9651,7 @@ class GJMapPack : cocos2d::CCNode { return 0; } - virtual bool init() = m1 0x4b4e64, imac 0x566dc0; + virtual bool init() = win 0x168500, m1 0x4b4e64, imac 0x566dc0; cocos2d::CCArray* m_levels; int m_packID; @@ -9641,10 +9664,6 @@ class GJMapPack : cocos2d::CCNode { cocos2d::ccColor3B m_barColour; int m_MId; bool m_isGauntlet; - - - - } [[link(android)]] @@ -12971,14 +12990,25 @@ class MapPackCell : TableViewCell { MapPackCell(char const*, float, float); void loadFromMapPack(GJMapPack*) = win 0xaf940, m1 0x1ea984, imac 0x23ffb0; - void onClaimReward(cocos2d::CCObject* sender); - void onClick(cocos2d::CCObject* sender); - TodoReturn playCompleteEffect(); - TodoReturn reloadCell(); - TodoReturn updateBGColor(int); + void onClaimReward(cocos2d::CCObject* sender) = win 0xb0540, m1 0x1f848c, imac 0x24e520; + void onClick(cocos2d::CCObject* sender) = win 0xb0420, m1 0x1f8294, imac 0x24e330; + void playCompleteEffect() = win 0xb05c0, m1 0x1f8508, imac 0x24e5a0; + void reloadCell() = win inline, m1 0x1f44dc, imac 0x24a030 { + this->loadFromMapPack(m_mapPack); + } + void updateBGColor(int idx) = win inline, m1 0x1eb4b8, imac 0x240b80 { + m_backgroundLayer->setColor(idx % 2 == 0 ? cocos2d::ccColor3B { 161, 88, 44 } : cocos2d::ccColor3B { 194, 114, 62 }); + m_backgroundLayer->setOpacity(255); + } virtual bool init() = win 0xaf8e0, m1 0x1f824c, imac 0x24e2e0; - virtual void draw() = m1 0x1f8744, imac 0x24e7d0; + virtual void draw() = win 0xabd00, m1 0x1f8744, imac 0x24e7d0; + + GJMapPack* m_mapPack; + CCMenuItemSpriteExtra* m_viewButton; + CCMenuItemSpriteExtra* m_rewardButton; + cocos2d::CCArray* m_rewardLabels; + cocos2d::CCArray* m_rewardSprites; } [[link(android)]] @@ -18298,7 +18328,7 @@ class SongInfoLayer : FLAlertLayer { class SongInfoObject : cocos2d::CCNode { // virtual ~SongInfoObject(); - static SongInfoObject* create(cocos2d::CCDictionary*) = imac 0x539620; + static SongInfoObject* create(cocos2d::CCDictionary*); static SongInfoObject* create(int songID, gd::string songName, gd::string artistName, int artistID, float filesize, gd::string youtubeVideo, gd::string youtubeChannel, gd::string url, int priority, gd::string unk1, bool unk2, int unk3, int unk4) = win 0x3245a0; static SongInfoObject* create(int); From fb1a268534cbd7461c7d38ec60a267d8fad56477 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Tue, 1 Oct 2024 01:31:34 -0400 Subject: [PATCH 47/84] SelectArtLayer and SelectSettingLayer (#740) * SelectArtLayer * SelectSettingLayer * SelectSettingType * fixes * more fixes --- bindings/2.206/GeometryDash.bro | 74 ++++++++++++++++++++++++-------- bindings/include/Geode/Enums.hpp | 6 ++- 2 files changed, 61 insertions(+), 19 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 14b219eab..3d7a03e06 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -15710,15 +15710,27 @@ class SelectArtDelegate { class SelectArtLayer : FLAlertLayer { // virtual ~SelectArtLayer(); - static SelectArtLayer* create(SelectArtType, int); - - bool init(SelectArtType, int); - void onClose(cocos2d::CCObject* sender); - void onSelectCustom(cocos2d::CCObject* sender); - TodoReturn selectArt(cocos2d::CCObject*); - TodoReturn updateSelectedCustom(int); + static SelectArtLayer* create(SelectArtType, int) = win 0x301b60, m1 0x211ca0, imac 0x26b2c0; + + bool init(SelectArtType, int) = win 0x301c70, m1 0x2122d4, imac 0x26baf0; + void onClose(cocos2d::CCObject* sender) = win 0x302a40, m1 0x212d60, imac 0x26c5f0; + void onSelectCustom(cocos2d::CCObject* sender) = win 0x302980, m1 0x212dc0, imac 0x26c640; + void selectArt(cocos2d::CCObject* sender) = win 0x3028c0, m1 0x212c78, imac 0x26c520; + void updateSelectedCustom(int idx) = win inline, m1 0x211dd0, imac 0x26b430 { + if (m_lineSprites) { + m_line = idx; + this->onSelectCustom(nullptr); + } + } virtual void keyBackClicked() = win 0x302a90, m1 0x212e68, imac 0x26c700; + + cocos2d::CCArray* m_artSprites; + cocos2d::CCArray* m_lineSprites; + int m_art; + int m_line; + SelectArtType m_type; + SelectArtDelegate* m_delegate; } [[link(android)]] @@ -15826,22 +15838,48 @@ class SelectSettingDelegate { class SelectSettingLayer : FLAlertLayer { // virtual ~SelectSettingLayer(); - static SelectSettingLayer* create(SelectSettingType, int); + static SelectSettingLayer* create(SelectSettingType, int) = win 0x302ae0, m1 0x21153c, imac 0x26aae0; - TodoReturn frameForItem(SelectSettingType, int); - TodoReturn frameForValue(SelectSettingType, int); - TodoReturn getSelectedFrame(); - TodoReturn getSelectedValue(); - TodoReturn idxToValue(SelectSettingType, int); - bool init(SelectSettingType, int); - void onClose(cocos2d::CCObject* sender); - void onSelect(cocos2d::CCObject* sender); - TodoReturn valueToIdx(SelectSettingType, int); + static gd::string frameForItem(SelectSettingType, int) = win 0x303340, m1 0x213734, imac 0x26d0d0; + static gd::string frameForValue(SelectSettingType type, int value) = win inline, m1 0x2112d0, imac 0x26a780 { + return frameForItem(type, valueToIdx(type, value)); + } + gd::string getSelectedFrame() = win inline, m1 0x2117f8, imac 0x26adc0 { + return frameForValue(m_type, m_settingID); + } + int getSelectedValue() = win inline, m1 0x2117c4, imac 0x26ad90 { + return idxToValue(m_type, m_settingID); + } + static int idxToValue(SelectSettingType type, int idx) = win inline, m1 0x213aac, imac 0x26d3b0 { + if (type != SelectSettingType::StartingSpeed) return idx; + + switch (idx) { + case 0: return 1; + case 1: return 0; + case 2: case 3: case 4: return idx; + default: return 0; + } + } + bool init(SelectSettingType, int) = win 0x302bf0, m1 0x213154, imac 0x26cae0; + void onClose(cocos2d::CCObject* sender) = win 0x303890, m1 0x213a4c, imac 0x26d360; + void onSelect(cocos2d::CCObject* sender) = win 0x3037e0, m1 0x213974, imac 0x26d2b0; + static int valueToIdx(SelectSettingType type, int value) = win inline, m1 0x213708, imac 0x26d0a0 { + if (type != SelectSettingType::StartingSpeed) return value; + + switch (value) { + case 0: return 1; + case 1: return 0; + case 2: case 3: case 4: return value; + default: return 1; + } + } virtual void keyBackClicked() = win 0x3038e0, m1 0x213ad8, imac 0x26d3e0; - PAD = win 0x4; + cocos2d::CCArray* m_settingSprites; int m_settingID; + SelectSettingType m_type; + SelectSettingDelegate* m_delegate; } [[link(android)]] diff --git a/bindings/include/Geode/Enums.hpp b/bindings/include/Geode/Enums.hpp index 6fd5c7b63..0bd937be3 100644 --- a/bindings/include/Geode/Enums.hpp +++ b/bindings/include/Geode/Enums.hpp @@ -395,7 +395,11 @@ enum class GJFeatureState { }; enum class GJKeyGroup {}; enum class GJKeyCommand {}; -enum class SelectSettingType {}; +enum class SelectSettingType { + StartingModeClassic = 0, + StartingModePlatformer = 1, + StartingSpeed = 2, +}; enum class gjParticleValue { MaxParticles = 1, Duration = 2, From c172531aaf4550e3a8b55e71357b700552b76e32 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Tue, 1 Oct 2024 01:31:54 -0400 Subject: [PATCH 48/84] EnhancedGameObject and EffectGameObject macOS paddings (#749) * Update MacOSArm.cpp * Update MacOSIntel.cpp * Update Android64.cpp * members!!! * remove comment * fix padding * throw in some bools * arm * intel * wait that's the same thing * geode member check * removal * temp fix --- bindings/2.206/GeometryDash.bro | 28 ++++++++++++++-------------- test/members/Android64.cpp | 2 +- test/members/MacOSArm.cpp | 2 ++ test/members/MacOSIntel.cpp | 3 +++ 4 files changed, 20 insertions(+), 15 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 3d7a03e06..91b27b7a9 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -4420,7 +4420,7 @@ class EffectGameObject : EnhancedGameObject { bool m_isDynamicMode; // property 544 bool m_isSilent; - PAD = android 0x6, win 0x6; + PAD = android 0x6, win 0x6, mac 0x6; // property 68 float m_rotationDegrees; // property 69 @@ -4481,17 +4481,17 @@ class EffectGameObject : EnhancedGameObject { bool m_isDualMode; // property 76 int m_animationID; - PAD = android 0x8, win 0x8; + PAD = android 0x8, win 0x8, mac 0x8; // property 87 bool m_isMultiTriggered; - PAD = android 0x2, win 0x2; + PAD = android 0x2, win 0x2, mac 0x2; // property 93 bool m_triggerOnExit; // property 95 int m_itemID2; // property 534 int m_property534; - PAD = android 0x1, win 0x1; + PAD = android 0x1, win 0x1, mac 0x1; // property 94 bool m_isDynamicBlock; // property 80 @@ -4514,12 +4514,12 @@ class EffectGameObject : EnhancedGameObject { int m_collectiblePoints; // property 463 bool m_hasNoAnimation; - PAD = android32 0x1f, android64 0x23, win 0x23; + PAD = android32 0x1f, android64 0x23, win 0x23, mac 0x23; // property 148 float m_gravityValue; // property 284 bool m_isSinglePTouch; - PAD = android 0x3, win 0x3; + PAD = android 0x3, win 0x3, mac 0x3; // property 371 float m_zoomValue; // property 111 @@ -4544,15 +4544,15 @@ class EffectGameObject : EnhancedGameObject { int m_channelValue; // property 117 bool m_isReverse; - PAD = android 0xb, win 0xb; + PAD = android 0xb, win 0xb, mac 0xb; // property 12 int m_secretCoinID; - PAD = android32 0x1c, android64 0x24, win 0x24; + PAD = android32 0x1c, android64 0x24, win 0x24, mac 0x24; // property 280 bool m_ignoreGroupParent; // property 281 bool m_ignoreLinkedObjects; - PAD = android 0x1, win 0x1; + PAD = android 0x1, win 0x1, mac 0x1; } [[link(android), depends(CAState), depends(PulseEffectAction), depends(CountTriggerAction), depends(OpacityEffectAction), depends(TouchToggleAction), depends(CollisionTriggerAction), depends(ToggleTriggerAction), depends(SpawnTriggerAction), depends(GroupCommandObject2), depends(TimerItem), depends(TimerTriggerAction)]] @@ -4699,17 +4699,17 @@ class EnhancedGameObject : GameObject { virtual void updateSyncedAnimation(float, int) = win 0x19ddf0, imac 0x2577a0, m1 0x2000b0; virtual TodoReturn updateAnimateOnTrigger(bool) = m1 0x201478, imac 0x2596c0; - PAD = android32 0x25, win 0x2a, android64 0x22; + PAD = android32 0x25, win 0x2a, android64 0x22, mac 0x22; bool m_hasCustomAnimation; bool m_hasCustomRotation; // property 98 bool m_disableRotation; - PAD = android32 0x3, win 0x3, android64 0x3; + PAD = android32 0x3, win 0x3, android64 0x3, mac 0x3; // property 97 float m_rotationSpeed; - PAD = android32 0xc, win 0xc, android64 0xc; + PAD = android32 0xc, win 0xc, android64 0xc, mac 0xc; // property 106 bool m_animationRandomizedStart; @@ -4727,7 +4727,7 @@ class EnhancedGameObject : GameObject { int m_singleFrame; // property 592 bool m_animationOffset; - PAD = android32 0xf, win 0xf, android64 0xf; + PAD = android32 0xf, win 0xf, android64 0xf, mac 0xf; // property 214 bool m_animateOnlyWhenActive; @@ -4735,7 +4735,7 @@ class EnhancedGameObject : GameObject { bool m_isNoMultiActivate; // used in platformer stuff // property 99 bool m_isMultiActivate; // 0x592 - PAD = android32 0x4, win 0x4, android64 0x8; + PAD = android32 0x4, win 0x4, android64 0x8, mac 0x8; } [[link(android)]] diff --git a/test/members/Android64.cpp b/test/members/Android64.cpp index df0e47da8..7754c317e 100644 --- a/test/members/Android64.cpp +++ b/test/members/Android64.cpp @@ -115,7 +115,7 @@ GEODE_MEMBER_CHECK(FMODAudioEngine, m_system, 0x218); GEODE_SIZE_CHECK(SimplePlayer, 0x2a8); GEODE_SIZE_CHECK(EnhancedGameObject, 0x598); -// GEODE_SIZE_CHECK(EffectGameObject, 0x720); +GEODE_SIZE_CHECK(EffectGameObject, 0x720); GEODE_MEMBER_CHECK(GameObject, m_hasExtendedCollision, 0x27c); GEODE_MEMBER_CHECK(GameObject, m_activeMainColorID, 0x290); diff --git a/test/members/MacOSArm.cpp b/test/members/MacOSArm.cpp index 0b1ccde40..eb055c2b3 100644 --- a/test/members/MacOSArm.cpp +++ b/test/members/MacOSArm.cpp @@ -38,6 +38,8 @@ GEODE_MEMBER_CHECK(GJBaseGameLayer, m_sectionSizes, 0x3388); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_audioVisualizerBG, 0x3420); GEODE_MEMBER_CHECK(GJBaseGameLayer, m_loadingLayer, 0x3498); +GEODE_SIZE_CHECK(EnhancedGameObject, 0x5a8); +GEODE_SIZE_CHECK(EffectGameObject, 0x730); // GEODE_SIZE_CHECK(PlayerObject, 0xbe8); GEODE_MEMBER_CHECK(PlayerObject, m_mainLayer, 0x550); diff --git a/test/members/MacOSIntel.cpp b/test/members/MacOSIntel.cpp index 49fbe0ad5..57fa0074b 100644 --- a/test/members/MacOSIntel.cpp +++ b/test/members/MacOSIntel.cpp @@ -58,6 +58,9 @@ GEODE_MEMBER_CHECK(PlayLayer, m_isPaused, 0x36F7); // GEODE_MEMBER_CHECK(GameObject, m_groups, 0x458); // GEODE_MEMBER_CHECK(GameObject, m_effectManager, 0x4d8); +GEODE_SIZE_CHECK(EnhancedGameObject, 0x5a8); +GEODE_SIZE_CHECK(EffectGameObject, 0x730); + // // EffectGameObject // GEODE_MEMBER_CHECK(EffectGameObject, m_duration, 0x4f0); // GEODE_MEMBER_CHECK(EffectGameObject, m_followMod, 0x530); From fdf792d5dfccb5fab44d9a65859dbc5f6a4bbde5 Mon Sep 17 00:00:00 2001 From: RaZooM <160235728+RazoomGD@users.noreply.github.com> Date: Tue, 1 Oct 2024 08:33:09 +0300 Subject: [PATCH 49/84] Add new addresses and return types (#753) Co-authored-by: RaZooM --- bindings/2.206/GeometryDash.bro | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 91b27b7a9..de2daf1e6 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -11866,13 +11866,13 @@ class LevelEditorLayer : GJBaseGameLayer, LevelSettingsDelegate { gd::string getLevelString() = win 0x2c31b0, imac 0xe7660; TodoReturn getLockedLayers(); TodoReturn getNextColorChannel(); - TodoReturn getNextFreeAreaEffectID(cocos2d::CCArray*); + int getNextFreeAreaEffectID(cocos2d::CCArray*) = win 0x2c7350; TodoReturn getNextFreeBlockID(cocos2d::CCArray*); int getNextFreeEditorLayer(cocos2d::CCArray*); TodoReturn getNextFreeEnterChannel(cocos2d::CCArray*); - TodoReturn getNextFreeGradientID(cocos2d::CCArray*); + int getNextFreeGradientID(cocos2d::CCArray*) = win 0x2c7430; int getNextFreeGroupID(cocos2d::CCArray*) = win 0x2c6cb0, m1 0xd37e0, imac 0xef5f0; - TodoReturn getNextFreeItemID(cocos2d::CCArray*); + int getNextFreeItemID(cocos2d::CCArray*) = win 0x2c6f30; TodoReturn getNextFreeOrderChannel(cocos2d::CCArray*); TodoReturn getNextFreeSFXGroupID(cocos2d::CCArray*); TodoReturn getNextFreeSFXID(cocos2d::CCArray*); @@ -11896,7 +11896,7 @@ class LevelEditorLayer : GJBaseGameLayer, LevelSettingsDelegate { } return false; } - TodoReturn objectAtPosition(cocos2d::CCPoint) = win 0x2c16a0; + GameObject* objectAtPosition(cocos2d::CCPoint) = win 0x2c16a0; TodoReturn objectMoved(GameObject*) = imac 0xedcf0; TodoReturn objectsAtPosition(cocos2d::CCPoint) = imac 0xe5c40; cocos2d::CCArray* objectsInRect(cocos2d::CCRect, bool); From 7ed05529fc135860b92828c8e328c6e8b31246e7 Mon Sep 17 00:00:00 2001 From: alk <45172705+altalk23@users.noreply.github.com> Date: Tue, 1 Oct 2024 13:49:34 +0300 Subject: [PATCH 50/84] Add cclightning.bro Co-authored-by: Justin <52604018+hiimjustin000@users.noreply.github.com> --- bindings/2.206/Cocos2d.bro | 71 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index 792d1910f..e472bd390 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -3048,3 +3048,74 @@ class pugi::xml_node { _root = nullptr; } } + +[[link(android)]] +class cocos2d::CCLightning : cocos2d::CCNode, cocos2d::CCRGBAProtocol { + static cocos2d::CCLightning* lightningWithStrikePoint(cocos2d::CCPoint, cocos2d::CCPoint, float) = win 0x436c0, m1 0x5103ec, imac 0x5e6ee0, ios 0x3560c8; + static cocos2d::CCLightning* lightningWithStrikePoint(cocos2d::CCPoint p1) = win inline, m1 0x510288, imac 0x5e6d30, ios inline { + auto ret = new CCLightning(); + if (ret->initWithStrikePoint(p1)) { + ret->autorelease(); + return ret; + } + delete ret; + return nullptr; + } + + bool initWithStrikePoint(cocos2d::CCPoint, cocos2d::CCPoint, float) = win 0x43760, m1 0x510504, imac 0x5e7020, ios 0x356160; + bool initWithStrikePoint(cocos2d::CCPoint p1) = win inline, m1 0x510398, imac 0x5e6e80, ios inline { + return this->initWithStrikePoint(p1, CCPointZero, .5f); + } + + CCLightning() = win 0x43580, m1 0x510068, imac 0x5e6a90, ios 0x355fc4; + // ~CCLightning() = win 0x43650, m1 0x5101fc, imac 0x5e6c80, ios 0x35606c; + + void strike() = win 0x43a00, m1 0x510628, imac 0x5e7160, ios 0x356240; + void strikeFinished() = win 0x43a70, m1 0x51087c, imac 0x5e73f0, ios 0x3563ac; + void strikeRandom() = win inline, m1 0x510794, imac 0x5e7310, ios inline { + m_seed = rand(); + this->strike(); + } + void strikeWithSeed(uint64_t seed) = win inline, m1 0x51080c, imac 0x5e7380, ios inline { + m_seed = seed; + this->strike(); + } + + virtual void draw() = win 0x43880, m1 0x510694, imac 0x5e71c0, ios 0x3562ac; + virtual bool isOpacityModifyRGB() = win 0x43ae0, m1 0x51090c, imac 0x5e74e0, ios 0x35643c; + virtual void setOpacityModifyRGB(bool) = win 0x43af0, m1 0x51091c, imac 0x5e7500, ios 0x35644c; + virtual unsigned char getOpacity() = win 0x43a90, m1 0x510894, imac 0x5e7410, ios 0x3563c4; + virtual unsigned char getDisplayedOpacity() = win 0x43aa0, m1 0x5108a4, imac 0x5e7430, ios 0x3563d4; + virtual void setOpacity(unsigned char) = win 0x43ab0, m1 0x5108c0, imac 0x5e7460, ios 0x3563f0; + virtual void updateDisplayedOpacity(unsigned char) = win 0x43b00, m1 0x51092c, imac 0x5e7520, ios 0x35645c; + virtual bool isCascadeOpacityEnabled() = win 0x43b10, m1 0x51093c, imac 0x5e7540, ios 0x35646c; + virtual void setCascadeOpacityEnabled(bool) = win 0x43b20, m1 0x51094c, imac 0x5e7560, ios 0x35647c; + virtual cocos2d::_ccColor3B const& getColor() = win 0x43ac0, m1 0x5108d0, imac 0x5e7480, ios 0x356400; + virtual cocos2d::_ccColor3B const& getDisplayedColor() = win 0x43b30, m1 0x51095c, imac 0x5e7580, ios 0x35648c; + virtual void setColor(cocos2d::_ccColor3B const&) = win 0x43ad0, m1 0x5108e0, imac 0x5e74a, ios 0x356410; + virtual void updateDisplayedColor(cocos2d::_ccColor3B const&) = win 0x43b40, m1 0x51096c, imac 0x5e75a0, ios 0x35649c; + virtual bool isCascadeColorEnabled() = win 0x43b50, m1 0x510994, imac 0x5e75e0, ios 0x3564c4; + virtual void setCascadeColorEnabled(bool) = win 0x43b60, m1 0x5109a4, imac 0x5e7600, ios 0x3564d4; + + cocos2d::CCPoint m_strikePoint; + cocos2d::CCPoint m_strikePoint2; + bool m_split; + int m_displacement; + int m_minDisplacement; + uint64_t m_seed; + float m_lineWidth; + bool m_unkBool; + bool m_removeAfterFinished; + float m_duration; + float m_opacityModify; + std::array* m_lightningPoints; + uint32_t m_numPoints; + uint8_t m_displayedOpacity; + uint8_t m_opacity; + cocos2d::ccColor3B m_displayedColor; + cocos2d::ccColor3B m_color; + bool m_cascadeColorEnabled; + bool m_cascadeOpacityEnabled; + bool m_opacityModifyEnabled; +} + From f2902dd5ef1bc2ac25e7ecedf4624aea6ed9aec3 Mon Sep 17 00:00:00 2001 From: alk <45172705+altalk23@users.noreply.github.com> Date: Tue, 1 Oct 2024 13:55:37 +0300 Subject: [PATCH 51/84] comment cclighting ctor --- bindings/2.206/Cocos2d.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index e472bd390..2bdedb576 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -3067,7 +3067,7 @@ class cocos2d::CCLightning : cocos2d::CCNode, cocos2d::CCRGBAProtocol { return this->initWithStrikePoint(p1, CCPointZero, .5f); } - CCLightning() = win 0x43580, m1 0x510068, imac 0x5e6a90, ios 0x355fc4; + // CCLightning() = win 0x43580, m1 0x510068, imac 0x5e6a90, ios 0x355fc4; // ~CCLightning() = win 0x43650, m1 0x5101fc, imac 0x5e6c80, ios 0x35606c; void strike() = win 0x43a00, m1 0x510628, imac 0x5e7160, ios 0x356240; From 19327254a0555deebf904177d8f1c958f209d0f8 Mon Sep 17 00:00:00 2001 From: alk <45172705+altalk23@users.noreply.github.com> Date: Tue, 1 Oct 2024 14:00:06 +0300 Subject: [PATCH 52/84] Update Shared.hpp --- codegen/src/Shared.hpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/codegen/src/Shared.hpp b/codegen/src/Shared.hpp index cb58c4c16..05f22e2a2 100644 --- a/codegen/src/Shared.hpp +++ b/codegen/src/Shared.hpp @@ -61,6 +61,10 @@ inline bool is_cocos_class(std::string const& str) { return can_find(str, "cocos2d") || can_find(str, "pugi::") || str == "DS_Dictionary" || str == "ObjectDecoder" || str == "ObjectDecoderDelegate"; } +inline bool is_in_cocos_dll(std::string const& str) { + return is_cocos_class(str) && !can_find(str, "CCLightning"); +} + enum class BindStatus { Binded, Inlined, @@ -289,7 +293,7 @@ namespace codegen { }; if (codegen::getStatus(*fn) == BindStatus::NeedsBinding || codegen::platformNumber(field) != -1) { - if (is_cocos_class(field.parent) && codegen::platform == Platform::Windows) { + if (is_in_cocos_dll(field.parent) && codegen::platform == Platform::Windows) { return fmt::format("base::getCocos() + 0x{:x}", codegen::platformNumber(fn->binds)); } else { From c3e3657557c21ec19c2ef27c9c493bd72f108573 Mon Sep 17 00:00:00 2001 From: alk <45172705+altalk23@users.noreply.github.com> Date: Tue, 1 Oct 2024 14:08:09 +0300 Subject: [PATCH 53/84] Update Cocos2d.bro --- bindings/2.206/Cocos2d.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index 2bdedb576..e472bd390 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -3067,7 +3067,7 @@ class cocos2d::CCLightning : cocos2d::CCNode, cocos2d::CCRGBAProtocol { return this->initWithStrikePoint(p1, CCPointZero, .5f); } - // CCLightning() = win 0x43580, m1 0x510068, imac 0x5e6a90, ios 0x355fc4; + CCLightning() = win 0x43580, m1 0x510068, imac 0x5e6a90, ios 0x355fc4; // ~CCLightning() = win 0x43650, m1 0x5101fc, imac 0x5e6c80, ios 0x35606c; void strike() = win 0x43a00, m1 0x510628, imac 0x5e7160, ios 0x356240; From c98f95dc237fd185fada7269411d1e599b67787d Mon Sep 17 00:00:00 2001 From: alk <45172705+altalk23@users.noreply.github.com> Date: Tue, 1 Oct 2024 14:16:49 +0300 Subject: [PATCH 54/84] Update Cocos2d.bro --- bindings/2.206/Cocos2d.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index e472bd390..e3d5b930f 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -3068,7 +3068,7 @@ class cocos2d::CCLightning : cocos2d::CCNode, cocos2d::CCRGBAProtocol { } CCLightning() = win 0x43580, m1 0x510068, imac 0x5e6a90, ios 0x355fc4; - // ~CCLightning() = win 0x43650, m1 0x5101fc, imac 0x5e6c80, ios 0x35606c; + ~CCLightning() = win 0x43650, m1 0x5101fc, imac 0x5e6c80, ios 0x35606c; void strike() = win 0x43a00, m1 0x510628, imac 0x5e7160, ios 0x356240; void strikeFinished() = win 0x43a70, m1 0x51087c, imac 0x5e73f0, ios 0x3563ac; From 7fbb83d919eafdd8514c7afe1bb7ccf9e534004e Mon Sep 17 00:00:00 2001 From: altalk23 <45172705+altalk23@users.noreply.github.com> Date: Tue, 1 Oct 2024 15:29:24 +0300 Subject: [PATCH 55/84] some functions --- bindings/2.206/GeometryDash.bro | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index de2daf1e6..d273ef0e5 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -3105,7 +3105,7 @@ class CustomListView : BoomListView { void reloadAll() = win 0xaa280, imac 0x249a00, m1 0x1f3f7c; virtual void setupList(float) = win 0xa9bb0, m1 0x1f3900, imac 0x2491d0; - virtual TableViewCell* getListCell(char const*) = m1 0x1e72a4, imac 0x23bdc0; + virtual TableViewCell* getListCell(char const*) = m1 0x1e72a4, imac 0x23bdc0, win 0xa8730; virtual void loadCell(TableViewCell*, int) = win 0xa94f0, m1 0x1e82d8, imac 0x23d950; int m_unknown; @@ -5082,7 +5082,7 @@ class FMODAudioEngine : cocos2d::CCNode { channel->setPaused(false); } TodoReturn reverbToString(FMODReverbPreset); - TodoReturn saveAudioState(FMODAudioState&); + TodoReturn saveAudioState(FMODAudioState&) = win 0x54a70; void setBackgroundMusicVolume(float volume) = win inline, imac 0x3eba40, m1 0x369284, ios 0x143424 { m_musicVolume = volume; if (m_backgroundMusicChannel) m_backgroundMusicChannel->setVolume(volume); @@ -7631,7 +7631,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { TodoReturn applyRemap(EffectGameObject*, gd::vector const&, gd::unordered_map&); void applySFXEditTrigger(int, int, SFXTriggerGameObject*); void applyShake(cocos2d::CCPoint&); - void assignNewStickyGroups(cocos2d::CCArray*); + void assignNewStickyGroups(cocos2d::CCArray*) = win 0x215530; TodoReturn asyncBGLoaded(int); TodoReturn asyncGLoaded(int); TodoReturn asyncMGLoaded(int); @@ -7734,7 +7734,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { TodoReturn getTargetGroup(int, int); TodoReturn getTargetGroupOrigin(int, int); TodoReturn gravBumpPlayer(PlayerObject*, EffectGameObject*) = imac 0x11c8e0, m1 0xf8c48; - void groupStickyObjects(cocos2d::CCArray*) = imac 0x132930; + void groupStickyObjects(cocos2d::CCArray*) = imac 0x132930, win 0x215350; void handleButton(bool down, int button, bool isPlayer1) = win 0x2238a0, imac 0x13fc40, m1 0x114ea0; bool hasItem(int) = m1 0xf9bac, imac 0x11d8a0; bool hasUniqueCoin(EffectGameObject*) = win 0x207020, imac 0x11ce50, m1 0xf91ec; @@ -7754,7 +7754,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { void moveAreaObject(GameObject*, float, float) = win 0x21b2c0; TodoReturn moveCameraToPos(cocos2d::CCPoint); void moveObject(GameObject*, double, double, bool); - void moveObjects(cocos2d::CCArray*, double, double, bool); + void moveObjects(cocos2d::CCArray*, double, double, bool) = win 0x21e550; void moveObjectsSilent(int, double, double); TodoReturn objectIntersectsCircle(GameObject*, GameObject*); GJGameEvent objectTypeToGameEvent(int) = win 0x222520, imac 0x118d00, m1 0xf5ca0; @@ -7791,7 +7791,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { void processAreaFadeGroupAction(cocos2d::CCArray*, EnterEffectInstance*, cocos2d::CCPoint, bool); void processAreaMoveGroupAction(cocos2d::CCArray*, EnterEffectInstance*, cocos2d::CCPoint, int, int, int, int, int, bool, bool) = win 0x21ace0; void processAreaRotateGroupAction(cocos2d::CCArray*, EnterEffectInstance*, cocos2d::CCPoint, int, int, int, int, int, bool, bool) = win 0x21a5a0; - void processAreaTintGroupAction(cocos2d::CCArray*, EnterEffectInstance*, cocos2d::CCPoint, bool); + void processAreaTintGroupAction(cocos2d::CCArray*, EnterEffectInstance*, cocos2d::CCPoint, bool) = win 0x21b3b0; void processAreaTransformGroupAction(cocos2d::CCArray*, EnterEffectInstance*, cocos2d::CCPoint, int, int, int, int, int, bool, bool) = win 0x219a30; void processAreaVisualActions(float) = imac 0x1389e0, m1 0x10f310; GameObject* processCameraObject(GameObject* object, PlayerObject* player) = win inline, m1 0xf45bc, imac 0x1173a0, ios 0x1efd94 { @@ -7978,7 +7978,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { TodoReturn tryGetObject(int) = win 0x214d80; TodoReturn tryResumeAudio() = imac 0x147030; TodoReturn unclaimParticle(char const*, cocos2d::CCParticleSystemQuad*); - void ungroupStickyObjects(cocos2d::CCArray*) = imac 0x132a50; + void ungroupStickyObjects(cocos2d::CCArray*) = imac 0x132a50, win 0x215470; TodoReturn unlinkAllEvents(); TodoReturn updateActiveEnterEffect(EnterEffectObject*); TodoReturn updateAllObjectSection() = imac 0x14cfd0; From ede1ec5bb494fb990a8b9bb54f366ec43d175c5c Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Tue, 1 Oct 2024 12:09:39 -0400 Subject: [PATCH 56/84] combo burst bindings (#762) * Update Cocos2d.bro * Update Cocos2d.bro --- bindings/2.206/Cocos2d.bro | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index e3d5b930f..b2cba4ea8 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -57,6 +57,18 @@ class cocos2d::CCEaseInOut { virtual cocos2d::CCActionInterval* reverse(); } +[[link(win, android)]] +class cocos2d::CCEaseBackIn { + static cocos2d::CCEaseBackIn* create(cocos2d::CCActionInterval*) = m1 0x474784, imac 0x51f410; + + // CCEaseBackIn(cocos2d::CCEaseBackIn const&); + // CCEaseBackIn(); + + virtual cocos2d::CCObject* copyWithZone(cocos2d::CCZone*); + virtual void update(float); + virtual cocos2d::CCActionInterval* reverse(); +} + [[link(win, android)]] class cocos2d::CCEaseBackOut { static cocos2d::CCEaseBackOut* create(cocos2d::CCActionInterval*) = ios 0x27cedc, m1 0x47495c, imac 0x51f5f0; @@ -3012,6 +3024,25 @@ class cocos2d::ZipUtils { static gd::string urlDecode(gd::string const&); } +[[link(win, android)]] +class cocos2d::CCSpawn { + static cocos2d::CCSpawn* create(cocos2d::CCArray*); + // static cocos2d::CCSpawn* create(cocos2d::CCFiniteTimeAction*, ...) = m1 0x33e430, imac 0x3b9e30; + static cocos2d::CCSpawn* createWithTwoActions(cocos2d::CCFiniteTimeAction*, cocos2d::CCFiniteTimeAction*) = m1 0x33e5ec, imac 0x3ba120; + // static cocos2d::CCSpawn* createWithVariableList(cocos2d::CCFiniteTimeAction*, char*); + + bool initWithTwoActions(cocos2d::CCFiniteTimeAction*, cocos2d::CCFiniteTimeAction*); + + // CCSpawn(cocos2d::CCSpawn const&); + // CCSpawn(); + + virtual cocos2d::CCObject* copyWithZone(cocos2d::CCZone*); + virtual void update(float); + virtual void startWithTarget(cocos2d::CCNode*); + virtual void stop(); + virtual cocos2d::CCActionInterval* reverse(); +} + [[link(win, android)]] class cocos2d::CCSpeed { static cocos2d::CCSpeed* create(cocos2d::CCActionInterval*, float) = imac 0x5feea0, m1 0x525f3c; From 1adb226dcc1427a896689017b7efe2ae4a2fb1ba Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Tue, 1 Oct 2024 12:10:32 -0400 Subject: [PATCH 57/84] the better pause bindings (#761) * Update GeometryDash.bro * a * huh * mmmmkay * yeah sure * porting disaster * try this * i think this is the last one --- bindings/2.206/Cocos2d.bro | 4 +- bindings/2.206/GeometryDash.bro | 120 ++++++++++++++++++++------------ 2 files changed, 78 insertions(+), 46 deletions(-) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index b2cba4ea8..536ca45e9 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -1007,8 +1007,8 @@ class cocos2d::CCLayer { int excuteScriptTouchHandler(int, cocos2d::CCTouch*); void registerScriptAccelerateHandler(int); void registerScriptKeypadHandler(int); - void unregisterScriptAccelerateHandler(); - void unregisterScriptKeypadHandler(); + void unregisterScriptAccelerateHandler() = m1 0x41b4b4, imac 0x4ba320; + void unregisterScriptKeypadHandler() = m1 0x41b488, imac 0x4ba2f0; virtual bool init() = m1 0x41b670, imac 0x4ba5c0, ios 0x153204; virtual void onEnter() = m1 0x41bf40, imac 0x4baeb0, ios 0x1538f0; diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index d273ef0e5..a1b805100 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -2015,7 +2015,7 @@ class ChallengesPage : FLAlertLayer, FLAlertLayerProtocol, GJChallengeDelegate, void claimItem(ChallengeNode*, GJChallengeItem*, cocos2d::CCPoint) = win 0x851e0, imac 0x3a1800, m1 0x3285f0; ChallengeNode* createChallengeNode(int number, bool skipAnimation, float animLength, bool isNew) = win 0x849f0, imac 0x3a0dd0, m1 0x327c74, ios 0x38fc0; TodoReturn exitNodeAtSlot(int, float) = win 0x84c80, imac 0x3a12a0, m1 0x3280c8; - void onClose(cocos2d::CCObject* sender) = m1 0x327968, imac 0x3a0ac0; + void onClose(cocos2d::CCObject* sender) = win 0x85150, m1 0x327968, imac 0x3a0ac0; TodoReturn tryGetChallenges(); TodoReturn updateDots() = imac 0x3a0fc0, m1 0x327e50; callback void updateTimers(float) = win 0x84d70, imac 0x3a0b00, m1 0x3279b4; @@ -2430,7 +2430,7 @@ class ColorSelectPopup : SetupTriggerPopup, cocos2d::extension::ColorPickerDeleg void updateTextInputLabel() = win 0x91b00; virtual void show() = win 0x91390, m1 0x649d8c, imac 0x738340; - virtual TodoReturn determineStartValues() = win 0x8eb80, m1 0x647c48, imac 0x7360c0; + virtual void determineStartValues() = win 0x8eb80, m1 0x647c48, imac 0x7360c0; virtual void textChanged(CCTextInputNode*) = win 0x914c0, m1 0x649e58, imac 0x738430; virtual void colorValueChanged(cocos2d::ccColor3B) = win 0x8ff40, m1 0x6482e8, imac 0x7368b0; virtual void colorSelectClosed(GJSpecialColorSelect*, int) = win 0x91e80, m1 0x64a358, imac 0x7389d0; @@ -4313,7 +4313,7 @@ class EditTriggersPopup : SetupTriggerPopup { bool init(EffectGameObject*, cocos2d::CCArray*) = win 0x27ca30, m1 0x2399d0, imac 0x296c60; - virtual TodoReturn determineStartValues() = imac 0x296f20; + virtual void determineStartValues() = imac 0x296f20; virtual void onClose(cocos2d::CCObject* sender) = imac 0x296f30; } @@ -6915,10 +6915,29 @@ class GameObjectEditorState { [[link(android)]] class GameOptionsLayer : GJOptionsLayer { // virtual ~GameOptionsLayer(); + GameOptionsLayer() = win inline { + m_practiceDialogIndex = 0; + } - static GameOptionsLayer* create(GJBaseGameLayer*) = m1 0x24db08, imac 0x2ac900; + static GameOptionsLayer* create(GJBaseGameLayer* baseGameLayer) = win inline, m1 0x24db08, imac 0x2ac900 { + auto ret = new GameOptionsLayer(); + if (ret->init(baseGameLayer)) { + ret->autorelease(); + return ret; + } + delete ret; + return nullptr; + } - bool init(GJBaseGameLayer*) = m1 0x24dcb8, imac 0x2acb70; + bool init(GJBaseGameLayer* baseGameLayer) = win inline, m1 0x24dcb8, imac 0x2acb70 { + m_baseGameLayer = baseGameLayer; + m_gap = 40.f; + m_maxLabelScale = .4f; + if (!GJOptionsLayer::init(2)) return false; + this->preSetup(); + this->postSetup(); + return true; + } void onPracticeMusicSync(cocos2d::CCObject* sender) = win 0x28e010, m1 0x24e468, imac 0x2ad370; void onUIOptions(cocos2d::CCObject* sender) = win 0x28e0f0, m1 0x24e3dc, imac 0x2ad2e0; void onUIPOptions(cocos2d::CCObject* sender) = win 0x28e110, m1 0x24e3fc, imac 0x2ad300; @@ -7073,7 +7092,9 @@ class GameStatsManager : cocos2d::CCNode { void incrementStat(char const*, int) = win 0x1ca5b0, m1 0x5ad38, imac 0x65ad0, ios 0x33c544; TodoReturn incrementStat(char const*) = m1 0x5ad30; bool isGauntletChestUnlocked(int) = ios 0x345b38; - bool isItemEnabled(UnlockType, int) = ios 0x345D80, imac 0x787e0; //inline on windows + bool isItemEnabled(UnlockType type, int id) = win inline, ios 0x345D80, imac 0x787e0, m1 0x6b108 { + return this->isItemUnlocked(type, id) && m_enabledItems->valueForKey(this->getItemKey(id, (int)type))->boolValue(); + } bool isItemUnlocked(UnlockType, int) = win 0x1dabe0, ios 0x33fda8, m1 0x5ead0, imac 0x6a450; bool isPathChestUnlocked(int); bool isPathUnlocked(StatKey); @@ -8076,7 +8097,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { virtual TodoReturn claimCustomParticle(gd::string const&, cocos2d::ParticleStruct const&, int, int, int, bool) = win 0x230190, m1 0x123828, imac 0x1529b0; virtual TodoReturn unclaimCustomParticle(gd::string const&, cocos2d::CCParticleSystemQuad*) = win 0x230390, m1 0x123a68, imac 0x152bb0; virtual TodoReturn activatedAudioTrigger(SFXTriggerGameObject*) = win 0x231f30, m1 0x1247e0, imac 0x153b30; - virtual void checkpointActivated(CheckpointGameObject*) = win 0x235b70; + virtual void checkpointActivated(CheckpointGameObject*) = win 0x235b70, m1 0x127a8c, imac 0x157ed0; virtual TodoReturn flipArt(bool) = m1 0x127a88, imac 0x157ec0; virtual void addKeyframe(KeyframeGameObject*) = win 0x223b30, m1 0x115768, imac 0x1405b0; virtual void updateTimeLabel(int, int, bool) = m1 0xdf6ec, imac 0xfda20; @@ -8931,7 +8952,7 @@ class GJFollowCommandLayer : SetupTriggerPopup { TodoReturn updateYMod(); TodoReturn updateYModLabel(); - virtual TodoReturn determineStartValues() = m1 0x270af8, imac 0x2d37d0; + virtual void determineStartValues() = m1 0x270af8, imac 0x2d37d0; virtual void onClose(cocos2d::CCObject* sender) = m1 0x2714c8, imac 0x2d43a0; virtual void textChanged(CCTextInputNode*) = win 0x260230, m1 0x271070, imac 0x2d3de0; } @@ -9801,7 +9822,7 @@ class GJObjectDecoder : cocos2d::CCNode { [[link(android)]] class GJOptionsLayer : SetupTriggerPopup { // virtual ~GJOptionsLayer(); - // GJOptionsLayer(); + GJOptionsLayer() = win 0x27adc0; static GJOptionsLayer* create(int) = m1 0x23a7ec, imac 0x297d60; @@ -9946,7 +9967,7 @@ class GJPFollowCommandLayer : SetupTriggerPopup { TodoReturn updateYMod(); TodoReturn updateYModLabel(); - virtual TodoReturn determineStartValues() = m1 0x2f4998, imac 0x367ea0; + virtual void determineStartValues() = m1 0x2f4998, imac 0x367ea0; virtual void onClose(cocos2d::CCObject* sender) = m1 0x2f5504, imac 0x368c30; virtual void textChanged(CCTextInputNode*) = win 0x27a1a0, m1 0x2f4f38, imac 0x3684c0; } @@ -10117,7 +10138,7 @@ class GJRotateCommandLayer : SetupTriggerPopup { TodoReturn updateTextInputLabel2(); TodoReturn updateTimesLabel(); - virtual TodoReturn determineStartValues() = m1 0x7778, imac 0x43f0; + virtual void determineStartValues() = m1 0x7778, imac 0x43f0; virtual void onClose(cocos2d::CCObject* sender) = m1 0x8444, imac 0x5340; virtual void textChanged(CCTextInputNode*) = m1 0x7fe8, imac 0x4da0; virtual TodoReturn valuePopupClosed(ConfigureValuePopup*, float) = m1 0x7c2c, imac 0x4910; @@ -12752,7 +12773,10 @@ class LevelTools { static TodoReturn getLastTimewarp(); static GJGameLevel* getLevel(int, bool) = win 0x304880, imac 0x5064b0; static TodoReturn getLevelList(); - static SongInfoObject* getSongObject(int); + static SongInfoObject* getSongObject(int id) = win inline, m1 0x463120, imac 0x50c1e0 { + auto artistID = artistForAudio(id); + return SongInfoObject::create(id, getAudioTitle(id), nameForArtist(artistID), artistID, 0.f, "", "", "", 0, "", false, 0, -1); + } static TodoReturn moveTriggerObjectsToArray(cocos2d::CCArray*, cocos2d::CCDictionary*, int); static gd::string nameForArtist(int) = win 0x308950; static gd::string ngURLForArtist(int) = win 0x309f70; @@ -13221,7 +13245,7 @@ class MoreOptionsLayer : FLAlertLayer, TextInputDelegate, GooglePlayDelegate, GJ const char* objectKey(int); cocos2d::CCArray* objectsForPage(int) = win 0x3539b0, ios 0xf0474; void offsetToNextPage(); // inlined on ios - void onClose(cocos2d::CCObject* sender) = win 0x354fa0, ios 0xf0720; + void onClose(cocos2d::CCObject* sender) = win 0x354fa0, ios 0xf0720, m1 0x6b0b04, imac 0x7a9780; void onFMODDebug(cocos2d::CCObject* sender) = win 0x354b10, ios 0xf05c0, m1 0x6b07e8, imac 0x7a9480; void onGPSignIn(cocos2d::CCObject* sender); void onGPSignOut(cocos2d::CCObject* sender); @@ -14031,7 +14055,7 @@ class PauseLayer : CCBlockLayer, FLAlertLayerProtocol { void onSettings(cocos2d::CCObject* sender) = win 0x35b8e0, m1 0x35c048, imac 0x3db4f0; void onTime(cocos2d::CCObject* sender); void setupProgressBars(); - void sfxSliderChanged(cocos2d::CCObject*) = imac 0x3db560, m1 0x35c0ac; // merged with OptionsLayer::sfxSliderChanged on Windows + void sfxSliderChanged(cocos2d::CCObject*) = win 0x351210, imac 0x3db560, m1 0x35c0ac; // merged with OptionsLayer::sfxSliderChanged on Windows TodoReturn tryShowBanner(float); void tryQuit(cocos2d::CCObject* sender) = win 0x35cb90, imac 0x3db3b0, m1 0x35bf08, ios 0x14e164; @@ -16094,7 +16118,7 @@ class SetTargetIDLayer : SetupTriggerPopup { bool init(EffectGameObject*, cocos2d::CCArray*, gd::string, gd::string, int, int, int); - virtual TodoReturn determineStartValues() = imac 0x2b65b0; + virtual void determineStartValues() = imac 0x2b65b0; virtual void valueDidChange(int, float) = m1 0x256504, imac 0x2b65c0; } @@ -16185,7 +16209,7 @@ class SetupAnimationPopup : SetupTriggerPopup { TodoReturn updateTargetID(); TodoReturn updateTextInputLabel(); - virtual TodoReturn determineStartValues() = m1 0x35a324, imac 0x3d9640; + virtual void determineStartValues() = m1 0x35a324, imac 0x3d9640; virtual void onClose(cocos2d::CCObject* sender) = m1 0x35a6bc, imac 0x3d9a60; virtual void textChanged(CCTextInputNode*) = win 0x3dec60, m1 0x35a50c, imac 0x3d9870; } @@ -16268,7 +16292,7 @@ class SetupAreaTintTriggerPopup : SetupAreaMoveTriggerPopup, HSVWidgetDelegate { void onHSV(cocos2d::CCObject* sender); TodoReturn updateHSVButton(); - virtual TodoReturn determineStartValues() = win 0x3e5440, m1 0x43ec98, imac 0x4e2ad0; + virtual void determineStartValues() = win 0x3e5440, m1 0x43ec98, imac 0x4e2ad0; virtual void onClose(cocos2d::CCObject* sender) = win 0x3e5750, m1 0x43ef98, imac 0x4e2de0; virtual void valueDidChange(int, float) = win 0x3e5280, m1 0x43eba8, imac 0x4e29e0; virtual void hsvPopupClosed(HSVWidgetPopup*, cocos2d::ccHSVValue) = win 0x3e5660, m1 0x43eddc, imac 0x4e2c50; @@ -16350,7 +16374,7 @@ class SetupCameraEdgePopup : SetupTriggerPopup { TodoReturn updateTargetID(); TodoReturn updateTextInputLabel(); - virtual TodoReturn determineStartValues() = m1 0x4da060, imac 0x590a20; + virtual void determineStartValues() = m1 0x4da060, imac 0x590a20; virtual void onClose(cocos2d::CCObject* sender) = m1 0x4da2b0, imac 0x590cc0; virtual void textChanged(CCTextInputNode*) = win 0x3e8bc0, m1 0x4da1c4, imac 0x590bb0; } @@ -16380,7 +16404,7 @@ class SetupCameraModePopup : SetupTriggerPopup { TodoReturn updateCameraPaddingLabel(); TodoReturn updateItemVisibility(); - virtual TodoReturn determineStartValues() = m1 0x4161c4, imac 0x4b3bb0; + virtual void determineStartValues() = m1 0x4161c4, imac 0x4b3bb0; virtual void onClose(cocos2d::CCObject* sender) = imac 0x4b3ea0; } @@ -16411,7 +16435,7 @@ class SetupCameraOffsetTrigger : SetupTriggerPopup { TodoReturn updateValueXLabel(); TodoReturn updateValueYLabel(); - virtual TodoReturn determineStartValues() = m1 0x58bb44, imac 0x6706c0; + virtual void determineStartValues() = m1 0x58bb44, imac 0x6706c0; virtual void onClose(cocos2d::CCObject* sender) = m1 0x58c53c, imac 0x6711f0; virtual void textChanged(CCTextInputNode*) = win 0x3ec2f0, m1 0x58c2b4, imac 0x670ec0; virtual TodoReturn valuePopupClosed(ConfigureValuePopup*, float) = win 0x3eb9f0, m1 0x58bf40, imac 0x670a90; @@ -16438,7 +16462,7 @@ class SetupCameraRotatePopup : SetupTriggerPopup { TodoReturn updateMoveCommandEasing(); TodoReturn updateMoveCommandEasingRate(); - virtual TodoReturn determineStartValues() = m1 0x4272ac, imac 0x4c7d50; + virtual void determineStartValues() = m1 0x4272ac, imac 0x4c7d50; virtual void onClose(cocos2d::CCObject* sender) = m1 0x427994, imac 0x4c8510; virtual void textChanged(CCTextInputNode*) = m1 0x42776c, imac 0x4c82a0; virtual TodoReturn valuePopupClosed(ConfigureValuePopup*, float) = m1 0x427520, imac 0x4c7fd0; @@ -16502,7 +16526,7 @@ class SetupCollisionTriggerPopup : SetupTriggerPopup { TodoReturn updateTargetID(); TodoReturn updateTargetIDInputLabel(); - virtual TodoReturn determineStartValues() = m1 0x3212f4, imac 0x399730; + virtual void determineStartValues() = m1 0x3212f4, imac 0x399730; virtual void onClose(cocos2d::CCObject* sender) = m1 0x321880, imac 0x399dc0; virtual void textChanged(CCTextInputNode*) = win 0x3ee6c0, m1 0x321608, imac 0x399ad0; } @@ -16526,7 +16550,7 @@ class SetupCountTriggerPopup : SetupTriggerPopup { TodoReturn updateTargetID(); TodoReturn updateTargetIDInputLabel(); - virtual TodoReturn determineStartValues() = m1 0x2580fc, imac 0x2b8570; + virtual void determineStartValues() = m1 0x2580fc, imac 0x2b8570; virtual void onClose(cocos2d::CCObject* sender) = m1 0x2585e0, imac 0x2b8b00; virtual void textChanged(CCTextInputNode*) = win 0x3f1250, m1 0x2583b8, imac 0x2b88a0; } @@ -16554,7 +16578,7 @@ class SetupEndPopup : SetupTriggerPopup { TodoReturn updateTargetID(); TodoReturn updateTextInputLabel(); - virtual TodoReturn determineStartValues() = m1 0x5914f4, imac 0x676a30; + virtual void determineStartValues() = m1 0x5914f4, imac 0x676a30; virtual void onClose(cocos2d::CCObject* sender) = m1 0x59177c, imac 0x676d50; virtual void textInputClosed(CCTextInputNode*) = m1 0x591674, imac 0x676c00; virtual void textChanged(CCTextInputNode*) = win 0x3f2760, m1 0x591690, imac 0x676c40; @@ -16573,7 +16597,7 @@ class SetupEnterEffectPopup : SetupTriggerPopup, HSVWidgetDelegate { void onNextFreeEnterEffectID(cocos2d::CCObject* sender); TodoReturn updateHSVButton(); - virtual TodoReturn determineStartValues() = win 0x3f5180, m1 0x375ab4, imac 0x3fc2d0; + virtual void determineStartValues() = win 0x3f5180, m1 0x375ab4, imac 0x3fc2d0; virtual void onClose(cocos2d::CCObject* sender) = win 0x3f5760, m1 0x375ea4, imac 0x3fc6f0; virtual void updateInputValue(int, float&) = m1 0x376020, imac 0x3fc890; virtual TodoReturn updateInputNode(int, float) = m1 0x375fec, imac 0x3fc860; @@ -16592,7 +16616,7 @@ class SetupEnterTriggerPopup : SetupTriggerPopup { bool init(EnterEffectObject*, cocos2d::CCArray*); void onEnterType(cocos2d::CCObject* sender); - virtual TodoReturn determineStartValues() = m1 0x23a45c, imac 0x297850; + virtual void determineStartValues() = m1 0x23a45c, imac 0x297850; } [[link(android)]] @@ -16648,7 +16672,7 @@ class SetupGradientPopup : SetupTriggerPopup { TodoReturn updateGradientLabels(bool); TodoReturn updateZLayerButtons(); - virtual TodoReturn determineStartValues() = win 0x3f6a70, m1 0x524cd4, imac 0x5fda40; + virtual void determineStartValues() = win 0x3f6a70, m1 0x524cd4, imac 0x5fda40; virtual void onPlusButton(cocos2d::CCObject* sender) = win 0x3f6b80, m1 0x524e04, imac 0x5fdb60; virtual TodoReturn updateToggleItem(int, bool) = win 0x3f6c00, m1 0x524e60, imac 0x5fdbb0; virtual void valueDidChange(int, float) = win 0x3f7010, m1 0x525010, imac 0x5fdd70; @@ -16719,7 +16743,7 @@ class SetupInstantCountPopup : SetupTriggerPopup { TodoReturn updateTargetID(); TodoReturn updateTargetIDInputLabel(); - virtual TodoReturn determineStartValues() = m1 0x51bab0, imac 0x5f3870; + virtual void determineStartValues() = m1 0x51bab0, imac 0x5f3870; virtual void onClose(cocos2d::CCObject* sender) = m1 0x51bff8, imac 0x5f3ea0; virtual void textChanged(CCTextInputNode*) = win 0x3f8340, m1 0x51bd74, imac 0x5f3bb0; @@ -16826,7 +16850,7 @@ class SetupMGTrigger : SetupTriggerPopup { TodoReturn updateMoveCommandPosY(); TodoReturn updateValueYLabel(); - virtual TodoReturn determineStartValues() = m1 0x4684f8, imac 0x511cc0; + virtual void determineStartValues() = m1 0x4684f8, imac 0x511cc0; virtual void onClose(cocos2d::CCObject* sender) = m1 0x468c68, imac 0x512520; virtual void textChanged(CCTextInputNode*) = win 0x3fd430, m1 0x468a48, imac 0x5122c0; virtual TodoReturn valuePopupClosed(ConfigureValuePopup*, float) = m1 0x46879c, imac 0x511f80; @@ -16903,7 +16927,7 @@ class SetupObjectOptionsPopup : FLAlertLayer, TextInputDelegate { virtual void keyBackClicked() = m1 0x2aa6f8, imac 0x319b30; virtual void show() = m1 0x2aa71c, imac 0x319b70; - virtual TodoReturn determineStartValues() = win 0x3d48d0, m1 0x2aa448, imac 0x319720; + virtual void determineStartValues() = win 0x3d48d0, m1 0x2aa448, imac 0x319720; virtual void onClose(cocos2d::CCObject* sender) = m1 0x2aa768, imac 0x319bd0; } @@ -16935,7 +16959,7 @@ class SetupOpacityPopup : SetupTriggerPopup { TodoReturn updateTargetID(); TodoReturn updateTextInputLabel(); - virtual TodoReturn determineStartValues() = m1 0x4fba4, imac 0x591c0; + virtual void determineStartValues() = m1 0x4fba4, imac 0x591c0; virtual void onClose(cocos2d::CCObject* sender) = m1 0x500a8, imac 0x597c0; virtual void textInputClosed(CCTextInputNode*) = m1 0x4fe60, imac 0x59520; virtual void textChanged(CCTextInputNode*) = win 0x400650, m1 0x4fe7c, imac 0x59560; @@ -17055,7 +17079,7 @@ class SetupPulsePopup : SetupTriggerPopup, cocos2d::extension::ColorPickerDelega TodoReturn updateTextInputLabel(); virtual void show() = m1 0x337eec, imac 0x3b31d0; - virtual TodoReturn determineStartValues() = m1 0x336e30, imac 0x3b1e70; + virtual void determineStartValues() = m1 0x336e30, imac 0x3b1e70; virtual void onClose(cocos2d::CCObject* sender) = m1 0x337848, imac 0x3b2a40; virtual void textChanged(CCTextInputNode*) = win 0x410d50, m1 0x337f48, imac 0x3b3250; virtual void colorValueChanged(cocos2d::ccColor3B) = win 0x410a90, m1 0x3379d4, imac 0x3b2c20; @@ -17100,7 +17124,7 @@ class SetupRandTriggerPopup : SetupTriggerPopup { TodoReturn updateTextInputLabel(); TodoReturn updateTextInputLabel2(); - virtual TodoReturn determineStartValues() = m1 0x5187fc, imac 0x5efe20; + virtual void determineStartValues() = m1 0x5187fc, imac 0x5efe20; virtual void onClose(cocos2d::CCObject* sender) = m1 0x518d24, imac 0x5f0400; virtual void textChanged(CCTextInputNode*) = win 0x4154e0, m1 0x518a84, imac 0x5f0110; } @@ -17266,7 +17290,7 @@ class SetupShakePopup : SetupTriggerPopup { TodoReturn updateShake(); TodoReturn updateShakeLabel(bool); - virtual TodoReturn determineStartValues() = m1 0x58d65c, imac 0x672480; + virtual void determineStartValues() = m1 0x58d65c, imac 0x672480; virtual void onClose(cocos2d::CCObject* sender) = m1 0x58dcb8, imac 0x672b60; virtual void textChanged(CCTextInputNode*) = win 0x42a580, m1 0x58d998, imac 0x6727e0; } @@ -17395,7 +17419,7 @@ class SetupTeleportPopup : SetupTriggerPopup { void onTeleportGravity(cocos2d::CCObject* sender); TodoReturn updateTeleportGravityState(int); - virtual TodoReturn determineStartValues() = imac 0x35ae30; + virtual void determineStartValues() = imac 0x35ae30; virtual void updateDefaultTriggerValues() = m1 0x2e8840, imac 0x35ae40; virtual void valueDidChange(int, float) = m1 0x2e895c, imac 0x35af60; } @@ -17440,7 +17464,7 @@ class SetupTimeWarpPopup : SetupTriggerPopup { TodoReturn updateTimeWarp(); TodoReturn updateTimeWarpLabel(); - virtual TodoReturn determineStartValues() = m1 0x464ad8, imac 0x50dd50; + virtual void determineStartValues() = m1 0x464ad8, imac 0x50dd50; virtual void onClose(cocos2d::CCObject* sender) = imac 0x50dee0; } @@ -17459,7 +17483,7 @@ class SetupTouchTogglePopup : SetupTriggerPopup { TodoReturn updateTargetID(); TodoReturn updateTextInputLabel(); - virtual TodoReturn determineStartValues() = m1 0x2559d8, imac 0x2b5890; + virtual void determineStartValues() = m1 0x2559d8, imac 0x2b5890; virtual void onClose(cocos2d::CCObject* sender) = m1 0x255cac, imac 0x2b5bd0; virtual void textChanged(CCTextInputNode*) = win 0x438ed0, m1 0x255ba4, imac 0x2b5ab0; } @@ -17530,8 +17554,14 @@ class SetupTriggerPopup : FLAlertLayer, TextInputDelegate, ConfigureValuePopupDe void onSpawnedByTrigger(cocos2d::CCObject* sender) = win 0x449a40; void onToggleTriggerValue(cocos2d::CCObject* sender) = win 0x44be30; void onTouchTriggered(cocos2d::CCObject* sender) = win 0x449950; - void postSetup(); - void preSetup(); + void postSetup() = win inline { + this->updateDefaultTriggerValues(); + m_disableTextDelegate = false; + } + void preSetup() = win inline { + m_disableTextDelegate = true; + this->determineStartValues(); + } void refreshGroupVisibility(); void removeObjectFromGroup(cocos2d::CCObject*, int); void removeObjectFromPage(cocos2d::CCObject*, int); @@ -17571,7 +17601,7 @@ class SetupTriggerPopup : FLAlertLayer, TextInputDelegate, ConfigureValuePopupDe virtual void show() = win 0x8a220, m1 0x1e0df0, imac 0x234850; virtual void pageChanged() {} virtual TodoReturn toggleGroup(int, bool) = win 0x448a80, m1 0x1dea6c, imac 0x231150; - virtual TodoReturn determineStartValues() = win 0x4497d0, m1 0x1dfbdc, imac 0x232430; + virtual void determineStartValues() = win 0x4497d0, m1 0x1dfbdc, imac 0x232430; virtual void onClose(cocos2d::CCObject* sender) = win 0x449e10, m1 0x1e0e3c, imac 0x2348b0; virtual void textInputClosed(CCTextInputNode*) = win 0x89f80, m1 0x1dfee4, imac 0x2327b0; virtual void textChanged(CCTextInputNode*) = win 0x449c50, m1 0x1dff00, imac 0x2327f0; @@ -17642,7 +17672,7 @@ class SetupZoomTriggerPopup : SetupTriggerPopup { bool init(EffectGameObject*, cocos2d::CCArray*); - virtual TodoReturn determineStartValues() = imac 0x3200b0; + virtual void determineStartValues() = imac 0x3200b0; virtual void onClose(cocos2d::CCObject* sender) = imac 0x3200c0; } @@ -18368,7 +18398,7 @@ class SongInfoObject : cocos2d::CCNode { static SongInfoObject* create(cocos2d::CCDictionary*); static SongInfoObject* create(int songID, gd::string songName, gd::string artistName, int artistID, float filesize, gd::string youtubeVideo, gd::string youtubeChannel, gd::string url, int priority, gd::string unk1, bool unk2, int unk3, int unk4) = win 0x3245a0; - static SongInfoObject* create(int); + static SongInfoObject* create(int) = win 0x323450, m1 0x4e707c, imac 0x59f080; TodoReturn addTags(gd::string); TodoReturn containsTag(int); @@ -18388,7 +18418,9 @@ class SongInfoObject : cocos2d::CCNode { gd::string m_songUrl; int m_artistID; float m_fileSize; - bool m_isUnkownSong; + int m_unkInt1; + gd::string m_unkString1; + bool m_isUnknownSong; int m_priority; } @@ -18793,7 +18825,6 @@ class TableView : CCScrollLayerExt, CCScrollLayerExtDelegate { cocos2d::CCArray* m_array2; cocos2d::CCArray* m_array3; TableViewDelegate* m_tableDelegate; - virtual TodoReturn getCellDelegateType(); TableViewDataSource* m_dataSource; TableViewCellDelegate* m_cellDelegate; bool m_unused2; @@ -18828,6 +18859,7 @@ class TableViewCellDelegate { virtual void cellPerformedAction(TableViewCell*, int, CellAction, cocos2d::CCNode*); virtual TodoReturn getSelectedCellIdx(); virtual TodoReturn shouldSnapToSelected(); + virtual TodoReturn getCellDelegateType(); } [[link(android)]] From 72c318ca24b41b613e5d548a53e6db28610090d2 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Tue, 1 Oct 2024 20:31:12 -0400 Subject: [PATCH 58/84] playlayer constructor --- bindings/2.206/GeometryDash.bro | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index a1b805100..878553525 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -14788,8 +14788,7 @@ class PlayerObject : GameObject, AnimatedSpriteDelegate { [[link(android)]] class PlayLayer : GJBaseGameLayer, CCCircleWaveDelegate, CurrencyRewardDelegate, DialogDelegate { virtual ~PlayLayer() = m1 0x9a050, win 0x382540, imac 0xab7d0; - // PlayLayer() = ios 0x1253e0; - PlayLayer() = win 0x381b80; + PlayLayer() = win 0x381b80, m1 0xab594, imac 0xc0090, ios 0x1253e0; static PlayLayer* create(GJGameLevel* level, bool useReplay, bool dontCreateObjects) = m1 0x9a148, imac 0xabbf0, ios 0x11782c; static PlayLayer* get() { From 1b884dc9124ba5f5b8dd679720ce535a89a6315b Mon Sep 17 00:00:00 2001 From: TheSillyDoggo <95105680+TheSillyDoggo@users.noreply.github.com> Date: Wed, 2 Oct 2024 18:19:58 +1000 Subject: [PATCH 59/84] Parameters for GJBaseGameLayer::updateColor (#763) --- bindings/2.206/GeometryDash.bro | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 878553525..da8b0f160 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -8064,7 +8064,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { virtual TodoReturn opacityForObject(GameObject*) = m1 0x11a318, win 0x2273b0, imac 0x146f00; virtual TodoReturn addToSpeedObjects(EffectGameObject*) = imac 0xc0030, m1 0xab570; virtual void objectsCollided(int, int) = imac 0x11faa0, m1 0xfbafc, win 0x209900; - virtual void updateColor(cocos2d::ccColor3B&, float, int, bool, float, cocos2d::ccHSVValue&, int, bool, EffectGameObject*, int, int) = win 0x214160, imac 0x131310, m1 0x1093d4; + virtual void updateColor(cocos2d::ccColor3B& color, float fadeTime, int colorID, bool blending, float opacity, cocos2d::ccHSVValue& copyHSV, int colorIDToCopy, bool copyOpacity, EffectGameObject* callerObject, int unk1, int unk2) = win 0x214160, imac 0x131310, m1 0x1093d4; virtual void toggleGroupTriggered(int, bool, gd::vector const&, int, int) = win 0x214340, imac 0x1314b0, m1 0x109540; virtual void spawnGroup(int, bool, double, gd::vector const&, int, int) = win 0x20b310, imac 0x1210c0, m1 0xfcb44; virtual void spawnObject(GameObject*, double, gd::vector const&) = win 0x20b7d0, imac 0x121460, m1 0xfcf18; @@ -12006,7 +12006,7 @@ class LevelEditorLayer : GJBaseGameLayer, LevelSettingsDelegate { virtual void postUpdate(float) = m1 0xd8f24, imac 0xf5f20, win 0x2cd530; virtual void updateVisibility(float) = win 0x2c5380, imac 0xee540, m1 0xd2794; virtual TodoReturn playerTookDamage(PlayerObject*) = m1 0xd8f10, win 0x2cd520, imac 0xf5f00; - virtual void updateColor(cocos2d::ccColor3B&, float, int, bool, float, cocos2d::ccHSVValue&, int, bool, EffectGameObject*, int, int) = m1 0xd62b4, win 0x2c9d00, imac 0xf2a70; + virtual void updateColor(cocos2d::ccColor3B& color, float fadeTime, int colorID, bool blending, float opacity, cocos2d::ccHSVValue& copyHSV, int colorIDToCopy, bool copyOpacity, EffectGameObject* callerObject, int unk1, int unk2) = m1 0xd62b4, win 0x2c9d00, imac 0xf2a70; virtual void updateDebugDraw() = win 0x2ce170, m1 0xda0d4, imac 0xf7130; virtual void addToGroup(GameObject*, int, bool) = win 0x2cacf0, m1 0xd6a70, imac 0xf34c0; virtual void removeFromGroup(GameObject*, int) = win 0x2cae40, m1 0xd6b28, imac 0xf3570; @@ -14914,7 +14914,7 @@ class PlayLayer : GJBaseGameLayer, CCCircleWaveDelegate, CurrencyRewardDelegate, virtual void updateAttemptTime(float) = win 0x391aa0, imac 0xbbfd0, m1 0xa7f98; virtual void updateVisibility(float) = imac 0xb7dd0, m1 0xa4664, win 0x38bfc0; virtual TodoReturn opacityForObject(GameObject*) = imac 0xba170, m1 0xa63cc, win 0x38cef0; - virtual void updateColor(cocos2d::ccColor3B&, float, int, bool, float, cocos2d::ccHSVValue&, int, bool, EffectGameObject*, int, int) = imac 0xba250, m1 0xa648c, win 0x38eba0; + virtual void updateColor(cocos2d::ccColor3B& color, float fadeTime, int colorID, bool blending, float opacity, cocos2d::ccHSVValue& copyHSV, int colorIDToCopy, bool copyOpacity, EffectGameObject* callerObject, int unk1, int unk2) = imac 0xba250, m1 0xa648c, win 0x38eba0; virtual TodoReturn activateEndTrigger(int, bool, bool) = imac 0xb6c90, m1 0xa367c; virtual void activatePlatformerEndTrigger(EndTriggerGameObject*, gd::vector const&) = win 0x388df0, imac 0xb7170, m1 0xa3ab0; virtual void toggleGlitter(bool) = imac 0xbad40, m1 0xa6f00, win 0x390480; From 22e419709c481fc19c73637336f898e9a4c2a1b0 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Wed, 2 Oct 2024 15:41:29 -0400 Subject: [PATCH 60/84] GJLevelList::m_levelsDict --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index da8b0f160..90a940e73 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -9559,7 +9559,7 @@ class GJLevelList : cocos2d::CCNode { gd::string m_listDesc; int m_uploadDate; int m_updateDate; - cocos2d::CCDictionary* m_k97; + cocos2d::CCDictionary* m_levelsDict; GJLevelType m_listType; int m_M_ID; } From 47eef787d9e9394c21e7c9d48d4ceb390600f05f Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Wed, 2 Oct 2024 18:05:25 -0400 Subject: [PATCH 61/84] CCPartAnimSprite and CCSpritePart members --- bindings/2.206/GeometryDash.bro | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 90a940e73..e7f6634d4 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -1473,6 +1473,12 @@ class CCPartAnimSprite : cocos2d::CCSprite { virtual void setDisplayFrame(cocos2d::CCSpriteFrame*) = m1 0x30212c, imac 0x376940; virtual bool isFrameDisplayed(cocos2d::CCSpriteFrame*) = m1 0x30228c, imac 0x376ab0; virtual cocos2d::CCSpriteFrame* displayFrame() = m1 0x3022a4, imac 0x376ad0; + + cocos2d::CCDictionary* m_spritePartIDs; + cocos2d::CCSpriteFrame* m_spriteFrame; + bool m_hasChanged; + cocos2d::CCSize m_unkSize; + cocos2d::CCArray* m_spriteParts; } [[link(android), depends(CCContentLayer)]] @@ -1624,6 +1630,10 @@ class CCSpritePart : CCSpritePlus { TodoReturn updateDisplayFrame(gd::string); virtual void setVisible(bool) = win 0x45bb0, m1 0x302c48, imac 0x377410; + + bool m_isBeingUsed; + gd::string m_spriteFrameName; + SpritePartDelegate* m_delegate; } [[link(android)]] From d77dbf0238f5cc0222947748f47a2b5b7b6a9503 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Wed, 2 Oct 2024 18:13:11 -0400 Subject: [PATCH 62/84] playerobject funcs on windows --- bindings/2.206/GeometryDash.bro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index e7f6634d4..e60e655cb 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -14464,13 +14464,13 @@ class PlayerObject : GameObject, AnimatedSpriteDelegate { createSpider(id); } - void updatePlayerSpriteExtra(gd::string); + void updatePlayerSpriteExtra(gd::string) = win 0x37cc20; void updatePlayerSwingFrame(int) = win 0x37c7c0, m1 0x395b5c, imac 0x420cd0; void updateRobotAnimationSpeed() = win 0x37f0f0; void updateRotation(float, float) = win 0x36b230, imac 0x40bab0, m1 0x383a84; void updateRotation(float) = win 0x36f0b0, imac 0x416180, m1 0x38c360; void updateShipRotation(float) = win 0x36ecd0; - void updateShipSpriteExtra(gd::string); + void updateShipSpriteExtra(gd::string) = win 0x37cd30; TodoReturn updateSlopeRotation(float); TodoReturn updateSlopeYVelocity(float); void updateSpecial(float); From 6fd160ad39227f863db12e960c7dc0e229dff377 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Thu, 3 Oct 2024 22:06:40 -0400 Subject: [PATCH 63/84] bindings for windows --- bindings/2.206/GeometryDash.bro | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index e60e655cb..4afabd6af 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -9498,7 +9498,7 @@ class GJItemIcon : cocos2d::CCSprite { void darkenStoreItem(cocos2d::ccColor3B) = win 0x2691d0, m1 0x2fec04, imac 0x372fc0; void darkenStoreItem(ShopType) = win 0x269150, m1 0x2fbbcc, imac 0x36fc60; bool init(UnlockType, int, cocos2d::ccColor3B, cocos2d::ccColor3B, bool, bool, bool, cocos2d::ccColor3B) = win 0x2689a0, m1 0x2fe540, imac 0x3728c0, ios 0x3186D4; - float scaleForType(UnlockType) = win 0x2695a0, m1 0x2fb6f0, imac 0x36f5b0; + static float scaleForType(UnlockType) = win 0x2695a0, m1 0x2fb6f0, imac 0x36f5b0; void toggleEnabledState(bool) = win 0x269400, ios 0x316B94; static cocos2d::ccColor3B unlockedColorForType(int) = m1 0x2feb9c, imac 0x372f60; @@ -15072,6 +15072,7 @@ class ProfilePage : FLAlertLayer, FLAlertLayerProtocol, LevelCommentDelegate, Co void setupCommentsBrowser(cocos2d::CCArray*) = win 0x3a2710, m1 0x6CB804, imac 0x7C61F0; void showNoAccountError() = win 0x3A1640; TodoReturn toggleMainPageVisibility(bool); + void toggleShip(cocos2d::CCObject* sender) = win 0x39f5f0; TodoReturn updateLevelsLabel(); void updatePageArrows() = win 0x3A2AB0; @@ -18135,7 +18136,7 @@ class SimplePlayer : cocos2d::CCSprite { TodoReturn iconFinishedLoading(int, IconType); bool init(int) = win 0x2673c0, ios 0x317cb4; void setColors(cocos2d::ccColor3B const&, cocos2d::ccColor3B const&); - void setFrames(char const*, char const*, char const*, char const*, char const*); + void setFrames(char const*, char const*, char const*, char const*, char const*) = win 0x268450; void setSecondColor(cocos2d::_ccColor3B const& color) = m1 0x2fdeb8, imac 0x372200, ios 0x3181d0, win inline { m_secondLayer->setColor(color); updateColors(); From 90f344c8cdee8e08c6480cf0f4843c8055e5654e Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Thu, 3 Oct 2024 23:03:48 -0400 Subject: [PATCH 64/84] More Icons bindings (#764) --- bindings/2.206/GeometryDash.bro | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 4afabd6af..1c3924b42 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -9371,10 +9371,10 @@ class GJGarageLayer : cocos2d::CCLayer, TextInputDelegate, FLAlertLayerProtocol, delete ret; return nullptr; } - void onArrow(cocos2d::CCObject* sender) = win 0x263e50; + void onArrow(cocos2d::CCObject* sender) = win 0x263e50, m1 0x2fa3b8, imac 0x36e1e0; void onBack(cocos2d::CCObject* sender) = win 0x266f60, imac 0x36d620; void onInfo(cocos2d::CCObject* sender) = win 0x262a50; - void onNavigate(cocos2d::CCObject* sender) = win 0x263f50; + void onNavigate(cocos2d::CCObject* sender) = win 0x263f50, m1 0x2fac48, imac 0x36ead0; void onPaint(cocos2d::CCObject* sender) = win 0x266d80, ios 0x31520c; void onSelect(cocos2d::CCObject* sender) = win 0x265100, m1 0x2fb710, imac 0x36f5e0; void onSelectTab(cocos2d::CCObject* sender) = win 0x263f80, imac 0x36e1b0, m1 0x2fa384; @@ -15072,7 +15072,7 @@ class ProfilePage : FLAlertLayer, FLAlertLayerProtocol, LevelCommentDelegate, Co void setupCommentsBrowser(cocos2d::CCArray*) = win 0x3a2710, m1 0x6CB804, imac 0x7C61F0; void showNoAccountError() = win 0x3A1640; TodoReturn toggleMainPageVisibility(bool); - void toggleShip(cocos2d::CCObject* sender) = win 0x39f5f0; + void toggleShip(cocos2d::CCObject* sender) = win 0x39f5f0, m1 0x6ce55c, imac 0x7c9460; TodoReturn updateLevelsLabel(); void updatePageArrows() = win 0x3A2AB0; From da303a7a1b8d9dcfd2a4767a0a965ff3cb11a9bb Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Fri, 4 Oct 2024 10:28:24 -0400 Subject: [PATCH 65/84] createRobot and createSpider --- bindings/2.206/GeometryDash.bro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 1c3924b42..b73609490 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -14258,8 +14258,8 @@ class PlayerObject : GameObject, AnimatedSpriteDelegate { TodoReturn convertToClosestRotation(float); void copyAttributes(PlayerObject*) = win 0x37e4b0, imac 0x4249f0, m1 0x3994b4; void createFadeOutDartStreak() = win 0x376690; - void createRobot(int) = win 0x366050; - void createSpider(int) = win 0x366410; + void createRobot(int) = win 0x366050, m1 0x37dcd4, imac 0x404e20; + void createSpider(int) = win 0x366410, m1 0x37e0ac, imac 0x405290; void deactivateParticle() = m1 0x3828c8, imac 0x40a870; // inlined on windows void deactivateStreak(bool) = imac 0x405d80; TodoReturn destroyFromHitHead(); From 0117ecc2490072112623b646d8e32557814fa1ab Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Sat, 5 Oct 2024 11:05:36 -0400 Subject: [PATCH 66/84] m_mainLevels is gd::unordered_map --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index b73609490..f6307ebeb 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -13015,7 +13015,7 @@ class LocalLevelManager : GManager { cocos2d::CCArray* m_localLevels; cocos2d::CCArray* m_localLists; - gd::map m_mainLevels; + gd::unordered_map m_mainLevels; } [[link(android)]] From 0612a4f405b0fc62fd23b0cf985430d8d5bc16c0 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Sat, 5 Oct 2024 18:39:31 -0400 Subject: [PATCH 67/84] some cocos bindings --- bindings/2.206/Cocos2d.bro | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index 536ca45e9..3790403f1 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -1201,11 +1201,11 @@ class cocos2d::CCLayerRGBA { class cocos2d::CCMouseDispatcher { // CCMouseDispatcher(cocos2d::CCMouseDispatcher const&); // CCMouseDispatcher(); - void addDelegate(cocos2d::CCMouseDelegate*); + void addDelegate(cocos2d::CCMouseDelegate*) = m1 0x4c49e0, imac 0x5784c0; bool dispatchScrollMSG(float, float) = m1 0x4c4a74, imac 0x578540; - void forceAddDelegate(cocos2d::CCMouseDelegate*); - void forceRemoveDelegate(cocos2d::CCMouseDelegate*); - void removeDelegate(cocos2d::CCMouseDelegate*); + void forceAddDelegate(cocos2d::CCMouseDelegate*) = m1 0x4c4a38, imac 0x578510; + void forceRemoveDelegate(cocos2d::CCMouseDelegate*) = m1 0x4c4944, imac 0x578430; + void removeDelegate(cocos2d::CCMouseDelegate*) = m1 0x4c4884, imac 0x578380; } [[link(win, android)]] @@ -2577,8 +2577,8 @@ class cocos2d::CCString { [[link(win, android)]] class cocos2d::CCMenuItem { ~CCMenuItem() = imac 0x3c1fc0, m1 0x345478, ios 0x531c4; - static cocos2d::CCMenuItem* create(cocos2d::CCObject*, cocos2d::SEL_MenuHandler); - static cocos2d::CCMenuItem* create(); + static cocos2d::CCMenuItem* create(cocos2d::CCObject*, cocos2d::SEL_MenuHandler) = m1 0x3452f0, imac 0x3c1e10; + static cocos2d::CCMenuItem* create() = m1 0x345248, imac 0x3c1d50; bool initWithTarget(cocos2d::CCObject*, cocos2d::SEL_MenuHandler) = imac 0x3c1ee0, m1 0x3453ac, ios 0x53154; From c377576b43a4a7ddf6e8864a6242c29e142c78da Mon Sep 17 00:00:00 2001 From: TheSillyDoggo <95105680+TheSillyDoggo@users.noreply.github.com> Date: Sun, 6 Oct 2024 13:20:04 +1100 Subject: [PATCH 68/84] parameters for GJBaseGameLayer::updateStaticCameraPos (#765) --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index f6307ebeb..fa5a03f7e 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -8053,7 +8053,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { void updateShaderLayer(float) = win 0x212aa0, imac 0x12fdd0, m1 0x107d80; void updateSpecialGroupData() = win 0x1fecf0, imac 0x10aa20, m1 0xea268; TodoReturn updateSpecialLabels() = win 0x228fb0; - void updateStaticCameraPos(cocos2d::CCPoint, bool, bool, bool, float, int, float) = win 0x22e360, imac 0x1191c0, m1 0xf60ec; + void updateStaticCameraPos(cocos2d::CCPoint pos, bool staticX, bool staticY, bool followOrSmoothEase, float time, int easingType, float easingRate) = win 0x22e360, imac 0x1191c0, m1 0xf60ec; TodoReturn updateStaticCameraPosToGroup(int, bool, bool, bool, float, float, int, float, bool, float) = win 0x22df70; TodoReturn updateTimeMod(float, bool, bool); TodoReturn updateTimerLabels() = win 0x2251f0; From c29926721ff3e941b08dbeb55070283df6f7824b Mon Sep 17 00:00:00 2001 From: TheSillyDoggo <95105680+TheSillyDoggo@users.noreply.github.com> Date: Sun, 6 Oct 2024 13:45:08 +1100 Subject: [PATCH 69/84] parameters for GJBaseGameLayer::exitStaticCamera (#766) --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index fa5a03f7e..041512737 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -7710,7 +7710,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { TodoReturn damagingObjectsInRect(cocos2d::CCRect, bool); void destroyObject(GameObject*) = win 0x206b50, imac 0x11cd80, m1 0xf9108; void enterDualMode(GameObject*, bool) = imac 0x11e160, m1 0xfa400; - void exitStaticCamera(bool, bool, float, int, float, bool, float, bool) = win 0x22e7a0; + void exitStaticCamerabool exitX, bool exitY, float time, int easingType, float easingRate, bool smoothVelocity, float smoothVelocityMod, bool exitInstant) = win 0x22e7a0; TodoReturn flipFinished(); void flipGravity(PlayerObject*, bool, bool) = win 0x203660, imac 0x118870, m1 0xf58a4; TodoReturn flipObjects(); From ea5418612f090ab07ef30b19317a9cbdf1a957dc Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Sat, 5 Oct 2024 22:59:15 -0400 Subject: [PATCH 70/84] :v --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 041512737..62bbe1ace 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -7710,7 +7710,7 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { TodoReturn damagingObjectsInRect(cocos2d::CCRect, bool); void destroyObject(GameObject*) = win 0x206b50, imac 0x11cd80, m1 0xf9108; void enterDualMode(GameObject*, bool) = imac 0x11e160, m1 0xfa400; - void exitStaticCamerabool exitX, bool exitY, float time, int easingType, float easingRate, bool smoothVelocity, float smoothVelocityMod, bool exitInstant) = win 0x22e7a0; + void exitStaticCamera(bool exitX, bool exitY, float time, int easingType, float easingRate, bool smoothVelocity, float smoothVelocityMod, bool exitInstant) = win 0x22e7a0; TodoReturn flipFinished(); void flipGravity(PlayerObject*, bool, bool) = win 0x203660, imac 0x118870, m1 0xf58a4; TodoReturn flipObjects(); From c733c9553fa492fa3b8201db56cfe3d3aa2e720d Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Sun, 6 Oct 2024 00:19:45 -0400 Subject: [PATCH 71/84] ItemInfoPopup --- bindings/2.206/GeometryDash.bro | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 62bbe1ace..0ae935f84 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -11417,10 +11417,10 @@ class ItemInfoPopup : FLAlertLayer { static ItemInfoPopup* create(int, UnlockType) = win 0x269640, m1 0x2fc484, imac 0x3705b0; bool init(int, UnlockType) = win 0x269730, imac 0x3731a0, m1 0x2fed78; - bool isUnlockedByDefault(int, UnlockType); - TodoReturn nameForUnlockType(int, UnlockType) = win 0x26b660, imac 0x374620; - void onClose(cocos2d::CCObject* sender); - void onCredit(cocos2d::CCObject* sender); + bool isUnlockedByDefault(int, UnlockType) = m1 0x300334, imac 0x374900; + static gd::string nameForUnlockType(int, UnlockType) = win 0x26b660, m1 0x2fffe4, imac 0x374620; + void onClose(cocos2d::CCObject* sender) = m1 0x3002f8, imac 0x3748d0; + void onCredit(cocos2d::CCObject* sender) = win 0x26b630, m1 0x300360, imac 0x374930; virtual void keyBackClicked() = m1 0x300394, imac 0x374960; From 8fed6ba14f343c60da88bc8ad0c141dfc14f7d0a Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Sun, 6 Oct 2024 14:42:49 -0400 Subject: [PATCH 72/84] CCSpriteBatchNode::createWithTexture --- bindings/2.206/Cocos2d.bro | 2 ++ 1 file changed, 2 insertions(+) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index 3790403f1..84e0c9c0f 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -2469,6 +2469,8 @@ class cocos2d::CCDrawNode { [[link(win, android)]] class cocos2d::CCSpriteBatchNode { + static cocos2d::CCSpriteBatchNode* createWithTexture(cocos2d::CCTexture2D*, unsigned int) = m1 0x13b070, imac 0x171580; + bool initWithTexture(cocos2d::CCTexture2D*, unsigned int) = imac 0x171670, m1 0x13b124, ios 0x1e0a4c; CCSpriteBatchNode() = imac 0x171940, m1 0x13b3c8, ios 0x1e0c98; From 13f9cbcbc932de271680d2263573e300d3ee1197 Mon Sep 17 00:00:00 2001 From: Capeling <113705504+Capeling@users.noreply.github.com> Date: Mon, 7 Oct 2024 12:13:40 +1030 Subject: [PATCH 73/84] ncs & ncs2 in gauntlettype --- bindings/include/Geode/Enums.hpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/bindings/include/Geode/Enums.hpp b/bindings/include/Geode/Enums.hpp index 0bd937be3..778449b10 100644 --- a/bindings/include/Geode/Enums.hpp +++ b/bindings/include/Geode/Enums.hpp @@ -294,7 +294,9 @@ enum class GauntletType { Galaxy = 0x2F, Universe = 0x30, Discord = 0x31, - Split = 0x32 + Split = 0x32, + NCS = 0x33, + NCS2 = 0x34 }; enum class GJMPErrorCode {}; enum class GJTimedLevelType { From d506d0c7e08d168e4f99d2c5beb6ac88b0194ff6 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Mon, 7 Oct 2024 21:19:54 -0400 Subject: [PATCH 74/84] A few CCIMEDispatcher methods --- bindings/2.206/Cocos2d.bro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index 84e0c9c0f..13bf1146b 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -1478,7 +1478,7 @@ class cocos2d::CCIMEDelegate { [[link(win, android)]] class cocos2d::CCIMEDispatcher { - static cocos2d::CCIMEDispatcher* sharedDispatcher() = ios 0x1dd254; + static cocos2d::CCIMEDispatcher* sharedDispatcher() = m1 0x424f7c, imac 0x4c5990, ios 0x1dd254; // CCIMEDispatcher(); @@ -1494,7 +1494,7 @@ class cocos2d::CCIMEDispatcher { void dispatchKeyboardWillHide(); void dispatchKeyboardWillShow(cocos2d::CCIMEKeyboardNotificationInfo&); char const* getContentText(); - bool hasDelegate(); + bool hasDelegate() = m1 0x425720, imac 0x4c60f0; void removeDelegate(cocos2d::CCIMEDelegate*) = ios 0x1dd398; } From ed4eeddaa0490097fedb0eb8de9ac97d2528eacc Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Mon, 7 Oct 2024 23:02:11 -0400 Subject: [PATCH 75/84] gjbgl m1 bindings --- bindings/2.206/GeometryDash.bro | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 0ae935f84..d988f6680 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -7700,8 +7700,8 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate { TodoReturn controlTriggersWithControlID(int, GJActionCommand); TodoReturn convertToClosestDirection(float, float) = win 0x21f0b0; void createBackground(int) = win 0x1fc5d0, imac 0x107650, m1 0xe7620; - void createGroundLayer(int, int) = win 0x1fca10, imac 0x107bd0; - void createMiddleground(int) = win 0x1fc890, imac 0x107de0; + void createGroundLayer(int, int) = win 0x1fca10, imac 0x107bd0, m1 0xe7b5c; + void createMiddleground(int) = win 0x1fc890, imac 0x107de0, m1 0xe7d40; TodoReturn createNewKeyframeAnim(); TodoReturn createParticle(int, char const*, int, cocos2d::tCCPositionType); void createPlayer() = win 0x1fc0c0, imac 0x1072f0, m1 0xe72e0, ios 0x1e73b8; From c5db6c52af426881b982680d90b1ec0b2ecc0c63 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Mon, 7 Oct 2024 23:47:08 -0400 Subject: [PATCH 76/84] a few ccmotionstreak bindings (#767) --- bindings/2.206/Cocos2d.bro | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index 13bf1146b..ffa590588 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -200,11 +200,15 @@ class cocos2d::CCMotionStreak { bool initWithFade(float, float, float, cocos2d::_ccColor3B const&, char const*) = imac 0x57d640, m1 0x4c9afc; bool getDontOpacityFade() const; - float getM_fMaxSeg() const; + float getM_fMaxSeg() const { + return m_fMaxSeg; + } void setDontOpacityFade(bool); void setFastMode(bool); - void setM_fMaxSeg(float); + void setM_fMaxSeg(float maxSeg) { + m_fMaxSeg = maxSeg; + } void setStartingPositionInitialized(bool); void setStroke(float); @@ -239,7 +243,7 @@ class cocos2d::CCMotionStreak { bool isStartingPositionInitialized(); void reset() = imac 0x57e280, m1 0x4ca540; void resumeStroke() = imac 0x57dc40, m1 0x4ca00c; - void stopStroke(); + void stopStroke() = imac 0x57dc30, m1 0x4ca004; void tintWithColor(cocos2d::_ccColor3B); void updateFade(float) = imac 0x57dc10; From 32dd157a591246131cf02c06ff966f4d136dee39 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Mon, 7 Oct 2024 23:49:27 -0400 Subject: [PATCH 77/84] PlayLayer::storeCheckpoint --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index d988f6680..ae688308e 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -14869,7 +14869,7 @@ class PlayLayer : GJBaseGameLayer, CCCircleWaveDelegate, CurrencyRewardDelegate, TodoReturn processLoadedMoveActions(); TodoReturn queueCheckpoint(); void removeAllObjects() = imac 0xb4000; - void removeCheckpoint(bool) = win 0x394910; + void removeCheckpoint(bool) = win 0x394910, m1 0xa9a50, imac 0xbe340; void removeFromGroupOld(GameObject*); void resetLevel() = win 0x3958b0, imac 0xb32d0, m1 0xa01f0, ios 0x11baf4; void resetLevelFromStart() = win 0x395710, imac 0xbf160, m1 0xaa7c0; From 8767f2a534b62cb2052e51c52f9fccd5d739e804 Mon Sep 17 00:00:00 2001 From: Oleksandr Nemesh Date: Fri, 11 Oct 2024 21:19:01 +0300 Subject: [PATCH 78/84] GLM::saveLevel macos --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index ae688308e..c27fdf655 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -5699,7 +5699,7 @@ class GameLevelManager : cocos2d::CCNode { void saveFetchedLevels(cocos2d::CCArray*) = win 0x141e70, imac 0x538600, m1 0x48b144; void saveFetchedMapPacks(cocos2d::CCArray*); void saveGauntlet(GJMapPack*); - void saveLevel(GJGameLevel*) = win 0x1438e0; + void saveLevel(GJGameLevel*) = win 0x1438e0, imac 0x53E5F0, m1 0x490844; void saveLevelList(GJLevelList*) = win 0x14b7a0, m1 0x48bd08, imac 0x539270; void saveLocalScore(int, int, int); void saveMapPack(GJMapPack*); From 1af4df29553079e17aaf54eedcfa9397e1e42f81 Mon Sep 17 00:00:00 2001 From: Capeling <113705504+Capeling@users.noreply.github.com> Date: Sat, 12 Oct 2024 18:59:57 +1030 Subject: [PATCH 79/84] Proper GJGarageLayer constructor --- bindings/2.206/GeometryDash.bro | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index c27fdf655..db877ff90 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -9355,7 +9355,27 @@ class GJGameState { [[link(android)]] class GJGarageLayer : cocos2d::CCLayer, TextInputDelegate, FLAlertLayerProtocol, GameRateDelegate, ListButtonBarDelegate, DialogDelegate, CharacterColorDelegate, RewardedVideoDelegate { // virtual ~GJGarageLayer(); - GJGarageLayer() = ios 0x31a060 {} + GJGarageLayer() = ios 0x31a060, win inline, android64 inline { + m_usernameInput = nullptr; + m_playerObject = nullptr; + m_tabButtons = nullptr; + m_pageButtons = nullptr; + m_unknown = nullptr; + m_supporter = nullptr; + bool m_hasClosed = false; + m_iconType = IconType::Cube; + m_iconPages = {}; + m_cursor1 = nullptr; + m_cursor2 = nullptr; + m_currentIcon = nullptr; + m_iconSelection = nullptr; + m_leftArrow = nullptr; + m_rightArrow = nullptr; + m_navDotMenu = nullptr; + m_iconID = 0; + m_selectedIconType = IconType::Cube; + m_videoPlaying = false; + } gd::string achievementForUnlock(int, UnlockType); gd::string descriptionForUnlock(int, UnlockType) = win 0x266240; From 497b9fd98b547f5447aba1b58aaa04ce4157931f Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Sat, 12 Oct 2024 12:29:46 -0400 Subject: [PATCH 80/84] xd --- bindings/2.206/Cocos2d.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/Cocos2d.bro b/bindings/2.206/Cocos2d.bro index ffa590588..051477157 100644 --- a/bindings/2.206/Cocos2d.bro +++ b/bindings/2.206/Cocos2d.bro @@ -3129,7 +3129,7 @@ class cocos2d::CCLightning : cocos2d::CCNode, cocos2d::CCRGBAProtocol { virtual void setCascadeOpacityEnabled(bool) = win 0x43b20, m1 0x51094c, imac 0x5e7560, ios 0x35647c; virtual cocos2d::_ccColor3B const& getColor() = win 0x43ac0, m1 0x5108d0, imac 0x5e7480, ios 0x356400; virtual cocos2d::_ccColor3B const& getDisplayedColor() = win 0x43b30, m1 0x51095c, imac 0x5e7580, ios 0x35648c; - virtual void setColor(cocos2d::_ccColor3B const&) = win 0x43ad0, m1 0x5108e0, imac 0x5e74a, ios 0x356410; + virtual void setColor(cocos2d::_ccColor3B const&) = win 0x43ad0, m1 0x5108e0, imac 0x5e74a0, ios 0x356410; virtual void updateDisplayedColor(cocos2d::_ccColor3B const&) = win 0x43b40, m1 0x51096c, imac 0x5e75a0, ios 0x35649c; virtual bool isCascadeColorEnabled() = win 0x43b50, m1 0x510994, imac 0x5e75e0, ios 0x3564c4; virtual void setCascadeColorEnabled(bool) = win 0x43b60, m1 0x5109a4, imac 0x5e7600, ios 0x3564d4; From fad87c012bcb692d291834b8bb8ad210c4c5e4e2 Mon Sep 17 00:00:00 2001 From: km7 dev <100500023+Kingminer7@users.noreply.github.com> Date: Sat, 12 Oct 2024 12:47:14 -0400 Subject: [PATCH 81/84] Some MoreOptionsLayer bindings for macos (#768) --- bindings/2.206/GeometryDash.bro | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index db877ff90..edc657da1 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -13266,7 +13266,7 @@ class MoreOptionsLayer : FLAlertLayer, TextInputDelegate, GooglePlayDelegate, GJ void addToggle(char const*, char const*, char const*) = win 0x353280, ios 0xf00d0, imac 0x7a8ca0, m1 0x6b004c; int countForPage(int) = win 0x3538e0; - void goToPage(int) = win 0x353d00, ios 0xf07e4; + void goToPage(int) = win 0x353d00, ios 0xf07e4, m1 0x6b0bc8, imac 0x789860; void incrementCountForPage(int); const char* infoKey(int); cocos2d::CCLayer* layerForPage(int) = win 0x353b40; @@ -13281,9 +13281,9 @@ class MoreOptionsLayer : FLAlertLayer, TextInputDelegate, GooglePlayDelegate, GJ void onGPSignOut(cocos2d::CCObject* sender); void onInfo(cocos2d::CCObject* sender) = win 0x354dc0; void onKeybindings(cocos2d::CCObject* sender) = win 0xd9640, m1 0x6b1048, imac 0x7a9d10; - void onNextPage(cocos2d::CCObject* sender) = win 0x353ce0, ios 0xf07d8; + void onNextPage(cocos2d::CCObject* sender) = win 0x353ce0, ios 0xf07d8, m1 0x6b0bbc, imac 0x7a9840; void onParental(cocos2d::CCObject* sender) = win 0x354cb0, ios 0xf0704; - void onPrevPage(cocos2d::CCObject* sender) = win 0x353cf0, ios 0xf07cc; + void onPrevPage(cocos2d::CCObject* sender) = win 0x353cf0, ios 0xf07cc, m1 0x6b0bb0, imac 0x7a9820; void onSongBrowser(cocos2d::CCObject* sender) = win 0x354aa0, ios 0xf0568, imac 0x7a9420, m1 0x6b0790; void onToggle(cocos2d::CCObject* sender) = win 0x3542a0; const char* pageKey(int); From e81ba42415630bdafa5d3949afd308563af926a7 Mon Sep 17 00:00:00 2001 From: km7 dev <100500023+Kingminer7@users.noreply.github.com> Date: Sat, 12 Oct 2024 21:55:47 -0400 Subject: [PATCH 82/84] Fix typo in MoreOptionsLayer::goToPage on MacOS Intel (#769) --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index edc657da1..96b92d149 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -13266,7 +13266,7 @@ class MoreOptionsLayer : FLAlertLayer, TextInputDelegate, GooglePlayDelegate, GJ void addToggle(char const*, char const*, char const*) = win 0x353280, ios 0xf00d0, imac 0x7a8ca0, m1 0x6b004c; int countForPage(int) = win 0x3538e0; - void goToPage(int) = win 0x353d00, ios 0xf07e4, m1 0x6b0bc8, imac 0x789860; + void goToPage(int) = win 0x353d00, ios 0xf07e4, m1 0x6b0bc8, imac 0x7a9860; void incrementCountForPage(int); const char* infoKey(int); cocos2d::CCLayer* layerForPage(int) = win 0x353b40; From d67f356a89e5c56b617aed500d285633d68c186a Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Sat, 12 Oct 2024 22:19:47 -0400 Subject: [PATCH 83/84] getFMODStatus --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index 96b92d149..f49dc31b2 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -5025,7 +5025,7 @@ class FMODAudioEngine : cocos2d::CCNode { float getEffectsVolume() = ios 0x14343c, imac 0x3eba70, m1 0x36929c { return m_sfxVolume; } - TodoReturn getFMODStatus(int) = win 0x5ba00, ios 0x1450f8; + gd::string getFMODStatus(int) = win 0x5ba00, m1 0x36c1ac, imac 0x3ef5e0, ios 0x1450f8; float getMeteringValue() = imac 0x3e7ec0, m1 0x366518; TodoReturn getMusicChannelID(int); unsigned int getMusicLengthMS(int channel) = win 0x5b0e0; From c375434b089d4d03cf59f33a06e133cd9db27e39 Mon Sep 17 00:00:00 2001 From: Justin <52604018+hiimjustin000@users.noreply.github.com> Date: Sat, 12 Oct 2024 22:43:29 -0400 Subject: [PATCH 84/84] Bring back FMODAudioEngine::m_musicOffset --- bindings/2.206/GeometryDash.bro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/2.206/GeometryDash.bro b/bindings/2.206/GeometryDash.bro index f49dc31b2..c1dd63502 100644 --- a/bindings/2.206/GeometryDash.bro +++ b/bindings/2.206/GeometryDash.bro @@ -5168,7 +5168,7 @@ class FMODAudioEngine : cocos2d::CCNode { int m_sampleRate; bool m_reducedQuality; bool m_unkBool1a1; - int m_unkInt1a4; + int m_musicOffset; bool m_unkBool1a8; int m_unkInt1ac; FMODAudioState m_audioState;