详细设计基于windows系统的斗地主游戏的设计与实现大学论文Word文件下载.docx

上传人:b****5 文档编号:19671100 上传时间:2023-01-08 格式:DOCX 页数:16 大小:201.37KB
下载 相关 举报
详细设计基于windows系统的斗地主游戏的设计与实现大学论文Word文件下载.docx_第1页
第1页 / 共16页
详细设计基于windows系统的斗地主游戏的设计与实现大学论文Word文件下载.docx_第2页
第2页 / 共16页
详细设计基于windows系统的斗地主游戏的设计与实现大学论文Word文件下载.docx_第3页
第3页 / 共16页
详细设计基于windows系统的斗地主游戏的设计与实现大学论文Word文件下载.docx_第4页
第4页 / 共16页
详细设计基于windows系统的斗地主游戏的设计与实现大学论文Word文件下载.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

详细设计基于windows系统的斗地主游戏的设计与实现大学论文Word文件下载.docx

《详细设计基于windows系统的斗地主游戏的设计与实现大学论文Word文件下载.docx》由会员分享,可在线阅读,更多相关《详细设计基于windows系统的斗地主游戏的设计与实现大学论文Word文件下载.docx(16页珍藏版)》请在冰豆网上搜索。

详细设计基于windows系统的斗地主游戏的设计与实现大学论文Word文件下载.docx

目录

1文档概述4

1.1文档目的和范围4

1.2术语/缩略语4

1.3参考文档4

2处理4

2.1模块数据结构定义4

2.1.1全局变量定义4

2.2模块功能实现8

2.2.1模块内部函数8

1文档概述

1.1文档目的和范围

此文档是对基于Windows系统的斗地主游戏的服务器端模块的详细设计描述,主要是描述了本模块与其它模块的接口函数和内部接口函数以及内部函数的定义、流程图和构成图以及测试项目的记述。

并为后期测试提供依据。

1.2术语/缩略语

序号

术语/缩略语

说明

MFC

MicrosoftFoundationClasses,微软基础类

2

DirectX

DirecteXtension,简称DX,是由微软公司创建的多媒体编程接口

1.3参考文档

文档名

作者

时间

版本

详细设计模板

IA事业部

2007-11-9

0.0.0

详细设计方法

3

函数说明指南

2007-6-4

1.1.0

4

流程图指南

5

概要设计

杨丽娟

2013-12

0.1.0

2处理

2.1模块数据结构定义

2.1.1全局变量定义

//主窗口句柄

externHWNDhWnd;

classCMainFrame;

//主窗口类指针;

设为全局变量便于各个类访问其方法

externCMainFrame*pCMainFrame;

//关于Direct设备的类

//DirectInput设备接口指针

classCMyDirectInput;

externCMyDirectInput*pInput;

//DirectDraw设备接口指针

classCMyDirectDraw;

externCMyDirectDraw*pDraw;

externLPDIRECTDRAWSURFACE7lpddsprimary;

//主表面

externLPDIRECTDRAWSURFACE7lpddsback;

//后缓冲表面

externLPDIRECTDRAWSURFACE7lpddsbg_Game;

//存放游戏界面的离屏表面

HWNDhWnd;

CMainFrame*pCMainFrame;

//DirectDraw设备对象指针

CMyDirectInput*pInput;

CMyDirectDraw*pDraw;

LPDIRECTDRAWSURFACE7lpddsprimary;

//ddprimarysurface

LPDIRECTDRAWSURFACE7lpddsback;

//ddbacksurface

LPDIRECTDRAWSURFACE7lpddsbg_Game;

//离屏表面

//游戏主体框架类指针

CGame*pGame;

//54张扑克

CCardg_cAllCards[54];

//存储玩家信息的类

CPlayerInfo*pCenterPlayer;

CPlayerInfo*pLeftPlayer;

CPlayerInfo*pRightPlayer;

CPlayingCards*pLeftCards;

//左边玩家的牌对象

CPlayingCards*pCenterCards;

//主机玩家的牌对象

