From c3ca8eb7b8d364018acb6221a40a9caa6e5a56ee Mon Sep 17 00:00:00 2001 From: 0O0o0oOoO00 <11174151+0O0o0oOoO00@users.noreply.github.com> Date: Sat, 30 Aug 2025 21:08:02 +0800 Subject: [PATCH] add: skip battle celebrate crack --- blcrack/cracker/cracker.cpp | 11 +++++++++++ blcrack/cracker/cracker.hpp | 4 ++++ blcrack/cracker/server.cpp | 22 ++++++++++++++++++++++ blcrack/http/cracker.http | 6 ++++++ 4 files changed, 43 insertions(+) diff --git a/blcrack/cracker/cracker.cpp b/blcrack/cracker/cracker.cpp index 430a05f9d..b20eaed62 100644 --- a/blcrack/cracker/cracker.cpp +++ b/blcrack/cracker/cracker.cpp @@ -224,6 +224,17 @@ void Cracker::disable_all() { disable_exercise_more_power(); disable_fast_wave(); disable_monster_kill_self(); + disable_skip_battle_celebrate(); +} + +void Cracker::enable_skip_battle_celebrate() { + ENABLE(SKIP_BATTLE_CELEBRATE); + m_state["ys"]["Battle"]["BattleConfig"]["CelebrateDuration"] = 0.01; +} + +void Cracker::disable_skip_battle_celebrate() { + DISABLE(SKIP_BATTLE_CELEBRATE); + m_state["ys"]["Battle"]["BattleConfig"]["CelebrateDuration"] = 3; } void Cracker::enable_monster_kill_self() { diff --git a/blcrack/cracker/cracker.hpp b/blcrack/cracker/cracker.hpp index 0e6952e5c..f100e2a25 100644 --- a/blcrack/cracker/cracker.hpp +++ b/blcrack/cracker/cracker.hpp @@ -114,6 +114,9 @@ public: void disable_all(); + void enable_skip_battle_celebrate(); + void disable_skip_battle_celebrate(); + void enable_monster_kill_self(); void disable_monster_kill_self(); @@ -190,6 +193,7 @@ private: std::atomic EXERCISE_MORE_POWER = false; std::atomic FAST_WAVE = false; std::atomic MONSTER_KILL_SELF = false; + std::atomic SKIP_BATTLE_CELEBRATE = false; } m_flag; struct { diff --git a/blcrack/cracker/server.cpp b/blcrack/cracker/server.cpp index a048edcc9..63275c7cd 100644 --- a/blcrack/cracker/server.cpp +++ b/blcrack/cracker/server.cpp @@ -748,6 +748,28 @@ CrackerServer::CrackerServer() { CRACK_OK(); }); + Post("/enable_skip_battle_celebrate", [](const httplib::Request& req, httplib::Response& res) { + try { + Cracker::Instance().enable_skip_battle_celebrate(); + } catch (std::exception& e) { + SPDLOG_ERROR("Enable skip battle celebrate failed: {}", e.what()); + res.status = 500; + return; + } + CRACK_OK(); + }); + + Post("/disable_skip_battle_celebrate", [](const httplib::Request& req, httplib::Response& res) { + try { + Cracker::Instance().disable_skip_battle_celebrate(); + } catch (std::exception& e) { + SPDLOG_ERROR("Disable skip battle celebrate failed: {}", e.what()); + res.status = 500; + return; + } + CRACK_OK(); + }); + Post("/init", [](const httplib::Request& req, httplib::Response& res) { try { Cracker::Instance(); diff --git a/blcrack/http/cracker.http b/blcrack/http/cracker.http index 2416ef559..7941a537c 100644 --- a/blcrack/http/cracker.http +++ b/blcrack/http/cracker.http @@ -136,6 +136,12 @@ POST http://{{Host}}:{{Port}}/enable_monster_kill_self ### POST http://{{Host}}:{{Port}}/disable_monster_kill_self +### +POST http://{{Host}}:{{Port}}/enable_skip_battle_celebrate + +### +POST http://{{Host}}:{{Port}}/disable_skip_battle_celebrate + ### POST http://{{Host}}:{{Port}}/is_alive