文档详情

网络版斗地主游戏.ppt

发布:2025-03-28约1.81千字共16页下载文档
文本预览下载声明

网络版斗地主游戏程序的设计与实现

指导教师:杜玲

辩论人:沈冰

背景及意义

斗地主是流行于湖北一带的一种扑克游戏,玩法简单,娱乐性强,老少皆宜。据传在万恶的旧社会,地主横行乡里,无恶不做,人们为了发泄对地主的痛恨,常常在一天的劳作之后,一家人关起门来斗地主。该游戏由三个人玩,用一副或两副牌,地主为一方,其余两家为另一方,双方对战,先出完牌的一方获胜。。

在传统单机斗地主游戏的根底上,实现多人在网络上共同进行斗地主的目的。本设计采用客户机—效劳器模式,网络上的任何一台计算机都可以连接到效劳器。

首先要启动效劳端游戏程序,等待接受客户的请求。

然后启动客户端游戏程序,输入正确的效劳端IP地址连接到效劳器进行斗地主游戏。

本文的主要工作

研究工作

基于网络连接使用Socket编程

为游戏的规那么进行建模

使用.NET控件为用户提供提示

实践工作

设计并实现网络版斗地主游戏程序,使三位玩家能在网络上共同进行斗地主游戏,游戏结束时有胜负提示。

系统功能分析

本软件按功能实现可把系统分为三大模块:

网络模块:在该模块中通过使用TCP/IP协议以及windows提供的基于网络编程套接字也就是winsock实现效劳端与客户端之间的连接以及它们之间数据的传送。

游戏规那么模块:在该模块中通过使用封装和数学逻辑的方法实现对牌的存储和排序。

用户控制模块:在该模块中通过使用.NET控件库提供的Button控件和Label控件实现给用户提示的功能。

模块设计与实现

该图描述的是整个软件的流程图,首先是启动效劳端程序等待客户端的连接,然后分别启动三个客户端连接到效劳器,这样游戏便开始了,每当一局结束后会给出胜败提示,并由玩家决定是否重新开始,如果三位玩家都点击重新开始后将重新进行下一局游戏,否那么游戏到此结束。

系统总体设计

模块设计与实现

网络模块:

在该模块的设计中,首先是开启效劳器:创立套接字,将套接字绑定到一个本地地址和端口上,将套接字设为监听模式。Listen,等待接受客户的请求;当请求到来的时候,接受连接请求,并返回一个用于和客户端通信的套接字,用返回的套接字与客户端进行通信,返回,等待另一个客户的请求(即关闭返回的套接字),关闭套接字。

然后分别开启客户端:创立套接字,向效劳器发送客户连接请求,和效劳器进行通信,关闭套接字。

效劳器流程图

客户机流程图

模块的设计与实现

游戏规那么模块:

在游戏规那么模块中,主要实现的功能是主要是通过封装各种相应的牌类对牌进行存储和排序以及组合。在该模块中主要用到了集合和面向对象中封装特性,外界通过类的对象,只要调用它的方法,就可以实施对玩家出牌的合法性判断,并做相关结果的存储工作。

游戏规那么流程模块流程图

模块的设计与实现

用户控制模块:

该模块的设计是为了完成用户的点击操作,主要实现用户的点击操作和给予用户提示的功能。游戏开始时用户可以点击“要地主”或“不要地主”进行操作,游戏过程中用户可以点击“出牌”或“不出”进行操作,如果出牌不符合要求“出牌提示”这个标签会提示用户“不可以出牌”。

用户控制模块流程图

软件运行环境

软硬件环境:

硬件设备:三台计算机。

操作系统:WindowsXP。

编程语言:C#语言。

运行环境:Microsoftvisual2005平台。

软件测试

启动效劳端:

软件测试

启动客户端:

软件测试

三个客户端成功连接效劳器后发牌:

软件测试

出牌提示:

软件测试

游戏结束提示胜败:

总结

本设计主要论述了如何实现网络版的斗地主对战程序,并且以一副牌规那么为准,论述了网络斗地主的游戏算法的设计。本设计采用MicrosoftVisual2005/C#作为开发工具,结合socket编程。

本设计通过启动效劳器与客户机,完成了他们之间的连接和数据交换;并且出色的完成了游戏的各种规那么以及给予用户正确的操作提示和胜负显示。虽然完成了设计的初始要求,但是在游戏的声效和动画处理以及计算积分方面还有待提高和改善。

显示全部
相似文档