Advertisement
Guest User

Untitled

a guest
Jun 19th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.42 KB | None | 0 0
  1.  
  2. using System.Net;
  3. using System.Net.Sockets;
  4. using System.Text;
  5. using System.Threading;
  6.  
  7. public class Peer : MonoBehaviour {
  8.  
  9. UdpClient peer;
  10. public InputField sendText;
  11. public Text receivedText;
  12. Thread receivedThread;
  13. public string receivedMessage = "waiting for message...";
  14.  
  15.  
  16. void Update ()
  17. {
  18. receivedText.text = receivedMessage;
  19. }
  20.  
  21. void Start ()
  22. {
  23. }
  24.  
  25. public void Send(InputField portField)
  26. {
  27. int port = int.Parse (portField.text);
  28. string message = sendText.text;
  29. IPAddress ipAddress = IPAddress.Parse ("127.0.0.1");
  30. IPEndPoint endpoint = new IPEndPoint(ipAddress,port);
  31. var bytes = Encoding.ASCII.GetBytes(message);
  32. peer.Send (bytes, bytes.Length, endpoint);
  33. }
  34.  
  35. public void Listen ()
  36. {
  37. receivedThread = new Thread(new ThreadStart (Receive));
  38. receivedThread.IsBackground = true;
  39. receivedThread.Start ();
  40.  
  41. }
  42.  
  43. void Receive()
  44. {
  45. var remoteEndPoint = new IPEndPoint(IPAddress.Any,0);
  46. while (true)
  47. {
  48. var bytes = peer.Receive (ref remoteEndPoint);
  49. if (bytes != null)
  50. {
  51. lock (receivedMessage)
  52. {
  53. receivedMessage = remoteEndPoint.Address + ": " + Encoding.ASCII.GetString (bytes);
  54. }
  55. }
  56. //receivedText.text = remoteEndPoint.Address + ": " + Encoding.ASCII.GetString (bytes);
  57. }
  58. }
  59.  
  60.  
  61. public void StartPeer(InputField portField)
  62. {
  63. int port = int.Parse (portField.text);
  64. peer = new UdpClient (port);
  65.  
  66. }
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement