基本的なフロガーゲームを作ろうとしています。私がやろうとしているのは、カエルの画像のクラスを作成することです。それから、void draw();NullPointExceptionが発生し続けることを除いて、それを下に表示したいのですが、誰かが理由を理解するのを手伝ってくれますか?
これは、問題を理解するために私が遊んでいるコードです。
PImage img; // frog image
Frog froggy;
Car[] c1;
class Car {
  float xpos;
  int ypos;
  int sizel;
  int sizew;
  float yspeed;
  color c;
   Car(){
    xpos = 0;
    ypos = (int)random(120,480);
    sizel = (int)random(20,30);
    sizew = 15;
    yspeed = (float)random(1,3);
    c= color(random(255), random(255), random(255));
  }
  void carShape() {
    rectMode(CENTER);
    fill(c);
   rect(xpos,ypos,sizel,sizew);
   fill(0);
   rect(xpos-5, ypos-8, 8,5);
   rect(xpos+5, ypos-8, 8,5);
   rect(xpos-5, ypos+8, 8,5);
   rect(xpos+5, ypos+8, 8,5);
  }
 void moveCar () {
   xpos = xpos + yspeed;
    if (xpos > width) {
      xpos = 0;
      ypos = (int)random(120,480);
    } 
 } 
}
class Frog {
  int frogx;
  int frogy;
 Frog(){
    frogx = width/2-20;
    frogy = 527;
 }
  void drawFrog() {
    image(img,frogx,frogy);
 }
}
void setup() {
  size(800,600);
   img = loadImage("frog.png");
c1 = new Car[20];
  for(int i=0; i<20; i++) {
    c1[i] = new Car();
  }
}
  void draw() {
    background(100);
     froggy.drawFrog();
    for(int i=0; i<20; i++) {
    c1[i].carShape();
    c1[i].moveCar();
    }
  }
ここにエラーがあります
Exception in thread "Animation Thread" java.lang.NullPointerException
    at snowflakecarexample.draw(snowflakecarexample.java:97)
    at processing.core.PApplet.handleDraw(PApplet.java:2120)
    at processing.core.PGraphicsJava2D.requestDraw(PGraphicsJava2D.java:197)
    at processing.core.PApplet.run(PApplet.java:1998)
    at java.lang.Thread.run(Thread.java:680)