🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
enchant.js

enchant.jsとは、アプリやゲームを簡単に開発できるオープンソースのHTML5+JavaScriptベースのフレームワークです。プログラミング学習にも用いられ、多くの素材やプラグインが用意されています。

Q&A

1回答

1357閲覧

enchant.js ジャンプ

退会済みユーザー

退会済みユーザー

総合スコア0

enchant.js

enchant.jsとは、アプリやゲームを簡単に開発できるオープンソースのHTML5+JavaScriptベースのフレームワークです。プログラミング学習にも用いられ、多くの素材やプラグインが用意されています。

0グッド

0クリップ

投稿2019/11/29 03:15

enchant.jsでhttps://teratail.com/questions/75272
のベストアンサーになっている方のコードを使わせてもらって2段ジャンプをやろうとしてます!

下のように書き換えたのですが、1回タップで2回飛んでしまいます。

なにか間違っているところがあれば教えていただきたいです!

enchant(); window.onload = function(){ var game = new Core(320, 320); game.fps = 15; game.preload("chara1.png"); game.onload = function(){ bear = new Sprite(32, 32); bear.image = game.assets["chara1.png"]; bear.vy = 0; bear.x = 80; // 画面やや左側に配置 bear.y = baseLine; // くまの下端を地平線の高さと合わせる(218) bear.frame = 5; game.rootScene.addChild(bear); //地上かどうか判断する基準値 var baseLine = 80; //重力カウンター var gravity =0; //重力加速度 var Gspeed = 0.5; //ジャンプの最大数 var jumpLimit = 2; //ジャンプをカウントするための変数 var jumps = 0; //↓の中は毎フレーム発動します。 bear.addEventListener("enterframe", function(){ //くまちゃんが空中にいるならッ… if(this.y < baseLine){ //重力が加速しッ… gravity = gravity +Gspeed; //その重力分くまちゃんはッ…下に引っ張られるッ! this.y += gravity; //↓は熊五郎が地上にいる場合 }else{ //重力初期化 gravity = 0; //ジャンプ回数初期化 jumps = 0; //くまちゃんを地上に合わせる this.y = baseLine; } ~~});~~ ~~bear.addEventListener("touchstart", function(){~~ **if(game.input.up){** **console.log(“up”)** //ジャンプ回数がリミットより少ないなら if(jumps < jumpLimit){ //ジャンプボタンを押すたびに重力を一度0にする gravity = 0; //ぴょーん bear.tl.moveBy(0, -45, 8, enchant.Easing.CUBIC_EASEOUT); //ジャンプ回数をカウント jumps = jumps+1; } }); }; game.start(); };

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

PCで検証する限り特に問題なく2回ジャンプをしました。
codeのなかに"~~"がたくさん入っていますが取り除いてくださいね。

bear.addEventListener("touchstart", function(){ //ジャンプ回数がリミットより少ないなら if(jumps < jumpLimit){ //ジャンプボタンを押すたびに重力を一度0にする gravity = 0; //ぴょーん bear.tl.moveBy(0, -45, 8, enchant.Easing.CUBIC_EASEOUT); //ジャンプ回数をカウント jumps = jumps+1; } });

投稿2021/06/04 17:20

gas.engine

総合スコア608

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問