update character movement