/// <summary>
        /// <para>Sends a <see cref="ModPacket"/> with <see cref="OriPlayer"/> data.</para>
        /// <inheritdoc cref="ModPacket.Send(int, int)"/>
        /// </summary>
        /// <param name="toWho">Who to send to. <see langword="255"/> for server, <see langword="-1"/> for all players.</param>
        /// <param name="fromWho">Sender, client to ignore.</param>
        internal void SendOriState(int toWho, int fromWho)
        {
            ModPacket packet     = GetPacket(fromWho);
            OriPlayer fromPlayer = Main.player[fromWho].GetModPlayer <OriPlayer>();

            BitsByte flags = new BitsByte {
                [0] = fromPlayer.IsOri,
                [1] = fromPlayer.Transforming,
                [2] = fromPlayer.UnrestrictedMovement,
                [3] = fromPlayer.SeinMinionActive,
                [4] = fromPlayer.multiplayerPlayerLight,
            };

            packet.Write(flags);
            if (fromPlayer.Transforming)
            {
                packet.Write((ushort)fromPlayer.transformTimer);
            }

            if (fromPlayer.SeinMinionActive)
            {
                packet.Write((byte)fromPlayer.SeinMinionType);
            }

            packet.WriteRGB(fromPlayer.SpriteColorPrimary);
            packet.WriteRGBA(fromPlayer.SpriteColorSecondary);

            fromPlayer.input.WritePacket(packet);

            packet.Send(toWho, fromWho);
        }