Remove CSGO and Cleanup required folders.
This commit is contained in:
		
							parent
							
								
									a86d71c70b
								
							
						
					
					
						commit
						d7eb10d8f4
					
				| @ -48,7 +48,7 @@ int g_iLastReportID; | |||||||
| 
 | 
 | ||||||
| public Plugin myinfo = | public Plugin myinfo = | ||||||
| { | { | ||||||
| 	name        = "Discord core", | 	name        = "Discord Core", | ||||||
| 	author      = "Obus and Neon", | 	author      = "Obus and Neon", | ||||||
| 	description = "Chat- & Rcon-Support", | 	description = "Chat- & Rcon-Support", | ||||||
| 	version     = "1.2.0", | 	version     = "1.2.0", | ||||||
| @ -1,192 +0,0 @@ | |||||||
| #include <sourcemod> |  | ||||||
| #include <SteamWorks> |  | ||||||
| 
 |  | ||||||
| #pragma semicolon 1 |  | ||||||
| #pragma newdecls required |  | ||||||
| 
 |  | ||||||
| #include "SteamAPI.secret" |  | ||||||
| 
 |  | ||||||
| /* BOOLEANS */ |  | ||||||
| bool g_bValid[MAXPLAYERS+1]     = {false, ...}; |  | ||||||
| bool g_bValidated[MAXPLAYERS+1] = {false, ...}; |  | ||||||
| 
 |  | ||||||
| /* FORWARDS */ |  | ||||||
| Handle g_hFwd_OnClientProfileValidated; |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public Plugin myinfo = |  | ||||||
| { |  | ||||||
| 	name        = "NoSteamDetection", |  | ||||||
| 	author      = "zaCade", |  | ||||||
| 	description = "Mark people as 'NoSteam' if their steam profiles are incorrect", |  | ||||||
| 	version     = "1.0" |  | ||||||
| }; |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public APLRes AskPluginLoad2(Handle myself, bool late, char [] error, int err_max) |  | ||||||
| { |  | ||||||
| 	CreateNative("IsClientProfileValid",     Native_IsClientProfileValid); |  | ||||||
| 	CreateNative("IsClientProfileValidated", Native_IsClientProfileValidated); |  | ||||||
| 
 |  | ||||||
| 	RegPluginLibrary("NoSteamDetection"); |  | ||||||
| 	return APLRes_Success; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnPluginStart() |  | ||||||
| { |  | ||||||
| 	g_hFwd_OnClientProfileValidated = CreateGlobalForward("OnClientProfileValidated", ET_Ignore, Param_Cell, Param_Cell); |  | ||||||
| 
 |  | ||||||
| 	for(int client = 1; client <= MaxClients; client++) |  | ||||||
| 	{ |  | ||||||
| 		if(IsValidClient(client) && IsClientAuthorized(client)) |  | ||||||
| 			OnClientAuthorized(client, ""); |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnClientAuthorized(int client, const char[] auth) |  | ||||||
| { |  | ||||||
| 	char sSteam64ID[32]; |  | ||||||
| 	GetClientAuthId(client, AuthId_SteamID64, sSteam64ID, sizeof(sSteam64ID)); |  | ||||||
| 
 |  | ||||||
| 	char sRequest[256]; |  | ||||||
| 	Format(sRequest, sizeof(sRequest), "http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=%s&steamids=%s&format=vdf", STEAM_API_KEY, sSteam64ID); |  | ||||||
| 
 |  | ||||||
| 	Handle hRequest = SteamWorks_CreateHTTPRequest(k_EHTTPMethodGET, sRequest); |  | ||||||
| 	if (!hRequest || |  | ||||||
| 		!SteamWorks_SetHTTPCallbacks(hRequest, OnClientAuthorized_OnTransferComplete) || |  | ||||||
| 		!SteamWorks_SetHTTPRequestContextValue(hRequest, GetClientSerial(client)) || |  | ||||||
| 		!SteamWorks_SendHTTPRequest(hRequest)) |  | ||||||
| 	{ |  | ||||||
| 		delete hRequest; |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public int OnClientAuthorized_OnTransferComplete(Handle hRequest, bool bFailure, bool bSuccessful, EHTTPStatusCode eStatusCode, int serial) |  | ||||||
| { |  | ||||||
| 	if (bFailure || !bSuccessful || eStatusCode != k_EHTTPStatusCode200OK) |  | ||||||
| 	{ |  | ||||||
| 		delete hRequest; |  | ||||||
| 		return; |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	SteamWorks_GetHTTPResponseBodyCallback(hRequest, OnClientAuthorized_OnTransferResponse, serial); |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public int OnClientAuthorized_OnTransferResponse(char[] sData, int serial) |  | ||||||
| { |  | ||||||
| 	int client; |  | ||||||
| 	if ((client = GetClientFromSerial(serial)) == 0) |  | ||||||
| 		return; |  | ||||||
| 
 |  | ||||||
| 	KeyValues Response = new KeyValues("SteamAPIResponse"); |  | ||||||
| 
 |  | ||||||
| 	if(!Response.ImportFromString(sData, "SteamAPIResponse")) |  | ||||||
| 	{ |  | ||||||
| 		OnClientAuthorized_FinishCall(client, false); |  | ||||||
| 		delete Response; |  | ||||||
| 		return; |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	if(!Response.JumpToKey("players")) |  | ||||||
| 	{ |  | ||||||
| 		OnClientAuthorized_FinishCall(client, false); |  | ||||||
| 		delete Response; |  | ||||||
| 		return; |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	if(!Response.GotoFirstSubKey()) |  | ||||||
| 	{ |  | ||||||
| 		OnClientAuthorized_FinishCall(client, false); |  | ||||||
| 		delete Response; |  | ||||||
| 		return; |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	if ((Response.GetNum("profilestate")) == 0) |  | ||||||
| 	{ |  | ||||||
| 		OnClientAuthorized_FinishCall(client, false); |  | ||||||
| 		delete Response; |  | ||||||
| 		return; |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	OnClientAuthorized_FinishCall(client, true); |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnClientAuthorized_FinishCall(int client, bool valid) |  | ||||||
| { |  | ||||||
| 	g_bValid[client]     = valid; |  | ||||||
| 	g_bValidated[client] = true; |  | ||||||
| 
 |  | ||||||
| 	Call_StartForward(g_hFwd_OnClientProfileValidated); |  | ||||||
| 	Call_PushCell(client); |  | ||||||
| 	Call_PushCell(valid); |  | ||||||
| 	Call_Finish(); |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnClientDisconnect(int client) |  | ||||||
| { |  | ||||||
| 	g_bValid[client]     = false; |  | ||||||
| 	g_bValidated[client] = false; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public int Native_IsClientProfileValid(Handle hPlugin, int numParams) |  | ||||||
| { |  | ||||||
| 	int client = GetNativeCell(1); |  | ||||||
| 
 |  | ||||||
| 	if (!IsValidClient(client)) |  | ||||||
| 		return false; |  | ||||||
| 
 |  | ||||||
| 	return g_bValid[client]; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public int Native_IsClientProfileValidated(Handle hPlugin, int numParams) |  | ||||||
| { |  | ||||||
| 	int client = GetNativeCell(1); |  | ||||||
| 
 |  | ||||||
| 	if (!IsValidClient(client)) |  | ||||||
| 		return false; |  | ||||||
| 
 |  | ||||||
| 	return g_bValidated[client]; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public bool IsValidClient(int client) |  | ||||||
| { |  | ||||||
| 	if (client < 0) |  | ||||||
| 		return false; |  | ||||||
| 
 |  | ||||||
| 	if (client > GetMaxClients()) |  | ||||||
| 		return false; |  | ||||||
| 
 |  | ||||||
| 	return true; |  | ||||||
| } |  | ||||||
| @ -1,11 +0,0 @@ | |||||||
| #if defined NoSteamDetection_included
 |  | ||||||
| 	#endinput
 |  | ||||||
| #endif
 |  | ||||||
| 
 |  | ||||||
| #define NoSteamDetection_included
 |  | ||||||
| 
 |  | ||||||
| native bool IsClientProfileValid(int client); |  | ||||||
| 
 |  | ||||||
| native bool IsClientProfileValidated(int client); |  | ||||||
| 
 |  | ||||||
| forward void OnClientProfileValidated(int client, bool valid); |  | ||||||
| @ -1,154 +0,0 @@ | |||||||
| #pragma semicolon 1 |  | ||||||
| 
 |  | ||||||
| #include <sourcemod> |  | ||||||
| #include <basecomm> |  | ||||||
| #include <NoSteamDetection> |  | ||||||
| 
 |  | ||||||
| #pragma newdecls required |  | ||||||
| 
 |  | ||||||
| /* CONVARS */ |  | ||||||
| ConVar g_hCvar_BlockAdmin; |  | ||||||
| ConVar g_hCvar_BlockVoice; |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public Plugin myinfo = |  | ||||||
| { |  | ||||||
| 	name         = "NoSteamManager", |  | ||||||
| 	author       = "zaCade", |  | ||||||
| 	description  = "Manage No-Steam clients, denying admin access, ect.", |  | ||||||
| 	version      = "1.0.0" |  | ||||||
| }; |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnPluginStart() |  | ||||||
| { |  | ||||||
| 	g_hCvar_BlockAdmin = CreateConVar("sm_nosteam_block_admin", "1", "Should people marked as nosteam be blocked from admin?", FCVAR_NONE, true, 0.0, true, 1.0); |  | ||||||
| 	g_hCvar_BlockVoice = CreateConVar("sm_nosteam_block_voice", "1", "Should people marked as nosteam be blocked from voice?", FCVAR_NONE, true, 0.0, true, 1.0); |  | ||||||
| 
 |  | ||||||
| 	AddMultiTargetFilter("@steam", Filter_Steam, "Steam Players", false); |  | ||||||
| 	AddMultiTargetFilter("@nosteam", Filter_NoSteam, "No-Steam Players", false); |  | ||||||
| 
 |  | ||||||
| 	RegConsoleCmd("sm_nosteam", Command_DisplaySteamStats, "Shows the number of Steam and No-Steam players"); |  | ||||||
| 	RegConsoleCmd("sm_steam", Command_DisplaySteamStats, "Shows the number of Steam and No-Steam players"); |  | ||||||
| 
 |  | ||||||
| 	AutoExecConfig(); |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnPluginEnd() |  | ||||||
| { |  | ||||||
| 	RemoveMultiTargetFilter("@steam", Filter_Steam); |  | ||||||
| 	RemoveMultiTargetFilter("@nosteam", Filter_NoSteam); |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public Action Command_DisplaySteamStats(int client, int args) |  | ||||||
| { |  | ||||||
| 	char aBuf[1024]; |  | ||||||
| 	char aBuf2[MAX_NAME_LENGTH]; |  | ||||||
| 
 |  | ||||||
| 	for(int i = 1; i <= MaxClients; i++) |  | ||||||
| 	{ |  | ||||||
| 		if(IsClientInGame(i) && !IsFakeClient(i)) |  | ||||||
| 		{ |  | ||||||
| 			if(IsClientProfileValidated(i) && !IsClientProfileValid(i)) |  | ||||||
| 			{ |  | ||||||
| 				GetClientName(i, aBuf2, sizeof(aBuf2)); |  | ||||||
| 				StrCat(aBuf, sizeof(aBuf), aBuf2); |  | ||||||
| 				StrCat(aBuf, sizeof(aBuf), ", "); |  | ||||||
| 			} |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	if(strlen(aBuf)) |  | ||||||
| 	{ |  | ||||||
| 		aBuf[strlen(aBuf) - 2] = 0; |  | ||||||
| 		ReplyToCommand(client, "[SM] No-Steam clients online: %s", aBuf); |  | ||||||
| 	} |  | ||||||
| 	else |  | ||||||
| 		ReplyToCommand(client, "[SM] No-Steam clients online: none"); |  | ||||||
| 
 |  | ||||||
| 	return Plugin_Handled; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public bool Filter_Steam(const char[] sPattern, Handle hClients) |  | ||||||
| { |  | ||||||
| 	for(int i = 1; i <= MaxClients; i++) |  | ||||||
| 	{ |  | ||||||
| 		if(IsClientInGame(i) && !IsFakeClient(i)) |  | ||||||
| 		{ |  | ||||||
| 			if(IsClientProfileValidated(i) && IsClientProfileValid(i)) |  | ||||||
| 				PushArrayCell(hClients, i); |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 	return true; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public bool Filter_NoSteam(const char[] sPattern, Handle hClients) |  | ||||||
| { |  | ||||||
| 	for(int i = 1; i <= MaxClients; i++) |  | ||||||
| 	{ |  | ||||||
| 		if(IsClientInGame(i) && !IsFakeClient(i)) |  | ||||||
| 		{ |  | ||||||
| 			if(IsClientProfileValidated(i) && !IsClientProfileValid(i)) |  | ||||||
| 				PushArrayCell(hClients, i); |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 	return true; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public Action OnClientPreAdminCheck(int client) |  | ||||||
| { |  | ||||||
| 	if(!g_hCvar_BlockAdmin.BoolValue) |  | ||||||
| 		return Plugin_Continue; |  | ||||||
| 
 |  | ||||||
| 	if(IsFakeClient(client) || IsClientSourceTV(client)) |  | ||||||
| 		return Plugin_Continue; |  | ||||||
| 
 |  | ||||||
| 	if(IsClientProfileValidated(client) && !IsClientProfileValid(client)) |  | ||||||
| 	{ |  | ||||||
| 		LogMessage("%L did not have a valid profile, denying admin.", client); |  | ||||||
| 		NotifyPostAdminCheck(client); |  | ||||||
| 
 |  | ||||||
| 		return Plugin_Handled; |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	return Plugin_Continue; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnClientPostAdminCheck(int client) |  | ||||||
| { |  | ||||||
| 	if(!g_hCvar_BlockVoice.BoolValue) |  | ||||||
| 		return; |  | ||||||
| 
 |  | ||||||
| 	if(IsFakeClient(client) || IsClientSourceTV(client)) |  | ||||||
| 		return; |  | ||||||
| 
 |  | ||||||
| 	if(IsClientProfileValidated(client) && !IsClientProfileValid(client)) |  | ||||||
| 	{ |  | ||||||
| 		LogMessage("%L did not have a valid profile, muting client.", client); |  | ||||||
| 		BaseComm_SetClientMute(client, true); |  | ||||||
| 
 |  | ||||||
| 		return; |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
| @ -1,127 +0,0 @@ | |||||||
| #include <sourcemod> |  | ||||||
| #include <SteamWorks> |  | ||||||
| #include <NoSteamDetection> |  | ||||||
| 
 |  | ||||||
| #pragma semicolon 1 |  | ||||||
| #pragma newdecls required |  | ||||||
| 
 |  | ||||||
| bool g_bHasFakeClient[MAXPLAYERS + 1] = {false,...}; |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public Plugin myinfo = |  | ||||||
| { |  | ||||||
| 	name        = "NoSteamPlayerCount", |  | ||||||
| 	author      = "Neon", |  | ||||||
| 	description = "", |  | ||||||
| 	version     = "1.0", |  | ||||||
| 	url         = "https://steamcommunity.com/id/n3ontm" |  | ||||||
| }; |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnGameFrame() |  | ||||||
| { |  | ||||||
| 	SteamWorks_SetMaxPlayers(65); |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnPluginStart() |  | ||||||
| { |  | ||||||
| 	RegAdminCmd("sm_addfake", Command_AddFake, ADMFLAG_ROOT, ""); |  | ||||||
| 	RegAdminCmd("sm_removefake", Command_RemoveFake, ADMFLAG_ROOT, ""); |  | ||||||
| 	RegAdminCmd("sm_countfakes", Command_CountFakes, ADMFLAG_BAN, ""); |  | ||||||
| 
 |  | ||||||
| 	for(int client = 1; client <= MaxClients; client++) |  | ||||||
| 	{ |  | ||||||
| 		if(IsValidClient(client) && IsClientProfileValidated(client)) |  | ||||||
| 			OnClientProfileValidated(client, false); |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnPluginEnd() |  | ||||||
| { |  | ||||||
| 	for(int client = 1; client <= MaxClients; client++) |  | ||||||
| 	{ |  | ||||||
| 		if(IsValidClient(client)) |  | ||||||
| 			OnClientDisconnect(client); |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public Action Command_AddFake(int client, int argc) |  | ||||||
| { |  | ||||||
| 	SteamWorks_CreateFake("Kaitou Sinbad"); |  | ||||||
| 	return Plugin_Handled; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public Action Command_RemoveFake(int client, int argc) |  | ||||||
| { |  | ||||||
| 	SteamWorks_KickFake(); |  | ||||||
| 	return Plugin_Handled; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public Action Command_CountFakes(int client, int argc) |  | ||||||
| { |  | ||||||
| 	int iFakes = SteamWorks_CountFakes(); |  | ||||||
| 	ReplyToCommand(client, "There are currently %d Fake Clients active.", iFakes); |  | ||||||
| 	return Plugin_Handled; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnClientProfileValidated(int client, bool valid) |  | ||||||
| { |  | ||||||
| 	char sName[128]; |  | ||||||
| 	GetClientName(client, sName, sizeof(sName)); |  | ||||||
| 
 |  | ||||||
| 	if(!IsClientProfileValid(client)) |  | ||||||
| 	{ |  | ||||||
| 		int iFakeID = SteamWorks_CreateFake(sName); |  | ||||||
| 		g_bHasFakeClient[client] = true; |  | ||||||
| 		LogMessage("\"%L\" connected as NoSteam. Fake Client with ID: \"%d\" got created.", client, iFakeID); |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnClientDisconnect(int client) |  | ||||||
| { |  | ||||||
| 	if (!g_bHasFakeClient[client]) |  | ||||||
| 		return; |  | ||||||
| 
 |  | ||||||
| 	SteamWorks_KickFake(); |  | ||||||
| 	g_bHasFakeClient[client] = false; |  | ||||||
| 	LogMessage("\"%L\" left as NoSteam. Fake Client got removed.", client); |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public bool IsValidClient(int client) |  | ||||||
| { |  | ||||||
| 	if (client <= 0) |  | ||||||
| 		return false; |  | ||||||
| 
 |  | ||||||
| 	if (client > GetMaxClients()) |  | ||||||
| 		return false; |  | ||||||
| 
 |  | ||||||
| 	return true; |  | ||||||
| } |  | ||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @ -1,158 +0,0 @@ | |||||||
| #include <sourcemod> |  | ||||||
| #include <SteamWorks> |  | ||||||
| #include <connect> |  | ||||||
| 
 |  | ||||||
| #pragma semicolon 1 |  | ||||||
| #pragma newdecls required |  | ||||||
| 
 |  | ||||||
| bool g_bHasFakeClient[MAXPLAYERS + 1] = {false,...}; |  | ||||||
| int g_MaxPlayers = 64; |  | ||||||
| 
 |  | ||||||
| ConVar g_hCVar_FakeClients; |  | ||||||
| ConVar g_hCVar_SourceTV; |  | ||||||
| ConVar g_hCVar_MaxPlayers; |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public Plugin myinfo = |  | ||||||
| { |  | ||||||
| 	name        = "NoSteamPlayerCount", |  | ||||||
| 	author      = "Neon", |  | ||||||
| 	description = "", |  | ||||||
| 	version     = "1.0", |  | ||||||
| 	url         = "https://steamcommunity.com/id/n3ontm" |  | ||||||
| }; |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnGameFrame() |  | ||||||
| { |  | ||||||
| 	SteamWorks_SetMaxPlayers(g_MaxPlayers); |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnPluginStart() |  | ||||||
| { |  | ||||||
| 	g_hCVar_FakeClients = CreateConVar("sm_nosteamplayercount_fakeclients", "1", "Increse PlayerCount for Fake Clients", 0, true, 0.0, true, 1.0); |  | ||||||
| 	g_hCVar_SourceTV = CreateConVar("sm_nosteamplayercount_sourcetv", "1", "Increse PlayerCount for SourceTV", 0, true, 0.0, true, 1.0); |  | ||||||
| 	g_hCVar_MaxPlayers = CreateConVar("sm_nosteamplayercount_maxplayers", "64", "Max Players to display in the sv browser", 0, true, 1.0, true, 128.0); |  | ||||||
| 
 |  | ||||||
| 	g_hCVar_MaxPlayers.AddChangeHook(OnConVarChanged); |  | ||||||
| 
 |  | ||||||
| 	AutoExecConfig(true, "plugin.NoSteamPlayerCount"); |  | ||||||
| 
 |  | ||||||
| 	RegAdminCmd("sm_addfake", Command_AddFake, ADMFLAG_ROOT, ""); |  | ||||||
| 	RegAdminCmd("sm_removefake", Command_RemoveFake, ADMFLAG_ROOT, ""); |  | ||||||
| 	RegAdminCmd("sm_countfakes", Command_CountFakes, ADMFLAG_BAN, ""); |  | ||||||
| 
 |  | ||||||
| 	for(int client = 1; client <= MaxClients; client++) |  | ||||||
| 	{ |  | ||||||
| 		if(IsValidClient(client) && IsClientAuthorized(client)) |  | ||||||
| 			OnClientAuthorized(client, ""); |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnPluginEnd() |  | ||||||
| { |  | ||||||
| 	for(int client = 1; client <= MaxClients; client++) |  | ||||||
| 	{ |  | ||||||
| 		if(IsValidClient(client)) |  | ||||||
| 			OnClientDisconnect(client); |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnConVarChanged(ConVar convar, const char[] oldValue, const char[] newValue) |  | ||||||
| { |  | ||||||
| 	if(convar == g_hCVar_MaxPlayers) |  | ||||||
| 		g_MaxPlayers = g_hCVar_MaxPlayers.IntValue; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public Action Command_AddFake(int client, int argc) |  | ||||||
| { |  | ||||||
| 	SteamWorks_CreateFake("Kaitou Sinbad"); |  | ||||||
| 	return Plugin_Handled; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public Action Command_RemoveFake(int client, int argc) |  | ||||||
| { |  | ||||||
| 	SteamWorks_KickFake(); |  | ||||||
| 	return Plugin_Handled; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public Action Command_CountFakes(int client, int argc) |  | ||||||
| { |  | ||||||
| 	int iFakes = SteamWorks_CountFakes(); |  | ||||||
| 	ReplyToCommand(client, "There are currently %d Fake Clients active.", iFakes); |  | ||||||
| 	return Plugin_Handled; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnClientAuthorized(int client, const char[] auth) |  | ||||||
| { |  | ||||||
| 	if (IsClientSourceTV(client) && (!GetConVarBool(g_hCVar_SourceTV))) |  | ||||||
| 		return; |  | ||||||
| 
 |  | ||||||
| 	if (IsFakeClient(client) && (!GetConVarBool(g_hCVar_FakeClients))) |  | ||||||
| 		return; |  | ||||||
| 
 |  | ||||||
| 	char sSteamID[32]; |  | ||||||
| 	GetClientAuthId(client, AuthId_Steam2, sSteamID, sizeof(sSteamID)); |  | ||||||
| 
 |  | ||||||
| 	char sName[128]; |  | ||||||
| 	GetClientName(client, sName, sizeof(sName)); |  | ||||||
| 
 |  | ||||||
| 	if(!SteamClientAuthenticated(sSteamID)) |  | ||||||
| 	{ |  | ||||||
| 		int iFakeID = SteamWorks_CreateFake(sName); |  | ||||||
| 		g_bHasFakeClient[client] = true; |  | ||||||
| 		LogMessage("\"%L\" connected as NoSteam. Fake Client with ID: \"%d\" got created.", client, iFakeID); |  | ||||||
| 	} |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public void OnClientDisconnect(int client) |  | ||||||
| { |  | ||||||
| 	if (!g_bHasFakeClient[client]) |  | ||||||
| 		return; |  | ||||||
| 
 |  | ||||||
| 	SteamWorks_KickFake(); |  | ||||||
| 	g_bHasFakeClient[client] = false; |  | ||||||
| 	LogMessage("\"%L\" left as NoSteam. Fake Client got removed.", client); |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| // Purpose: |  | ||||||
| //---------------------------------------------------------------------------------------------------- |  | ||||||
| public bool IsValidClient(int client) |  | ||||||
| { |  | ||||||
| 	if (client <= 0) |  | ||||||
| 		return false; |  | ||||||
| 
 |  | ||||||
| 	if (client > GetMaxClients()) |  | ||||||
| 		return false; |  | ||||||
| 
 |  | ||||||
| 	return true; |  | ||||||
| } |  | ||||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
		Reference in New Issue
	
	Block a user