ホームページ >バックエンド開発 >PHPチュートリアル >Xnova(ogame)のソースコード解釈によるPHP Webゲーム学習(5)_PHPチュートリアル

Xnova(ogame)のソースコード解釈によるPHP Webゲーム学習(5)_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:24:18762ブラウズ

6. ゲームメインインターフェース(frames.php)

frames.php ファイルの機能は、ゲームのメイン インターフェイスを表示することです。まず次のコードを見てみましょう。

リーリー
上記のコードは主にサーバーの URL を記述するためのもので、これは比較的単純です。以前の変数 $InLogin については、common.php を具体的に説明するときに取り上げます。

次に、前に説明した 2 つのファイルをインクルードし、最後に大きな HTML コードを出力します。 HTML コードでは 2 つのフレーム、つまり leftmenu.php とoverview.php が構築されていることに注意してください。これについては以下で分析します。

7. 左側のナビゲーションバー(leftmenu.php)

このファイルは実際には非常に単純です。上記の一般的なコードを除けば、ShowLeftMenu() 関数を宣言するだけであり、最後に display() を使用してページを出力します。 ShowLeftMenu() 関数は難しくありません。コードは、テンプレート ファイルを取得し、サーバーとログイン ユーザー レベルによって設定されたパラメータを取得して、ページを構築するだけです。注意すべきは、ユーザー レベル変数 $Level の値が 0 より大きい場合、管理者リンクが表示されることです。 $level の値で表されるレベルは、system.mo ファイルで定義されています。0 は一般プレイヤー、1 はゲーム運営者、2 はゲーム管理者、3 は管理者です。

8. 概要(overview.php)

このファイルは実際には、左側のナビゲーションバーの「概要」に対応するリンクであり、その主な機能は、現在の惑星の一般的な情報と、他の惑星の現在のステータスなどを含むユーザーの情報を表示することです。コードの量は多くなりますが、実際の構成は非常に明確なので、コードの最初の数行をスキップします。

リーリー
このコードの機能は、現在の惑星の月を取得し、月の使用スペースを確認および修正することです。 CheckPlanet UsedFields 関数は月で動作するだけでなく、惑星のチェックにも使用できます。コードを見ずに続けてみましょう。

次のステップは、この機能をパラメータで有効にする必要があります。このようなコードは今後は分析する予定がほとんどありません。ゲームプロセスを実行します。次はスイッチで、2 つの分岐があり、1 つは惑星の名前を変更する (惑星を放棄する) ためのもので、今は見ていません。もう 1 つのデフォルトの分岐は、次のとおり、ログイン後に実行されるプロセスです。

1. ユーザーのメッセージを確認し、新しいメッセージがある場合はメッセージリンクを表示します

2.エキスパートシステムの処理については、このロジックは自分で外したので、解析するつもりもありません

3. ユーザーがフリートアクティビティを持っているかどうかを確認し、持っている場合は、後で紹介する BuildFleetEventTable 関数を使用してフリートアクティビティ情報テーブルを構築します
4. ユーザーが他の惑星を持っている場合は、他の惑星のリストを作成し、各惑星の現在の活動を表示します
5.自分が発射したスターミサイルや他のプレイヤーからの攻撃のアクティビティ情報を表示
6.その他お知らせ、Google広告等の情報表示
7. 月がある場合は、月の情報を表示します
8. 以下は惑星名、惑星空間、ユーザーランキング、その他の情報です。かなり乱雑です

上記の処理のコードはすべてコメント化されていますので、理解するのは難しくありません。

リーリー

$planetrow は現在の惑星情報を保存します。ここで、b_building は構築キューです。上記のコードは、まず建物キューがあるかどうかを判断し、次に未完成の建物がある場合は、現在の時刻に基づいて建物情報を更新し、建物ユニットと建物の残り時間を表示します。キューの構築機能については後ほど詳しくご紹介しますが、今回は省略させていただきます。

前のブランチを簡単に紹介します。ブランチには 3 つのプロセスがあります。

1. 惑星の名前を変更します。コードは難しくないので、言うことはあまりありません

2. 地球への植民地化を諦め、ユーザーにパスワードを入力させるページを表示します
3. ユーザーがパスワードを入力すると、この惑星の情報とユーザーのデフォルトの惑星 ID が更新されます (月は判定されません)

この時点で、ユーザーがメイン ゲーム インターフェイスにログインするプロセスは明確になり、最終的にゲームに入ります。


http://www.bkjia.com/PHPjc/825513.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/825513.html技術記事 6. ゲームのメイン インターフェイス (frames.php) Frames.php ファイルの機能は、まず次のコードを見てください: $InLogin = false;$XNova_Host = $_SERVER['HTTP_HOST'];$XNova_Scri ...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。