public void Execute(int index)
    {
        DataStreamReader stream;

        Assert.IsTrue(connections[index].IsCreated);

        NetworkEvent.Type cmd;
        while ((cmd = driver.PopEventForConnection(connections[index], out stream)) !=
               NetworkEvent.Type.Empty)
        {
            if (cmd == NetworkEvent.Type.Data)
            {
                NativeString64 message = stream.ReadString();
                if (message.ToString() != "Message Confirmed")
                {
                    Debug.Log("Received Message: " + message);

                    var writer = driver.BeginSend(connections[index]);
                    writer.WriteString("Message Confirmed");
                    driver.EndSend(writer);
                }
            }
            else if (cmd == NetworkEvent.Type.Disconnect)
            {
                Debug.Log("Client disconnected from server");
                connections[index] = default(NetworkConnection);
            }
        }
    }
예제 #2
0
        public void NativeString4096ToNativeString64Works(String a)
        {
            var    b = new NativeString4096(a);
            var    c = new NativeString64(ref b);
            String d = c.ToString();

            Assert.AreEqual(a, d);
        }
예제 #3
0
    public static void Set(this UnityEngine.UI.Text me, ref NativeString64 text)
    {
        var originalText = new NativeString64(me.text);

        if (originalText.CompareTo(text) == 0)
        {
            return;
        }
        me.text = text.ToString();
    }
예제 #4
0
    public static void Set(this TMPro.TextMeshProUGUI me, ref NativeString64 text)
    {
        var originalText = new NativeString64(me.text);

        if (originalText.CompareTo(text) == 0)
        {
            return;
        }
        me.text = text.ToString();
    }
예제 #5
0
        public void NativeString64FormatNegativeZero()
        {
            float          input          = -0.0f;
            var            expectedOutput = input.ToString();
            NativeString64 aa             = new NativeString64();
            var            result         = aa.Format(input);

            Assert.AreEqual(FormatError.None, result);
            var actualOutput = aa.ToString();

            Assert.AreEqual(expectedOutput, actualOutput);
        }
예제 #6
0
        public void NativeString64FormatFloat(float input, FormatError expectedResult)
        {
            var            localizedDecimalSeparator = Convert.ToChar(Thread.CurrentThread.CurrentCulture.NumberFormat.NumberDecimalSeparator);
            var            expectedOutput            = input.ToString();
            NativeString64 aa     = new NativeString64();
            var            result = aa.Format(input, localizedDecimalSeparator);

            Assert.AreEqual(expectedResult, result);
            if (result == FormatError.None)
            {
                var actualOutput = aa.ToString();
                Assert.AreEqual(expectedOutput, actualOutput);
            }
        }
예제 #7
0
        void OnInspectorGUI()
        {
            var enabled = GUI.enabled;

            GUI.enabled = true;
            UnityEditor.EditorGUILayout.LabelField(
                nameof(TextData),
                new GUIStyle(UnityEditor.EditorStyles.boldLabel)
            {
                fontStyle = FontStyle.Bold
            });
            GUI.enabled = enabled;
            UnityEditor.EditorGUI.indentLevel++;
            UnityEditor.EditorGUILayout.TextField(nameof(Value), Value.ToString());
            UnityEditor.EditorGUI.indentLevel--;
        }
예제 #8
0
        public void NativeString64ParseFloatLocale(String locale)
        {
            var original = CultureInfo.CurrentCulture;

            try
            {
                Thread.CurrentThread.CurrentCulture = new CultureInfo(locale);
                var            localizedDecimalSeparator = Convert.ToChar(Thread.CurrentThread.CurrentCulture.NumberFormat.NumberDecimalSeparator);
                float          value  = 1.5f;
                NativeString64 native = new NativeString64();
                native.Format(value, localizedDecimalSeparator);
                var nativeResult  = native.ToString();
                var managedResult = value.ToString();
                Assert.AreEqual(managedResult, nativeResult);
            }
            finally
            {
                Thread.CurrentThread.CurrentCulture = original;
            }
        }
예제 #9
0
        public void NativeString64ToStringWorks(String a)
        {
            NativeString64 aa = new NativeString64(a);

            Assert.AreEqual(aa.ToString(), a);
        }
예제 #10
0
 public Road GetRoadById(NativeString64 id)
 {
     return(GetRoadById(id.ToString()));
 }