Skip to content

Commit 554e737

Browse files
committed
lag fix
1 parent 19bbaaf commit 554e737

File tree

8 files changed

+162
-5
lines changed

8 files changed

+162
-5
lines changed

changelog.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
# 1.1.2
2+
3+
- Added Level Edit
4+
- Removed boob dropdown (sad day)
5+
- Fixed lag with Transparent BG
6+
17
# 1.1.1
28

39
- Added hide endscreen

mod.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"geode": "2.0.0",
3-
"version": "v1.1.1",
3+
"version": "v1.1.2",
44
"gd": {
55
"win": "2.204",
66
"android": "*"

src/Client/AndroidUI.h

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
#include "ClientSetup.h"
33
#include <Geode/modify/AchievementNotifier.hpp>
44
#include <Geode/modify/MenuLayer.hpp>
5+
#include <Geode/modify/AppDelegate.hpp>
56
#include <Geode/modify/PauseLayer.hpp>
67
#include <Geode/modify/PlayLayer.hpp>
78
#include <Geode/modify/MenuLayer.hpp>
@@ -355,6 +356,8 @@ class AndroidBall : public CCLayer
355356

356357
this->setID("android-ball");
357358

359+
//this->retain(); // idk what this does but it fixes transition customizer
360+
358361
highest++;
359362

360363
this->setTag(highest);
@@ -595,13 +598,13 @@ class $modify (CCScene)
595598
}
596599
};
597600

598-
class $modify (AchievementNotifier)
601+
class $modify (AppDelegate)
599602
{
600603
void willSwitchToScene(CCScene* p0)
601604
{
602605
log::info("will switch to scene");
603606

604-
AchievementNotifier::willSwitchToScene(p0);
607+
AppDelegate::willSwitchToScene(p0);
605608

606609
if (p0 == nullptr)
607610
return; // something real bad happened, gd will probably shit itself :(

src/Client/ClientSetup.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,8 @@ class ClientUtils
8787
bypass->modules.push_back(new Module("Confirm Practice", "conf-prac", "confirm practice mode help"));
8888
bypass->modules.push_back(new Module("Confirm Restart", "conf-res", "confirm restart help"));
8989

90+
bypass->modules.push_back(new Module("Level Edit", "level-edit", "Allows you to edit any level"));
91+
9092
#ifdef GEODE_IS_ANDROID
9193
//bypass->modules.push_back(new Module("Slider Limit Bypass", "slider-limit", "Allows sliders to go beyond the limit of the slider. <cr>Doesn't work for scaling in the editor currently</c>"));
9294
#endif

src/Hacks/LevelEdit.cpp

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#include <Geode/Geode.hpp>
2+
#include <Geode/modify/PauseLayer.hpp>
3+
#include "../Client/Client.h"
4+
5+
using namespace geode::prelude;
6+
7+
class $modify (PauseLayer)
8+
{
9+
virtual TodoReturn customSetup()
10+
{
11+
if (Client::GetModuleEnabled("level-edit"))
12+
PlayLayer::get()->m_level->m_levelType = GJLevelType::Editor;
13+
14+
PauseLayer::customSetup();
15+
}
16+
};

src/Hacks/ShowLayout.cpp

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
/*#include <Geode/Geode.hpp>
2+
#include <Geode/modify/PlayLayer.hpp>
3+
#include "../Client/Client.h"
4+
5+
using namespace geode::prelude;
6+
7+
class $modify (PlayLayer)
8+
{
9+
TodoReturn addObject(GameObject* p0)
10+
{
11+
//log::info("type: {}", p0->m_objectType == GameObjectType::Decoration);
12+
13+
//if (p0->m_objectType != GameObjectType::Decoration)
14+
//if (false)
15+
//PlayLayer::addObject(p0);
16+
}
17+
};*/

src/Hacks/TransitionTimeCustomiser.cpp

Lines changed: 62 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,71 @@
11
#include <Geode/Geode.hpp>
22
#include <Geode/cocos/layers_scenes_transitions_nodes/CCTransition.h>
33
#include <Geode/modify/CCTransitionFade.hpp>
4+
#include <Geode/modify/CCDirector.hpp>
45
#include "../Client/Client.h"
56

67
using namespace geode::prelude;
78

9+
CCScene* getSceneForSel(int i, float f, CCScene* s)
10+
{
11+
AppDelegate::get()->willSwitchToScene(s);
12+
13+
if (i == 0)
14+
return CCTransitionFade::create(f, s);
15+
else if (i == 1)
16+
return CCTransitionCrossFade::create(f, s);
17+
else if (i == 2)
18+
return CCTransitionFadeBL::create(f, s);
19+
else if (i == 3)
20+
return CCTransitionFadeTR::create(f, s);
21+
else if (i == 4)
22+
return CCTransitionFadeUp::create(f, s);
23+
else if (i == 5)
24+
return CCTransitionFadeDown::create(f, s);
25+
else if (i == 6)
26+
return CCTransitionFlipAngular::create(f, s);
27+
else if (i == 7)
28+
return CCTransitionFlipX::create(f, s);
29+
else if (i == 8)
30+
return CCTransitionFlipY::create(f, s);
31+
else if (i == 9)
32+
return CCTransitionZoomFlipAngular::create(f, s);
33+
else if (i == 10)
34+
return CCTransitionZoomFlipX::create(f, s);
35+
else if (i == 11)
36+
return CCTransitionZoomFlipY::create(f, s);
37+
else if (i == 12)
38+
return CCTransitionJumpZoom::create(f, s);
39+
else if (i == 13)
40+
return CCTransitionMoveInT::create(f, s);
41+
else if (i == 14)
42+
return CCTransitionMoveInB::create(f, s);
43+
else if (i == 15)
44+
return CCTransitionMoveInL::create(f, s);
45+
else if (i == 16)
46+
return CCTransitionMoveInR::create(f, s);
47+
else if (i == 17)
48+
return CCTransitionRotoZoom::create(f, s);
49+
else if (i == 18)
50+
return CCTransitionShrinkGrow::create(f, s);
51+
else if (i == 19)
52+
return CCTransitionSlideInT::create(f, s);
53+
else if (i == 20)
54+
return CCTransitionSlideInB::create(f, s);
55+
else if (i == 21)
56+
return CCTransitionSlideInL::create(f, s);
57+
else if (i == 22)
58+
return CCTransitionSlideInR::create(f, s);
59+
else if (i == 23)
60+
return CCTransitionSplitRows::create(f, s);
61+
else if (i == 24)
62+
return CCTransitionSplitCols::create(f, s);
63+
else if (i == 25)
64+
return CCTransitionTurnOffTiles::create(f, s);
65+
66+
return nullptr;
67+
}
68+
869
class $modify (cocos2d::CCTransitionFade)
970
{
1071
static CCTransitionFade* create(float duration,CCScene* scene)
@@ -16,6 +77,6 @@ class $modify (cocos2d::CCTransitionFade)
1677
mod = 0;
1778
}
1879

19-
return CCTransitionFade::create(duration * mod, scene);
80+
return as<CCTransitionFade*>(getSceneForSel(0, duration * mod, scene));// /*base_cast<CCTransitionFade*>(CCTransitionFlipY::create(duration * mod, scene)); */CCTransitionFade::create(duration * mod, scene);
2081
}
2182
};

