Иконка ресурса

artyrka94

Участник
Сообщения
181
Реакции
38
Re: [CS:S] Radar Config

не могу скомпилировать radar_config.sp видно не хватает библиотек updater.inc sendproxy.inc где их взять?
 

spore

SubPlay.ru
Сообщения
636
Реакции
150
Re: [CS:S] Radar Config

не могу скомпилировать radar_config.sp видно не хватает библиотек updater.inc sendproxy.inc где их взять?

Во первых, есть новая версия плагина [CS:S] Radar Config [1.2.0]

updater.inc Сможешь найти здесь Updater
А вот с sendproxy тяжелее. Ибо единственная ссылка где его можно скачать - нерабочая.
 
Последнее редактирование модератором:

artyrka94

Участник
Сообщения
181
Реакции
38
Re: [CS:S] Radar Config

Ты сам их туда вписал?
нет, они уже были прописаны в исходнике

Во первых, есть новая версия плагина [CS:S] Radar Config [1.2.0]

updater.inc Сможешь найти здесь Updater
А вот с sendproxy тяжелее. Ибо единственная ссылка где его можно скачать - нерабочая.

ну вроди как нашел sendproxy.inc, все ровно ругается error 017: undefined symbol "SendProxy_HookArrayProp"
 
Последнее редактирование модератором:

Konstantin

Участник
Сообщения
1,775
Реакции
759
Re: [CS:S] Radar Config

они уже были прописаны в исходнике
Где??
PHP:
#pragma semicolon 1

#include <sourcemod>
#include <sdktools>
#include <sdkhooks>

#define PLUGIN_NAME 	"Radar Config"
#define PLUGIN_VERSION 	"1.1.0"

new Handle:g_hRadarConfig = INVALID_HANDLE;

new g_iFlashDuration = -1;
new g_iFlashAlpha = -1;
new bool:g_bFlashHooked;

new g_iPlayerSpotted = -1;
new g_iBombSpotted = -1;
new g_iPlayerManager = -1;
new bool:g_bRadarHooked;

public Plugin:myinfo =
{
	name = PLUGIN_NAME,
	author = "GoD-Tony",
	description = "Hide or Show all players on the radar",
	version = PLUGIN_VERSION,
	url = "http://www.sourcemod.net/"
};

public OnPluginStart()
{
	/* Find offsets used for the radar and flashbangs. */
	if ((g_iPlayerSpotted = FindSendPropOffs("CCSPlayerResource", "m_bPlayerSpotted")) == -1)
		SetFailState("Failed to find CCSPlayerResource::m_bPlayerSpotted offset");

	if ((g_iBombSpotted = FindSendPropOffs("CCSPlayerResource", "m_bBombSpotted")) == -1)
		SetFailState("Failed to find CCSPlayerResource::m_bBombSpotted offset");
	
	if ((g_iFlashDuration = FindSendPropOffs("CCSPlayer", "m_flFlashDuration")) == -1)
		SetFailState("Failed to find find CCSPlayer::m_flFlashDuration offset");
	
	if ((g_iFlashAlpha = FindSendPropOffs("CCSPlayer", "m_flFlashMaxAlpha")) == -1)
		SetFailState("Failed to find CCSPlayer::m_flFlashMaxAlpha offset");
	
	/* Now we can continue. */
	CreateConVar("sm_radarconfig_version", PLUGIN_VERSION, PLUGIN_NAME, FCVAR_PLUGIN|FCVAR_SPONLY|FCVAR_REPLICATED|FCVAR_NOTIFY|FCVAR_DONTRECORD);
	g_hRadarConfig = CreateConVar("sm_radarconfig", "0", "Determines radar functionality. (0 = Default behaviour, 1 = Disable radar, 2 = Show all players)", FCVAR_NONE, true, 0.0, true, 2.0);
	
	OnRadarModeChange(g_hRadarConfig, "", "");
	HookConVarChange(g_hRadarConfig, OnRadarModeChange);
}

