Beispiel #1
0
        private object IOnPlayerChat(PlayerMessageEvent evt)
        {
            // Ignore the server player
            if (evt.Sender.Equals(CodeHatch.Engine.Networking.Server.ServerPlayer))
            {
                return(null);
            }

            // Only handle custom, global, and local chat for now
            if (evt.Message.Channel == Channel.Custom || evt.Message.Channel == Channel.Global || evt.Message.Channel == Channel.Local)
            {
                // Call game-specific and universal hooks
                object hookSpecific  = Interface.Call("OnPlayerChat", evt);
                object hookUniversal = Interface.Call("OnPlayerChat", evt.Sender.IPlayer, evt.Message);
                if (hookSpecific != null || hookUniversal != null)
                {
                    // Cancel chat message event
                    evt.SetCancelled();
                    return(true);
                }
            }

            // TODO: Handle Channel.Group and Channel.Whisper

            return(null);
        }