From 9d15c4d8a8bff3adce35f2cf3ae0d46191217023 Mon Sep 17 00:00:00 2001 From: Joaquin <67109235+Taiga74164@users.noreply.github.com> Date: Tue, 30 Aug 2022 12:13:29 -0600 Subject: [PATCH] Removed Alt-Godmode --- .../src/user/cheat/player/GodMode.cpp | 38 ++++++++----------- cheat-library/src/user/cheat/player/GodMode.h | 3 +- .../src/user/cheat/player/RapidFire.cpp | 8 ++-- 3 files changed, 19 insertions(+), 30 deletions(-) diff --git a/cheat-library/src/user/cheat/player/GodMode.cpp b/cheat-library/src/user/cheat/player/GodMode.cpp index bc1ae8d..d3752f0 100644 --- a/cheat-library/src/user/cheat/player/GodMode.cpp +++ b/cheat-library/src/user/cheat/player/GodMode.cpp @@ -7,12 +7,11 @@ namespace cheat::feature { GodMode::GodMode() : Feature(), - NFEX(f_Enabled, "God mode", "m_GodMode", "Player", false, false), - NF(f_AltGodMode, "Alternative God Mode", "Player", false) + NFEX(f_Enabled, "God mode", "m_GodMode", "Player", false, false) { HookManager::install(app::VCHumanoidMove_NotifyLandVelocity, VCHumanoidMove_NotifyLandVelocity_Hook); HookManager::install(app::Miscs_CheckTargetAttackable, Miscs_CheckTargetAttackable_Hook); - HookManager::install(app::MoleMole_LCBaseCombat_FireBeingHitEvent, LCBaseCombat_FireBeingHitEvent_Hook); + //HookManager::install(app::MoleMole_LCBaseCombat_FireBeingHitEvent, LCBaseCombat_FireBeingHitEvent_Hook); HookManager::install(app::MoleMole_ActorAbilityPlugin_HanlderModifierThinkTimerUp, MoleMole_ActorAbilityPlugin_HanlderModifierThinkTimerUp_Hook); } @@ -24,24 +23,17 @@ namespace cheat::feature void GodMode::DrawMain() { - ConfigWidget("God Mode", f_Enabled, - "Enables god mode, i.e. no incoming damage.\n" \ - "May not work with some types of damage."); - ImGui::Indent(); - ConfigWidget("Alternative God Mode", f_AltGodMode, - "Alternative god mode that ignores incoming damage\n" \ - "including environmental damage."); - ImGui::Unindent(); + ConfigWidget("God Mode", f_Enabled, "Enables god mode, i.e. no incoming damage including environmental damage.\n"); } bool GodMode::NeedStatusDraw() const { - return f_Enabled || f_AltGodMode; + return f_Enabled; } void GodMode::DrawStatus() { - ImGui::Text("God Mode%s", f_AltGodMode ? "+Alt " : " "); + ImGui::Text("God Mode"); } GodMode& GodMode::GetInstance() @@ -68,7 +60,7 @@ namespace cheat::feature void GodMode::VCHumanoidMove_NotifyLandVelocity_Hook(app::VCHumanoidMove* __this, app::Vector3 velocity, float reachMaxDownVelocityTime, MethodInfo* method) { auto& gm = GodMode::GetInstance(); - if ((gm.f_Enabled || gm.f_AltGodMode) && -velocity.y > 13) + if (gm.f_Enabled && -velocity.y > 13) { float randAdd = (float)(std::rand() % 1000) / 1000; velocity.y = -8 - randAdd; @@ -79,15 +71,15 @@ namespace cheat::feature } // Analog function for disable attack damage (Thanks to Taiga74164) - void GodMode::LCBaseCombat_FireBeingHitEvent_Hook(app::LCBaseCombat* __this, uint32_t attackeeRuntimeID, app::AttackResult* attackResult, MethodInfo* method) - { - auto& gm = GodMode::GetInstance(); - auto& manager = game::EntityManager::instance(); - if (gm.f_AltGodMode && manager.avatar()->runtimeID() == attackeeRuntimeID) - return; + //void GodMode::LCBaseCombat_FireBeingHitEvent_Hook(app::LCBaseCombat* __this, uint32_t attackeeRuntimeID, app::AttackResult* attackResult, MethodInfo* method) + //{ + // auto& gm = GodMode::GetInstance(); + // auto& manager = game::EntityManager::instance(); + // if (gm.f_AltGodMode && manager.avatar()->runtimeID() == attackeeRuntimeID) + // return; - CALL_ORIGIN(LCBaseCombat_FireBeingHitEvent_Hook, __this, attackeeRuntimeID, attackResult, method); - } + // CALL_ORIGIN(LCBaseCombat_FireBeingHitEvent_Hook, __this, attackeeRuntimeID, attackResult, method); + //} // Environmental damage immunity (Thanks to RELOADED#7236 / GitHub: @34736384) bool GodMode::MoleMole_ActorAbilityPlugin_HanlderModifierThinkTimerUp_Hook(app::ActorAbilityPlugin* __this, float delay, app::Object* arg, MethodInfo* method) @@ -100,7 +92,7 @@ namespace cheat::feature bool GodMode::NeedBlockHanlerModifierThinkTimeUp(app::Object* arg) { - if (!f_AltGodMode) + if (!f_Enabled) return false; auto actorModifier = CastTo(arg, *app::MoleMole_ActorModifier__TypeInfo); diff --git a/cheat-library/src/user/cheat/player/GodMode.h b/cheat-library/src/user/cheat/player/GodMode.h index 94ce8ed..4944e36 100644 --- a/cheat-library/src/user/cheat/player/GodMode.h +++ b/cheat-library/src/user/cheat/player/GodMode.h @@ -9,7 +9,6 @@ namespace cheat::feature { public: config::Field> f_Enabled; - config::Field> f_AltGodMode; static GodMode& GetInstance(); @@ -24,7 +23,7 @@ namespace cheat::feature bool NeedBlockHanlerModifierThinkTimeUp(app::Object* arg); static bool MoleMole_ActorAbilityPlugin_HanlderModifierThinkTimerUp_Hook(app::ActorAbilityPlugin* __this, float delay, app::Object* arg, MethodInfo* method); - static void LCBaseCombat_FireBeingHitEvent_Hook(app::LCBaseCombat* __this, uint32_t attackeeRuntimeID, app::AttackResult* attackResult, MethodInfo* method); + //static void LCBaseCombat_FireBeingHitEvent_Hook(app::LCBaseCombat* __this, uint32_t attackeeRuntimeID, app::AttackResult* attackResult, MethodInfo* method); static void VCHumanoidMove_NotifyLandVelocity_Hook(app::VCHumanoidMove* __this, app::Vector3 velocity, float reachMaxDownVelocityTime, MethodInfo* method); static bool Miscs_CheckTargetAttackable_Hook(app::BaseEntity* attacker, app::BaseEntity* target, MethodInfo* method); diff --git a/cheat-library/src/user/cheat/player/RapidFire.cpp b/cheat-library/src/user/cheat/player/RapidFire.cpp index 04706bd..b7375d8 100644 --- a/cheat-library/src/user/cheat/player/RapidFire.cpp +++ b/cheat-library/src/user/cheat/player/RapidFire.cpp @@ -8,8 +8,7 @@ namespace cheat::feature { - static void LCBaseCombat_DoHitEntity_Hook(app::LCBaseCombat* __this, uint32_t targetID, app::AttackResult* attackResult, - bool ignoreCheckCanBeHitInMP, MethodInfo* method); + //static void LCBaseCombat_DoHitEntity_Hook(app::LCBaseCombat* __this, uint32_t targetID, app::AttackResult* attackResult, bool ignoreCheckCanBeHitInMP, MethodInfo* method); static void VCAnimatorEvent_HandleProcessItem_Hook(app::MoleMole_VCAnimatorEvent* __this, app::MoleMole_VCAnimatorEvent_MoleMole_VCAnimatorEvent_AnimatorEventPatternProcessItem* processItem, app::AnimatorStateInfo processStateInfo, app::MoleMole_VCAnimatorEvent_MoleMole_VCAnimatorEvent_TriggerMode__Enum mode, MethodInfo* method); @@ -225,8 +224,7 @@ namespace cheat::feature // Raises when any entity do hit event. // Just recall attack few times (regulating by combatProp) // It's not tested well, so, I think, anticheat can detect it. - static void LCBaseCombat_DoHitEntity_Hook(app::LCBaseCombat* __this, uint32_t targetID, app::AttackResult* attackResult, - bool ignoreCheckCanBeHitInMP, MethodInfo* method) + /*static void LCBaseCombat_DoHitEntity_Hook(app::LCBaseCombat* __this, uint32_t targetID, app::AttackResult* attackResult, bool ignoreCheckCanBeHitInMP, MethodInfo* method) { auto attacker = game::Entity(__this->fields._._._entity); RapidFire& rapidFire = RapidFire::GetInstance(); @@ -275,7 +273,7 @@ namespace cheat::feature } CALL_ORIGIN(LCBaseCombat_DoHitEntity_Hook, __this, targetID, attackResult, ignoreCheckCanBeHitInMP, method); - } + }*/ static void LCBaseCombat_FireBeingHitEvent_Hook(app::LCBaseCombat* __this, uint32_t attackeeRuntimeID, app::AttackResult* attackResult, MethodInfo* method) {