diff options
author | Paul Gilbert | 2012-05-12 20:49:36 +1000 |
---|---|---|
committer | Paul Gilbert | 2012-05-12 20:49:36 +1000 |
commit | 109e5f8226c1db18926e307d4ecb9c3c83fdd7bc (patch) | |
tree | 97738d25cca467bc8a9c8b673228bbe3da87b3d3 /engines/tony/tonychar.cpp | |
parent | 65ec900cebbfdbf453cdcdb8ec24f86bd797fdcd (diff) | |
download | scummvm-rg350-109e5f8226c1db18926e307d4ecb9c3c83fdd7bc.tar.gz scummvm-rg350-109e5f8226c1db18926e307d4ecb9c3c83fdd7bc.tar.bz2 scummvm-rg350-109e5f8226c1db18926e307d4ecb9c3c83fdd7bc.zip |
TONY: Conversion of more methods to coroutines
Diffstat (limited to 'engines/tony/tonychar.cpp')
-rw-r--r-- | engines/tony/tonychar.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/engines/tony/tonychar.cpp b/engines/tony/tonychar.cpp index 982949870c..0e59779229 100644 --- a/engines/tony/tonychar.cpp +++ b/engines/tony/tonychar.cpp @@ -187,7 +187,12 @@ void RMTony::Hide(bool bShowOmbra) { } -void RMTony::Draw(RMGfxTargetBuffer &bigBuf, RMGfxPrimitive *prim) { +void RMTony::Draw(CORO_PARAM, RMGfxTargetBuffer &bigBuf, RMGfxPrimitive *prim) { + CORO_BEGIN_CONTEXT; + CORO_END_CONTEXT(_ctx); + + CORO_BEGIN_CODE(_ctx); + // Richiama il Draw() della classe madre se tony è visibile if (m_bShow && bDrawNow) { if (m_bCorpoDavanti) { @@ -195,7 +200,7 @@ void RMTony::Draw(RMGfxTargetBuffer &bigBuf, RMGfxPrimitive *prim) { prim->Dst().Offset(-44, -134); if (m_bPastorella) prim->Dst().Offset(1, 4); - RMCharacter::Draw(bigBuf, prim); + CORO_INVOKE_2(RMCharacter::Draw, bigBuf, prim); } if (m_bIsTalking || m_bIsStaticTalk) { @@ -205,7 +210,7 @@ void RMTony::Draw(RMGfxTargetBuffer &bigBuf, RMGfxPrimitive *prim) { prim->Dst().Offset(m_pos); prim->Dst().Offset(-44, -134); prim->Dst() += m_nBodyOffset; - m_body.Draw(bigBuf, prim); + CORO_INVOKE_2(m_body.Draw, bigBuf, prim); } if (!m_bCorpoDavanti) { @@ -213,9 +218,11 @@ void RMTony::Draw(RMGfxTargetBuffer &bigBuf, RMGfxPrimitive *prim) { prim->Dst().Offset(-44, -134); if (m_bPastorella) prim->Dst().Offset(0, 3); - RMCharacter::Draw(bigBuf, prim); + CORO_INVOKE_2(RMCharacter::Draw, bigBuf, prim); } } + + CORO_END_CODE; } void RMTony::MoveAndDoAction(CORO_PARAM, RMPoint dst, RMItem *item, int nAction, int nActionParm) { |