.Net Core——用SignalR撸个游戏

之前开内部培训,说到实时web应用这一块讲到了SignalR,我说找时间用它做个游戏玩玩,后面时间紧张就一直没安排。这两天闲了又想起这个事,考虑后决定用2天时间写个斗D主,安排了前端同学写客户端,我写游戏逻辑和服务。

这个项目难度并不高,但是游戏逻辑还是挺绕的,联调过程中也发现解决了很多小问题。来园子里整理一篇文章,记录一下。

基础的介绍就免了,毕竟官网跟着走两圈啥都懂了。没基础的可以戳这里,是我之前写的一篇SignalR基础介绍,带有一个极简聊天室。

tips:文章结尾有开源地址,游戏数据都是本地的,改下IP运行起来就可以玩了。

直接上干货,首先是数据模型:

/// <summary> /// 用户信息 /// </summary> public class Customer { /// <summary> /// 唯一ID /// </summary> public string? ID { get; set; } /// <summary> /// 昵称 /// </summary> public string? NickName { get; set; } /// <summary> /// 卡片 /// </summary> public List<string> Card { get; set; } } /// <summary> /// 房间 /// </summary> public class Room { /// <summary> /// 房间名 /// </summary> public string Name { get; set; } /// <summary> /// 房主id /// </summary> public string Masterid { get; set; } /// <summary> /// 当前出牌人 /// </summary> public int Curr { get; set; } /// <summary> /// 当前卡片 /// </summary> public List<string> CurrCard { get; set; } = new List<string>(); /// <summary> /// 当前卡片打出人 /// </summary> public string ExistingCardClient { get; set; } /// <summary> /// 房间成员列表 /// </summary> public List<Customer> Customers { get; set; } = new List<Customer>(); }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzpssd.html