Fix initial animation sync.
UpdateAnimationID → PickAnimationID Reviewed by: @wraitii Differential Revision: https://code.wildfiregames.com/D3747 This was SVN commit r25205.
This commit is contained in:
parent
a7d777d69b
commit
48d6b84c62
@ -90,7 +90,6 @@ void CUnitAnimation::AddModel(CModel* model, const CObjectEntry* object)
|
|||||||
|
|
||||||
void CUnitAnimation::ReloadAnimation()
|
void CUnitAnimation::ReloadAnimation()
|
||||||
{
|
{
|
||||||
UpdateAnimationID();
|
|
||||||
ReloadUnit(m_Model, m_Object);
|
ReloadUnit(m_Model, m_Object);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -101,6 +100,7 @@ void CUnitAnimation::ReloadUnit(CModel* model, const CObjectEntry* object)
|
|||||||
|
|
||||||
m_AnimStates.clear();
|
m_AnimStates.clear();
|
||||||
m_AnimStatesAreStatic = true;
|
m_AnimStatesAreStatic = true;
|
||||||
|
PickAnimationID();
|
||||||
AddModel(m_Model, m_Object);
|
AddModel(m_Model, m_Object);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -237,7 +237,7 @@ void CUnitAnimation::Update(float time)
|
|||||||
// we're handling the root model
|
// we're handling the root model
|
||||||
// choose animations from the complete state
|
// choose animations from the complete state
|
||||||
CStr oldID = m_AnimationID;
|
CStr oldID = m_AnimationID;
|
||||||
UpdateAnimationID();
|
PickAnimationID();
|
||||||
anim = it->object->GetRandomAnimation(m_State, m_AnimationID);
|
anim = it->object->GetRandomAnimation(m_State, m_AnimationID);
|
||||||
if (oldID != m_AnimationID)
|
if (oldID != m_AnimationID)
|
||||||
for (SModelAnimState animState : m_AnimStates)
|
for (SModelAnimState animState : m_AnimStates)
|
||||||
@ -282,8 +282,7 @@ void CUnitAnimation::Update(float time)
|
|||||||
cmpSoundManager->PlaySoundGroup(m_ActionSound, m_Entity);
|
cmpSoundManager->PlaySoundGroup(m_ActionSound, m_Entity);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CUnitAnimation::UpdateAnimationID()
|
void CUnitAnimation::PickAnimationID()
|
||||||
{
|
{
|
||||||
CStr& ID = m_Object->GetRandomAnimation(m_State)->m_ID;
|
m_AnimationID = m_Object->GetRandomAnimation(m_State)->m_ID;
|
||||||
m_AnimationID = ID;
|
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 2020 Wildfire Games.
|
/* Copyright (C) 2021 Wildfire Games.
|
||||||
* This file is part of 0 A.D.
|
* This file is part of 0 A.D.
|
||||||
*
|
*
|
||||||
* 0 A.D. is free software: you can redistribute it and/or modify
|
* 0 A.D. is free software: you can redistribute it and/or modify
|
||||||
@ -103,7 +103,7 @@ private:
|
|||||||
/**
|
/**
|
||||||
* Picks a new animation ID from our current state
|
* Picks a new animation ID from our current state
|
||||||
*/
|
*/
|
||||||
void UpdateAnimationID();
|
void PickAnimationID();
|
||||||
|
|
||||||
struct SModelAnimState
|
struct SModelAnimState
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user