Fixed index out of range by adding nullcheck to read/write params. Null cached params when ownership to prevent another out-of-range.
This commit is contained in:
parent
a6a0b136ff
commit
27e34f4179
@ -22,7 +22,6 @@ namespace MLAPI
|
|||||||
set
|
set
|
||||||
{
|
{
|
||||||
m_Animator = value;
|
m_Animator = value;
|
||||||
m_AnimatorParameters = m_Animator.parameters;
|
|
||||||
ResetParameterOptions();
|
ResetParameterOptions();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -75,6 +74,7 @@ namespace MLAPI
|
|||||||
{
|
{
|
||||||
Debug.Log("ResetParameterOptions");
|
Debug.Log("ResetParameterOptions");
|
||||||
m_ParameterSendBits = 0;
|
m_ParameterSendBits = 0;
|
||||||
|
m_AnimatorParameters = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
void FixedUpdate()
|
void FixedUpdate()
|
||||||
@ -248,6 +248,7 @@ namespace MLAPI
|
|||||||
|
|
||||||
void WriteParameters(BinaryWriter writer, bool autoSend)
|
void WriteParameters(BinaryWriter writer, bool autoSend)
|
||||||
{
|
{
|
||||||
|
if (m_AnimatorParameters == null) m_AnimatorParameters = m_Animator.parameters;
|
||||||
for (int i = 0; i < m_AnimatorParameters.Length; i++)
|
for (int i = 0; i < m_AnimatorParameters.Length; i++)
|
||||||
{
|
{
|
||||||
if (autoSend && !GetParameterAutoSend(i))
|
if (autoSend && !GetParameterAutoSend(i))
|
||||||
@ -278,7 +279,8 @@ namespace MLAPI
|
|||||||
}
|
}
|
||||||
|
|
||||||
void ReadParameters(BinaryReader reader, bool autoSend)
|
void ReadParameters(BinaryReader reader, bool autoSend)
|
||||||
{
|
{
|
||||||
|
if (m_AnimatorParameters == null) m_AnimatorParameters = m_Animator.parameters;
|
||||||
for (int i = 0; i < m_AnimatorParameters.Length; i++)
|
for (int i = 0; i < m_AnimatorParameters.Length; i++)
|
||||||
{
|
{
|
||||||
if (autoSend && !GetParameterAutoSend(i))
|
if (autoSend && !GetParameterAutoSend(i))
|
||||||
@ -337,5 +339,15 @@ namespace MLAPI
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public override void OnGainedOwnership()
|
||||||
|
{
|
||||||
|
ResetParameterOptions();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void OnLostOwnership()
|
||||||
|
{
|
||||||
|
ResetParameterOptions();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user