internal static void SendUnknownPacket
 (
     int bufferId,
     System.IO.BinaryWriter writer,
     int msgType,
     int remoteClient,
     int ignoreClient,
     global::Terraria.Localization.NetworkText text,
     int number,
     float number2,
     float number3,
     float number4,
     int number5,
     int number6,
     int number7
 )
 {
     Hooks.Net.SendUnknownPacket?.Invoke
     (
         bufferId,
         writer,
         msgType,
         remoteClient,
         ignoreClient,
         text,
         number,
         number2,
         number3,
         number4,
         number5,
         number6,
         number7
     );
 }
Exemplo n.º 2
0
        internal static bool SendData
        (
            ref int msgType,
            ref int remoteClient,
            ref int ignoreClient,
            ref global::Terraria.Localization.NetworkText text,
            ref int number,
            ref float number2,
            ref float number3,
            ref float number4,
            ref int number5,
            ref int number6,
            ref int number7
        )
        {
            //Since we currently wrap the method we need to run these checks
            //as vanilla would have done this.
            if (global::Terraria.Main.netMode == (int)NetMode.SinglePlayer)
            {
                return(false);
            }

            var bufferIndex = 256;

            if (global::Terraria.Main.netMode == (int)NetMode.Server && remoteClient >= 0)
            {
                bufferIndex = remoteClient;
            }

            var res = Hooks.Net.SendData?.Invoke
                      (
                ref bufferIndex,
                ref msgType,
                ref remoteClient,
                ref ignoreClient,
                ref text,
                ref number,
                ref number2,
                ref number3,
                ref number4,
                ref number5,
                ref number6,
                ref number7
                      );

            if (res.HasValue)
            {
                return(res.Value == HookResult.Continue);
            }
            return(true);
        }
        /// <summary>
        /// Injected into the start of Terraria.NetMessage.BroadcastChatMessage.  Return HookResult.Cancelled to supress the broadcast message.
        /// </summary>
        /// <returns>True if the program is to run vanilla code, false otherwise.</returns>
        internal static bool BeforeSendChatMessageToClient(global::Terraria.Localization.NetworkText text, ref Color color, ref int ignorePlayer)
        {
            var beforeChatMessageHook = Hooks.Net.BeforeSendChatMessageToClient;

            return((beforeChatMessageHook?.Invoke(text, ref color, ref ignorePlayer) ?? HookResult.Continue) == HookResult.Continue);
        }
        /// <summary>
        /// Injected into the start of Terraria.NetMessage.BroadcastChatMessage.  Return HookResult.Cancelled to supress the broadcast message.
        /// </summary>
        /// <returns>True if the program is to run vanilla code, false otherwise.</returns>
        internal static void AfterSendChatMessageToClient(global::Terraria.Localization.NetworkText text, ref Color color, ref int ignorePlayer)
        {
            var beforeChatMessageHook = Hooks.Net.AfterSendChatMessageToClient;

            beforeChatMessageHook?.Invoke(text, ref color, ref ignorePlayer);
        }
Exemplo n.º 5
0
 /// <summary>
 /// Injected into the start of Terraria.NetMessage.BroadcastChatMessage.  Return HookResult.Cancelled to supress the broadcast message.
 /// </summary>
 /// <returns>True if the program is to run vanilla code, false otherwise.</returns>
 internal static void AfterBroadcastChatMessage(global::Terraria.Localization.NetworkText text, ref Color color, ref int ignorePlayer)
 {
     Hooks.Net.AfterBroadcastChatMessage?.Invoke(text, ref color, ref ignorePlayer);
 }