Sensitivity Slider Issue

I am trying to make a sensitivity slider so the player can adjust how quickly the character moves. I made a slider and speed variable (that is attached to my player script). The slider moves like it should and the handle value saves, but the speed remains the same. I cannot get the sensitivity to change. I know I am close, but I can’t figure out what I need to add or what I could be doing wrong.

Here’s my code:

Code 1:

using UnityEngine;
using System.Collections;
using UnityEngine .Audio ;
using UnityEngine .SceneManagement ;

public class Player : MonoBehaviour {

public float speed;

void Update(){

if (Input.touchCount > 0 && Input.GetTouch (0).phase == TouchPhase.Moved) {
			Vector2 touchDeltaPosition = Input.GetTouch (0).deltaPosition;
			transform.Translate (touchDeltaPosition.x * speed, touchDeltaPosition.y * speed, 0);
			//transform.Translate (touchDeltaPosition.x, touchDeltaPosition.y, 0);

			if (PausePanel.isPaused == true) {

				//Input.GetTouch (0).phase == TouchPhase.Canceled;
				transform.Translate (touchDeltaPosition.x * 0, touchDeltaPosition.y * 0, 0);

Code 2:

using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;
using UnityEngine.UI;

public class PausePanel : MonoBehaviour {

public Slider sensitivitySlider;

private Player instance;

void Start(){

instance.GetComponent <Player> ();


public void SensitivityControl (float sensitivityControl){

		instance.speed = sensitivityControl;
		PlayerPrefs.SetFloat ("CurSens", instance.speed);



You never set instance.

In your void Start(), you should have

instance.GetComponent <Player> ();


instance = GameObject.Find("Player").GetComponent<Player>();

and in the Fine(), youd change the word “Player” to whatever name your player is, in your hierarchy.

If you want to use the method you have now, youd have to make a public GameObject (for example purposes, lets assume you called it “playerReference”, then in Start() make it look like:

instance = playerReference.GetComponent<Player>();