Player (用户数据)

class Player(id, row, col, direction, energy, score, finished, item_count, order)

基类:object

Player 类,包含用户 id,行列坐标,当前朝向,体力。context.me 或者 context.players 中存储的信息都是 Player 类的实例, 我们可以通过此类接口查看 player 的各项信息。

id

用户 id,全局唯一

Type

int

row

行坐标,从 0 开始计数

Type

int

col

列坐标,从 0 开始计数

Type

int

direction

当前朝向,为 [“U”, “D”, “L”, “R”] 中的一种

Type

int

energy

当前体力

Type

float

score

当前得分

Type

float

finished

是否已结束

Type

bool

item_count

收集到的宝石和宝箱计数

Type

dict[str, int]

order

玩家在一局比赛中,与其他玩家相比的执行顺序,从 0 开始计数。例如我先移动,order 为 0,我第二个移动,order 为 1,以此类推。

Type

int

../_images/context_player.png

实际案例

>>> # 方法一:使用 api.get_context() 来获取环境信息
>>> import api
>>> api.get_context().me.col   # 当前回合自己玩家(企鹅)的列坐标
1
>>> api.get_context().me.energy  # 当前回合自己玩家(企鹅)剩余体力值
100
>>> player = api.get_context().players[1]  # 获取 id 为 1 的 player 信息
>>> player.row  # 获取该玩家企鹅)的行坐标
1
>>> player.item_count  # 获取该玩家(企鹅)收集到的物品信息
{"pink_gem": 0}
>>> player.order  # 获取该玩家(企鹅)的执行顺序,1 表示该玩家是第二个移动的
1
>>> # 方法二:使用 def update(context) 来获取环境信息
>>> def update(context):
>>>     me = context.me
>>>     players = context.players