需要一台机器运行本地服务器的 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
处理游戏的客户端,并允许人们通过移动友好的网络客户端进行游戏。这与 Android 应用程序非常相似,因此两者之间的切换应该不成问题
游戏桌上将出现一个主屏幕,其中将显示index.php
页面。
然后,玩家将使用自己的设备访问运行游戏的服务器,使用register.php
注册,使用login.php
登录,然后重定向到play.php
,在那里他们可以出价并参与游戏。
当玩家出价时,他们的信息将显示在主屏幕上。当玩家获胜时,点击“玩家获胜”会将所有投标筹码转移给该玩家。
API 调用适用于外部应用程序(例如 Android 应用程序)以及一些基本游戏任务的使用。
每个php文件返回3个JSON形式的参数:
姓名 | 描述 | 永远存在 |
---|---|---|
错误 | 如果存在错误消息,将返回字符串描述。否则返回0 | 真的 |
成功 | 交易是否成功(0或1) | 真的 |
数据 | 返回的数据。通常会有 JSON 的子级别。 | 错误的 |
影响正在进行的游戏或获取有关当前游戏的信息的 API 调用。它们存储在api/game
目录中。
获取data['players']
下数组中所有连接的玩家 ID。
获取所有已连接玩家的信息,包括:
玩家信息存储在data['players']
下。
根据用户名/密码组合登录播放器并将播放器设置为已连接。
需要两个POST
参数:
username
- 登录玩家的用户名password
- 验证玩家的密码让游戏知道玩家赢得了当前游戏。他们将收到所有玩家出价的所有筹码。
需要一个GET
或POST
参数:
ID
- 获胜玩家ID为了进行验证,它会在data['winner']
下返回获胜玩家 ID,并在data['chips_won']
下返回玩家赢得的金额。
影响玩家的 API 调用。需要ID
作为GET
或POST
参数。
为玩家提出新的出价。
需要额外的GET
或POST
参数:
amount
- 玩家想要下注的金额返回data
下的所有玩家信息
获取所有用户当前信息。
采用附加可选参数:
needs_update
- 如果设置为1
,将在返回信息之前检查播放器是否需要更新返回data
下的所有玩家信息
将玩家当前出价重置为0
检查播放器是否需要更新。如果是,则返回所有玩家信息。
返回data['needs_update']
下的玩家是否更新以及data['player']
下的玩家信息