CPlayingCards*pRightCards;

//右边玩家的牌对象

//关于其他精灵的绘制引擎

CDrawItemEngine*pDrawItem;

//关于扑克绘制的引擎

CDrawCardsEngine*pDrawCards;

//游戏牌面坐标系统

CCardsMap*pCardsMap;

//网络设备

CLink*pServerLink1;

//连接客户1

CLink*pServerLink2;

//连接客户2

CLink*pClientLink;

//客户端1

//位置坐标

intScreen_Width=1024;

intScreen_Height=768;

//屏幕长,宽

intCards_Width=82;

intCards_Height=114;

//扑克长宽

//intFace_Width=70;

intFace_Height=70;

//头像的长宽

intCenter_x0=350;

intCenter_y0=620;

//中间玩家未出的牌

intCenter_x1=230;

intCenter_y1=470;

//中间玩家已经出过的牌

intCenter_x2=330;

intCenter_y2=340;

//中间玩家刚出的牌

intLeft_x0=35;

intLeft_y0=140;

//左边玩家未出的牌

intLeft_x1=140;

intLeft_y1=30;

//左边玩家已经出过的牌

intLeft_x2=240;

intLeft_y2=65;

//左边玩家刚出的牌

intRight_x0=905;

intRight_y0=140;

//右边玩家未出的牌

intRight_x1=800;

intRight_y1=30;

//右边玩家已经出过的牌

intRight_x2=700;

intRight_y2=65;

//右边玩家刚出的牌

//三张显示的地主牌;

intLord_Card1_x=379;

intLord_Card1_y=30;

intLord_Card2_x=471;

intLord_Card2_y=30;

intLord_Card3_x=563;

intLord_Card3_y=30;

intCard_x=471;

intCard_y=190;

//发牌的起始位置

intCard_Distance0=18;

//左,右玩家未出牌和中间玩家已出牌的间距

intCard_Distance1=23;

//左,右玩家已出牌的间距

intCard_Distance2=25;

//中间玩家未出牌和刚出的牌的间距

intCard_Up=20;

//中间扑克选择后突出的高度

typedefunsignedshortUSHORT;

//类型定义

typedefunsignedshortWORD;

typedefunsignedcharUCHAR;

typedefunsignedcharBYTE;

2.2模块功能实现

2.2.1模块内部函数

2.2.1.1类CDlg_Start

2.2.1.1.1Server_Login

【函数式样】

函数名

Server_Login

文件名

../Dlg_Start.cpp

功能概要

服务器端登陆接收函数

记述形式

staticDWORDWINAPIServer_Login(LPVOIDpParam);

参数

类型

变量名

I/O

LPVOID

pParam

-

返回值

DWORD

详细说明

服务器端接收函数

使用注意事项

【函数处理流程】

图1服务器端登陆接收流程图

2.2.1.2Client_Login

Client_Login

.../Dlg_Start.cpp

客户端登陆接收函数

staticDWORDWINAPIClient_Login(LPVOIDpParam);

LPVIOD

客户端接收函数

图2客户端登陆接收流程图

2.2.1.2类CServerGame

2.2.1.2.1SendCards

SentCards

.../Server_Game.cpp

传送牌数据结构给两个客户(服务器独有的函数)

intSentCards(void);

void

int

图3服务器传送牌数据流程图

2.2.1.2.2DecideLord

DecideLord

.../Server_Game.cpp

决定地主

intDecideLord(void);

决定地主

图4决定当不当地主流程图

2.2.1.2.3LeftDoing

LeftDoing

左边玩家思考,并决定要出的牌

virtualintLeftDoing();

图5出牌逻辑

2.2.1.2.4CenterDoing

CenterDoing

本机玩家思考,并决定要出的牌

virtualintCenterDoing();

本家玩家思考,并决定要出的牌

2.2.1.2.5RightDoing

RightDoing

右边玩家思考,并决定要出的牌

virtualintRightDoing();

2.2.1.2.6Run

Run

整个游戏过程的中枢

virtualintRun();

图6游戏中枢流程图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1