# I am getting an "expecting EOF found }" error, how do I fix this?

**URL:** https://discourse.processing.org/t/i-am-getting-an-expecting-eof-found-error-how-do-i-fix-this/18115
**Category:** Coding Questions
**Created:** [February 25, 2020, 6:34pm UTC](https://discourse.processing.org/t/i-am-getting-an-expecting-eof-found-error-how-do-i-fix-this/18115 "2020-02-25T18:34:43Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![The-Coder](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/the-coder/32/8127_2.png) [@The-Coder](https://discourse.processing.org/u/The-Coder)
#### Post date: [February 25, 2020, 6:34pm UTC](https://discourse.processing.org/t/i-am-getting-an-expecting-eof-found-error-how-do-i-fix-this/18115/1 "2020-02-25T18:34:43Z")

</div>

```auto
//Asteroid Dodge
void setup() {
  background(0, 0, 0);
  size(1000, 900);
  noLoop();
  print ("press the mouse to start the game use the arrow keys to move your ship");
}
void draw() {
  // controls game states
  float screenOne = 1;

  // controls shift from endgame to menu start
  float nextGamestate = 0;

  while (screenOne == 1) {
    fill(0, 255, 0);
    circle(700, 450, 30);
    circle(300, 450, 30);
    fill(0, 0, 0);
    textSize(15);
    text("asteroid dodge", 100, 450);
    text("play", 300, 450);
    text("credits", 700, 450);
    if ((dist(mouseX, mouseY, 500, 450)<30) && (mousePressed == true)); {
      screenOne = 2;
    }

    if ((dist(mouseX, mouseY, 700, 450)<30) && (mousePressed == true)); {
      screenOne = 0;
    }
  }
  if (screenOne == 0) {
    fill(0, 255, 0);
    circle(50, 50, 20);
    text("back", 50, 50);
    if ((dist(mouseX, mouseY, 50, 50)<20) && (mousePressed == true));   
    {
      screenOne = 1;
    }
    text(" Game Design - Riley Herchert /n Start Screen GUI design - Riley Herchert /n Sprites /n Thank you to Atari's asteroids for inspiration", 500, 450 );
  }
  if (screenOne == 2) {
    // x for player
    int x = 0 ;
    // y for player
    int y = 50;

    // stops the player score counter from looping.
    float ScoreRedoPrevention = 0;
    // circle radius is cr
    int CR = 50;
    // game end, triggered when you hit a meteor
    float GameOver = 0;

    //player score counter
    float playerScore = 0;

    // x’s for meteors
    float A= 900;
    float B= 1200;
    float C= 800;
    float D= 600;
    float E= 850;
    float F = 700;
    float G = 900;
    float H= 1000;
    float I= 1400;
    float J = 1100;
    float K = 800;
    float L = 700;

    // Y’s for meteors
    float AA = 500;
    float BB = 600;
    float CC = 930;
    float DD = 700;
    float EE = 100;
    float FF = 500;
    float GG = 600;
    float HH = 650;
    float II = 800;
    float JJ = 80;
    float KK = 400;
    float LL = 700;

    //score variable should go up by ten pts per second
    while (GameOver == 0) {
      playerScore = playerScore + 1;
    }
    while (screenOne == 2) {
      nextGamestate = nextGamestate+1;
    }
    if (nextGamestate >= 300) {
      screenOne = 1;
      nextGamestate = 0;
    }
    while (GameOver == 1) {
      playerScore = playerScore - 0;
      textSize(300);
      text("Game \n Over", 500, 450);
      A = A-0;
      B = B-0;
      C = C-0;
      D = D-0;
      if (ScoreRedoPrevention == 0) {
        print(playerScore);
      }
      ScoreRedoPrevention = 1;
    }

    //code to move meteors across screen and reset them when they hit the left edge
    // random creates a random x value so meteors don't reset to same position

    A= A- 4.5;
    if (A < 0) {
      A= 1000;
      for (int i = 50; i < 1000; i++) {
        AA = random(50, 1000);
      }
    }
    B =B - 4.5;
    if (B < 0) {
      B = 1000;
      for (int i = 0; i < 1000; i++) {
        BB = random(50, 1000);
      }
    }
    C=C- 4.5;
    if (C< 0) {
      C = 1000;
      for (int i = 0; i < 1000; i++) {
        CC = random(50, 1000);
      }
    }
    D= D - 4.5;
    if (D <0) {
      D = 1000;
      for (int i = 0; i < 1000; i++) {
        DD = random(50, 1000);
      }
    }
    E=E - 4.5;
    if (E <0) {
      E = 1000;
      for (int i = 0; i < 1000; i++) {
        EE = random(50, 1000);
      }
    }
    F = F- 4.5;
    if (F <0) {
      F = 1000;
      for (int i = 0; i < 1000; i++) {
        FF = random(50, 1000);
      }
    }
    G = G - 4.5;
    if (G <0) {
      G = 100;
      for (int i = 0; i < 1000; i++) {
        GG = random( 50, 1000);
      }
    }
    H =H - 4.5;
    if (H <0) {
      H = 1000;
      for (int i = 0; i < 1000; i++) {
        HH = random(50, 1000);
      }
    }
    I = I - 4.5;
    if (I <0) {
      I = 1000;
      for (int i = 0; i < 1000; i++) {

        I= random(50, 1000);
      }
    }
    J = J - 4.5;
    if (J <0) {
      J = 1000;
      for (int i = 0; i < 1000; i++) {
        JJ = random(50, 1000);
      }
    }
    K =K- 4.5;

    if (K < 0) {
      K = 1000;
      for (int i = 0; i < 1000; i++) {
        KK = random(50, 1000);
      }
    }
    L = L - 4.5;

    if (L < 0) {
      L= 100;
      for (int i = 0; i < 100; i++) {
        LL = random(50, 1000);
      }
    }

    //color setup
    stroke (255, 0, 0);
    fill(255, 0, 0);
    // player
    circle(x, y, 50);
    //color setup
    fill(150, 75, 0);
    stroke (0);

    //meteors
    circle(A, AA, CR);
    circle(B, BB, CR);
    circle(C, CC, CR);
    circle(D, DD, CR);
    circle(E, EE, CR);
    circle(F, FF, CR);
    circle(G, GG, CR);
    circle(H, HH, CR);
    circle(I, II, CR);
    circle(J, JJ, CR);
    circle(K, KK, CR);
    circle(L, LL, CR);

    // meteor crash detector finds distance between spaceship and meteor if less than ten game
    // over

    if (dist(X, Y, A, AA)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist(X, Y, B, BB)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist (X, Y, C, CC)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist (X, Y, D, DD)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist(X, Y, E, EE)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist (X, Y, F, FF)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist (X, Y, G, GG)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist(X, Y, H, HH)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist(X, Y, I, II )<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist (X, Y, J, JJ )<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist(X, Y, K, KK)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist(X, Y, L, LL)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }
  

  }
}
//player movement using arrow keys

void keyPressed() {
  if (key == CODED) {
    if (keyCode == UP) {
      y=y-17 ;
      if (y < 0) {
        y=0;
      }
    } else if (keyCode == DOWN) {
      y=y+17;
      if (y > 900) {
        y=900;
      }
    } else if (keyCode == RIGHT) {
      x=x+17 ;
      if (x > 1000) {
        x=1000;
      }
    } else if (keyCode == LEFT) {
      x=x-17;
      if (x < 0) {
        x=0;
      }
    }
  }
}

void mousePressed() {
  loop();
}
void mouseReleased() {
  loop();
}

}

```

---

<div class="post-metadata">

### Author: ![anon68884268](https://avatars.discourse-cdn.com/v4/letter/a/59ef9b/32.png) [@anon68884268](https://discourse.processing.org/u/anon68884268)
#### Post date: [February 25, 2020, 6:43pm UTC](https://discourse.processing.org/t/i-am-getting-an-expecting-eof-found-error-how-do-i-fix-this/18115/2 "2020-02-25T18:43:44Z")

</div>

Please edit & reformat your code using the \</\> icon in the editor.

The Processing editor has without any analysis by myself shown, in the bottom-left-hand corner “problems”, in your last line is a `}` too much.

And you have `x` and `y` declared local, in line 46 and 48.

---

<div class="post-metadata">

### Author: ![Chrisir](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/chrisir/32/45_2.png) [@Chrisir](https://discourse.processing.org/u/Chrisir)
#### Post date: [February 25, 2020, 7:40pm UTC](https://discourse.processing.org/t/i-am-getting-an-expecting-eof-found-error-how-do-i-fix-this/18115/3 "2020-02-25T19:40:41Z")

</div>

Just kill the very last line

---

<div class="post-metadata">

### Author: ![The-Coder](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/the-coder/32/8127_2.png) [@The-Coder](https://discourse.processing.org/u/The-Coder)
#### Post date: [February 26, 2020, 4:34pm UTC](https://discourse.processing.org/t/i-am-getting-an-expecting-eof-found-error-how-do-i-fix-this/18115/4 "2020-02-26T16:34:09Z")

</div>

Hey @Chrisr, I tried that and it didn’t work. Any other ideas?

---

<div class="post-metadata">

### Author: ![The-Coder](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/the-coder/32/8127_2.png) [@The-Coder](https://discourse.processing.org/u/The-Coder)
#### Post date: [February 26, 2020, 6:05pm UTC](https://discourse.processing.org/t/i-am-getting-an-expecting-eof-found-error-how-do-i-fix-this/18115/5 "2020-02-26T18:05:49Z")

</div>

I tried changing x and y to global variables and removing the } on the last line but my code does not run, it says that the variables x and y “do not exist”. How do I fix this?

