/// <summary>
    /// Send packet to all
    /// </summary>
    public void SendPacketToAll
    (
        RakNet_Packet packet,
        PacketPriority priority       = PacketPriority.IMMEDIATE_PRIORITY,
        PacketReliability reliability = PacketReliability.RELIABLE,
        NetChannel channel            = NetChannel.NET_EVENTS
    )
    {
        if (server_peer.state != PeerState.RunAsServer)
        {
            return;
        }


        if (!packet.begin_write || !packet.end_write)
        {
            Debug.LogError("Can't send packet! Check Begin & End packet");
            return;
        }


        for (int i = 0; i < connections.Count; i++)
        {
            server_peer.SendToClient(connections[i].guid, priority, reliability, channel);
        }
    }
 public void SendToClient(ulong guid, PacketPriority priority = PacketPriority.IMMEDIATE_PRIORITY, PacketReliability reliability = PacketReliability.RELIABLE, NetChannel channel = NetChannel.NET_EVENTS)
 {
     peer?.SendToClient(guid, priority, reliability, channel);
 }
 /// <summary>
 /// Send data to client (with packet_id && payload)
 /// </summary>
 public void SendData
 (
     byte packet_id,
     byte[] data,
     ulong guid = 0,
     PacketPriority priority       = PacketPriority.IMMEDIATE_PRIORITY,
     PacketReliability reliability = PacketReliability.RELIABLE,
     NetChannel channel            = NetChannel.NET_EVENTS
 )
 {
     server_peer?.BeginWrite(packet_id);
     server_peer?.WriteBytes(data);
     if (guid != 0)
     {
         server_peer?.SendToClient(guid, priority, reliability, channel);
     }
 }