diff options
| author | aura <nw@moneybot.cc> | 2026-02-17 23:42:09 +0100 |
|---|---|---|
| committer | aura <nw@moneybot.cc> | 2026-02-17 23:42:09 +0100 |
| commit | 5e2eb7d67ae933b7566f1944d0bb7744da03d586 (patch) | |
| tree | 054acff1113270a9cd07933df760f3768c1b6853 /sourcemod/scripting/include/helpers.inc | |
| parent | 341db13a008dc12bb22ceb50452d93d01476308c (diff) | |
move source stuff to its own folder
Diffstat (limited to 'sourcemod/scripting/include/helpers.inc')
| -rw-r--r-- | sourcemod/scripting/include/helpers.inc | 287 |
1 files changed, 0 insertions, 287 deletions
diff --git a/sourcemod/scripting/include/helpers.inc b/sourcemod/scripting/include/helpers.inc deleted file mode 100644 index 47ade5b..0000000 --- a/sourcemod/scripting/include/helpers.inc +++ /dev/null @@ -1,287 +0,0 @@ -/** - * vim: set ts=4 : - * ============================================================================= - * SourceMod (C)2004-2008 AlliedModders LLC. All rights reserved. - * ============================================================================= - * - * This file is part of the SourceMod/SourcePawn SDK. - * - * This program is free software; you can redistribute it and/or modify it under - * the terms of the GNU General Public License, version 3.0, as published by the - * Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS - * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more - * details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see <http://www.gnu.org/licenses/>. - * - * As a special exception, AlliedModders LLC gives you permission to link the - * code of this program (as well as its derivative works) to "Half-Life 2," the - * "Source Engine," the "SourcePawn JIT," and any Game MODs that run on software - * by the Valve Corporation. You must obey the GNU General Public License in - * all respects for all other code used. Additionally, AlliedModders LLC grants - * this exception to all derivative works. AlliedModders LLC defines further - * exceptions, found in LICENSE.txt (as of this writing, version JULY-31-2007), - * or <http://www.sourcemod.net/license.php>. - * - * Version: $Id$ - */ - -#if defined _helpers_included - #endinput -#endif -#define _helpers_included - -/** - * This function is deprecated. Use the %L format specifier instead. - * - * Formats a user's info as log text. - * - * @param client Client index. - * @param buffer Buffer for text. - * @param maxlength Maximum length of text. - * @deprecated Use the %L format specifier instead. - */ -#pragma deprecated Use the %L format specifier instead. -stock void FormatUserLogText(int client, char[] buffer, int maxlength) -{ - FormatEx(buffer, maxlength, "\"%L\"", client); -} - -/** - * Returns plugin handle from plugin filename. - * - * @param filename Filename of the plugin to search for. - * @return Handle to plugin if found, INVALID_HANDLE otherwise. - */ -stock Handle FindPluginByFile(const char[] filename) -{ - char buffer[256]; - - Handle iter = GetPluginIterator(); - Handle pl; - - while (MorePlugins(iter)) - { - pl = ReadPlugin(iter); - - GetPluginFilename(pl, buffer, sizeof(buffer)); - if (strcmp(buffer, filename, false) == 0) - { - CloseHandle(iter); - return pl; - } - } - - CloseHandle(iter); - - return INVALID_HANDLE; -} - -/** - * @deprecated Use FindTarget() or ProcessTargetString(). - */ -#pragma deprecated Use FindTarget() or ProcessTargetString() -stock int SearchForClients(const char[] pattern, int[] clients, int maxClients) -{ - int total = 0; - - if (maxClients == 0) - { - return 0; - } - - if (pattern[0] == '#') - { - int input = StringToInt(pattern[1]); - if (!input) { - char name[MAX_NAME_LENGTH]; - for (int i=1; i<=MaxClients; i++) - { - if (!IsClientInGame(i)) - { - continue; - } - GetClientName(i, name, sizeof(name)); - if (strcmp(name, pattern, false) == 0) - { - clients[0] = i; - return 1; - } - } - } - else - { - int client = GetClientOfUserId(input); - if (client) - { - clients[0] = client; - return 1; - } - } - } - - char name[MAX_NAME_LENGTH]; - for (int i=1; i<=MaxClients; i++) - { - if (!IsClientInGame(i)) - { - continue; - } - - GetClientName(i, name, sizeof(name)); - if (StrContains(name, pattern, false) != -1) - { - clients[total++] = i; - if (total >= maxClients) - { - break; - } - } - } - - return total; -} - -/** - * Wraps ProcessTargetString() and handles producing error messages for - * bad targets. - * - * Note that you should use LoadTranslations("common.phrases") in OnPluginStart(). - * "common.phrases" contains all of the translatable phrases that FindTarget() will - * reply with in the event a target is not found (error). - * - * @param client Client who issued command - * @param target Client's target argument - * @param nobots Optional. Set to true if bots should NOT be targetted - * @param immunity Optional. Set to false to ignore target immunity. - * @return Index of target client, or -1 on error. - */ -stock int FindTarget(int client, const char[] target, bool nobots = false, bool immunity = true) -{ - char target_name[MAX_TARGET_LENGTH]; - int target_list[1], target_count; - bool tn_is_ml; - - int flags = COMMAND_FILTER_NO_MULTI; - if (nobots) - { - flags |= COMMAND_FILTER_NO_BOTS; - } - - if (!immunity) - { - flags |= COMMAND_FILTER_NO_IMMUNITY; - } - - if ((target_count = ProcessTargetString( - target, - client, - target_list, - 1, - flags, - target_name, - sizeof(target_name), - tn_is_ml)) > 0) - { - return target_list[0]; - } - - ReplyToTargetError(client, target_count); - return -1; -} - -/** - * This function is no longer supported. It has been replaced with ReadMapList(), - * which uses a more unified caching and configuration mechanism. This function also - * has a bug where if the cvar contents changes, the fileTime change won't be recognized. - * - * Loads a specified array with maps. The maps will be either loaded from mapcyclefile, or if supplied - * a cvar containing a file name. If the file in the cvar is bad, it will use mapcyclefile. The fileTime - * parameter is used to store a timestamp of the file. If specified, the file will only be reloaded if it - * has changed. - * - * @param array Valid array handle, should be created with CreateArray(33) or larger. - * @param fileTime Variable containing the "last changed" time of the file. Used to avoid needless reloading. - * @param fileCvar CVAR set to the file to be loaded. Optional. - * @return Number of maps loaded or 0 if in error. - * @deprecated Use ReadMapList() instead. - */ -#pragma deprecated Use ReadMapList() instead. -stock int LoadMaps(Handle array, int &fileTime = 0, Handle fileCvar = INVALID_HANDLE) -{ - char mapPath[256], mapFile[64]; - bool fileFound = false; - - if (fileCvar != INVALID_HANDLE) - { - GetConVarString(fileCvar, mapFile, 64); - BuildPath(Path_SM, mapPath, sizeof(mapPath), mapFile); - fileFound = FileExists(mapPath); - } - - if (!fileFound) - { - Handle mapCycleFile = FindConVar("mapcyclefile"); - GetConVarString(mapCycleFile, mapPath, sizeof(mapPath)); - fileFound = FileExists(mapPath); - } - - if (!fileFound) - { - LogError("Failed to find a file to load maps from. No maps loaded."); - ClearArray(array); - - return 0; - } - - // If the file hasn't changed, there's no reason to reload - // all of the maps. - int newTime = GetFileTime(mapPath, FileTime_LastChange); - if (fileTime == newTime) - { - return GetArraySize(array); - } - - fileTime = newTime; - - ClearArray(array); - - File file = OpenFile(mapPath, "rt"); - if (!file) { - LogError("Could not open file: %s", mapPath); - return 0; - } - - LogMessage("Loading maps from file: %s", mapPath); - - int len; - char buffer[64]; - while (!file.EndOfFile() && file.ReadLine(buffer, sizeof(buffer))) - { - TrimString(buffer); - - if ((len = StrContains(buffer, ".bsp", false)) != -1) - { - buffer[len] = '\0'; - } - - if (buffer[0] == '\0' || !IsValidConVarChar(buffer[0]) || !IsMapValid(buffer)) - { - continue; - } - - if (FindStringInArray(array, buffer) != -1) - { - continue; - } - - PushArrayString(array, buffer); - } - - file.Close(); - return GetArraySize(array); -} |
