komashchenko
Идиот
- Сообщения
- 916
- Реакции
- 2,570
Долго искал способ как же скрыть с радара кого-то 1 иногда это нужно, от вам способ
Демонстрация работоспособности (смотрим на радар)
Steam Community :: Screenshot
Steam Community :: Screenshot
Steam Community :: Screenshot
PHP:
#pragma semicolon 1
#include <sdktools>
//На самом деле это флаги Spotted у игрока, разбираться в них лень, но по умолчанию 9, 0 - блокирует обновление данных игрока на радаре
//Я не заметил что б игра меняла флаги посреди игры, игрок может менять команды и так дальше но значение не меняется, как я понял оно ставиться только 1 раз при входе
Address g_aCanBeSpotted = view_as<Address>(892); //винда 868
public void OnPluginStart()
{
RegConsoleCmd("hide", hide);
RegConsoleCmd("uhide", uhide);
}
public Action hide(int iClient, int args)
{
//Нужно для того что б когда мы блокируем обновление игрока на радаре, он не остался постоянно видимым на нем
SetEntProp(iClient, Prop_Send, "m_bSpotted", false);
SetEntProp(iClient, Prop_Send, "m_bSpottedByMask", 0, 4, 0);
SetEntProp(iClient, Prop_Send, "m_bSpottedByMask", 0, 4, 1);
//Устанавлюем флаги на 0
StoreToAddress(GetEntityAddress(iClient)+g_aCanBeSpotted, 0, NumberType_Int32);
}
public Action uhide(int iClient, int args)
{
//Установлен флаги по умолчанию
StoreToAddress(GetEntityAddress(iClient)+g_aCanBeSpotted, 9, NumberType_Int32);
}
Демонстрация работоспособности (смотрим на радар)
Steam Community :: Screenshot
Steam Community :: Screenshot
Steam Community :: Screenshot
Последнее редактирование: