Motor with hall effect sensor headaches...

Point taken Paul, sound advice and I came up with a little example which was this:

const int hallPin = 8;     // the number of the hall effect sensor pin
int ledPin =  13;     // the number of the LED pin
// variables will change:
int hallState = 1;          // variable for reading the hall sensor status

void setup() {
  // initialize the LED pin as an output:
  pinMode(ledPin, OUTPUT);
  // initialize the hall effect sensor pin as an input:
  pinMode(hallPin, INPUT);
}

void loop() {
  // read the state of the hall effect sensor:

  hallState = digitalRead(hallPin);

  if (hallState == HIGH)

  {
    digitalWrite(ledPin, HIGH);
  }

  if (hallState == LOW) {

    digitalWrite(ledPin, LOW);
  }


}

This worked well, and sure enough the magnet turns the LED off as it should. I've applied that now to my new code but unfortunately I'm still getting the same issue. Any ideas as to where I should be looking?

const int inPin = 2; // the number of the input pin for the button switch
const int outPin1 = 10; // the number of the output1 pin
const int outPin2 = 11; // the number of the output2 pin
const int hallPin = 8; // Hall sensor pin 3rd leg on the right to Arduino 8

int enA = 12;
int state1; // the current state of the output1 pin
int reading; // the current reading from the input pin
int previous = LOW; // the previous reading from the input pin
long time = 0; // the last time the output pin was toggled
long debounce = 200; // the debounce time, increase if the output flickers
int pressCount = 1;
int hallState = 0;

void setup()
{
  pinMode(inPin, INPUT_PULLUP);
  pinMode(outPin1, OUTPUT);
  pinMode(outPin2, OUTPUT);
  pinMode(enA, OUTPUT);
  pinMode(hallPin, INPUT);

}
void loop()
{
  reading = digitalRead(inPin);
  if (reading == HIGH && previous == LOW && millis() - time > debounce)
  {
    state1 = !state1; // Toggle the state
    pressCount++;
    time = millis();

    switch (pressCount % 2)
    {
      case 0:

        digitalWrite(outPin1, HIGH);   // Turn on motor direction 1
        digitalWrite(outPin2, LOW);    //
        analogWrite(enA, 10);          // Sets motor speed (value between 0-255)
        delay (1000);                  // Runs motor for 1 second
        digitalWrite(outPin1, LOW);    // Turn off motor direction 1
        digitalWrite(outPin2, LOW);

        break;


      case 1:


        hallState = digitalRead(hallPin);

        if (hallState == HIGH) // No Magnet

        {

          digitalWrite(outPin1, LOW);    // Run motor direction 2
          digitalWrite(outPin2, HIGH);
          analogWrite(enA, 10);
        }

        if (hallState == LOW) {

          digitalWrite(outPin1, LOW);
          digitalWrite(outPin2, LOW);

        }

        break;

    }
  }
  previous = reading;
}