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(); };
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。