Added Auto follow seelie. Don't work with electro seelies atm
This commit is contained in:
parent
d975e5ee58
commit
47e36d1316
@ -16,6 +16,7 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="src\user\cheat\visuals\TextureChanger.h" />
|
||||
<ClInclude Include="src\user\cheat\world\AutoSeelie.h" />
|
||||
<ClInclude Include="src\user\cheat\world\FakeTime.h" />
|
||||
<ClInclude Include="src\user\cheat\debugger.h">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WS|x64'">false</ExcludedFromBuild>
|
||||
@ -118,6 +119,7 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="src\user\cheat\visuals\TextureChanger.cpp" />
|
||||
<ClCompile Include="src\user\cheat\world\AutoSeelie.cpp" />
|
||||
<ClCompile Include="src\user\cheat\world\FakeTime.cpp" />
|
||||
<ClCompile Include="src\user\cheat\debugger.cpp">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
|
||||
|
@ -237,6 +237,9 @@
|
||||
<ClInclude Include="src\user\cheat\visuals\TextureChanger.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="src\user\cheat\world\AutoSeelie.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Font Include="res\Ruda-Bold.ttf" />
|
||||
@ -432,6 +435,9 @@
|
||||
<ClCompile Include="src\user\cheat\visuals\TextureChanger.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\user\cheat\world\AutoSeelie.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="res\res.rc">
|
||||
|
@ -27,6 +27,7 @@
|
||||
#include <cheat/world/AutoTreeFarm.h>
|
||||
#include <cheat/world/AutoDestroy.h>
|
||||
#include <cheat/world/FakeTime.h>
|
||||
#include <cheat/world/AutoSeelie.h>
|
||||
|
||||
#include <cheat/teleport/ChestTeleport.h>
|
||||
#include <cheat/teleport/MapTeleport.h>
|
||||
@ -83,12 +84,14 @@ namespace cheat
|
||||
FEAT_INST(AutoLoot),
|
||||
FEAT_INST(AutoTreeFarm),
|
||||
FEAT_INST(AutoDestroy),
|
||||
FEAT_INST(AutoSeelie),
|
||||
FEAT_INST(DialogSkip),
|
||||
FEAT_INST(DumbEnemies),
|
||||
FEAT_INST(ElementalSight),
|
||||
FEAT_INST(KillAura),
|
||||
FEAT_INST(MobVacuum),
|
||||
FEAT_INST(FakeTime),
|
||||
|
||||
|
||||
FEAT_INST(ChestTeleport),
|
||||
FEAT_INST(OculiTeleport),
|
||||
|
83
cheat-library/src/user/cheat/world/AutoSeelie.cpp
Normal file
83
cheat-library/src/user/cheat/world/AutoSeelie.cpp
Normal file
@ -0,0 +1,83 @@
|
||||
#include "pch-il2cpp.h"
|
||||
#include "AutoSeelie.h"
|
||||
|
||||
#include <helpers.h>
|
||||
#include <cheat/events.h>
|
||||
#include <cheat/game/EntityManager.h>
|
||||
#include <cheat/game/util.h>
|
||||
|
||||
namespace cheat::feature
|
||||
{
|
||||
AutoSeelie::AutoSeelie() : Feature(),
|
||||
NF(f_Enabled, "Auto follow seelie", "AutoSeelie", false)
|
||||
|
||||
{
|
||||
events::GameUpdateEvent += MY_METHOD_HANDLER(AutoSeelie::OnGameUpdate);
|
||||
}
|
||||
const FeatureGUIInfo& AutoSeelie::GetGUIInfo() const
|
||||
{
|
||||
static const FeatureGUIInfo info{ "", "World", true };
|
||||
return info;
|
||||
}
|
||||
|
||||
void AutoSeelie::DrawMain()
|
||||
{
|
||||
ConfigWidget("Auto seelie", f_Enabled, "Auto follow seelie to it home");
|
||||
ImGui::SameLine();
|
||||
ImGui::TextColored(ImColor(255, 165, 0, 255), "Don't work with Electro Seelies");
|
||||
}
|
||||
|
||||
bool AutoSeelie::NeedStatusDraw() const
|
||||
{
|
||||
return f_Enabled;
|
||||
}
|
||||
|
||||
void AutoSeelie::DrawStatus()
|
||||
{
|
||||
ImGui::Text ("AutoSeelie");
|
||||
}
|
||||
|
||||
AutoSeelie& AutoSeelie::GetInstance()
|
||||
{
|
||||
static AutoSeelie instance;
|
||||
return instance;
|
||||
}
|
||||
|
||||
bool AutoSeelie::IsEntityForVac(game::Entity* entity)
|
||||
{
|
||||
auto& manager = game::EntityManager::instance();
|
||||
auto distance = manager.avatar()->distance(entity);
|
||||
float radius = 100.0f;
|
||||
|
||||
if (entity->name().find("Gear_Seelie") != std::string::npos || entity->name().find("_FireSeelie") != std::string::npos ||
|
||||
entity->name().find("_LitSeelie") != std::string::npos)
|
||||
{
|
||||
return distance <= radius;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
void AutoSeelie::OnGameUpdate()
|
||||
{
|
||||
if (!f_Enabled)
|
||||
return;
|
||||
|
||||
auto currentTime = util::GetCurrentTimeMillisec();
|
||||
if (currentTime < nextTime)
|
||||
return;
|
||||
|
||||
auto& manager = game::EntityManager::instance();
|
||||
auto avatarEntity = manager.avatar();
|
||||
for (const auto& entity : manager.entities())
|
||||
{
|
||||
if (!IsEntityForVac(entity))
|
||||
continue;
|
||||
|
||||
entity->setRelativePosition(avatarEntity->relativePosition());
|
||||
}
|
||||
nextTime = currentTime + 1000;
|
||||
}
|
||||
|
||||
}
|
33
cheat-library/src/user/cheat/world/AutoSeelie.h
Normal file
33
cheat-library/src/user/cheat/world/AutoSeelie.h
Normal file
@ -0,0 +1,33 @@
|
||||
#pragma once
|
||||
#include <cheat-base/cheat/Feature.h>
|
||||
#include <cheat-base/config/config.h>
|
||||
|
||||
#include <cheat/game/Entity.h>
|
||||
#include <cheat/game/filters.h>
|
||||
#include <il2cpp-appdata.h>
|
||||
|
||||
namespace cheat::feature
|
||||
{
|
||||
|
||||
class AutoSeelie : public Feature
|
||||
{
|
||||
public:
|
||||
config::Field<config::Toggle<Hotkey>> f_Enabled;
|
||||
|
||||
static AutoSeelie& GetInstance();
|
||||
|
||||
const FeatureGUIInfo& GetGUIInfo() const override;
|
||||
void DrawMain() override;
|
||||
|
||||
virtual bool NeedStatusDraw() const override;
|
||||
void DrawStatus() override;
|
||||
|
||||
void OnGameUpdate();
|
||||
private:
|
||||
|
||||
std::vector<game::IEntityFilter*> m_Filters;
|
||||
AutoSeelie();
|
||||
int nextTime{};
|
||||
bool IsEntityForVac(cheat::game::Entity* entity);
|
||||
};
|
||||
}
|
1
cheat-library/vendor/protobuf
vendored
Submodule
1
cheat-library/vendor/protobuf
vendored
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit 6f99f12a6b3e2a38f444d9d052eb29822f885913
|
Loading…
Reference in New Issue
Block a user