diff --git a/src/client/component/fx.cpp b/src/client/component/fx.cpp new file mode 100644 index 00000000..d4cb817b --- /dev/null +++ b/src/client/component/fx.cpp @@ -0,0 +1,22 @@ +#include +#include "loader/component_loader.hpp" + +#include "game/game.hpp" + +#include + +namespace fx +{ + class component final : public component_interface + { + public: + void post_unpack() override + { + // skip "fx/" and "vfx/" name prefix checks + utils::hook::set(0xB34889_b, 0xEB); // Scr_LoadFx + utils::hook::nop(0xD0FBFD_b, 2); // ParticleSystem_Register + } + }; +} + +REGISTER_COMPONENT(fx::component) \ No newline at end of file diff --git a/src/client/component/patches.cpp b/src/client/component/patches.cpp index 1bb9d5e0..f55b2725 100644 --- a/src/client/component/patches.cpp +++ b/src/client/component/patches.cpp @@ -312,9 +312,6 @@ namespace patches utils::hook::set(0xC5A200_b, 0xC3); utils::hook::set(0x6D5280_b, 0xC301B0); // NetConstStrings_IsPrecacheAllowed - - // skip "fx/" and "vfx/" name prefix checks (move this to map_patches) - utils::hook::set(0xB34889_b, 0xEB); // Scr_LoadFx } }; }