游戏大厅升级日记 关于计分机制的Story

Login后,发,从DB中得到该用户的各个游戏的已有分数列表。注意,DB中UserScore表,应该只包括Score<>0的记录,就是说,至少进行过一次游戏。

游戏结束,更新DB中UserScore表的Score字段,如果之前没有记录,则添加一笔新的。平局不会更新该表。(这是一个SP,名称Pr_UpdateScore。)

游戏结束,会同时更新Server的clientTable中该桌用户的Score记录

游戏结束,Server会发送新的分数给该游戏的各大厅用户。

Login结束,会response这个用户各个游戏的已有分数列表给该Client,将其存储在List<GameScore>中,有GameId和Score两个字段。

之后,

JoinHall从Client取出该大厅对应游戏的Score,加入clientTable中。这一步至关重要。

LeaveHall从clientTable中移除这个大厅的记录UserHallInfo。

游戏结束,会同时更新该Client的List<GameScore>。

*有时SingleOrDefault方法要比Single好用

原文地址:https://www.cnblogs.com/Jax/p/1381045.html