1 台のマシンがローカル サーバーを実行する必要がある Web アプリ。その後、プレイヤーは登録、ログインし、メイン ゲームに接続できるようになります。その後、プレイヤーはメイン デバイス (すべてのユーザーにインデックス ページを表示するデバイス) と自分のデバイス (できればモバイル デバイス) で自分の情報を確認し、互いに入札することができます。
以下を使用してテストされました:
PHP 7.0.8
とPHPUnit 5.7.4
Composer 1.00-beta2
MySQL 5.7.4
Apache 2.4.18
これは、すべてのプログラムがダウンロード/実行されていることを前提とし、Composer と PHPUnit を使用した手順は行いません。
すべてのスキーマは、ディレクタMySQL/
にあります。
スキーマを追加するには (正しいディレクトリにいることを前提としています):
mysql < MySQL/schema.sql
Chip Manager は、 config.ini
という名前の設定ファイルに大きく依存します。このファイルは、ルート ディレクトリに作成して保存する必要があります。
設定ファイルの基本構造は次のようになります。
[database]
username = username
password = password
server = server_address
database = database_name
[information]
address = local_address
logfile = log_file
設定に合わせて各変数を置き換える必要があります。
インデックス ページには、現在プレイしている全員が (接続ステータスを取得して) リストされ、現在の情報 (現在の入札額や合計チップなど) とともにリストされます。
play.php
ゲームのクライアント側を処理し、モバイル対応の Web クライアント経由でプレイできるようにします。これは Android アプリに非常に似ているため、両方を切り替えるのは問題ありません。
ゲームテーブルにはメイン画面が表示され、 index.php
ページが表示されます。
その後、プレイヤーは自分のデバイスを使用してゲームを実行しているサーバーにアクセスし、 register.php
使用して登録し、 login.php
使用してログインした後、 play.php
にリダイレクトされ、そこで入札してゲームに参加できるようになります。
プレイヤーが入札すると、その情報がメイン画面に表示されます。プレイヤーが勝った場合、「プレイヤーが勝った」をクリックすると、すべての入札チップがそのプレイヤーに転送されます。
API 呼び出しは、外部アプリケーション (Android アプリなど) およびいくつかの基本的なゲーム タスクの使用を目的としています。
各 php ファイルは、JSON 形式で 3 つのパラメーターを返します。
名前 | 説明 | 常に存在する |
---|---|---|
エラー | エラー メッセージが存在する場合は、文字列の説明が返されます。それ以外の場合は 0 が返されます | 真実 |
成功 | トランザクションが成功したかどうか (0 または 1) | 真実 |
データ | 返されたデータ。多くの場合、JSON のサブレベルが含まれます。 | 間違い |
進行中のゲームに影響を与えるか、現在のゲームに関する情報を取得する API 呼び出し。これらはapi/game
ディレクトリに保存されます。
data['players']
の下の配列内の接続されているすべてのプレイヤー ID を取得します。
以下を含む、接続されているすべてのプレーヤー情報を取得します。
プレイヤー情報はdata['players']
の下に保存されます。
ユーザー名とパスワードの組み合わせに基づいてプレーヤーにログインし、プレーヤーを接続済みとして設定します。
2 つのPOST
パラメータが必要です。
username
- ログインするプレーヤーのユーザー名password
- プレーヤーを確認するためのパスワードプレーヤーが現在のゲームに勝ったことをゲームに知らせます。彼らは、すべてのプレイヤーが入札したすべてのチップを受け取ります。
GET
またはPOST
パラメータが 1 つ必要です。
ID
- 勝利したプレイヤーの ID検証のために、 data['winner']
で勝ったプレイヤーの ID と、 data['chips_won']
でプレイヤーが獲得した金額を返します。
プレーヤーに影響を与える API 呼び出し。 GET
またはPOST
パラメーターとしてID
が必要です。
プレーヤーに新たな入札を行います。
追加のGET
またはPOST
パラメータが必要です。
amount
- プレーヤーが賭けたい金額data
内のすべてのプレイヤー情報を返します
すべてのユーザーの現在の情報を取得します。
追加のオプションのパラメータを取ります。
needs_update
- 1
に設定すると、情報を返す前にプレーヤーを更新する必要があるかどうかを確認します。 data
内のすべてのプレイヤー情報を返します
プレーヤーの現在の入札額を0
にリセットします
プレーヤーを更新する必要があるかどうかを確認します。その場合は、すべてのプレイヤー情報を返します。
data['needs_update']
でプレーヤーが更新されたかどうかを返し、 data['player']
でプレーヤーに関する情報を返します。