网络编程异步五子棋游戏

一. 实验要求

      参考教材第五章第2个游戏程序,按以下要求进行改编,要求如下:

      1)将游戏改为双方对弈,而不是系统自动下棋;

      2)修改游戏规则,如五子棋的游戏规则;

   3)同步改异步;

二. 设计思路

1.首先,本次实验主要是修改性的实验,所以思路的第一步,就是看懂原有代码的结构,并对新代码的结构进行分析,分析如下

1)服务器负责提供多个游戏桌的服务,可选择人数限制(1~200),游戏桌限制(1~100

2)服务器有“启动服务”和“停止服务”的功能,只有在启动服务之后才允许客户端连接游戏

3)客户端登陆之后可点击游戏厅有空位的桌子进入游戏桌,每个游戏桌可容纳两名玩家,同一桌的双方点击准备就绪之后,游戏才开始。

4)如果有一方先让五子连珠情况(行、列、对角线)出现,便算胜利,游戏结束。

5)同一桌的玩家可以聊天。

2.然后,正式开始编码,首先是同步改异步:

服务器端异步接收客户端连接:

/// <summary>接收客户端连接</summary>

        private void ListenClientConnect()

        {

            TcpClient newClient = null;

            while (true)

            {

                ListenClientDelegate d = new ListenClientDelegate(ListenClient);

                IAsyncResult result = d.BeginInvoke(out newClient, null, null);

                while (result.IsCompleted == false)

                {

           

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值