- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第7章网络五子棋游戏
五子棋是起源于中国古代的传统黑白棋种之一,发展于日本,风靡欧洲。对于它与围棋的关系有两种说法,一说早于围棋,
早在“尧造围棋”之前,民间就已有五子棋游戏;另一说源于围棋,是围棋发展的一个分支。
网络的普及和网络通信技术的发展,使网络游戏近年来得到了迅猛发展。大型的网络游戏固然让很多人热衷,小型的如五子棋、围棋、象棋等对抗性的智力游戏也很吸引网络用户的注
意。本章将利用C#作为开发工具,借助网络通信技术,实现能在局域网一棋游戏。
7.1项目展示
网络五子棋游戏的运行界面如图所示。该程序本质上是一个点对点的程序,开始运行时首先选择执黑或执白,然后输入对方的IP地址,单击“连接”按钮建立与对方的连接。成功连接后在界面右边的listbox控件中将会显示对方的IP以及棋子的颜色。
游戏进行过程中,左下角显示下一手轮到哪一方下棋。每走一步,程序自动判断是否有玩家获胜。当一方退出游戏时,另一方的
listbox控件中会显示“对方已退出游戏”的提示信息。
两络版五子棋O区
网络版五子棋
游戏选项
◎选择白棋O选择黑棋
连接
456789ABCDEF退出
图7.1网络五子棋游戏的运行界面2
7.2任务1:游戏的设计
力能的设计
数据结构的设计
程序资源的管理
4应用协议的设计
事件的设计
7.2.1功能的设计
(1)五子棋程序可以在局域网上运行,是点对点的,游戏双方的界面相同。
(2)打开的游戏界面,双方都可以自由选择黑棋或者白棋,然后在“对方IP”文本框中输入对方的IP地址,单击“连接”按钮,如果正常连接,listbox控件中出现提示信息,可以进行游戏了,此时“连接”按钮变为不可用。
(3)黑棋先行,左下角显示的是下一步该黑行棋还是该白行棋,任何一方不能连下两步棋。用户用鼠标在棋盘交叉的位置左键单击下棋,如果用户在棋盘交叉位置以外的地方单击鼠标,程序不响应。
(4)程序可以判断是否有一方获胜,如果有,则清除棋盘上所有内容,重新开始一局棋。用户随时可以单击“退出”按钮(或按Esc键)退出游戏,程序通知对方本方已退出,游戏结束。
4
数据结构是程序的核心,对后面程序的开发影响很大,因此需要首先根据程序的功能进行仔细的设计。五子棋游戏的棋盘是的大小是15行15列,在游戏进行过程中需要随时记录棋盘上各个棋子的位置。因此,在程序中用一个15×15的整数数组来保存棋盘的信息。棋子只有黑白两种,程序中需要记录玩家选择的是黑棋还是白棋,用一个整数变量可以表示,其值只能是0(WHITE)或
1(BLACK)。程序运行过程中,黑白双方是交替下棋的,
任何一方不可以连续走两步。程序中使用一个变量来表示下一手棋是黑还是白,只有当nextPlayer的值与玩家的棋子MyPlayer的值一致时,玩家才可以在棋盘上落子。程序中既需要发送网络数据,又需要接收网络数据,因此在Form类中分别定义了发送对象send0bj和接收对象listen0bj。
5
所谓的应用协议,并不是指网络应用协议FTP、HTTP等,而是指游戏运行过程中,五子棋程序通过网络发送和接收的数据格式及含义。根据游戏功能的设计,游戏进行过程中,双方通过网络发送的数据包括以下几种:
(1)发起连接
(2)下棋的位置信息
(3)退出游戏
7.2.4坐标的转换
在五子棋游戏中存在着两种坐标:一种是实际坐标,以屏幕像素为单位,向右的方向为X正方向,向下的方向为Y正方向,用于表示鼠标左键单击的位置;另一种是逻辑坐标,对应于程序中的二维数组
GameBoard[][],用于表示棋子在棋盘上的位置,该数据是0~14之间的整数。图7.2中,0点是坐标的原点,A点是棋盘的左上角,其位置是(25,15),棋子的大小为20×20像素,图中的圆表示一个棋子,B点表示棋子外矩形的左上角,其位置为(15,6)。
图7.2棋子坐标的转换
7.3.1图片资源
在程序中使用ImageList控件来管理黑子和白子的图片资
您可能关注的文档
- 三消游戏关卡设计教程1.docx
- 消消乐策划方案.docx
- 最轻松的网络赚钱方法.docx
- 项目一认识市场营销策划实务.pptx
- (教学设计)第1章 第3节 科学验证:动量守恒定律2023-2024学年新教材高中物理选择性必修第一册(鲁科版2019).docx
- 语文版中职数学基础模块上册3.5《函数的实际应用举例》word教案2().docx
- 2024-2025学年小学生积极心理预防教学设计.docx
- 2023-2024学年统编版语文七年级下册第2课《说和做》教学设计.docx
- Unit 2 Lessons in Life Starting out 教学设计-2023-2024学年高二下学期英语外研版(2019)选择性必修四册.docx
- 第3章 第3节 DNA的复制2023-2024学年新教材高中生物必修第二册同步教学设计(人教版2019 多选).docx
- 10《那一年,面包飘香》教案.docx
- 13 花钟 教学设计-2023-2024学年三年级下册语文统编版.docx
- 2024-2025学年中职学校心理健康教育与霸凌预防的设计.docx
- 2024-2025学年中职生反思与行动的反霸凌教学设计.docx
- 2023-2024学年人教版小学数学一年级上册5.docx
- 4.1.1 线段、射线、直线 教学设计 2024-2025学年北师大版七年级数学上册.docx
- 川教版(2024)三年级上册 2.2在线导航选路线 教案.docx
- Unit 8 Dolls (教学设计)-2024-2025学年译林版(三起)英语四年级上册.docx
- 高一上学期体育与健康人教版 “贪吃蛇”耐久跑 教案.docx
- 第1课时 亿以内数的认识(教学设计)-2024-2025学年四年级上册数学人教版.docx
文档评论(0)