class gamebutton extends Phaser.GameObjects.Image {
  constructor(scene, x, y, texture,diff,cate,num,catArr) {
    super(scene, x, y, texture);
    var that = this
    that.setInteractive({ useHandCursor: true })
      .on('pointerover', () => that.enterButtonHoverState() )
      .on('pointerout', () => that.enterButtonRestState() )
      .on('pointerdown', () => that.enterButtonActiveState() )
      .on('pointerup', () => {
        that.enterButtonHoverState();
        difficulty = diff
        category = cate;
        number = num
        name = catArr[category]+(difficulty + 1);
        scene.load.text(name, catArr[category]+(difficulty+1)+".txt"); //category name + 1-5
        scene.load.once('complete', () => {
          if(started == false){
          scene.scene.start("question", {
              "difficulty": difficulty
          },{
              "category": category
          },{
              "number": number
          },{
              "catArr": catArr
          },{
              "sectemp": se
          },{
              "mintemp": mi
          })
        }
        else if(started == true){
          scene.scene.start("question", {
              "difficulty": difficulty
          },{
              "category": category
          },{
              "number": number
          },{
              "sectemp": sec
          },{
              "mintemp": min
          },{
              "catArr": catArr
          })
        }
        })
        scene.load.start()
        
      });
  }

  enterButtonHoverState() {
    this.setTint(505050);
  }

  destroyButton(){
    this.destroy()
  }

  enterButtonRestState() {
    this.clearTint();
  }

  enterButtonActiveState() {
    this.setTint(252525);
  }
}