X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fplayer.c;h=8b567cb72b2e3a11e2f9cf4766b1df1f21bcbcf9;hb=b9c029fdfbf54699ff0ebf2a64504ee40f6ec357;hp=44d583055fe3be963629413eccb90bbfddfe0048;hpb=f3d5732320e969d8eed50c8fa492dc96a3c13443;p=supertux.git diff --git a/src/player.c b/src/player.c index 44d583055..8b567cb72 100644 --- a/src/player.c +++ b/src/player.c @@ -124,6 +124,9 @@ void player_level_begin(player_type* pplayer) timer_init(&pplayer->invincible_timer,YES); timer_init(&pplayer->skidding_timer,YES); timer_init(&pplayer->safe_timer,YES); + timer_init(&pplayer->frame_timer,YES); + physic_init(&pplayer->hphysic); + physic_init(&pplayer->vphysic); } void player_action(player_type* pplayer) @@ -882,9 +885,17 @@ void player_input(player_type *pplayer) else { if(pplayer->base.xm > 0) - pplayer->base.xm = (int)(pplayer->base.xm - frame_ratio); + { + pplayer->base.xm = (int)(pplayer->base.xm - frame_ratio); + if(pplayer->base.xm < 0) + pplayer->base.xm = 0; + } else if(pplayer->base.xm < 0) - pplayer->base.xm = (int)(pplayer->base.xm + frame_ratio); + { + pplayer->base.xm = (int)(pplayer->base.xm + frame_ratio); + if(pplayer->base.xm > 0) + pplayer->base.xm = 0; + } } /* Jump/jumping? */