ASI Отключение смены класса на F4

g305noobo

Известный
Автор темы
Модератор
312
506
Версия SA-MP
  1. Любая
описание: случайно прожал F4 на сервере со своим weapon config(evolve-rp например)? сиди кайфуй до реконнекта.
именно из-за этого решил дропнуть плагин сюда, может кому понадобится(меня лично это заебало).
плагин отключает бинд на F4, который вызывает бесполезную на данный момент функцию смены класса после смерти.
тут текста больше чем кода =D микро щит пост на 1 байт ._.

1738242244553.png

C++:
#include <windows.h>
#include "pattern.hpp"

class no_class_selection {
 public:
  no_class_selection();
  ~no_class_selection();

 private:
  void* offset;
  auto memcpy_(void* dest, const char* src, size_t count) {
    DWORD protect{};
    VirtualProtect(dest, count, PAGE_EXECUTE_READWRITE, &protect);
    memcpy(dest, src, count);
    VirtualProtect(dest, count, protect, &protect);
  }

} _;

no_class_selection::no_class_selection() : offset{nullptr} {
  offset = hook::module_pattern(GetModuleHandleA("samp.dll"), "75 2B 6A 73")
               .get_first();
  memcpy_(offset, "\xEB", 1);
}

no_class_selection::~no_class_selection() { memcpy_(offset, "\x75", 1); }
 

Вложения

  • NoClassSelection.asi
    9 KB · Просмотры: 1