mirror of
https://github.com/shavitush/bhoptimer.git
synced 2025-12-07 02:18:26 +00:00
110 lines
4.4 KiB
SourcePawn
110 lines
4.4 KiB
SourcePawn
/************************************************************************
|
|
*************************************************************************
|
|
Simple Plugins
|
|
Description:
|
|
Included file for Simple Chat Processor in the Simple Plugins project
|
|
*************************************************************************
|
|
*************************************************************************
|
|
This file is part of Simple Plugins project.
|
|
|
|
This plugin is free software: you can redistribute
|
|
it and/or modify it under the terms of the GNU General Public License as
|
|
published by the Free Software Foundation, either version 3 of the License, or
|
|
later version.
|
|
|
|
This plugin 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 plugin. If not, see <http://www.gnu.org/licenses/>.
|
|
*************************************************************************
|
|
*************************************************************************
|
|
File Information
|
|
$Id$
|
|
$Author$
|
|
$Revision$
|
|
$Date$
|
|
$LastChangedBy$
|
|
$LastChangedDate$
|
|
$URL$
|
|
$Copyright: (c) Simple Plugins 2008-2009$
|
|
*************************************************************************
|
|
*************************************************************************/
|
|
|
|
#if defined _scp_included
|
|
#endinput
|
|
#endif
|
|
#define _scp_included
|
|
|
|
#define MAXLENGTH_INPUT 128 // Inclues \0 and is the size of the chat input box.
|
|
#define MAXLENGTH_NAME 64 // This is backwords math to get compability. Sourcemod has it set at 32, but there is room for more.
|
|
#define MAXLENGTH_MESSAGE 256 // This is based upon the SDK and the length of the entire message, including tags, name, : etc.
|
|
|
|
#define CHATFLAGS_INVALID 0
|
|
#define CHATFLAGS_ALL (1<<0)
|
|
#define CHATFLAGS_TEAM (1<<1)
|
|
#define CHATFLAGS_SPEC (1<<2)
|
|
#define CHATFLAGS_DEAD (1<<3)
|
|
|
|
/**********************************************************************
|
|
* When a player types a chat message
|
|
*
|
|
* NOTES:
|
|
* Use MAXLENGTH_ constants above for formating the strings
|
|
* Do not rely on the recipients handle to exist beyond the forward
|
|
* Do not start another usermessage (PrintToChat) within this forward
|
|
*
|
|
* @param author The client index of the player who sent the chat message (Byref)
|
|
* @param recipients The handle to the client index adt array of the players who should recieve the chat message
|
|
* @param name The client's name of the player who sent the chat message (Byref)
|
|
* @param message The contents of the chat message (Byref)
|
|
* @noreturn
|
|
**********************************************************************/
|
|
forward Action OnChatMessage(int &author, ArrayList recipients, char[] name, char[] message);
|
|
|
|
/**********************************************************************
|
|
* Called after all OnChatMessage forwards have been fired and the message is being broadcast.
|
|
*
|
|
* NOTES:
|
|
* Use MAXLENGTH_ constants above for formating the strings
|
|
* Do not rely on the recipients handle to exist beyond the forward
|
|
*
|
|
* @param author The client index of the player who sent the chat message
|
|
* @param recipients The handle to the client index adt array of the players who are receiting the chat message
|
|
* @param name The client's name of the player who sent the chat message (after any replacements)
|
|
* @param message The contents of the chat message (after any replacements)
|
|
* @noreturn
|
|
**********************************************************************/
|
|
forward void OnChatMessage_Post(int author, ArrayList recipients, const char[] name, const char[] message);
|
|
|
|
/**********************************************************************
|
|
* Gets the current flags for the chat message
|
|
* Should only be called within OnChatMessage() or OnChatMessage_Post()
|
|
*
|
|
* @return The current type of chat message (see constants)
|
|
**********************************************************************/
|
|
native int GetMessageFlags();
|
|
|
|
/**
|
|
Shared plugin information
|
|
**/
|
|
public SharedPlugin _pl_scp =
|
|
{
|
|
name = "scp",
|
|
file = "simple-chatprocessor.smx",
|
|
#if defined REQUIRE_PLUGIN
|
|
required = 1
|
|
#else
|
|
required = 0
|
|
#endif
|
|
};
|
|
|
|
#if !defined REQUIRE_PLUGIN
|
|
public void _pl_scp_SetNTVOptional()
|
|
{
|
|
MarkNativeAsOptional("GetMessageFlags");
|
|
}
|
|
#endif
|