問題タブ [impactjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1030 参照

javascript - ImpactJSでエンティティを別のエンティティにバウンスさせる

重力によって制御されるプレーヤーエンティティがあり、画面の下部に移動する別のエンティティがあります。

落下しているプレイヤーエンティティが一番下のエンティティに当たったとき、それを跳ね返らせたいです。

理想的には、プレーヤーエンティティの.bouncinessプロパティを使用したいと思います。

0 投票する
1 に答える
502 参照

javascript - 角度と速度に応じてエンティティを跳ね返らせる

私がやりたいことは、エンティティをパドルから跳ね返し、パドルの速度にも反応させることです。

古いブレイク アウト ゲームのように、パドルを速く動かすほど角度が鈍くなります。

私がこれまでに持っているのはこれです。

私の数学は以前のものではありません。

編集

Player は、size.x と size.y、pos.x と pos.y、velocity.x とvelocity.y などのプロパティを持つエンティティです。thisオブジェクトは同じプロパティを持ち、パドルです。

プレーヤーがボールです。

パドルを動かすと、y 次元の位置が設定され、x 方向に移動します。

0 投票する
1 に答える
869 参照

javascript - iPhone 5 とキャンバス幅全体

さて、私の iPhone 5 が届きました (私はオーストラリアに住んでいて、幸運にもアメリカより先に手に入れることができました)。私が最初にやりたかったことは、 Impact JSエンジンを使用して、2D プラットフォーマーの88ピクセルの余分な幅を最大限に活用することでした。 .

キャンバスの幅を実際に変更する方法がわかりません。

これは私が以前に使用していたものです:

ig.main('#canvas', MyGame, 60, 240, 160, 2);

ここで、 240 x 44ピクセルを増やすのは簡単だったと思います(横向きの両側に44ピクセルがあることを考えると)。

ig.main('#canvas', MyGame, 60, 284, 160, 2);

ただし、上記のコードを変更した後も、両側に44ピクセルの黒いバーが表示されます。

これを機能させるために、他の Impact エンジン ファイルを変更する必要があるかどうかはわかりません。私は今仕事をしていて、自分のゲームに実際に取り組むべきではないので、十分に遊んでいません。これを機能させるために変更しなければならない領域が他にもいくつかあると確信しています。

ところで、私はiOSImpactを使用しており、自分のゲームを iPhone 5 に直接デプロイしているため、そこにも更新が必要なファイルがある可能性があります。

また、モバイル デバイス間の検出に関して、次のプロパティに気付きました。ig.ua.iPhone5ここにもプロパティを投入する必要があります。

以下で console.log を実行したところ、次のように返されました。

ig.ua.viewport.width= 640

ig.ua.viewport.height= 960

ig.ua.screen.width= 1280

ig.ua.screen.height= 1920年

上記の結果、特に ig.ua.viewport.width が960を返すことについても少し混乱しています。1136を返す必要があると思いました。

0 投票する
2 に答える
778 参照

javascript - タッチ イベントで動作する 2 つのジョイスティックを同時に取得しようとしています

私はこれと2日間戦ってきました。私は ImpactJS と呼ばれる HTML5/JS ゲーム エンジンを使用しており、誰かがモバイル デバイス用のジョイスティック タッチ ゾーンを作成するための非常に便利なプラグインを作成しました。アイデアは、その領域に触れたときにジョイスティックがアクティブになる画面上のゾーンを指定することです。

私が使用しているプラ​​グインのコードはこちらです。「curPos」(ユーザーが現在タッチしている場所の x 座標と y 座標) を追加するように少し変更しましたが、それ以外のコードはすべて同じです。私はこの問題を自分で解決しようとしており、元の作成者に連絡していますが、現時点では連絡が取れないようで、どこにも行き着いていません.

ここで何か非常に悪いことをしていると確信していますが、タッチゾーンを単独で完全に機能させることはできますが、両方のジョイスティックを同時に使用しようとすると、部分的に互いに上書きされます.

ゲームの初期化時に、次のように 2 つのゾーンを指定しました。

this.joystick1 はプレイヤーの回転を担当します。this.joystick2 はプレイヤーの加速を担当します。私の Player エンティティには、2 つのジョイスティック用の次の移動コードがあります。繰り返しますが、これは、画面上に 1 本の指しかないか、使用しているジョイスティックが 1 つしかない場合に完全に機能します。

ただし、2 本目の指を画面に置くとすぐに、最初のジョイスティックが上書きされます。回転してから移動するか、移動してから回転すると問題なく動作しますが、両方を同時に行う必要があります。

関連するジョイスティック 1 またはジョイスティック 2 だけでなく、他のスティックを使用するためにタップすると、touchStart.x と touchStart.y が両方のジョイスティックに設定されているように見えることがわかりました。そのジョイスティックのタッチが指定されたゾーン内にある場合。これが部分的に問題の一因になっていると思います。この段階で、私はこれを理解しようと何時間も費やしましたが、始めたときと同じように迷っています。

誰かがこれらのジョイスティックを同時に使用して正しい方向に向けることができますか?

0 投票する
1 に答える
546 参照

impactjs - ImpactJS 衝突

レイヤーの衝突に「正しい」を使用することについていくつか質問があります。

  • コリジョン タイルを使用してポイント A からボットを作成することは可能ですか? マップごとに、A 地点から B 地点までのボットを作成したいと考えています。しかし、レベルを簡単に追加するために、開始点と終了点を統合したいと考えています。

  • ボット/プレイヤーのタイルを別のタイルに区別することはできますか? たとえば、ユーザーは自分のキャラクターを配置できますが、ボットは配置できません。

  • ボットの方向性を決定したいと思います。ボットの 4 つの動き (上、下、左、右) のうち、他の 3 つがブロックされたときに可能な唯一の方法を知ることができるかどうかはわかりません。ただし、この場合、各ソリューションの特性テストが表示されます (つまり、スイッチの位置)。正しい解決策を取る権利のために、ボットが行う前に最悪の移動をシミュレートする方法はありますか?

回答ありがとうございます

0 投票する
1 に答える
761 参照

javascript - jQuery.ajaxを使用してスクリプトをフェッチすると構文エラーがスローされます

私は次のコードを持っています:

jQuery.ajaxを使用してスクリプトをフェッチしようとしています。省略形の関数も試しました。また、Chrome開発者ツールの[ネットワーク]タブでスクリプトが表示されているにもかかわらず、パラメーターに$.getScript()aが含まSyntaxErrorれています。ステータスコード200で正常にフェッチされました。フェッチしているスクリプトは次のとおりです。errorThrownerror

そこに構文エラーが見当たらないので、ちょっと困惑しています。誰かが私が見たことがないか、これに遭遇したことがある場合は、助けていただければ幸いです。

0 投票する
1 に答える
6473 参照

html - ゲーム UI 用の Angular JS

現在、html5 と Impact JS ゲーム エンジンを使用して Web ゲームを構築しています。キャンバス/インパクト エンジンの上に html コンポーネントをオーバーレイしたいので、UI/依存性注入/データバインディングなどに役立つフレームワークを探していました。

そこで、angular js を見つけました。数日間の調査の後、開発者ガイドでこの小さなスニペットに遭遇するまで、このような素晴らしいフレームワークを見てとてもうれしく思いました。

「ゲームや GUI エディターは、非常に集中的でトリッキーな DOM 操作の例です。この種のアプリは CRUD アプリとは異なり、結果として Angular には適していません。これらの場合、jQuery などのベアメタルに近いものを使用します。の方が適しているかもしれません。」

この声明についての詳細を見つけることができないように見えることもあり、これはやや動揺しました. ゲームエンジンのレンダリング/ループにangularを使用しようとしている場合、おそらくうまくいかないでしょうが、単なるUIレイヤーとしては問題ないはずです?

この分野で経験のある人はいますか? Angular JS のようなものを使用しないと、はるかに時間がかかると思われるいくつかのトリッキーな UI を行う必要があります。

0 投票する
2 に答える
460 参照

html - HTML5 キャンバス上の 2 つのオブジェクト間のパスをアニメーション化する

エンティティがクリックされたときにエンティティを「連鎖」できる Impactjs を使用したゲームを開発しています。基本的に、これは 2 点間に線を引くだけで、ネオンの輝きの効果が得られます。ここまでは順調ですね。現在、「チェーン」の接続をアニメーション化するリクエストがあります - 火、輝きなど。エンティティは互いに任意の距離/角度である可能性があるため、これに対するソリューションを最適に実装する方法、つまり、アニメートできる 2 つのランダムな点の間などに対角線の画像を描画する方法に行き詰まっています。これを実現する方法についての私たちの提案は、非常に高く評価されます。

0 投票する
1 に答える
191 参照

impactjs - ユーザー入力のイニシャル-ImpactJS

したがって、私の最終状態では、ユーザーにイニシャルを入力してもらいたいと思います。すべてのアルファベット、文字とfont_drawを選択するためのトリガーを含む配列を設定しましたが、表示されませんが、関数が定義されていないというエラーが表示されます。何か案は?

0 投票する
1 に答える
217 参照

javascript - スプライト/エンティティが直線的に移動しないのはなぜですか?

私のエンティティは、マウスに向かって直線的に移動することになっています。近いですが、まだ完全ではありません。これが私が何を意味するかを示すための実用的なデモです。

そして、これがスクリーンショットです: エンティティが直線的に移動していません。 赤はマウスがたどった経路を表しています。ご覧のとおり、エンティティは同じパスをたどりません。

関連コード:

メソッドに何か問題があるのではないかとmove_to_coord思いますが、何時間も調整した後でも、それが何であるかはわかりません...

なぜ船は直進しないのですか?