Merge branch 'master' into vacuum-change
This commit is contained in:
commit
bccdd9736c
@ -70,7 +70,6 @@ As well as setting up **`cheat-library`** as startup project.
|
||||
- Auto Fish
|
||||
- Kill Aura
|
||||
- Mob Vacuum
|
||||
- Music Event (temporary)
|
||||
|
||||
#### Teleport
|
||||
- Chest/Oculi Teleport (Teleports to nearest)
|
||||
@ -89,6 +88,7 @@ As well as setting up **`cheat-library`** as startup project.
|
||||
- In-game Embedded Browser
|
||||
- Enable Peaking
|
||||
- Profile Changer
|
||||
- Free Camera
|
||||
- Texture Changer
|
||||
- Paimon Follow
|
||||
|
||||
|
@ -82,10 +82,10 @@ static IDXGISwapChainPresent findDirect11Present()
|
||||
ID3D11DeviceContext* pContext = nullptr;
|
||||
ID3D11Device* pDevice = nullptr;
|
||||
|
||||
if (/*FAILED(D3D11CreateDeviceAndSwapChain(NULL, D3D_DRIVER_TYPE_WARP, NULL, NULL, &featureLevel, 1,
|
||||
D3D11_SDK_VERSION, &swapChainDesc, &pSwapChain, &pDevice, NULL, &pContext)) &&*/
|
||||
if (FAILED(D3D11CreateDeviceAndSwapChain(nullptr, D3D_DRIVER_TYPE_WARP, nullptr, 0, nullptr, 1, D3D11_SDK_VERSION,
|
||||
&swapChainDesc, &pSwapChain, &pDevice, &featureLevel, &pContext)) &&
|
||||
FAILED(D3D11CreateDeviceAndSwapChain(nullptr, D3D_DRIVER_TYPE_HARDWARE, nullptr, 0, nullptr, 0, D3D11_SDK_VERSION,
|
||||
&swapChainDesc, &pSwapChain, &pDevice, &featureLevel, nullptr)))
|
||||
&swapChainDesc, &pSwapChain, &pDevice, &featureLevel, &pContext)))
|
||||
{
|
||||
DestroyWindow(swapChainDesc.OutputWindow);
|
||||
UnregisterClass(wc.lpszClassName, GetModuleHandle(nullptr));
|
||||
|
@ -202,6 +202,9 @@ namespace renderer
|
||||
|
||||
ImGui_ImplDX12_CreateDeviceObjects();
|
||||
ImGui::GetIO().ImeWindowHandle = window;
|
||||
|
||||
static const std::string imguiPath = (util::GetCurrentPath() / "imgui.ini").string();
|
||||
ImGui::GetIO().IniFilename = imguiPath.c_str();
|
||||
io.SetPlatformImeDataFn = nullptr; // F**king bug take 4 hours of my life
|
||||
}
|
||||
|
||||
@ -213,6 +216,8 @@ namespace renderer
|
||||
ImGui::CreateContext();
|
||||
ImGuiIO& io = ImGui::GetIO(); (void)io;
|
||||
io.ConfigFlags |= ImGuiConfigFlags_NavEnableKeyboard;
|
||||
static const std::string imguiPath = (util::GetCurrentPath() / "imgui.ini").string();
|
||||
io.IniFilename = imguiPath.c_str();
|
||||
|
||||
LoadCustomFont();
|
||||
SetupImGuiStyle();
|
||||
|
@ -62,6 +62,25 @@ namespace util
|
||||
return (*c);
|
||||
}
|
||||
|
||||
std::string GetModulePath(HMODULE hModule /*= nullptr*/)
|
||||
{
|
||||
char pathOut[MAX_PATH] = {};
|
||||
GetModuleFileNameA(hModule, pathOut, MAX_PATH);
|
||||
|
||||
return std::filesystem::path(pathOut).parent_path().string();
|
||||
}
|
||||
|
||||
static std::filesystem::path _currentPath;
|
||||
void SetCurrentPath(const std::filesystem::path& current_path)
|
||||
{
|
||||
_currentPath = current_path;
|
||||
}
|
||||
|
||||
std::filesystem::path GetCurrentPath()
|
||||
{
|
||||
return _currentPath;
|
||||
}
|
||||
|
||||
std::optional<std::string> SelectDirectory(const char* title)
|
||||
{
|
||||
auto currPath = std::filesystem::current_path();
|
||||
|
@ -6,6 +6,7 @@
|
||||
#include <vector>
|
||||
#include <cheat-base/Logger.h>
|
||||
|
||||
#include <filesystem>
|
||||
#include <SimpleIni.h>
|
||||
|
||||
|
||||
@ -36,6 +37,11 @@ namespace util
|
||||
std::string GetLastErrorAsString(DWORD errorId = 0);
|
||||
int64_t GetCurrentTimeMillisec();
|
||||
|
||||
std::string GetModulePath(HMODULE hModule = nullptr);
|
||||
|
||||
void SetCurrentPath(const std::filesystem::path& curren_path);
|
||||
std::filesystem::path GetCurrentPath();
|
||||
|
||||
std::vector<std::string> StringSplit(const std::string& delimiter, const std::string& content);
|
||||
std::string SplitWords(const std::string& value);
|
||||
std::string MakeCapital(std::string value);
|
||||
|
@ -20,6 +20,7 @@
|
||||
<ClInclude Include="src\user\cheat\misc\sniffer\pipe\messages\PipePacketData.h" />
|
||||
<ClInclude Include="src\user\cheat\misc\sniffer\pipe\PipeClient.h" />
|
||||
<ClInclude Include="src\user\cheat\misc\sniffer\pipe\PipeIO.h" />
|
||||
<ClInclude Include="src\user\cheat\player\AutoRun.h" />
|
||||
<ClInclude Include="src\user\cheat\visuals\TextureChanger.h" />
|
||||
<ClInclude Include="src\user\cheat\visuals\FreeCamera.h" />
|
||||
<ClInclude Include="src\user\cheat\world\AutoSeelie.h" />
|
||||
@ -96,7 +97,6 @@
|
||||
<ClInclude Include="src\user\cheat\world\DumbEnemies.h" />
|
||||
<ClInclude Include="src\user\cheat\world\KillAura.h" />
|
||||
<ClInclude Include="src\user\cheat\world\MobVacuum.h" />
|
||||
<ClInclude Include="src\user\cheat\world\MusicEvent.h" />
|
||||
<ClInclude Include="src\user\cheat\world\VacuumLoot.h" />
|
||||
<ClInclude Include="src\user\main.h" />
|
||||
</ItemGroup>
|
||||
@ -110,6 +110,7 @@
|
||||
<ClCompile Include="src\user\cheat\misc\sniffer\pipe\messages\PipePacketData.cpp" />
|
||||
<ClCompile Include="src\user\cheat\misc\sniffer\pipe\PipeClient.cpp" />
|
||||
<ClCompile Include="src\user\cheat\misc\sniffer\pipe\PipeIO.cpp" />
|
||||
<ClCompile Include="src\user\cheat\player\AutoRun.cpp" />
|
||||
<ClCompile Include="src\user\cheat\visuals\TextureChanger.cpp" />
|
||||
<ClCompile Include="src\user\cheat\visuals\FreeCamera.cpp" />
|
||||
<ClCompile Include="src\user\cheat\world\AutoSeelie.cpp" />
|
||||
@ -183,7 +184,6 @@
|
||||
<ClCompile Include="src\user\cheat\world\DumbEnemies.cpp" />
|
||||
<ClCompile Include="src\user\cheat\world\KillAura.cpp" />
|
||||
<ClCompile Include="src\user\cheat\world\MobVacuum.cpp" />
|
||||
<ClCompile Include="src\user\cheat\world\MusicEvent.cpp" />
|
||||
<ClCompile Include="src\user\cheat\world\VacuumLoot.cpp" />
|
||||
<ClCompile Include="src\user\main.cpp" />
|
||||
</ItemGroup>
|
||||
@ -880,8 +880,7 @@
|
||||
</Command>
|
||||
</PostBuildEvent>
|
||||
<CustomBuildStep>
|
||||
<Command>"$(OutDir)injector.exe"
|
||||
powershell -nop -c "& {sleep 20}"</Command>
|
||||
<Command>"$(OutDir)injector.exe" powershell -nop -c "&amp; {sleep 20}"</Command>
|
||||
<Outputs>$(OutDir)_noexist.nope;%(Outputs)</Outputs>
|
||||
<Inputs>$(TargetPath);%(Inputs)</Inputs>
|
||||
</CustomBuildStep>
|
||||
|
@ -213,9 +213,6 @@
|
||||
<ClInclude Include="src\user\cheat\visuals\Browser.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="src\user\cheat\world\MusicEvent.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="src\user\cheat\visuals\EnablePeaking.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
@ -246,6 +243,9 @@
|
||||
<ClInclude Include="src\user\cheat\visuals\FreeCamera.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="src\user\cheat\player\AutoRun.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Font Include="res\Ruda-Bold.ttf" />
|
||||
@ -417,9 +417,6 @@
|
||||
<ClCompile Include="src\user\cheat\visuals\Browser.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\user\cheat\world\MusicEvent.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\user\cheat\visuals\EnablePeaking.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
@ -450,6 +447,9 @@
|
||||
<ClCompile Include="src\user\cheat\visuals\FreeCamera.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="src\user\cheat\player\AutoRun.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="res\res.rc">
|
||||
|
@ -1,13 +1,13 @@
|
||||
{
|
||||
"game_version": "2.7",
|
||||
"game_version": "2.8",
|
||||
"modules": {
|
||||
"UnityPlayer.dll": {
|
||||
"checksum": 17900298344514688789,
|
||||
"timestamp": 132967628640000000
|
||||
"checksum": 4999961552328781053,
|
||||
"timestamp": 0
|
||||
},
|
||||
"UserAssembly.dll": {
|
||||
"checksum": 7306786341503590701,
|
||||
"timestamp": 132967628640000000
|
||||
"checksum": 807890720029543258,
|
||||
"timestamp": 0
|
||||
}
|
||||
}
|
||||
}
|
@ -5,249 +5,250 @@
|
||||
// * IL2CPP API function pointers
|
||||
// ******************************************************************************
|
||||
|
||||
#define il2cpp_add_internal_call_ptr 0x006CB6F0
|
||||
#define il2cpp_alloc_ptr 0x006CB700
|
||||
#define il2cpp_allocation_granularity_ptr 0x0019E6E0
|
||||
#define il2cpp_array_class_get_ptr 0x006CB710
|
||||
#define il2cpp_array_element_size_ptr 0x006CB720
|
||||
#define il2cpp_array_get_byte_length_ptr 0x006EEA60
|
||||
#define il2cpp_array_length_ptr 0x006CB730
|
||||
#define il2cpp_array_new_ptr 0x006CB740
|
||||
#define il2cpp_array_new_full_ptr 0x006CB750
|
||||
#define il2cpp_array_new_specific_ptr 0x006CB760
|
||||
#define il2cpp_array_object_header_size_ptr 0x006CB770
|
||||
#define il2cpp_assembly_get_image_ptr 0x006CB8B0
|
||||
#define il2cpp_bounded_array_class_get_ptr 0x006CB780
|
||||
#define il2cpp_capture_memory_snapshot_ptr 0x006CB790
|
||||
#define il2cpp_class_array_element_size_ptr 0x006CB7A0
|
||||
#define il2cpp_class_enum_basetype_ptr 0x006CB7B0
|
||||
#define il2cpp_class_for_each_ptr 0x006CB7C0
|
||||
#define il2cpp_class_from_il2cpp_type_ptr 0x006CB7D0
|
||||
#define il2cpp_class_from_name_ptr 0x006CB7E0
|
||||
#define il2cpp_class_from_system_type_ptr 0x006CB7F0
|
||||
#define il2cpp_class_from_type_ptr 0x006CB7D0
|
||||
#define il2cpp_class_get_assemblyname_ptr 0x006CB800
|
||||
#define il2cpp_class_get_bitmap_ptr 0x006CB810
|
||||
#define il2cpp_class_get_bitmap_size_ptr 0x006CB830
|
||||
#define il2cpp_class_get_data_size_ptr 0x006CB840
|
||||
#define il2cpp_class_get_declaring_type_ptr 0x006CB850
|
||||
#define il2cpp_class_get_element_class_ptr 0x006CB860
|
||||
#define il2cpp_class_get_events_ptr 0x006CB870
|
||||
#define il2cpp_class_get_field_from_name_ptr 0x006CB880
|
||||
#define il2cpp_class_get_fields_ptr 0x006CB890
|
||||
#define il2cpp_class_get_flags_ptr 0x006CB8A0
|
||||
#define il2cpp_class_get_image_ptr 0x006CB8B0
|
||||
#define il2cpp_class_get_interfaces_ptr 0x006CB8C0
|
||||
#define il2cpp_class_get_method_from_name_ptr 0x006CB8D0
|
||||
#define il2cpp_class_get_methods_ptr 0x006CB8E0
|
||||
#define il2cpp_class_get_name_ptr 0x006CBFB0
|
||||
#define il2cpp_class_get_namespace_ptr 0x006CC330
|
||||
#define il2cpp_class_get_nested_types_ptr 0x006CB8F0
|
||||
#define il2cpp_class_get_parent_ptr 0x006CB900
|
||||
#define il2cpp_class_get_properties_ptr 0x006CB910
|
||||
#define il2cpp_class_get_property_from_name_ptr 0x006CB920
|
||||
#define il2cpp_class_get_rank_ptr 0x006CB930
|
||||
#define il2cpp_class_get_static_field_data_ptr 0x00129FB0
|
||||
#define il2cpp_class_get_type_ptr 0x006E7340
|
||||
#define il2cpp_class_get_type_token_ptr 0x006CB940
|
||||
#define il2cpp_class_get_userdata_offset_ptr 0x006CB950
|
||||
#define il2cpp_class_has_attribute_ptr 0x006CB960
|
||||
#define il2cpp_class_has_parent_ptr 0x006CB970
|
||||
#define il2cpp_class_has_references_ptr 0x006CB980
|
||||
#define il2cpp_class_instance_size_ptr 0x006CB990
|
||||
#define il2cpp_class_is_abstract_ptr 0x006CB9A0
|
||||
#define il2cpp_class_is_assignable_from_ptr 0x006CB9B0
|
||||
#define il2cpp_class_is_blittable_ptr 0x006CB9C0
|
||||
#define il2cpp_class_is_enum_ptr 0x006CB9D0
|
||||
#define il2cpp_class_is_generic_ptr 0x006CB9E0
|
||||
#define il2cpp_class_is_inflated_ptr 0x006CB9F0
|
||||
#define il2cpp_class_is_interface_ptr 0x006CBA00
|
||||
#define il2cpp_class_is_subclass_of_ptr 0x006CBA10
|
||||
#define il2cpp_class_is_valuetype_ptr 0x006CBA20
|
||||
#define il2cpp_class_num_fields_ptr 0x006CBA30
|
||||
#define il2cpp_class_set_userdata_ptr 0x006CBA40
|
||||
#define il2cpp_class_value_size_ptr 0x006CBA50
|
||||
#define il2cpp_current_thread_get_frame_at_ptr 0x006CBA60
|
||||
#define il2cpp_current_thread_get_stack_depth_ptr 0x006CBA70
|
||||
#define il2cpp_current_thread_get_top_frame_ptr 0x006CBA90
|
||||
#define il2cpp_current_thread_walk_frame_stack_ptr 0x006CBAA0
|
||||
#define il2cpp_custom_attrs_construct_ptr 0x006CBAB0
|
||||
#define il2cpp_custom_attrs_free_ptr 0x001C8D70
|
||||
#define il2cpp_custom_attrs_from_class_ptr 0x006CBAC0
|
||||
#define il2cpp_custom_attrs_from_method_ptr 0x006CBAE0
|
||||
#define il2cpp_custom_attrs_get_attr_ptr 0x006CBB00
|
||||
#define il2cpp_custom_attrs_has_attr_ptr 0x006CBB10
|
||||
#define il2cpp_debug_get_method_info_ptr 0x006CBB20
|
||||
#define il2cpp_debugger_set_agent_options_ptr 0x001C8D70
|
||||
#define il2cpp_domain_assembly_open_ptr 0x006CBB30
|
||||
#define il2cpp_domain_get_ptr 0x006CBB40
|
||||
#define il2cpp_domain_get_assemblies_ptr 0x006CBB50
|
||||
#define il2cpp_enable_object_type_mutex_ptr 0x006CBB80
|
||||
#define il2cpp_exception_from_name_msg_ptr 0x006CBB90
|
||||
#define il2cpp_field_get_flags_ptr 0x006CBBA0
|
||||
#define il2cpp_field_get_name_ptr 0x006CB8B0
|
||||
#define il2cpp_field_get_offset_ptr 0x006CBBB0
|
||||
#define il2cpp_field_get_parent_ptr 0x006CBFB0
|
||||
#define il2cpp_field_get_type_ptr 0x006CBBC0
|
||||
#define il2cpp_field_get_value_ptr 0x006CBBD0
|
||||
#define il2cpp_field_get_value_object_ptr 0x006CBBE0
|
||||
#define il2cpp_field_has_attribute_ptr 0x006CBBF0
|
||||
#define il2cpp_field_is_literal_ptr 0x006CBC00
|
||||
#define il2cpp_field_set_value_ptr 0x006CBC10
|
||||
#define il2cpp_field_set_value_object_ptr 0x006CBC20
|
||||
#define il2cpp_field_static_get_value_ptr 0x006CBC30
|
||||
#define il2cpp_field_static_set_value_ptr 0x006CBC40
|
||||
#define il2cpp_format_exception_ptr 0x006CBC50
|
||||
#define il2cpp_format_stack_trace_ptr 0x006CBD00
|
||||
#define il2cpp_free_ptr 0x006E2A60
|
||||
#define il2cpp_free_captured_memory_snapshot_ptr 0x006CBDB0
|
||||
#define il2cpp_gc_collect_ptr 0x006CBDC0
|
||||
#define il2cpp_gc_collect_a_little_ptr 0x006CBDD0
|
||||
#define il2cpp_gc_disable_ptr 0x006CBDE0
|
||||
#define il2cpp_gc_dump_append_text_to_log_ptr 0x006CBDF0
|
||||
#define il2cpp_gc_dump_info_ptr 0x006CBE00
|
||||
#define il2cpp_gc_dump_set_large_allocated_block_found_callback_ptr 0x006CBE10
|
||||
#define il2cpp_gc_dump_set_small_allocated_block_found_callback_ptr 0x006CBE20
|
||||
#define il2cpp_gc_enable_ptr 0x006CBE30
|
||||
#define il2cpp_gc_foreach_heap_ptr 0x006CBE40
|
||||
#define il2cpp_gc_get_heap_size_ptr 0x006CBE70
|
||||
#define il2cpp_gc_get_max_time_slice_ns_ptr 0x006CBE80
|
||||
#define il2cpp_gc_get_used_size_ptr 0x006CBE90
|
||||
#define il2cpp_gc_has_strict_wbarriers_ptr 0x006D35C0
|
||||
#define il2cpp_gc_is_disabled_ptr 0x006CBEA0
|
||||
#define il2cpp_gc_is_incremental_ptr 0x006CBEB0
|
||||
#define il2cpp_gc_set_external_allocation_tracker_ptr 0x001C8D70
|
||||
#define il2cpp_gc_set_external_wbarrier_tracker_ptr 0x001C8D70
|
||||
#define il2cpp_gc_set_max_time_slice_ns_ptr 0x006CBEC0
|
||||
#define il2cpp_gc_set_object_malloc_callback_ptr 0x006CBED0
|
||||
#define il2cpp_gc_set_object_return_freelist_callback_ptr 0x006CBEE0
|
||||
#define il2cpp_gc_wbarrier_set_field_ptr 0x006CBEF0
|
||||
#define il2cpp_gchandle_foreach_get_target_ptr 0x006CBF00
|
||||
#define il2cpp_gchandle_free_ptr 0x006E2A50
|
||||
#define il2cpp_gchandle_get_target_ptr 0x006CBF30
|
||||
#define il2cpp_gchandle_new_ptr 0x006CBF40
|
||||
#define il2cpp_gchandle_new_weakref_ptr 0x006CBF50
|
||||
#define il2cpp_get_committed_memory_size_ptr 0x006CBF60
|
||||
#define il2cpp_get_corlib_ptr 0x006CBF70
|
||||
#define il2cpp_get_exception_argument_null_ptr 0x00757750
|
||||
#define il2cpp_get_hash_table_memory_ptr 0x006CBF80
|
||||
#define il2cpp_get_meta_data_pool_memory_ptr 0x006CBF90
|
||||
#define il2cpp_image_get_assembly_ptr 0x006CBFB0
|
||||
#define il2cpp_image_get_class_ptr 0x006CBFC0
|
||||
#define il2cpp_image_get_class_count_ptr 0x006CBFD0
|
||||
#define il2cpp_image_get_entry_point_ptr 0x006CBFE0
|
||||
#define il2cpp_image_get_filename_ptr 0x006CB8B0
|
||||
#define il2cpp_image_get_name_ptr 0x006CB8B0
|
||||
#define il2cpp_init_ptr 0x006CBFF0
|
||||
#define il2cpp_init_security_ptr 0x006CC020
|
||||
#define il2cpp_init_utf16_ptr 0x006CC040
|
||||
#define il2cpp_is_debugger_attached_ptr 0x006CC0F0
|
||||
#define il2cpp_is_vm_thread_ptr 0x006CC100
|
||||
#define il2cpp_method_get_class_ptr 0x006CC330
|
||||
#define il2cpp_method_get_declaring_type_ptr 0x006CC330
|
||||
#define il2cpp_method_get_flags_ptr 0x006CC110
|
||||
#define il2cpp_method_get_from_reflection_ptr 0x006CBFB0
|
||||
#define il2cpp_method_get_name_ptr 0x006CBFB0
|
||||
#define il2cpp_method_get_object_ptr 0x006CC140
|
||||
#define il2cpp_method_get_param_ptr 0x006CC150
|
||||
#define il2cpp_method_get_param_count_ptr 0x006CC160
|
||||
#define il2cpp_method_get_param_name_ptr 0x006CC170
|
||||
#define il2cpp_method_get_return_type_ptr 0x006CC180
|
||||
#define il2cpp_method_get_token_ptr 0x006CC190
|
||||
#define il2cpp_method_has_attribute_ptr 0x006CC1A0
|
||||
#define il2cpp_method_is_generic_ptr 0x006CC1B0
|
||||
#define il2cpp_method_is_inflated_ptr 0x006CC1C0
|
||||
#define il2cpp_method_is_instance_ptr 0x006CC1D0
|
||||
#define il2cpp_monitor_enter_ptr 0x006CC1E0
|
||||
#define il2cpp_monitor_exit_ptr 0x006CC1F0
|
||||
#define il2cpp_monitor_pulse_ptr 0x006CC200
|
||||
#define il2cpp_monitor_pulse_all_ptr 0x006CC210
|
||||
#define il2cpp_monitor_try_enter_ptr 0x006CC220
|
||||
#define il2cpp_monitor_try_wait_ptr 0x006CC230
|
||||
#define il2cpp_monitor_wait_ptr 0x006CC240
|
||||
#define il2cpp_object_get_class_ptr 0x006CB8B0
|
||||
#define il2cpp_object_get_size_ptr 0x006CC250
|
||||
#define il2cpp_object_get_virtual_method_ptr 0x006CC260
|
||||
#define il2cpp_object_header_size_ptr 0x0019E6E0
|
||||
#define il2cpp_object_new_ptr 0x006CC270
|
||||
#define il2cpp_object_unbox_ptr 0x006CC290
|
||||
#define il2cpp_offset_of_array_bounds_in_array_object_header_ptr 0x0019E6E0
|
||||
#define il2cpp_offset_of_array_length_in_array_object_header_ptr 0x00121970
|
||||
#define il2cpp_override_stack_backtrace_ptr 0x006CC2A0
|
||||
#define il2cpp_profiler_install_ptr 0x006CC2B0
|
||||
#define il2cpp_profiler_install_allocation_ptr 0x006CC2C0
|
||||
#define il2cpp_profiler_install_enter_leave_ptr 0x006CC2D0
|
||||
#define il2cpp_profiler_install_fileio_ptr 0x006CC2E0
|
||||
#define il2cpp_profiler_install_gc_ptr 0x006CC2F0
|
||||
#define il2cpp_profiler_install_thread_ptr 0x006CC300
|
||||
#define il2cpp_profiler_set_events_ptr 0x006CC310
|
||||
#define il2cpp_property_get_flags_ptr 0x006CC320
|
||||
#define il2cpp_property_get_get_method_ptr 0x006CBFB0
|
||||
#define il2cpp_property_get_name_ptr 0x006CBBC0
|
||||
#define il2cpp_property_get_parent_ptr 0x006CB8B0
|
||||
#define il2cpp_property_get_set_method_ptr 0x006CC330
|
||||
#define il2cpp_raise_exception_ptr 0x006CC340
|
||||
#define il2cpp_register_debugger_agent_transport_ptr 0x001C8D70
|
||||
#define il2cpp_register_filedelete_callback_ptr 0x006CC350
|
||||
#define il2cpp_register_filemodify_callback_ptr 0x006CC360
|
||||
#define il2cpp_register_log_callback_ptr 0x006CC370
|
||||
#define il2cpp_resolve_icall_ptr 0x006CC380
|
||||
#define il2cpp_runtime_class_init_ptr 0x00757A20
|
||||
#define il2cpp_runtime_invoke_ptr 0x006CC390
|
||||
#define il2cpp_runtime_invoke_convert_args_ptr 0x006CC3B0
|
||||
#define il2cpp_runtime_object_init_ptr 0x006CC3D0
|
||||
#define il2cpp_runtime_object_init_exception_ptr 0x006CC3E0
|
||||
#define il2cpp_runtime_unhandled_exception_policy_set_ptr 0x006CC3F0
|
||||
#define il2cpp_set_commandline_arguments_ptr 0x006CC400
|
||||
#define il2cpp_set_commandline_arguments_utf16_ptr 0x006CC410
|
||||
#define il2cpp_set_config_ptr 0x006CC420
|
||||
#define il2cpp_set_config_dir_ptr 0x006CC430
|
||||
#define il2cpp_set_config_utf16_ptr 0x006CC440
|
||||
#define il2cpp_set_data_dir_ptr 0x006CC450
|
||||
#define il2cpp_set_default_thread_affinity_ptr 0x006CC460
|
||||
#define il2cpp_set_disable_gc_parallel_mark_ptr 0x006CC470
|
||||
#define il2cpp_set_find_plugin_callback_ptr 0x006CC480
|
||||
#define il2cpp_set_memory_callbacks_ptr 0x006CC490
|
||||
#define il2cpp_set_output_redirected_file_path_ptr 0x006CC4A0
|
||||
#define il2cpp_set_parallel_android_affinity_ptr 0x006CC4B0
|
||||
#define il2cpp_set_parallel_android_cupcount_ptr 0x006CC4C0
|
||||
#define il2cpp_set_temp_dir_ptr 0x006CC4D0
|
||||
#define il2cpp_shutdown_ptr 0x006CC4E0
|
||||
#define il2cpp_start_gc_world_ptr 0x006CC4F0
|
||||
#define il2cpp_stats_dump_to_file_ptr 0x006D35C0
|
||||
#define il2cpp_stats_get_value_ptr 0x006E2AF0
|
||||
#define il2cpp_stop_gc_world_ptr 0x006CC500
|
||||
#define il2cpp_string_chars_ptr 0x006CC510
|
||||
#define il2cpp_string_intern_ptr 0x006CC520
|
||||
#define il2cpp_string_is_interned_ptr 0x006CC530
|
||||
#define il2cpp_string_length_ptr 0x006CC540
|
||||
#define il2cpp_string_new_ptr 0x00757A30
|
||||
#define il2cpp_string_new_len_ptr 0x006CC550
|
||||
#define il2cpp_string_new_utf16_ptr 0x006CC560
|
||||
#define il2cpp_string_new_wrapper_ptr 0x00757A30
|
||||
#define il2cpp_thread_attach_ptr 0x006CC570
|
||||
#define il2cpp_thread_current_ptr 0x006CC580
|
||||
#define il2cpp_thread_detach_ptr 0x006CC590
|
||||
#define il2cpp_thread_get_all_attached_threads_ptr 0x006CC5A0
|
||||
#define il2cpp_thread_get_frame_at_ptr 0x006CC5B0
|
||||
#define il2cpp_thread_get_stack_depth_ptr 0x006CC5C0
|
||||
#define il2cpp_thread_get_top_frame_ptr 0x006CC5D0
|
||||
#define il2cpp_thread_walk_frame_stack_ptr 0x006CC5E0
|
||||
#define il2cpp_type_equals_ptr 0x006CC5F0
|
||||
#define il2cpp_type_get_assembly_qualified_name_ptr 0x006CC600
|
||||
#define il2cpp_type_get_attrs_ptr 0x006CC6C0
|
||||
#define il2cpp_type_get_class_or_element_class_ptr 0x006CC6D0
|
||||
#define il2cpp_type_get_name_ptr 0x006CC6E0
|
||||
#define il2cpp_type_get_name_chunked_ptr 0x006CC7A0
|
||||
#define il2cpp_type_get_object_ptr 0x00757A50
|
||||
#define il2cpp_type_get_type_ptr 0x006CC7B0
|
||||
#define il2cpp_type_is_byref_ptr 0x006CC7C0
|
||||
#define il2cpp_type_is_pointer_type_ptr 0x006CC7D0
|
||||
#define il2cpp_type_is_static_ptr 0x006CC7E0
|
||||
#define il2cpp_unhandled_exception_ptr 0x006EC170
|
||||
#define il2cpp_unity_install_unitytls_interface_ptr 0x006CC7F0
|
||||
#define il2cpp_unity_liveness_calculation_begin_ptr 0x006CC800
|
||||
#define il2cpp_unity_liveness_calculation_end_ptr 0x006CC810
|
||||
#define il2cpp_unity_liveness_calculation_from_root_ptr 0x006CC820
|
||||
#define il2cpp_unity_liveness_calculation_from_statics_ptr 0x006CC830
|
||||
#define il2cpp_value_box_ptr 0x007575C0
|
||||
#define il2cpp_add_internal_call_ptr 0x0065EF30
|
||||
#define il2cpp_alloc_ptr 0x0065EF40
|
||||
#define il2cpp_allocation_granularity_ptr 0x00710530
|
||||
#define il2cpp_array_class_get_ptr 0x0065EF50
|
||||
#define il2cpp_array_element_size_ptr 0x0065EF60
|
||||
#define il2cpp_array_get_byte_length_ptr 0x00681860
|
||||
#define il2cpp_array_length_ptr 0x0065EF70
|
||||
#define il2cpp_array_new_ptr 0x0065EF80
|
||||
#define il2cpp_array_new_full_ptr 0x0065EF90
|
||||
#define il2cpp_array_new_specific_ptr 0x0065EFA0
|
||||
#define il2cpp_array_object_header_size_ptr 0x0065EFB0
|
||||
#define il2cpp_assembly_get_image_ptr 0x0065F830
|
||||
#define il2cpp_bounded_array_class_get_ptr 0x0065EFC0
|
||||
#define il2cpp_capture_memory_snapshot_ptr 0x0065EFD0
|
||||
#define il2cpp_class_array_element_size_ptr 0x0065EFE0
|
||||
#define il2cpp_class_enum_basetype_ptr 0x0065EFF0
|
||||
#define il2cpp_class_for_each_ptr 0x0065F000
|
||||
#define il2cpp_class_from_il2cpp_type_ptr 0x0065F010
|
||||
#define il2cpp_class_from_name_ptr 0x0065F020
|
||||
#define il2cpp_class_from_system_type_ptr 0x0065F030
|
||||
#define il2cpp_class_from_type_ptr 0x0065F010
|
||||
#define il2cpp_class_get_assemblyname_ptr 0x0065F040
|
||||
#define il2cpp_class_get_bitmap_ptr 0x0065F050
|
||||
#define il2cpp_class_get_bitmap_size_ptr 0x0065F070
|
||||
#define il2cpp_class_get_data_size_ptr 0x0065F080
|
||||
#define il2cpp_class_get_declaring_type_ptr 0x0065F090
|
||||
#define il2cpp_class_get_element_class_ptr 0x0065F0A0
|
||||
#define il2cpp_class_get_events_ptr 0x0065F0B0
|
||||
#define il2cpp_class_get_field_from_name_ptr 0x0065F0C0
|
||||
#define il2cpp_class_get_fields_ptr 0x0065F0D0
|
||||
#define il2cpp_class_get_flags_ptr 0x0065F0E0
|
||||
#define il2cpp_class_get_image_ptr 0x0065F830
|
||||
#define il2cpp_class_get_interfaces_ptr 0x0065F0F0
|
||||
#define il2cpp_class_get_method_from_name_ptr 0x0065F100
|
||||
#define il2cpp_class_get_methods_ptr 0x0065F110
|
||||
#define il2cpp_class_get_name_ptr 0x0065F7F0
|
||||
#define il2cpp_class_get_namespace_ptr 0x0065FB70
|
||||
#define il2cpp_class_get_nested_types_ptr 0x0065F120
|
||||
#define il2cpp_class_get_parent_ptr 0x0065F130
|
||||
#define il2cpp_class_get_properties_ptr 0x0065F140
|
||||
#define il2cpp_class_get_property_from_name_ptr 0x0065F150
|
||||
#define il2cpp_class_get_rank_ptr 0x0065F160
|
||||
#define il2cpp_class_get_static_field_data_ptr 0x0065F170
|
||||
#define il2cpp_class_get_type_ptr 0x0065F180
|
||||
#define il2cpp_class_get_type_token_ptr 0x0065F190
|
||||
#define il2cpp_class_get_userdata_offset_ptr 0x0065F1A0
|
||||
#define il2cpp_class_has_attribute_ptr 0x0065F1B0
|
||||
#define il2cpp_class_has_parent_ptr 0x0065F1C0
|
||||
#define il2cpp_class_has_references_ptr 0x0065F1D0
|
||||
#define il2cpp_class_instance_size_ptr 0x0065F1E0
|
||||
#define il2cpp_class_is_abstract_ptr 0x0065F1F0
|
||||
#define il2cpp_class_is_assignable_from_ptr 0x0065F200
|
||||
#define il2cpp_class_is_blittable_ptr 0x0065F210
|
||||
#define il2cpp_class_is_enum_ptr 0x0065F220
|
||||
#define il2cpp_class_is_generic_ptr 0x0065F230
|
||||
#define il2cpp_class_is_inflated_ptr 0x0065F240
|
||||
#define il2cpp_class_is_interface_ptr 0x0065F250
|
||||
#define il2cpp_class_is_subclass_of_ptr 0x0065F260
|
||||
#define il2cpp_class_is_valuetype_ptr 0x006EA550
|
||||
#define il2cpp_class_num_fields_ptr 0x0065F270
|
||||
#define il2cpp_class_set_userdata_ptr 0x0015A460
|
||||
#define il2cpp_class_value_size_ptr 0x0065F280
|
||||
#define il2cpp_current_thread_get_frame_at_ptr 0x0065F290
|
||||
#define il2cpp_current_thread_get_stack_depth_ptr 0x0065F2A0
|
||||
#define il2cpp_current_thread_get_top_frame_ptr 0x0065F2C0
|
||||
#define il2cpp_current_thread_walk_frame_stack_ptr 0x0065F2D0
|
||||
#define il2cpp_custom_attrs_construct_ptr 0x0065F2E0
|
||||
#define il2cpp_custom_attrs_free_ptr 0x00161B80
|
||||
#define il2cpp_custom_attrs_from_class_ptr 0x0065F2F0
|
||||
#define il2cpp_custom_attrs_from_method_ptr 0x0065F310
|
||||
#define il2cpp_custom_attrs_get_attr_ptr 0x0065F330
|
||||
#define il2cpp_custom_attrs_has_attr_ptr 0x0065F340
|
||||
#define il2cpp_debug_get_method_info_ptr 0x0065F350
|
||||
#define il2cpp_debugger_set_agent_options_ptr 0x00161B80
|
||||
#define il2cpp_domain_assembly_open_ptr 0x0065F360
|
||||
#define il2cpp_domain_get_ptr 0x0065F370
|
||||
#define il2cpp_domain_get_assemblies_ptr 0x0065F380
|
||||
#define il2cpp_enable_object_type_mutex_ptr 0x0065F3B0
|
||||
#define il2cpp_exception_from_name_msg_ptr 0x0065F3C0
|
||||
#define il2cpp_field_get_flags_ptr 0x0065F3D0
|
||||
#define il2cpp_field_get_name_ptr 0x0065F830
|
||||
#define il2cpp_field_get_offset_ptr 0x0065F3E0
|
||||
#define il2cpp_field_get_parent_ptr 0x0065F7F0
|
||||
#define il2cpp_field_get_type_ptr 0x0065FB60
|
||||
#define il2cpp_field_get_value_ptr 0x0065F3F0
|
||||
#define il2cpp_field_get_value_object_ptr 0x0065F400
|
||||
#define il2cpp_field_has_attribute_ptr 0x0065F410
|
||||
#define il2cpp_field_is_literal_ptr 0x0065F420
|
||||
#define il2cpp_field_set_value_ptr 0x0065F430
|
||||
#define il2cpp_field_set_value_object_ptr 0x0065F440
|
||||
#define il2cpp_field_static_get_value_ptr 0x0065F450
|
||||
#define il2cpp_field_static_set_value_ptr 0x0065F460
|
||||
#define il2cpp_format_exception_ptr 0x0065F470
|
||||
#define il2cpp_format_stack_trace_ptr 0x0065F520
|
||||
#define il2cpp_free_ptr 0x0065F5D0
|
||||
#define il2cpp_free_captured_memory_snapshot_ptr 0x0065F5E0
|
||||
#define il2cpp_gc_collect_ptr 0x0067AC20
|
||||
#define il2cpp_gc_collect_a_little_ptr 0x0065F5F0
|
||||
#define il2cpp_gc_disable_ptr 0x0065F600
|
||||
#define il2cpp_gc_dump_append_text_to_log_ptr 0x0065F610
|
||||
#define il2cpp_gc_dump_info_ptr 0x0065F620
|
||||
#define il2cpp_gc_dump_set_large_allocated_block_found_callback_ptr 0x0065F630
|
||||
#define il2cpp_gc_dump_set_small_allocated_block_found_callback_ptr 0x0065F640
|
||||
#define il2cpp_gc_enable_ptr 0x0065F650
|
||||
#define il2cpp_gc_foreach_heap_ptr 0x0065F660
|
||||
#define il2cpp_gc_get_heap_size_ptr 0x0065F690
|
||||
#define il2cpp_gc_get_max_time_slice_ns_ptr 0x0065F6A0
|
||||
#define il2cpp_gc_get_used_size_ptr 0x0065F6B0
|
||||
#define il2cpp_gc_has_strict_wbarriers_ptr 0x006665C0
|
||||
#define il2cpp_gc_is_disabled_ptr 0x0065F6C0
|
||||
#define il2cpp_gc_is_incremental_ptr 0x0065F6D0
|
||||
#define il2cpp_gc_set_enable_get_mem_address_hint_ptr 0x0065F6E0
|
||||
#define il2cpp_gc_set_external_allocation_tracker_ptr 0x00161B80
|
||||
#define il2cpp_gc_set_external_wbarrier_tracker_ptr 0x00161B80
|
||||
#define il2cpp_gc_set_max_time_slice_ns_ptr 0x0065F6F0
|
||||
#define il2cpp_gc_set_object_malloc_callback_ptr 0x0065F700
|
||||
#define il2cpp_gc_set_object_return_freelist_callback_ptr 0x0065F710
|
||||
#define il2cpp_gc_wbarrier_set_field_ptr 0x0065F720
|
||||
#define il2cpp_gchandle_foreach_get_target_ptr 0x0065F730
|
||||
#define il2cpp_gchandle_free_ptr 0x006758B0
|
||||
#define il2cpp_gchandle_get_target_ptr 0x0065F760
|
||||
#define il2cpp_gchandle_new_ptr 0x0065F770
|
||||
#define il2cpp_gchandle_new_weakref_ptr 0x0065F780
|
||||
#define il2cpp_get_committed_memory_size_ptr 0x0065F790
|
||||
#define il2cpp_get_corlib_ptr 0x0065F7A0
|
||||
#define il2cpp_get_exception_argument_null_ptr 0x0065F7B0
|
||||
#define il2cpp_get_hash_table_memory_ptr 0x0065F7C0
|
||||
#define il2cpp_get_meta_data_pool_memory_ptr 0x0065F7D0
|
||||
#define il2cpp_image_get_assembly_ptr 0x0065F7F0
|
||||
#define il2cpp_image_get_class_ptr 0x0065F800
|
||||
#define il2cpp_image_get_class_count_ptr 0x0065F810
|
||||
#define il2cpp_image_get_entry_point_ptr 0x0065F820
|
||||
#define il2cpp_image_get_filename_ptr 0x0065F830
|
||||
#define il2cpp_image_get_name_ptr 0x0065F830
|
||||
#define il2cpp_init_ptr 0x0065F840
|
||||
#define il2cpp_init_security_ptr 0x0065F870
|
||||
#define il2cpp_init_utf16_ptr 0x0065F890
|
||||
#define il2cpp_is_debugger_attached_ptr 0x0067BF10
|
||||
#define il2cpp_is_vm_thread_ptr 0x0065F940
|
||||
#define il2cpp_method_get_class_ptr 0x0065FB70
|
||||
#define il2cpp_method_get_declaring_type_ptr 0x0065FB70
|
||||
#define il2cpp_method_get_flags_ptr 0x0065F950
|
||||
#define il2cpp_method_get_from_reflection_ptr 0x0065F7F0
|
||||
#define il2cpp_method_get_name_ptr 0x0065F7F0
|
||||
#define il2cpp_method_get_object_ptr 0x0065F980
|
||||
#define il2cpp_method_get_param_ptr 0x0065F990
|
||||
#define il2cpp_method_get_param_count_ptr 0x0065F9A0
|
||||
#define il2cpp_method_get_param_name_ptr 0x0065F9B0
|
||||
#define il2cpp_method_get_return_type_ptr 0x0065F9C0
|
||||
#define il2cpp_method_get_token_ptr 0x0065F9D0
|
||||
#define il2cpp_method_has_attribute_ptr 0x0065F9E0
|
||||
#define il2cpp_method_is_generic_ptr 0x0065F9F0
|
||||
#define il2cpp_method_is_inflated_ptr 0x0065FA00
|
||||
#define il2cpp_method_is_instance_ptr 0x0065FA10
|
||||
#define il2cpp_monitor_enter_ptr 0x0065FA20
|
||||
#define il2cpp_monitor_exit_ptr 0x0065FA30
|
||||
#define il2cpp_monitor_pulse_ptr 0x0065FA40
|
||||
#define il2cpp_monitor_pulse_all_ptr 0x0065FA50
|
||||
#define il2cpp_monitor_try_enter_ptr 0x0065FA60
|
||||
#define il2cpp_monitor_try_wait_ptr 0x0065FA70
|
||||
#define il2cpp_monitor_wait_ptr 0x0065FA80
|
||||
#define il2cpp_object_get_class_ptr 0x0065F830
|
||||
#define il2cpp_object_get_size_ptr 0x0065FA90
|
||||
#define il2cpp_object_get_virtual_method_ptr 0x0065FAA0
|
||||
#define il2cpp_object_header_size_ptr 0x00710530
|
||||
#define il2cpp_object_new_ptr 0x0065FAB0
|
||||
#define il2cpp_object_unbox_ptr 0x006EA540
|
||||
#define il2cpp_offset_of_array_bounds_in_array_object_header_ptr 0x00710530
|
||||
#define il2cpp_offset_of_array_length_in_array_object_header_ptr 0x00137CE0
|
||||
#define il2cpp_override_stack_backtrace_ptr 0x0065FAD0
|
||||
#define il2cpp_profiler_install_ptr 0x0065FAE0
|
||||
#define il2cpp_profiler_install_allocation_ptr 0x0065FAF0
|
||||
#define il2cpp_profiler_install_enter_leave_ptr 0x0065FB00
|
||||
#define il2cpp_profiler_install_fileio_ptr 0x0065FB10
|
||||
#define il2cpp_profiler_install_gc_ptr 0x0065FB20
|
||||
#define il2cpp_profiler_install_thread_ptr 0x0065FB30
|
||||
#define il2cpp_profiler_set_events_ptr 0x0065FB40
|
||||
#define il2cpp_property_get_flags_ptr 0x0065FB50
|
||||
#define il2cpp_property_get_get_method_ptr 0x0065F7F0
|
||||
#define il2cpp_property_get_name_ptr 0x0065FB60
|
||||
#define il2cpp_property_get_parent_ptr 0x0065F830
|
||||
#define il2cpp_property_get_set_method_ptr 0x0065FB70
|
||||
#define il2cpp_raise_exception_ptr 0x0065FB80
|
||||
#define il2cpp_register_debugger_agent_transport_ptr 0x00161B80
|
||||
#define il2cpp_register_filedelete_callback_ptr 0x0065FB90
|
||||
#define il2cpp_register_filemodify_callback_ptr 0x0065FBA0
|
||||
#define il2cpp_register_log_callback_ptr 0x0065FBB0
|
||||
#define il2cpp_resolve_icall_ptr 0x0065FBC0
|
||||
#define il2cpp_runtime_class_init_ptr 0x006EA900
|
||||
#define il2cpp_runtime_invoke_ptr 0x0065FBD0
|
||||
#define il2cpp_runtime_invoke_convert_args_ptr 0x0065FBF0
|
||||
#define il2cpp_runtime_object_init_ptr 0x0065FC10
|
||||
#define il2cpp_runtime_object_init_exception_ptr 0x0065FC20
|
||||
#define il2cpp_runtime_unhandled_exception_policy_set_ptr 0x0065FC30
|
||||
#define il2cpp_set_commandline_arguments_ptr 0x0065FC40
|
||||
#define il2cpp_set_commandline_arguments_utf16_ptr 0x0065FC50
|
||||
#define il2cpp_set_config_ptr 0x0065FC60
|
||||
#define il2cpp_set_config_dir_ptr 0x0065FC70
|
||||
#define il2cpp_set_config_utf16_ptr 0x0065FC80
|
||||
#define il2cpp_set_data_dir_ptr 0x0065FC90
|
||||
#define il2cpp_set_default_thread_affinity_ptr 0x0065FCA0
|
||||
#define il2cpp_set_disable_gc_parallel_mark_ptr 0x0065FCB0
|
||||
#define il2cpp_set_find_plugin_callback_ptr 0x0065FCC0
|
||||
#define il2cpp_set_memory_callbacks_ptr 0x0065FCD0
|
||||
#define il2cpp_set_output_redirected_file_path_ptr 0x0065FCE0
|
||||
#define il2cpp_set_parallel_android_affinity_ptr 0x0065FCF0
|
||||
#define il2cpp_set_parallel_android_cupcount_ptr 0x0065FD00
|
||||
#define il2cpp_set_temp_dir_ptr 0x0065FD10
|
||||
#define il2cpp_shutdown_ptr 0x0065FD20
|
||||
#define il2cpp_start_gc_world_ptr 0x0065FD30
|
||||
#define il2cpp_stats_dump_to_file_ptr 0x006665C0
|
||||
#define il2cpp_stats_get_value_ptr 0x006E7420
|
||||
#define il2cpp_stop_gc_world_ptr 0x0065FD40
|
||||
#define il2cpp_string_chars_ptr 0x0065FD50
|
||||
#define il2cpp_string_intern_ptr 0x0065FD60
|
||||
#define il2cpp_string_is_interned_ptr 0x0065FD70
|
||||
#define il2cpp_string_length_ptr 0x0065FD80
|
||||
#define il2cpp_string_new_ptr 0x006EA910
|
||||
#define il2cpp_string_new_len_ptr 0x0065FD90
|
||||
#define il2cpp_string_new_utf16_ptr 0x0065FDA0
|
||||
#define il2cpp_string_new_wrapper_ptr 0x006EA910
|
||||
#define il2cpp_thread_attach_ptr 0x0065FDB0
|
||||
#define il2cpp_thread_current_ptr 0x00676210
|
||||
#define il2cpp_thread_detach_ptr 0x0065FDC0
|
||||
#define il2cpp_thread_get_all_attached_threads_ptr 0x0065FDD0
|
||||
#define il2cpp_thread_get_frame_at_ptr 0x0065FDE0
|
||||
#define il2cpp_thread_get_stack_depth_ptr 0x0065FDF0
|
||||
#define il2cpp_thread_get_top_frame_ptr 0x0065FE00
|
||||
#define il2cpp_thread_walk_frame_stack_ptr 0x0065FE10
|
||||
#define il2cpp_type_equals_ptr 0x0065FE20
|
||||
#define il2cpp_type_get_assembly_qualified_name_ptr 0x0065FE30
|
||||
#define il2cpp_type_get_attrs_ptr 0x0065FEF0
|
||||
#define il2cpp_type_get_class_or_element_class_ptr 0x0065FF00
|
||||
#define il2cpp_type_get_name_ptr 0x0065FF10
|
||||
#define il2cpp_type_get_name_chunked_ptr 0x0065FFD0
|
||||
#define il2cpp_type_get_object_ptr 0x0065FFE0
|
||||
#define il2cpp_type_get_type_ptr 0x0065FFF0
|
||||
#define il2cpp_type_is_byref_ptr 0x00660000
|
||||
#define il2cpp_type_is_pointer_type_ptr 0x00660010
|
||||
#define il2cpp_type_is_static_ptr 0x00660020
|
||||
#define il2cpp_unhandled_exception_ptr 0x00660030
|
||||
#define il2cpp_unity_install_unitytls_interface_ptr 0x00660040
|
||||
#define il2cpp_unity_liveness_calculation_begin_ptr 0x00660050
|
||||
#define il2cpp_unity_liveness_calculation_end_ptr 0x00660060
|
||||
#define il2cpp_unity_liveness_calculation_from_root_ptr 0x00660070
|
||||
#define il2cpp_unity_liveness_calculation_from_statics_ptr 0x00660080
|
||||
#define il2cpp_value_box_ptr 0x00660090
|
||||
|
@ -2,601 +2,302 @@
|
||||
// Target Unity version: 2019.4.21 - 2019.4.24
|
||||
|
||||
#ifndef DO_API_NO_RETURN
|
||||
|
||||
#define DO_API_NO_RETURN(r, n, p) DO_API(r,n,p)
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
DO_API(int, il2cpp_init, (const char* domain_name));
|
||||
|
||||
DO_API(int, il2cpp_init_utf16, (const Il2CppChar * domain_name));
|
||||
|
||||
DO_API(void, il2cpp_shutdown, ());
|
||||
|
||||
DO_API(void, il2cpp_set_config_dir, (const char *config_path));
|
||||
|
||||
DO_API(void, il2cpp_set_data_dir, (const char *data_path));
|
||||
|
||||
DO_API(void, il2cpp_set_temp_dir, (const char *temp_path));
|
||||
|
||||
DO_API(void, il2cpp_set_commandline_arguments, (int argc, const char* const argv[], const char* basedir));
|
||||
|
||||
DO_API(void, il2cpp_set_commandline_arguments_utf16, (int argc, const Il2CppChar * const argv[], const char* basedir));
|
||||
|
||||
DO_API(void, il2cpp_set_config_utf16, (const Il2CppChar * executablePath));
|
||||
|
||||
DO_API(void, il2cpp_set_config, (const char* executablePath));
|
||||
|
||||
|
||||
|
||||
DO_API(void, il2cpp_set_memory_callbacks, (Il2CppMemoryCallbacks * callbacks));
|
||||
|
||||
DO_API(const Il2CppImage*, il2cpp_get_corlib, ());
|
||||
|
||||
DO_API(void, il2cpp_add_internal_call, (const char* name, Il2CppMethodPointer method));
|
||||
|
||||
DO_API(Il2CppMethodPointer, il2cpp_resolve_icall, (const char* name));
|
||||
|
||||
|
||||
|
||||
DO_API(void*, il2cpp_alloc, (size_t size));
|
||||
|
||||
DO_API(void, il2cpp_free, (void* ptr));
|
||||
|
||||
|
||||
|
||||
// array
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_array_class_get, (Il2CppClass * element_class, uint32_t rank));
|
||||
|
||||
DO_API(uint32_t, il2cpp_array_length, (Il2CppArray * array));
|
||||
|
||||
DO_API(uint32_t, il2cpp_array_get_byte_length, (Il2CppArray * array));
|
||||
|
||||
DO_API(Il2CppArray*, il2cpp_array_new, (Il2CppClass * elementTypeInfo, il2cpp_array_size_t length));
|
||||
|
||||
DO_API(Il2CppArray*, il2cpp_array_new_specific, (Il2CppClass * arrayTypeInfo, il2cpp_array_size_t length));
|
||||
|
||||
DO_API(Il2CppArray*, il2cpp_array_new_full, (Il2CppClass * array_class, il2cpp_array_size_t * lengths, il2cpp_array_size_t * lower_bounds));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_bounded_array_class_get, (Il2CppClass * element_class, uint32_t rank, bool bounded));
|
||||
|
||||
DO_API(int, il2cpp_array_element_size, (const Il2CppClass * array_class));
|
||||
|
||||
|
||||
|
||||
// assembly
|
||||
|
||||
DO_API(const Il2CppImage*, il2cpp_assembly_get_image, (const Il2CppAssembly * assembly));
|
||||
|
||||
|
||||
|
||||
// class
|
||||
|
||||
DO_API(void, il2cpp_class_for_each, (void(*klassReportFunc)(Il2CppClass* klass, void* userData), void* userData));
|
||||
|
||||
DO_API(const Il2CppType*, il2cpp_class_enum_basetype, (Il2CppClass * klass));
|
||||
|
||||
DO_API(bool, il2cpp_class_is_generic, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(bool, il2cpp_class_is_inflated, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(bool, il2cpp_class_is_assignable_from, (Il2CppClass * klass, Il2CppClass * oklass));
|
||||
|
||||
DO_API(bool, il2cpp_class_is_subclass_of, (Il2CppClass * klass, Il2CppClass * klassc, bool check_interfaces));
|
||||
|
||||
DO_API(bool, il2cpp_class_has_parent, (Il2CppClass * klass, Il2CppClass * klassc));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_class_from_il2cpp_type, (const Il2CppType * type));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_class_from_name, (const Il2CppImage * image, const char* namespaze, const char *name));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_class_from_system_type, (Il2CppReflectionType * type));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_class_get_element_class, (Il2CppClass * klass));
|
||||
|
||||
DO_API(const EventInfo*, il2cpp_class_get_events, (Il2CppClass * klass, void* *iter));
|
||||
|
||||
DO_API(FieldInfo*, il2cpp_class_get_fields, (Il2CppClass * klass, void* *iter));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_class_get_nested_types, (Il2CppClass * klass, void* *iter));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_class_get_interfaces, (Il2CppClass * klass, void* *iter));
|
||||
|
||||
DO_API(const PropertyInfo*, il2cpp_class_get_properties, (Il2CppClass * klass, void* *iter));
|
||||
|
||||
DO_API(const PropertyInfo*, il2cpp_class_get_property_from_name, (Il2CppClass * klass, const char *name));
|
||||
|
||||
DO_API(FieldInfo*, il2cpp_class_get_field_from_name, (Il2CppClass * klass, const char *name));
|
||||
|
||||
DO_API(const MethodInfo*, il2cpp_class_get_methods, (Il2CppClass * klass, void* *iter));
|
||||
|
||||
DO_API(const MethodInfo*, il2cpp_class_get_method_from_name, (Il2CppClass * klass, const char* name, int argsCount));
|
||||
|
||||
DO_API(const char*, il2cpp_class_get_name, (Il2CppClass * klass));
|
||||
|
||||
DO_API(void, il2cpp_type_get_name_chunked, (const Il2CppType * type, void(*chunkReportFunc)(void* data, void* userData), void* userData));
|
||||
|
||||
DO_API(const char*, il2cpp_class_get_namespace, (Il2CppClass * klass));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_class_get_parent, (Il2CppClass * klass));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_class_get_declaring_type, (Il2CppClass * klass));
|
||||
|
||||
DO_API(int32_t, il2cpp_class_instance_size, (Il2CppClass * klass));
|
||||
|
||||
DO_API(size_t, il2cpp_class_num_fields, (const Il2CppClass * enumKlass));
|
||||
|
||||
DO_API(bool, il2cpp_class_is_valuetype, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(int32_t, il2cpp_class_value_size, (Il2CppClass * klass, uint32_t * align));
|
||||
|
||||
DO_API(bool, il2cpp_class_is_blittable, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(int, il2cpp_class_get_flags, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(bool, il2cpp_class_is_abstract, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(bool, il2cpp_class_is_interface, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(int, il2cpp_class_array_element_size, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_class_from_type, (const Il2CppType * type));
|
||||
|
||||
DO_API(const Il2CppType*, il2cpp_class_get_type, (Il2CppClass * klass));
|
||||
|
||||
DO_API(uint32_t, il2cpp_class_get_type_token, (Il2CppClass * klass));
|
||||
|
||||
DO_API(bool, il2cpp_class_has_attribute, (Il2CppClass * klass, Il2CppClass * attr_class));
|
||||
|
||||
DO_API(bool, il2cpp_class_has_references, (Il2CppClass * klass));
|
||||
|
||||
DO_API(bool, il2cpp_class_is_enum, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(const Il2CppImage*, il2cpp_class_get_image, (Il2CppClass * klass));
|
||||
|
||||
DO_API(const char*, il2cpp_class_get_assemblyname, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(int, il2cpp_class_get_rank, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(uint32_t, il2cpp_class_get_data_size, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(void*, il2cpp_class_get_static_field_data, (const Il2CppClass * klass));
|
||||
|
||||
|
||||
|
||||
// testing only
|
||||
|
||||
DO_API(size_t, il2cpp_class_get_bitmap_size, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(void, il2cpp_class_get_bitmap, (Il2CppClass * klass, size_t * bitmap));
|
||||
|
||||
|
||||
|
||||
// stats
|
||||
|
||||
DO_API(bool, il2cpp_stats_dump_to_file, (const char *path));
|
||||
|
||||
DO_API(uint64_t, il2cpp_stats_get_value, (Il2CppStat stat));
|
||||
|
||||
|
||||
|
||||
// domain
|
||||
|
||||
DO_API(Il2CppDomain*, il2cpp_domain_get, ());
|
||||
|
||||
DO_API(const Il2CppAssembly*, il2cpp_domain_assembly_open, (Il2CppDomain * domain, const char* name));
|
||||
|
||||
DO_API(const Il2CppAssembly**, il2cpp_domain_get_assemblies, (const Il2CppDomain * domain, size_t * size));
|
||||
|
||||
|
||||
|
||||
// exception
|
||||
|
||||
DO_API_NO_RETURN(void, il2cpp_raise_exception, (Il2CppException*));
|
||||
|
||||
DO_API(Il2CppException*, il2cpp_exception_from_name_msg, (const Il2CppImage * image, const char *name_space, const char *name, const char *msg));
|
||||
|
||||
DO_API(Il2CppException*, il2cpp_get_exception_argument_null, (const char *arg));
|
||||
|
||||
DO_API(void, il2cpp_format_exception, (const Il2CppException * ex, char* message, int message_size));
|
||||
|
||||
DO_API(void, il2cpp_format_stack_trace, (const Il2CppException * ex, char* output, int output_size));
|
||||
|
||||
DO_API(void, il2cpp_unhandled_exception, (Il2CppException*));
|
||||
|
||||
|
||||
|
||||
// field
|
||||
|
||||
DO_API(int, il2cpp_field_get_flags, (FieldInfo * field));
|
||||
|
||||
DO_API(const char*, il2cpp_field_get_name, (FieldInfo * field));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_field_get_parent, (FieldInfo * field));
|
||||
|
||||
DO_API(size_t, il2cpp_field_get_offset, (FieldInfo * field));
|
||||
|
||||
DO_API(const Il2CppType*, il2cpp_field_get_type, (FieldInfo * field));
|
||||
|
||||
DO_API(void, il2cpp_field_get_value, (Il2CppObject * obj, FieldInfo * field, void *value));
|
||||
|
||||
DO_API(Il2CppObject*, il2cpp_field_get_value_object, (FieldInfo * field, Il2CppObject * obj));
|
||||
|
||||
DO_API(bool, il2cpp_field_has_attribute, (FieldInfo * field, Il2CppClass * attr_class));
|
||||
|
||||
DO_API(void, il2cpp_field_set_value, (Il2CppObject * obj, FieldInfo * field, void *value));
|
||||
|
||||
DO_API(void, il2cpp_field_static_get_value, (FieldInfo * field, void *value));
|
||||
|
||||
DO_API(void, il2cpp_field_static_set_value, (FieldInfo * field, void *value));
|
||||
|
||||
DO_API(void, il2cpp_field_set_value_object, (Il2CppObject * instance, FieldInfo * field, Il2CppObject * value));
|
||||
|
||||
DO_API(bool, il2cpp_field_is_literal, (FieldInfo * field));
|
||||
|
||||
// gc
|
||||
|
||||
DO_API(void, il2cpp_gc_collect, (int maxGenerations));
|
||||
|
||||
DO_API(int32_t, il2cpp_gc_collect_a_little, ());
|
||||
|
||||
DO_API(void, il2cpp_gc_disable, ());
|
||||
|
||||
DO_API(void, il2cpp_gc_enable, ());
|
||||
|
||||
DO_API(bool, il2cpp_gc_is_disabled, ());
|
||||
|
||||
DO_API(int64_t, il2cpp_gc_get_max_time_slice_ns, ());
|
||||
|
||||
DO_API(void, il2cpp_gc_set_max_time_slice_ns, (int64_t maxTimeSlice));
|
||||
|
||||
DO_API(bool, il2cpp_gc_is_incremental, ());
|
||||
|
||||
DO_API(int64_t, il2cpp_gc_get_used_size, ());
|
||||
|
||||
DO_API(int64_t, il2cpp_gc_get_heap_size, ());
|
||||
|
||||
DO_API(void, il2cpp_gc_wbarrier_set_field, (Il2CppObject * obj, void **targetAddress, void *object));
|
||||
|
||||
DO_API(bool, il2cpp_gc_has_strict_wbarriers, ());
|
||||
|
||||
DO_API(void, il2cpp_gc_set_external_allocation_tracker, (void(*func)(void*, size_t, int)));
|
||||
|
||||
DO_API(void, il2cpp_gc_set_external_wbarrier_tracker, (void(*func)(void**)));
|
||||
|
||||
DO_API(void, il2cpp_gc_foreach_heap, (void(*func)(void* data, void* userData), void* userData));
|
||||
|
||||
DO_API(void, il2cpp_stop_gc_world, ());
|
||||
|
||||
DO_API(void, il2cpp_start_gc_world, ());
|
||||
|
||||
// gchandle
|
||||
|
||||
DO_API(uint32_t, il2cpp_gchandle_new, (Il2CppObject * obj, bool pinned));
|
||||
|
||||
DO_API(uint32_t, il2cpp_gchandle_new_weakref, (Il2CppObject * obj, bool track_resurrection));
|
||||
|
||||
DO_API(Il2CppObject*, il2cpp_gchandle_get_target , (uint32_t gchandle));
|
||||
|
||||
DO_API(void, il2cpp_gchandle_free, (uint32_t gchandle));
|
||||
|
||||
DO_API(void , il2cpp_gchandle_foreach_get_target, (void(*func)(void* data, void* userData), void* userData));
|
||||
|
||||
|
||||
|
||||
// vm runtime info
|
||||
|
||||
DO_API(uint32_t, il2cpp_object_header_size, ());
|
||||
|
||||
DO_API(uint32_t, il2cpp_array_object_header_size, ());
|
||||
|
||||
DO_API(uint32_t, il2cpp_offset_of_array_length_in_array_object_header, ());
|
||||
|
||||
DO_API(uint32_t, il2cpp_offset_of_array_bounds_in_array_object_header, ());
|
||||
|
||||
DO_API(uint32_t, il2cpp_allocation_granularity, ());
|
||||
|
||||
|
||||
|
||||
// liveness
|
||||
|
||||
DO_API(void*, il2cpp_unity_liveness_calculation_begin, (Il2CppClass * filter, int max_object_count, il2cpp_register_object_callback callback, void* userdata, il2cpp_WorldChangedCallback onWorldStarted, il2cpp_WorldChangedCallback onWorldStopped));
|
||||
|
||||
DO_API(void, il2cpp_unity_liveness_calculation_end, (void* state));
|
||||
|
||||
DO_API(void, il2cpp_unity_liveness_calculation_from_root, (Il2CppObject * root, void* state));
|
||||
|
||||
DO_API(void, il2cpp_unity_liveness_calculation_from_statics, (void* state));
|
||||
|
||||
|
||||
|
||||
// method
|
||||
|
||||
DO_API(const Il2CppType*, il2cpp_method_get_return_type, (const MethodInfo * method));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_method_get_declaring_type, (const MethodInfo * method));
|
||||
|
||||
DO_API(const char*, il2cpp_method_get_name, (const MethodInfo * method));
|
||||
|
||||
DO_API(const MethodInfo*, il2cpp_method_get_from_reflection, (const Il2CppReflectionMethod * method));
|
||||
|
||||
DO_API(Il2CppReflectionMethod*, il2cpp_method_get_object, (const MethodInfo * method, Il2CppClass * refclass));
|
||||
|
||||
DO_API(bool, il2cpp_method_is_generic, (const MethodInfo * method));
|
||||
|
||||
DO_API(bool, il2cpp_method_is_inflated, (const MethodInfo * method));
|
||||
|
||||
DO_API(bool, il2cpp_method_is_instance, (const MethodInfo * method));
|
||||
|
||||
DO_API(uint32_t, il2cpp_method_get_param_count, (const MethodInfo * method));
|
||||
|
||||
DO_API(const Il2CppType*, il2cpp_method_get_param, (const MethodInfo * method, uint32_t index));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_method_get_class, (const MethodInfo * method));
|
||||
|
||||
DO_API(bool, il2cpp_method_has_attribute, (const MethodInfo * method, Il2CppClass * attr_class));
|
||||
|
||||
DO_API(uint32_t, il2cpp_method_get_flags, (const MethodInfo * method, uint32_t * iflags));
|
||||
|
||||
DO_API(uint32_t, il2cpp_method_get_token, (const MethodInfo * method));
|
||||
|
||||
DO_API(const char*, il2cpp_method_get_param_name, (const MethodInfo * method, uint32_t index));
|
||||
|
||||
|
||||
|
||||
// profiler
|
||||
|
||||
#if IL2CPP_ENABLE_PROFILER
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
// property
|
||||
|
||||
DO_API(uint32_t, il2cpp_property_get_flags, (PropertyInfo * prop));
|
||||
|
||||
DO_API(const MethodInfo*, il2cpp_property_get_get_method, (PropertyInfo * prop));
|
||||
|
||||
DO_API(const MethodInfo*, il2cpp_property_get_set_method, (PropertyInfo * prop));
|
||||
|
||||
DO_API(const char*, il2cpp_property_get_name, (PropertyInfo * prop));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_property_get_parent, (PropertyInfo * prop));
|
||||
|
||||
|
||||
|
||||
// object
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_object_get_class, (Il2CppObject * obj));
|
||||
|
||||
DO_API(uint32_t, il2cpp_object_get_size, (Il2CppObject * obj));
|
||||
|
||||
DO_API(const MethodInfo*, il2cpp_object_get_virtual_method, (Il2CppObject * obj, const MethodInfo * method));
|
||||
|
||||
DO_API(Il2CppObject*, il2cpp_object_new, (const Il2CppClass * klass));
|
||||
|
||||
DO_API(void*, il2cpp_object_unbox, (Il2CppObject * obj));
|
||||
|
||||
|
||||
|
||||
DO_API(Il2CppObject*, il2cpp_value_box, (Il2CppClass * klass, void* data));
|
||||
|
||||
|
||||
|
||||
// monitor
|
||||
|
||||
DO_API(void, il2cpp_monitor_enter, (Il2CppObject * obj));
|
||||
|
||||
DO_API(bool, il2cpp_monitor_try_enter, (Il2CppObject * obj, uint32_t timeout));
|
||||
|
||||
DO_API(void, il2cpp_monitor_exit, (Il2CppObject * obj));
|
||||
|
||||
DO_API(void, il2cpp_monitor_pulse, (Il2CppObject * obj));
|
||||
|
||||
DO_API(void, il2cpp_monitor_pulse_all, (Il2CppObject * obj));
|
||||
|
||||
DO_API(void, il2cpp_monitor_wait, (Il2CppObject * obj));
|
||||
|
||||
DO_API(bool, il2cpp_monitor_try_wait, (Il2CppObject * obj, uint32_t timeout));
|
||||
|
||||
|
||||
|
||||
// runtime
|
||||
|
||||
DO_API(Il2CppObject*, il2cpp_runtime_invoke, (const MethodInfo * method, void *obj, void **params, Il2CppException **exc));
|
||||
|
||||
DO_API(Il2CppObject*, il2cpp_runtime_invoke_convert_args, (const MethodInfo * method, void *obj, Il2CppObject **params, int paramCount, Il2CppException **exc));
|
||||
|
||||
DO_API(void, il2cpp_runtime_class_init, (Il2CppClass * klass));
|
||||
|
||||
DO_API(void, il2cpp_runtime_object_init, (Il2CppObject * obj));
|
||||
|
||||
|
||||
|
||||
DO_API(void, il2cpp_runtime_object_init_exception, (Il2CppObject * obj, Il2CppException** exc));
|
||||
|
||||
|
||||
|
||||
DO_API(void, il2cpp_runtime_unhandled_exception_policy_set, (Il2CppRuntimeUnhandledExceptionPolicy value));
|
||||
|
||||
|
||||
|
||||
// string
|
||||
|
||||
DO_API(int32_t, il2cpp_string_length, (Il2CppString * str));
|
||||
|
||||
DO_API(Il2CppChar*, il2cpp_string_chars, (Il2CppString * str));
|
||||
|
||||
DO_API(Il2CppString*, il2cpp_string_new, (const char* str));
|
||||
|
||||
DO_API(Il2CppString*, il2cpp_string_new_len, (const char* str, uint32_t length));
|
||||
|
||||
DO_API(Il2CppString*, il2cpp_string_new_utf16, (const Il2CppChar * text, int32_t len));
|
||||
|
||||
DO_API(Il2CppString*, il2cpp_string_new_wrapper, (const char* str));
|
||||
|
||||
DO_API(Il2CppString*, il2cpp_string_intern, (Il2CppString * str));
|
||||
|
||||
DO_API(Il2CppString*, il2cpp_string_is_interned, (Il2CppString * str));
|
||||
|
||||
|
||||
|
||||
// thread
|
||||
|
||||
DO_API(Il2CppThread*, il2cpp_thread_current, ());
|
||||
|
||||
DO_API(Il2CppThread*, il2cpp_thread_attach, (Il2CppDomain * domain));
|
||||
|
||||
DO_API(void, il2cpp_thread_detach, (Il2CppThread * thread));
|
||||
|
||||
|
||||
|
||||
DO_API(Il2CppThread**, il2cpp_thread_get_all_attached_threads, (size_t * size));
|
||||
|
||||
DO_API(bool, il2cpp_is_vm_thread, (Il2CppThread * thread));
|
||||
|
||||
|
||||
|
||||
// stacktrace
|
||||
|
||||
DO_API(void, il2cpp_current_thread_walk_frame_stack, (Il2CppFrameWalkFunc func, void* user_data));
|
||||
|
||||
DO_API(void, il2cpp_thread_walk_frame_stack, (Il2CppThread * thread, Il2CppFrameWalkFunc func, void* user_data));
|
||||
|
||||
DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo * frame));
|
||||
|
||||
DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo * frame));
|
||||
|
||||
DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo * frame));
|
||||
|
||||
DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo * frame));
|
||||
|
||||
DO_API(int32_t, il2cpp_current_thread_get_stack_depth, ());
|
||||
|
||||
DO_API(int32_t, il2cpp_thread_get_stack_depth, (Il2CppThread * thread));
|
||||
|
||||
DO_API(void, il2cpp_override_stack_backtrace, (Il2CppBacktraceFunc stackBacktraceFunc));
|
||||
|
||||
|
||||
|
||||
// type
|
||||
|
||||
DO_API(Il2CppObject*, il2cpp_type_get_object, (const Il2CppType * type));
|
||||
|
||||
DO_API(int, il2cpp_type_get_type, (const Il2CppType * type));
|
||||
|
||||
DO_API(Il2CppClass*, il2cpp_type_get_class_or_element_class, (const Il2CppType * type));
|
||||
|
||||
DO_API(char*, il2cpp_type_get_name, (const Il2CppType * type));
|
||||
|
||||
DO_API(bool, il2cpp_type_is_byref, (const Il2CppType * type));
|
||||
|
||||
DO_API(uint32_t, il2cpp_type_get_attrs, (const Il2CppType * type));
|
||||
|
||||
DO_API(bool, il2cpp_type_equals, (const Il2CppType * type, const Il2CppType * otherType));
|
||||
|
||||
DO_API(char*, il2cpp_type_get_assembly_qualified_name, (const Il2CppType * type));
|
||||
|
||||
DO_API(bool, il2cpp_type_is_static, (const Il2CppType * type));
|
||||
|
||||
DO_API(bool, il2cpp_type_is_pointer_type, (const Il2CppType * type));
|
||||
|
||||
|
||||
|
||||
// image
|
||||
|
||||
DO_API(const Il2CppAssembly*, il2cpp_image_get_assembly, (const Il2CppImage * image));
|
||||
|
||||
DO_API(const char*, il2cpp_image_get_name, (const Il2CppImage * image));
|
||||
|
||||
DO_API(const char*, il2cpp_image_get_filename, (const Il2CppImage * image));
|
||||
|
||||
DO_API(const MethodInfo*, il2cpp_image_get_entry_point, (const Il2CppImage * image));
|
||||
|
||||
|
||||
|
||||
DO_API(size_t, il2cpp_image_get_class_count, (const Il2CppImage * image));
|
||||
|
||||
DO_API(const Il2CppClass*, il2cpp_image_get_class, (const Il2CppImage * image, size_t index));
|
||||
|
||||
|
||||
|
||||
// Memory information
|
||||
|
||||
DO_API(Il2CppManagedMemorySnapshot*, il2cpp_capture_memory_snapshot, ());
|
||||
|
||||
DO_API(void, il2cpp_free_captured_memory_snapshot, (Il2CppManagedMemorySnapshot * snapshot));
|
||||
|
||||
|
||||
|
||||
DO_API(void, il2cpp_set_find_plugin_callback, (Il2CppSetFindPlugInCallback method));
|
||||
|
||||
|
||||
|
||||
// Logging
|
||||
|
||||
DO_API(void, il2cpp_register_log_callback, (Il2CppLogCallback method));
|
||||
|
||||
|
||||
|
||||
// Debugger
|
||||
|
||||
DO_API(void, il2cpp_debugger_set_agent_options, (const char* options));
|
||||
|
||||
DO_API(bool, il2cpp_is_debugger_attached, ());
|
||||
|
||||
DO_API(void, il2cpp_register_debugger_agent_transport, (Il2CppDebuggerTransport * debuggerTransport));
|
||||
|
||||
|
||||
|
||||
// Debug metadata
|
||||
|
||||
DO_API(bool, il2cpp_debug_get_method_info, (const MethodInfo*, Il2CppMethodDebugInfo * methodDebugInfo));
|
||||
|
||||
|
||||
|
||||
// TLS module
|
||||
|
||||
DO_API(void, il2cpp_unity_install_unitytls_interface, (const void* unitytlsInterfaceStruct));
|
||||
|
||||
|
||||
|
||||
// custom attributes
|
||||
|
||||
DO_API(Il2CppCustomAttrInfo*, il2cpp_custom_attrs_from_class, (Il2CppClass * klass));
|
||||
|
||||
DO_API(Il2CppCustomAttrInfo*, il2cpp_custom_attrs_from_method, (const MethodInfo * method));
|
||||
|
||||
|
||||
|
||||
DO_API(Il2CppObject*, il2cpp_custom_attrs_get_attr, (Il2CppCustomAttrInfo * ainfo, Il2CppClass * attr_klass));
|
||||
|
||||
DO_API(bool, il2cpp_custom_attrs_has_attr, (Il2CppCustomAttrInfo * ainfo, Il2CppClass * attr_klass));
|
||||
|
||||
DO_API(Il2CppArray*, il2cpp_custom_attrs_construct, (Il2CppCustomAttrInfo * cinfo));
|
||||
|
||||
|
||||
|
||||
DO_API(void, il2cpp_custom_attrs_free, (Il2CppCustomAttrInfo * ainfo));
|
||||
|
||||
|
||||
|
||||
// Il2CppClass user data for GetComponent optimization
|
||||
|
||||
DO_API(void, il2cpp_class_set_userdata, (Il2CppClass * klass, void* userdata));
|
||||
|
||||
DO_API(int, il2cpp_class_get_userdata_offset, ());
|
||||
|
||||
|
||||
|
||||
DO_API(void, il2cpp_set_default_thread_affinity, (int64_t affinity_mask));
|
||||
|
||||
|
||||
|
@ -8,366 +8,356 @@ using namespace app;
|
||||
|
||||
|
||||
// Map hooks
|
||||
DO_APP_FUNC(0x02E9F9E0, void, MoleMole_InLevelMapPageContext_OnMarkClicked, (InLevelMapPageContext* __this, MonoMapMark* mark, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02E85EC0, void, MoleMole_InLevelMapPageContext_OnMapClicked, (InLevelMapPageContext* __this, Vector2 screenPos, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00F0DCE0, bool, MoleMole_MapModule_IsAreaUnlock, (MoleMole_MapModule* __this, uint32_t sceneID, uint32_t areaID, MethodInfo* method));
|
||||
DO_APP_FUNC(0x034CC320, void, MoleMole_InLevelMapPageContext_OnMarkClicked, (InLevelMapPageContext* __this, MonoMapMark* mark, MethodInfo* method));
|
||||
DO_APP_FUNC(0x034DE970, void, MoleMole_InLevelMapPageContext_OnMapClicked, (InLevelMapPageContext* __this, Vector2 screenPos, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00B6AEA0, bool, MoleMole_MapModule_IsAreaUnlock, (MoleMole_MapModule* __this, uint32_t sceneID, uint32_t areaID, MethodInfo* method));
|
||||
|
||||
// changed to:
|
||||
// DO_APP_FUNC(0x01B0A910, uint16_t, MoleMole_SimpleSafeUInt16_DBDMOONJALD_1, (MoleMole_SimpleSafeUInt16 v, MethodInfo * method));
|
||||
// DBDMOONJALD => op_Implicit
|
||||
DO_APP_FUNC(0x01B0A910, uint16_t, MoleMole_SimpleSafeUInt16_get_Value, (SimpleSafeUInt16 v, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0400F280, uint32_t, MoleMole_SimpleSafeUInt32_get_Value, (SimpleSafeUInt32 v, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05DF4590, String*, Marshal_PtrToStringAnsi, (void* ptr, MethodInfo* method));
|
||||
|
||||
// should be 'op_Implicit' not 'get_value'
|
||||
DO_APP_FUNC(0x02356530, uint16_t, MoleMole_SimpleSafeUInt16_get_Value, (SimpleSafeUInt16 v, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02B0B560, uint32_t, MoleMole_SimpleSafeUInt32_get_Value, (SimpleSafeUInt32 v, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0501E650, String*, Marshal_PtrToStringAnsi, (void* ptr, MethodInfo* method));
|
||||
|
||||
|
||||
// Map utility
|
||||
DO_APP_FUNC(0x00E866B0, Rect, MonoInLevelMapPage_get_mapRect, (MonoInLevelMapPage* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00E86680, Transform*, MonoInLevelMapPage_get_mapBackground, (MonoInLevelMapPage* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01690060, Rect, MonoInLevelMapPage_get_mapRect, (MonoInLevelMapPage* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01690030, Transform*, MonoInLevelMapPage_get_mapBackground, (MonoInLevelMapPage* __this, MethodInfo* method));
|
||||
|
||||
|
||||
// Teleport hooks
|
||||
DO_APP_FUNC(0x028AD260, void, GameManager_Update, (GameManager* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01F54110, void, MoleMole_LoadingManager_SceneGoto, (MoleMole_LoadingManager* __this, PlayerEnterSceneNotify* notify, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01F55300, void, MoleMole_LoadingManager_PerformPlayerTransmit, (MoleMole_LoadingManager* __this, Vector3 targetPos, EnterType__Enum enterType, uint32_t token, EvtTransmitAvatar_EvtTransmitAvatar_TransmitType__Enum transType, uint32_t enterReason, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01F563C0, void, MoleMole_LoadingManager_RequestSceneTransToPoint, (MoleMole_LoadingManager* __this, uint32_t sceneId, uint32_t pointId, void* finishCallBackInForceDrag, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01F57E60, bool, MoleMole_LoadingManager_NeedTransByServer, (MoleMole_LoadingManager* __this, uint32_t sceneId, Vector3 position, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0104A6D0, Vector3, MoleMole_LocalEntityInfoData_get_initPos, (LocalEntityInfoData* __this, MethodInfo* method)); // shared offset
|
||||
DO_APP_FUNC(0x0164D930, void, GameManager_Update, (GameManager* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00ABA150, void, MoleMole_LoadingManager_SceneGoto, (MoleMole_LoadingManager* __this, PlayerEnterSceneNotify* notify, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00AB9730, void, MoleMole_LoadingManager_PerformPlayerTransmit, (MoleMole_LoadingManager* __this, Vector3 targetPos, EnterType__Enum enterType, uint32_t token, EvtTransmitAvatar_EvtTransmitAvatar_TransmitType__Enum transType, uint32_t enterReason, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00AB5910, void, MoleMole_LoadingManager_RequestSceneTransToPoint, (MoleMole_LoadingManager* __this, uint32_t sceneId, uint32_t pointId, void* finishCallBackInForceDrag, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00ABC980, bool, MoleMole_LoadingManager_NeedTransByServer, (MoleMole_LoadingManager* __this, uint32_t sceneId, Vector3 position, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02BBC4E0, Vector3, MoleMole_LocalEntityInfoData_get_initPos, (LocalEntityInfoData* __this, MethodInfo* method)); // shared offset
|
||||
|
||||
|
||||
// Unlimited stamina
|
||||
DO_APP_FUNC(0x01F17820, void, MoleMole_LevelSyncCombatPlugin_RequestSceneEntityMoveReq, (LevelSyncCombatPlugin* __this, uint32_t entityId, MotionInfo* syncInfo, bool isReliable, uint32_t HAOCOEMOMBG, MethodInfo* method));
|
||||
DO_APP_FUNC(0x016189E0, void, MoleMole_DataItem_HandleNormalProp, (DataItem* __this, uint32_t type, int64_t value, DataPropOp__Enum state, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01A89B80, void, MoleMole_LevelSyncCombatPlugin_RequestSceneEntityMoveReq, (LevelSyncCombatPlugin* __this, uint32_t entityId, MotionInfo* syncInfo, bool isReliable, uint32_t HAOCOEMOMBG, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03907A10, void, MoleMole_DataItem_HandleNormalProp, (DataItem* __this, uint32_t type, int64_t value, DataPropOp__Enum state, MethodInfo* method));
|
||||
|
||||
|
||||
// God mode
|
||||
DO_APP_FUNC(0x027DB100, void, VCHumanoidMove_NotifyLandVelocity, (VCHumanoidMove* __this, Vector3 velocity, float reachMaxDownVelocityTime, MethodInfo* method));
|
||||
DO_APP_FUNC(0x036889B0, bool, Miscs_CheckTargetAttackable, (BaseEntity* attackerEntity, BaseEntity* targetEntity, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00D0CA90, void, MoleMole_LCBaseCombat_FireBeingHitEvent, (LCBaseCombat* __this, uint32_t attackeeRuntimeID, AttackResult* attackResult, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02383880, bool, MoleMole_ActorAbilityPlugin_HanlderModifierThinkTimerUp, (ActorAbilityPlugin* __this, float delay, Object* arg, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02A6BF10, void, VCHumanoidMove_NotifyLandVelocity, (VCHumanoidMove* __this, Vector3 velocity, float reachMaxDownVelocityTime, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0279BE90, bool, Miscs_CheckTargetAttackable, (BaseEntity* attackerEntity, BaseEntity* targetEntity, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02C3D800, void, MoleMole_LCBaseCombat_FireBeingHitEvent, (LCBaseCombat* __this, uint32_t attackeeRuntimeID, AttackResult* attackResult, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02DCBA70, bool, MoleMole_ActorAbilityPlugin_HanlderModifierThinkTimerUp, (ActorAbilityPlugin* __this, float delay, Object* arg, MethodInfo* method));
|
||||
|
||||
|
||||
// Cooldown cheats
|
||||
DO_APP_FUNC(0x00C69910, bool, MoleMole_HumanoidMoveFSM_CheckSprintCooldown, (/* HumanoidMoveFSM */void* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01530C80, bool, MoleMole_LCAvatarCombat_IsEnergyMax, (void* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01530480, void, MoleMole_LCAvatarCombat_ChangeEnergy_1, (LCAvatarCombat* __this, ElementType__Enum type, float value, DataPropOp__Enum state, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0152DC10, bool, MoleMole_LCAvatarCombat_OnSkillStart, (LCAvatarCombat* __this, uint32_t skillID, float cdMultipler, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01530210, bool, MoleMole_LCAvatarCombat_IsSkillInCD_1, (LCAvatarCombat* __this, LCAvatarCombat_OMIIMOJOHIP* skillInfo, MethodInfo* method));
|
||||
DO_APP_FUNC(0x011640B0, bool, MoleMole_HumanoidMoveFSM_CheckSprintCooldown, (/* HumanoidMoveFSM */void* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x026F0820, bool, MoleMole_LCAvatarCombat_IsEnergyMax, (void* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x026F0500, void, MoleMole_LCAvatarCombat_ChangeEnergy_1, (LCAvatarCombat* __this, ElementType__Enum type, float value, DataPropOp__Enum state, MethodInfo* method));
|
||||
DO_APP_FUNC(0x026F13C0, bool, MoleMole_LCAvatarCombat_OnSkillStart, (LCAvatarCombat* __this, uint32_t skillID, float cdMultipler, MethodInfo* method));
|
||||
DO_APP_FUNC(0x026F54A0, bool, MoleMole_LCAvatarCombat_IsSkillInCD_1, (LCAvatarCombat* __this, LCAvatarCombat_LCAvatarCombat_SkillInfo* skillInfo, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x02385800, void, MoleMole_ActorAbilityPlugin_AddDynamicFloatWithRange, (void* __this, String* key, float value, float min, float max, bool forceDoAtRemote, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02DB4680, void, MoleMole_ActorAbilityPlugin_AddDynamicFloatWithRange, (void* __this, String* key, float value, float min, float max, bool forceDoAtRemote, MethodInfo* method));
|
||||
|
||||
// Rapid fire
|
||||
DO_APP_FUNC(0x00D12040, void, MoleMole_LCBaseCombat_DoHitEntity, (LCBaseCombat* __this, uint32_t targetID, AttackResult* attackResult, bool ignoreCheckCanBeHitInMP, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01F0D930, void, MoleMole_Formula_CalcAttackResult, (CombatProperty* attackCombatProperty, CombatProperty* defenseCombatProperty, AttackResult* attackResult, BaseEntity* attackerEntity, BaseEntity* attackeeEntity, MethodInfo* method));
|
||||
DO_APP_FUNC(0x017B1D50, void, MoleMole_LCBaseCombat_DoHitEntity, (LCBaseCombat* __this, uint32_t targetID, AttackResult* attackResult, bool ignoreCheckCanBeHitInMP, MethodInfo* method));
|
||||
DO_APP_FUNC(0x019DDF40, void, MoleMole_Formula_CalcAttackResult, (CombatProperty* attackCombatProperty, CombatProperty* defenseCombatProperty, AttackResult* attackResult, BaseEntity* attackerEntity, BaseEntity* attackeeEntity, MethodInfo* method));
|
||||
|
||||
|
||||
// World cheats
|
||||
DO_APP_FUNC(0x022C3450, void, MoleMole_VCMonsterAIController_TryDoSkill, (/* VCMonsterAIController */ void* __this, uint32_t skillID, MethodInfo* method)); // Manual
|
||||
DO_APP_FUNC(0x020FA730, void, MoleMole_LCSelectPickup_AddInteeBtnByID, (void* __this, BaseEntity* entity, MethodInfo* method));
|
||||
DO_APP_FUNC(0x020FA090, bool, MoleMole_LCSelectPickup_IsInPosition, (void* __this, BaseEntity* entity, MethodInfo* method));
|
||||
DO_APP_FUNC(0x020FC120, bool, MoleMole_LCSelectPickup_IsOutPosition, (void* __this, BaseEntity* entity, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0219B8E0, void, MoleMole_ItemModule_PickItem, (MoleMole_ItemModule* __this, uint32_t entityID, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00C2F710, void, MoleMole_LevelSceneElementViewPlugin_Tick, (LevelSceneElementViewPlugin* __this, float inDeltaTime, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01A784B0, void, MoleMole_VCMonsterAIController_TryDoSkill, (/* VCMonsterAIController */ void* __this, uint32_t skillID, MethodInfo* method)); // Manual
|
||||
DO_APP_FUNC(0x02A851C0, void, MoleMole_LCSelectPickup_AddInteeBtnByID, (void* __this, BaseEntity* entity, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02A86D80, bool, MoleMole_LCSelectPickup_IsInPosition, (void* __this, BaseEntity* entity, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02A86410, bool, MoleMole_LCSelectPickup_IsOutPosition, (void* __this, BaseEntity* entity, MethodInfo* method));
|
||||
DO_APP_FUNC(0x034AD740, void, MoleMole_ItemModule_PickItem, (MoleMole_ItemModule* __this, uint32_t entityID, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00916CD0, void, MoleMole_LevelSceneElementViewPlugin_Tick, (LevelSceneElementViewPlugin* __this, float inDeltaTime, MethodInfo* method));
|
||||
|
||||
|
||||
// Dialog skipping
|
||||
DO_APP_FUNC(0x00F95350, bool, MoleMole_TalkDialogContext_get_canClick, (TalkDialogContext* __this, MethodInfo* method)); // delete
|
||||
DO_APP_FUNC(0x00F932D0, bool, MoleMole_TalkDialogContext_get_canAutoClick, (TalkDialogContext* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00F97D70, void, MoleMole_TalkDialogContext_OnDialogSelectItem, (TalkDialogContext* __this, Notify* notify, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02BF0040, void, MoleMole_InLevelCutScenePageContext_OnFreeClick, (InLevelCutScenePageContext* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02BF1AC0, void, MoleMole_InLevelCutScenePageContext_UpdateView, (InLevelCutScenePageContext* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02BEF110, void, MoleMole_InLevelCutScenePageContext_ClearView, (InLevelCutScenePageContext* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x032B0360, bool, MoleMole_TalkDialogContext_get_canClick, (TalkDialogContext* __this, MethodInfo* method)); // delete
|
||||
DO_APP_FUNC(0x032B1F60, bool, MoleMole_TalkDialogContext_get_canAutoClick, (TalkDialogContext* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x032AE7D0, void, MoleMole_TalkDialogContext_OnDialogSelectItem, (TalkDialogContext* __this, Notify* notify, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03C0DEF0, void, MoleMole_InLevelCutScenePageContext_OnFreeClick, (InLevelCutScenePageContext* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03C0F7D0, void, MoleMole_InLevelCutScenePageContext_UpdateView, (InLevelCutScenePageContext* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03C0D4F0, void, MoleMole_InLevelCutScenePageContext_ClearView, (InLevelCutScenePageContext* __this, MethodInfo* method));
|
||||
// Skip Cutscene | RyujinZX#6666
|
||||
DO_APP_FUNC(0x0363A300, void, CriwareMediaPlayer_Update, (CriwareMediaPlayer* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0363A0D0, void, CriwareMediaPlayer_Skip, (CriwareMediaPlayer* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x014C4720, void, CriwareMediaPlayer_Update, (CriwareMediaPlayer* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x014C44F0, void, CriwareMediaPlayer_Skip, (CriwareMediaPlayer* __this, MethodInfo* method));
|
||||
|
||||
|
||||
// Protection bypass
|
||||
DO_APP_FUNC(0x066218D0, Byte__Array*, Application_RecordUserData, (int32_t nType, MethodInfo* method));
|
||||
DO_APP_FUNC(0x058838C0, Byte__Array*, Application_RecordUserData, (int32_t nType, MethodInfo* method));
|
||||
|
||||
|
||||
// Networking
|
||||
DO_APP_FUNC(0x01251620, void, Kcp_KcpNative_kcp_packet_destroy, (KcpPacket_1* packet, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01251820, KcpPacket_1*, Kcp_KcpNative_kcp_packet_create, (uint8_t* data, int32_t len, MethodInfo* method));
|
||||
DO_APP_FUNC(0x012519C0, int32_t, Kcp_KcpNative_kcp_client_send_packet, (void* kcp_client, KcpPacket_1* packet, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00BD08A0, bool, MoleMole_KcpClient_TryDequeueEvent, (void* __this, ClientKcpEvent* evt, MethodInfo* method));
|
||||
DO_APP_FUNC(0x029C3D60, void, MoleMole_Packet_XorEncrypt, (Byte__Array** bytes, int32_t length, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0193C630, void, Kcp_KcpNative_kcp_packet_destroy, (KcpPacket_1* packet, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0193C740, KcpPacket_1*, Kcp_KcpNative_kcp_packet_create, (uint8_t* data, int32_t len, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0193C7D0, int32_t, Kcp_KcpNative_kcp_client_send_packet, (void* kcp_client, KcpPacket_1* packet, MethodInfo* method));
|
||||
DO_APP_FUNC(0x029F05C0, bool, MoleMole_KcpClient_TryDequeueEvent, (void* __this, ClientKcpEvent* evt, MethodInfo* method));
|
||||
DO_APP_FUNC(0x018293F0, void, MoleMole_Packet_XorEncrypt, (Byte__Array** bytes, int32_t length, MethodInfo* method));
|
||||
|
||||
|
||||
// Lua functions
|
||||
DO_APP_FUNC(0x02D59730, Byte__Array*, LuaManager_LoadCustomLuaFile, (LuaManager* __this, String** filePath, bool* recycleBytes, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0655E850, void, Lua_xlua_pushasciistring, (void* L, String* str, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01D8D5D0, void, MoleMole_LuaShellManager_DoString, (void* __this, Byte__Array* byteArray, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0600AFF0, void*, LuaEnv_DoString, (void* __this, Byte__Array* chunk, String* chunkName, void* env, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01D8DCA0, void, MoleMole_LuaShellManager_ReportLuaShellResult, (void* __this, String* type, String* value, MethodInfo* method)); // Anticheat info
|
||||
DO_APP_FUNC(0x010B0CA0, Byte__Array*, LuaManager_LoadCustomLuaFile, (LuaManager* __this, String** filePath, bool* recycleBytes, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03A481B0, void, Lua_xlua_pushasciistring, (void* L, String* str, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00E5EE40, void, MoleMole_LuaShellManager_DoString, (void* __this, Byte__Array* byteArray, MethodInfo* method));
|
||||
DO_APP_FUNC(0x053D9D40, void*, LuaEnv_DoString, (void* __this, Byte__Array* chunk, String* chunkName, void* env, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00E5E300, void, MoleMole_LuaShellManager_ReportLuaShellResult, (void* __this, String* type, String* value, MethodInfo* method)); // Anticheat info
|
||||
|
||||
|
||||
// Debug hooks
|
||||
DO_APP_FUNC(0x02D3FA40, AttackResult_1*, MoleMole_AttackResult_FillProtoAttackResult, (AttackResult* __this, uint32_t attackerID, uint32_t defenseId, AttackResult_1* protoAttackResult, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01F16210, void, MoleMole_LevelSyncCombatPlugin_SendFaceToDir, (void* __this, uint32_t runtimeID, Vector3 forward, MethodInfo* method));
|
||||
DO_APP_FUNC(0x035D4180, void, MoleMole_BaseEntity_FireEvent, (BaseEntity* __this, BaseEvent* e, bool immediately, MethodInfo* method));
|
||||
DO_APP_FUNC(0x023D4A90, bool, MoleMole_ActorAbilityPlugin_OnEvent, (void* __this, BaseEvent* e, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02C2F060, AttackResult_1*, MoleMole_AttackResult_FillProtoAttackResult, (AttackResult* __this, uint32_t attackerID, uint32_t defenseId, AttackResult_1* protoAttackResult, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01A884F0, void, MoleMole_LevelSyncCombatPlugin_SendFaceToDir, (void* __this, uint32_t runtimeID, Vector3 forward, MethodInfo* method));
|
||||
DO_APP_FUNC(0x031A89D0, void, MoleMole_BaseEntity_FireEvent, (BaseEntity* __this, BaseEvent* e, bool immediately, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02DE38B0, bool, MoleMole_ActorAbilityPlugin_OnEvent, (void* __this, BaseEvent* e, MethodInfo* method));
|
||||
|
||||
|
||||
// Kill aura
|
||||
DO_APP_FUNC(0x03A52200, void, MoleMole_EvtCrash_Init, (EvtCrash* __this, uint32_t targetID, MethodInfo* method)); // Manual offset
|
||||
DO_APP_FUNC(0x00941E80, void, MoleMole_EventManager_FireEvent, (MoleMole_EventManager* __this, BaseEvent* e, bool immediately, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0167B1A0, bool, MoleMole_FixedBoolStack_get_value, (FixedBoolStack* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01013540, void, MoleMole_EvtCrash_Init, (EvtCrash* __this, uint32_t targetID, MethodInfo* method)); // Manual offset
|
||||
DO_APP_FUNC(0x016C3F50, void, MoleMole_EventManager_FireEvent, (MoleMole_EventManager* __this, BaseEvent* e, bool immediately, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00BC25D0, bool, MoleMole_FixedBoolStack_get_value, (FixedBoolStack* __this, MethodInfo* method));
|
||||
|
||||
// cannot find actual function name: MoleMole_EventHelper_Allocate_103
|
||||
// shared offset
|
||||
// possible:
|
||||
// DO_APP_FUNC(0x039E2030, MoleMole_EvtCrash_1 *, EventHelper_Allocate_103, (MethodInfo * method));
|
||||
DO_APP_FUNC(0x039E2030, EvtCrash*, MoleMole_EventHelper_Allocate_103, (MethodInfo* method));
|
||||
DO_APP_FUNC_METHODINFO(0x09723528, MoleMole_EventHelper_Allocate_103__MethodInfo);
|
||||
// 2.8 changed to 'MoleMole_EventHelper_Allocate_144'
|
||||
DO_APP_FUNC(0x0595D6F0, EvtCrash*, MoleMole_EventHelper_Allocate_103, (MethodInfo* method));
|
||||
DO_APP_FUNC_METHODINFO(0x09A4E310, MoleMole_EventHelper_Allocate_103__MethodInfo);
|
||||
|
||||
DO_APP_FUNC(0x034BC360, void, MoleMole_BaseMoveSyncPlugin_ConvertSyncTaskToMotionInfo, (BaseMoveSyncPlugin* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x017F3E90, void, MoleMole_BaseMoveSyncPlugin_ConvertSyncTaskToMotionInfo, (BaseMoveSyncPlugin* __this, MethodInfo* method));
|
||||
|
||||
|
||||
// Fishing
|
||||
DO_APP_FUNC(0x0292F8D0, void, MoleMole_FishingModule_RequestFishCastRod, (void* __this, uint32_t baitId, uint32_t rodId, Vector3 pos, uint32_t rodEntityId, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02695850, void, MoleMole_FishingModule_RequestFishCastRod, (void* __this, uint32_t baitId, uint32_t rodId, Vector3 pos, uint32_t rodEntityId, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x0292D6D0, void, MoleMole_FishingModule_RequestFishBite, (void* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02930440, void, MoleMole_FishingModule_OnFishBiteRsp, (void* __this, FishBiteRsp* rsp, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02698820, void, MoleMole_FishingModule_RequestFishBite, (void* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02696680, void, MoleMole_FishingModule_OnFishBiteRsp, (void* __this, FishBiteRsp* rsp, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x0292F470, void, MoleMole_FishingModule_RequestFishBattleBegin, (void* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0292CAE0, void, MoleMole_FishingModule_OnFishBattleBeginRsp, (void* __this, FishBattleBeginRsp* rsp, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02695A60, void, MoleMole_FishingModule_RequestFishBattleBegin, (void* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02698920, void, MoleMole_FishingModule_OnFishBattleBeginRsp, (void* __this, FishBattleBeginRsp* rsp, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x0292D090, void, MoleMole_FishingModule_RequestFishBattleEnd, (void* __this, FishBattleResult__Enum result, bool isAlwaysBonus, float mxBonusTime, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0292DBD0, void, MoleMole_FishingModule_OnFishBattleEndRsp, (void* __this, FishBattleEndRsp* rsp, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02694C20, void, MoleMole_FishingModule_RequestFishBattleEnd, (void* __this, FishBattleResult__Enum result, bool isAlwaysBonus, float mxBonusTime, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02694F90, void, MoleMole_FishingModule_OnFishBattleEndRsp, (void* __this, FishBattleEndRsp* rsp, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x0292F190, void, MoleMole_FishingModule_OnExitFishingRsp, (void* __this, void* rsp, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0292C7F0, void, MoleMole_FishingModule_onFishChosenNotify, (void* __this, void* notify, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02694DB0, void, MoleMole_FishingModule_OnExitFishingRsp, (void* __this, void* rsp, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02696DE0, void, MoleMole_FishingModule_onFishChosenNotify, (void* __this, void* notify, MethodInfo* method));
|
||||
|
||||
|
||||
// Visuals
|
||||
DO_APP_FUNC(0x013FC090, void, MoleMole_SCameraModuleInitialize_SetWarningLocateRatio, (SCameraModuleInitialize* __this, double deltaTime, CameraShareData* data, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01B8DC20, void, MoleMole_VCBaseSetDitherValue_set_ManagerDitherAlphaValue, (MoleMole_VCBaseSetDitherValue* __this, float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03A1D1A0, void, MoleMole_SCameraModuleInitialize_SetWarningLocateRatio, (SCameraModuleInitialize* __this, double deltaTime, CameraShareData* data, MethodInfo* method));
|
||||
DO_APP_FUNC(0x008E01A0, void, MoleMole_VCBaseSetDitherValue_set_ManagerDitherAlphaValue, (MoleMole_VCBaseSetDitherValue* __this, float value, MethodInfo* method));
|
||||
|
||||
// Chest Indicator | RyujinZX#6666
|
||||
DO_APP_FUNC(0x04C9B450, bool, MoleMole_LCIndicatorPlugin_DoCheck, (LCIndicatorPlugin* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x04C9B830, void, MoleMole_LCIndicatorPlugin_ShowIcon, (LCIndicatorPlugin* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x04C9A750, void, MoleMole_LCIndicatorPlugin_HideIcon, (LCIndicatorPlugin* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00F1DE90, bool, MoleMole_LCIndicatorPlugin_DoCheck, (LCIndicatorPlugin* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00F1E2B0, void, MoleMole_LCIndicatorPlugin_ShowIcon, (LCIndicatorPlugin* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00F1F610, void, MoleMole_LCIndicatorPlugin_HideIcon, (LCIndicatorPlugin* __this, MethodInfo* method));
|
||||
|
||||
// Auto Cooking | RyujinZX#6666
|
||||
DO_APP_FUNC(0x02854E30, void, MoleMole_PlayerModule_RequestPlayerCook, (MoleMole_PlayerModule* __this, uint32_t recipeId, uint32_t avatarId, uint32_t qteQuality, uint32_t count, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02858180, void, MoleMole_PlayerModule_OnPlayerCookRsp, (MoleMole_PlayerModule* __this, PlayerCookRsp* rsp, MethodInfo* method));
|
||||
DO_APP_FUNC(0x033F5820, void, MoleMole_CookingQtePageContext_UpdateProficiency, (CookingQtePageContext* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x008ECD70, uint32_t, MoleMole_Config_CookRecipeExcelConfig_CheckCookFoodMaxNum, (uint32_t UpdateCookRecipeDic, MethodInfo* method));
|
||||
DO_APP_FUNC(0x032256C0, void, CookingQtePageContext_CloseItemGotPanel, (CookingQtePageContext* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02982660, void, MoleMole_PlayerModule_RequestPlayerCook, (MoleMole_PlayerModule* __this, uint32_t recipeId, uint32_t avatarId, uint32_t qteQuality, uint32_t count, MethodInfo* method));
|
||||
DO_APP_FUNC(0x029905A0, void, MoleMole_PlayerModule_OnPlayerCookRsp, (MoleMole_PlayerModule* __this, PlayerCookRsp* rsp, MethodInfo* method));
|
||||
DO_APP_FUNC(0x012C3890, void, MoleMole_CookingQtePageContext_UpdateProficiency, (CookingQtePageContext* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01765DB0, uint32_t, MoleMole_Config_CookRecipeExcelConfig_CheckCookFoodMaxNum, (uint32_t UpdateCookRecipeDic, MethodInfo* method));
|
||||
DO_APP_FUNC(0x012BC260, void, CookingQtePageContext_CloseItemGotPanel, (CookingQtePageContext* __this, MethodInfo* method));
|
||||
|
||||
// Profile Changer | RyujinZX#6666
|
||||
DO_APP_FUNC(0x027A41A0, Button_1*, ProfilePage, (MonoInLevelPlayerProfilePage* __this, MethodInfo* method)); // MonoInLevelPlayerProfilePage_get_logoutButton
|
||||
DO_APP_FUNC(0x016A77B0, void, ProfileEditPage, (MonoFriendInformationDialog* __this, Sprite* value, MethodInfo* method)); // MonoFriendInformationDialog_set_icon
|
||||
DO_APP_FUNC(0x02A37D50, Button_1*, ProfilePage, (MonoInLevelPlayerProfilePage* __this, MethodInfo* method)); // MonoInLevelPlayerProfilePage_get_logoutButton
|
||||
DO_APP_FUNC(0x01B101B0, void, ProfileEditPage, (MonoFriendInformationDialog* __this, Sprite* value, MethodInfo* method)); // MonoFriendInformationDialog_set_icon
|
||||
|
||||
// Free Camera
|
||||
DO_APP_FUNC(0x06595250, float, Camera_get_fieldOfView, (Camera* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x065956C0, void, Camera_set_fieldOfView, (Camera* __this, float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x065949D0, void, Camera_CopyFrom, (Camera* __this, Camera* other, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057E9C00, float, Camera_get_fieldOfView, (Camera* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057EA060, void, Camera_set_fieldOfView, (Camera* __this, float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057E9460, void, Camera_CopyFrom, (Camera* __this, Camera* other, MethodInfo* method));
|
||||
|
||||
// Game Object, Component, Transform Utility
|
||||
DO_APP_FUNC(0x0662F130, GameObject*, GameObject_Find, (String* name, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0662F190, Component_1*, GameObject_GetComponentByName, (GameObject* __this, String* type, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0662F660, bool, GameObject_get_active, (GameObject* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0662F720, void, GameObject_set_active, (GameObject* __this, bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x065546E0, Transform*, Transform_GetChild, (Transform* __this, int32_t index, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0652EA10, Component_1*, Component_1_GetComponent_1, (Component_1* __this, String* type, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0662F520, void, GameObject_SetActive, (GameObject* __this, bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0662F100, GameObject*, GameObject_CreatePrimitive, (PrimitiveType__Enum type, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0662F700, Transform*, GameObject_get_transform, (GameObject* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555A60, Quaternion, Transform_get_localRotation, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555EF0, void, Transform_set_localRotation, (Transform* __this, Quaternion value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555AA0, Vector3, Transform_get_localScale, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x065548E0, void, Transform_set_localScale, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555A20, Vector3, Transform_get_localPosition, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555EE0, void, Transform_set_localPosition, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0662F090, Component_1*, GameObject_AddComponentInternal, (GameObject* __this, String* className, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0662F0A0, Component_1*, GameObject_AddComponent, (GameObject* __this, Type* componentType, MethodInfo* method));
|
||||
DO_APP_FUNC(0x065508C0, void, Object_1_DestroyImmediate_1, (Object_1* obj, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06550C00, Object_1*, Object_1_Instantiate_2, (Object_1* original, MethodInfo* method));
|
||||
DO_APP_FUNC(0x041B0BB0, Object*, Object_1_Instantiate_5, (Object* original, MethodInfo* method));
|
||||
DO_APP_FUNC(0x041B0BB0, GameObject*, Object_1_Instantiate_11, (GameObject* original, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555870, int32_t, Transform_get_childCount, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0652EBC0, GameObject*, Component_1_get_gameObject, (Component_1* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06551030, String*, Object_1_get_name, (Object_1* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0665DA90, Material__Array*, Renderer_GetMaterialArray, (Renderer* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0652FB40, void, Material_set_mainTexture, (Material* __this, Texture* value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0664E800, Vector3, Vector3_Lerp, (Vector3 a, Vector3 b, float t, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555890, Vector3, Transform_get_eulerAngles, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555DD0, void, Transform_set_eulerAngles, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555BE0, Vector3, Transform_get_right, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555F70, void, Transform_set_right, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555CC0, Vector3, Transform_get_up, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555FF0, void, Transform_set_up, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555900, Vector3, Transform_get_forward, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555E20, void, Transform_set_forward, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555FE0, void, Transform_set_rotation, (Transform* __this, Quaternion value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x065E1EC0, float, Mathf_Lerp, (float a, float b, float t, MethodInfo* method));
|
||||
DO_APP_FUNC(0x065F56F0, float, Input_GetAxis, (String* axisName, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06550910, void, Object_1_Destroy_1, (Object_1* obj, MethodInfo* method));
|
||||
|
||||
|
||||
// Music game event
|
||||
DO_APP_FUNC(0x00FFE490, void, MusicGamePlayComponent_OnPlayerUpdate, (MusicGamePlayComponent* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00FFE600, void, MusicGamePlayComponent_OnStart, (MusicGamePlayComponent* __this, BeatMapData* beatMapData, MusicMetaInfo* musicMetaInfo, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00FFE310, void, MusicGamePlayComponent_OnMiss, (MusicGamePlayComponent* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00FFEE40, void, MusicGamePlayComponent_set_combo, (MusicGamePlayComponent* __this, uint32_t value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00FFF050, void, MusicGamePlayComponent_set_score, (MusicGamePlayComponent* __this, float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01B5AEB0, void, MusicGamePlayComponent_set_maxCombo, (MusicGamePlayComponent* __this, uint32_t value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02C749E0, void, MusicGamePlayComponent_set_perfectCnt, (MusicGamePlayComponent* __this, uint32_t value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x035C4E50, void, MusicGamePlayComponent_set_greatCnt, (MusicGamePlayComponent* __this, uint32_t value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x017A31C0, void, MusicGamePlayComponent_set_missCnt, (MusicGamePlayComponent* __this, uint32_t value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00FFDE90, void, MusicGamePlayComponent_OnHit, (MusicGamePlayComponent* __this, float score, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05890060, GameObject*, GameObject_Find, (String* name, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05890070, Component_1*, GameObject_GetComponentByName, (GameObject* __this, String* type, MethodInfo* method));
|
||||
DO_APP_FUNC(0x058905A0, bool, GameObject_get_active, (GameObject* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05890660, void, GameObject_set_active, (GameObject* __this, bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05890460, void, GameObject_SetActive, (GameObject* __this, bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BA950, Transform*, Transform_GetChild, (Transform* __this, int32_t index, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05799870, Component_1*, Component_1_GetComponent_1, (Component_1* __this, String* type, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05890030, GameObject*, GameObject_CreatePrimitive, (PrimitiveType__Enum type, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05890640, Transform*, GameObject_get_transform, (GameObject* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BBCE0, Quaternion, Transform_get_localRotation, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BAB20, void, Transform_set_localRotation, (Transform* __this, Quaternion value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BBD20, Vector3, Transform_get_localScale, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BAB30, void, Transform_set_localScale, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BBCA0, Vector3, Transform_get_localPosition, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BC160, void, Transform_set_localPosition, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0588FFD0, Component_1*, GameObject_AddComponentInternal, (GameObject* __this, String* className, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05890380, Component_1*, GameObject_AddComponent, (GameObject* __this, Type* componentType, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057B6B30, void, Object_1_DestroyImmediate_1, (Object_1* obj, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057B6E80, Object_1*, Object_1_Instantiate_2, (Object_1* original, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05A5FA20, Object*, Object_1_Instantiate_5, (Object* original, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05A5FA20, GameObject*, Object_1_Instantiate_10, (GameObject* original, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BBAF0, int32_t, Transform_get_childCount, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05799A20, GameObject*, Component_1_get_gameObject, (Component_1* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057B72A0, String*, Object_1_get_name, (Object_1* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x058BBC70, Material__Array*, Renderer_GetMaterialArray, (Renderer* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0579AA20, void, Material_set_mainTexture, (Material* __this, Texture* value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x058AFCD0, Vector3, Vector3_Lerp, (Vector3 a, Vector3 b, float t, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BBB10, Vector3, Transform_get_eulerAngles, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BC050, void, Transform_set_eulerAngles, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BBE60, Vector3, Transform_get_right, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BC1E0, void, Transform_set_right, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BBF40, Vector3, Transform_get_up, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BC260, void, Transform_set_up, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BBB80, Vector3, Transform_get_forward, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BC0A0, void, Transform_set_forward, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BC250, void, Transform_set_rotation, (Transform* __this, Quaternion value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0583CA40, float, Mathf_Lerp, (float a, float b, float t, MethodInfo* method));
|
||||
DO_APP_FUNC(0x058502D0, float, Input_GetAxis, (String* axisName, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057B6B80, void, Object_1_Destroy_1, (Object_1* obj, MethodInfo* method));
|
||||
|
||||
|
||||
// Utility
|
||||
DO_APP_FUNC(0x03551B60, String*, Text_get_text, (Text* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06568060, void, Text_set_text, (Text* __this, String* value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0658D6B0, void, Slider_1_set_value, (Slider_1* __this, float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0658D560, void, Slider_1_set_maxValue, (Slider_1* __this, float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0658D5E0, void, Slider_1_set_minValue, (Slider_1* __this, float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x065F6470, Rect, Sprite_get_rect, (Sprite* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0667D6A0, Texture2D*, NativeGallery_LoadImageAtPath, (String* imagePath, int32_t maxSize, bool markTextureNonReadable, bool generateMipmaps, bool linearColorSpace, MethodInfo* method));
|
||||
DO_APP_FUNC(0x065F6270, Sprite*, Sprite_Create, (Texture2D* texture, Rect rect, Vector2 pivot, float pixelsPerUnit, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06567B70, void, Text_set_alignment, (Text* __this, TextAnchor__Enum value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06567E10, void, Text_set_horizontalOverflow, (Text* __this, HorizontalWrapMode__Enum value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06568110, void, Text_set_verticalOverflow, (Text* __this, VerticalWrapMode__Enum value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06567A80, bool, Text_get_resizeTextForBestFit, (Text* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06567EE0, void, Text_set_resizeTextForBestFit, (Text* __this, bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06567450, int32_t, Text_get_fontSize, (Text* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06567CC0, void, Text_set_fontSize, (Text* __this, int32_t value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03480F40, String*, Text_get_text, (Text* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057C4340, void, Text_set_text, (Text* __this, String* value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057E20F0, void, Slider_1_set_minValue, (Slider_1* __this, float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057E2070, void, Slider_1_set_maxValue, (Slider_1* __this, float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057E14F0, void, Slider_1_set_value, (Slider_1* __this, float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05851060, Rect, Sprite_get_rect, (Sprite* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x058DC9E0, Texture2D*, NativeGallery_LoadImageAtPath, (String* imagePath, int32_t maxSize, bool markTextureNonReadable, bool generateMipmaps, bool linearColorSpace, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05850E60, Sprite*, Sprite_Create, (Texture2D* texture, Rect rect, Vector2 pivot, float pixelsPerUnit, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057C3E50, void, Text_set_alignment, (Text* __this, TextAnchor__Enum value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057C40F0, void, Text_set_horizontalOverflow, (Text* __this, HorizontalWrapMode__Enum value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057C43F0, void, Text_set_verticalOverflow, (Text* __this, VerticalWrapMode__Enum value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057C3D60, bool, Text_get_resizeTextForBestFit, (Text* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057C41C0, void, Text_set_resizeTextForBestFit, (Text* __this, bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057C36A0, int32_t, Text_get_fontSize, (Text* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057C3FA0, void, Text_set_fontSize, (Text* __this, int32_t value, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x036865D0, float, Miscs_CalcCurrentGroundWaterHeight, (float x, float z, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03685E00, float, Miscs_CalcCurrentGroundHeight, (float x, float z, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03685F10, float, Miscs_CalcCurrentGroundHeight_1, (float x, float z, float rayStartHeight, float rayDetectLength, int32_t layer, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03686170, Vector3, Miscs_CalcCurrentGroundNorm, (Vector3 pos, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01A4E0E0, Vector3, Miscs_GenWorldPos, (Vector2 levelMapPos, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01A4DA90, Vector2, Miscs_GenLevelPos_1, (Vector3 worldPos, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0369D590, int32_t, Miscs_GetSceneGroundLayerMask, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x02798730, float, Miscs_CalcCurrentGroundWaterHeight, (float x, float z, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02797F60, float, Miscs_CalcCurrentGroundHeight, (float x, float z, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02798070, float, Miscs_CalcCurrentGroundHeight_1, (float x, float z, float rayStartHeight, float rayDetectLength, int32_t layer, MethodInfo* method));
|
||||
DO_APP_FUNC(0x027982D0, Vector3, Miscs_CalcCurrentGroundNorm, (Vector3 pos, MethodInfo* method));
|
||||
DO_APP_FUNC(0x027A24B0, Vector3, Miscs_GenWorldPos, (Vector2 levelMapPos, MethodInfo* method));
|
||||
DO_APP_FUNC(0x027A1F90, Vector2, Miscs_GenLevelPos_1, (Vector3 worldPos, MethodInfo* method));
|
||||
DO_APP_FUNC(0x027B6BF0, int32_t, Miscs_GetSceneGroundLayerMask, (MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x056202E0, Vector3, WorldShiftManager_GetRelativePosition, (Vector3 pos, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05620130, Vector3, WorldShiftManager_GetAbsolutePosition, (Vector3 pos, MethodInfo* method));
|
||||
DO_APP_FUNC(0x04D7B430, Vector3, WorldShiftManager_GetAbsolutePosition, (Vector3 pos, MethodInfo* method));
|
||||
DO_APP_FUNC(0x04D7B5E0, Vector3, WorldShiftManager_GetRelativePosition, (Vector3 pos, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x02DAB410, Vector3, ActorUtils_GetAvatarPos, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x02DAF680, void, ActorUtils_SetAvatarPos, (Vector3 pos, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02DB0AF0, void, ActorUtils_SyncAvatarMotion, (int32_t state, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01F6B8F0, Vector3, ActorUtils_GetAvatarPos, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x01F72080, void, ActorUtils_SetAvatarPos, (Vector3 pos, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01F74C50, void, ActorUtils_SyncAvatarMotion, (int32_t state, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x01AA5200, Notify, Notify_CreateNotify_1, (MoleMole_NotifyTypes__Enum type, Object* body, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02B87390, Notify, Notify_CreateNotify_1, (MoleMole_NotifyTypes__Enum type, Object* body, MethodInfo* method));
|
||||
|
||||
// DO_APP_FUNC(0x020C7AA0, float, MoleMole_SafeFloat_DBDMOONJALD_1, (MoleMole_SafeFloat v, MethodInfo * method));
|
||||
// DBDMOONJALD => op_Implicit
|
||||
DO_APP_FUNC(0x020C7AA0, float, MoleMole_SafeFloat_get_Value, (SafeFloat safeFloat, MethodInfo* method));
|
||||
// DO_APP_FUNC(0x020C7920, MoleMole_SafeFloat, MoleMole_SafeFloat_DBDMOONJALD, (float IGFNEICJINB, MethodInfo * method));
|
||||
DO_APP_FUNC(0x020C7920, SafeFloat, MoleMole_SafeFloat_set_Value, (float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x039E2290, LCBaseCombat*, MoleMole_BaseEntity_GetLogicCombatComponent_1, (BaseEntity* __this, MethodInfo* method));
|
||||
// should be 'op_Implicit' not 'get_value'
|
||||
DO_APP_FUNC(0x0228EB70, float, MoleMole_SafeFloat_get_Value, (SafeFloat safeFloat, MethodInfo* method));
|
||||
// should be 'op_Implicit' not 'set_value'
|
||||
DO_APP_FUNC(0x0228EC70, SafeFloat, MoleMole_SafeFloat_set_Value, (float value, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x035CC430, String*, MoleMole_BaseEntity_ToStringRelease, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x035AC7B0, void, MoleMole_BaseEntity_SetRelativePosition, (BaseEntity* __this, Vector3 position, bool forceSyncToRigidbody, MethodInfo* method));
|
||||
DO_APP_FUNC(0x035C0AA0, void, MoleMole_BaseEntity_SetAbsolutePosition, (BaseEntity* __this, Vector3 abpos, bool forceSyncToRigidbody, MethodInfo* method));
|
||||
DO_APP_FUNC(0x035C4B00, Vector3, MoleMole_BaseEntity_GetAbsolutePosition, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x035BE810, Vector3, MoleMole_BaseEntity_GetRelativePosition, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x035B1EF0, Vector3, MoleMole_BaseEntity_GetForward, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x035D4BA0, Vector3, MoleMole_BaseEntity_GetForwardFast, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x035C08A0, Vector3, MoleMole_BaseEntity_GetRight, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x035CB210, Vector3, MoleMole_BaseEntity_GetUp, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x035D5B30, bool, MoleMole_BaseEntity_IsActive, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x035C7A50, Rigidbody*, MoleMole_BaseEntity_GetRigidbody, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x039E22C0, VCBaseMove*, MoleMole_BaseEntity_GetMoveComponent_1, (BaseEntity* __this, MethodInfo* method)); // double check
|
||||
DO_APP_FUNC(0x0596AFF0, LCBaseCombat*, MoleMole_BaseEntity_GetLogicCombatComponent_1, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC_METHODINFO(0x099D4410, MoleMole_BaseEntity_GetLogicCombatComponent_1__MethodInfo);
|
||||
|
||||
DO_APP_FUNC(0x035C3850, List_1_MoleMole_BaseComponent_*, MoleMole_BaseEntity_GetAllLogicComponents, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0187FDC0, GameObject*, MoleMole_BaseEntity_get_gameObject, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x035ACC70, GameObject*, MoleMole_BaseEntity_get_rootGameObject, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC_METHODINFO(0x096EAD20, MoleMole_BaseEntity_GetMoveComponent_1__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x096EC0B8, MoleMole_BaseEntity_GetLogicCombatComponent_1__MethodInfo);
|
||||
DO_APP_FUNC(0x01BF68A0, BaseEntity*, MoleMole_EntityManager_GetLocalAvatarEntity, (MoleMole_EntityManager* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x031ACE30, String*, MoleMole_BaseEntity_ToStringRelease, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03180C10, void, MoleMole_BaseEntity_SetRelativePosition, (BaseEntity* __this, Vector3 position, bool forceSyncToRigidbody, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0319D8B0, void, MoleMole_BaseEntity_SetAbsolutePosition, (BaseEntity* __this, Vector3 abpos, bool forceSyncToRigidbody, MethodInfo* method));
|
||||
DO_APP_FUNC(0x031AA160, Vector3, MoleMole_BaseEntity_GetAbsolutePosition, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0318A430, Vector3, MoleMole_BaseEntity_GetRelativePosition, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03197170, Vector3, MoleMole_BaseEntity_GetForward, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0319BCC0, Vector3, MoleMole_BaseEntity_GetForwardFast, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03187C30, Vector3, MoleMole_BaseEntity_GetRight, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x03185DC0, Vector3, MoleMole_BaseEntity_GetUp, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x031A5120, bool, MoleMole_BaseEntity_IsActive, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x031AFEE0, Rigidbody*, MoleMole_BaseEntity_GetRigidbody, (BaseEntity* __this, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x01BF4E50, CameraEntity*, MoleMole_EntityManager_GetMainCameraEntity, (MoleMole_EntityManager* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01BEB030, BaseEntity*, MoleMole_EntityManager_GetValidEntity, (MoleMole_EntityManager* __this, uint32_t runtimeID, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01BF2D60, bool, MoleMole_EntityManager_RemoveEntity, (MoleMole_EntityManager* __this, BaseEntity* entity, uint32_t specifiedRuntimeID, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01C02800, bool, MoleMole_EntityManager_IsCachedEntity, (MoleMole_EntityManager* __this, BaseEntity* entity, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01BF01F0, List_1_MoleMole_BaseEntity_*, MoleMole_EntityManager_GetEntities, (MoleMole_EntityManager* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x044B8970, Bounds, Utils_4_GetBounds, (GameObject* go, MethodInfo* method));
|
||||
// type should be 'MoleMole_VCCharacterCombat' not 'MoleMole_VCBaseMove'
|
||||
// function name should be 'GetVisualCombatComponent' not 'GetMoveComponent'
|
||||
DO_APP_FUNC(0x0596AEC0, VCBaseMove*, MoleMole_BaseEntity_GetMoveComponent_1, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC_METHODINFO(0x099DBAE8, MoleMole_BaseEntity_GetMoveComponent_1__MethodInfo);
|
||||
|
||||
DO_APP_FUNC(0x03188270, List_1_MoleMole_BaseComponent_*, MoleMole_BaseEntity_GetAllLogicComponents, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x01E3E4F0, GameObject*, MoleMole_BaseEntity_get_gameObject, (BaseEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x031A3550, GameObject*, MoleMole_BaseEntity_get_rootGameObject, (BaseEntity* __this, MethodInfo* method));
|
||||
|
||||
// type should be 'MoleMole_AvatarEntity' not 'MoleMole_BaseEntity'
|
||||
DO_APP_FUNC(0x02F5E1C0, BaseEntity*, MoleMole_EntityManager_GetLocalAvatarEntity, (MoleMole_EntityManager* __this, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x02F56C80, CameraEntity*, MoleMole_EntityManager_GetMainCameraEntity, (MoleMole_EntityManager* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02F682B0, BaseEntity*, MoleMole_EntityManager_GetValidEntity, (MoleMole_EntityManager* __this, uint32_t runtimeID, MethodInfo* method));
|
||||
// should be: DO_APP_FUNC(0x02F5F490, void, MoleMole_EntityManager_RemoveEntity, (MoleMole_EntityManager * __this, bool entity, MethodInfo * method));
|
||||
DO_APP_FUNC(0x02F5F490, bool, MoleMole_EntityManager_RemoveEntity, (MoleMole_EntityManager* __this, BaseEntity* entity, uint32_t specifiedRuntimeID, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02F60A10, bool, MoleMole_EntityManager_IsCachedEntity, (MoleMole_EntityManager* __this, BaseEntity* entity, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02F65570, List_1_MoleMole_BaseEntity_*, MoleMole_EntityManager_GetEntities, (MoleMole_EntityManager* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x045E15B0, Bounds, Utils_4_GetBounds, (GameObject* go, MethodInfo* method));
|
||||
|
||||
// Modify | RyujinZX#6666
|
||||
DO_APP_FUNC(0x00C6C780, void, MoleMole_HumanoidMoveFSM_LateTick, (HumanoidMoveFSM* __this, float deltaTime, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0116C440, void, MoleMole_HumanoidMoveFSM_LateTick, (HumanoidMoveFSM* __this, float deltaTime, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x01DD2070, bool, MoleMole_ScenePropManager_GetTreeTypeByPattern, (MoleMole_ScenePropManager* __this, String* pattern, MoleMole_Config_TreeType__Enum* treeType, MethodInfo* method));
|
||||
DO_APP_FUNC(0x013B7790, bool, MoleMole_ScenePropManager_GetTreeTypeByPattern, (MoleMole_ScenePropManager* __this, String* pattern, MoleMole_Config_TreeType__Enum* treeType, MethodInfo* method));
|
||||
DO_APP_FUNC(0x018C5CE0, void, MoleMole_NetworkManager_RequestHitTreeDropNotify, (MoleMole_NetworkManager* __this, Vector3 position, Vector3 hitPostion, MoleMole_Config_TreeType__Enum treeType, MethodInfo* method));
|
||||
// function should be 'MoleMole_TimeUtil_get_LocalNowMsTimeStamp'
|
||||
DO_APP_FUNC(0x0266BFF0, uint64_t, MoleMole_TimeUtil_get_NowTimeStamp, (MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x00C3F160, void, MoleMole_NetworkManager_RequestHitTreeDropNotify, (MoleMole_NetworkManager* __this, Vector3 position, Vector3 hitPostion, MoleMole_Config_TreeType__Enum treeType, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0291FEF0, uint64_t, MoleMole_TimeUtil_get_NowTimeStamp, (MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x01F5BA10, bool, MoleMole_LoadingManager_IsLoaded, (MoleMole_LoadingManager* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00AB5620, bool, MoleMole_LoadingManager_IsLoaded, (MoleMole_LoadingManager* __this, MethodInfo* method));
|
||||
|
||||
// Thanks to | RyujinZX
|
||||
DO_APP_FUNC(0x01337F70, void, MoleMole_LCAbilityElement_ReduceModifierDurability, (LCAbilityElement* __this, int32_t modifierDurabilityIndex, float reduceDurability, Nullable_1_Single_ deltaTime, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00D87B20, void, MoleMole_LCAbilityElement_ReduceModifierDurability, (LCAbilityElement* __this, int32_t modifierDurabilityIndex, float reduceDurability, Nullable_1_Single_ deltaTime, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x01FF2880, BaseEntity*, MoleMole_GadgetEntity_GetOwnerEntity, (GadgetEntity* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x023B07C0, BaseEntity*, MoleMole_GadgetEntity_GetOwnerEntity, (GadgetEntity* __this, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x02E826A0, void, MoleMole_InLevelMapPageContext_ZoomMap, (InLevelMapPageContext* __this, float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02EC7730, void, MoleMole_InLevelMapPageContext_UpdateView, (InLevelMapPageContext* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x034D77C0, void, MoleMole_InLevelMapPageContext_ZoomMap, (InLevelMapPageContext* __this, float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0350F300, void, MoleMole_InLevelMapPageContext_UpdateView, (InLevelMapPageContext* __this, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x01A36960, bool, MoleMole_UIManager_HasEnableMapCamera, (MoleMole_UIManager* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x014A97A0, bool, MoleMole_UIManager_HasEnableMapCamera, (MoleMole_UIManager* __this, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x00E8E700, void, MonoMiniMap_Update, (MonoMiniMap* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0635A470, MonoMiniMap*, MonoInLevelMainPage_get_miniMap, (void* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x024A3570, void, MoleMole_GadgetModule_OnGadgetInteractRsp, (void* __this, GadgetInteractRsp* notify, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00A8D650, float, MoleMole_InLevelMainPageContext_get_miniMapScale, (InLevelMainPageContext* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x016981E0, void, MonoMiniMap_Update, (MonoMiniMap* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x02CB6CA0, MonoMiniMap*, MonoInLevelMainPage_get_miniMap, (void* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0265C390, void, MoleMole_GadgetModule_OnGadgetInteractRsp, (void* __this, GadgetInteractRsp* notify, MethodInfo* method));
|
||||
DO_APP_FUNC(0x009E9F50, float, MoleMole_InLevelMainPageContext_get_miniMapScale, (InLevelMainPageContext* __this, MethodInfo* method));
|
||||
|
||||
|
||||
// UnityEngine
|
||||
DO_APP_FUNC(0x065ECB70, void, RenderSettings_set_fog, (bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06621FF0, void, Application_set_targetFrameRate, (int32_t value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06621D80, int32_t, Application_get_targetFrameRate, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x058476D0, void, RenderSettings_set_fog, (bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05883D80, int32_t, Application_get_targetFrameRate, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x05883FE0, void, Application_set_targetFrameRate, (int32_t value, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x06678780, bool, RectTransformUtility_ScreenPointToLocalPointInRectangle, (void* rect, Vector2 screenPoint, void* cam, Vector2* localPoint, MethodInfo* method));
|
||||
DO_APP_FUNC(0x058D7A10, bool, RectTransformUtility_ScreenPointToLocalPointInRectangle, (void* rect, Vector2 screenPoint, void* cam, Vector2* localPoint, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x06555BA0, Vector3, Transform_get_position, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x065548F0, void, Transform_set_position, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0664E3A0, float, Vector3_Distance, (Vector3 a, Vector3 b, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06534FE0, float, Vector2_Distance, (Vector2 a, Vector2 b, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BBE20, Vector3, Transform_get_position, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BAB40, void, Transform_set_position, (Transform* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x058AF880, float, Vector3_Distance, (Vector3 a, Vector3 b, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0579FEB0, float, Vector2_Distance, (Vector2 a, Vector2 b, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x0658F980, void, Cursor_set_visible, (bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0658F970, void, Cursor_set_lockState, (CursorLockMode__Enum value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0658F960, bool, Cursor_get_visible, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x057E4470, void, Cursor_set_visible, (bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057E4460, void, Cursor_set_lockState, (CursorLockMode__Enum value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057E4450, bool, Cursor_get_visible, (MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x064B3A00, void, Rigidbody_set_detectCollisions, (Rigidbody* __this, bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x064B3A40, void, Rigidbody_set_isKinematic, (Rigidbody* __this, bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x064B3740, void, Rigidbody_set_velocity, (Rigidbody* __this, Vector3 value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0571E9A0, void, Rigidbody_set_detectCollisions, (Rigidbody* __this, bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0571E9E0, void, Rigidbody_set_isKinematic, (Rigidbody* __this, bool value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0571E8F0, Vector3, Rigidbody_get_velocity, (Rigidbody* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x0571EA60, void, Rigidbody_set_velocity, (Rigidbody* __this, Vector3 value, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x06631190, float, Time_get_timeScale, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x06631240, void, Time_set_timeScale, (float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x066310B0, float, Time_get_deltaTime, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x058922C0, float, Time_get_timeScale, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x05892370, void, Time_set_timeScale, (float value, MethodInfo* method));
|
||||
DO_APP_FUNC(0x058921E0, float, Time_get_deltaTime, (MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x06594F40, Vector3, Camera_WorldToScreenPoint, (Camera* __this, Vector3 position, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06595270, Camera*, Camera_get_main, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x065953B0, int32_t, Camera_get_pixelWidth, (Camera* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06595360, int32_t, Camera_get_pixelHeight, (Camera* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057E98F0, Vector3, Camera_WorldToScreenPoint, (Camera* __this, Vector3 position, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057E9C20, Camera*, Camera_get_main, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x057E9D60, int32_t, Camera_get_pixelWidth, (Camera* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057E9D10, int32_t, Camera_get_pixelHeight, (Camera* __this, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x06533CA0, int32_t, Screen_get_width, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x06533C30, int32_t, Screen_get_height, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x0579EB70, int32_t, Screen_get_width, (MethodInfo* method));
|
||||
DO_APP_FUNC(0x0579EB00, int32_t, Screen_get_height, (MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x0664CF50, bool, Behaviour_get_isActiveAndEnabled, (Behaviour* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x058AE2D0, bool, Behaviour_get_isActiveAndEnabled, (Behaviour* __this, MethodInfo* method));
|
||||
|
||||
DO_APP_FUNC(0x066306D0, Vector3, Quaternion_ToEulerAngles, (Quaternion rotation, MethodInfo* method));
|
||||
DO_APP_FUNC(0x066309A0, Vector3, Quaternion_get_eulerAngles, (Quaternion__Boxed* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06555C70, Quaternion, Transform_get_rotation, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06552F50, Rect, RectTransform_get_rect, (RectTransform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x06677BD0, float, Canvas_get_scaleFactor, (/*Canvas**/void* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05891610, Vector3, Quaternion_ToEulerAngles, (Quaternion rotation, MethodInfo* method));
|
||||
DO_APP_FUNC(0x05891AD0, Vector3, Quaternion_get_eulerAngles, (Quaternion__Boxed* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057BBEF0, Quaternion, Transform_get_rotation, (Transform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x057B91C0, Rect, RectTransform_get_rect, (RectTransform* __this, MethodInfo* method));
|
||||
DO_APP_FUNC(0x058D6E60, float, Canvas_get_scaleFactor, (/*Canvas**/void* __this, MethodInfo* method));
|
||||
|
||||
|
||||
DO_APP_FUNC(0x00935700, void, LevelTimeManager_SetInternalTimeOfDay, (/*LevelTimeManager**/void* __this, float inHours, bool force, bool refreshEnviroTime, MethodInfo* method));
|
||||
DO_APP_FUNC(0x00E3D750, void, LevelTimeManager_SetInternalTimeOfDay, (/*LevelTimeManager**/void* __this, float inHours, bool force, bool refreshEnviroTime, MethodInfo* method));
|
||||
|
||||
|
||||
// Singletons
|
||||
DO_APP_FUNC(0x05189A90, void*, Singleton_GetInstance, (MethodInfo* method));
|
||||
DO_APP_FUNC_METHODINFO(0x096EA3B0, Singleton_1_MoleMole_MapModule__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x096EA470, Singleton_1_MoleMole_LoadingManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x096E5D68, Singleton_1_MoleMole_EntityManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x096E6D98, Singleton_1_InteractionManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x096E5C20, Singleton_1_MoleMole_UIManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x096E9868, Singleton_1_MoleMole_ItemModule__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x096E7148, Singleton_1_MoleMole_EventManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x096E5C58, Singleton_1_MoleMole_PlayerModule__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x096E5EE8, Singleton_1_MoleMole_MapManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x096E8A10, Singleton_1_MoleMole_ScenePropManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x096E63A0, Singleton_1_MoleMole_NetworkManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC(0x06074140, void*, Singleton_GetInstance, (MethodInfo* method));
|
||||
DO_APP_FUNC_METHODINFO(0x099D0B08, Singleton_1_MoleMole_MapModule__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x099D2620, Singleton_1_MoleMole_LoadingManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x099CFF50, Singleton_1_MoleMole_EntityManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x099D3190, Singleton_1_InteractionManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x099CFF78, Singleton_1_MoleMole_UIManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x099DDF00, Singleton_1_MoleMole_ItemModule__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x099CFF60, Singleton_1_MoleMole_EventManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x099D0570, Singleton_1_MoleMole_PlayerModule__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x099D4130, Singleton_1_MoleMole_MapManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x099D1CA8, Singleton_1_MoleMole_ScenePropManager__get_Instance__MethodInfo);
|
||||
DO_APP_FUNC_METHODINFO(0x099D49D0, Singleton_1_MoleMole_NetworkManager__get_Instance__MethodInfo);
|
||||
|
||||
|
@ -5,14 +5,14 @@
|
||||
// * IL2CPP application-specific type definition addresses
|
||||
// ******************************************************************************
|
||||
|
||||
DO_TYPEDEF(0x0967B618, Byte);
|
||||
DO_TYPEDEF(0x09688C08, GameManager);
|
||||
DO_TYPEDEF(0x0967B508, Int32);
|
||||
DO_TYPEDEF(0x09961DA8, Byte);
|
||||
DO_TYPEDEF(0x0996F680, GameManager);
|
||||
DO_TYPEDEF(0x09961C98, Int32);
|
||||
|
||||
// v 2.7
|
||||
DO_TYPEDEF(0x0968AD88, LCChestPlugin);
|
||||
DO_TYPEDEF(0x09688FD8, SceneTreeObject);
|
||||
DO_TYPEDEF(0x0969D1F8, MoleMole_ActorModifier);
|
||||
// v 2.8
|
||||
DO_TYPEDEF(0x099843E8, LCChestPlugin);
|
||||
DO_TYPEDEF(0x0997B320, SceneTreeObject);
|
||||
DO_TYPEDEF(0x09977D70, MoleMole_ActorModifier);
|
||||
|
||||
//// v 2.6
|
||||
//DO_SINGLETONEDEF(0x0B3442D8, Singleton_1_MoleMole_MapModule_);
|
||||
|
@ -4160,8 +4160,8 @@ namespace app {
|
||||
// Entity fields
|
||||
struct __declspec(align(8)) BaseEntity__Fields {
|
||||
struct Dictionary_2_System_UInt32_AIPerceptionInfo_* _aiPerceptionDic;
|
||||
struct ConfigEntity* jsonConfig;
|
||||
struct EntityExcelConfig* excelConfig;
|
||||
struct Config_ConfigEntity* jsonConfig;
|
||||
struct Config_EntityExcelConfig* excelConfig;
|
||||
uint32_t _runtimeID_k__BackingField;
|
||||
uint32_t _preRuntimeID_k__BackingField;
|
||||
uint32_t _configID_k__BackingField;
|
||||
@ -4175,6 +4175,8 @@ namespace app {
|
||||
struct String* alias;
|
||||
int32_t order;
|
||||
bool isForceClientSynced;
|
||||
int32_t LBLOKJMMJJP;
|
||||
bool MAHNGBKEEAD;
|
||||
struct ComponentManager* _logicComponentManager;
|
||||
struct ComponentManager* _visualComponentManager;
|
||||
bool _isInited;
|
||||
@ -4184,12 +4186,12 @@ namespace app {
|
||||
struct EntityQueryIndex* _queryIndex;
|
||||
struct AbilityComponentProxy* _abilityProxy;
|
||||
struct TokenManager* _tokenMgr;
|
||||
VisionType__Enum _MCNHBKKJDCL_k__BackingField;
|
||||
VisionType__Enum _NLFDIGCIFIA_k__BackingField;
|
||||
bool _createDuringReconnectingSceneInitFinish_k__BackingField;
|
||||
bool _isCleared;
|
||||
bool _checkRemoveifCached_k__BackingField;
|
||||
bool _hasAddedInitialComponents;
|
||||
float BNPPLOPNGLD;
|
||||
float HLJJGAOMCGC;
|
||||
bool _isEntityReady;
|
||||
struct Action_1_BaseEntity_* onComponentInitPostCallback;
|
||||
struct Action_1_BaseEntity_* onEntityReadyPreCallback;
|
||||
@ -4228,8 +4230,8 @@ namespace app {
|
||||
EntityType__Enum_1 entityType;
|
||||
bool _isAuthority;
|
||||
uint32_t authorityPeerId;
|
||||
bool FEFIECBENHD;
|
||||
bool MGNKEDPIJKG;
|
||||
bool LODAGLOBAMF;
|
||||
bool DEMKIIJDAAC;
|
||||
struct HashList_1_BaseComponent_* _componentsForEntityTickManager;
|
||||
float _lastTickTime_k__BackingField;
|
||||
struct List_1_BaseEntity_BaseEntity_ComponentInitNotifyData_* _notifyListOnComponentInit;
|
||||
@ -4243,13 +4245,13 @@ namespace app {
|
||||
struct Action_3_UnityEngine_TickState_Boolean_Boolean_* onAnimatorTickStateChange;
|
||||
struct HashList_1_IRenderable_* _extraRenderers;
|
||||
struct HashSet_1_IRequestOwnerEntityNoPauseTask_* _noPauseTaskRequests;
|
||||
bool PNBKIOPIIKA;
|
||||
bool IMKKHNIODFJ;
|
||||
bool AHKEFAMPGBJ;
|
||||
bool KPEBDCGGBGE;
|
||||
TickState__Enum _currentAnimatorTickState;
|
||||
struct EntityTickBalanceProxy* _tickBalanceProxy;
|
||||
bool isKinematicRigidbody;
|
||||
bool _PNECEMJLAHN_k__BackingField;
|
||||
bool _IFOBCICMOJM_k__BackingField;
|
||||
bool _bIgnoreIntervalTick_k__BackingField;
|
||||
bool _AFKDABPOMLB_k__BackingField;
|
||||
float __fullTickSqrMag_k__BackingField;
|
||||
int32_t _greaterToDisableInterval_k__BackingField;
|
||||
struct Func_1_Single_* _getBalanceTickDeltaTimeHandler;
|
||||
@ -4311,18 +4313,18 @@ namespace app {
|
||||
struct FixedFloatStack* _massRatio;
|
||||
bool _enableSetPostiion;
|
||||
struct Vector3 _lastPosInParent;
|
||||
struct Collider__Array* LIFJOPNILOC;
|
||||
int32_t LPNNDJDEGMI;
|
||||
int32_t GFMAMAGCBNE;
|
||||
int32_t IPKBDFGENOE;
|
||||
bool _isForceDisableEffect;
|
||||
bool _isActorHided;
|
||||
bool _isRoomHided;
|
||||
struct Vector3 LMBBHMDGPGE;
|
||||
struct Quaternion BFHGMCMIANA;
|
||||
float LMACHNHENOB;
|
||||
bool FJBBJDDFOIA;
|
||||
struct Vector3 PDCOCJPHGAK;
|
||||
struct Collider__Array* JFCGANLNHPN;
|
||||
int32_t JJJMCJIFFBM;
|
||||
int32_t LNECJMABKIH;
|
||||
int32_t EICAFOKBIPN;
|
||||
bool KJFPMNMJPJA;
|
||||
bool CLFLKBNIMOK;
|
||||
bool OECPMFJFHDB;
|
||||
struct Vector3 IHBCGPKALHL;
|
||||
struct Quaternion JOCEPMPLAAG;
|
||||
float JDCJJGPMLEN;
|
||||
bool ONMFCCDOJHO;
|
||||
struct Vector3 PPAFPACBENC;
|
||||
struct RuntimeAnimatorController* _authorityRuntimeAnimatorController;
|
||||
struct RuntimeAnimatorController* _remoteRuntimeAnimatorController;
|
||||
uint32_t _authorityRuntimeAnimatorHandler;
|
||||
@ -4909,12 +4911,12 @@ namespace app {
|
||||
struct GameObject* playerIndicator;
|
||||
struct RectTransform* playerIndicatorParent;
|
||||
struct MonoMapCursor* _monoMapCursor;
|
||||
struct InputField* _customMarkTipsInputField;
|
||||
struct MonoInputFieldExtention* _customMarkTipsInputField;
|
||||
struct MonoMaterialItemRow* _resin;
|
||||
struct RectTransform* _cycleDungeonLookupGrp;
|
||||
struct MonoUIContainer* _cycleDungeonLookupToggle;
|
||||
struct Text* _cycleDungeonLookupText;
|
||||
struct List_1_Queue_1_MoleMole_MonoMapMark_* KEIOHDAFIOC;
|
||||
struct List_1_Queue_1_MoleMole_MonoMapMark_* LMNPEFNMFIJ;
|
||||
struct GameObject* _exploreDegreeGrp;
|
||||
struct Text* _exploreArea;
|
||||
struct Text* _exploreDegree;
|
||||
@ -4933,7 +4935,7 @@ namespace app {
|
||||
struct Button_1* homeworldVisitorBtn;
|
||||
struct Text* _homeworldVisitorLabel;
|
||||
struct MonoUIContainer* _homeworldVisitorPS4Container;
|
||||
struct Animator* NFGDFFBFOCF;
|
||||
struct Animator* _cursorAnimator;
|
||||
};
|
||||
|
||||
struct MonoInLevelMapPage {
|
||||
@ -5011,9 +5013,10 @@ namespace app {
|
||||
uint32_t _dungeonIconTipsHandle;
|
||||
struct GameObject* _dungeonIconTips;
|
||||
struct GeneralMarkData* generalMapData;
|
||||
bool NLCJDMBMKPC;
|
||||
bool ADIBPKEGJOK;
|
||||
int32_t floor;
|
||||
bool _up;
|
||||
struct UnityAction_1_UnityEngine_RectTransform_* OODIIHNIPFN;
|
||||
struct String* _currEffectName;
|
||||
struct ParticleSystem* _currEffect;
|
||||
float markAreaRadius;
|
||||
@ -5094,7 +5097,7 @@ namespace app {
|
||||
EnterGotoByPortal = 0x00000008,
|
||||
EnterSelfHome = 0x00000009,
|
||||
EnterOtherHome = 0x0000000a,
|
||||
FCBBIIAOAGG = 0x0000000b,
|
||||
EnterGotoRecreate = 0x0000000b,
|
||||
};
|
||||
|
||||
struct UInt32__Array {
|
||||
@ -5257,6 +5260,7 @@ namespace app {
|
||||
Quick = 0x00000002,
|
||||
DirectlySetPos = 0x00000003,
|
||||
QuickWithoutPaimonReminder = 0x00000004,
|
||||
QuickV2 = 0x00000005,
|
||||
};
|
||||
|
||||
enum class MoleMole_NotifyTypes__Enum : int32_t {
|
||||
@ -6259,27 +6263,28 @@ namespace app {
|
||||
struct String* _activityLimitRegion;
|
||||
struct String* _homeworldLimitRegion;
|
||||
uint32_t _checkScenePointTimer;
|
||||
uint32_t _HENAPPPHGFA_k__BackingField;
|
||||
uint32_t _IDKLCPBKKMC_k__BackingField;
|
||||
uint32_t _HAIMNNOMKFE_k__BackingField;
|
||||
uint32_t _BEGGBAFACOG_k__BackingField;
|
||||
uint32_t _LJCHGOJHIBN_k__BackingField;
|
||||
uint32_t _CEJAIKKNKEF_k__BackingField;
|
||||
uint32_t _OOBPJNGLEFD_k__BackingField;
|
||||
uint32_t _MKEGCMJMGPN_k__BackingField;
|
||||
uint32_t _POPAMGIKPFK_k__BackingField;
|
||||
uint32_t _NADDOMFDIMH_k__BackingField;
|
||||
uint32_t _JEKJBGCPAPP_k__BackingField;
|
||||
uint32_t _BILGKHAIEPL_k__BackingField;
|
||||
bool _isTowerUnlocked_k__BackingField;
|
||||
struct List_1_System_UInt32_* dungeonDataLevelConfigIdList;
|
||||
struct Nullable_1_UnityEngine_Vector3_ curClientAvatarRebornPoint;
|
||||
struct Dictionary_2_System_UInt32_Dictionary_2_System_UInt32_System_UInt32_* toBeExploredDungeonEntryDic;
|
||||
struct Dictionary_2_System_UInt32_Dictionary_2_System_UInt32_System_UInt32_* canNotBeExploredDungeonEntryDic;
|
||||
struct HashSet_1_System_UInt32_* PGNGEOMEDEI;
|
||||
struct HashSet_1_System_UInt32_* HPNBAKBANGB;
|
||||
struct Dictionary_2_System_UInt32_MoleMole_Config_ConfigScene_* _cfgSceneDic;
|
||||
struct Dictionary_2_System_UInt32_Dictionary_2_System_UInt32_MoleMole_Config_ConfigScenePoint_* _cfgPointDic;
|
||||
struct List_1_System_UInt32_* _currTransPointList;
|
||||
struct List_1_System_UInt32_* _currFunctionalPointList;
|
||||
struct Dictionary_2_System_UInt32_Dictionary_2_System_UInt32_MoleMole_MapModule_LJADJIPKKIK_* CJJCAAMGCOM;
|
||||
struct Dictionary_2_System_UInt32_Dictionary_2_System_UInt32_MoleMole_MapModule_LPANCMBHIPC_* DKHELEOJLPD;
|
||||
uint32_t _activityPlayId_k__BackingField;
|
||||
float MAX_IN_LIMIT_REGION_TIME;
|
||||
float _startInLimitRegionTime;
|
||||
uint32_t _homeworldRegionSceneId_k__BackingField;
|
||||
uint32_t _FNGKDENFBGH_k__BackingField;
|
||||
struct Dictionary_2_System_UInt32_Dictionary_2_System_UInt32_MoleMole_MapModule_MoleMole_MapModule_CityData_* _cityDataDic;
|
||||
struct Dictionary_2_System_UInt32_Dictionary_2_System_UInt32_MoleMole_MapModule_MoleMole_MapModule_WorldAreaData_* _worldAreaDataDic;
|
||||
struct Dictionary_2_System_UInt32_System_UInt32_* _areaId2ExplorePointDic;
|
||||
@ -6294,7 +6299,7 @@ namespace app {
|
||||
struct HashSet_1_System_UInt32_* _activatedDungeonWayPoint;
|
||||
bool _dungeonEntryOpen;
|
||||
struct Dictionary_2_System_UInt32_System_Boolean_* _sceneUnlockDic;
|
||||
struct Dictionary_2_System_UInt32_List_1_System_UInt32_* _sceneTagList;
|
||||
struct Dictionary_2_System_UInt32_List_1_System_UInt32_* FOAIHHEHFHF;
|
||||
struct List_1_MoleMole_MapModule_MoleMole_MapModule_ScannerInfo_* _scannerInfoList;
|
||||
struct List_1_MoleMole_MapAreaMistData_* _mistDataList;
|
||||
struct List_1_MoleMole_MapAreaMistData_* _openMistDataList;
|
||||
@ -7246,7 +7251,7 @@ namespace app {
|
||||
ElementReactionType__Enum elementReactionType;
|
||||
struct ConfigAttackProperty* _attackerAttackProperty;
|
||||
void* modifiedAttackProperty;
|
||||
float AMJDLLOENNI;
|
||||
float BNKPGFGKGBF;
|
||||
ElementType__Enum _origElementType;
|
||||
float _origElementDurability;
|
||||
float endureDelta;
|
||||
@ -7259,11 +7264,11 @@ namespace app {
|
||||
float bulletFlyTime;
|
||||
struct ConfigBulletWane* bulletWane;
|
||||
int32_t rejectState;
|
||||
struct SafeUInt32 AADHIMJJCHK;
|
||||
struct SafeUInt32 CMNNNKEGKFI;
|
||||
struct SafeUInt32 KBDMDNEKOLK;
|
||||
struct SafeUInt32 HLIIHHNHHNP;
|
||||
struct SafeUInt32 EMBFNJJJPNG;
|
||||
struct SafeUInt32 MFFILNNNLDL;
|
||||
struct SafeUInt32 EAGOJOOBMJO;
|
||||
struct SafeUInt32 AMJNKBHPBDE;
|
||||
struct SafeUInt32 OCFODICMFFH;
|
||||
struct SafeUInt32 EDOGNDNPJDB;
|
||||
struct Vector3 hitRetreatDir;
|
||||
};
|
||||
|
||||
@ -8997,7 +9002,6 @@ namespace app {
|
||||
struct MJNGIMLAOFN* _spriteLoadProxy;
|
||||
};
|
||||
|
||||
//BLDKFDKIPLL__Fields
|
||||
struct BasePageContext__Fields {
|
||||
struct BaseContext__Fields _;
|
||||
struct List_1_BaseDialogContext_* dialogContextList;
|
||||
@ -9035,31 +9039,31 @@ namespace app {
|
||||
struct Vector3 _customMarkWorldPos;
|
||||
struct String* _customMarkTitle;
|
||||
MoleMole_Config_MarkIconType__Enum _customMarktype;
|
||||
bool KHDDHMIGLMH;
|
||||
bool AGABBDCCGPJ;
|
||||
bool GBCMNPNHCBH;
|
||||
bool IFJIPEEPJJI;
|
||||
bool OKNKCOJCKLN;
|
||||
bool OGKHNHIHOFP;
|
||||
uint32_t _customMarkTrackMonsterID;
|
||||
uint32_t _customMarkTrackQuestID;
|
||||
MoleMole_CustomMarkTrackReasonType__Enum NHIIHLLCJAI;
|
||||
MoleMole_CustomMarkTrackReasonType__Enum _customMarkTrackReasonType;
|
||||
bool _isAdventureHandbookOpened;
|
||||
float _slideValue;
|
||||
struct MoleMole_ResinViewComponent* _resinComp;
|
||||
struct MoleMole_ZoomAudioComponent* _zoomAudioComp;
|
||||
struct Dictionary_2_MoleMole_MonoMapMark_UnityEngine_GameObject_* trackingIndictor;
|
||||
struct Coroutine* ELELLFBCPFM;
|
||||
bool _NJHAEHLFGNP_k__BackingField;
|
||||
bool JNBIIIHNPOL;
|
||||
float FMNNMKICFCN;
|
||||
struct Vector2 JIEJCHOKMCH;
|
||||
float EGDCGHPCIGD;
|
||||
float NNGIPKNIHHL;
|
||||
struct Vector2 MABOFOAAIDK;
|
||||
float OOOKLDFFEOK;
|
||||
bool DAMOBDBBBPD;
|
||||
struct Coroutine* JFIOMECANNL;
|
||||
bool _LFIJLCKEKMP_k__BackingField;
|
||||
bool DJMGCGDBLHD;
|
||||
float PKBLMNBGCLL;
|
||||
struct Vector2 ENLNCLPCFHE;
|
||||
float CPFIIODOHKA;
|
||||
float MOJEDIFFFIJ;
|
||||
struct Vector2 ADLDFCKPLGI;
|
||||
float EMOHKNNFADF;
|
||||
bool FHBMGCDNMBE;
|
||||
struct Vector2 _currRectPos;
|
||||
struct Vector2 _currRectSize;
|
||||
struct Dictionary_2_System_UInt32_UnityEngine_GameObject_* _companionIndicators;
|
||||
struct List_1_System_UInt32_* EDDEMHGPOBD;
|
||||
struct List_1_System_UInt32_* GPLMGCNDKOP;
|
||||
struct GameObject* _playerIndicator;
|
||||
struct Vector2 _newPos;
|
||||
struct Dictionary_2_System_UInt32_UnityEngine_GameObject_* _questAreaMarkDic;
|
||||
@ -9085,14 +9089,16 @@ namespace app {
|
||||
MoleMole_InLevelMapPageContext_MoleMole_InLevelMapPageContext_MarkTipsContentType__Enum _markTipsContentType;
|
||||
struct List_1_MoleMole_BagItem_* _reward;
|
||||
struct List_1_MoleMole_Config_IdCountStrConfig_* _rewardPreviewList;
|
||||
float BCHEAHAGENA;
|
||||
uint32_t _dungeonEntryPointID;
|
||||
float IOHJENGJBFM;
|
||||
uint32_t HHIHNGGOIFP;
|
||||
struct MoleMole_Config_DungeonEntry* _selectedDungeonEntry;
|
||||
MoleMole_InLevelMapPageContext_MoleMole_InLevelMapPageContext_DungeonEntryState__Enum _selectDungeonEntryState;
|
||||
struct Coroutine* _updateDungeonCooldownTipsCoroutine;
|
||||
struct MoleMole_ItemTipsDialogHelper _itemTipsHelper;
|
||||
struct Coroutine* _updateFarmFieldCoroutine;
|
||||
struct GameObject* _newMaxLevelGO;
|
||||
bool IICOGPJKJKL;
|
||||
bool LIGALMCPKNI;
|
||||
struct MoleMole_RewardPreviewComponent* _moonfinTrialRewardPreviewComponent;
|
||||
struct Coroutine* _updateReviveCooldownCoroutine;
|
||||
int32_t _selectedMapTagIndex;
|
||||
@ -9101,8 +9107,8 @@ namespace app {
|
||||
int32_t _customMarkCount;
|
||||
struct MoleMole_Config_MarkIconType__Enum__Array* _customMarkIcons;
|
||||
struct Vector2 _currMapPos;
|
||||
struct Dictionary_2_System_UInt32_List_1_MoleMole_InLevelMapPageContext_BKKFEMNNBMG_* LOLNIIFFJON;
|
||||
int32_t MAPJENKCNNE;
|
||||
struct Dictionary_2_System_UInt32_List_1_MoleMole_InLevelMapPageContext_EACHJPIDJND_* IOLJGOCGPHB;
|
||||
int32_t GBKLEGIFLAI;
|
||||
};
|
||||
|
||||
struct InLevelMapPageContext {
|
||||
@ -9138,8 +9144,8 @@ namespace app {
|
||||
struct List_1_SelectItemParam_* _selectParamList;
|
||||
struct Action* _updateGrpSelectBottom;
|
||||
struct List_1_System_UInt32_* _selectDialogIdList;
|
||||
bool EHOPIEOHBIJ;
|
||||
bool IEFCCCNLHFG;
|
||||
bool OBDPLKKDFBN;
|
||||
bool GGFOHLGGCHI;
|
||||
struct Action* _onFreeClick;
|
||||
float _interactableTime;
|
||||
float _autoTalkInteractableTime;
|
||||
@ -9456,26 +9462,26 @@ namespace app {
|
||||
|
||||
struct BaseMoveSyncPlugin__Fields {
|
||||
struct BaseComponentPlugin__Fields _;
|
||||
struct JEACJCEKBMO__Array* JFHIPAJNCEH;
|
||||
struct MoveSyncTask moveSyncTask;
|
||||
int32_t EBAFCLPDNOA;
|
||||
struct PAGLNCJFJAB* EGOGHHCEKBI;
|
||||
uint32_t BMEKGDMGLDM;
|
||||
float BPNLDBMLCPG;
|
||||
int32_t IMGAJKMBICM;
|
||||
int32_t JFNJPLBNEAH;
|
||||
uint64_t LDHCFEHMENK;
|
||||
struct MoveSyncTask PKJLBFAGDPG;
|
||||
float KHDFGOBLNOH;
|
||||
bool BAHIDGDKDPG;
|
||||
bool MPNMLBJNIJK;
|
||||
float BPNMMCBBPDO;
|
||||
uint32_t DANEEGOIAOE;
|
||||
struct HBGKJGFOBDG* HHAPKOKPBPN;
|
||||
bool KCODNABDGKC;
|
||||
uint64_t PHBBAMKNKEH;
|
||||
uint32_t JEKLOEMBBJB;
|
||||
struct MoveSyncTask GPOABHBBEGL;
|
||||
struct Proto_MotionInfo__Array* _motion;
|
||||
struct MoveSyncTask _syncTask;
|
||||
MotionState__Enum _prevMotionState;
|
||||
struct MoleMole_VCBaseMove* _ownerMove;
|
||||
uint32_t _lod;
|
||||
float _lastSendSyncTaskTime;
|
||||
int32_t _fixedTickCount;
|
||||
int32_t _intervalVelocityCheckCount;
|
||||
uint64_t _intervalVelocityCheckBits;
|
||||
struct MoveSyncTask _lastSendMoveSyncTask;
|
||||
float _intervalTime;
|
||||
bool _canIgnoreTickSync;
|
||||
bool _reliableSendWhenSameComparablePart;
|
||||
float _reliableSendWhenSameComparablePartTime;
|
||||
uint32_t _lastSendReliabledPacketSeq;
|
||||
struct MoleMole_LCSyncMotion* _lcSyncMotion;
|
||||
bool _hasInitializedSyncMove;
|
||||
uint64_t _lastHandledTaskTimeStamp;
|
||||
uint32_t _lastHandledReliableTaskSeq;
|
||||
struct MoveSyncTask tempPeekGetMoveSyncTask;
|
||||
};
|
||||
|
||||
struct BaseMoveSyncPlugin {
|
||||
@ -9485,17 +9491,17 @@ namespace app {
|
||||
};
|
||||
|
||||
struct __declspec(align(8)) ADOCDLJKPGF__Fields {
|
||||
struct Dictionary_2_UniRx_Tuple_2_Dictionary_2_System_UInt32_MoleMole_IndexHandleObjectList_1_* PKPGAJELFJP;
|
||||
struct Dictionary_2_System_UInt32_MoleMole_IndexHandleObjectList_1__2* EPNNKHDPMKN;
|
||||
struct Dictionary_2_System_UInt32_Dictionary_2_System_Type_ADOCDLJKPGF_NCKPKBOOPAE_* NHLMDJCPBOI;
|
||||
struct List_1_NLHGPLIGNNJ_* OCCMKONNAFF;
|
||||
struct List_1_NLHGPLIGNNJ_* ODMMGNLPPKO;
|
||||
struct List_1_NLHGPLIGNNJ_* FMJOCJEEDNA;
|
||||
struct Dictionary_2_System_Type_MoleMole_IndexHandleObjectList_1_* BGCNGICCMNG;
|
||||
bool IKIHCFFFACC;
|
||||
struct List_1_UniRx_Tuple_5__1* AOENJPJCHCP;
|
||||
int32_t AANDAKJMONI;
|
||||
bool GEPOJPNFMKO;
|
||||
struct Dictionary_2_System_ValueTuple_2_Dictionary_2_System_UInt32_MoleMole_IndexHandleObjectList_1_* JJHMKFJMIFN;
|
||||
struct Dictionary_2_System_UInt32_MoleMole_IndexHandleObjectList_1__2* EABFBNIMFPP;
|
||||
struct Dictionary_2_System_UInt32_Dictionary_2_System_Type_MoleMole_EventManager_ListenerRegistry_* _runtimeId2ListenerDic;
|
||||
struct List_1_MoleMole_BaseEvent_* _queuedFrameEvents;
|
||||
struct List_1_MoleMole_BaseEvent_* _queuedNextEvents;
|
||||
struct List_1_MoleMole_BaseEvent_* _queuedNextEventsToAdd;
|
||||
struct Dictionary_2_System_Type_MoleMole_IndexHandleObjectList_1_* _evtListeners;
|
||||
bool _isStopped;
|
||||
struct List_1_System_ValueTuple_5__1* IEJKHEKFBII;
|
||||
int32_t BGHBKPIABOK;
|
||||
bool _dispatchPaused;
|
||||
};
|
||||
|
||||
struct MoleMole_EventManager {
|
||||
@ -9509,14 +9515,15 @@ namespace app {
|
||||
struct Action_3_BaseEntity_Config_AddGlobalValue_ActorAbility_* _addGlobalValueHandlerClosureDelegate;
|
||||
struct Action_3_BaseEntity_Config_SetGlobalValue_ActorAbility_* _setGlobalValueHandlerClosureDelegate;
|
||||
struct Action_3_BaseEntity_Config_MultiplyGlobalValue_ActorAbility_* _multiplyGlobalValueHandlerClosureDelegate;
|
||||
struct Action_4_BaseEntity_Config_SetTargetNumToGlobalValue_ActorAbility_Single_* BFCGFMBGIHB;
|
||||
struct Action_4_BaseEntity_String_Single_GJKAGOLAHKK_* OJKOMJEBCLM;
|
||||
struct Action_4_BaseEntity_Config_MultiplyGlobalValue_ActorAbility_Single_* MEEAPCINNBE;
|
||||
struct Action_4_BaseEntity_String_Single_CPKJHKOJDIF_* LLAIOCNHNPM;
|
||||
struct List_1_MonoEffectProxyHandle_* _effectProxyListCache;
|
||||
struct List_1_MonoEffectProxyHandle_* _effectProxyListCacheForChangFollowDampTime;
|
||||
struct List_1_UnityEngine_Vector3_* _pushedPosList;
|
||||
struct LCAbility* _owner;
|
||||
struct List_1_ActorAbility_* _appliedAbilities;
|
||||
struct Dictionary_2_System_UInt32_System_Int32_* _appliedAbilitiesIndex;
|
||||
struct Dictionary_2_System_String_ActorAbility_* CKDBIBGCPOB;
|
||||
uint32_t nextValidAbilityID;
|
||||
struct List_1_ActorModifier_* _appliedModifiers;
|
||||
struct List_1_ActorModifier_* _deadModifiers;
|
||||
@ -9556,7 +9563,7 @@ namespace app {
|
||||
struct Dictionary_2_System_Int32_List_1_BaseAbilityMixin_* _listenEventMixins;
|
||||
struct List_1_BaseAbilityMixin_* _addListenEventMixins;
|
||||
struct List_1_BaseAbilityMixin_* _removeListenEventMixins;
|
||||
int32_t ECLCGLCLPPD;
|
||||
int32_t CGNCPHPNGDB;
|
||||
bool IsImmuneDebuff;
|
||||
bool _isDuringInitAbility_k__BackingField;
|
||||
bool _isDuringChangeAbility_k__BackingField;
|
||||
@ -9592,7 +9599,7 @@ namespace app {
|
||||
FAIL_COOLDOWN = 0x0000000c,
|
||||
};
|
||||
|
||||
struct __declspec(align(8)) GMNHONOINDB__Fields {
|
||||
struct __declspec(align(8)) MoleMole_CharacterModule__Fields {
|
||||
struct Dictionary_2_System_UInt32_Dictionary_2_System_Int32_List_1_CFKBGDNLDGP_* MFEPPBMCAGP;
|
||||
};
|
||||
|
||||
@ -9680,64 +9687,68 @@ namespace app {
|
||||
struct BEKFICFOHKL__Fields fields;
|
||||
};
|
||||
|
||||
struct NEOGDEDNDHF__Fields {
|
||||
struct GMNHONOINDB__Fields _;
|
||||
struct MoleMole_PlayerModule__Fields {
|
||||
struct MoleMole_CharacterModule__Fields _;
|
||||
struct AccountDataItem* _accountData_k__BackingField;
|
||||
struct HBFICKPEILE* openState;
|
||||
struct PlayerOpenStateData* openState;
|
||||
uint32_t curWorldType;
|
||||
uint32_t curSceneID;
|
||||
struct OGNHDKJOONG* _curSceneConfig;
|
||||
bool isSereverLevelPaused;
|
||||
struct Config_SceneExcelConfig* _curSceneConfig;
|
||||
bool isServerLevelPaused;
|
||||
uint32_t extraAbilityId;
|
||||
bool extraAbilityEnable;
|
||||
uint64_t extraAbilityUseTime;
|
||||
float AJMFBGNGPIB;
|
||||
float KJKAPGLEELE;
|
||||
struct List_1_UniRx_Tuple_3_* INANHBPCBLC;
|
||||
bool MAOHENNPOMB;
|
||||
bool HEJLGFNHKND;
|
||||
bool NABCGFBLKDJ;
|
||||
bool PNGMLKJFKND;
|
||||
bool MNMODNDPIDD;
|
||||
uint32_t OODBAMHAGPO;
|
||||
uint32_t JPKIAEFDHMD;
|
||||
bool NFMOCKLFAOF;
|
||||
float JJLIHANGKEO;
|
||||
struct Dictionary_2_System_UInt64_System_UInt32_* ICPIOBFBPGA;
|
||||
struct LGPKIADMOBE_System_UInt64_CJFLLIKJGLF_* BDBFEGIMOFI;
|
||||
struct DPHDLLFCIBC* HDOGLGNGMAP;
|
||||
struct PHHEDBDLADE* ANDABFFFNHE;
|
||||
struct Action_1_Single_* KGABFCPEBDG;
|
||||
struct Dictionary_2_System_UInt32_System_UInt32_* EPNCJKKPNIN;
|
||||
struct List_1_System_UInt64_* IDPDPDAENDP;
|
||||
bool HJOJBIBHGEC;
|
||||
struct List_1_JBONEPGMKAD_* ODDFKLCINLC;
|
||||
struct Coroutine* FCJOEAPBMHB;
|
||||
Miscs_ChangeAvatarFailType__Enum FDFCHGCAIPL;
|
||||
uint32_t MFKCKBGCADE;
|
||||
struct String* DMMKLMDFDLE;
|
||||
struct String* JKFKIOAJPKF;
|
||||
struct Dictionary_2_System_UInt32_System_UInt32_* FMMDIGIIBJB;
|
||||
float NDFMECJGCKK;
|
||||
float BHAMGAPDFEH;
|
||||
uint32_t AFIIDKIKKMB;
|
||||
struct List_1_System_UInt32_* DNKMPLJPOHG;
|
||||
uint32_t MAPMNIDOJCG;
|
||||
bool MIMGJGCADKB;
|
||||
uint32_t LCMMMGHFEGG;
|
||||
uint32_t DCGJMGBIDLD;
|
||||
uint32_t GGJMEBPNECC;
|
||||
uint32_t PIJHFCGJBJM;
|
||||
struct CAIMHKHHLHK_LJBGLAADLNC_* FFMOHPPEKLN;
|
||||
struct CAIMHKHHLHK_LJBGLAADLNC_* BLPNAPNOPFN;
|
||||
uint64_t ONAPAACFOBM;
|
||||
struct JIBKJBJNFED* LGADGGJMODA;
|
||||
float lastSendChangeAvatarTime;
|
||||
float lastPressSkillButtonTime;
|
||||
float PMAMAHGBLBJ;
|
||||
struct List_1_System_ValueTuple_3_* teamEntityAbilitiesFromServer;
|
||||
bool IMCBNAMPBPG;
|
||||
bool PNCFBAOIKHB;
|
||||
bool IBNOIPGDGAG;
|
||||
bool MILPALJGOLD;
|
||||
bool PNBHCGNHOFB;
|
||||
uint32_t ALCHAOANODE;
|
||||
uint32_t FPBJOLBEJGO;
|
||||
bool enterSceneFromLogin;
|
||||
float _nextLoginReqTime;
|
||||
struct Dictionary_2_System_UInt64_System_UInt32_* _backgroundAvatarRecoverTime;
|
||||
struct Google_Protobuf_Collections_MessageMapField_2_System_UInt64_Proto_AvatarExpeditionInfo_* _currExpeditionInfo;
|
||||
struct Proto_AvatarExpeditionAllDataRsp* _currAllDataRsp;
|
||||
struct Proto_ExclusiveRuleNotify* _exclusiveRuleNotify;
|
||||
struct Action_1_Single_* LENAIDKELJE;
|
||||
void* DDFMMKJJENE;
|
||||
void* CHNAOGEHNGB;
|
||||
struct Dictionary_2_System_UInt32_System_UInt32_* HENIBLEKILJ;
|
||||
struct List_1_System_UInt64_* _teamToLoad;
|
||||
bool needRecoverAbilities;
|
||||
struct List_1_Proto_SceneEntityInfo_* _needAppearAvatars;
|
||||
struct Coroutine* _changeAvatarCoroutine;
|
||||
Miscs_ChangeAvatarFailType__Enum _failType;
|
||||
uint32_t _sceneOwnerUid;
|
||||
struct String* CBTEST_TOOL_PATH;
|
||||
struct String* WATER_MASK_PATH;
|
||||
struct Dictionary_2_System_UInt32_System_UInt32_* _openstateDic;
|
||||
float _satiationCriticalValue;
|
||||
float _satiationRecoverySpeed;
|
||||
uint32_t _nextRecoveryTimestampOfResin;
|
||||
struct List_1_System_UInt32_* _buyResinCost;
|
||||
uint32_t _dailyBoughtCountOfResin;
|
||||
bool _resinParamsParsed;
|
||||
uint32_t _resinTotalLimit;
|
||||
uint32_t _autoRecoveryResinLimit;
|
||||
uint32_t _resinAutoRecoverySpeed;
|
||||
uint32_t _resinCountPerPurchase;
|
||||
struct Google_Protobuf_Collections_RepeatedMessageField_1_Proto_FriendBrief_* _tempFriendBriefListInGame;
|
||||
struct Google_Protobuf_Collections_RepeatedMessageField_1_Proto_FriendBrief_* _tempFriendBriefListPSN;
|
||||
uint64_t _lastGetPlayerFriendListTime;
|
||||
struct Proto_AntiAddictNotify* _antiAddictNotify;
|
||||
struct GeneralDialogContext* KIEGHJDFLFD;
|
||||
};
|
||||
|
||||
struct MoleMole_PlayerModule {
|
||||
struct PlayerModule__Class* klass;
|
||||
MonitorData* monitor;
|
||||
struct NEOGDEDNDHF__Fields fields;
|
||||
struct MoleMole_PlayerModule__Fields fields;
|
||||
};
|
||||
|
||||
enum class MapManager_FEDPCJIHAJJ__Enum : int32_t {
|
||||
@ -9801,7 +9812,7 @@ namespace app {
|
||||
struct MHCEDJLGNMG__Fields fields;
|
||||
};
|
||||
|
||||
struct ANPOFFEGJHG__Fields {
|
||||
struct GadgetEntity__Fields {
|
||||
struct BaseEntity__Fields _;
|
||||
uint32_t groupId;
|
||||
uint32_t markFlag;
|
||||
@ -9826,7 +9837,7 @@ namespace app {
|
||||
struct GadgetEntity {
|
||||
struct GadgetEntity__Class* klass;
|
||||
MonitorData* monitor;
|
||||
struct ANPOFFEGJHG__Fields fields;
|
||||
struct GadgetEntity__Fields fields;
|
||||
};
|
||||
|
||||
struct BaseComponent__Array {
|
||||
@ -10056,8 +10067,7 @@ namespace app {
|
||||
struct LCChestPlugin__Fields fields;
|
||||
};
|
||||
|
||||
struct __declspec(align(8)) FKHDAEKGMKC__Fields
|
||||
{
|
||||
struct __declspec(align(8)) MoleMole_ScenePropManager__Fields {
|
||||
struct ScenePropEffectConfigs* _scenePropEffectConfigs;
|
||||
uint32_t _scenePropEffectConfigsHandle;
|
||||
struct SceneChairConfigs* _sceneChairConfigs;
|
||||
@ -10066,35 +10076,35 @@ namespace app {
|
||||
uint32_t _sceneBushConfigsHandle;
|
||||
struct SceneTreeConfigs* _sceneTreeConfigs;
|
||||
uint32_t _sceneTreeConfigsHandle;
|
||||
struct SceneStoneTintConfigs* IJAJFDDPIBF;
|
||||
uint32_t MPGIOKCAEDG;
|
||||
struct Dictionary_2_System_Int32_IIJMGCIOIAP_* _treeBushCollection;
|
||||
struct List_1_NAKCOANCOHK_* _treeBushList;
|
||||
struct SceneStoneTintConfigs* AIOHDMBGHEI;
|
||||
uint32_t LCLFKLDHKIM;
|
||||
struct Dictionary_2_System_Int32_MoleMole_ZOrderCollection_3_* _treeBushCollection;
|
||||
struct List_1_MoleMole_ICombatSceneProp_* _treeBushList;
|
||||
struct Dictionary_2_System_Int32_UnityEngine_Vector3_* _treeBushId2Pos;
|
||||
struct Vector3 _rangeQueryLen;
|
||||
struct Dictionary_2_System_Int32_NAKCOANCOHK_* _scenePropDict;
|
||||
struct Dictionary_2_System_Int32_ECGLPBEEEAA_* _treeTypeDict;
|
||||
struct Dictionary_2_System_Int32_MoleMole_ICombatSceneProp_* _scenePropDict;
|
||||
struct Dictionary_2_System_Int32_MoleMole_Config_TreeType_* _treeTypeDict;
|
||||
struct List_1_MoleMole_MonoEnviroLight_* _pointLights;
|
||||
struct List_1_MoleMole_MonoEnviroCityLight_* _cityLights;
|
||||
struct List_1_NPOOODHAHMF_* BAKKEOKNFOI;
|
||||
struct Vector3 _lastSectorPos;
|
||||
struct FKHDAEKGMKC_DEGEMNHILIP__Array* _treeLeafInfos;
|
||||
struct MoleMole_ScenePropManager_MoleMole_ScenePropManager_TreeLeafInfo__Array* _treeLeafInfos;
|
||||
int32_t _treeLeafNum;
|
||||
struct MaterialPropertyBlock* _mpb;
|
||||
struct Camera* _mainCam;
|
||||
struct List_1_UnityEngine_Material_* _leafDitherMaterials;
|
||||
struct Dictionary_2_System_Int32_UnityEngine_Vector3__1* _shakeAnims;
|
||||
struct List_1_NAKCOANCOHK_* _playingScenePropShakes;
|
||||
struct List_1_JNFKAAAPLGE_* _chairs;
|
||||
struct List_1_MoleMole_ICombatSceneProp_* _playingScenePropShakes;
|
||||
struct List_1_MoleMole_IChair_* _chairs;
|
||||
struct GameObject* iceBlockRoot;
|
||||
struct GameObject* _surfaceMeshObjectRoot;
|
||||
struct GameObject* _tileMeshObjectRoot;
|
||||
};
|
||||
|
||||
struct MoleMole_ScenePropManager
|
||||
{
|
||||
struct FKHDAEKGMKC__Class* klass;
|
||||
struct MoleMole_ScenePropManager {
|
||||
struct MoleMole_ScenePropManager__Class* klass;
|
||||
MonitorData* monitor;
|
||||
struct FKHDAEKGMKC__Fields fields;
|
||||
struct MoleMole_ScenePropManager__Fields fields;
|
||||
};
|
||||
|
||||
|
||||
@ -10212,30 +10222,29 @@ namespace app {
|
||||
bool has_value;
|
||||
};
|
||||
|
||||
struct IDPLOHKAJML__Fields {
|
||||
struct LCAbilityElement__Fields {
|
||||
struct LCBase__Fields _;
|
||||
struct Dictionary_2_System_Int32_List_1_MLAAELGDIJH_* _elementModifierMap;
|
||||
struct Action* _act;
|
||||
struct List_1_System_Nullable_1_* _modifierDurabilities;
|
||||
struct List_1_UniRx_Tuple_3__1* _elemAccuDurabilities;
|
||||
struct OJGKFFDAGON* _levelAbilityCom;
|
||||
struct OJGKFFDAGON* _selfLCAbility;
|
||||
struct KMALPDEBPFP* _lcAbilityState;
|
||||
struct DGLICFPOFBE* _vcBillboard;
|
||||
struct Dictionary_2_System_Int32_List_1_MoleMole_ActorModifier_* _elementModifierMap;
|
||||
struct Action* onElementModifierChanged;
|
||||
struct List_1_System_Nullable_1__2* _modifierDurabilities;
|
||||
struct List_1_System_ValueTuple_3__3* _elemOverloadDurabilities;
|
||||
struct MoleMole_LCAbility* _levelAbilityCom;
|
||||
struct MoleMole_LCAbility* _selfLCAbility;
|
||||
struct MoleMole_LCAbilityState* _lcAbilityState;
|
||||
struct MoleMole_VCBillboard* _vcBillboard;
|
||||
float _purgeRate;
|
||||
float _purgeIncement;
|
||||
bool _ignorePurgeRate;
|
||||
struct EDDKNGCGJFI* _grassScenePlugin;
|
||||
struct EADDBDCPBMJ* _waterScenePlugin;
|
||||
struct EBLDCCEGAOF* _bushScenePlugin;
|
||||
struct BDFMIJCPDIC* _shakeInterval;
|
||||
struct MoleMole_LevelSceneGrassPlugin* _grassScenePlugin;
|
||||
struct MoleMole_LevelSceneWaterPlugin* _waterScenePlugin;
|
||||
struct MoleMole_LevelSceneBushPlugin* _bushScenePlugin;
|
||||
struct MoleMole_EntityTimerReceiver* _shakeInterval;
|
||||
bool _showReactionText;
|
||||
struct String* elementDecrateGroup;
|
||||
bool BHDLGGOBAME;
|
||||
bool AKLPKDONCJH;
|
||||
struct Func_2_MLAAELGDIJH_Boolean_* NEMHEFJLFEA;
|
||||
struct Action_3_GLPNBMKEPPD_CCAMDLAOBAA_Nullable_1_UnityEngine_Vector3_* FDHMHGFNCFD;
|
||||
struct Action_3_GLPNBMKEPPD_CCAMDLAOBAA_Nullable_1_UnityEngine_Vector3_* NIHADNAGOND;
|
||||
bool LDAPBJPCDHC;
|
||||
struct Func_2_MoleMole_ActorModifier_Boolean_* HGAAHMCALBE;
|
||||
struct Action_3_MoleMole_Config_ElementReactionType_MoleMole_BaseEntity_Nullable_1_UnityEngine_Vector3_* GGOGFKDBFHJ;
|
||||
struct Action_3_MoleMole_Config_ElementReactionType_MoleMole_BaseEntity_Nullable_1_UnityEngine_Vector3_* MIIBJEAOIJI;
|
||||
struct Vector3 elementReactionPos;
|
||||
bool triggerFrozenBroken;
|
||||
float _lastCrystallizeTime;
|
||||
@ -10244,7 +10253,7 @@ namespace app {
|
||||
struct LCAbilityElement {
|
||||
struct LCAbilityElement__Class* klass;
|
||||
MonitorData* monitor;
|
||||
struct IDPLOHKAJML__Fields fields;
|
||||
struct LCAbilityElement__Fields fields;
|
||||
};
|
||||
|
||||
struct Camera__Fields {
|
||||
@ -10546,7 +10555,6 @@ namespace app {
|
||||
|
||||
struct GadgetInteractRsp__Fields {
|
||||
struct MessageBase_1__Fields _;
|
||||
int32_t retcode_;
|
||||
uint32_t gadgetEntityId_;
|
||||
InteractType__Enum interactType_;
|
||||
InterOpType__Enum opType_;
|
||||
@ -10761,35 +10769,42 @@ namespace app {
|
||||
struct LCCharacterCombat__Fields fields;
|
||||
};
|
||||
|
||||
struct __declspec(align(8)) LCAvatarCombat_OMIIMOJOHIP__Fields {
|
||||
enum class Config_MonitorType__Enum : int32_t {
|
||||
MONITOR_NEVER = 0x00000000,
|
||||
MONITOR_OFF_STAGE = 0x00000001,
|
||||
MONITOR_ON_STAGE = 0x00000002,
|
||||
MONITOR_ALWAYS = 0x00000003,
|
||||
};
|
||||
|
||||
struct __declspec(align(8)) MoleMole_LCAvatarCombat_MoleMole_LCAvatarCombat_SkillInfo__Fields {
|
||||
uint32_t skillID;
|
||||
struct AvatarSkillExcelConfig* config;
|
||||
struct Config_AvatarSkillExcelConfig* config;
|
||||
struct SafeFloat cdTimer;
|
||||
struct SafeFloat currChargeCount;
|
||||
struct SafeInt32 currChargeCount;
|
||||
struct SafeFloat costStamina;
|
||||
bool canHold;
|
||||
bool canTrigger;
|
||||
bool useInAir;
|
||||
struct HashSet_1_System_Int32_* canUseSkillStateWhiteList;
|
||||
int32_t needMonitor;
|
||||
Config_MonitorType__Enum needMonitor;
|
||||
bool isLocked;
|
||||
bool ignoreCDMinusRatio;
|
||||
bool forceCanDoSkill;
|
||||
struct SafeFloat NFNMNLKPNHD;
|
||||
struct SafeFloat EBIABBHAFFD;
|
||||
struct SafeFloat HPDKMHFJFMI;
|
||||
struct SafeFloat IBKPGNDMDBJ;
|
||||
struct SafeFloat GBGBNALDDFM;
|
||||
struct SafeFloat KMKHNLHFIOL;
|
||||
struct SafeFloat KBLGNPCEMON;
|
||||
struct SafeFloat BKNLEDABNBI;
|
||||
struct SafeFloat HADJBEOJAAI;
|
||||
struct SafeFloat DJHJCNGKFMC;
|
||||
int32_t skillIndex;
|
||||
int32_t prority;
|
||||
float _costElem_k__BackingField;
|
||||
int32_t _maxChargeCount_k__BackingField;
|
||||
};
|
||||
|
||||
struct LCAvatarCombat_OMIIMOJOHIP {
|
||||
struct LCAvatarCombat_OMIIMOJOHIP__Class* klass;
|
||||
struct LCAvatarCombat_LCAvatarCombat_SkillInfo {
|
||||
struct MoleMole_LCAvatarCombat_MoleMole_LCAvatarCombat_SkillInfo__Class* klass;
|
||||
MonitorData* monitor;
|
||||
struct LCAvatarCombat_OMIIMOJOHIP__Fields fields;
|
||||
struct MoleMole_LCAvatarCombat_MoleMole_LCAvatarCombat_SkillInfo__Fields fields;
|
||||
};
|
||||
|
||||
struct LCAvatarCombat__Fields {
|
||||
@ -10845,17 +10860,17 @@ namespace app {
|
||||
|
||||
struct HumanoidMoveFSM__Fields {
|
||||
struct BaseComponentPlugin__Fields _;
|
||||
struct HumanoidMoveFSMBaseMoveState* _curState;
|
||||
struct MoleMole_HumanoidMoveFSMBaseMoveState* _curState;
|
||||
int32_t fallOnGroundFirstFrame;
|
||||
struct Dictionary_2_MoleMole_HumanoidMoveFSM_JJLCCKKCHPD_MoleMole_HumanoidMoveFSMBaseMoveState_* stateMapInfo;
|
||||
struct Dictionary_2_MoleMole_HumanoidMoveFSM_MoleMole_HumanoidMoveFSM_FSMStateID_MoleMole_HumanoidMoveFSMBaseMoveState_* stateMapInfo;
|
||||
struct VCHumanoidMoveData* _moveData;
|
||||
struct VCHumanoidMoveConfig* _moveConfig;
|
||||
struct MoleMole_VCHumanoidMoveConfig* _moveConfig;
|
||||
struct VCHumanoidMove* _ownerMove;
|
||||
struct Animator* _animator;
|
||||
struct Rigidbody* _rigidbody;
|
||||
struct AnimatorController* _animatorController;
|
||||
void* OnMoveUpdateCallback;
|
||||
void* OnAirUpdateCallback;
|
||||
struct Action_1_MoleMole_HumanoidMoveFSMCallBackInfo_* OnMoveUpdateCallback;
|
||||
struct Action_1_MoleMole_HumanoidMoveFSMCallBackInfo_* OnAirUpdateCallback;
|
||||
bool _initSyncWithCurrentTask;
|
||||
bool _behaviourSet;
|
||||
float _sendCombatNotifyTime;
|
||||
@ -10870,6 +10885,7 @@ namespace app {
|
||||
bool ignoreOverallMoveWallProtectionCurrentFrame;
|
||||
bool stopMoveWhenGoupstairs;
|
||||
bool lastStopMoveWhenGoupstairs;
|
||||
bool IMLLBMBBEJI;
|
||||
float climbGlobalRecovery;
|
||||
bool autoGoUpstair;
|
||||
bool forceDoNotSyncWhenReset;
|
||||
@ -10879,20 +10895,23 @@ namespace app {
|
||||
bool _firstLatetick;
|
||||
bool _lastInForbiddenToggleMoveState;
|
||||
bool _disableMotion4hiUpdateCurrentFrame;
|
||||
bool NGPIBEPBPKA;
|
||||
int32_t _flyStateHash;
|
||||
struct VCMoveIKController* _ikComp;
|
||||
struct MoleMole_VCMoveIKController* _ikComp;
|
||||
struct Transform* _lCalf;
|
||||
struct Transform* _rCalf;
|
||||
void* _weaponStandbyIKParams;
|
||||
void* _normalStandbyIKParams;
|
||||
void* _params;
|
||||
float _lastSkirtBlendParam;
|
||||
float _idealSkirtBlendParam;
|
||||
float _lastIdealSkirtBlendParam;
|
||||
float _lastSkirtWeight;
|
||||
float _idealSkirtWeight;
|
||||
float _lastSkirtPos;
|
||||
float _idealSkirtPos;
|
||||
float BLLOGGMCMIA;
|
||||
float HNOACEPONMF;
|
||||
float HDBOJNOFKFN;
|
||||
float EGHOEFBGDKA;
|
||||
float MCJGBJLKODK;
|
||||
float LACOILFNJGC;
|
||||
float EKNIHOJIDKN;
|
||||
float COEEDFNDFEH;
|
||||
float CDCJMAELEKE;
|
||||
void* _lastFrameAnimSpeedInfo;
|
||||
void* _currentFrameAnimSpeedInfo;
|
||||
bool _isInSprintCheckInterval;
|
||||
@ -10993,22 +11012,14 @@ namespace app {
|
||||
struct Vector3d_1 _smoothingTransformLookAtPoint;
|
||||
struct SimpleKalmanFilter* _dirKfilter;
|
||||
bool _isDirectionFilterInitialized;
|
||||
struct Vector3d__Array* _faceDirectionTrace;
|
||||
struct Vector3d_1__Array* _faceDirectionTrace;
|
||||
bool _isFaceDirectionTraceInitialized;
|
||||
struct Vector3d_1 _lastFrameSmoothFaceDirection;
|
||||
bool _hasEnteredAvatarClimb;
|
||||
bool _hasBeenConsistent;
|
||||
double _timerForWaitingFacingToWallNoraml;
|
||||
#if defined(_CPLUSPLUS_)
|
||||
HumanoidMoveFSM_HumanoidMoveFSM_FSMStateID__Enum _curFSMState;
|
||||
#else
|
||||
int32_t _curFSMState;
|
||||
#endif
|
||||
#if defined(_CPLUSPLUS_)
|
||||
HumanoidMoveFSM_HumanoidMoveFSM_FSMStateID__Enum _lastFSMState;
|
||||
#else
|
||||
int32_t _lastFSMState;
|
||||
#endif
|
||||
struct Vector3d_1 _climbWallNormal;
|
||||
bool _climbWallNormalGetted;
|
||||
int32_t _LayerIndex;
|
||||
@ -11029,11 +11040,11 @@ namespace app {
|
||||
double _inputMoveAngle;
|
||||
double _inputMoveMold;
|
||||
double _defaultCameraDistanceAdjust;
|
||||
float HOBOHFMFPPG;
|
||||
float POIEBBJDKKF;
|
||||
bool DJDBLKBDMAH;
|
||||
float KNJMIPJHINJ;
|
||||
float DFGOMAELPBC;
|
||||
bool KNHDJFKJJDC;
|
||||
struct Dictionary_2_UnityEngine_Vector2_System_Double_* _animStateChangePair;
|
||||
struct Dictionary_2_UnityEngine_Vector2_SCameraModuleInitialize_SCameraModuleInitialize_FilterKeepType_* _animStateChangeType;
|
||||
struct Dictionary_2_UnityEngine_Vector2_MoleMole_SCameraModuleInitialize_MoleMole_SCameraModuleInitialize_FilterKeepType_* _animStateChangeType;
|
||||
struct Dictionary_2_UnityEngine_Vector2_System_Double_* _animStateChangeTime;
|
||||
double _preNormalRadiusTarget;
|
||||
double _preNormalRadiusStart;
|
||||
@ -11307,7 +11318,8 @@ namespace app {
|
||||
float _perfectRangeStart;
|
||||
float _perfectRangeEnd;
|
||||
bool _qteStart;
|
||||
float _qteTime;
|
||||
float OGOGOAJEFFI;
|
||||
bool _qteTime;
|
||||
float _qteBonusRange;
|
||||
bool _isAuto;
|
||||
int32_t _foodKind;
|
||||
@ -11702,19 +11714,19 @@ namespace app {
|
||||
};
|
||||
|
||||
struct MoleMole_VCBaseSetDitherValue__Fields {
|
||||
void* _;
|
||||
struct VCBase__Fields _;
|
||||
bool _usingDitherAlpha;
|
||||
float _ditherAlphaValue;
|
||||
float _managerDitherAlphaValue;
|
||||
float _localDitherAlphaValue;
|
||||
bool IBKAJMBMGAE;
|
||||
bool HCPHLKHJEBI;
|
||||
struct MoleMole_VCBaseModel* _modelComponent;
|
||||
float _showStartDitherDuration;
|
||||
bool _needStartDitherAction;
|
||||
float _detectDitherRangeBetweenCameraAndAvatar;
|
||||
float _detectDitherRangeNormalBetweenCamera;
|
||||
float _detectDitherRangeNormalBetweenCameraInTimeLine;
|
||||
bool GCEGGKLBFPG;
|
||||
bool LGEKBIFMMLF;
|
||||
struct List_1_MoleMole_BaseDither_* _dithers;
|
||||
bool _isDitherChangeStarted;
|
||||
float _spd;
|
||||
@ -11861,23 +11873,24 @@ namespace app {
|
||||
struct MoleMole_Config_ConfigAbilityModifier__Fields fields;
|
||||
};
|
||||
|
||||
struct __declspec(align(8)) HKMHAGBLLMK__Fields {
|
||||
struct MoleMole_BaseAbilityMixin__Array* JGLDNAPGGGC;
|
||||
struct List_1_System_ValueTuple_2__1* JFLGBBBFBLF;
|
||||
struct List_1_System_ValueTuple_2__2* EFOPNOEMFBI;
|
||||
struct List_1_MoleMole_Config_ConfigAbilityAction__1* PGICFJEDMAE;
|
||||
struct List_1_System_ValueTuple_3__1* CGBNAMBLDOE;
|
||||
struct IList_1_MoleMole_BaseAbilityMixin_* LOGOJNMHLIF;
|
||||
struct __declspec(align(8)) MoleMole_BaseActorActionContext__Fields {
|
||||
struct MoleMole_BaseAbilityMixin__Array* instancedMixins;
|
||||
struct List_1_UniRx_Tuple_2__1* _attachedPatternIndices;
|
||||
struct List_1_UniRx_Tuple_2__2* _attachedResistanceBuffDebuffs;
|
||||
struct List_1_MoleMole_Config_ConfigAbilityAction__1* _attachedAbilityActions;
|
||||
struct List_1_UniRx_Tuple_3__1* _attachedElementTypeResistance;
|
||||
struct IList_1_MoleMole_BaseAbilityMixin_* _tickMixins;
|
||||
};
|
||||
|
||||
struct MoleMole_ActorModifier__Fields {
|
||||
HKMHAGBLLMK__Fields _;
|
||||
struct MoleMole_BaseActorActionContext__Fields _;
|
||||
struct MoleMole_ActorAbility* parentAbility;
|
||||
uint32_t parentAbilityInstanceID;
|
||||
struct MoleMole_Config_ConfigAbility* _parentAbilityConfig;
|
||||
uint32_t parentAbilityEntityID;
|
||||
uint32_t _applyEntityId_k__BackingField;
|
||||
struct MoleMole_LCAbility* owner;
|
||||
struct Action* ADBOKMOBNAN;
|
||||
struct MoleMole_Config_ConfigAbilityModifier* _config;
|
||||
struct Dictionary_2_MoleMole_EncryptedString_System_Int32_* stackIndices;
|
||||
int32_t _parentOwnedIx;
|
||||
@ -11888,17 +11901,17 @@ namespace app {
|
||||
bool attachedModifierIsServerBuff;
|
||||
int32_t attachedModifierNameHash;
|
||||
bool isAttachedParentAbility;
|
||||
bool PBDIKHPKHLF;
|
||||
bool GDKHIMOECNI;
|
||||
struct Action_1_MoleMole_ActorModifier_* onDetached;
|
||||
uint32_t serverBuffUid;
|
||||
struct Action_1_Nullable_1_Single_* onDurabilityEmpty;
|
||||
struct Action_2_Nullable_1_Single_Single_* onDurabilityEmpty;
|
||||
bool _isValid_k__BackingField;
|
||||
uint64_t _modifierStartTime_k__BackingField;
|
||||
bool isModifierInvalidByServer;
|
||||
bool hasAddedAbilityState;
|
||||
float thinkInterval;
|
||||
float reduceElementRatio;
|
||||
float PHKNIPMALFB;
|
||||
float JCCKKCLDNLF;
|
||||
};
|
||||
|
||||
struct MoleMole_ActorModifier {
|
||||
@ -11957,6 +11970,15 @@ namespace app {
|
||||
Overflow = 0x00000001,
|
||||
};
|
||||
|
||||
struct Avatar__Fields {
|
||||
struct Object_1__Fields _;
|
||||
};
|
||||
|
||||
struct Avatar {
|
||||
struct Avatar__Class* klass;
|
||||
MonitorData* monitor;
|
||||
struct Avatar__Fields fields;
|
||||
};
|
||||
|
||||
#if !defined(_GHIDRA_) && !defined(_IDA_)
|
||||
}
|
||||
|
@ -1,4 +1,5 @@
|
||||
using namespace app;
|
||||
|
||||
DO_APP_FUNC(0x00B64280, app::Byte__Array*, Unity_RecordUserData, (int32_t nType));
|
||||
DO_APP_FUNC(0x00AFCB60, Il2CppClass**, GetIl2Classes, ());
|
||||
DO_APP_FUNC(0x00B7B980, app::Byte__Array*, Unity_RecordUserData, (int32_t nType));
|
||||
DO_APP_FUNC(0x00B1B220, Il2CppClass**, GetIl2Classes, ());
|
||||
DO_APP_FUNC(0x00DCE2B0, void, Animator_set_avatar, (Animator* __this, Avatar* value, MethodInfo* method));
|
@ -17,6 +17,7 @@
|
||||
#include <cheat/player/NoCD.h>
|
||||
#include <cheat/player/NoClip.h>
|
||||
#include <cheat/player/RapidFire.h>
|
||||
#include <cheat/player/AutoRun.h>
|
||||
|
||||
#include <cheat/world/AutoLoot.h>
|
||||
#include <cheat/world/DialogSkip.h>
|
||||
@ -40,7 +41,6 @@
|
||||
|
||||
#include <cheat/world/AutoFish.h>
|
||||
#include <cheat/world/AutoCook.h>
|
||||
#include <cheat/world/MusicEvent.h>
|
||||
|
||||
#include <cheat/visuals/NoFog.h>
|
||||
#include <cheat/visuals/FPSUnlock.h>
|
||||
@ -82,6 +82,7 @@ namespace cheat
|
||||
FEAT_INST(NoCD),
|
||||
FEAT_INST(NoClip),
|
||||
FEAT_INST(RapidFire),
|
||||
FEAT_INST(AutoRun),
|
||||
|
||||
FEAT_INST(AutoLoot),
|
||||
FEAT_INST(AutoTreeFarm),
|
||||
@ -95,7 +96,6 @@ namespace cheat
|
||||
FEAT_INST(MobVacuum),
|
||||
FEAT_INST(FakeTime),
|
||||
|
||||
|
||||
FEAT_INST(ChestTeleport),
|
||||
FEAT_INST(OculiTeleport),
|
||||
FEAT_INST(MapTeleport),
|
||||
@ -106,7 +106,6 @@ namespace cheat
|
||||
|
||||
FEAT_INST(AutoFish),
|
||||
FEAT_INST(AutoCook),
|
||||
FEAT_INST(MusicEvent),
|
||||
|
||||
FEAT_INST(NoFog),
|
||||
FEAT_INST(FPSUnlock),
|
||||
|
@ -417,6 +417,8 @@ namespace cheat::feature
|
||||
ADD_FILTER_FIELD(collection, RadiantSpincrystal);
|
||||
ADD_FILTER_FIELD(collection, BookPage);
|
||||
ADD_FILTER_FIELD(collection, QuestInteract);
|
||||
ADD_FILTER_FIELD(collection, WoodenCrate);
|
||||
ADD_FILTER_FIELD(collection, GeoSigil);
|
||||
|
||||
ADD_FILTER_FIELD(chest, CommonChest);
|
||||
ADD_FILTER_FIELD(chest, ExquisiteChest);
|
||||
|
@ -26,8 +26,10 @@ namespace cheat::game
|
||||
public IEntityFilter
|
||||
{
|
||||
public:
|
||||
AdvancedFilter(const std::vector<app::EntityType__Enum_1>& types = {}, const std::vector<std::string>& names = {}) : m_Names(names), m_Types(types) {}
|
||||
AdvancedFilter(const app::EntityType__Enum_1 type, const std::string name) : AdvancedFilter(std::vector<app::EntityType__Enum_1>{type}, std::vector<std::string>{name}) {}
|
||||
AdvancedFilter(std::initializer_list<app::EntityType__Enum_1> types = {}, std::initializer_list<std::string> names = {}) : m_Names(names), m_Types(types) {}
|
||||
AdvancedFilter(std::initializer_list<app::EntityType__Enum_1> types, const std::string& name) : AdvancedFilter(types, { name }) {}
|
||||
AdvancedFilter(const app::EntityType__Enum_1 type, std::initializer_list<std::string> name) : AdvancedFilter({ type }, name) {}
|
||||
AdvancedFilter(const app::EntityType__Enum_1 type, const std::string& name) : AdvancedFilter({ type }, { name }) {}
|
||||
friend AdvancedFilter operator+(AdvancedFilter lFilter, const AdvancedFilter& rFilter);
|
||||
|
||||
bool IsValid(Entity* entity) const override {
|
||||
|
@ -3,6 +3,13 @@
|
||||
|
||||
namespace cheat::game
|
||||
{
|
||||
SimpleFilter::SimpleFilter(std::initializer_list<SimpleFilter> names)
|
||||
: m_Type(names.begin()->m_Type)
|
||||
{
|
||||
std::for_each(names.begin(), names.end(), [this](const SimpleFilter& other) {
|
||||
m_Names.insert(m_Names.begin(), other.m_Names.begin(), other.m_Names.end());
|
||||
});
|
||||
}
|
||||
|
||||
bool SimpleFilter::IsValid(Entity* entity) const
|
||||
{
|
||||
@ -24,15 +31,4 @@ namespace cheat::game
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
SimpleFilter::SimpleFilter(app::EntityType__Enum_1 type, const std::vector<std::string>& names) : m_Names(names), m_Type(type)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
SimpleFilter operator+(SimpleFilter lFilter, const SimpleFilter& rFilter)
|
||||
{
|
||||
lFilter.m_Names.insert(lFilter.m_Names.end(), rFilter.m_Names.begin(), rFilter.m_Names.end());
|
||||
return lFilter;
|
||||
}
|
||||
}
|
@ -10,12 +10,11 @@ namespace cheat::game
|
||||
public IEntityFilter
|
||||
{
|
||||
public:
|
||||
|
||||
SimpleFilter(app::EntityType__Enum_1 type, const std::vector<std::string>& names = {});
|
||||
SimpleFilter(app::EntityType__Enum_1 type, const std::string name) : SimpleFilter(type, std::vector<std::string>{name}) {}
|
||||
SimpleFilter(app::EntityType__Enum_1 type, std::initializer_list<std::string> names = {}) : m_Type(type), m_Names{ names } {}
|
||||
SimpleFilter(app::EntityType__Enum_1 type, const std::string& name) : SimpleFilter(type, {name}) {}
|
||||
SimpleFilter(std::initializer_list<SimpleFilter> lst);
|
||||
bool IsValid(Entity* entity) const override;
|
||||
friend SimpleFilter operator+(SimpleFilter lFilter, const SimpleFilter& rFilter);
|
||||
private:
|
||||
protected:
|
||||
app::EntityType__Enum_1 m_Type;
|
||||
std::vector<std::string> m_Names;
|
||||
};
|
||||
|
@ -4,6 +4,9 @@
|
||||
|
||||
namespace cheat::game::filters
|
||||
{
|
||||
using namespace game;
|
||||
using namespace app;
|
||||
|
||||
namespace collection
|
||||
{
|
||||
SimpleFilter Book = { app::EntityType__Enum_1::GatherObject, "SkillObj_EmptyGadget" };
|
||||
@ -11,312 +14,311 @@ namespace cheat::game::filters
|
||||
ChestFilter RadiantSpincrystal = ChestFilter(game::Chest::ItemType::BGM);
|
||||
ChestFilter BookPage = ChestFilter(game::Chest::ItemType::BookPage);
|
||||
ChestFilter QuestInteract = ChestFilter(game::Chest::ItemType::QuestInteract);
|
||||
SimpleFilter WoodenCrate = { app::EntityType__Enum_1::Chest, "Searchpoint_OnWater" };
|
||||
SimpleFilter GeoSigil = { app::EntityType__Enum_1::Chest, "Prop_Search_Point" };
|
||||
}
|
||||
|
||||
namespace chest
|
||||
{
|
||||
ChestFilter CommonChest = ChestFilter(game::Chest::ChestRarity::Common);
|
||||
ChestFilter ExquisiteChest = ChestFilter(game::Chest::ChestRarity::Exquisite);
|
||||
ChestFilter PreciousChest = ChestFilter(game::Chest::ChestRarity::Precious);
|
||||
ChestFilter LuxuriousChest = ChestFilter(game::Chest::ChestRarity::Luxurious);
|
||||
ChestFilter RemarkableChest = ChestFilter(game::Chest::ChestRarity::Remarkable);
|
||||
ChestFilter SearchPoint = ChestFilter(game::Chest::ItemType::Investigate);
|
||||
ChestFilter CommonChest = ChestFilter(Chest::ChestRarity::Common);
|
||||
ChestFilter ExquisiteChest = ChestFilter(Chest::ChestRarity::Exquisite);
|
||||
ChestFilter PreciousChest = ChestFilter(Chest::ChestRarity::Precious);
|
||||
ChestFilter LuxuriousChest = ChestFilter(Chest::ChestRarity::Luxurious);
|
||||
ChestFilter RemarkableChest = ChestFilter(Chest::ChestRarity::Remarkable);
|
||||
ChestFilter SearchPoint = ChestFilter(Chest::ItemType::Investigate);
|
||||
|
||||
ChestFilter SLocked = ChestFilter(game::Chest::ChestState::Locked);
|
||||
ChestFilter SInLock = ChestFilter(game::Chest::ChestState::InRock);
|
||||
ChestFilter SFrozen = ChestFilter(game::Chest::ChestState::Frozen);
|
||||
ChestFilter SBramble = ChestFilter(game::Chest::ChestState::Bramble);
|
||||
ChestFilter STrap = ChestFilter(game::Chest::ChestState::Trap);
|
||||
ChestFilter SLocked = ChestFilter(Chest::ChestState::Locked);
|
||||
ChestFilter SInLock = ChestFilter(Chest::ChestState::InRock);
|
||||
ChestFilter SFrozen = ChestFilter(Chest::ChestState::Frozen);
|
||||
ChestFilter SBramble = ChestFilter(Chest::ChestState::Bramble);
|
||||
ChestFilter STrap = ChestFilter(Chest::ChestState::Trap);
|
||||
}
|
||||
|
||||
namespace equipment
|
||||
{
|
||||
SimpleFilter Artifacts = { app::EntityType__Enum_1::DropItem, "_Relic" };
|
||||
SimpleFilter Bow = { app::EntityType__Enum_1::DropItem, "_Bow" };
|
||||
SimpleFilter Claymore = { app::EntityType__Enum_1::DropItem, "_Claymore" };
|
||||
SimpleFilter Catalyst = { app::EntityType__Enum_1::DropItem, "_Catalyst" };
|
||||
SimpleFilter Pole = { app::EntityType__Enum_1::DropItem, "_Pole" };
|
||||
SimpleFilter Sword = { app::EntityType__Enum_1::DropItem, "_Sword" };
|
||||
SimpleFilter Artifacts = { EntityType__Enum_1::DropItem, "_Relic" };
|
||||
SimpleFilter Bow = { EntityType__Enum_1::DropItem, "_Bow" };
|
||||
SimpleFilter Claymore = { EntityType__Enum_1::DropItem, "_Claymore" };
|
||||
SimpleFilter Catalyst = { EntityType__Enum_1::DropItem, "_Catalyst" };
|
||||
SimpleFilter Pole = { EntityType__Enum_1::DropItem, "_Pole" };
|
||||
SimpleFilter Sword = { EntityType__Enum_1::DropItem, "_Sword" };
|
||||
}
|
||||
|
||||
namespace featured
|
||||
{
|
||||
SimpleFilter Anemoculus = { app::EntityType__Enum_1::GatherObject, "WindCrystalShell" };
|
||||
SimpleFilter CrimsonAgate = { app::EntityType__Enum_1::GatherObject, "Prop_Essence" };
|
||||
SimpleFilter Electroculus = { app::EntityType__Enum_1::GatherObject, "Prop_ElectricCrystal" };
|
||||
SimpleFilter Electrogranum = { app::EntityType__Enum_1::Gadget, "ThunderSeedCreate" };
|
||||
SimpleFilter FishingPoint = { app::EntityType__Enum_1::FishPool, "_FishingShoal" };
|
||||
SimpleFilter Geoculus = { app::EntityType__Enum_1::GatherObject, "RockCrystalShell" };
|
||||
WhitelistFilter ItemDrops = { std::vector<app::EntityType__Enum_1> {app::EntityType__Enum_1::GatherObject, app::EntityType__Enum_1::DropItem }, std::vector<std::string> {"_Food_BirdMeat", "_Food_Meat", "_DropItem","_Fishmeat" } };
|
||||
SimpleFilter Lumenspar = { app::EntityType__Enum_1::GatherObject, "CelestiaSplinter" };
|
||||
SimpleFilter KeySigil = { app::EntityType__Enum_1::GatherObject, "RuneContent" };
|
||||
SimpleFilter ShrineOfDepth = { app::EntityType__Enum_1::Gadget, "Temple" };
|
||||
SimpleFilter TimeTrialChallenge = { app::EntityType__Enum_1::Field, "Challengestarter_" };
|
||||
SimpleFilter Anemoculus = { EntityType__Enum_1::GatherObject, "WindCrystalShell" };
|
||||
SimpleFilter CrimsonAgate = { EntityType__Enum_1::GatherObject, "Prop_Essence" };
|
||||
SimpleFilter Electroculus = { EntityType__Enum_1::GatherObject, "Prop_ElectricCrystal" };
|
||||
SimpleFilter Electrogranum = { EntityType__Enum_1::Gadget, "ThunderSeedCreate" };
|
||||
SimpleFilter FishingPoint = { EntityType__Enum_1::FishPool, "_FishingShoal" };
|
||||
SimpleFilter Geoculus = { EntityType__Enum_1::GatherObject, "RockCrystalShell" };
|
||||
WhitelistFilter ItemDrops = { {EntityType__Enum_1::GatherObject, EntityType__Enum_1::DropItem }, {"_Food_BirdMeat", "_Food_Meat", "_DropItem","_Fishmeat" } };
|
||||
SimpleFilter Lumenspar = { EntityType__Enum_1::GatherObject, "CelestiaSplinter" };
|
||||
SimpleFilter KeySigil = { EntityType__Enum_1::GatherObject, "RuneContent" };
|
||||
SimpleFilter ShrineOfDepth = { EntityType__Enum_1::Gadget, "Temple" };
|
||||
SimpleFilter TimeTrialChallenge = { EntityType__Enum_1::Field, "Challengestarter_" };
|
||||
}
|
||||
|
||||
namespace guide
|
||||
{
|
||||
SimpleFilter CampfireTorch = { app::EntityType__Enum_1::Gadget, "_FireBasin" };
|
||||
SimpleFilter DayNightSwitchingMechanism = { app::EntityType__Enum_1::Field, "_CircleConsole" };
|
||||
SimpleFilter EnkanomiyaPhaseGate = { app::EntityType__Enum_1::Gadget, "_Singularity" };
|
||||
SimpleFilter MysteriousCarvings = { app::EntityType__Enum_1::Gadget, "_ReginStatue" };
|
||||
SimpleFilter PhaseGate = { app::EntityType__Enum_1::Field, "_TeleportHighway" };
|
||||
SimpleFilter PlacesofEssenceWorship = { app::EntityType__Enum_1::Field, "_EnergySource" };
|
||||
SimpleFilter Pot = { app::EntityType__Enum_1::Gadget, "_Cooking_" };
|
||||
SimpleFilter RuinBrazier = { app::EntityType__Enum_1::Gadget, "_AncientHeatSource" };
|
||||
SimpleFilter Stormstone = { app::EntityType__Enum_1::Gadget, "_ReginLamp" };
|
||||
SimpleFilter TriangularMechanism = { app::EntityType__Enum_1::Field, "_TuningFork" };
|
||||
SimpleFilter CampfireTorch = { EntityType__Enum_1::Gadget, "_FireBasin" };
|
||||
SimpleFilter DayNightSwitchingMechanism = { EntityType__Enum_1::Field, "_CircleConsole" };
|
||||
SimpleFilter EnkanomiyaPhaseGate = { EntityType__Enum_1::Gadget, "_Singularity" };
|
||||
SimpleFilter MysteriousCarvings = { EntityType__Enum_1::Gadget, "_ReginStatue" };
|
||||
SimpleFilter PhaseGate = { EntityType__Enum_1::Field, "_TeleportHighway" };
|
||||
SimpleFilter PlacesofEssenceWorship = { EntityType__Enum_1::Field, "_EnergySource" };
|
||||
SimpleFilter Pot = { EntityType__Enum_1::Gadget, "_Cooking_" };
|
||||
SimpleFilter RuinBrazier = { EntityType__Enum_1::Gadget, "_AncientHeatSource" };
|
||||
SimpleFilter Stormstone = { EntityType__Enum_1::Gadget, "_ReginLamp" };
|
||||
SimpleFilter TriangularMechanism = { EntityType__Enum_1::Field, "_TuningFork" };
|
||||
}
|
||||
|
||||
namespace living
|
||||
{
|
||||
SimpleFilter AvatarTeammate = { app::EntityType__Enum_1::Avatar, "authority :False" };
|
||||
SimpleFilter AvatarOwn = { app::EntityType__Enum_1::Avatar, "authority :True" };
|
||||
SimpleFilter BirdEgg = { app::EntityType__Enum_1::GatherObject, "BirdEgg" };
|
||||
SimpleFilter ButterflyWings = { app::EntityType__Enum_1::EnvAnimal, "Butterfly" };
|
||||
SimpleFilter Crab = { app::EntityType__Enum_1::EnvAnimal, "Crab" };
|
||||
SimpleFilter CrystalCore = { app::EntityType__Enum_1::EnvAnimal, "Wisp" };
|
||||
SimpleFilter Fish = { app::EntityType__Enum_1::EnvAnimal, "Fish" };
|
||||
SimpleFilter Frog = { app::EntityType__Enum_1::EnvAnimal, "Frog" };
|
||||
SimpleFilter LizardTail = { app::EntityType__Enum_1::EnvAnimal, "Lizard" };
|
||||
SimpleFilter LuminescentSpine = { app::EntityType__Enum_1::EnvAnimal, "FireFly" };
|
||||
SimpleFilter Onikabuto = { app::EntityType__Enum_1::GatherObject, "Electrohercules" };
|
||||
SimpleFilter Starconch = { app::EntityType__Enum_1::GatherObject, "_Shell" };
|
||||
SimpleFilter Eel = { app::EntityType__Enum_1::EnvAnimal, "Eel_" };
|
||||
SimpleFilter Inu = { app::EntityType__Enum_1::EnvAnimal, "_Inu_Shihandai" };
|
||||
SimpleFilter Boar = { app::EntityType__Enum_1::Monster, "Boar" };
|
||||
SimpleFilter Fox = { app::EntityType__Enum_1::Monster, "Fox" };
|
||||
SimpleFilter Squirrel = { app::EntityType__Enum_1::Monster, "Squirrel" };
|
||||
SimpleFilter Npc = { app::EntityType__Enum_1::NPC,
|
||||
std::vector<std::string> { "_Liyue", "_Mengde", "_Inazuma", "_Coop", "_Quest", "_Enkanomiya", "_Animal", "_Guide", "_Homeworld" } };
|
||||
SimpleFilter Crane = { app::EntityType__Enum_1::Monster, "Crane" };
|
||||
SimpleFilter Falcon = { app::EntityType__Enum_1::Monster, "Falcon" };
|
||||
SimpleFilter LucklightFly = { app::EntityType__Enum_1::EnvAnimal, "Boltbug_" };
|
||||
SimpleFilter Salamander = { app::EntityType__Enum_1::EnvAnimal, "Salamander" };
|
||||
SimpleFilter Pigeon = { app::EntityType__Enum_1::Monster, "Pigeon" };
|
||||
SimpleFilter Crow = { app::EntityType__Enum_1::Monster, "Crow" };
|
||||
SimpleFilter Finch = { app::EntityType__Enum_1::Monster, "Tit" };
|
||||
SimpleFilter Wigeon = { app::EntityType__Enum_1::Monster, "Wigeon" };
|
||||
SimpleFilter Dog = { app::EntityType__Enum_1::Monster, "DogPrick" };
|
||||
SimpleFilter Cat = { app::EntityType__Enum_1::Monster, "Cat" };
|
||||
SimpleFilter Weasel = { app::EntityType__Enum_1::Monster, "Marten" };
|
||||
SimpleFilter WeaselThief = { app::EntityType__Enum_1::Monster, "Thoarder_Weasel" };
|
||||
SimpleFilter Kitsune = { app::EntityType__Enum_1::EnvAnimal, "Vulpes" };
|
||||
SimpleFilter BakeDanuki = { app::EntityType__Enum_1::Monster, "Inu_Tanuki" };
|
||||
SimpleFilter Meat = { app::EntityType__Enum_1::GatherObject , std::vector<std::string> { "_Food_BirdMeat", "_Food_Meat", "_Fishmeat" } };
|
||||
SimpleFilter AvatarTeammate = { EntityType__Enum_1::Avatar, "authority :False" };
|
||||
SimpleFilter AvatarOwn = { EntityType__Enum_1::Avatar, "authority :True" };
|
||||
SimpleFilter BirdEgg = { EntityType__Enum_1::GatherObject, "BirdEgg" };
|
||||
SimpleFilter ButterflyWings = { EntityType__Enum_1::EnvAnimal, "Butterfly" };
|
||||
SimpleFilter Crab = { EntityType__Enum_1::EnvAnimal, "Crab" };
|
||||
SimpleFilter CrystalCore = { EntityType__Enum_1::EnvAnimal, "Wisp" };
|
||||
SimpleFilter Fish = { EntityType__Enum_1::EnvAnimal, "Fish" };
|
||||
SimpleFilter Frog = { EntityType__Enum_1::EnvAnimal, "Frog" };
|
||||
SimpleFilter LizardTail = { EntityType__Enum_1::EnvAnimal, "Lizard" };
|
||||
SimpleFilter LuminescentSpine = { EntityType__Enum_1::EnvAnimal, "FireFly" };
|
||||
SimpleFilter Onikabuto = { EntityType__Enum_1::GatherObject, "Electrohercules" };
|
||||
SimpleFilter Starconch = { EntityType__Enum_1::GatherObject, "_Shell" };
|
||||
SimpleFilter Eel = { EntityType__Enum_1::EnvAnimal, "Eel_" };
|
||||
SimpleFilter Inu = { EntityType__Enum_1::EnvAnimal, "_Inu_Shihandai" };
|
||||
SimpleFilter Boar = { EntityType__Enum_1::Monster, "Boar" };
|
||||
SimpleFilter Fox = { EntityType__Enum_1::Monster, "Fox" };
|
||||
SimpleFilter Squirrel = { EntityType__Enum_1::Monster, "Squirrel" };
|
||||
SimpleFilter Npc = { EntityType__Enum_1::NPC, { "_Liyue", "_Mengde", "_Inazuma", "_Coop", "_Quest", "_Enkanomiya", "_Animal", "_Guide", "_Homeworld" } };
|
||||
SimpleFilter Crane = { EntityType__Enum_1::Monster, "Crane" };
|
||||
SimpleFilter Falcon = { EntityType__Enum_1::Monster, "Falcon" };
|
||||
SimpleFilter LucklightFly = { EntityType__Enum_1::EnvAnimal, "Boltbug_" };
|
||||
SimpleFilter Salamander = { EntityType__Enum_1::EnvAnimal, "Salamander" };
|
||||
SimpleFilter Pigeon = { EntityType__Enum_1::Monster, "Pigeon" };
|
||||
SimpleFilter Crow = { EntityType__Enum_1::Monster, "Crow" };
|
||||
SimpleFilter Finch = { EntityType__Enum_1::Monster, "Tit" };
|
||||
SimpleFilter Wigeon = { EntityType__Enum_1::Monster, "Wigeon" };
|
||||
SimpleFilter Dog = { EntityType__Enum_1::Monster, "DogPrick" };
|
||||
SimpleFilter Cat = { EntityType__Enum_1::Monster, "Cat" };
|
||||
SimpleFilter Weasel = { EntityType__Enum_1::Monster, "Marten" };
|
||||
SimpleFilter WeaselThief = { EntityType__Enum_1::Monster, "Thoarder_Weasel" };
|
||||
SimpleFilter Kitsune = { EntityType__Enum_1::EnvAnimal, "Vulpes" };
|
||||
SimpleFilter BakeDanuki = { EntityType__Enum_1::Monster, "Inu_Tanuki" };
|
||||
SimpleFilter Meat = { EntityType__Enum_1::GatherObject , { "_Food_BirdMeat", "_Food_Meat", "_Fishmeat" }};
|
||||
}
|
||||
|
||||
namespace mineral
|
||||
{
|
||||
SimpleFilter AmethystLump = { app::EntityType__Enum_1::GatherObject, "_Thundercrystal" };
|
||||
SimpleFilter ArchaicStone = { app::EntityType__Enum_1::GatherObject, "_AncientOre" };
|
||||
SimpleFilter CorLapis = { app::EntityType__Enum_1::GatherObject, "_ElementRock" };
|
||||
SimpleFilter CrystalChunk = { app::EntityType__Enum_1::GatherObject,
|
||||
std::vector<std::string> { "_OreCrystal", "_ShiningCrystalOre" } };
|
||||
SimpleFilter CrystalMarrow = { app::EntityType__Enum_1::GatherObject, "_Crystalizedmarrow" };
|
||||
SimpleFilter ElectroCrystal = { app::EntityType__Enum_1::GatherObject, "_OreElectricRock" };
|
||||
SimpleFilter IronChunk = { app::EntityType__Enum_1::GatherObject, "_OreStone" };
|
||||
SimpleFilter NoctilucousJade = { app::EntityType__Enum_1::GatherObject,
|
||||
std::vector<std::string> { "_OreNightBerth", "_ShiningNightBerthOre" } };
|
||||
SimpleFilter MagicalCrystalChunk = { app::EntityType__Enum_1::GatherObject, "_OreMagicCrystal" };
|
||||
SimpleFilter ScarletQuartz = { app::EntityType__Enum_1::GatherObject, "_OreDulinsBlood" };
|
||||
SimpleFilter Starsilver = { app::EntityType__Enum_1::GatherObject, "_OreMoonMeteor" };
|
||||
SimpleFilter WhiteIronChunk = { app::EntityType__Enum_1::GatherObject, "_OreMetal" };
|
||||
SimpleFilter DunlinsTooth = { app::EntityType__Enum_1::GatherObject, "_DunlinsTooth" };
|
||||
SimpleFilter AmethystLump = { EntityType__Enum_1::GatherObject, "_Thundercrystal" };
|
||||
SimpleFilter ArchaicStone = { EntityType__Enum_1::GatherObject, "_AncientOre" };
|
||||
SimpleFilter CorLapis = { EntityType__Enum_1::GatherObject, "_ElementRock" };
|
||||
SimpleFilter CrystalChunk = { EntityType__Enum_1::GatherObject, { "_OreCrystal", "_ShiningCrystalOre" } };
|
||||
SimpleFilter CrystalMarrow = { EntityType__Enum_1::GatherObject, "_Crystalizedmarrow" };
|
||||
SimpleFilter ElectroCrystal = { EntityType__Enum_1::GatherObject, "_OreElectricRock" };
|
||||
SimpleFilter IronChunk = { EntityType__Enum_1::GatherObject, "_OreStone" };
|
||||
SimpleFilter NoctilucousJade = { EntityType__Enum_1::GatherObject, { "_OreNightBerth", "_ShiningNightBerthOre" } };
|
||||
SimpleFilter MagicalCrystalChunk = { EntityType__Enum_1::GatherObject, "_OreMagicCrystal" };
|
||||
SimpleFilter ScarletQuartz = { EntityType__Enum_1::GatherObject, "_OreDulinsBlood" };
|
||||
SimpleFilter Starsilver = { EntityType__Enum_1::GatherObject, "_OreMoonMeteor" };
|
||||
SimpleFilter WhiteIronChunk = { EntityType__Enum_1::GatherObject, "_OreMetal" };
|
||||
SimpleFilter DunlinsTooth = { EntityType__Enum_1::GatherObject, "_DunlinsTooth" };
|
||||
|
||||
SimpleFilter AmethystLumpDrop = { app::EntityType__Enum_1::GatherObject, "_Thundercrystaldrop" };
|
||||
SimpleFilter CrystalChunkDrop = { app::EntityType__Enum_1::GatherObject,"_Drop_Crystal" };
|
||||
SimpleFilter ElectroCrystalDrop = { app::EntityType__Enum_1::GatherObject, "_Drop_Ore_ElectricRock" };
|
||||
SimpleFilter IronChunkDrop = { app::EntityType__Enum_1::GatherObject, "_Drop_Stone" };
|
||||
SimpleFilter NoctilucousJadeDrop = { app::EntityType__Enum_1::GatherObject,"_NightBerth" };
|
||||
SimpleFilter MagicalCrystalChunkDrop = { app::EntityType__Enum_1::GatherObject, "_DropMagicCrystal" };
|
||||
SimpleFilter ScarletQuartzDrop = { app::EntityType__Enum_1::GatherObject, "_DropDulinsBlood" };
|
||||
SimpleFilter StarsilverDrop = { app::EntityType__Enum_1::GatherObject, "_DropMoonMeteor" };
|
||||
SimpleFilter WhiteIronChunkDrop = { app::EntityType__Enum_1::GatherObject, "_Drop_Metal" };
|
||||
SimpleFilter AmethystLumpDrop = { EntityType__Enum_1::GatherObject, "_Thundercrystaldrop" };
|
||||
SimpleFilter CrystalChunkDrop = { EntityType__Enum_1::GatherObject,"_Drop_Crystal"};
|
||||
SimpleFilter ElectroCrystalDrop = { EntityType__Enum_1::GatherObject, "_Drop_Ore_ElectricRock" };
|
||||
SimpleFilter IronChunkDrop = { EntityType__Enum_1::GatherObject, "_Drop_Stone" };
|
||||
SimpleFilter NoctilucousJadeDrop = { EntityType__Enum_1::GatherObject,"_NightBerth" };
|
||||
SimpleFilter MagicalCrystalChunkDrop = { EntityType__Enum_1::GatherObject, "_DropMagicCrystal" };
|
||||
SimpleFilter ScarletQuartzDrop = { EntityType__Enum_1::GatherObject, "_DropDulinsBlood" };
|
||||
SimpleFilter StarsilverDrop = { EntityType__Enum_1::GatherObject, "_DropMoonMeteor" };
|
||||
SimpleFilter WhiteIronChunkDrop = { EntityType__Enum_1::GatherObject, "_Drop_Metal" };
|
||||
}
|
||||
|
||||
namespace monster
|
||||
{
|
||||
SimpleFilter AbyssMage = { app::EntityType__Enum_1::Monster, "_Abyss" };
|
||||
SimpleFilter FatuiAgent = { app::EntityType__Enum_1::Monster, "_Fatuus" };
|
||||
SimpleFilter FatuiCicinMage = { app::EntityType__Enum_1::Monster, "_Fatuus_Summoner" };
|
||||
SimpleFilter FatuiMirrorMaiden = { app::EntityType__Enum_1::Monster, "_Fatuus_Maiden" };
|
||||
SimpleFilter FatuiSkirmisher = { app::EntityType__Enum_1::Monster, "_Skirmisher" };
|
||||
SimpleFilter Geovishap = { app::EntityType__Enum_1::Monster, "_Drake_Rock" };
|
||||
SimpleFilter GeovishapHatchling = { app::EntityType__Enum_1::Monster, "_Wyrm_Rock" };
|
||||
SimpleFilter Hilichurl = { app::EntityType__Enum_1::Monster, "_Hili" };
|
||||
SimpleFilter Mitachurl = { app::EntityType__Enum_1::Monster, "_Brute" };
|
||||
SimpleFilter Nobushi = { app::EntityType__Enum_1::Monster, "_Ronin" };
|
||||
SimpleFilter Kairagi = { app::EntityType__Enum_1::Monster, "_Kairagi" };
|
||||
SimpleFilter RuinGuard = { app::EntityType__Enum_1::Monster, "_Defender" };
|
||||
SimpleFilter RuinHunter = { app::EntityType__Enum_1::Monster, "_Formathr" };
|
||||
SimpleFilter RuinGrader = { app::EntityType__Enum_1::Monster, "_Konungmathr" };
|
||||
SimpleFilter RuinSentinel = { app::EntityType__Enum_1::Monster, "_Apparatus_Enigma" };
|
||||
SimpleFilter Samachurl = { app::EntityType__Enum_1::Monster, "_Shaman" };
|
||||
SimpleFilter ShadowyHusk = { app::EntityType__Enum_1::Monster, "ForlornVessel_Strong" };
|
||||
SimpleFilter Slime = { app::EntityType__Enum_1::Monster, "_Slime" };
|
||||
SimpleFilter FloatingFungus = { app::EntityType__Enum_1::Monster, "_Fungus" };
|
||||
SimpleFilter Specter = { app::EntityType__Enum_1::Monster, "_Sylph" };
|
||||
SimpleFilter TreasureHoarder = { app::EntityType__Enum_1::Monster, "_Thoarder" };
|
||||
SimpleFilter UnusualHilichurl = { app::EntityType__Enum_1::Monster, "_Hili_Wei" };
|
||||
SimpleFilter Whopperflower = { app::EntityType__Enum_1::Monster, "_Mimik" };
|
||||
SimpleFilter RifthoundWhelp = { app::EntityType__Enum_1::Monster, "_Hound_Kanis" };
|
||||
SimpleFilter Rifthound = { app::EntityType__Enum_1::Monster, "_Hound_Riftstalker" };
|
||||
SimpleFilter Dvalin = { app::EntityType__Enum_1::Monster, "_Dragon_Dvalin" };
|
||||
SimpleFilter Andrius = { app::EntityType__Enum_1::Monster, "_Wolf_LupiBoreas" };
|
||||
SimpleFilter Tartaglia = { app::EntityType__Enum_1::Monster, "_Tartaglia" };
|
||||
SimpleFilter Azhdaha = { app::EntityType__Enum_1::Monster, "_Dahaka" };
|
||||
SimpleFilter Signora = { app::EntityType__Enum_1::Monster, "_LaSignora" };
|
||||
SimpleFilter Shogun = { app::EntityType__Enum_1::Monster, "_Shougun" };
|
||||
SimpleFilter EyeOfTheStorm = { app::EntityType__Enum_1::Monster, "_Elemental_Wind" };
|
||||
SimpleFilter ElectroHypostasis = { app::EntityType__Enum_1::Monster, "_Effigy_Electric" };
|
||||
SimpleFilter AnemoHypostasis = { app::EntityType__Enum_1::Monster, "_Effigy_Wind" };
|
||||
SimpleFilter GeoHypostasis = { app::EntityType__Enum_1::Monster, "_Effigy_Rock" };
|
||||
SimpleFilter HydroHypostasis = { app::EntityType__Enum_1::Monster, "_Effigy_Water" };
|
||||
SimpleFilter CryoHypostasis = { app::EntityType__Enum_1::Monster, "_Effigy_Ice" };
|
||||
SimpleFilter PyroHypostasis = { app::EntityType__Enum_1::Monster, "_Effigy_Fire" };
|
||||
SimpleFilter HydroHypostasisSummon = { app::EntityType__Enum_1::Monster, "_Effigy_Water_Underling_Ooze" };
|
||||
SimpleFilter Oceanid = { app::EntityType__Enum_1::Monster, "_Oceanid" };
|
||||
SimpleFilter OceanidBoar = { app::EntityType__Enum_1::Monster, "_Oceanid_Boar" };
|
||||
SimpleFilter OceanidCrane = { app::EntityType__Enum_1::Monster, "_Oceanid_Crane" };
|
||||
SimpleFilter OceanidCrab = { app::EntityType__Enum_1::Monster, "_Oceanid_Crab" };
|
||||
SimpleFilter OceanidFinch = { app::EntityType__Enum_1::Monster, "_Oceanid_Tit" };
|
||||
SimpleFilter OceanidWigeon = { app::EntityType__Enum_1::Monster, "_Oceanid_Wigeon" };
|
||||
SimpleFilter OceanidSquirrel = { app::EntityType__Enum_1::Monster, "_Oceanid_Squirrel" };
|
||||
SimpleFilter OceanidFrog = { app::EntityType__Enum_1::Monster, "_Oceanid_Frog" };
|
||||
SimpleFilter OceanidFalcon = { app::EntityType__Enum_1::Monster, "_Oceanid_Falcon" };
|
||||
SimpleFilter PerpetualMechanicalArray = { app::EntityType__Enum_1::Monster, "_Apparatus_Perpetual" };
|
||||
SimpleFilter PrimoGeovishap = { app::EntityType__Enum_1::Monster, "_Drake_Primo_Rock" };
|
||||
SimpleFilter HydroBathysmalVishap = { app::EntityType__Enum_1::Monster, "_Drake_Deepsea_Water" };
|
||||
SimpleFilter CryoBathysmalVishap = { app::EntityType__Enum_1::Monster, "_Drake_Deepsea_Ice" };
|
||||
SimpleFilter ElectroBathysmalVishap = { app::EntityType__Enum_1::Monster, "_Drake_Deepsea_Electric" };
|
||||
SimpleFilter ThunderManifestation = { app::EntityType__Enum_1::Monster, "_Raijin" };
|
||||
SimpleFilter HydroAbyssHerald = { app::EntityType__Enum_1::Monster, "_Invoker_Herald_Water" };
|
||||
SimpleFilter ElectroAbyssLector = { app::EntityType__Enum_1::Monster, "_Invoker_Deacon_Electric" };
|
||||
SimpleFilter PyroAbyssLector = { app::EntityType__Enum_1::Monster, "_Invoker_Deacon_Fire" };
|
||||
SimpleFilter BlackSerpentKnight = { app::EntityType__Enum_1::Monster, "_Darkwraith_Strong_Wind" };
|
||||
SimpleFilter GoldenWolflord = { app::EntityType__Enum_1::Monster, "_Hound_Planelurker" };
|
||||
SimpleFilter RuinSerpent = { app::EntityType__Enum_1::Monster, "_Nithhoggr" };
|
||||
SimpleFilter Millelith = { app::EntityType__Enum_1::Monster, "_Millelith_" };
|
||||
SimpleFilter ShogunateInfantry = { app::EntityType__Enum_1::Monster, "_Aahigaru_" };
|
||||
SimpleFilter SangonomiyaCohort = { app::EntityType__Enum_1::Monster, "_AahigaruTaisho_" };
|
||||
SimpleFilter CryoRegisvine = { app::EntityType__Enum_1::Monster, "_Regisvine_Ice" };
|
||||
SimpleFilter PyroRegisvine = { app::EntityType__Enum_1::Monster, "_Regisvine_Fire" };
|
||||
SimpleFilter MaguuKenki = { app::EntityType__Enum_1::Monster, "_Ningyo" };
|
||||
SimpleFilter Cicin = { app::EntityType__Enum_1::Monster, "_Cicin" };
|
||||
SimpleFilter Beisht = { app::EntityType__Enum_1::Monster, "_Eldritch" };
|
||||
SimpleFilter AbyssMage = { EntityType__Enum_1::Monster, "_Abyss" };
|
||||
SimpleFilter FatuiAgent = { EntityType__Enum_1::Monster, "_Fatuus" };
|
||||
SimpleFilter FatuiCicinMage = { EntityType__Enum_1::Monster, "_Fatuus_Summoner" };
|
||||
SimpleFilter FatuiMirrorMaiden = { EntityType__Enum_1::Monster, "_Fatuus_Maiden" };
|
||||
SimpleFilter FatuiSkirmisher = { EntityType__Enum_1::Monster, "_Skirmisher" };
|
||||
SimpleFilter Geovishap = { EntityType__Enum_1::Monster, "_Drake_Rock" };
|
||||
SimpleFilter GeovishapHatchling = { EntityType__Enum_1::Monster, "_Wyrm_Rock" };
|
||||
SimpleFilter Hilichurl = { EntityType__Enum_1::Monster, "_Hili" };
|
||||
SimpleFilter Mitachurl = { EntityType__Enum_1::Monster, "_Brute" };
|
||||
SimpleFilter Nobushi = { EntityType__Enum_1::Monster, "_Ronin" };
|
||||
SimpleFilter Kairagi = { EntityType__Enum_1::Monster, "_Kairagi" };
|
||||
SimpleFilter RuinGuard = { EntityType__Enum_1::Monster, "_Defender" };
|
||||
SimpleFilter RuinHunter = { EntityType__Enum_1::Monster, "_Formathr" };
|
||||
SimpleFilter RuinGrader = { EntityType__Enum_1::Monster, "_Konungmathr" };
|
||||
SimpleFilter RuinSentinel = { EntityType__Enum_1::Monster, "_Apparatus_Enigma" };
|
||||
SimpleFilter Samachurl = { EntityType__Enum_1::Monster, "_Shaman" };
|
||||
SimpleFilter ShadowyHusk = { EntityType__Enum_1::Monster, "ForlornVessel_Strong" };
|
||||
SimpleFilter Slime = { EntityType__Enum_1::Monster, "_Slime" };
|
||||
SimpleFilter FloatingFungus = { EntityType__Enum_1::Monster, "_Fungus" };
|
||||
SimpleFilter Specter = { EntityType__Enum_1::Monster, "_Sylph" };
|
||||
SimpleFilter TreasureHoarder = { EntityType__Enum_1::Monster, "_Thoarder" };
|
||||
SimpleFilter UnusualHilichurl = { EntityType__Enum_1::Monster, "_Hili_Wei" };
|
||||
SimpleFilter Whopperflower = { EntityType__Enum_1::Monster, "_Mimik" };
|
||||
SimpleFilter RifthoundWhelp = { EntityType__Enum_1::Monster, "_Hound_Kanis" };
|
||||
SimpleFilter Rifthound = { EntityType__Enum_1::Monster, "_Hound_Riftstalker" };
|
||||
SimpleFilter Dvalin = { EntityType__Enum_1::Monster, "_Dragon_Dvalin" };
|
||||
SimpleFilter Andrius = { EntityType__Enum_1::Monster, "_Wolf_LupiBoreas" };
|
||||
SimpleFilter Tartaglia = { EntityType__Enum_1::Monster, "_Tartaglia" };
|
||||
SimpleFilter Azhdaha = { EntityType__Enum_1::Monster, "_Dahaka" };
|
||||
SimpleFilter Signora = { EntityType__Enum_1::Monster, "_LaSignora" };
|
||||
SimpleFilter Shogun = { EntityType__Enum_1::Monster, "_Shougun" };
|
||||
SimpleFilter EyeOfTheStorm = { EntityType__Enum_1::Monster, "_Elemental_Wind" };
|
||||
SimpleFilter ElectroHypostasis = { EntityType__Enum_1::Monster, "_Effigy_Electric" };
|
||||
SimpleFilter AnemoHypostasis = { EntityType__Enum_1::Monster, "_Effigy_Wind" };
|
||||
SimpleFilter GeoHypostasis = { EntityType__Enum_1::Monster, "_Effigy_Rock" };
|
||||
SimpleFilter HydroHypostasis = { EntityType__Enum_1::Monster, "_Effigy_Water" };
|
||||
SimpleFilter CryoHypostasis = { EntityType__Enum_1::Monster, "_Effigy_Ice" };
|
||||
SimpleFilter PyroHypostasis = { EntityType__Enum_1::Monster, "_Effigy_Fire" };
|
||||
SimpleFilter HydroHypostasisSummon = { EntityType__Enum_1::Monster, "_Effigy_Water_Underling_Ooze" };
|
||||
SimpleFilter Oceanid = { EntityType__Enum_1::Monster, "_Oceanid" };
|
||||
SimpleFilter OceanidBoar = { EntityType__Enum_1::Monster, "_Oceanid_Boar" };
|
||||
SimpleFilter OceanidCrane = { EntityType__Enum_1::Monster, "_Oceanid_Crane" };
|
||||
SimpleFilter OceanidCrab = { EntityType__Enum_1::Monster, "_Oceanid_Crab" };
|
||||
SimpleFilter OceanidFinch = { EntityType__Enum_1::Monster, "_Oceanid_Tit" };
|
||||
SimpleFilter OceanidWigeon = { EntityType__Enum_1::Monster, "_Oceanid_Wigeon" };
|
||||
SimpleFilter OceanidSquirrel = { EntityType__Enum_1::Monster, "_Oceanid_Squirrel" };
|
||||
SimpleFilter OceanidFrog = { EntityType__Enum_1::Monster, "_Oceanid_Frog" };
|
||||
SimpleFilter OceanidFalcon = { EntityType__Enum_1::Monster, "_Oceanid_Falcon" };
|
||||
SimpleFilter PerpetualMechanicalArray = { EntityType__Enum_1::Monster, "_Apparatus_Perpetual" };
|
||||
SimpleFilter PrimoGeovishap = { EntityType__Enum_1::Monster, "_Drake_Primo_Rock" };
|
||||
SimpleFilter HydroBathysmalVishap = { EntityType__Enum_1::Monster, "_Drake_Deepsea_Water" };
|
||||
SimpleFilter CryoBathysmalVishap = { EntityType__Enum_1::Monster, "_Drake_Deepsea_Ice" };
|
||||
SimpleFilter ElectroBathysmalVishap = { EntityType__Enum_1::Monster, "_Drake_Deepsea_Electric" };
|
||||
SimpleFilter ThunderManifestation = { EntityType__Enum_1::Monster, "_Raijin" };
|
||||
SimpleFilter HydroAbyssHerald = { EntityType__Enum_1::Monster, "_Invoker_Herald_Water" };
|
||||
SimpleFilter ElectroAbyssLector = { EntityType__Enum_1::Monster, "_Invoker_Deacon_Electric" };
|
||||
SimpleFilter PyroAbyssLector = { EntityType__Enum_1::Monster, "_Invoker_Deacon_Fire" };
|
||||
SimpleFilter BlackSerpentKnight = { EntityType__Enum_1::Monster, "_Darkwraith_Strong_Wind" };
|
||||
SimpleFilter GoldenWolflord = { EntityType__Enum_1::Monster, "_Hound_Planelurker" };
|
||||
SimpleFilter RuinSerpent = { EntityType__Enum_1::Monster, "_Nithhoggr" };
|
||||
SimpleFilter Millelith = { EntityType__Enum_1::Monster, "_Millelith_" };
|
||||
SimpleFilter ShogunateInfantry = { EntityType__Enum_1::Monster, "_Aahigaru_" };
|
||||
SimpleFilter SangonomiyaCohort = { EntityType__Enum_1::Monster, "_AahigaruTaisho_" };
|
||||
SimpleFilter CryoRegisvine = { EntityType__Enum_1::Monster, "_Regisvine_Ice" };
|
||||
SimpleFilter PyroRegisvine = { EntityType__Enum_1::Monster, "_Regisvine_Fire" };
|
||||
SimpleFilter MaguuKenki = { EntityType__Enum_1::Monster, "_Ningyo" };
|
||||
SimpleFilter Cicin = { EntityType__Enum_1::Monster, "_Cicin" };
|
||||
SimpleFilter Beisht = { EntityType__Enum_1::Monster, "_Eldritch" };
|
||||
}
|
||||
|
||||
namespace plant
|
||||
{
|
||||
SimpleFilter AmakumoFruit = { app::EntityType__Enum_1::GatherObject, "_Electroseed" };
|
||||
SimpleFilter Apple = { app::EntityType__Enum_1::GatherObject, "_Drop_Plant_Apple" };
|
||||
SimpleFilter BambooShoot = { app::EntityType__Enum_1::GatherObject, "_Bambooshoot" };
|
||||
SimpleFilter Berry = { app::EntityType__Enum_1::GatherObject, "_Raspberry" };
|
||||
SimpleFilter CallaLily = { app::EntityType__Enum_1::GatherObject, "_Plant_Callas" };
|
||||
SimpleFilter Cabbage = { app::EntityType__Enum_1::GatherObject, "_Plant_Cabbage" };
|
||||
SimpleFilter Carrot = { app::EntityType__Enum_1::GatherObject, "_Plant_Carrot" };
|
||||
SimpleFilter Cecilia = { app::EntityType__Enum_1::GatherObject, "_Cecilia" };
|
||||
SimpleFilter DandelionSeed = { app::EntityType__Enum_1::GatherObject, "_Plant_Dandelion" };
|
||||
SimpleFilter Dendrobium = { app::EntityType__Enum_1::GatherObject, "_Blooddendrobe" };
|
||||
SimpleFilter FlamingFlowerStamen = { app::EntityType__Enum_1::GatherObject, "_Flower_FireFlower" };
|
||||
SimpleFilter FluorescentFungus = { app::EntityType__Enum_1::GatherObject, "_Lampmushroom" };
|
||||
SimpleFilter GlazeLily = { app::EntityType__Enum_1::GatherObject, "_GlazedLily" };
|
||||
SimpleFilter Horsetail = { app::EntityType__Enum_1::GatherObject, "_HorseTail" };
|
||||
SimpleFilter JueyunChili = { app::EntityType__Enum_1::GatherObject, "_UltimateChilli_Fruit" };
|
||||
SimpleFilter LavenderMelon = { app::EntityType__Enum_1::GatherObject, "_Akebia" };
|
||||
SimpleFilter LotusHead = { app::EntityType__Enum_1::GatherObject, "_Lotus_Drop" };
|
||||
SimpleFilter Matsutake = { app::EntityType__Enum_1::GatherObject, "_Food_Matsutake" };
|
||||
SimpleFilter Mint = { app::EntityType__Enum_1::GatherObject, "_Plant_Mint" };
|
||||
SimpleFilter MistFlowerCorolla = { app::EntityType__Enum_1::GatherObject, "_Flower_IceFlower" };
|
||||
SimpleFilter Mushroom = { app::EntityType__Enum_1::GatherObject, "_Plant_Mushroom" };
|
||||
SimpleFilter NakuWeed = { app::EntityType__Enum_1::GatherObject, "_Howlgrass" };
|
||||
SimpleFilter PhilanemoMushroom = { app::EntityType__Enum_1::GatherObject, "_WindmilHunter" };
|
||||
SimpleFilter Pinecone = { app::EntityType__Enum_1::GatherObject, "_Drop_Plant_Pine" };
|
||||
SimpleFilter Potato = { app::EntityType__Enum_1::GatherObject, "_Plant_Potato" };
|
||||
SimpleFilter Qingxin = { app::EntityType__Enum_1::GatherObject, "_QingXin" };
|
||||
SimpleFilter Radish = { app::EntityType__Enum_1::GatherObject, "_Plant_Radish" };
|
||||
SimpleFilter SakuraBloom = { app::EntityType__Enum_1::GatherObject, "_Cherrypetals" };
|
||||
SimpleFilter SangoPearl = { app::EntityType__Enum_1::GatherObject, "_Coralpearl" };
|
||||
SimpleFilter SeaGanoderma = { app::EntityType__Enum_1::GatherObject, "_Electroanemones" };
|
||||
SimpleFilter Seagrass = { app::EntityType__Enum_1::GatherObject, "_Seagrass" };
|
||||
SimpleFilter SilkFlower = { app::EntityType__Enum_1::GatherObject, "_NiChang_Drop" };
|
||||
SimpleFilter SmallLampGrass = { app::EntityType__Enum_1::Field, "_Plant_Fuchsia" };
|
||||
SimpleFilter Snapdragon = { app::EntityType__Enum_1::GatherObject, "_Plant_Snapdragon" };
|
||||
SimpleFilter Sunsettia = { app::EntityType__Enum_1::GatherObject, "_SunsetFruit" };
|
||||
SimpleFilter SweetFlower = { app::EntityType__Enum_1::GatherObject, "_Plant_Whiteballet" };
|
||||
SimpleFilter Valberry = { app::EntityType__Enum_1::GatherObject, "_DropingBerry_Gather" };
|
||||
SimpleFilter Violetgrass = { app::EntityType__Enum_1::GatherObject, "_GlazedGrass" };
|
||||
SimpleFilter Wheat = { app::EntityType__Enum_1::GatherObject, "_Plant_Wheat" };
|
||||
SimpleFilter WindwheelAster = { app::EntityType__Enum_1::GatherObject, "_WindmilDaisy" };
|
||||
SimpleFilter Wolfhook = { app::EntityType__Enum_1::GatherObject, "_GogoFruit" };
|
||||
SimpleFilter RadishDrop = { app::EntityType__Enum_1::GatherObject, "_Plant_Carrot02_Clear" };
|
||||
SimpleFilter CarrotDrop = { app::EntityType__Enum_1::GatherObject, "_Plant_Radish02_Clear" };
|
||||
SimpleFilter AmakumoFruit = { EntityType__Enum_1::GatherObject, "_Electroseed" };
|
||||
SimpleFilter Apple = { EntityType__Enum_1::GatherObject, "_Drop_Plant_Apple" };
|
||||
SimpleFilter BambooShoot = { EntityType__Enum_1::GatherObject, "_Bambooshoot" };
|
||||
SimpleFilter Berry = { EntityType__Enum_1::GatherObject, "_Raspberry" };
|
||||
SimpleFilter CallaLily = { EntityType__Enum_1::GatherObject, "_Plant_Callas" };
|
||||
SimpleFilter Cabbage = { EntityType__Enum_1::GatherObject, "_Plant_Cabbage" };
|
||||
SimpleFilter Carrot = { EntityType__Enum_1::GatherObject, "_Plant_Carrot" };
|
||||
SimpleFilter Cecilia = { EntityType__Enum_1::GatherObject, "_Cecilia" };
|
||||
SimpleFilter DandelionSeed = { EntityType__Enum_1::GatherObject, "_Plant_Dandelion" };
|
||||
SimpleFilter Dendrobium = { EntityType__Enum_1::GatherObject, "_Blooddendrobe" };
|
||||
SimpleFilter FlamingFlowerStamen = { EntityType__Enum_1::GatherObject, "_Flower_FireFlower" };
|
||||
SimpleFilter FluorescentFungus = { EntityType__Enum_1::GatherObject, "_Lampmushroom" };
|
||||
SimpleFilter GlazeLily = { EntityType__Enum_1::GatherObject, "_GlazedLily" };
|
||||
SimpleFilter Horsetail = { EntityType__Enum_1::GatherObject, "_HorseTail" };
|
||||
SimpleFilter JueyunChili = { EntityType__Enum_1::GatherObject, "_UltimateChilli_Fruit" };
|
||||
SimpleFilter LavenderMelon = { EntityType__Enum_1::GatherObject, "_Akebia" };
|
||||
SimpleFilter LotusHead = { EntityType__Enum_1::GatherObject, "_Lotus_Drop" };
|
||||
SimpleFilter Matsutake = { EntityType__Enum_1::GatherObject, "_Food_Matsutake" };
|
||||
SimpleFilter Mint = { EntityType__Enum_1::GatherObject, "_Plant_Mint" };
|
||||
SimpleFilter MistFlowerCorolla = { EntityType__Enum_1::GatherObject, "_Flower_IceFlower" };
|
||||
SimpleFilter Mushroom = { EntityType__Enum_1::GatherObject, "_Plant_Mushroom" };
|
||||
SimpleFilter NakuWeed = { EntityType__Enum_1::GatherObject, "_Howlgrass" };
|
||||
SimpleFilter PhilanemoMushroom = { EntityType__Enum_1::GatherObject, "_WindmilHunter" };
|
||||
SimpleFilter Pinecone = { EntityType__Enum_1::GatherObject, "_Drop_Plant_Pine" };
|
||||
SimpleFilter Potato = { EntityType__Enum_1::GatherObject, "_Plant_Potato" };
|
||||
SimpleFilter Qingxin = { EntityType__Enum_1::GatherObject, "_QingXin" };
|
||||
SimpleFilter Radish = { EntityType__Enum_1::GatherObject, "_Plant_Radish" };
|
||||
SimpleFilter SakuraBloom = { EntityType__Enum_1::GatherObject, "_Cherrypetals" };
|
||||
SimpleFilter SangoPearl = { EntityType__Enum_1::GatherObject, "_Coralpearl" };
|
||||
SimpleFilter SeaGanoderma = { EntityType__Enum_1::GatherObject, "_Electroanemones" };
|
||||
SimpleFilter Seagrass = { EntityType__Enum_1::GatherObject, "_Seagrass" };
|
||||
SimpleFilter SilkFlower = { EntityType__Enum_1::GatherObject, "_NiChang_Drop" };
|
||||
SimpleFilter SmallLampGrass = { EntityType__Enum_1::Field, "_Plant_Fuchsia" };
|
||||
SimpleFilter Snapdragon = { EntityType__Enum_1::GatherObject, "_Plant_Snapdragon" };
|
||||
SimpleFilter Sunsettia = { EntityType__Enum_1::GatherObject, "_SunsetFruit" };
|
||||
SimpleFilter SweetFlower = { EntityType__Enum_1::GatherObject, "_Plant_Whiteballet" };
|
||||
SimpleFilter Valberry = { EntityType__Enum_1::GatherObject, "_DropingBerry_Gather" };
|
||||
SimpleFilter Violetgrass = { EntityType__Enum_1::GatherObject, "_GlazedGrass" };
|
||||
SimpleFilter Wheat = { EntityType__Enum_1::GatherObject, "_Plant_Wheat" };
|
||||
SimpleFilter WindwheelAster = { EntityType__Enum_1::GatherObject, "_WindmilDaisy" };
|
||||
SimpleFilter Wolfhook = { EntityType__Enum_1::GatherObject, "_GogoFruit" };
|
||||
SimpleFilter RadishDrop = { EntityType__Enum_1::GatherObject, "_Plant_Carrot02_Clear" };
|
||||
SimpleFilter CarrotDrop = { EntityType__Enum_1::GatherObject, "_Plant_Radish02_Clear" };
|
||||
}
|
||||
|
||||
namespace puzzle
|
||||
{
|
||||
SimpleFilter AncientRime = { app::EntityType__Enum_1::Gadget, "_IceSolidBulk" };
|
||||
SimpleFilter BakeDanuki = { app::EntityType__Enum_1::Monster, "Animal_Inu_Tanuki_" };
|
||||
SimpleFilter BloattyFloatty = { app::EntityType__Enum_1::Field, "_Flower_PongPongTree_" };
|
||||
WhitelistFilter CubeDevices = { std::vector<app::EntityType__Enum_1> {app::EntityType__Enum_1::Gadget, app::EntityType__Enum_1::Platform }, std::vector<std::string> {"_ElecStone", "_ElecSwitch" } };
|
||||
SimpleFilter EightStoneTablets = { app::EntityType__Enum_1::Gadget, "_HistoryBoard" };
|
||||
SimpleFilter ElectricConduction = { app::EntityType__Enum_1::Gear, "_ElectricPowerSource" };
|
||||
SimpleFilter RelayStone = { app::EntityType__Enum_1::Worktop, "_ElectricTransfer_" };
|
||||
WhitelistFilter ElectroSeelie = { std::vector<app::EntityType__Enum_1> {app::EntityType__Enum_1::Field, app::EntityType__Enum_1::Platform }, std::vector<std::string> {"_ElectricSeelie"} };
|
||||
SimpleFilter ElementalMonument = { app::EntityType__Enum_1::Gear, "_ElemTablet" };
|
||||
SimpleFilter FloatingAnemoSlime = { app::EntityType__Enum_1::Platform, "_WindSlime" };
|
||||
SimpleFilter Geogranum = { app::EntityType__Enum_1::Gadget, "_Property_Prop_RockFragment" };
|
||||
SimpleFilter GeoPuzzle = { app::EntityType__Enum_1::Field, "_Rockstraight_" };
|
||||
SimpleFilter LargeRockPile = { app::EntityType__Enum_1::Gadget, std::vector<std::string> {"_ElecRocks", "_StonePile_02" } };
|
||||
SimpleFilter LightUpTilePuzzle = { app::EntityType__Enum_1::Field, "_TwinStoryFloor" };
|
||||
SimpleFilter LightningStrikeProbe = { app::EntityType__Enum_1::Gadget, "_MagneticGear" };
|
||||
SimpleFilter LumenCage = { app::EntityType__Enum_1::Gadget, "_LitBulletLauncher" };
|
||||
SimpleFilter LuminousSeelie = { app::EntityType__Enum_1::Platform, "_LitSeelie" };
|
||||
SimpleFilter MistBubble = { app::EntityType__Enum_1::Platform, "_Suspiciousbubbles" };
|
||||
SimpleFilter OozingConcretions = { app::EntityType__Enum_1::Gadget, "_AbyssCoreLv" };
|
||||
SimpleFilter PirateHelm = { app::EntityType__Enum_1::Field, "_PirateHelm" };
|
||||
WhitelistFilter PressurePlate = { std::vector<app::EntityType__Enum_1> {app::EntityType__Enum_1::Field, app::EntityType__Enum_1::Gadget }, std::vector<std::string> {"Gear_Gravity", "_LitPathPlate" } };
|
||||
SimpleFilter SealLocations = { app::EntityType__Enum_1::Gadget, "_RunesKey" };
|
||||
SimpleFilter SeelieLamp = { app::EntityType__Enum_1::Field, "Gear_SeeliaLamp" };
|
||||
SimpleFilter Seelie = { app::EntityType__Enum_1::Platform, "Gear_Seelie" };
|
||||
SimpleFilter SmallRockPile = { app::EntityType__Enum_1::Gadget, "_StonePile_01" };
|
||||
SimpleFilter StormBarrier = { app::EntityType__Enum_1::Field, "_WindField_PushField" };
|
||||
SimpleFilter SwordHilt = { app::EntityType__Enum_1::Field, "_WastedSword_" };
|
||||
SimpleFilter Temari = { app::EntityType__Enum_1::Field, "_Temari" };
|
||||
SimpleFilter TorchPuzzle = { app::EntityType__Enum_1::Gadget, "_ImmortalFire" };
|
||||
SimpleFilter UniqueRocks = { app::EntityType__Enum_1::Gadget, "_Chalcedony" };
|
||||
SimpleFilter WarmingSeelie = { app::EntityType__Enum_1::Platform, "_FireSeelie" };
|
||||
SimpleFilter WindmillMechanism = { app::EntityType__Enum_1::Gear, "Gear_Windmill" };
|
||||
SimpleFilter AncientRime = { EntityType__Enum_1::Gadget, "_IceSolidBulk" };
|
||||
SimpleFilter BakeDanuki = { EntityType__Enum_1::Monster, "Animal_Inu_Tanuki_" };
|
||||
SimpleFilter BloattyFloatty = { EntityType__Enum_1::Field, "_Flower_PongPongTree_" };
|
||||
WhitelistFilter CubeDevices = { {EntityType__Enum_1::Gadget, EntityType__Enum_1::Platform }, {"_ElecStone", "_ElecSwitch" }};
|
||||
SimpleFilter EightStoneTablets = { EntityType__Enum_1::Gadget, "_HistoryBoard" };
|
||||
SimpleFilter ElectricConduction = { EntityType__Enum_1::Gear, "_ElectricPowerSource" };
|
||||
SimpleFilter RelayStone = { EntityType__Enum_1::Worktop, "_ElectricTransfer_" };
|
||||
WhitelistFilter ElectroSeelie = { {EntityType__Enum_1::Field, EntityType__Enum_1::Platform }, "_ElectricSeelie" };
|
||||
SimpleFilter ElementalMonument = { EntityType__Enum_1::Gear, "_ElemTablet" };
|
||||
SimpleFilter FloatingAnemoSlime = { EntityType__Enum_1::Platform, "_WindSlime" };
|
||||
SimpleFilter Geogranum = { EntityType__Enum_1::Gadget, "_Property_Prop_RockFragment" };
|
||||
SimpleFilter GeoPuzzle = { EntityType__Enum_1::Field, "_Rockstraight_" };
|
||||
SimpleFilter LargeRockPile = { EntityType__Enum_1::Gadget, {"_ElecRocks", "_StonePile_02" } };
|
||||
SimpleFilter LightUpTilePuzzle = { EntityType__Enum_1::Field, "_TwinStoryFloor" };
|
||||
SimpleFilter LightningStrikeProbe = { EntityType__Enum_1::Gadget, "_MagneticGear" };
|
||||
SimpleFilter LumenCage = { EntityType__Enum_1::Gadget, "_LitBulletLauncher" };
|
||||
SimpleFilter LuminousSeelie = { EntityType__Enum_1::Platform, "_LitSeelie" };
|
||||
SimpleFilter MistBubble = { EntityType__Enum_1::Platform, "_Suspiciousbubbles" };
|
||||
SimpleFilter OozingConcretions = { EntityType__Enum_1::Gadget, "_AbyssCoreLv" };
|
||||
SimpleFilter PirateHelm = { EntityType__Enum_1::Field, "_PirateHelm" };
|
||||
WhitelistFilter PressurePlate = { {EntityType__Enum_1::Field, EntityType__Enum_1::Gadget }, {"Gear_Gravity", "_LitPathPlate" } };
|
||||
SimpleFilter SealLocations = { EntityType__Enum_1::Gadget, "_RunesKey" };
|
||||
SimpleFilter SeelieLamp = { EntityType__Enum_1::Field, "Gear_SeeliaLamp" };
|
||||
SimpleFilter Seelie = { EntityType__Enum_1::Platform, "Gear_Seelie" };
|
||||
SimpleFilter SmallRockPile = { EntityType__Enum_1::Gadget, "_StonePile_01" };
|
||||
SimpleFilter StormBarrier = { EntityType__Enum_1::Field, "_WindField_PushField" };
|
||||
SimpleFilter SwordHilt = { EntityType__Enum_1::Field, "_WastedSword_" };
|
||||
SimpleFilter Temari = { EntityType__Enum_1::Field, "_Temari" };
|
||||
SimpleFilter TorchPuzzle = { EntityType__Enum_1::Gadget, "_ImmortalFire" };
|
||||
SimpleFilter UniqueRocks = { EntityType__Enum_1::Gadget, "_Chalcedony" };
|
||||
SimpleFilter WarmingSeelie = { EntityType__Enum_1::Platform, "_FireSeelie" };
|
||||
SimpleFilter WindmillMechanism = { EntityType__Enum_1::Gear, "Gear_Windmill" };
|
||||
}
|
||||
|
||||
namespace combined
|
||||
{
|
||||
SimpleFilter Oculies = {
|
||||
featured::Anemoculus +
|
||||
featured::CrimsonAgate +
|
||||
featured::Electroculus +
|
||||
featured::Geoculus +
|
||||
featured::Lumenspar +
|
||||
featured::Anemoculus,
|
||||
featured::CrimsonAgate,
|
||||
featured::Electroculus,
|
||||
featured::Geoculus,
|
||||
featured::Lumenspar,
|
||||
featured::KeySigil
|
||||
};
|
||||
SimpleFilter Chests = { app::EntityType__Enum_1::Chest };
|
||||
SimpleFilter Chests = { EntityType__Enum_1::Chest };
|
||||
SimpleFilter Ores = {
|
||||
mineral::AmethystLump +
|
||||
mineral::ArchaicStone +
|
||||
mineral::CorLapis +
|
||||
mineral::CrystalChunk +
|
||||
mineral::CrystalMarrow +
|
||||
mineral::ElectroCrystal +
|
||||
mineral::IronChunk +
|
||||
mineral::NoctilucousJade +
|
||||
mineral::MagicalCrystalChunk +
|
||||
mineral::Starsilver +
|
||||
mineral::AmethystLump,
|
||||
mineral::ArchaicStone,
|
||||
mineral::CorLapis,
|
||||
mineral::CrystalChunk,
|
||||
mineral::CrystalMarrow,
|
||||
mineral::ElectroCrystal,
|
||||
mineral::IronChunk,
|
||||
mineral::NoctilucousJade,
|
||||
mineral::MagicalCrystalChunk,
|
||||
mineral::Starsilver,
|
||||
mineral::WhiteIronChunk
|
||||
};
|
||||
WhitelistFilter Doodads = {
|
||||
std::vector<app::EntityType__Enum_1> { app::EntityType__Enum_1::Gadget },
|
||||
std::vector<std::string> {
|
||||
EntityType__Enum_1::Gadget,
|
||||
{
|
||||
"Monster_Effigy_Electric_01",
|
||||
"Monster_Effigy_Electric_02",
|
||||
"Monster_Effigy_Wind_01",
|
||||
@ -340,151 +342,149 @@ namespace cheat::game::filters
|
||||
"StonePile",
|
||||
"BrokenWall",
|
||||
"WoodenBox"
|
||||
} };
|
||||
SimpleFilter Animals = { app::EntityType__Enum_1::EnvAnimal };
|
||||
}
|
||||
};
|
||||
SimpleFilter Animals = { EntityType__Enum_1::EnvAnimal };
|
||||
SimpleFilter AnimalDrop = {
|
||||
living::Falcon +
|
||||
living::Pigeon +
|
||||
living::Finch +
|
||||
living::Wigeon +
|
||||
living::Crane +
|
||||
living::Crow +
|
||||
living::Fox +
|
||||
living::Squirrel +
|
||||
living::Boar +
|
||||
living::Falcon,
|
||||
living::Pigeon,
|
||||
living::Finch,
|
||||
living::Wigeon,
|
||||
living::Crane,
|
||||
living::Crow,
|
||||
living::Fox,
|
||||
living::Squirrel,
|
||||
living::Boar,
|
||||
living::Weasel
|
||||
};
|
||||
SimpleFilter AnimalPickUp = {
|
||||
living::CrystalCore +
|
||||
living::Salamander +
|
||||
living::Frog +
|
||||
living::Crab +
|
||||
living::LizardTail +
|
||||
living::Eel +
|
||||
living::Onikabuto +
|
||||
living::ButterflyWings +
|
||||
living::LucklightFly +
|
||||
living::LuminescentSpine +
|
||||
living::Starconch +
|
||||
living::BirdEgg +
|
||||
living::WeaselThief +
|
||||
living::CrystalCore,
|
||||
living::Salamander,
|
||||
living::Frog,
|
||||
living::Crab,
|
||||
living::LizardTail,
|
||||
living::Eel,
|
||||
living::Onikabuto,
|
||||
living::ButterflyWings,
|
||||
living::LucklightFly,
|
||||
living::LuminescentSpine,
|
||||
living::Starconch,
|
||||
living::BirdEgg,
|
||||
living::WeaselThief,
|
||||
living::Fish
|
||||
};
|
||||
SimpleFilter AnimalNPC = {
|
||||
living::Dog +
|
||||
living::Cat +
|
||||
living::Kitsune +
|
||||
living::Dog,
|
||||
living::Cat,
|
||||
living::Kitsune,
|
||||
living::BakeDanuki
|
||||
};
|
||||
SimpleFilter Monsters = { app::EntityType__Enum_1::Monster };
|
||||
SimpleFilter Monsters = { EntityType__Enum_1::Monster };
|
||||
SimpleFilter MonsterCommon = {
|
||||
monster::Slime +
|
||||
monster::FloatingFungus +
|
||||
monster::Specter +
|
||||
monster::Whopperflower +
|
||||
monster::Hilichurl +
|
||||
monster::Samachurl +
|
||||
monster::UnusualHilichurl +
|
||||
monster::FatuiSkirmisher +
|
||||
monster::TreasureHoarder +
|
||||
monster::Nobushi +
|
||||
monster::Kairagi +
|
||||
monster::Millelith +
|
||||
monster::ShogunateInfantry +
|
||||
monster::Slime,
|
||||
monster::FloatingFungus,
|
||||
monster::Specter,
|
||||
monster::Whopperflower,
|
||||
monster::Hilichurl,
|
||||
monster::Samachurl,
|
||||
monster::UnusualHilichurl,
|
||||
monster::FatuiSkirmisher,
|
||||
monster::TreasureHoarder,
|
||||
monster::Nobushi,
|
||||
monster::Kairagi,
|
||||
monster::Millelith,
|
||||
monster::ShogunateInfantry,
|
||||
monster::SangonomiyaCohort
|
||||
};
|
||||
SimpleFilter MonsterElites = {
|
||||
monster::Mitachurl +
|
||||
monster::AbyssMage +
|
||||
monster::HydroAbyssHerald +
|
||||
monster::PyroAbyssLector +
|
||||
monster::ElectroAbyssLector +
|
||||
monster::RifthoundWhelp +
|
||||
monster::Rifthound +
|
||||
monster::ShadowyHusk +
|
||||
monster::RuinGuard +
|
||||
monster::RuinHunter +
|
||||
monster::RuinGrader +
|
||||
monster::RuinSentinel +
|
||||
monster::Cicin +
|
||||
monster::FatuiCicinMage +
|
||||
monster::FatuiAgent +
|
||||
monster::FatuiMirrorMaiden +
|
||||
monster::GeovishapHatchling +
|
||||
monster::Geovishap +
|
||||
monster::HydroBathysmalVishap +
|
||||
monster::EyeOfTheStorm +
|
||||
monster::Mitachurl,
|
||||
monster::AbyssMage,
|
||||
monster::HydroAbyssHerald,
|
||||
monster::PyroAbyssLector,
|
||||
monster::ElectroAbyssLector,
|
||||
monster::RifthoundWhelp,
|
||||
monster::Rifthound,
|
||||
monster::ShadowyHusk,
|
||||
monster::RuinGuard,
|
||||
monster::RuinHunter,
|
||||
monster::RuinGrader,
|
||||
monster::RuinSentinel,
|
||||
monster::Cicin,
|
||||
monster::FatuiCicinMage,
|
||||
monster::FatuiAgent,
|
||||
monster::FatuiMirrorMaiden,
|
||||
monster::GeovishapHatchling,
|
||||
monster::Geovishap,
|
||||
monster::HydroBathysmalVishap,
|
||||
monster::EyeOfTheStorm,
|
||||
monster::BlackSerpentKnight
|
||||
};
|
||||
SimpleFilter MonsterBosses = {
|
||||
// Adding these comments for better tracking.
|
||||
// Trounce
|
||||
monster::Dvalin +
|
||||
monster::Azhdaha +
|
||||
monster::Signora +
|
||||
monster::Shogun +
|
||||
monster::Andrius +
|
||||
monster::Tartaglia +
|
||||
monster::Dvalin,
|
||||
monster::Azhdaha,
|
||||
monster::Signora,
|
||||
monster::Shogun,
|
||||
monster::Andrius,
|
||||
monster::Tartaglia,
|
||||
// Mondstadt
|
||||
monster::CryoRegisvine +
|
||||
monster::ElectroHypostasis +
|
||||
monster::AnemoHypostasis +
|
||||
monster::CryoHypostasis +
|
||||
monster::CryoRegisvine,
|
||||
monster::ElectroHypostasis,
|
||||
monster::AnemoHypostasis,
|
||||
monster::CryoHypostasis,
|
||||
// Liyue
|
||||
monster::PyroRegisvine +
|
||||
monster::Oceanid +
|
||||
monster::OceanidBoar +
|
||||
monster::OceanidCrab +
|
||||
monster::OceanidCrane +
|
||||
monster::OceanidFalcon +
|
||||
monster::OceanidFinch +
|
||||
monster::OceanidFrog +
|
||||
monster::OceanidSquirrel +
|
||||
monster::OceanidWigeon +
|
||||
monster::GeoHypostasis +
|
||||
monster::RuinSerpent +
|
||||
monster::PrimoGeovishap +
|
||||
monster::Beisht +
|
||||
monster::PyroRegisvine,
|
||||
monster::Oceanid,
|
||||
monster::OceanidBoar,
|
||||
monster::OceanidCrab,
|
||||
monster::OceanidCrane,
|
||||
monster::OceanidFalcon,
|
||||
monster::OceanidFinch,
|
||||
monster::OceanidFrog,
|
||||
monster::OceanidSquirrel,
|
||||
monster::OceanidWigeon,
|
||||
monster::GeoHypostasis,
|
||||
monster::RuinSerpent,
|
||||
monster::PrimoGeovishap,
|
||||
monster::Beisht,
|
||||
// Inazuma
|
||||
monster::PerpetualMechanicalArray +
|
||||
monster::PyroHypostasis +
|
||||
monster::MaguuKenki +
|
||||
monster::ThunderManifestation +
|
||||
monster::GoldenWolflord +
|
||||
monster::HydroHypostasis +
|
||||
monster::HydroHypostasisSummon +
|
||||
monster::CryoBathysmalVishap +
|
||||
monster::PerpetualMechanicalArray,
|
||||
monster::PyroHypostasis,
|
||||
monster::MaguuKenki,
|
||||
monster::ThunderManifestation,
|
||||
monster::GoldenWolflord,
|
||||
monster::HydroHypostasis,
|
||||
monster::HydroHypostasisSummon,
|
||||
monster::CryoBathysmalVishap,
|
||||
monster::ElectroBathysmalVishap
|
||||
};
|
||||
SimpleFilter MonsterShielded = {
|
||||
// Taken from https://genshin-impact.fandom.com/wiki/Shields/Enemy.
|
||||
// We won't be including Regisvines and enemy objects here,
|
||||
// just regular monsters.
|
||||
monster::AbyssMage +
|
||||
monster::Slime +
|
||||
monster::Mitachurl +
|
||||
monster::ElectroAbyssLector +
|
||||
monster::HydroAbyssHerald +
|
||||
monster::PyroAbyssLector +
|
||||
monster::FatuiCicinMage +
|
||||
monster::Cicin +
|
||||
monster::AbyssMage,
|
||||
monster::Slime,
|
||||
monster::Mitachurl,
|
||||
monster::ElectroAbyssLector,
|
||||
monster::HydroAbyssHerald,
|
||||
monster::PyroAbyssLector,
|
||||
monster::FatuiCicinMage,
|
||||
monster::Cicin,
|
||||
monster::Whopperflower
|
||||
};
|
||||
SimpleFilter MonsterEquips = { app::EntityType__Enum_1::MonsterEquip };
|
||||
SimpleFilter MonsterEquips = { EntityType__Enum_1::MonsterEquip };
|
||||
BlacklistFilter Living = {
|
||||
std::vector<app::EntityType__Enum_1> {
|
||||
app::EntityType__Enum_1::EnvAnimal,
|
||||
app::EntityType__Enum_1::Monster
|
||||
},
|
||||
std::vector<std::string> {
|
||||
{EntityType__Enum_1::EnvAnimal, EntityType__Enum_1::Monster},
|
||||
{
|
||||
// Environmental mobs
|
||||
"Cat", "DogPrick", "Vulpues", "Inu_Tanuki",
|
||||
// Overworld bosses
|
||||
"Ningyo", "Regisvine", "Hypostasis", "Planelurker", "Nithhoggr"
|
||||
}
|
||||
};
|
||||
SimpleFilter OrganicTargets = Monsters + Animals; // Solael: Please don't mess around with this filter.
|
||||
SimpleFilter OrganicTargets = { Monsters, Animals }; // Solael: Please don't mess around with this filter.
|
||||
//m0nkrel: We can choose the entities we need ourselves so as not to magnetize cats, dogs, etc.
|
||||
//AdvancedFilter Animals = { std::vector<app::EntityType__Enum_1> {app::EntityType__Enum_1::EnvAnimal, app::EntityType__Enum_1::Monster }, std::vector<std::string> {"Crane","Tit", "Boar" , "Squirrel", "Fox", "Pigeon", "Wigeon", "Falcon" ,"Marten" } };
|
||||
//AdvancedFilter Animals = { {EntityType__Enum_1::EnvAnimal, EntityType__Enum_1::Monster }, {"Crane", "Tit", "Boar", "Squirrel", "Fox", "Pigeon", "Wigeon", "Falcon" ,"Marten" } };
|
||||
}
|
||||
}
|
@ -10,6 +10,8 @@ namespace cheat::game::filters
|
||||
{
|
||||
extern SimpleFilter Book;
|
||||
extern SimpleFilter Viewpoint;
|
||||
extern SimpleFilter WoodenCrate;
|
||||
extern SimpleFilter GeoSigil;
|
||||
|
||||
extern ChestFilter RadiantSpincrystal;
|
||||
extern ChestFilter BookPage;
|
||||
|
@ -1387,13 +1387,25 @@ namespace cheat::feature
|
||||
bool mapActive = IsMapActive();
|
||||
|
||||
if (mapActive != _lastMapActive)
|
||||
{
|
||||
MapToggled(mapActive);
|
||||
|
||||
if (!mapActive)
|
||||
renderer::SetInputLock(this, false);
|
||||
}
|
||||
|
||||
_lastMapActive = mapActive;
|
||||
|
||||
if (!mapActive)
|
||||
return;
|
||||
|
||||
// If any InputText is focused, the game will not respond any keyboard input.
|
||||
auto ctx = ImGui::GetCurrentContext();
|
||||
if (ctx->IO.WantCaptureKeyboard && !renderer::IsInputLocked())
|
||||
renderer::SetInputLock(this, true);
|
||||
else if (!ctx->IO.WantCaptureKeyboard && renderer::IsInputLocked())
|
||||
renderer::SetInputLock(this, false);
|
||||
|
||||
auto mapManager = GET_SINGLETON(MoleMole_MapManager);
|
||||
if (mapManager == nullptr)
|
||||
return;
|
||||
|
77
cheat-library/src/user/cheat/player/AutoRun.cpp
Normal file
77
cheat-library/src/user/cheat/player/AutoRun.cpp
Normal file
@ -0,0 +1,77 @@
|
||||
#include "pch-il2cpp.h"
|
||||
#include "AutoRun.h"
|
||||
|
||||
#include <helpers.h>
|
||||
#include <cheat/events.h>
|
||||
#include <cheat/game/EntityManager.h>
|
||||
#include <cheat/game/util.h>
|
||||
#include <cheat-base/render/renderer.h>
|
||||
|
||||
namespace cheat::feature
|
||||
{
|
||||
|
||||
AutoRun::AutoRun() : Feature(),
|
||||
NF(f_Enabled, "Auto Run", "Player::AutoRun", false),
|
||||
NF(f_Speed, "Speed", "Player::AutoRun",1.0f)
|
||||
{
|
||||
events::GameUpdateEvent += MY_METHOD_HANDLER(AutoRun::OnGameUpdate);
|
||||
}
|
||||
|
||||
const FeatureGUIInfo& AutoRun::GetGUIInfo() const
|
||||
{
|
||||
static const FeatureGUIInfo info{ "Auto Run", "Player", true };
|
||||
return info;
|
||||
}
|
||||
|
||||
void AutoRun::DrawMain()
|
||||
{
|
||||
ConfigWidget("Enable", f_Enabled);
|
||||
ConfigWidget("Auto Run speed", f_Speed, 0.01f, 0.01f, 1000.0f, "Speed of character \n Not recommended going above 5");
|
||||
}
|
||||
|
||||
bool AutoRun::NeedStatusDraw() const
|
||||
{
|
||||
return f_Enabled;
|
||||
}
|
||||
|
||||
void AutoRun::DrawStatus()
|
||||
{
|
||||
ImGui::Text("Auto Run[%.01f]",f_Speed.value());
|
||||
}
|
||||
|
||||
AutoRun& AutoRun::GetInstance()
|
||||
{
|
||||
static AutoRun instance;
|
||||
return instance;
|
||||
}
|
||||
|
||||
void EnableAutoRun(float speed) {
|
||||
|
||||
auto& manager = game::EntityManager::instance();
|
||||
auto avatarEntity = manager.avatar();
|
||||
|
||||
auto baseMove = avatarEntity->moveComponent();
|
||||
auto rigidBody = avatarEntity->rigidbody();
|
||||
|
||||
if (baseMove == nullptr || rigidBody == nullptr || renderer::IsInputLocked())
|
||||
return;
|
||||
|
||||
auto cameraEntity = game::Entity(reinterpret_cast<app::BaseEntity*>(manager.mainCamera()));
|
||||
auto relativeEntity = &cameraEntity;
|
||||
|
||||
app::Vector3 dir = relativeEntity->forward();
|
||||
app::Vector3 prevPos = avatarEntity->relativePosition();
|
||||
|
||||
float deltaTime = app::Time_get_deltaTime(nullptr);
|
||||
app::Vector3 newPos = prevPos + dir * speed * deltaTime;
|
||||
|
||||
avatarEntity->setRelativePosition(newPos);
|
||||
}
|
||||
|
||||
void AutoRun::OnGameUpdate() {
|
||||
if (f_Enabled) {
|
||||
float speed = f_Speed.value();
|
||||
EnableAutoRun(speed);
|
||||
}
|
||||
}
|
||||
}
|
27
cheat-library/src/user/cheat/player/AutoRun.h
Normal file
27
cheat-library/src/user/cheat/player/AutoRun.h
Normal file
@ -0,0 +1,27 @@
|
||||
#pragma once
|
||||
#include <cheat-base/cheat/Feature.h>
|
||||
#include <cheat-base/config/config.h>
|
||||
|
||||
|
||||
namespace cheat::feature
|
||||
{
|
||||
class AutoRun : public Feature
|
||||
{
|
||||
public:
|
||||
config::Field<config::Toggle<Hotkey>> f_Enabled;
|
||||
config::Field<float> f_Speed;
|
||||
|
||||
static AutoRun& GetInstance();
|
||||
|
||||
const FeatureGUIInfo& GetGUIInfo() const override;
|
||||
void DrawMain() override;
|
||||
|
||||
bool NeedStatusDraw() const override;
|
||||
void DrawStatus() override;
|
||||
|
||||
void OnGameUpdate();
|
||||
|
||||
private:
|
||||
AutoRun();
|
||||
};
|
||||
}
|
@ -9,7 +9,7 @@ namespace cheat::feature
|
||||
static bool HumanoidMoveFSM_CheckSprintCooldown_Hook(void* __this, MethodInfo* method);
|
||||
static bool LCAvatarCombat_IsEnergyMax_Hook(void* __this, MethodInfo* method);
|
||||
static bool LCAvatarCombat_OnSkillStart(app::LCAvatarCombat* __this, uint32_t skillID, float cdMultipler, MethodInfo* method);
|
||||
static bool LCAvatarCombat_IsSkillInCD_1(app::LCAvatarCombat* __this, app::LCAvatarCombat_OMIIMOJOHIP* skillInfo, MethodInfo* method);
|
||||
static bool LCAvatarCombat_IsSkillInCD_1(app::LCAvatarCombat* __this, app::LCAvatarCombat_LCAvatarCombat_SkillInfo* skillInfo, MethodInfo* method);
|
||||
|
||||
static void ActorAbilityPlugin_AddDynamicFloatWithRange_Hook(void* __this, app::String* key, float value, float minValue, float maxValue,
|
||||
bool forceDoAtRemote, MethodInfo* method);
|
||||
@ -124,7 +124,7 @@ namespace cheat::feature
|
||||
}
|
||||
|
||||
// Timer Speed Up / CoolDown Reduce New | RyujinZX#6666
|
||||
static bool LCAvatarCombat_IsSkillInCD_1(app::LCAvatarCombat* __this, app::LCAvatarCombat_OMIIMOJOHIP* skillInfo, MethodInfo* method) {
|
||||
static bool LCAvatarCombat_IsSkillInCD_1(app::LCAvatarCombat* __this, app::LCAvatarCombat_LCAvatarCombat_SkillInfo* skillInfo, MethodInfo* method) {
|
||||
NoCD& noCD = NoCD::GetInstance();
|
||||
if (noCD.f_AbilityReduce)
|
||||
{
|
||||
|
@ -20,255 +20,387 @@ namespace cheat::feature
|
||||
NF(f_DebugMode, "Debug Mode", "CustomTeleports", false), // Soon to be added
|
||||
NF(f_Enabled, "Custom Teleport", "CustomTeleports", false),
|
||||
NF(f_Next, "Teleport Next", "CustomTeleports", Hotkey(VK_OEM_6)),
|
||||
NF(f_Previous, "Teleport Previous", "CustomTeleports", Hotkey(VK_OEM_4))
|
||||
NF(f_Previous, "Teleport Previous", "CustomTeleports", Hotkey(VK_OEM_4)),
|
||||
dir(util::GetCurrentPath() / "teleports")
|
||||
{
|
||||
f_Next.value().PressedEvent += MY_METHOD_HANDLER(CustomTeleports::OnNextKeyPressed);
|
||||
f_Previous.value().PressedEvent += MY_METHOD_HANDLER(CustomTeleports::OnPreviousKeyPressed);
|
||||
f_Next.value().PressedEvent += MY_METHOD_HANDLER(CustomTeleports::OnNext);
|
||||
f_Previous.value().PressedEvent += MY_METHOD_HANDLER(CustomTeleports::OnPrevious);
|
||||
}
|
||||
|
||||
const FeatureGUIInfo& CustomTeleports::GetGUIInfo() const
|
||||
{
|
||||
static const FeatureGUIInfo info{ "Custom Teleports", "Teleport", true };
|
||||
return info;
|
||||
}
|
||||
|
||||
void CustomTeleports::DrawMain()
|
||||
void CustomTeleports::CheckFolder()
|
||||
{
|
||||
auto& entityManager = game::EntityManager::instance();
|
||||
auto& MapTeleport = MapTeleport::GetInstance();
|
||||
static std::string teleportName;
|
||||
static std::string search;
|
||||
app::Vector3 pos = app::ActorUtils_GetAvatarPos(nullptr);
|
||||
|
||||
ImGui::InputText("Teleport name", &teleportName);
|
||||
if (ImGui::Button("Add Teleport"))
|
||||
{
|
||||
// check if name is valid and doesnt contain special characters
|
||||
if (teleportName.find_first_of("\\/:*?\"<>|") != std::string::npos)
|
||||
return;
|
||||
|
||||
// check if already added
|
||||
if (std::any_of(teleports.begin(), teleports.end(), [](const auto& pair)
|
||||
{ return pair.first == teleportName; }))
|
||||
return;
|
||||
|
||||
selectedIndex = -1;
|
||||
UpdateIndexName();
|
||||
teleports.push_back({ teleportName, pos });
|
||||
|
||||
auto dir = std::filesystem::current_path();
|
||||
dir /= "teleports";
|
||||
if (!std::filesystem::exists(dir))
|
||||
std::filesystem::create_directory(dir);
|
||||
std::ofstream ofs(dir / (teleportName + ".json"));
|
||||
else return;
|
||||
}
|
||||
|
||||
bool CustomTeleports::ValidateTeleport(std::string name)
|
||||
{
|
||||
for (auto &Teleport : Teleports)
|
||||
if (Teleport.name == name)
|
||||
return false;
|
||||
if (name.find_first_of("\\/:*?\"<>|") != std::string::npos)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
Teleport CustomTeleports::Teleport_(std::string name, app::Vector3 position, std::string description)
|
||||
{
|
||||
Teleport t(name, position, description);
|
||||
return t;
|
||||
}
|
||||
|
||||
void CustomTeleports::SerializeTeleport(Teleport t)
|
||||
{
|
||||
Teleports.push_back(t);
|
||||
LOG_INFO("Teleport '%s' Loaded", t.name.c_str());
|
||||
CheckFolder();
|
||||
std::ofstream ofs(dir / (t.name + ".json"));
|
||||
nlohmann::json j;
|
||||
j["name"] = teleportName;
|
||||
j["position"] = { pos.x, pos.y, pos.z };
|
||||
try
|
||||
{
|
||||
j["name"] = t.name;
|
||||
j["position"] = {t.position.x, t.position.y, t.position.z};
|
||||
j["description"] = t.description;
|
||||
ofs << j;
|
||||
teleportName.clear();
|
||||
ofs.close();
|
||||
LOG_INFO("Teleport '%s' Serialized.", t.name.c_str());
|
||||
} catch (std::exception e)
|
||||
{
|
||||
ofs.close();
|
||||
LOG_ERROR("Failed to serialize teleport: %s: %s", t.name.c_str(), e.what());
|
||||
}
|
||||
}
|
||||
|
||||
Teleport CustomTeleports::SerializeFromJson(std::string json, bool fromfile)
|
||||
{
|
||||
nlohmann::json j;
|
||||
try { j = nlohmann::json::parse(json);}
|
||||
catch (nlohmann::json::parse_error &e)
|
||||
{
|
||||
LOG_ERROR("Invalid JSON Format");
|
||||
LOG_ERROR("Failed to parse JSON: %s", e.what());
|
||||
}
|
||||
std::string teleportName;
|
||||
teleportName = j["name"];
|
||||
if (j["name"].is_null() && fromfile)
|
||||
{
|
||||
LOG_ERROR("No name found! Using File Name");
|
||||
teleportName = std::filesystem::path(json).stem().filename().string();
|
||||
}
|
||||
std::string description;
|
||||
if (j["description"].is_null()) description = "";
|
||||
else description = j["description"];
|
||||
return Teleport_(teleportName, {j["position"][0], j["position"][1], j["position"][2]}, description);
|
||||
}
|
||||
|
||||
void CustomTeleports::ReloadTeleports()
|
||||
{
|
||||
auto result = std::filesystem::directory_iterator(dir);
|
||||
Teleports.clear();
|
||||
|
||||
for (auto &file : result)
|
||||
{
|
||||
if (file.path().extension() == ".json")
|
||||
{
|
||||
std::ifstream ifs(file.path());
|
||||
std::string json;
|
||||
std::getline(ifs, json);
|
||||
SerializeTeleport(SerializeFromJson(json, true));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
float PositionDistance(app::Vector3 a, app::Vector3 b)
|
||||
{
|
||||
return sqrt(pow(a.x - b.x, 2) + pow(a.y - b.y, 2) + pow(a.z - b.z, 2));
|
||||
}
|
||||
|
||||
void CustomTeleports::OnTeleportKeyPressed(bool next)
|
||||
{
|
||||
if (!f_Enabled || selectedIndex < 0)
|
||||
return;
|
||||
|
||||
auto &mapTeleport = MapTeleport::GetInstance();
|
||||
app::Vector3 position;
|
||||
|
||||
if (selectedByClick)
|
||||
{
|
||||
position = Teleports.at(selectedIndex).position;
|
||||
selectedByClick = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
std::vector list(checkedIndices.begin(), checkedIndices.end());
|
||||
if (selectedIndex == list.back() ? next : selectedIndex == list.front())
|
||||
return;
|
||||
auto index = std::distance(list.begin(), std::find(list.begin(), list.end(), selectedIndex));
|
||||
position = Teleports.at(list.at(index + (next ? 1 : -1))).position;
|
||||
selectedIndex = list.at(index + (next ? 1 : -1));
|
||||
}
|
||||
mapTeleport.TeleportTo(position);
|
||||
UpdateIndexName();
|
||||
}
|
||||
|
||||
void CustomTeleports::OnPrevious()
|
||||
{
|
||||
OnTeleportKeyPressed(false);
|
||||
}
|
||||
void CustomTeleports::OnNext()
|
||||
{
|
||||
OnTeleportKeyPressed(true);
|
||||
}
|
||||
|
||||
|
||||
void CustomTeleports::UpdateIndexName()
|
||||
{
|
||||
std::string name(selectedIndex == -1 || checkedIndices.empty() ? "" : Teleports.at(selectedIndex).name);
|
||||
|
||||
// abbreviate teleport names that are too long
|
||||
if (name.length() > 15)
|
||||
{
|
||||
std::string shortened;
|
||||
std::regex numsExp("[\\d]+");
|
||||
std::regex firstCharsExp("\\b[A-Za-z]");
|
||||
|
||||
std::sregex_iterator wordItr(name.begin(), name.end(), firstCharsExp);
|
||||
while (wordItr != std::sregex_iterator())
|
||||
{
|
||||
for (unsigned i = 0; i < wordItr->size(); i++)
|
||||
{
|
||||
shortened.append((*wordItr)[i]);
|
||||
}
|
||||
wordItr++;
|
||||
}
|
||||
|
||||
std::sregex_iterator numItr(name.begin(), name.end(), numsExp);
|
||||
while (numItr != std::sregex_iterator())
|
||||
{
|
||||
for (unsigned i = 0; i < numItr->size(); i++)
|
||||
{
|
||||
shortened.append(" ");
|
||||
shortened.append((*numItr)[i]);
|
||||
}
|
||||
numItr++;
|
||||
}
|
||||
name = shortened;
|
||||
}
|
||||
selectedIndexName = name;
|
||||
}
|
||||
|
||||
void CustomTeleports::DrawMain()
|
||||
{
|
||||
// Buffers
|
||||
static std::string nameBuffer_;
|
||||
static std::string searchBuffer_;
|
||||
static std::string JSONBuffer_;
|
||||
static std::string descriptionBuffer_;
|
||||
|
||||
ImGui::InputText("Name", &nameBuffer_);
|
||||
ImGui::InputText("Description", &descriptionBuffer_);
|
||||
if (ImGui::Button("Add Teleport"))
|
||||
{
|
||||
selectedIndex = -1;
|
||||
UpdateIndexName();
|
||||
SerializeTeleport(Teleport_(nameBuffer_, app::ActorUtils_GetAvatarPos(nullptr), descriptionBuffer_));
|
||||
nameBuffer_ = "";
|
||||
descriptionBuffer_ = "";
|
||||
}
|
||||
ImGui::SameLine();
|
||||
|
||||
if (ImGui::Button("Reload"))
|
||||
{
|
||||
selectedIndex = -1;
|
||||
UpdateIndexName();
|
||||
checkedIndices.clear();
|
||||
auto dir = std::filesystem::current_path();
|
||||
dir /= "teleports";
|
||||
auto result = std::filesystem::directory_iterator(dir);
|
||||
teleports.clear();
|
||||
for (auto& file : result)
|
||||
{
|
||||
if (file.path().extension() != ".json")
|
||||
continue;
|
||||
|
||||
std::string name = file.path().stem().string();
|
||||
if (file.is_directory())
|
||||
continue;
|
||||
|
||||
std::ifstream ifs(file.path());
|
||||
nlohmann::json j;
|
||||
ifs >> j;
|
||||
teleports.push_back({ j["name"], {j["position"][0], j["position"][1], j["position"][2]} });
|
||||
LOG_INFO("Loaded teleport %s", name.c_str());
|
||||
}
|
||||
ReloadTeleports();
|
||||
}
|
||||
|
||||
ImGui::SameLine();
|
||||
// open directory
|
||||
if (ImGui::Button("Open Folder"))
|
||||
{
|
||||
auto dir = std::filesystem::current_path();
|
||||
dir /= "teleports";
|
||||
CheckFolder();
|
||||
ShellExecuteA(NULL, "open", dir.string().c_str(), NULL, NULL, SW_SHOW);
|
||||
}
|
||||
|
||||
ImGui::SameLine();
|
||||
static std::string jsonInput;
|
||||
if (ImGui::Button("Load from JSON"))
|
||||
{
|
||||
selectedIndex = -1;
|
||||
UpdateIndexName();
|
||||
auto dir = std::filesystem::current_path();
|
||||
dir /= "teleports";
|
||||
LOG_INFO("Defined dir");
|
||||
if (!std::filesystem::exists(dir))
|
||||
std::filesystem::create_directory(dir);
|
||||
nlohmann::json j;
|
||||
try
|
||||
{
|
||||
j = nlohmann::json::parse(jsonInput);
|
||||
SerializeTeleport(SerializeFromJson(JSONBuffer_, false));
|
||||
JSONBuffer_ = "";
|
||||
}
|
||||
catch (nlohmann::json::parse_error& e)
|
||||
{
|
||||
LOG_ERROR("Failed to parse JSON: %s", e.what());
|
||||
return;
|
||||
}
|
||||
LOG_INFO("Parsed JSON");
|
||||
std::string teleportName = j["name"];
|
||||
app::Vector3 pos = { j["position"][0], j["position"][1], j["position"][2] };
|
||||
teleports.push_back({ teleportName, pos });
|
||||
LOG_INFO("Loaded teleport %s", teleportName.c_str());
|
||||
std::ofstream ofs(dir / (teleportName + ".json"));
|
||||
ofs << jsonInput;
|
||||
jsonInput.clear();
|
||||
}
|
||||
ImGui::InputTextMultiline("JSON input", &jsonInput, ImVec2(0, 50), ImGuiInputTextFlags_AllowTabInput);
|
||||
ImGui::InputTextMultiline("JSON input", &JSONBuffer_, ImVec2(0, 50), ImGuiInputTextFlags_AllowTabInput);
|
||||
|
||||
ConfigWidget("Teleport Next", f_Next, true, "Press to teleport next of selected");
|
||||
ConfigWidget("Teleport Previous", f_Previous, true, "Press to teleport previous of selected");
|
||||
ConfigWidget("Enable",
|
||||
f_Enabled,
|
||||
"Enable teleport-through-list functionality\n" \
|
||||
"Usage:\n" \
|
||||
"1. Put Checkmark to the teleports you want to teleport using hotkey\n" \
|
||||
"2. Single click the teleport (with checkmark) to select where you want to start\n" \
|
||||
"3. You can now press Next or Previous Hotkey to Teleport through the Checklist\n" \
|
||||
"Initially it will teleport the player to the selection made\n" \
|
||||
ConfigWidget("Enable", f_Enabled,
|
||||
"Enable teleport-through-list functionality\n"
|
||||
"Usage:\n"
|
||||
"1. Put Checkmark to the teleports you want to teleport using hotkey\n"
|
||||
"2. Single click the teleport (with checkmark) to select where you want to start\n"
|
||||
"3. You can now press Next or Previous Hotkey to Teleport through the Checklist\n"
|
||||
"Initially it will teleport the player to the selection made\n"
|
||||
"Note: Double click or click the arrow to open teleport details");
|
||||
ImGui::SameLine();
|
||||
|
||||
if (ImGui::Button("Delete Checked"))
|
||||
{
|
||||
if (!teleports.empty()) {
|
||||
std::vector<std::string> teleportNames;
|
||||
// get all teleport names by index
|
||||
for (auto& i : checkedIndices) {
|
||||
teleportNames.push_back(teleports.at(i).first);
|
||||
if (selectedIndex == i) selectedIndex = -1;
|
||||
if (!Teleports.empty())
|
||||
{
|
||||
if (checkedIndices.empty())
|
||||
{
|
||||
LOG_INFO("No teleports selected");
|
||||
return;
|
||||
}
|
||||
|
||||
for (auto& name : teleportNames) {
|
||||
auto dir = std::filesystem::current_path();
|
||||
dir /= "teleports";
|
||||
// delete file
|
||||
std::filesystem::remove(dir / (name + ".json"));
|
||||
// remove from list
|
||||
teleports.erase(std::remove_if(teleports.begin(), teleports.end(), [&name](const auto& pair)
|
||||
{ return pair.first == name; }), teleports.end());
|
||||
std::vector<std::string> teleportNames;
|
||||
for (auto &Teleport : Teleports)
|
||||
teleportNames.push_back(Teleport.name);
|
||||
for (auto &index : checkedIndices)
|
||||
{
|
||||
std::filesystem::remove(dir / (teleportNames[index] + ".json"));
|
||||
LOG_INFO("Deleted teleport %s", teleportNames[index].c_str());
|
||||
}
|
||||
checkedIndices.clear();
|
||||
UpdateIndexName();
|
||||
}
|
||||
|
||||
ReloadTeleports();
|
||||
} else {LOG_INFO("No teleports to delete");}
|
||||
}
|
||||
ImGui::SameLine();
|
||||
HelpMarker("Warning: This will delete the file from the directory and\nremove the teleport from the list. It will be lost forever.");
|
||||
HelpMarker("Warning: This will delete the file from the directory and\n \
|
||||
remove the teleport from the list. It will be lost forever.");
|
||||
|
||||
if (ImGui::TreeNode("Teleports"))
|
||||
{
|
||||
|
||||
// using natural sort instead of ascii sort
|
||||
std::sort(teleports.begin(), teleports.end(), [](const auto& a, const auto& b)
|
||||
{ return StrCmpLogicalW(std::wstring(a.first.begin(), a.first.end()).c_str(), std::wstring(b.first.begin(), b.first.end()).c_str()) < 0; });
|
||||
|
||||
bool allSearchChecked = std::includes(checkedIndices.begin(), checkedIndices.end() ,searchIndices.begin(), searchIndices.end()) && !searchIndices.empty();
|
||||
bool allChecked = (checkedIndices.size() == teleports.size() && !teleports.empty()) || allSearchChecked;
|
||||
std::sort(Teleports.begin(), Teleports.end(), [](const auto &a, const auto &b)
|
||||
{ return StrCmpLogicalW(std::wstring(a.name.begin(), a.name.end()).c_str(), std::wstring(b.name.begin(), b.name.end()).c_str()) < 0; });
|
||||
bool allChecked = checkedIndices.size() == Teleports.size() && !Teleports.empty();
|
||||
bool allSearchChecked = checkedIndices.size() == searchIndices.size() && !searchIndices.empty();
|
||||
ImGui::Checkbox("All", &allChecked);
|
||||
if (ImGui::IsItemClicked()) {
|
||||
if (!teleports.empty()) {
|
||||
if (allChecked) {
|
||||
if (ImGui::IsItemClicked())
|
||||
{
|
||||
if (!Teleports.empty())
|
||||
{
|
||||
if (allChecked)
|
||||
{
|
||||
selectedIndex = -1;
|
||||
if (!searchIndices.empty()) {
|
||||
for (const auto& i : searchIndices) {
|
||||
if (!searchIndices.empty())
|
||||
for (const auto &i : searchIndices)
|
||||
checkedIndices.erase(i);
|
||||
}
|
||||
}
|
||||
else {
|
||||
else
|
||||
checkedIndices.clear();
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (!searchIndices.empty()) {
|
||||
else if (!searchIndices.empty())
|
||||
checkedIndices.insert(searchIndices.begin(), searchIndices.end());
|
||||
}
|
||||
else {
|
||||
for (int i = 0; i < teleports.size(); i++)
|
||||
else
|
||||
for (int i = 0; i < Teleports.size(); i++)
|
||||
checkedIndices.insert(i);
|
||||
}
|
||||
}
|
||||
UpdateIndexName();
|
||||
}
|
||||
}
|
||||
ImGui::SameLine();
|
||||
ImGui::InputText("Search", &search);
|
||||
ImGui::InputText("Search", &searchBuffer_);
|
||||
unsigned int index = 0;
|
||||
searchIndices.clear();
|
||||
for (const auto& [teleportName, position] : teleports)
|
||||
{
|
||||
// find without case sensitivity
|
||||
if (search.empty() || std::search(teleportName.begin(), teleportName.end(), search.begin(), search.end(), [](char a, char b)
|
||||
{ return std::tolower(a) == std::tolower(b); }) != teleportName.end())
|
||||
{
|
||||
// sets are sorted by default and does not allow duplicates
|
||||
// which works in favor here.
|
||||
if (!search.empty()) {
|
||||
searchIndices.insert(index);
|
||||
}
|
||||
|
||||
bool checked = std::any_of(checkedIndices.begin(), checkedIndices.end(), [&index](const auto& i) { return i == index; });
|
||||
unsigned int maxNameLength = 0;
|
||||
for (auto &Teleport : Teleports)
|
||||
if (Teleport.name.length() > maxNameLength)
|
||||
maxNameLength = Teleport.name.length();
|
||||
ImGui::BeginTable("Teleports", 4, ImGuiTableFlags_Borders | ImGuiTableFlags_Resizable | ImGuiTableFlags_Reorderable | ImGuiTableFlags_Hideable | ImGuiTableFlags_NoSavedSettings);
|
||||
ImGui::TableSetupColumn("#", ImGuiTableColumnFlags_WidthFixed, 20);
|
||||
ImGui::TableSetupColumn("Commands", ImGuiTableColumnFlags_WidthFixed, 100);
|
||||
ImGui::TableSetupColumn("Name", ImGuiTableColumnFlags_WidthFixed, maxNameLength * 8 + 10);
|
||||
ImGui::TableSetupColumn("Position");
|
||||
ImGui::TableHeadersRow();
|
||||
ImGuiTreeNodeFlags nodeFlags = ImGuiTreeNodeFlags_OpenOnArrow | ImGuiTreeNodeFlags_OpenOnDoubleClick | ImGuiTreeNodeFlags_SpanAvailWidth;
|
||||
|
||||
for (const auto &[name, position, description] : Teleports)
|
||||
{
|
||||
if (searchBuffer_.empty() || std::search(name.begin(), name.end(), searchBuffer_.begin(), searchBuffer_.end(), [](char a, char b)
|
||||
{ return std::tolower(a) == std::tolower(b); }) != name.end())
|
||||
{
|
||||
if (!searchBuffer_.empty())
|
||||
searchIndices.insert(index);
|
||||
bool checked = std::any_of(checkedIndices.begin(), checkedIndices.end(), [&index](const auto &i)
|
||||
{ return i == index; });
|
||||
bool selected = index == selectedIndex;
|
||||
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::Text("%d", index);
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::Checkbox(("##Index" + std::to_string(index)).c_str(), &checked);
|
||||
if (ImGui::IsItemClicked(0)) {
|
||||
if (checked) {
|
||||
if (selected) selectedIndex = -1;
|
||||
if (ImGui::IsItemClicked(0))
|
||||
{
|
||||
if (checked)
|
||||
{
|
||||
if (selected)
|
||||
selectedIndex = -1;
|
||||
checkedIndices.erase(index);
|
||||
}
|
||||
else {
|
||||
else
|
||||
checkedIndices.insert(index);
|
||||
}
|
||||
UpdateIndexName();
|
||||
}
|
||||
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button(("TP##Button" + std::to_string(index)).c_str()))
|
||||
{
|
||||
auto& mapTeleport = MapTeleport::GetInstance();
|
||||
mapTeleport.TeleportTo(position);
|
||||
auto &manager = game::EntityManager::instance();
|
||||
auto avatar = manager.avatar();
|
||||
if (avatar->moveComponent() == nullptr)
|
||||
{
|
||||
LOG_ERROR("Avatar has no move component, Is scene loaded?");
|
||||
return;
|
||||
}
|
||||
if (PositionDistance(position, app::ActorUtils_GetAvatarPos(nullptr)) > 60.0f)
|
||||
MapTeleport::GetInstance().TeleportTo(position);
|
||||
else
|
||||
manager.avatar()->setAbsolutePosition(position);
|
||||
}
|
||||
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button(("Select##Button" + std::to_string(index)).c_str()))
|
||||
{
|
||||
selectedIndex = index;
|
||||
selectedByClick = true;
|
||||
UpdateIndexName();
|
||||
}
|
||||
ImGui::SameLine();
|
||||
ImGui::PushStyleColor(ImGuiCol_Text, selected ? IM_COL32(40, 90, 175, 255) : IM_COL32(255, 255, 255, 255));
|
||||
ImGuiTreeNodeFlags nodeFlags = ImGuiTreeNodeFlags_OpenOnArrow | ImGuiTreeNodeFlags_OpenOnDoubleClick | ImGuiTreeNodeFlags_SpanAvailWidth;
|
||||
if (selected) nodeFlags |= ImGuiTreeNodeFlags_Selected;
|
||||
bool node_open = ImGui::TreeNodeEx(teleportName.data(), nodeFlags);
|
||||
if (ImGui::IsItemClicked() && checked) {
|
||||
if (!selected) {
|
||||
selectedIndex = index;
|
||||
selectedByClick = true;
|
||||
}
|
||||
else {
|
||||
selectedIndex = -1;
|
||||
selectedByClick = false;
|
||||
}
|
||||
UpdateIndexName();
|
||||
}
|
||||
if (node_open)
|
||||
{
|
||||
ImGui::Text("Position: %.3f, %.3f, %.3f", position.x, position.y, position.z);
|
||||
ImGui::TreePop();
|
||||
}
|
||||
|
||||
if (selected)
|
||||
nodeFlags |= ImGuiTreeNodeFlags_Selected;
|
||||
ImGui::PopStyleColor();
|
||||
ImGui::TableNextColumn();
|
||||
|
||||
ImGui::Text("%s", name.c_str());
|
||||
if (ImGui::IsItemHovered())
|
||||
{
|
||||
ImGui::BeginTooltip();
|
||||
ImGui::Text("%s", description.c_str());
|
||||
ImGui::Text("Distance: %.2f", PositionDistance(position, app::ActorUtils_GetAvatarPos(nullptr)));
|
||||
ImGui::EndTooltip();
|
||||
}
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::Text("%f, %f, %f", position.x, position.y, position.z);
|
||||
}
|
||||
index++;
|
||||
}
|
||||
ImGui::EndTable();
|
||||
ImGui::TreePop();
|
||||
}
|
||||
|
||||
if (selectedIndex != -1)
|
||||
ImGui::Text("Selected: [%d] %s", selectedIndex, Teleports[selectedIndex].name.c_str());
|
||||
}
|
||||
|
||||
bool CustomTeleports::NeedStatusDraw() const
|
||||
@ -281,87 +413,6 @@ namespace cheat::feature
|
||||
ImGui::Text("Custom Teleport\n[%s]", selectedIndexName);
|
||||
}
|
||||
|
||||
void CustomTeleports::OnNextKeyPressed()
|
||||
{
|
||||
if (!f_Enabled || selectedIndex < 0)
|
||||
return;
|
||||
|
||||
auto& mapTeleport = MapTeleport::GetInstance();
|
||||
app::Vector3 position;
|
||||
|
||||
if (selectedByClick) {
|
||||
position = teleports.at(selectedIndex).second;
|
||||
selectedByClick = false;
|
||||
}
|
||||
else {
|
||||
std::vector list(checkedIndices.begin(), checkedIndices.end());
|
||||
if (selectedIndex == list.back())
|
||||
return;
|
||||
|
||||
auto index = std::distance(list.begin(), std::find(list.begin(), list.end(), selectedIndex));
|
||||
position = teleports.at(list.at(index + 1)).second;
|
||||
selectedIndex = list.at(index + 1);
|
||||
}
|
||||
mapTeleport.TeleportTo(position);
|
||||
UpdateIndexName();
|
||||
}
|
||||
|
||||
void CustomTeleports::OnPreviousKeyPressed()
|
||||
{
|
||||
if (!f_Enabled || selectedIndex < 0)
|
||||
return;
|
||||
|
||||
auto& mapTeleport = MapTeleport::GetInstance();
|
||||
app::Vector3 position;
|
||||
|
||||
if (selectedByClick) {
|
||||
position = teleports.at(selectedIndex).second;
|
||||
selectedByClick = false;
|
||||
}
|
||||
else {
|
||||
std::vector list(checkedIndices.begin(), checkedIndices.end());
|
||||
if (selectedIndex == list.front())
|
||||
return;
|
||||
|
||||
auto index = std::distance(list.begin(), std::find(list.begin(), list.end(), selectedIndex));
|
||||
position = teleports.at(list.at(index - 1)).second;
|
||||
selectedIndex = list.at(index - 1);
|
||||
}
|
||||
mapTeleport.TeleportTo(position);
|
||||
UpdateIndexName();
|
||||
}
|
||||
|
||||
void CustomTeleports::UpdateIndexName() {
|
||||
std::string name(selectedIndex == -1 || checkedIndices.empty() ? "" : teleports.at(selectedIndex).first);
|
||||
|
||||
// abbreviate teleport names that are too long
|
||||
if (name.length() > 15) {
|
||||
std::string shortened;
|
||||
std::regex numsExp("[\\d]+");
|
||||
std::regex firstCharsExp("\\b[A-Za-z]");
|
||||
|
||||
std::sregex_iterator wordItr(name.begin(), name.end(), firstCharsExp);
|
||||
while (wordItr != std::sregex_iterator()) {
|
||||
for (unsigned i = 0; i < wordItr->size(); i++) {
|
||||
shortened.append((*wordItr)[i]);
|
||||
}
|
||||
wordItr++;
|
||||
}
|
||||
|
||||
std::sregex_iterator numItr(name.begin(), name.end(), numsExp);
|
||||
while (numItr != std::sregex_iterator()) {
|
||||
for (unsigned i = 0; i < numItr->size(); i++) {
|
||||
shortened.append(" ");
|
||||
shortened.append((*numItr)[i]);
|
||||
}
|
||||
numItr++;
|
||||
}
|
||||
name = shortened;
|
||||
}
|
||||
selectedIndexName = name;
|
||||
|
||||
}
|
||||
|
||||
CustomTeleports &CustomTeleports::GetInstance()
|
||||
{
|
||||
static CustomTeleports instance;
|
||||
|
@ -8,6 +8,20 @@
|
||||
|
||||
namespace cheat::feature
|
||||
{
|
||||
class Teleport
|
||||
{
|
||||
public:
|
||||
Teleport(std::string name, app::Vector3 position, std::string description)
|
||||
{
|
||||
this->name = name;
|
||||
this->position = position;
|
||||
this->description = description;
|
||||
}
|
||||
std::string name;
|
||||
app::Vector3 position;
|
||||
std::string description;
|
||||
};
|
||||
|
||||
class CustomTeleports : public Feature
|
||||
{
|
||||
public:
|
||||
@ -17,21 +31,34 @@ namespace cheat::feature
|
||||
config::Field<Hotkey> f_Previous;
|
||||
static CustomTeleports& GetInstance();
|
||||
const FeatureGUIInfo& GetGUIInfo() const override;
|
||||
void DrawMain() override;
|
||||
|
||||
void CheckFolder();
|
||||
bool ValidateTeleport(std::string name);
|
||||
Teleport Teleport_(std::string name, app::Vector3 position, std::string description);
|
||||
void SerializeTeleport(Teleport t);
|
||||
void ReloadTeleports();
|
||||
Teleport SerializeFromJson(std::string json, bool fromfile);
|
||||
|
||||
|
||||
void DrawMain() override;
|
||||
virtual bool NeedStatusDraw() const override;
|
||||
void DrawStatus() override;
|
||||
|
||||
std::vector<Teleport> Teleports;
|
||||
std::filesystem::path dir;
|
||||
|
||||
private:
|
||||
std::vector<std::pair<std::string, app::Vector3>> teleports;
|
||||
std::set<unsigned int> checkedIndices;
|
||||
std::set<unsigned int> searchIndices;
|
||||
bool selectedByClick = false;
|
||||
int selectedIndex = -1;
|
||||
std::string selectedName;
|
||||
std::string selectedIndexName;
|
||||
CustomTeleports();
|
||||
void OnNextKeyPressed();
|
||||
void OnPreviousKeyPressed();
|
||||
void OnTeleportKeyPressed(bool next);
|
||||
void OnPrevious();
|
||||
void OnNext();
|
||||
void UpdateIndexName();
|
||||
};
|
||||
|
||||
}
|
@ -9,7 +9,9 @@
|
||||
namespace cheat::feature
|
||||
{
|
||||
AutoSeelie::AutoSeelie() : Feature(),
|
||||
NF(f_Enabled, "Auto follow seelie", "AutoSeelie", false)
|
||||
NF(f_Enabled, "Auto seelie", "Auto Seelie", false),
|
||||
NF(f_ElectroSeelie, "Auto Electro seelie", "Auto Seelie", false),
|
||||
nextTime(0)
|
||||
{
|
||||
events::GameUpdateEvent += MY_METHOD_HANDLER(AutoSeelie::OnGameUpdate);
|
||||
}
|
||||
@ -22,8 +24,17 @@ namespace cheat::feature
|
||||
void AutoSeelie::DrawMain()
|
||||
{
|
||||
ConfigWidget("Auto seelie", f_Enabled, "Auto follow seelie to its home");
|
||||
|
||||
if (f_Enabled)
|
||||
{
|
||||
ImGui::Indent();
|
||||
ConfigWidget("Auto Electro seelie", f_ElectroSeelie, "Since you don't need to manually start electroseelie, \n"
|
||||
"they start moving automatically with this option within 100m radius.");
|
||||
ImGui::SameLine();
|
||||
ImGui::TextColored(ImColor(255, 165, 0, 255), "Don't work with Electro Seelies");
|
||||
ImGui::TextColored(ImColor(255, 165, 0, 255), "Read the note!");
|
||||
ImGui::Unindent();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
bool AutoSeelie::NeedStatusDraw() const
|
||||
@ -33,7 +44,7 @@ namespace cheat::feature
|
||||
|
||||
void AutoSeelie::DrawStatus()
|
||||
{
|
||||
ImGui::Text ("AutoSeelie");
|
||||
ImGui::Text("AutoSeelie %s", f_ElectroSeelie ? "+ Electro" : "");
|
||||
}
|
||||
|
||||
AutoSeelie& AutoSeelie::GetInstance()
|
||||
@ -48,12 +59,29 @@ namespace cheat::feature
|
||||
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)
|
||||
if (entity->name().find("Seelie") != std::string::npos)
|
||||
{
|
||||
if (entity->name().find("ElectricSeelie") != std::string::npos)
|
||||
{
|
||||
|
||||
if (f_ElectroSeelie)
|
||||
{
|
||||
auto EntityGameObject = app::MoleMole_BaseEntity_get_rootGameObject(entity->raw(), nullptr);
|
||||
auto Transform = app::GameObject_GetComponentByName(EntityGameObject, string_to_il2cppi("Transform"), nullptr);
|
||||
auto child = app::Transform_GetChild(reinterpret_cast<app::Transform*>(Transform), 1, nullptr);
|
||||
auto pre_status = app::Component_1_get_gameObject(reinterpret_cast<app::Component_1*>(child), nullptr);
|
||||
auto status = app::GameObject_get_active(reinterpret_cast<app::GameObject*>(pre_status), nullptr);
|
||||
|
||||
if (status)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
return distance <= radius;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
return distance <= radius;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -4,8 +4,10 @@
|
||||
|
||||
#include <cheat/game/Entity.h>
|
||||
#include <cheat/game/filters.h>
|
||||
#include <cheat-base/thread-safe.h>
|
||||
#include <il2cpp-appdata.h>
|
||||
|
||||
|
||||
namespace cheat::feature
|
||||
{
|
||||
|
||||
@ -13,6 +15,7 @@ namespace cheat::feature
|
||||
{
|
||||
public:
|
||||
config::Field<config::Toggle<Hotkey>> f_Enabled;
|
||||
config::Field<bool> f_ElectroSeelie;
|
||||
|
||||
static AutoSeelie& GetInstance();
|
||||
|
||||
@ -24,10 +27,8 @@ namespace cheat::feature
|
||||
|
||||
void OnGameUpdate();
|
||||
private:
|
||||
|
||||
std::vector<game::IEntityFilter*> m_Filters;
|
||||
AutoSeelie();
|
||||
int nextTime{};
|
||||
SafeValue<int64_t> nextTime;
|
||||
bool IsEntityForVac(cheat::game::Entity* entity);
|
||||
};
|
||||
}
|
||||
|
@ -190,7 +190,7 @@ namespace cheat::feature
|
||||
if (manager.avatar()->distance(monster) > killAura.f_Range)
|
||||
return;
|
||||
|
||||
moveSync->fields.moveSyncTask.position.x = 1000000.0f;
|
||||
moveSync->fields._syncTask.position.x = 1000000.0f;
|
||||
}
|
||||
|
||||
static void BaseMoveSyncPlugin_ConvertSyncTaskToMotionInfo_Hook(app::BaseMoveSyncPlugin* __this, MethodInfo* method)
|
||||
|
@ -14,16 +14,16 @@
|
||||
void Run(HMODULE* phModule)
|
||||
{
|
||||
ResourceLoader::SetModuleHandle(*phModule);
|
||||
util::SetCurrentPath(util::GetModulePath(*phModule));
|
||||
|
||||
// Init config
|
||||
std::string configPath = (std::filesystem::current_path() / "cfg.json").string();
|
||||
config::Initialize(configPath);
|
||||
config::Initialize((util::GetCurrentPath() / "cfg.json").string());
|
||||
|
||||
// Init logger
|
||||
auto& settings = cheat::feature::Settings::GetInstance();
|
||||
if (settings.f_FileLogging)
|
||||
{
|
||||
Logger::PrepareFileLogging((std::filesystem::current_path() / "logs").string());
|
||||
Logger::PrepareFileLogging((util::GetCurrentPath() / "logs").string());
|
||||
Logger::SetLevel(Logger::Level::Trace, Logger::LoggerType::FileLogger);
|
||||
}
|
||||
|
||||
@ -43,7 +43,7 @@ void Run(HMODULE* phModule)
|
||||
|
||||
#ifdef _DEBUG
|
||||
LOG_DEBUG("Waiting 10sec for loading game library.");
|
||||
Sleep(10000);
|
||||
Sleep(15000);
|
||||
#else
|
||||
LOG_DEBUG("Waiting 15sec for game initialize.");
|
||||
Sleep(15000);
|
||||
@ -55,5 +55,5 @@ void Run(HMODULE* phModule)
|
||||
|
||||
cheat::Init();
|
||||
|
||||
LOG_DEBUG("Config path is at %s", configPath.c_str());
|
||||
LOG_DEBUG("Config path is at %s", (util::GetCurrentPath() / "cfg.json").string().c_str());
|
||||
}
|
@ -35,6 +35,7 @@ int main(int argc, char* argv[])
|
||||
if (!OpenGenshinProcess(&hProcess, &hThread))
|
||||
{
|
||||
std::cout << "Failed to open GenshinImpact process." << std::endl;
|
||||
system("pause");
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -68,29 +69,70 @@ int main(int argc, char* argv[])
|
||||
|
||||
bool OpenGenshinProcess(HANDLE* phProcess, HANDLE* phThread)
|
||||
{
|
||||
STARTUPINFOA startInfo{};
|
||||
PROCESS_INFORMATION processInformation{};
|
||||
|
||||
HANDLE hToken;
|
||||
BOOL TokenRet = OpenProcessToken(GetCurrentProcess(), TOKEN_ALL_ACCESS, &hToken);
|
||||
if (!TokenRet)
|
||||
{
|
||||
LOG_LAST_ERROR("Privilege escalation failed!");
|
||||
return false;
|
||||
}
|
||||
|
||||
auto filePath = util::GetOrSelectPath(ini, "Inject", "GenshinPath", "genshin path", "Executable\0GenshinImpact.exe;YuanShen.exe\0");
|
||||
auto commandline = ini.GetValue("Inject", "GenshinCommandLine");
|
||||
|
||||
LPSTR lpstr = commandline == nullptr ? nullptr : const_cast<LPSTR>(commandline);
|
||||
|
||||
if (!filePath)
|
||||
return false;
|
||||
|
||||
BOOL result = CreateProcessA(filePath->c_str(),
|
||||
lpstr, 0, 0, FALSE, CREATE_SUSPENDED, nullptr, nullptr, &startInfo, &processInformation);
|
||||
if (result == FALSE)
|
||||
DWORD pid = FindProcessId("explorer.exe");
|
||||
if (pid == 0)
|
||||
{
|
||||
LOG_LAST_ERROR("Failed to create game process.");
|
||||
LOG_ERROR("If you have problem with GenshinImpact.exe path. You can change it manually in cfg.ini.");
|
||||
LOG_ERROR("Can't find 'explorer' pid!");
|
||||
return false;
|
||||
}
|
||||
|
||||
ini.SaveFile("cfg.ini");
|
||||
std::string CurrentDirectory = filePath.value();
|
||||
int pos = CurrentDirectory.rfind("\\", CurrentDirectory.length());
|
||||
CurrentDirectory = CurrentDirectory.substr(0, pos);
|
||||
|
||||
*phThread = processInformation.hThread;
|
||||
*phProcess = processInformation.hProcess;
|
||||
return true;
|
||||
HANDLE handle = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pid);
|
||||
|
||||
SIZE_T lpsize = 0;
|
||||
InitializeProcThreadAttributeList(NULL, 1, 0, &lpsize);
|
||||
|
||||
char* temp = new char[lpsize];
|
||||
LPPROC_THREAD_ATTRIBUTE_LIST AttributeList = (LPPROC_THREAD_ATTRIBUTE_LIST)temp;
|
||||
InitializeProcThreadAttributeList(AttributeList, 1, 0, &lpsize);
|
||||
if (!UpdateProcThreadAttribute(AttributeList, 0, PROC_THREAD_ATTRIBUTE_PARENT_PROCESS,
|
||||
&handle, sizeof(HANDLE), NULL, NULL))
|
||||
{
|
||||
LOG_WARNING("UpdateProcThreadAttribute failed ! (%d).\n", GetLastError());
|
||||
}
|
||||
|
||||
STARTUPINFOEXA si{};
|
||||
si.StartupInfo.cb = sizeof(si);
|
||||
si.lpAttributeList = AttributeList;
|
||||
|
||||
PROCESS_INFORMATION pi{};
|
||||
BOOL result = CreateProcessAsUserA(hToken, const_cast<LPSTR>(filePath->data()), lpstr,
|
||||
0, 0, 0, EXTENDED_STARTUPINFO_PRESENT | CREATE_SUSPENDED, 0,
|
||||
(LPSTR)CurrentDirectory.data(), (LPSTARTUPINFOA)&si, &pi);
|
||||
|
||||
bool isOpened = result;
|
||||
if (isOpened)
|
||||
{
|
||||
ini.SaveFile("cfg.ini");
|
||||
*phThread = pi.hThread;
|
||||
*phProcess = pi.hProcess;
|
||||
}
|
||||
else
|
||||
{
|
||||
LOG_LAST_ERROR("Failed to create game process.");
|
||||
LOG_ERROR("If you have problem with GenshinImpact.exe path. You can change it manually in cfg.ini.");
|
||||
}
|
||||
|
||||
DeleteProcThreadAttributeList(AttributeList);
|
||||
delete[] temp;
|
||||
return isOpened;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user