I don't really get what that code is supposed to do, but how I see it is;
Get a velocity value,
Check if character is out of mapbounds (you should really set him to the bounds and not just subtract, to get a perfect value),
Animate some stuff using a frametimer.
Regarding the view anyhow, just make it follow the player after you moved the player like you wanted that whole frame!
First, have the code where you move the player, then, have this code moving the view towards the player;
// Set speed of view
ViewVelocity = 100 * Frametime;
// Do this for every Axis
if(Player.X < View.X){
// Will the view move too far , causing unsmooth movement?
if(View.X - Player.X < ViewVelocity){
// Calibrate
View.X = Player.X;
}else{
// Else, subtract velocity from position.
View.X -= ViewVelocity;
}
}
Or just always set it to Player.X.
Regarding the animations; You should really use a sf::Clock for the animations, On fast computers you will have sonic animations, while on a 486 you will have stoner animations.