---

<div class="post-metadata">

### Author: ![Chrisir](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/chrisir/32/45_2.png) [@Chrisir](https://discourse.processing.org/u/Chrisir)
#### Post date: [February 26, 2020, 6:32pm UTC](https://discourse.processing.org/t/i-am-getting-an-expecting-eof-found-error-how-do-i-fix-this/18115/6 "2020-02-26T18:32:59Z")

</div>

Hit ctrl-t in processing

And compare the indents

No  
}  
}  
should be directly after another with the same indent

---

<div class="post-metadata">

### Author: ![Chrisir](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/chrisir/32/45_2.png) [@Chrisir](https://discourse.processing.org/u/Chrisir)
#### Post date: [February 26, 2020, 8:30pm UTC](https://discourse.processing.org/t/i-am-getting-an-expecting-eof-found-error-how-do-i-fix-this/18115/7 "2020-02-26T20:30:47Z")

</div>

say float x,y ; before setup() to make it global

when you say int x; (with int!) inside a function you declare it again **locally** : you make a new variable with the same name which is overshadowing the old one. Bad.

```auto

//Asteroid Dodge

float x, y; 

void setup() {
  background(0, 0, 0);
  size(1000, 900);
  noLoop();
  print ("press the mouse to start the game use the arrow keys to move your ship");
}

void draw() {
  // controls game states
  float screenOne = 1;

  // controls shift from endgame to menu start
  float nextGamestate = 0;

  while (screenOne == 1) {
    fill(0, 255, 0);
    ellipse(700, 450, 30, 30);
    ellipse(300, 450, 30, 30);
    fill(0, 0, 0);
    textSize(15);
    text("asteroid dodge", 100, 450);
    text("play", 300, 450);
    text("credits", 700, 450);
    if ((dist(mouseX, mouseY, 500, 450)<30) && (mousePressed == true)); 
    {
      screenOne = 2;
    }

    if ((dist(mouseX, mouseY, 700, 450)<30) && (mousePressed == true));   
    {
      screenOne = 0;
    }
  }
  if (screenOne == 0) {
    fill(0, 255, 0);
    ellipse(50, 50, 20, 20);
    text("back", 50, 50);
    if ((dist(mouseX, mouseY, 50, 50)<20) && (mousePressed == true));   
    {
      screenOne = 1;
    }
    text(" Game Design - Riley Herchert \n Start Screen GUI design - Riley Herchert \n Sprites \n Thank you to Atari's asteroids for inspiration", 500, 450 );
  }
  if (screenOne == 2) {
    // x for player
    x = 0 ;
    // y for player
    y = 50;

    // stops the player score counter from looping.
    float ScoreRedoPrevention = 0;
    // ellipse radius is cr
    int CR = 50;
    // game end, triggered when you hit a meteor
    float GameOver = 0;

    //player score counter
    float playerScore = 0;

    // x’s for meteors
    float A= 900;
    float B= 1200;
    float C= 800;
    float D= 600;
    float E= 850;
    float F = 700;
    float G = 900;
    float H= 1000;
    float I= 1400;
    float J = 1100;
    float K = 800;
    float L = 700;

    // Y’s for meteors
    float AA = 500;
    float BB = 600;
    float CC = 930;
    float DD = 700;
    float EE = 100;
    float FF = 500;
    float GG = 600;
    float HH = 650;
    float II = 800;
    float JJ = 80;
    float KK = 400;
    float LL = 700;

    //score variable should go up by ten pts per second
    while (GameOver == 0) {
      playerScore = playerScore + 1;
    }
    while (screenOne == 2) {
      nextGamestate = nextGamestate+1;
    }
    if (nextGamestate >= 300) {
      screenOne = 1;
      nextGamestate = 0;
    }
    while (GameOver == 1) {
      playerScore = playerScore - 0;
      textSize(300);
      text("Game \n Over", 500, 450);
      A = A-0;
      B = B-0;
      C = C-0;
      D = D-0;
      if (ScoreRedoPrevention == 0) {
        print(playerScore);
      }
      ScoreRedoPrevention = 1;
    }

    //code to move meteors across screen and reset them when they hit the left edge
    // random creates a random x value so meteors don't reset to same position

    A= A- 4.5;
    if (A < 0) {
      A= 1000;
      for (int i = 50; i < 1000; i++) {
        AA = random(50, 1000);
      }
    }
    B =B - 4.5;
    if (B < 0) {
      B = 1000;
      for (int i = 0; i < 1000; i++) {
        BB = random(50, 1000);
      }
    }
    C=C- 4.5;
    if (C< 0) {
      C = 1000;
      for (int i = 0; i < 1000; i++) {
        CC = random(50, 1000);
      }
    }
    D= D - 4.5;
    if (D <0) {
      D = 1000;
      for (int i = 0; i < 1000; i++) {
        DD = random(50, 1000);
      }
    }
    E=E - 4.5;
    if (E <0) {
      E = 1000;
      for (int i = 0; i < 1000; i++) {
        EE = random(50, 1000);
      }
    }
    F = F- 4.5;
    if (F <0) {
      F = 1000;
      for (int i = 0; i < 1000; i++) {
        FF = random(50, 1000);
      }
    }
    G = G - 4.5;
    if (G <0) {
      G = 100;
      for (int i = 0; i < 1000; i++) {
        GG = random( 50, 1000);
      }
    }
    H =H - 4.5;
    if (H <0) {
      H = 1000;
      for (int i = 0; i < 1000; i++) {
        HH = random(50, 1000);
      }
    }
    I = I - 4.5;
    if (I <0) {
      I = 1000;
      for (int i = 0; i < 1000; i++) {

        I= random(50, 1000);
      }
    }
    J = J - 4.5;
    if (J <0) {
      J = 1000;
      for (int i = 0; i < 1000; i++) {
        JJ = random(50, 1000);
      }
    }
    K =K- 4.5;

    if (K < 0) {
      K = 1000;
      for (int i = 0; i < 1000; i++) {
        KK = random(50, 1000);
      }
    }
    L = L - 4.5;

    if (L < 0) {
      L= 100;
      for (int i = 0; i < 100; i++) {
        LL = random(50, 1000);
      }
    }

    //color setup
    stroke (255, 0, 0);
    fill(255, 0, 0);
    // player
    ellipse(x, y, 50, 50);
    //color setup
    fill(150, 75, 0);
    stroke (0);

    //meteors
    ellipse(A, AA, CR, CR);
    ellipse(B, BB, CR, CR);
    ellipse(C, CC, CR, CR);
    ellipse(D, DD, CR, CR);
    ellipse(E, EE, CR, CR);
    ellipse(F, FF, CR, CR);
    ellipse(G, GG, CR, CR);
    ellipse(H, HH, CR, CR);
    ellipse(I, II, CR, CR);
    ellipse(J, JJ, CR, CR);
    ellipse(K, KK, CR, CR);
    ellipse(L, LL, CR, CR);

    // meteor crash detector finds distance between spaceship and meteor if less than ten game
    // over

    if (dist(X, Y, A, AA)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist(X, Y, B, BB)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist (X, Y, C, CC)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist (X, Y, D, DD)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist(X, Y, E, EE)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist (X, Y, F, FF)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist (X, Y, G, GG)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist(X, Y, H, HH)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist(X, Y, I, II )<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist (X, Y, J, JJ )<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist(X, Y, K, KK)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }

    if (dist(X, Y, L, LL)<CR-10) {
      print ("gameOver");
      GameOver = 1;
    }
  }
}
//player movement using arrow keys

void keyPressed() {
  if (key == CODED) {
    if (keyCode == UP) {
      y=y-17 ;
      if (y < 0) {
        y=0;
      }
    } else if (keyCode == DOWN) {
      y=y+17;
      if (y > 900) {
        y=900;
      }
    } else if (keyCode == RIGHT) {
      x=x+17 ;
      if (x > 1000) {
        x=1000;
      }
    } else if (keyCode == LEFT) {
      x=x-17;
      if (x < 0) {
        x=0;
      }
    }
  }
}

void mousePressed() {
  loop();
}
void mouseReleased() {
  loop();
}

```
