From 30f18026b46d7b0e8aba7fb6e9a73c778c79fc75 Mon Sep 17 00:00:00 2001 From: Paul Date: Fri, 2 Mar 2001 21:05:35 +0000 Subject: [PATCH] --- source/player/psrun.cpp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/source/player/psrun.cpp b/source/player/psrun.cpp index 5186f75c2..727e72cd7 100644 --- a/source/player/psrun.cpp +++ b/source/player/psrun.cpp @@ -92,20 +92,21 @@ void CPlayerStateRun::enter(CPlayer *_player) void CPlayerStateRun::think(CPlayer *_player) { int controlDown,controlHeld; + int switchedState=false; controlDown=getPadInputDown(_player); controlHeld=getPadInputHeld(_player); if(controlDown&PI_JUMP) { - setState(_player,STATE_JUMP); + switchedState=setState(_player,STATE_JUMP); } if(controlHeld&PI_DOWN) { - setState(_player,STATE_DUCK); + switchedState=setState(_player,STATE_DUCK); } if(controlDown&PI_ACTION) { - setState(_player,STATE_RUNATTACK); + switchedState=setState(_player,STATE_RUNATTACK); } if(controlHeld&PI_LEFT) @@ -120,10 +121,13 @@ void CPlayerStateRun::think(CPlayer *_player) { if(getMoveVelocity(_player).vx==0) { - setState(_player,STATE_IDLE); - if(m_numberOfTimeAnimHasLooped>=4) + if(!switchedState) { - setAnimNo(_player,ANIM_SPONGEBOB_RUNSTOP); + setState(_player,STATE_IDLE); + if(m_numberOfTimeAnimHasLooped>=4) + { + setAnimNo(_player,ANIM_SPONGEBOB_RUNSTOP); + } } } else