public OnMapStart()
{
	g_iPlayerManager = FindEntityByClassname(0, "cs_player_manager");
	
	if (g_bRadarHooked)
		SDKHook(g_iPlayerManager, SDKHook_PostThink, OnEntityThink);
}

public OnClientPutInServer(client)
{
	if (g_bRadarHooked)
		SDKHook(client, SDKHook_PreThink, OnEntityThink);
}

public Event_PlayerSpawn(Handle:event, const String:name[], bool:dontBroadcast)
{
	new client = GetClientOfUserId(GetEventInt(event, "userid"));
	
	if (client && GetClientTeam(client) > 1)
		Client_HideRadar(client);
}

public Event_PlayerBlind(Handle:event, const String:name[], bool:dontBroadcast)
{
	new userid = GetEventInt(event, "userid");
	new client = GetClientOfUserId(userid);
	new Float:duration = GetEntDataFloat(client, g_iFlashDuration);
	
	if (client && GetClientTeam(client) > 1)
		CreateTimer(duration, Timer_FlashEnd, userid, TIMER_FLAG_NO_MAPCHANGE);
}

public Action:Timer_FlashEnd(Handle:timer, any:userid)
{
	new client = GetClientOfUserId(userid);
	
	if (client && GetClientTeam(client) > 1)
		Client_HideRadar(client);
		
	return Plugin_Stop;
}

public OnEntityThink(entity)
{
	for (new i = 0; i <= 65; i++)
		SetEntData(g_iPlayerManager, g_iPlayerSpotted + i, true, 4, true);
	
	SetEntData(g_iPlayerManager, g_iBombSpotted, true, 4, true);
}

public OnRadarModeChange(Handle:convar, const String:oldValue[], const String:newValue[])
{
	new iRadarMode = GetConVarInt(convar);

	switch (iRadarMode)
	{
		case 0: // Default behaviour
		{
			if (g_bRadarHooked)
				Unhook_Radar();
			
			if (g_bFlashHooked)
				Unhook_Flash();
		}
		
		case 1: // Disable radar for all
		{
			if (g_bRadarHooked)
				Unhook_Radar();
			
			if (!g_bFlashHooked)
				Hook_Flash();
		}
		
		case 2: // Show all players on radar
		{
			if (!g_bRadarHooked)
				Hook_Radar();
			
			if (g_bFlashHooked)
				Unhook_Flash();
		}
	}
}

Hook_Radar()
{
	g_bRadarHooked = true;
	
	SDKHook(g_iPlayerManager, SDKHook_PostThink, OnEntityThink);
	
	for (new i = 1; i <= MaxClients; i++)
		if (IsClientConnected(i) && IsClientInGame(i))
			SDKHook(i, SDKHook_PreThink, OnEntityThink);
}

Unhook_Radar()
{
	g_bRadarHooked = false;
	
	SDKUnhook(g_iPlayerManager, SDKHook_PostThink, OnEntityThink);
	
	for (new i = 1; i <= MaxClients; i++)
		if (IsClientConnected(i) && IsClientInGame(i))
			SDKUnhook(i, SDKHook_PreThink, OnEntityThink);
}

Hook_Flash()
{
	g_bFlashHooked = true;
	HookEvent("player_spawn", Event_PlayerSpawn, EventHookMode_Post);
	HookEvent("player_blind", Event_PlayerBlind, EventHookMode_Post);
	
	for (new i = 1; i <= MaxClients; i++)
		if (IsClientConnected(i) && IsClientInGame(i) && GetClientTeam(i) > 1)
			Client_HideRadar(i);
}

Unhook_Flash()
{
	g_bFlashHooked = false;
	UnhookEvent("player_spawn", Event_PlayerSpawn, EventHookMode_Post);
	UnhookEvent("player_blind", Event_PlayerBlind, EventHookMode_Post);
	
	for (new i = 1; i <= MaxClients; i++)
		if (IsClientConnected(i) && IsClientInGame(i) && GetClientTeam(i) > 1)
			Client_ShowRadar(i);
}

