Fix issue the lrm inspector didn't set dirty while the value is changed
This commit is contained in:
parent
da2928e9e5
commit
8123902c2e
1 changed files with 28 additions and 19 deletions
|
|
@ -194,11 +194,11 @@ namespace LightReflectiveMirror
|
||||||
// They have completed the "setup guide" Show them the main UI
|
// They have completed the "setup guide" Show them the main UI
|
||||||
|
|
||||||
// Remove unused transports...
|
// Remove unused transports...
|
||||||
foreach(var transport in lrm.GetComponentsInChildren<Transport>())
|
foreach (var transport in lrm.GetComponentsInChildren<Transport>())
|
||||||
{
|
{
|
||||||
if(!(transport is LightReflectiveMirrorTransport))
|
if (!(transport is LightReflectiveMirrorTransport))
|
||||||
{
|
{
|
||||||
if(transport != lrm.clientToServerTransport && (directModule == null ? true : directModule.directConnectTransport != transport))
|
if (transport != lrm.clientToServerTransport && (directModule == null ? true : directModule.directConnectTransport != transport))
|
||||||
{
|
{
|
||||||
if (transport.gameObject == lrm.gameObject)
|
if (transport.gameObject == lrm.gameObject)
|
||||||
DestroyImmediate(transport);
|
DestroyImmediate(transport);
|
||||||
|
|
@ -223,25 +223,34 @@ namespace LightReflectiveMirror
|
||||||
switch (currentTab)
|
switch (currentTab)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
// They are in the LRM Settings tab.
|
using (var change = new EditorGUI.ChangeCheckScope())
|
||||||
if (lrm.useLoadBalancer)
|
|
||||||
{
|
{
|
||||||
EditorGUILayout.HelpBox("While using a Load Balancer, you don't set the LRM node IP or port.", MessageType.Info);
|
|
||||||
GUI.enabled = false;
|
|
||||||
}
|
|
||||||
lrm.serverIP = EditorGUILayout.TextField("LRM Node IP", lrm.serverIP);
|
|
||||||
lrm.serverPort = (ushort)Mathf.Clamp(EditorGUILayout.IntField("LRM Node Port", lrm.serverPort), ushort.MinValue, ushort.MaxValue);
|
|
||||||
lrm.endpointServerPort = (ushort)Mathf.Clamp(EditorGUILayout.IntField("Endpoint Port", lrm.endpointServerPort), ushort.MinValue, ushort.MaxValue);
|
|
||||||
|
|
||||||
if (lrm.useLoadBalancer)
|
|
||||||
{
|
|
||||||
GUI.enabled = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
lrm.authenticationKey = EditorGUILayout.TextField("LRM Auth Key", lrm.authenticationKey);
|
// They are in the LRM Settings tab.
|
||||||
lrm.heartBeatInterval = EditorGUILayout.Slider("Heartbeat Time", lrm.heartBeatInterval, 0.1f, 5f);
|
if (lrm.useLoadBalancer)
|
||||||
lrm.connectOnAwake = EditorGUILayout.Toggle("Connect on Awake", lrm.connectOnAwake);
|
{
|
||||||
lrm.clientToServerTransport = (Transport)EditorGUILayout.ObjectField("LRM Transport", lrm.clientToServerTransport, typeof(Transport), true);
|
EditorGUILayout.HelpBox("While using a Load Balancer, you don't set the LRM node IP or port.", MessageType.Info);
|
||||||
|
GUI.enabled = false;
|
||||||
|
}
|
||||||
|
lrm.serverIP = EditorGUILayout.TextField("LRM Node IP", lrm.serverIP);
|
||||||
|
lrm.serverPort = (ushort)Mathf.Clamp(EditorGUILayout.IntField("LRM Node Port", lrm.serverPort), ushort.MinValue, ushort.MaxValue);
|
||||||
|
lrm.endpointServerPort = (ushort)Mathf.Clamp(EditorGUILayout.IntField("Endpoint Port", lrm.endpointServerPort), ushort.MinValue, ushort.MaxValue);
|
||||||
|
|
||||||
|
if (lrm.useLoadBalancer)
|
||||||
|
{
|
||||||
|
GUI.enabled = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
lrm.authenticationKey = EditorGUILayout.TextField("LRM Auth Key", lrm.authenticationKey);
|
||||||
|
lrm.heartBeatInterval = EditorGUILayout.Slider("Heartbeat Time", lrm.heartBeatInterval, 0.1f, 5f);
|
||||||
|
lrm.connectOnAwake = EditorGUILayout.Toggle("Connect on Awake", lrm.connectOnAwake);
|
||||||
|
lrm.clientToServerTransport = (Transport)EditorGUILayout.ObjectField("LRM Transport", lrm.clientToServerTransport, typeof(Transport), true);
|
||||||
|
if (change.changed)
|
||||||
|
{
|
||||||
|
EditorUtility.SetDirty(lrm);
|
||||||
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
// NAT punch tab.
|
// NAT punch tab.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue