Phaser: Attacher un Événement Tactile sur Sprite
Je suis nouveau pour phaser et maintenant Im en utilisant phaser v. 2.0.7. Ce que je veux faire est de faire un sprite gérer un événement tactile.
Comment puis-je joindre onTap
à un objet sprite?
Je sais que l'événement tactile serait possible avec sprite_obj.events.onInputDown
, mais encore j'ai utilisé onInputUp
soit parce que lorsqu'il y a un popup/modal(veille) activé après la onInputDown
, vous devez cliquer deux fois après que faire de l'écouteur d'événement de travailler à nouveau. (Mon personal solution de contournement pour ce problème est l'utilisation de inInputUp.)
Une autre chose que j'ai tenté d'ajouter onTap
sur ma toile objet, canvas.input.onTap.add
qui je pense ne pas ajustement pour atteindre mon objectif. Oui, il peut maintenant gérer les événements tactiles, mais le problème c'est que je veux limiter le contact de l'événement seulement pour l'image du sprite sur la toile et non pas l'ensemble de la toile.
Quelqu'un peut m'aider. Merci.
Vous devez vous connecter pour publier un commentaire.
Vous devez d'abord activer le Sprite de l'entrée:
sprite.inputEnabled = true;
Vous pouvez ensuite écouter l'un des événements les Sprite distribue quand il est impliqué dans l'entrée, telles que:
Le rappel est envoyé 2 paramètres: le Sprite et le Pointeur qui a provoqué l'événement d'entrée (comme dans un multi-système d'entrée de cette fonction peut varier souvent)
Le Pointeur a beaucoup de propriétés, vous pouvez accéder, tels que le temps, il a été placé vers le bas, le mouvement de l'histoire, etc. Voir la Pointeur docs pour plus de détails.
Le Sprite a beaucoup d'événements, mais ce sont les commentaires de ceux (c'est levé direct à partir de l'imprimante Phaser code source):
game.canvas.focus()
après la fermeture de votre modal pour définir le focus sur le jeu à nouveau.Avez-vous essayé? c'.d'entrée.onDown.ajouter(obj.méthode,obj);