修复上次更新后动画不同步的bug

This commit is contained in:
Nomango 2017-10-10 08:52:01 +08:00
parent f2923e95f6
commit 9b4100d414
5 changed files with 9 additions and 4 deletions

View File

@ -18,6 +18,7 @@ ActionFrames::~ActionFrames()
{
for (auto frame : m_vFrames)
{
frame->autoRelease();
frame->release();
}
}
@ -42,6 +43,7 @@ void ActionFrames::_exec(steady_clock::time_point nNow)
if (m_nFrameIndex == m_vFrames.size())
{
this->stop();
break;
}
}
}

View File

@ -19,7 +19,7 @@ void ActionMoveBy::_init()
void ActionMoveBy::_exec(steady_clock::time_point nNow)
{
if (Animation::_isDelayEnough(nNow))
while (Animation::_isDelayEnough(nNow))
{
// 计算移动位置
float scale = float(m_nDuration) / m_nTotalDuration;
@ -30,6 +30,7 @@ void ActionMoveBy::_exec(steady_clock::time_point nNow)
if (_isEnd())
{
this->stop();
break;
}
}
}

View File

@ -19,7 +19,7 @@ void ActionOpacityBy::_init()
void ActionOpacityBy::_exec(steady_clock::time_point nNow)
{
if (Animation::_isDelayEnough(nNow))
while (Animation::_isDelayEnough(nNow))
{
// 计算移动位置
float scale = float(m_nDuration) / m_nTotalDuration;
@ -29,6 +29,7 @@ void ActionOpacityBy::_exec(steady_clock::time_point nNow)
if (_isEnd())
{
this->stop();
break;
}
}
}

View File

@ -21,7 +21,7 @@ void ActionScaleBy::_init()
void ActionScaleBy::_exec(steady_clock::time_point nNow)
{
if (Animation::_isDelayEnough(nNow))
while (Animation::_isDelayEnough(nNow))
{
// 计算移动位置
float scale = float(m_nDuration) / m_nTotalDuration;
@ -31,6 +31,7 @@ void ActionScaleBy::_exec(steady_clock::time_point nNow)
if (_isEnd())
{
this->stop();
break;
}
}
}

View File

@ -287,7 +287,7 @@
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<SDLCheck>true</SDLCheck>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<DebugInformationFormat>None</DebugInformationFormat>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>