Flappy bird beginner

I’m a beginner in processing and I’m making the flappy bird but, I’m stacked on the bar section.
//Final_project

int x = 0;
int y = 0;
int value = 0;
Bar[] bars;
void setup()
{
size(500, 600);
background(200);
bars = new Bar[2];
for (int i=0; i<bars.length; i++)
bars[i] = new Bar(i);
}
void draw(){
background(200);
y--;
for (int i=0; i<bars.length; i++){
bars[i].show();
bars[i].move();
}

fill(255);
ellipse(300,200-y,10,10);
}
void keyPressed() {
  y++;
if (key == 'b') {
    y++;
    y++;
    y++;
    y++;
    y++;
    y++;
    y++;
    y++;
  } 
else {
   
  }
}

//bar

 public Bar(int q)
  {
    barStart = -300 + (int)random(4)*50;
    barHeight = random(4, 9)*30;

    x = barStart;
    y = barHeight;
    xSpeed = 5;
    i = q;
    if (i%2==0)
      top = true;
    else
      top = false;
  }

  public void show()
  {
    fill(0, 25*i, 0);
    if (top)
      rect(x-90*i, 0, 80,barHeight);
    else
      rect(x-90*i, 600, 80,-barHeight);
  }

  public void move()
  {
    if (x-90*i>1000) {//if you go off-screen
      x = -300 + (int)random(4)*50;//barStart
      y =  random(4, 9)*30;//barHeight
    }
    x = x + xSpeed;
  }
}

I want these bars to come from the right side to the left side and also, i want to make these bars’ height come randomly.
Could someone fix it for me plz?
(under the//bar zone is all about the bar codes.)

Start by posting your code properly. Edit your post, select your code, then hit the button that will format it like code. The button looks like this: </>

Thx for reminding me about that. Are these fine now?

Next, try copying the code in your post, pasting it in a new sketch, and running your own code. Does it run? Nope.

So your code has some problems. There is one too many }'s. The Bar variable type is not defined. Several variables are never defined.

Are you trying to make a “Bar” be a new type of object? It seems like it, since you’re trying to have an array of two of them. But you never define a Bar class anywhere.

Try addressing these problems yourself. Define a Bar class. Maybe it can make use of the extra }? Does it have a constructor? What variables need to be defined in the class? That is, what variables does a Bar need?

… Once you have a sketch that runs without errors, post the code again.

These r in two different tabs. one of them is in the tab named “Final_project”, and the another one is in the tab named “bar” which is from under the “//bar”
And when i run it on my processing, it runs.

You didn’t re-copy the code out of your post like I told you to, did you?

Here’s the code we’re working with. It all goes in one single tab.

int x = 0;
int y = 0;
int value = 0;
Bar[] bars;
void setup()
{
size(500, 600);
background(200);
bars = new Bar[2];
for (int i=0; i<bars.length; i++)
bars[i] = new Bar(i);
}
void draw(){
background(200);
y--;
for (int i=0; i<bars.length; i++){
bars[i].show();
bars[i].move();
}

fill(255);
ellipse(300,200-y,10,10);
}
void keyPressed() {
  y++;
if (key == 'b') {
    y++;
    y++;
    y++;
    y++;
    y++;
    y++;
    y++;
    y++;
  } 
else {
   
  }
}
//bar

 public Bar(int q)
  {
    barStart = -300 + (int)random(4)*50;
    barHeight = random(4, 9)*30;

    x = barStart;
    y = barHeight;
    xSpeed = 5;
    i = q;
    if (i%2==0)
      top = true;
    else
      top = false;
  }

  public void show()
  {
    fill(0, 25*i, 0);
    if (top)
      rect(x-90*i, 0, 80,barHeight);
    else
      rect(x-90*i, 600, 80,-barHeight);
  }

  public void move()
  {
    if (x-90*i>1000) {//if you go off-screen
      x = -300 + (int)random(4)*50;//barStart
      y =  random(4, 9)*30;//barHeight
    }
    x = x + xSpeed;
  }
}

Copy, paste, and run it. It has errors.

Here’s that same code run through the cleaners.

float x = 0;
float y = 0;
int value = 0;

Bar[] bars;

void setup() {
  size(500, 600);
  background(200);
  bars = new Bar[2];
  for (int i=0; i<bars.length; i++) {
    bars[i] = new Bar(i);
  }
}

void draw() {
  background(200);
  y--;
  for (int i=0; i<bars.length; i++) {
    bars[i].show();
    bars[i].move();
  }
  fill(255);
  ellipse(300, 200, 10, 10);
}

void keyPressed() {
  if (key == 'b') {
    y++;
  }
}

//bar
class Bar {
  float barStart;
  float barHeight;
  float xSpeed;
  boolean top;
  float iq;

  Bar(int q) {
    barStart = -300 + (int)random(4)*50;
    barHeight = random(4, 9)*30;
    x = barStart;
    y = barHeight;
    xSpeed = 5;
    if (q%2==0) {
      top = true;
    } else {
      top = false;
    }
    iq = q;
  }

  void show() {
    fill(0, 25*iq, 0);
    if (top) { 
      rect(x-90*iq, 0, 80, barHeight);
    } else {
      rect(x-90*iq, 600, 80, -barHeight);
    }
  }

  void move() {
    if (x-90*iq>1000) {
      x = -300 + (int)random(4)*50;
      y = random(4, 9)*30;
    }
    x = x + xSpeed;
  }
} // End class Bar

Again, this all goes in one tab. Notice the changes; the most interesting change is that the Bar() function is now the constructor for a real class for Bar objects.