1. CodeGym でゲームを作成する方法
ご存知のとおり、CodeGym にはゲーム作成という新機能が導入されました。これらのタスクは通常のタスクよりも大幅に大きく、はるかに興味深いものです。書くだけでなく、テストするのにも興味深いものです。私たちが何を言っているのか理解していただけたでしょうか ;) ゲーム タスクのテストを開始したとき、CodeGym オフィスでの作業は文字通り数日間停止しました :) 各ゲーム タスクはプロジェクトであり、20 のサブタスクを持つ大きなタスクです。ゲームを書くときは、順番に完成させる必要があります。最後のサブタスクが完了すると、ゲームの準備が整います。CodeGym の非常にシンプルなゲーム エンジンを使用します。これを使用するのは、コンソールを使用するのと同じくらい難しくありません。このドキュメントには、ゲーム エンジンの説明とその使用方法の例が記載されています。2. ゲームエンジンの特徴
プレイフィールドはゲームエンジンによってセルに分割されます。最小サイズは 3x3 です。最大値は 100x100 です。各セルを特定の色でペイントしたり、テキストを書き込んだりできます。文字サイズや文字色もセルごとに設定できます。このエンジンを使用すると、マウスのクリックやキーの押下に対するイベント ハンドラーを作成できます。もう 1 つの興味深い点は、タイマーを操作できることです。詳細については、「タイマーの使用」セクションを参照してください。私たちの「明白な」ゲーム エンジンを使用すると、非常に興味深いゲームを作成できます。それは、自分の目で確認できるものです。してみたい?それから次の段落を読んでゲームを書き始めてください。3. ゲームにアクセスする
ゲームの作成を開始するには、CodeGym Web サイトの「ゲーム」セクションに移動し、好きなものを選択して、そのページに移動します。 「ソリューションの書き込み」ボタン があるので、それをクリックします。 Web IDE が開きます。そこで、ゲームの最初のサブタスクの作業を開始します。さらに、ゲームのサブタスクは、プラグインを通じて IntelliJ IDEA で利用できるようになります。 IntelliJ IDEA を使用している場合は、プラグインを更新する必要があります。プラグインの最新バージョンはここからダウンロードできます。プラグインを更新した後、タスクリストを開き、「Java Games Quest」を選択します。 次に、利用可能なサブタスクをクリックします。「Java ゲーム」モジュールがプロジェクトに表示され、サブタスクのエンジン ライブラリとコードが含まれているはずです。その後は、他のタスクを解決するのと同じです。Web IDE または IntelliJ IDEA のどちらか好きな方でゲームを作成できます。それでも、IntelliJ IDEA の方が便利です。そしてよりプロフェッショナルに。選択はあなた次第です。4. ゲームをアプリケーション カタログに公開する
ゲームの作成が完了したら、CodeGym の「ゲームとアプリケーション」カタログに公開できます。「公開」ボタンを押すだけで、30 分以内にゲームが「公開済みゲーム」セクションに追加されます。 ゲームの実装を友人や同僚と共有したい場合、これほど簡単なことはありません。公開されたゲームへのリンクを送信するだけで、プレイできるようになります。CodeGymへの登録は必要ありません。 作成者は、他の人が自分のゲームをプレイする回数を楽しむことができます。YouTubeの再生回数と同じです。大きければ大きいほどいい。5. ゲームのカスタマイズ
ゲームの作成が完了したら、それを変更できます。5x5 ボードで 2048 をプレイしたいですか? どうぞ。あなたはプログラマーで、すぐにキーボードを持っています。ゲームを好きなように変更してください。まったく新しいものを追加することもできます。たとえば、Snake では、新鮮なリンゴを食べると (リンゴが現れてから 5 秒以内に) ヘビの動きが遅くなる可能性があります。さらに、リンゴの色が赤から緑に変わったり、梨になったりする可能性があります。あるいは、あなたのヘビはリンゴよりウサギが大好きかもしれません... マインスイーパでは、プレイヤーに第二の人生を与えたり、半径数個のセル内のセルを「照らす」原子爆弾を与えたりすることもできます。ただし、ゲーム エンジンを使用せずにゲーム内のファイルやグラフィックを操作する場合、そのゲームはアプリケーション カタログに公開されない可能性があることに注意してください。すべてをブラウザで実行できるわけではありません。6. 役立つドキュメント
CodeGym ゲーム エンジン (ゲームの初期化、競技フィールドの作成、グラフィックスの操作)、イベント処理 (マウス、キーボード、タイマーの操作)、および更新または更新について理解するのに役立つ詳細なドキュメントをいくつか用意しました。ゲームを作成するときに見つかる基本的な Java 理論を学びます (CodeGym の 1 番目と 2 番目のクエスト)。7. よくある問題
私は Linux を持っており、OpenJDK を使用しています。ゲームを実行すると、コンパイラによってエラーが発生します。Error:(6, 8) java: cannot access javafx.application.Application
class file for javafx.application.Application not found
あなたは何をするべきか? 私たちのゲーム エンジンは JavaFX を使用しますが、OpenJDK にはデフォルトではインストールされません。これを修正する必要があります:
-
コマンド プロンプトで次のように入力します。
sudo apt-get install openjfx
-
その後、プロジェクト設定 (ALT+CTRL+SHIFT+S) -> SDK -> クラスパスに移動し、右側のプラス記号をクリックします。ファイル jfxrt.jar を選択します。これは、インストールされた JDK の <JDK_PATH>/jre/lib/ext/jfxrt.jar にあります。
-
「OK」をクリックします。
-
JavaFX Windows SDK をhttps://gluonhq.com/products/javafx/からダウンロードします。
-
ダウンロードしたアーカイブを任意のフォルダー (できればゲーム プロジェクトの lib フォルダー) に解凍します。
-
アイデアを開きます。
-
IDEA で、[ファイル] -> [プロジェクト構造] に移動します。
-
「ライブラリ」タブを選択し、「+」→「Java」をクリックします。
-
解凍したjavafx-sdkフォルダーへのパスを指定し、libフォルダーを選択します。
-
「OK」をクリックします。次に、新しいウィンドウで JavaFX を Games モジュールに追加します。
-
新しいライブラリが表示されるはずです。「適用」→「OK」をクリックします。
-
ゲームを正しく実行するには、[実行] -> [構成の編集] を開き、[VM オプション] フィールドに次のように入力します。
--module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base
-
次に、このタブにアプリケーションを追加する必要があります。これを行うには、[+] -> [アプリケーション] をクリックします。
-
-
ゲームモジュールを選択します
-
メインクラスへのパスを入力します (この場合は —
SnakeGame
) -
項目 9 と同じ VM オプションを入力します。
「適用」→「OK」をクリックします
-
-
ゲームを実行します。