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

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

WBOY
リリース: 2016-07-13 10:26:16
オリジナル
934 人が閲覧しました

17. リソースの更新 (PlanetResourceUpdate.php ページ)

重要な機能については以前に説明しました。この章では、PlanetResourceUpdate という重要な機能を分析します。その主な機能は、リソースを更新し、船と防衛ユニットを製造することです。コードは非常に詳しく説明されています。

1. システムによって設定された浮動値を含む、惑星の最大ストレージ容量を計算します

2. 専門家のボーナスを含む、地球の 3 つの資源の総生産量とエネルギー消費量を計算します
3. 惑星が月の場合、上記で計算された出力とエネルギーはそのまま 0 になります
4. 前回のリソース更新からの時間を計算します
5. エネルギー比による出力の変化を計算します。エネルギーが0のときは、基本出力のみです
。 6. 次に、休日かどうかを判断する必要があります。休日でない場合は、事前に準備したデータに基づいてその期間の生産量を計算し、既存のリソースに追加します
7. この期間内に完了する必要がある船舶と防御の数を取得します (関数 HandleElementBuildingQueue
) 8. SQL ステートメントを構築し、サーバーに送信すると、リソースの更新が完了します

この関数は、プレイヤーが各関数をクリックするたびに実行されます。プレイヤーは、あたかもリソースが事前に計算されているかのような感覚を与えます (笑)。ただし、一部のバージョンでは、プレイヤーが長期間ログインしないと、プレイヤーのリソースを更新できなくなります。このとき、特定の更新方法はスパイ検出を使用する必要があります。随時更新します。

以下はHandleElementBuildingQueue関数について説明します。ロジックは複雑ではなく、理解しやすいです。

ここで覚えておくべきこと:
b_hangar_id はビルドされる文字列、b_hangar は最後に維持されたビルド時間 です。

説明:

1.まず建設キューがあるかどうかを判断します

2. 経過時間を取得し、保持時間を追加します
3. 構築キューを解析し、後で使用できるように配列に保存します
4. 以下の foreach が 1 つずつ構築されます
5. 最後に、やり残したことがあれば、次回まで取っておき、戻ってきます

http://www.bkjia.com/PHPjc/824765.htmlwww.bkjia.com本当http://www.bkjia.com/PHPjc/824765.html技術記事 17. リソースの更新 (PlanetResourceUpdate.php ページ) 重要な関数についてはすでに説明しました。この章では、重要な関数 PlanetResourceUpdate を分析します。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート