Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ add_compile_definitions(
)

add_subdirectory(include)
add_subdirectory(src/thunker)
add_subdirectory(src/mc)
add_subdirectory(src/client)

if (MSVC)
Expand Down
61 changes: 23 additions & 38 deletions src/client/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,48 +2,33 @@ cmake_minimum_required(VERSION 3.28)
project(selaura_client LANGUAGES CXX)

add_library(selaura_client SHARED
main.cpp
client.cpp
platform/platform.cpp
memory/sdk/gui/ScreenView.cpp
memory/sdk/world/BaseLightTextureImageBuilder.cpp
memory/sdk/world/Dimension.cpp
memory/sdk/game/uri/GameArguments.cpp
memory/sdk/renderer/screen/MinecraftUIRenderContext.cpp
memory/sdk/renderer/bgfx/bgfx.cpp
memory/sdk/core/RenderItemInHandDescription.cpp
memory/sdk/client/ClientInstanceScreenModel.cpp
memory/sdk/game/ClientInstance.cpp
memory/sdk/game/MinecraftGame.cpp
memory/sdk/network/LoopbackPacketSender.cpp
memory/sdk/network/Packet.cpp
feature/impl/render/fullbright.cpp
feature/impl/render/paperdoll.cpp
feature/impl/render/enchant_glint.cpp
feature/impl/render/environment.cpp
command/impl/enable_command.cpp
command/impl/disable_command.cpp
dllmain.cpp
components/client.cpp
memory/scanner.cpp
memory/scan_target.cpp
memory/handle.cpp
patches/patch_manager.cpp
)

target_include_directories(selaura_client PRIVATE
fmt
EnTT
spdlog
libhat
gsl
glm
safetyhook
glaze
magic_enum
fmt
EnTT
spdlog
libhat
gsl
glm
safetyhook
glaze
magic_enum
)

target_link_libraries(selaura_client PRIVATE
EnTT::EnTT
spdlog
libhat
Microsoft.GSL::GSL
glm
safetyhook::safetyhook
glaze::glaze
magic_enum::magic_enum
EnTT::EnTT
spdlog
libhat
Microsoft.GSL::GSL
glm
safetyhook::safetyhook
glaze::glaze
magic_enum::magic_enum
)
72 changes: 72 additions & 0 deletions src/client/api/stt.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
#pragma once
#include <tuple>
#include <type_traits>

namespace stt {
template <typename T>
struct fn_traits;

template <typename Ret, typename... Args>
struct fn_traits<Ret(*)(Args...)> {
using ret_t = Ret;
using args_t = std::tuple<Args...>;
static constexpr bool is_member = false;
};

template <typename Ret, typename Class, typename... Args>
struct fn_traits<Ret(Class::*)(Args...)> {
using ret_t = Ret;
using class_t = Class;
using args_t = std::tuple<Args...>;
static constexpr bool is_member = true;
};

template <typename Ret, typename Class, typename... Args>
struct fn_traits<Ret(Class::*)(Args...) const> {
using ret_t = Ret;
using class_t = Class;
using args_t = std::tuple<Args...>;
static constexpr bool is_member = true;
};

template <typename Lambda>
struct fn_traits : fn_traits<decltype(&Lambda::operator())> {};

template <typename Derived, typename Base, typename = void>
struct extends {
static constexpr bool value = std::is_base_of_v<Base, Derived>;
using type = Derived;
};

template <typename Derived, typename Base>
struct extends<Derived, Base, std::enable_if_t<std::is_member_function_pointer_v<Derived>>> {
using traits = fn_traits<Derived>;
static_assert(!std::is_void_v<typename traits::class_t>, "Member function pointer must have a class type");
static constexpr bool value = std::is_base_of_v<Base, typename traits::class_t>;
using type = Derived;
};

template <typename Derived, typename Base>
using extends_t = typename extends<Derived, Base>::type;

template <typename Derived, typename Base>
constexpr bool extends_v = extends<Derived, Base>::value;

template <typename T, typename = void>
struct is_callable : std::false_type {};

template <typename T>
struct is_callable<T, std::void_t<decltype(&T::operator())>> : std::true_type {};

template <typename T>
constexpr bool is_callable_v = is_callable<T>::value;

template <typename T>
using ret_type_t = typename fn_traits<T>::ret_t;

template <typename T>
using args_type_t = typename fn_traits<T>::args_t;

template <typename T>
constexpr bool is_member_callable_v = fn_traits<T>::is_member;
};
61 changes: 0 additions & 61 deletions src/client/client.cpp

This file was deleted.

49 changes: 0 additions & 49 deletions src/client/client.hpp

This file was deleted.

20 changes: 0 additions & 20 deletions src/client/command/command.hpp

This file was deleted.

49 changes: 0 additions & 49 deletions src/client/command/command_handler.hpp

This file was deleted.

50 changes: 0 additions & 50 deletions src/client/command/impl/disable_command.cpp

This file was deleted.

Loading
Loading