/// <summary>
        /// Change the Miner State.
        /// </summary>
        /// <param name="newState">Miner State to change to.</param>
        public void ChangeState(State<Miner> newState)
        {
            //exit current state and change to new state.
            currentState.Exit(this, Location);

            //change the state.
            Location = newState.GetLocation();
            currentState = newState;

            //enter new state.
            currentState.Enter(this);
        }