Skip to content

Commit

Permalink
v1.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
hiimjasmine00 committed Apr 27, 2024
1 parent 1f4e2af commit f9eb9c0
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 1 deletion.
1 change: 1 addition & 0 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Fake Rate Changelog
## v1.1.0 (2024-04-26)
- Fixed incompatibility with the mod "More Difficulties" by uproxide
- Fixed incompatibility with the mod "Grandpa Demon" by ItzKiba

## v1.0.0 (2024-04-24)
- Initial release
10 changes: 10 additions & 0 deletions src/FREditPopup.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,16 @@ void FRLevelInfoLayer::checkFakeRate() {

void FRLevelInfoLayer::updateFakeRate(int stars, int feature, int difficulty, bool update, bool coins) {
m_fields->m_fakeRateData = { .id = m_level->m_levelID, .stars = stars, .feature = feature, .difficulty = difficulty };
if (Loader::get()->isModLoaded("itzkiba.grandpa_demon")) {
removeChildByTag(69420);
for (auto child : CCArrayExt<CCNode*>(getChildren())) {
if (child->getID().compare("grd-difficulty") == 0) child->setVisible(false);
}
if (auto grdInfinity = getChildByID("grd-infinity")) grdInfinity->setVisible(false);
m_difficultySprite->setVisible(true);
if (auto featureGlow = m_difficultySprite->getChildByTag(69420))
featureGlow->setPosition(m_difficultySprite->getContentWidth() * 0.5f, m_difficultySprite->getContentHeight() * 0.5f);
}
auto winSize = CCDirector::sharedDirector()->getWinSize();
auto gsm = GameStatsManager::sharedState();
auto showStars = stars > 0 || m_level->m_dailyID > 0 || m_level->m_gauntletLevel;
Expand Down
16 changes: 15 additions & 1 deletion src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,25 @@ class $modify(FRLevelCell, LevelCell) {
void loadFromLevel(GJGameLevel* level) {
LevelCell::loadFromLevel(level);
auto difficultyContainer = m_mainLayer->getChildByID("difficulty-container");
if (!difficultyContainer) difficultyContainer = m_mainLayer->getChildByID("grd-demon-icon-layer");
if (difficultyContainer) {
auto vec = Mod::get()->getSavedValue<std::vector<FakeRateSaveData>>("fake-rate", {});
auto it = std::find_if(vec.begin(), vec.end(), [this](auto const& item) { return item.id == m_level->m_levelID; });
if (it != vec.end()) {
auto fakeRateData = *it;
auto difficultySprite = static_cast<GJDifficultySprite*>(difficultyContainer->getChildByID("difficulty-sprite"));
if (difficultyContainer->getID().compare("grd-demon-icon-layer") == 0) {
difficultyContainer->removeChildByTag(69420);
difficultySprite->setVisible(true);
if (auto grdInfinity = static_cast<CCSprite*>(difficultyContainer->getChildByID("grd-infinity"))) {
grdInfinity->setVisible(false);
static_cast<CCSprite*>(difficultyContainer->getChildren()->objectAtIndex(difficultyContainer->getChildrenCount() - 2))->setVisible(false);
}
else static_cast<CCSprite*>(difficultyContainer->getChildren()->lastObject())->setVisible(false);
if (auto featureGlow = difficultySprite->getChildByTag(69420))
featureGlow->setPosition(difficultySprite->getContentWidth() * 0.5f, difficultySprite->getContentHeight() * 0.5f);
}

auto fakeRateData = *it;
difficultySprite->updateDifficultyFrame(fakeRateData.difficulty, (GJDifficultyName)0);
difficultySprite->updateFeatureState((GJFeatureState)fakeRateData.feature);
auto addCoins = level->m_coins > 0 && !m_compactView;
Expand Down Expand Up @@ -114,6 +127,7 @@ class $modify(FRLevelCell, LevelCell) {

void fixMoreDifficultiesIncompatibility(FakeRateSaveData const& fakeRateData) {
auto difficultyContainer = m_mainLayer->getChildByID("difficulty-container");
if (!difficultyContainer) difficultyContainer = m_mainLayer->getChildByID("grd-demon-icon-layer");

if (auto existingCasualSprite = static_cast<CCSprite*>(FRUtilities::getChildBySpriteName(difficultyContainer, "uproxide.more_difficulties/MD_Difficulty04.png")))
existingCasualSprite->removeFromParent();
Expand Down

0 comments on commit f9eb9c0

Please sign in to comment.