我是 rethinkdb 的新手,我正在开发一个游戏服务器的管理工具,我需要在其中记录玩家的杀戮和死亡。对于“名称”是二级索引的玩家,我有以下结构:
"name": NameofPlayer,
"sessions:" [
{
"id": IDofSession,
"kills": NumberofKills,
"deaths": NumberofDeaths,
"hskr": HSKR%,
"weapons": [
{
"name": WeaponName,
"kills": NumberofKills,
"headshots": NumberofHeadshots
},
]
},
]
我从服务器获取当前会话 ID,并且在返回杀手、受害者、武器名称和爆头(真/假)的杀戮时触发一个事件。我需要为涉及以下内容的两个玩家创建更新:
- 如果来自服务器的当前 id 的玩家会话不存在,则创建一个
- 如果当前 id 存在会话,则
- 对于玩家进行杀戮
- 更新总击杀数和爆头击杀率
- 如果武器不存在,则创建一个并记录名称、杀戮和爆头
- 如果存在武器,则更新击杀次数和爆头次数
- 对于被杀的玩家
- 更新总死亡人数
- 对于玩家进行杀戮
我需要保留上述播放器结构,但对如何更新播放器持开放态度。