public void paint(Graphics g) {
    g.drawImage(this.wholeBackgroundImage, 0, 0, 600, 650, this);
    for (int i = 0; i < 100; i++)
    {
      if (this.m_map[i] == this.BLANK_STATE)
        g.clearRect(this.W * (i % this.GameSize) + this.W, this.W * (i / this.GameSize) + this.W, this.W, this.W);
      else
        g.drawImage(create_image(this.m_map[i], this.r_map[i], i), this.W * (i % this.GameSize) + this.W, 
          this.W * (i / this.GameSize) + this.W, this.W, this.W, this);
    }
  }