Client_HideRadar(client)
{
	SetEntDataFloat(client, g_iFlashDuration, 3600.0, true);
	SetEntDataFloat(client, g_iFlashAlpha, 0.5, true);
}

Client_ShowRadar(client)
{
	SetEntDataFloat(client, g_iFlashDuration, 0.5, true);
	SetEntDataFloat(client, g_iFlashAlpha, 0.5, true);
}
Исходник из первого поста компилируется без проблем, не морочь голову!
 

spore

SubPlay.ru
Сообщения
636
Реакции
150
Re: [CS:S] Radar Config

Скорее всего он использует 1.2.0. Там эти библиотеки прописаны.
 

artyrka94

Участник
Сообщения
181
Реакции
38
Re: [CS:S] Radar Config

Где??
PHP:
#pragma semicolon 1

#include <sourcemod>
#include <sdktools>
#include <sdkhooks>

#define PLUGIN_NAME 	"Radar Config"
#define PLUGIN_VERSION 	"1.1.0"

new Handle:g_hRadarConfig = INVALID_HANDLE;

new g_iFlashDuration = -1;
new g_iFlashAlpha = -1;
new bool:g_bFlashHooked;

new g_iPlayerSpotted = -1;
new g_iBombSpotted = -1;
new g_iPlayerManager = -1;
new bool:g_bRadarHooked;

public Plugin:myinfo =
{
	name = PLUGIN_NAME,
	author = "GoD-Tony",
	description = "Hide or Show all players on the radar",
	version = PLUGIN_VERSION,
	url = "http://www.sourcemod.net/"
};

public OnPluginStart()
{
	/* Find offsets used for the radar and flashbangs. */
	if ((g_iPlayerSpotted = FindSendPropOffs("CCSPlayerResource", "m_bPlayerSpotted")) == -1)
		SetFailState("Failed to find CCSPlayerResource::m_bPlayerSpotted offset");

	if ((g_iBombSpotted = FindSendPropOffs("CCSPlayerResource", "m_bBombSpotted")) == -1)
		SetFailState("Failed to find CCSPlayerResource::m_bBombSpotted offset");
	
	if ((g_iFlashDuration = FindSendPropOffs("CCSPlayer", "m_flFlashDuration")) == -1)
		SetFailState("Failed to find find CCSPlayer::m_flFlashDuration offset");
	
	if ((g_iFlashAlpha = FindSendPropOffs("CCSPlayer", "m_flFlashMaxAlpha")) == -1)
		SetFailState("Failed to find CCSPlayer::m_flFlashMaxAlpha offset");
	
	/* Now we can continue. */
	CreateConVar("sm_radarconfig_version", PLUGIN_VERSION, PLUGIN_NAME, FCVAR_PLUGIN|FCVAR_SPONLY|FCVAR_REPLICATED|FCVAR_NOTIFY|FCVAR_DONTRECORD);
	g_hRadarConfig = CreateConVar("sm_radarconfig", "0", "Determines radar functionality. (0 = Default behaviour, 1 = Disable radar, 2 = Show all players)", FCVAR_NONE, true, 0.0, true, 2.0);
	
	OnRadarModeChange(g_hRadarConfig, "", "");
	HookConVarChange(g_hRadarConfig, OnRadarModeChange);
}

public OnMapStart()
{
	g_iPlayerManager = FindEntityByClassname(0, "cs_player_manager");
	
	if (g_bRadarHooked)
		SDKHook(g_iPlayerManager, SDKHook_PostThink, OnEntityThink);
}

public OnClientPutInServer(client)
{
	if (g_bRadarHooked)
		SDKHook(client, SDKHook_PreThink, OnEntityThink);
}

public Event_PlayerSpawn(Handle:event, const String:name[], bool:dontBroadcast)
{
	new client = GetClientOfUserId(GetEventInt(event, "userid"));
	
	if (client && GetClientTeam(client) > 1)
		Client_HideRadar(client);
}

