OnUserChat
Usage
- Return a non-null value to override default behavior
Example Autogenerated
csharp
private object OnUserChat( IPlayer iplayer, string message )
{
Puts( "OnUserChat works!" );
return null;
}
Location
- RustCore::IOnPlayerChat(ulong playerId, string playerName, string message, Chat.ChatChannel channel, BasePlayer basePlayer)(ulong playerId, string playerName, string message, Chat.ChatChannel channel, BasePlayer player)
csharp
private object IOnPlayerChat(ulong playerId, string playerName, string message, Chat.ChatChannel channel, BasePlayer basePlayer)
{
// Ignore empty and "default" text
if (string.IsNullOrEmpty(message) || message.Equals("text"))
{
return true;
}
// Check if chat command
string chatCommandPrefix = CommandHandler.GetChatCommandPrefix(message);
if ( chatCommandPrefix != null )
{
TryRunPlayerCommand( basePlayer, message, chatCommandPrefix );
return false;
}
message = message.EscapeRichText();
// Check if using Rust+ app
if (basePlayer == null || !basePlayer.IsConnected)
{
// Call offline chat hook
return Interface.CallHook("OnPlayerOfflineChat", playerId, playerName, message, channel);
}
// Call hooks for plugins
object chatSpecific = Interface.CallHook("OnPlayerChat", basePlayer, message, channel);
object chatCovalence = Interface.CallHook("OnUserChat", basePlayer.IPlayer, message);
return chatSpecific is null ? chatCovalence : chatSpecific;
}