@@ -9,92 +9,70 @@ namespace UnityEditor
9
9
[ CanEditMultipleObjects ]
10
10
public class NetworkAnimatorEditor : Editor
11
11
{
12
- // TODO @mfatihmar (Unity): Re-implement this after `NetworkedAnimator` re-implementation
13
- /*
14
- private NetworkedAnimator networkedAnimatorTarget;
12
+ private NetworkedAnimator m_Target ;
13
+
15
14
[ NonSerialized ]
16
- private bool initialized ;
15
+ private bool m_Initialized ;
17
16
18
- private SerializedProperty animatorProperty ;
19
- private GUIContent animatorLabel ;
17
+ private SerializedProperty m_AnimatorProperty ;
18
+ private GUIContent m_AnimatorLabel ;
20
19
21
- void Init ()
20
+ private void Initialize ( )
22
21
{
23
- if (initialized)
24
- return;
25
-
26
- initialized = true;
27
- networkedAnimatorTarget = target as NetworkedAnimator;
22
+ if ( m_Initialized ) return ;
28
23
29
- animatorProperty = serializedObject.FindProperty("_animator");
30
- animatorLabel = new GUIContent("Animator", "The Animator component to synchronize.");
31
- }
24
+ m_Initialized = true ;
25
+ m_Target = target as NetworkedAnimator ;
32
26
33
- public override void OnInspectorGUI()
34
- {
35
- Init();
36
- serializedObject.Update();
37
- DrawControls();
38
- serializedObject.ApplyModifiedProperties();
27
+ m_AnimatorProperty = serializedObject . FindProperty ( "m_Animator" ) ;
28
+ m_AnimatorLabel = new GUIContent ( "Animator" , "The Animator component to synchronize." ) ;
39
29
}
40
30
41
- void DrawControls()
31
+ private void DrawControls ( )
42
32
{
43
33
EditorGUI . BeginChangeCheck ( ) ;
44
- EditorGUILayout.PropertyField(animatorProperty, animatorLabel);
34
+ EditorGUILayout . PropertyField ( m_AnimatorProperty , m_AnimatorLabel ) ;
35
+ if ( EditorGUI . EndChangeCheck ( ) ) m_Target . ResetTrackedParams ( ) ;
45
36
46
- if (EditorGUI.EndChangeCheck())
47
- networkedAnimatorTarget.ResetParameterOptions() ;
37
+ var animator = m_Target . animator ;
38
+ if ( ReferenceEquals ( animator , null ) ) return ;
48
39
49
- if (networkedAnimatorTarget.animator == null)
50
- return;
40
+ var animatorController = animator . runtimeAnimatorController as AnimatorController ;
41
+ if ( ReferenceEquals ( animatorController , null ) ) return ;
51
42
52
- var controller = networkedAnimatorTarget.animator.runtimeAnimatorController as AnimatorController ;
53
- if (controller != null)
43
+ EditorGUI . indentLevel += 1 ;
44
+ var showWarning = false ;
54
45
{
55
- var showWarning = false;
56
- EditorGUI.indentLevel += 1;
57
- int i = 0;
58
-
59
- foreach (var p in controller.parameters)
46
+ int paramIndex = 0 ;
47
+ foreach ( var animParam in animatorController . parameters )
60
48
{
61
- if (i >= 32)
49
+ if ( paramIndex >= 32 )
62
50
{
63
51
showWarning = true ;
64
52
break ;
65
53
}
66
54
67
- bool oldSend = networkedAnimatorTarget.GetParameterAutoSend(i );
68
- bool send = EditorGUILayout.Toggle(p .name, oldSend );
69
- if (send != oldSend )
55
+ bool wasTracking = m_Target . GetParamTracking ( paramIndex ) ;
56
+ bool isTracking = EditorGUILayout . Toggle ( animParam . name , wasTracking ) ;
57
+ if ( isTracking != wasTracking )
70
58
{
71
- networkedAnimatorTarget.SetParameterAutoSend(i, send );
59
+ m_Target . SetParamTracking ( paramIndex , isTracking ) ;
72
60
EditorUtility . SetDirty ( target ) ;
73
61
}
74
- i += 1;
75
- }
76
62
77
- if (showWarning)
78
- EditorGUILayout.HelpBox("NetworkAnimator can only select between the first 32 parameters in a mecanim controller", MessageType.Warning);
79
-
80
- EditorGUI.indentLevel -= 1;
63
+ paramIndex ++ ;
64
+ }
81
65
}
66
+ if ( showWarning ) EditorGUILayout . HelpBox ( "NetworkAnimator can only select between the first 32 parameters in a mecanim controller" , MessageType . Warning ) ;
67
+ EditorGUI . indentLevel -= 1 ;
68
+ }
82
69
83
- if (Application.isPlaying)
84
- {
85
- EditorGUILayout.Separator();
86
- if (networkedAnimatorTarget.param0 != "")
87
- EditorGUILayout.LabelField("Param 0", networkedAnimatorTarget.param0);
88
- if (networkedAnimatorTarget.param1 != "")
89
- EditorGUILayout.LabelField("Param 1", networkedAnimatorTarget.param1);
90
- if (networkedAnimatorTarget.param2 != "")
91
- EditorGUILayout.LabelField("Param 2", networkedAnimatorTarget.param2);
92
- if (networkedAnimatorTarget.param3 != "")
93
- EditorGUILayout.LabelField("Param 3", networkedAnimatorTarget.param3);
94
- if (networkedAnimatorTarget.param4 != "")
95
- EditorGUILayout.LabelField("Param 4", networkedAnimatorTarget.param4);
96
- }
70
+ public override void OnInspectorGUI ( )
71
+ {
72
+ Initialize ( ) ;
73
+ serializedObject . Update ( ) ;
74
+ DrawControls ( ) ;
75
+ serializedObject . ApplyModifiedProperties ( ) ;
97
76
}
98
- */
99
77
}
100
- }
78
+ }
0 commit comments