public Event_PlayerBlind(Handle:event, const String:name[], bool:dontBroadcast)
{
	new userid = GetEventInt(event, "userid");
	new client = GetClientOfUserId(userid);
	new Float:duration = GetEntDataFloat(client, g_iFlashDuration);
	
	if (client && GetClientTeam(client) > 1)
		CreateTimer(duration, Timer_FlashEnd, userid, TIMER_FLAG_NO_MAPCHANGE);
}

public Action:Timer_FlashEnd(Handle:timer, any:userid)
{
	new client = GetClientOfUserId(userid);
	
	if (client && GetClientTeam(client) > 1)
		Client_HideRadar(client);
		
	return Plugin_Stop;
}

public OnEntityThink(entity)
{
	for (new i = 0; i <= 65; i++)
		SetEntData(g_iPlayerManager, g_iPlayerSpotted + i, true, 4, true);
	
	SetEntData(g_iPlayerManager, g_iBombSpotted, true, 4, true);
}

public OnRadarModeChange(Handle:convar, const String:oldValue[], const String:newValue[])
{
	new iRadarMode = GetConVarInt(convar);

	switch (iRadarMode)
	{
		case 0: // Default behaviour
		{
			if (g_bRadarHooked)
				Unhook_Radar();
			
			if (g_bFlashHooked)
				Unhook_Flash();
		}
		
		case 1: // Disable radar for all
		{
			if (g_bRadarHooked)
				Unhook_Radar();
			
			if (!g_bFlashHooked)
				Hook_Flash();
		}
		
		case 2: // Show all players on radar
		{
			if (!g_bRadarHooked)
				Hook_Radar();
			
			if (g_bFlashHooked)
				Unhook_Flash();
		}
	}
}

Hook_Radar()
{
	g_bRadarHooked = true;
	
	SDKHook(g_iPlayerManager, SDKHook_PostThink, OnEntityThink);
	
	for (new i = 1; i <= MaxClients; i++)
		if (IsClientConnected(i) && IsClientInGame(i))
			SDKHook(i, SDKHook_PreThink, OnEntityThink);
}

Unhook_Radar()
{
	g_bRadarHooked = false;
	
	SDKUnhook(g_iPlayerManager, SDKHook_PostThink, OnEntityThink);
	
	for (new i = 1; i <= MaxClients; i++)
		if (IsClientConnected(i) && IsClientInGame(i))
			SDKUnhook(i, SDKHook_PreThink, OnEntityThink);
}

Hook_Flash()
{
	g_bFlashHooked = true;
	HookEvent("player_spawn", Event_PlayerSpawn, EventHookMode_Post);
	HookEvent("player_blind", Event_PlayerBlind, EventHookMode_Post);
	
	for (new i = 1; i <= MaxClients; i++)
		if (IsClientConnected(i) && IsClientInGame(i) && GetClientTeam(i) > 1)
			Client_HideRadar(i);
}

Unhook_Flash()
{
	g_bFlashHooked = false;
	UnhookEvent("player_spawn", Event_PlayerSpawn, EventHookMode_Post);
	UnhookEvent("player_blind", Event_PlayerBlind, EventHookMode_Post);
	
	for (new i = 1; i <= MaxClients; i++)
		if (IsClientConnected(i) && IsClientInGame(i) && GetClientTeam(i) > 1)
			Client_ShowRadar(i);
}

Client_HideRadar(client)
{
	SetEntDataFloat(client, g_iFlashDuration, 3600.0, true);
	SetEntDataFloat(client, g_iFlashAlpha, 0.5, true);
}

Client_ShowRadar(client)
{
	SetEntDataFloat(client, g_iFlashDuration, 0.5, true);
	SetEntDataFloat(client, g_iFlashAlpha, 0.5, true);
}
Исходник из первого поста компилируется без проблем, не морочь голову!

я обычно всегда скачиваю исходники forums.alliedmods.net там всегда последнюю версию выкладывают, так что сори что не скачал от сюда
 

Konstantin

Участник
Сообщения
1,775
Реакции
759
Re: [CS:S] Radar Config

artyrka94, так а что тогда оттуда готовый плагин не скачаешь?
 

GuSenoK

