# [LibGDX] Button Klick Probleme



## GentleXD (10. Dez 2016)

Hallo liebe Java-Forum Nutzer,

ich habe eine kleine Notifikation für mein Spiel programmiert und möchte jetzt den Maus Klick darauf abfragen also nur einmal und dann soll ein boolean geändert werden.
Für den Input der Maus arbeite ich mit dem InputProcessor von LibGDX.

Hier der InputProcessor Code:


```
@Override
    public boolean touchDown(int screenX, int screenY, int pointer, int button) {
       
        switch(button) {
        case Buttons.LEFT:
            mouseClickedLeft = (!mouseClickedLeft ? true : false);
            break;
        case Buttons.RIGHT:
            mouseClickedRight = (!mouseClickedRight ? true : false);
            break;

        default:
            break;
        }
       
        return false;
       
    }
```

Hier der Notification Code: 


```
public boolean checkClick() {
       
        Vector2 mouse = Tools.getMouseHUDInput();
       
        if((mouse.x > recSprite.getX() && mouse.x < (recSprite.getX() + recSprite.getWidth())) && (mouse.y > recSprite.getY() && mouse.y < (recSprite.getY() + recSprite.getHeight())) && GameInputs.instance.isMouseClickedLeft()) {
           
            return true;
           
        } else {
           
            return false;
           
        }
       
    }

    public void update(float deltatime) {
       
        timer += deltatime;
       
        if(checkClick()) {
           
            if(GameScreen.renderText) {
               
                GameScreen.renderText = false;
               
            } else {
               
                GameScreen.renderText = true;
               
            }
           
        }
       
        if(timer >= (moveAnim.getDuration() + fadeAnim.getLifeTime() + rotAnim.getDuration() + rotAnim2.getDuration() + rotAnim3.getDuration() + rotAnim4.getDuration())) {
           
            remove = true;
           
        }
       
    }
```

Meine Frage: wenn ich nun einmal kurz auf die Notfication klicke wird das Event mehrere mahle ausgeführt wie bekomme ich es hin das der Maus klick nur einmal erkannt wird?


----------



## InfectedBytes (10. Dez 2016)

Du missbrauchst den InputProcessor ja ziemlich 
Anstatt in jedem update auf checkClick zu prüfen und je nachdem renderText auf true/false zu setzen, solltest du diese Logik direkt im Eventhandler machen.


----------

