This commit is contained in:
altalk23 2023-01-06 20:21:21 +03:00
commit 6ea61a993d
5 changed files with 73 additions and 33 deletions

1
.gitignore vendored
View file

@ -40,6 +40,7 @@
# Ignore build folders
**/build
build
build-docs/
bin
loader/src/internal/about.hpp

View file

@ -1260,10 +1260,10 @@ class EditorUI : cocos2d::CCLayer, FLAlertLayerProtocol, ColorSelectDelegate, GJ
virtual void scrollWheel(float vertical, float horizontal) = win 0x921d0, mac 0x31370, ios 0x2c4884;
void createMoveMenu() = mac 0x275e0, win 0x8c0d0;
bool m_isPlayingMusic;
EditButtonBar* m_buttonBar;
PAD = mac 0x8, win 0x4;
cocos2d::CCArray* m_hideableUIElementArray;
PAD = mac 0x8, win 0x4;
float m_gridSize;
PAD = mac 0x18, win 0x14;
bool m_moveModifier;
@ -1716,14 +1716,6 @@ class GJBaseGameLayer : cocos2d::CCLayer, TriggerEffectDelegate {
void updateQueuedLabels() = mac 0xb9f30, win 0x111b00;
virtual ~GJBaseGameLayer() = mac 0xaf990, win 0x10add0;
// GJEffectManager* effectManager = mac 0x180;
// cocos2d::CCLayer* objectLayer = mac 0x188;
// cocos2d::CCArray* objects = mac 0x3a0;
// cocos2d::CCArray* sections = mac 0x3a8;
// PlayerObject* player1 = mac 0x380;
// PlayerObject* player2 = mac 0x388;
// LevelSettingsObject* levelSettings = mac 0x390;
// cocos2d::CCDictionary* unknownDict = mac 0x398;
OBB2D* m_boundingBox;
GJEffectManager* m_effectManager;
cocos2d::CCLayer* m_objectLayer;
@ -4336,7 +4328,7 @@ class PlayLayer : GJBaseGameLayer, CCCircleWaveDelegate, CurrencyRewardDelegate,
float unknown5c4;
GJGroundLayer* m_bottomGround;
GJGroundLayer* m_topGround;
double m_completelyUninitializedData;
PAD = mac 0x8, win 0x8;
bool m_isDead;
bool m_startCameraAtCorner;
bool m_cameraYLocked;
@ -4370,6 +4362,7 @@ class PlayLayer : GJBaseGameLayer, CCCircleWaveDelegate, CurrencyRewardDelegate,
void* unknown680;
int m_activeGravityEffects;
int m_gravityEffectStatus; // ??
PAD = mac 0x4, win 0x4;
cocos2d::CCArray* m_gravitySprites;
bool unk428;
bool m_shouldRecordActions;

View file

@ -6,33 +6,36 @@
name = "Geode"
version = "v1.0.0-beta"
repository = "https://github.com/geode-sdk/geode"
[docs]
include = [
"loader/include/Geode/**/*.hpp",
"loader/include/Geode/**/*.h",
"build/codegenned/Geode/binding/*.hpp"
]
exclude = [
"loader/include/Geode/modify/Comparer.hpp",
"loader/include/Geode/platform/*.hpp",
"loader/include/Geode/c++stl/*.hpp",
# All of the relevant cocos headers are included through Geode headers
"loader/include/Geode/cocos/**/*.h"
]
tree = "https://github.com/geode-sdk/geode/tree/main"
# Root folders to show in the navigation browser
[[browser.roots]]
path = "loader/include/Geode"
include-prefix = "Geode"
[[sources]]
name = "Geode"
dir = "loader/include/Geode"
# todo: Make flash infer this from cmake
strip-include-prefix = "loader/include"
include = [
"**/*.hpp",
"**/*.h",
]
exclude = [
"modify/Comparer.hpp",
"platform/*.hpp",
"c++stl/*.hpp",
# All of the relevant cocos headers are included through Geode headers
"cocos/**/*.h"
]
[[browser.roots]]
path = "build/codegenned/Geode/binding"
include-prefix = "Geode/binding"
[[sources]]
name = "Bindings"
dir = "build-docs/codegenned/Geode/binding"
strip-include-prefix = "build-docs/codegenned"
include = [
"*.hpp"
]
# Bindings are generated at compile time
exists-online = false
# CMake options
[cmake]
config-args = [
@ -48,8 +51,12 @@ config-args = [
"-DCMAKE_CXX_FLAGS=-m32",
"-DWIN32=On"
]
# We want to build codegen in order to get the bindings
build = true
build-dir = "build-docs"
build-args = [
"--target", "CodegenRun"
]
# The file we use to get all the include paths and such
infer-args-from = "loader/src/main.cpp"

View file

@ -10,7 +10,7 @@ GEODE_MEMBER_CHECK(PlayerObject, m_lastCollidedSolid, 0x690);
GEODE_MEMBER_CHECK(PlayerObject, m_playerColor1, 0x7c2);
// EditorUI
GEODE_MEMBER_CHECK(EditorUI, m_buttonBar, 0x198);
GEODE_MEMBER_CHECK(EditorUI, m_buttonBar, 0x1a0);
GEODE_MEMBER_CHECK(EditorUI, m_selectedObject, 0x440);
// LevelEditorLayer

View file

@ -9,4 +9,43 @@ GEODE_MEMBER_CHECK(PlayerObject, m_unk484, 0x484);
GEODE_MEMBER_CHECK(PlayerObject, m_ghostTrail, 0x4E4);
GEODE_MEMBER_CHECK(PlayerObject, m_waveTrail, 0x514);
GEODE_MEMBER_CHECK(EditorUI, m_buttonBar, 0x134);
GEODE_MEMBER_CHECK(EditorUI, m_hideableUIElementArray, 0x13c);
GEODE_MEMBER_CHECK(EditorUI, m_gridSize, 0x140);
GEODE_MEMBER_CHECK(EditorUI, m_objectInfoLabel, 0x168);
GEODE_MEMBER_CHECK(EditorUI, m_scaleControl, 0x17c);
GEODE_MEMBER_CHECK(EditorUI, m_selectedObject, 0x2c4);
GEODE_MEMBER_CHECK(LevelEditorLayer, m_editorUI, 0x380);
GEODE_MEMBER_CHECK(LevelEditorLayer, m_level, 0x3a8);
GEODE_MEMBER_CHECK(GameManager, m_valueKeeper, 0x110);
GEODE_MEMBER_CHECK(GameManager, m_loaded, 0x148);
GEODE_MEMBER_CHECK(GameManager, m_playLayer, 0x164);
GEODE_MEMBER_CHECK(GameManager, m_levelEditorLayer, 0x168);
GEODE_MEMBER_CHECK(GameManager, m_playerUDID, 0x180);
GEODE_MEMBER_CHECK(GameManager, m_backgroundMusicVolume, 0x1c0);
GEODE_MEMBER_CHECK(GameManager, m_sceneEnum, 0x1dc);
GEODE_MEMBER_CHECK(GameManager, m_ratePower, 0x2d0);
GEODE_MEMBER_CHECK(PlayLayer, m_startPos, 0x32c);
GEODE_MEMBER_CHECK(PlayLayer, m_screenRingObjects, 0x36c);
GEODE_MEMBER_CHECK(PlayLayer, m_bottomGround, 0x38c);
GEODE_MEMBER_CHECK(PlayLayer, m_topGround, 0x390);
GEODE_MEMBER_CHECK(PlayLayer, m_isDead, 0x39c);
GEODE_MEMBER_CHECK(PlayLayer, m_levelLength, 0x3b4);
GEODE_MEMBER_CHECK(PlayLayer, m_attemptLabel, 0x3bc);
GEODE_MEMBER_CHECK(PlayLayer, m_sliderGrooveSprite, 0x404);
GEODE_MEMBER_CHECK(PlayLayer, m_gravitySprites, 0x424);
GEODE_MEMBER_CHECK(PlayLayer, m_level, 0x488);
GEODE_MEMBER_CHECK(PlayLayer, m_isTestMode, 0x494);
GEODE_MEMBER_CHECK(PlayLayer, m_antiCheatObject, 0x530);
GEODE_MEMBER_CHECK(PlayLayer, m_disableGravityEffect, 0x536);
GEODE_MEMBER_CHECK(GJBaseGameLayer, m_boundingBox, 0x120);
GEODE_MEMBER_CHECK(GJBaseGameLayer, m_player1, 0x224);
GEODE_MEMBER_CHECK(GJBaseGameLayer, m_groups, 0x274);
GEODE_MEMBER_CHECK(GJBaseGameLayer, m_attemptClickCount, 0x2b4);
static_assert(sizeof(GJBaseGameLayer) == 0x2cc);
#endif