src/Hacks/TransparentBG.cpp

Lines changed: 53 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
#include <Geode/Geode.hpp>
22
#include <Geode/modify/CCSprite.hpp>
3+
#include <Geode/modify/AppDelegate.hpp>
34
#include "../Client/Client.h"
45

56
using namespace geode::prelude;
67

7-
class $modify (CCSprite)
8+
/*class $modify (CCSprite)
89
{
910
bool grad;
1011
@@ -28,4 +29,55 @@ class $modify (CCSprite)
2829
else
2930
CCSprite::setColor(color3);
3031
}
32+
};*/
33+
34+
std::string getNodeName(CCObject* node) {
35+
#ifdef GEODE_IS_WINDOWS
36+
return typeid(*node).name() + 6;
37+
#else
38+
{
39+
std::string ret;
40+
41+
int status = 0;
42+
auto demangle = abi::__cxa_demangle(typeid(*node).name(), 0, 0, &status);
43+
if (status == 0) {
44+
ret = demangle;
45+
}
46+
free(demangle);
47+
48+
return ret;
49+
}
50+
#endif
51+
}
52+
53+
class $modify (AppDelegate)
54+
{
55+
virtual void willSwitchToScene(CCScene* scene)
56+
{
57+
AppDelegate::willSwitchToScene(scene);
58+
59+
if (!Client::GetModuleEnabled("trans-bg"))
60+
return;
61+
62+
if (scene->getChildrenCount() > 0)
63+
{
64+
if (auto l = as<CCLayer*>(scene->getChildren()->objectAtIndex(0)))
65+
{
66+
l->sortAllChildren();
67+
68+
if (auto b = static_cast<CCSprite*>(l->getChildren()->objectAtIndex(0)))
69+
{
70+
log::info("bg: {}", b);
71+
72+
if (getNodeName(b).starts_with("cocos2d::CCSprite"))
73+
{
74+
if (b->getColor().r == 0 && b->getColor().g == 102 && b->getColor().b == 255)
75+
{
76+
b->setColor({255, 255, 255});
77+
}
78+
}
79+
}
80+
}
81+
}
82+
}
3183
};

0 commit comments

Comments
 (0)