04.プレーヤーの操作でタンクから発射される弾丸の追加



プレーヤーの操作でタンクから発射される弾丸を追加します。

デモ

デモ(Google App Engine):https://online-battle-tanks.an.r.appspot.com/index04.html
デモ(Heroku):https://online-battle-tanks-22-cf6589d25849.herokuapp.com/index04.html

解説

プレーヤーの操作でタンクから発射される弾丸を追加するための、変更は以下です。

(サーバー側)弾丸クラスの追加

(サーバー側)タンククラスの変更

(サーバー側)ワールドクラスの変更

(サーバー側)ゲームクラスの変更

(サーバー側)ゲーム設定クラスの変更

(クライアント側)クライアント側開始処理の変更

(クライアント側)スクリーンクラス

(クライアント側)アセットクラスの変更

(クライアント側)共有設定クラスの変更

準備

03.を実施していない場合は、まず、03.を実施します。

サーバー側スクリプトファイル追加

弾丸クラスの追加

サーバー側スクリプトフォルダに弾丸クラス定義ファイルを追加します。
「libs」フォルダに、「Bullet.js」というスクリプトファイルを追加し、内容を以下のようにします。


コード解説

サーバー側スクリプトの変更

タンククラスの変更

「libs/Tank.js」 の内容を以下のようにします。


コード解説

ワールドクラスの変更

「libs/World.js」 の内容を以下のようにします。


コード解説

ゲームクラスの変更

「libs/Game.js」 の内容を以下のようにします。


コード解説

ゲーム設定クラスの変更

「libs/GameSettings.html」 の内容を以下のようにします。


コード解説

クライアント側スクリプトの変更

クライアント側開始処理の変更

「public/js/client.js」 の内容を以下のようにします。


コード解説

スクリーンクラスの変更

「public/js/Screen.js」 の内容を以下のようにします。


コード解説

アセットクラスの変更

「public/js/Assets.js」 の内容を以下のようにします。


コード解説

共有設定クラスの変更

「public/js/SharedSettings.js」 の内容を以下のようにします。


コード解説

動作確認

サーバーを起動します。
「OnlineBattleTanks」フォルダで、以下のコマンドを実行します。


ブラウザから、「localhost:1337」にアクセスします。

スペースキーで、タンクから弾丸が発射されます。

起動したサーバーは、「Ctrl + C」で終了します。

ダウンロード

サンプルプログラム

デモ

デモ(Google App Engine):https://online-battle-tanks.an.r.appspot.com/index04.html
デモ(Heroku):https://online-battle-tanks-22-cf6589d25849.herokuapp.com/index04.html

関連ページ

前項目:03.タンクの移動を妨げる壁の追加

次項目:05.弾丸を当てられたタンクはライフが減り、当てたタンクは得点を得る