Unity вылетает из-за ServerSocket.Accept

Доброе утро, сегодня столкнулся с небольшой проблемой. Я решил сделать мультиплеер для своей 2d игры на unity 3d, вот код скрипта, в нём игрок становится хостом.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Net;
using System.Net.Sockets;
using System.Text;
public class MultiPlayer : MonoBehaviour
{
    public string ip, port;
    static Socket client;
    static Socket ServerSocket = new Socket(SocketType.Stream, ProtocolType.Tcp);
    public bool host;
    // Start is called before the first frame update
    void Start()
    {
        try
        {
            var ServerPoint = new IPEndPoint(IPAddress.Parse(ip), int.Parse(port));
            ServerSocket.Bind(ServerPoint);
            ServerSocket.Listen(5);
            NewUser();
        }
        catch
        {
            print("F");
        }
    }

    // Update is called once per frame
    void Update()
    {

    }
    void NewUser()
    {
        int size = 0;
        client = ServerSocket.Accept();

            //var data = new StringBuilder();
            //var buffer = new byte[1024];
           // size = client.Receive(buffer);
           // print("~Новое сообщение");
           // data.Append(Encoding.Unicode.GetString(buffer, 0, size));
           // print(data);
        
    } 
}

По неизвестной мне причине на строчке client = ServerSocket.Accept(); unity крашится. Что я могу сделать в этой ситуации?


Ответы (0 шт):