From 5996ad2fd48536c9e38f7ca4329d3dd19364ee39 Mon Sep 17 00:00:00 2001 From: Mitchell Stokes Date: Tue, 2 Dec 2014 19:06:19 -0800 Subject: [PATCH] Fixes for T41168 after the completion of the action in "Flipper", layer is removed and the actuator mistakenly receive zero when trying to get the current frame Patch Author: avrprj Reviewers: moguri Projects: #game_logic Differential Revision: https://developer.blender.org/D906 --- source/gameengine/Converter/BL_ActionActuator.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/gameengine/Converter/BL_ActionActuator.cpp b/source/gameengine/Converter/BL_ActionActuator.cpp index 3dd013dfd63..f1a7287c0fe 100644 --- a/source/gameengine/Converter/BL_ActionActuator.cpp +++ b/source/gameengine/Converter/BL_ActionActuator.cpp @@ -320,8 +320,9 @@ bool BL_ActionActuator::Update(double curtime, bool frame) case ACT_ACTION_FLIPPER: // Convert into a play action and play back to the beginning + float temp = end; end = start; - start = obj->GetActionFrame(m_layer); + start = curr_action ? obj->GetActionFrame(m_layer) : temp; obj->PlayAction(m_action->id.name+2, start, end, m_layer, m_priority, 0, BL_Action::ACT_MODE_PLAY, m_layer_weight, m_ipo_flags, 1.f, blendmode); m_flag |= ACT_FLAG_PLAY_END;