diff --git a/Ripterms Ghost.vcxproj b/Ripterms Ghost.vcxproj
index d0b2d8e..c46045f 100644
--- a/Ripterms Ghost.vcxproj
+++ b/Ripterms Ghost.vcxproj
@@ -222,6 +222,7 @@
+
diff --git a/Ripterms Ghost.vcxproj.filters b/Ripterms Ghost.vcxproj.filters
index 4e9adaf..2952eea 100644
--- a/Ripterms Ghost.vcxproj.filters
+++ b/Ripterms Ghost.vcxproj.filters
@@ -240,6 +240,9 @@
Fichiers sources
+
+ Fichiers sources
+
diff --git a/Ripterms/Modules/BackTrack.cpp b/Ripterms/Modules/BackTrack.cpp
new file mode 100644
index 0000000..880e33c
--- /dev/null
+++ b/Ripterms/Modules/BackTrack.cpp
@@ -0,0 +1,46 @@
+#include "Modules.h"
+#include "../Cache/Cache.h"
+
+void Ripterms::Modules::BackTrack::renderGUI()
+{
+ static bool display_options = false;
+ ImGui::PushStyleVar(ImGuiStyleVar_ItemInnerSpacing, ImVec2(20.0f, 0.0f));
+ ImGui::PushStyleVar(ImGuiStyleVar_FramePadding, ImVec2(250.0f, ImGui::GetStyle().FramePadding.y));
+ ImGui::Checkbox("BackTrack", &enabled);
+ ImGui::PopStyleVar();
+ ImGui::PopStyleVar();
+ if (ImGui::IsItemClicked(ImGuiMouseButton_Right))
+ display_options = !display_options;
+ ImGui::SameLine();
+ ImGui::SetCursorPosX(ImGui::GetWindowWidth() - 30.0f);
+ if (ImGui::ArrowButton("BackTrackopt", ImGuiDir_Down))
+ display_options = !display_options;
+ if (display_options)
+ {
+ ImGui::SetCursorPosX(ImGui::GetCursorPosX() + 10.0f);
+ ImGui::BeginGroup();
+ ImGui::SliderFloat("PartialTicks in advance", &partialTicks, 0.01f, 2.0f, "%.2f");
+ ImGui::EndGroup();
+ }
+}
+
+void Ripterms::Modules::BackTrack::run()
+{
+ if (!enabled) return;
+ static Ripterms::CTimer timer = std::chrono::milliseconds(10);
+ if (!timer.isElapsed())
+ return;
+
+ for (EntityPlayer& player : Ripterms::cache->playerEntities.toVector())
+ {
+ if (player.isEqualTo(Ripterms::cache->thePlayer)) continue;
+ Ripterms::Maths::Vector3d vector = player.getMovementVector(partialTicks);
+ AxisAlignedBB bb = player.getBoundingBox();
+ Ripterms::Maths::Vector3d minbb(bb.getMinX(), bb.getMinY(), bb.getMinZ());
+ Ripterms::Maths::Vector3d maxbb(bb.getMaxX(), bb.getMaxY(), bb.getMaxZ());
+ minbb = minbb - vector;
+ maxbb = maxbb - vector;
+ bb.setMinX(minbb.x); bb.setMinY(minbb.y); bb.setMinZ(minbb.z);
+ bb.setMaxX(maxbb.x); bb.setMaxY(maxbb.y); bb.setMaxZ(maxbb.z);
+ }
+}
\ No newline at end of file
diff --git a/Ripterms/Modules/Modules.h b/Ripterms/Modules/Modules.h
index d3b8e4f..f6f3767 100644
--- a/Ripterms/Modules/Modules.h
+++ b/Ripterms/Modules/Modules.h
@@ -186,7 +186,7 @@ namespace Ripterms
class Xray : public IModule
{
public:
- Xray() { this->keyBind = 0x58; };
+ //Xray() { this->keyBind = 0x58; };
void renderGUI() override;
void render() override;
void disable() override;
@@ -237,7 +237,7 @@ namespace Ripterms
class Glide : public IModule
{
public:
- Glide() { this->keyBind = 0x47; };
+ //Glide() { this->keyBind = 0x47; };
void renderGUI() override;
void onUpdateWalkingPlayer(JNIEnv* env, EntityPlayerSP& this_player, bool* cancel) override;
};
@@ -260,9 +260,18 @@ namespace Ripterms
float speed = 0.1f;
};
+ class BackTrack : public IModule
+ {
+ public:
+ void renderGUI() override;
+ void run() override;
+ private:
+ float partialTicks = 1.0f;
+ };
+
inline std::map> categories =
{
- {"Combat", {new AimAssist(), new Reach(), new LeftClicker(), new WTap(), new HitBoxes()}},
+ {"Combat", {new AimAssist(), new Reach(), new LeftClicker(), new WTap(), new HitBoxes(), new BackTrack()}},
{"Player", {new FastPlace(), new Blink(), new LegitScaffold(), new NoFall()}},
{"Movement", {new Velocity(), new Sprint(), new Glide(), new VelocityFly(), new Speed()}},
{"Render", {new Xray(), new FullBright(), new ESP()}},