2016-04-15 15 views
2

Ich bin verwirrt, wie man die folgende Bedingung überspringt, wenn 1) gedrückt gehalten wird, und dann 2) ein weiterer Tipp auf dem Bildschirm, um das Ziel zu lösen. Ich denke, der zweite Tipp wird der activePointer, so dass ich ziemlich verwirrt bin.Phaser Multitouch (auf Laptop Trackpad)

var holding_down = game.input.activePointer.isDown; 

if (holding_down && game.input.pointer2.isUp) { cue.aiming = true; } 

UPDATE: Bitte beachten Sie, dass für die Lösung akzeptiert, ich zwischen Desktop und den mobilen Einsatz zu unterscheiden war. pointer1 & pointer2 funktioniert gut auf dem Handy, aber auf dem Desktop musste ich Folgendes tun.

if (desktop) { 
    var holding_down = game.input.activePointer.leftButton.isDown; 
    var second_tap = spacebar.isDown; 
    } else { 
    var holding_down = game.input.pointer1.isDown; 
    var second_tap = game.input.pointer2.isDown; 
    } 

Beachten Sie auch Sie die desktop var nach intantating die game Objekt deklarieren müssen. Ich habe dann die Variable in der preload() Funktion gesetzt: desktop = game.device.desktop;, sonst gab es den falschen Wert. Vielen Dank!

+0

Ich habe versucht, Ihre Frage gestern und heute herauszufinden, aber ich bleibe verwirrt. Könnten Sie Ihre Frage neu formulieren oder sagen, welches Verhalten Sie möchten? –

+0

Vielen Dank für das suchen. Ich baue ein Spiel für mobile Geräte, aber ich benutze ein Mac-Trackpad, das nicht zu registrieren scheint, wenn man es gedrückt hält (Klick nach unten). Ist das klarer? – tidelake

Antwort

2

Sie haben Recht, dass der sekundäre Abgriff die activePointer wird. Laut der Dokumentation ist activePointer "das zuletzt aktive Zeigerobjekt".

Daher sollten Sie stattdessen Ihre Prüfungen gegen game.input.pointer1 und game.input.pointer2 vornehmen.

Also ersetzen activePointer in Ihrem Code mit pointer1 und das könnte Sie näher an das, was Sie gesucht haben.

+1

danke. Bitte sehen Sie meine Updates. – tidelake

+1

Danke für das Update und Info! Freut mich, dass es funktioniert hat. –

+0

Excellent vielen Dank das hat perfekt funktioniert. –