Участник
Сообщения
253
Реакции
8
Re: [CS:S] Radar Config

Помогите, пожалуйста! Север STEAM FFA DEATHMATCH
Плагины:
Sourcemod 1.5.2 official
mmsource-1.10.0 official
CSSdm 2.1.4
freeforall

Когда ставлю radar config, то в режиме FFA своего убиваешь не с 1 раза с авп допустим, а как на обычном сервере - 3 раза нужно стрельнуть чтобы его убить. То есть как будто на обычном сервере стрелять в тиммейта!
А плагин этот радар очень нужен! Ведь я вижу по радару где игроки из моей команды и легко их убиваю! Надо отключить это!! Но из-за этого тиммейтов сложнее убить! Я менял в самом cssdm.cfg строчку enable ffa и на 1, и на 0. И менял в server.cfg mp_friendlyfires 0 и 1 ставил! не получается! Подскажите!
 

MOHAX

Участник
Сообщения
100
Реакции
24
Re: [CS:S] Radar Config

Помогите, пожалуйста! Север STEAM FFA DEATHMATCH
Плагины:
Sourcemod 1.5.2 official
mmsource-1.10.0 official
CSSdm 2.1.4
freeforall

Когда ставлю radar config, то в режиме FFA своего убиваешь не с 1 раза с авп допустим, а как на обычном сервере - 3 раза нужно стрельнуть чтобы его убить. То есть как будто на обычном сервере стрелять в тиммейта!
А плагин этот радар очень нужен! Ведь я вижу по радару где игроки из моей команды и легко их убиваю! Надо отключить это!! Но из-за этого тиммейтов сложнее убить! Я менял в самом cssdm.cfg строчку enable ffa и на 1, и на 0. И менял в server.cfg mp_friendlyfires 0 и 1 ставил! не получается! Подскажите!
Я совсем не давно ставил данный плагин, работает отлично.
Ты часом не забыл прописать sm_radarconfig <0|1|2> в server.cfg
На счёт Freeforall, ты в server.cfg прописал хоть sm_freeforall "1" ??
Если нет, то пропиши, должно работать. Если да, то хз почему не работает. А и cssdm.cfg не забудь включить ffa ))
 

GuSenoK

Участник
Сообщения
253
Реакции
8
Re: [CS:S] Radar Config

Я совсем не давно ставил данный плагин, работает отлично.
Ты часом не забыл прописать sm_radarconfig <0|1|2> в server.cfg
На счёт Freeforall, ты в server.cfg прописал хоть sm_freeforall "1" ??
Если нет, то пропиши, должно работать. Если да, то хз почему не работает. А и cssdm.cfg не забудь включить ffa ))

Тьфу ты емае! Спасибо! Я всё перепробовал- но забыл прописать sm_freeforall 1.
А так ffa работал только без radar_config. С ним переставал работать! СПАСИБО!:)
 

medwedos2

Участник
Сообщения
12
Реакции
0
Re: [CS:S] Radar Config

все отлично работает и после сворачивания\разворачивания радар не появляется
SteamPipe | Linux | ZR
 

Nekro

Терра инкогнита
Сообщения
4,025
Реакции
2,260
Re: [CS:S] Radar Config

Можно ли сделать так, что бы радар не влиял на команду ?

mp_playerid
Всплывающие подсказки при наведении прицела на игрока

А то при включении плагина, он скидывает все подсказки, в исходном коде не нашёл как поменять можно.
 

serg005

Участник
Сообщения
134
Реакции
2
Поставил плагин все хорошо,радара нету,
но появилась следующаяя проблема
при наведении на игрока перестало подсвечивать ник игрока.
кто нибуть может пофиксить чтобы только радар убирался....
 

LeXon

Участник
Сообщения
317
Реакции
29
Поставил плагин все хорошо,радара нету,
но появилась следующаяя проблема
при наведении на игрока перестало подсвечивать ник игрока.
кто нибуть может пофиксить чтобы только радар убирался....
аналогично, кто поможет?
 
Сверху Снизу