Frage

Ich verwende Andengine Multi-Touch-Funktionen, um Multisprite für mein Spiel zu erstellen. Aber ich habe ein Problem:

  • Wenn ich das Sprite erstelle (im Szene -Touch -Down -Ereignis), nenne ich seine StartGrowSize -Methode.
  • Wenn der Benutzer aufhört, in einem Sprite zu berühren (seinen Finger loslassen), muss ich seine StoprowSize -Methode aufrufen.

Das Problem ist, dass ich nicht feststellen kann, wann der Benutzer ihren Finger freigibt und welcher Finger (der Finger, der dieses Sprite erzeugt).

Dies ist ein Code in meinem Spiel:

@Override
public boolean onSceneTouchEvent(Scene arg0, TouchEvent arg1) {
    if (arg1.isActionDown()) {
        //Create a balloon
        int balloonType = rndGenerator.nextInt(GlobalStatic.BalloonTypeTotal);
        currentBalloon = new clsBalloon(arg1.getX(), arg1.getY(), 
            ANDBallonTextureRegion[balloonType].clone(), balloonType, this);
        balloons.add(currentBalloon);

        scnGameScene.ettBalloon.attachChild(currentBalloon);
    } 
    return true;
}

Im Clsballon:

    @Override
public boolean onAreaTouched(TouchEvent pSceneTouchEvent,
        float pTouchAreaLocalX, float pTouchAreaLocalY) {
    if (pSceneTouchEvent.isActionUp()) {
        StopGrowSize();
        return true;
    }
    return super.onAreaTouched(pSceneTouchEvent, pTouchAreaLocalX, pTouchAreaLocalY);
}

Aber es hat nicht funktioniert. Bitte helfen Sie mir, danke.

War es hilfreich?

Lösung

OK, jetzt ist meine Lösung, dass er einen Vorsprit erstellt, der den Bildschirm füllt und seinen Touch-Handler registriert, die Größe und das neue Gesicht einstellt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top