新ブログ「ごんフラブログG2」

WordPressで始めてみました

[海外]バンドルされた複数のゲーム・PCアプリが購入できるサイト
humblebundle.com


ごんたろうのぼやきトップ

2018年11月20日

【CocosCreator】タッチイベント(eventManager)が非推奨・次期廃止になって変更するべき点。

「eventManager.addlistener」が非推奨になっているので
onを使ってタッチイベントなんかを書かなければいけないのですが
this.node.on(c.Node.EventType.TOUCH_START,this.node)
のような書き方をする場合、
画面タッチではなく、画面上のあるオブジェクトをタッチしないと
いけなくなるような状態になることがあります。
これをゲーム画面全体・・・のような感じに変更したいと思います。

要は「画面全体」を表すオブジェクトを指定すれば
実現できます。
一番早いのが「Canvas」だと思います。
Canvasを指定して、[Canvas].onとかけば
画面全体のタッチに反応します。

もしくはthis.node.on〜と書いたスクリプトを
CanvasでaddComponent〜カスタムコンポーネント〜と
やればできますので、やり方が違うだけで
ほぼ挙動は同じになります。



var CanvasNode=cc.find('Canvas');
CanvasNode.on(cc.Node.EventType.TOUCH_START,function(event){
//処理、関数など
//
});


これでオブジェクトでなく、画面全体にタッチが
反応するようになります。
逆に、オブジェクトにタッチを反応させたい場合は
オブジェクト(ノード)にカスタムコンポーネントを
実装すれば可能です。
posted by ごんたろう(Gontaro-Soft) at 16:45 | Comment(0) | Cocos2d-JS/CocosCreator
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
ブログランキング・にほんブログ村へ
にほんブログ村

インターネット・コンピュータランキング