LunaHook-mirror/LunaHook/engine32/Elf.h
恍兮惚兮 ec050e2274 el
2024-07-29 01:12:19 +08:00

52 lines
1.5 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

class Elf : public ENGINE
{
public:
Elf()
{
check_by = CHECK_BY::CUSTOM;
check_by_target = []()
{
// flutter of birds鳥達の羽ばたき
// https://vndb.org/v2379
// 很奇怪FindFirstFileW在win7上true在win11上false但PathFileExists在两者都是true
auto paks = {L"data.arc", L"effect.arc", L"mes.arc"};
return std::all_of(paks.begin(), paks.end(), [](auto f)
{ return Util::CheckFile_exits(f, true); });
};
// Util::CheckFile(L"Silkys.exe") || // It might or might not have Silkys.exe
// data, effect, layer, mes, music
};
bool attach_function();
};
class Elf2 : public ENGINE
{
public:
Elf2()
{
check_by = CHECK_BY::CUSTOM;
check_by_target = []()
{
// check_by_list{L"data.arc",L"Ai5win.exe",L"mes.arc"};
return Util::CheckFile_exits(L"Ai5win.exe", true) && (Util::CheckFile_exits(L"data.arc", true) || Util::CheckFile_exits(L"MISC\\data.arc", true)) && (Util::CheckFile_exits(L"mes.arc", true) || Util::CheckFile_exits(L"MISC\\mes.arc", true));
};
};
bool attach_function();
};
class ElfFunClubFinal : public ENGINE
{
public:
ElfFunClubFinal()
{
is_engine_certain = false;
check_by = CHECK_BY::CUSTOM;
check_by_target = []()
{
return wcscmp(processName_lower, L"fanclub.exe") == 0;
};
};
bool attach_function();
};