当前位置:首页>> >>


中国跳棋的设计与实现.rar

收藏

资源目录
    文档预览:
    编号:20180913143533214    类型:共享资源    大小:2.04MB    格式:RAR    上传时间:2018-09-13
    尺寸:148x200像素    分辨率:72dpi   颜色:RGB    工具:   
    40
    金币
    关 键 词:
    中国 跳棋 设计 实现
    资源描述:
    太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸中国跳棋的设计与实现摘要制作跳棋游戏旨在满足人们休闲的需要,在紧张工作之余休闲类的小游戏能够给人带来最大程度的放松,也可以增进人们之间的交流,沟通,方便人们娱乐的目的。在项目完成过程中主要解决了,整体界面的设计和棋子图片的生成;棋子图片路径判断函数两大问题。用 image 控件画图解决了棋盘和棋子生成的问题。用 flag[]二维数组获得棋子的位置并加以控制。在两张相同图片所能连通的所有路径中,如果存在一条转弯点不多于两个的路径,就可以跳转;如果没有,则不予处理。用这样的方法解决棋子图片路径判断的问题。电脑游戏产业作为现代电脑电子技术的产物,正在以其独特的魅力在全世界的娱乐领域占据主流位置,我们在承认广大娱乐网民的选择空间狭小的同时,也必须明确的一点就是电脑游戏本身所具有的强大的吸引力。近年来,世界电脑游戏市场高速发展。根据统计,全球网络玩家所占互联网人群的比例已经超过 30%。电脑游戏凭借其信息双向交流,速度快,不受空间限制等互联网有时,具有诱人的互动性、仿真性和竞技性,已经成为网络业盈利优厚的三大领域之一。而单机的小游戏,以其休闲、娱乐、轻松等优点,也受到广大群众的喜爱。关键字:电脑游戏;跳棋;java 游戏太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸IBased on the development of JAVA game of checkers AbstractTo meet the needs of people leisure, the tension in his spare time leisure game can bring the greatest degree of relaxation, also can improve the communication between people, communication, convenient for people entertainment purposes. At the completion of the project process mainly solves, the interface design and the piece picture; two issues of function pieces picture path judgment.(1)Using image drawing control to solve the problem of generating a chessboard and chess pieces(2)Using two-dimensional array flag[] to obtain the position of the chess and control.(3) in two copies of the same picture can all path connected, if there is a turning point of no more than two paths, you can jump; if not, it shall not handle. To solve the judgment pieces picture path problem with such methods.The computer game industry as a product of modern computer and electronic technology, with its unique charm in the world of entertainment areas occupy the mainstream position, we recognize our entertainment netizen's choice space at the same time, it must be made clear is the computer game itself has a powerful attraction. In recent years, the rapid development of computer gaming world market. According to statistics, the global network game player for Internet population ratio has exceeded 30%. Computer games with its information two-way exchange, fast speed, not limited by space and other internet sometimes, with attractive interaction, simulation and competitiveness, has become one of the three major areas of the network industry of lucrative. While stand-alone game, with its leisure, entertainment, etc. also easy, loved by the masses.Key words: Computer games;Checkers;Java game太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸II目 录摘要 ............................................................................................................................................IAbstract......................................................................................................................................II1 选题背景 ................................................................................................................................11.1 课题来源 .....................................................................................................................11.2 目的 .............................................................................................................................11.3 意义 .............................................................................................................................11.4 主要问题 .....................................................................................................................11.5 发展概况 .....................................................................................................................12 设计原理 ................................................................................................................................33 开发语言 JAVA 介绍 ..............................................................................................................53.1 概述 .............................................................................................................................53.2 特点 .............................................................................................................................73.2.1 平台无关性 ......................................................................................................73.2.2 安全性 ..............................................................................................................83.2.3 面向对象 ..........................................................................................................83.2.4 分布式 ..............................................................................................................83.2.5 健壮性 ..............................................................................................................83.2.6 解释型 ..............................................................................................................83.2.7 动态 ..................................................................................................................93.3 区别 .............................................................................................................................93.4 应用 .............................................................................................................................93.4.1 与 Internet ........................................................................................................93.4.2 与电子商务 ....................................................................................................103.4.3 开发过程 ........................................................................................................104 需求分析 ..............................................................................................................................114.1 可行性研究 ...............................................................................................................114.1.1 经济可行性 ....................................................................................................114.1.2 技术可行性 ....................................................................................................114.1.3 运行可行性 ....................................................................................................114.1.4 时间可行性 ....................................................................................................114.1.5 法律可行性 ....................................................................................................125 系统设计 ...............................................................................................................................135.1 基本思路 ...................................................................................................................135.1.1 解决游戏区域问题 ........................................................................................135.1.2 获取图片位置的思路 ....................................................................................135.2 界面的设计和棋子图片的生成 ..............................................................................155.2.1 界面的设计 ....................................................................................................155.2.2 棋子图片的生成 ............................................................................................155.2.3 单击控件的事件触发 ....................................................................................18太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸III5.2.4 按钮制作 ........................................................................................................195.3 跳转路径是否符合规律 ...........................................................................................206 系统调试与测试 ..................................................................................................................246.1 程序调试 ...................................................................................................................246.2 程序的测试 ...............................................................................................................246.2.1 测试的重要性及目的 ....................................................................................246.2.2 测试的步骤 ....................................................................................................256.2.3 测试的主要内容 ............................................................................................25总结 ..........................................................................................................................................27致谢 ..........................................................................................................................................28参考文献 ..................................................................................................................................29外文及翻译 ..............................................................................................................................30附 录 A 外文原文 .........................................................................................................30附 录 B 外文译文 .........................................................................................................41太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸01 选题背景1.1 课题来源 随着电脑软硬件技术和互联网的飞速发展,电脑游戏也突飞猛进,成功游戏不断涌现。比较成熟的项目主要有:反恐精英(CS)、星际争霸、魔兽争霸3、FIFA2003、帝国时代、FIFA2004 等等。这时也出现了越来越多的小游戏,休闲类项目包括跳棋、纸牌、扫雷、弹珠台、连连看等。 1.2 目的 电脑游戏产业作为现代电脑电子技术的产物,正在以其独特的魅力在全世界的娱乐领域占据主流位置,我们在承认广大娱乐网民的选择空间狭小的同时,也必须明确的一点就是电脑游戏本身所具有的强大的吸引力。近年来,世界电脑游戏市场高速发展。根据统计,全球网络玩家所占互联网人群的比例已经超过 30%。电脑游戏凭借其信息双向交流,速度快,不受空间限制等互联网有时,具有诱人的互动性、仿真性和竞技性,已经成为网络业盈利优厚的三大领域之一。而单机的小游戏,以其休闲、娱乐、轻松等优点,也受到广大群众的喜爱。小游戏制作的目的是满足了人们休闲的需要,在紧张工作之余休闲类的小游戏能够给人带来最大程度的放松,也可以增进人们之间的交流,沟通,方便人们娱乐的目的。 另外也通过本程序将几年来所学的专业知识和其他方面的知识融入到实际应用中。1.3 意义 通过此次课题的设计,掌握如何制作一个游戏软件,以及制作游戏软件的整个流程,制作游戏软件的步骤,为以后的就业工作打下基础。 1.4 主要问题 开始制作游戏时,主要要解决的问题有以下几个方面:如何设置整个游戏的界面;如何控制跳棋游戏中棋子图片的生成且每种图片必须为偶数个;游戏开始后,判断鼠标两次点击的图片能否消去,即图片是否相同且图片之间路径的判断;如何判断游戏是否结束以及输赢问题等。 太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸11.5 发展概况 电脑游戏正处于加速发展周期中,中国电脑游戏市场迅速扩大,近三年的年均增长率超过 100%。电脑游戏的告诉发展,逐渐引起了我国政府的高度重视,信息产业部、文化部、新闻出版总属等相关部门都在积极推动各项市场监管和鼓励电脑游戏产业发展的政策措施的出台,2003 年电脑游戏首次被正式纳入国家 863 计划,标志着我国电脑游戏产业已经的到政府的充分重视。除外,在电脑游戏产业发展的同时,有力带动了相关行业的发展,如软件、计算机、通信、电信运营、互联网等,根据统计,电脑游戏能够带动 10 倍于自身产值的相关行业的发展。预计未来三年,中国游戏时常规模仍将保持 60%以上的告诉增长,至 2006 年市场规模将接近 100 亿元,而多样的资本运作模式将成为电脑游戏产业发展的重要推动力。同时,手机游戏、家用游戏机、游戏传媒、电子竞技等游戏周边行业也将快速发展起来。 太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸22 设计原理本设计采用单机服务器模式,游戏规则是模仿网络上普通的跳棋游戏,主要是鼠标两次点击的图片能否实现跳转到指定位置的问题。当前,前提是点击棋子图片,若点击的是同一张图片或者两张不同的图片,则不予处理。在两张想同图片所能连通的所有路径中,如果存在一条转弯先给跳棋整个代码做一个整体介绍,说明每个包,每个类具体作用:1.org.yushang.jumpchess.appAppJumpChess.java 实现的漂亮的窗体界面,标题栏和各种按钮,设置玩家个数及类型(人,或是计算机)。2.org.yushang.jumpchess.audioWavePlayer.java 主要用于播放游戏中各种声音效果,比较简单。3.org.yushang.jumpchess.imageImageLoader.java 主要用于从资源文件中导入各种图片背景,比较简单。4. org.yushang.jumpchess.InterfaceAnimation.java 是用于播放动画的超类;AnimationGO.java 是用于播放棋子走动的动画;AnimationSelect.java 是用于播放棋子被选中后,“抖动”动画效果;Drawer.java 主要是静态地显示棋盘、棋子、下棋位置等图片;JumpChessControl.java 是一个很复杂的类,控制玩家下棋顺序、棋子棋盘的显示、 动画显示、以及响应玩家的下棋的鼠标事件。5.org.yushang.jumpchess.pkgChess.java 棋子类,说明棋子的颜色以及索引号等信息;ChessBoard.java 棋盘类。系统创自 www.bylw120.com 论文下载网索引功能:为棋子和棋盘坐标建立索引关系,根据棋子的可快速检索出该棋子的坐标或根据坐标快速检索出该位置是否有棋子。由于这两项功能在下棋过程中使用频率很高,因此对性能要求也很高。下棋规则:设定了下棋规则,可以是传统的规则,也可以隔空跳规则。这是一个麻烦的工作。涉及数据结构方面的知识,有图的生成和最短路径搜索两个难点。RealChessBoard 和 VirtualChessBoard 是 ChessBoard 派生类: RealChessBoard 中建立了棋子和棋盘坐标建立真正的索引关系。而 VirtualChessBoard 是建立在RealChessBoard 基础之上的,VirtualChessBoard 只是保存当已走动的棋子坐标变化情况,这样 VirtualChessBoard 的数据量很小,提高计算机下棋智能计算速度,这一优点在介绍计算机下棋策略详细讨论。RealChessBoard 和 VirtualChessBoard 只是创建方式有点区别,使用上没有任何差别,这也是多态性的一个运用。Player.java 玩家类,保存了玩家棋子颜色、昵称、敌对玩家,棋子摆放初始区域等信息。同时输出下棋路径,为播放动画作准备。有两个 Play 和 Man 两个派生类,计算机玩家的下棋由 org.yushang.jumpchess.strategy 控制,而人玩家的下棋要由用户鼠标事件来驱动。这两个类实现这两个不同的功能。6. org.yushang.jumpchess.pub,BoardArea.java 这把棋盘各玩家所处的位置编号成6 个区域。该类可得到自己区域包含哪些坐标(getAreaPositions)。也可得到和自太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸3己相对区域(getOppsiteArea)。Color.java 是棋子颜色类。Director.java 棋盘任何一坐标位置(非棋盘边界),在放六个方向上都有相邻的坐标位置。Map.java、Node.java、Nodes.java 三个文件是和数据结构“图”相关的三个类。Position.java 棋盘坐标类,有三个功能:设定了棋盘边界、给定一方向可以得到该方向上相邻的坐标、计算与另一坐标的距离。7. org.yushang.jumpchess.strategy计算机下棋策略主要有以下几个方面:• 计算出己方所有可能走法 • 选出一个跳得最远(尽快让自己获胜)的棋子和走法。 • 选择一个最可能阻碍对方前行的棋子和走法。 • 尽可能选择可为下一步提供最有利条件的棋子和走法 • 对以上几项做综合分析,得出较好的走法。 Analyser.java:策略分析类,运用对各种策略进行综合分析, 得出较好的下棋位置。Strategy.java:策略基类。MainStrategy.java:让棋子跳得最远的策略。DoubleStrategy.java: 为下一步提供最有利条件的策略。OppsiteScore.java:尽可能阻碍对方前行的策略。太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸43 开发语言 JAVA介绍3.1 概述它最初被命名为 Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。由于这些智能化家电的市场需求没有预期的高,Sun 放弃了该项计划。就在 Oak 几近失败之时,随着互联网的发展,Sun 看到了 Oak 在计算机网络上的广阔应用前景,于是改造了 Oak,以“Java”的名称正式发布。Java 编程语言的风格十分接近 C、C++语言。Java 是一个纯的面向对象的程序设计语言,它继承了 C++ 语言面向对象技术的核心,Java 舍弃了 C ++语言中容易引起错误的指针(以引用取代) 、运算符重载(operator overloading) 、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java SE 1.5 版本中,Java 又引入了泛型编程(Generic Programming) 、类型安全的枚举 、不定长参数和自动装/拆箱等语言特性。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。但在 J2SE 1.4.2 发布后,Java 的执行速度有了大幅提升。与传统程序不同,Sun 公司在推出 Java 之际就将其作为一种开放的技术。全球数以万计的 Java 开发公司被要求所设计的 Java 软件必须相互兼容。 “Java 语言靠群体的力量而非公司的力量”是 Sun 公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。 Sun 公司对 Java 编程语言的解释是:Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。 Java 平台是基于 Java 语言的平台。这样的平台非常流行,因此微软公司推出了与之竞争的.NET 平台以及模仿 Java 的 C#语言。Java 是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序设计语言(以下简称 Java 语言)和 Java 平台的总称。用 Java 实现的 HotJava 浏览器(支持 Java applet)显示了 Java 的魅力:跨平台、动感的 Web、Internet 计算。从此,Java 被广泛接受并推动了 Web 的迅速发展,常用的浏览器现在均支持 Java applet。另一方面,Java 技术也不断更新。Java 平台由 Java 虚拟机(Java Virtual Machine)和 Java 应用编程接口(Application Programming Interface、简称 API)构成。Java 应用编程接口为Java 应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个 Java 平台之后,Java 应用程序就可运行。现在 Java 平台已经嵌入了几乎所有的操作系统。这样 Java 程序可以只编译一次,就可以在各种系统中运行。Java 应用编程接口已经从 1.1x 版发展到 1.2 版。目前常用的 Java 平台基于 Java1.4,最近版本为 Java1.6。Java 分为三个体系 JavaSE,JavaEE,JavaME。太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸5Java 语言是一个支持网络计算的面向对象程序设计语言。Java 语言吸收了Smalltalk 语言和 C++语言的优点,并增加了其它特性,如支持并发程序设计、网络通信、和多媒体数据控制等。主要特性如下:1、Java 语言是简单的。Java 语言的语法与 C 语言和 C++语言很接近,使得大多数程序员很容易学习和使用 Java。另一方面,Java 丢弃了 C++ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java 语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。2、Java 语言是一个面向对象的。Java 语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为 implements) 。Java 语言全面支持动态绑定,而 C++ 语言只对虚函数使用动态绑定。总之,Java 语言是一个纯的面向对象程序设计语言。3、Java 语言是分布式的。Java 语言支持 Internet 应用的开发,在基本的 Java应用编程接口中有一个网络应用编程接口(java.net) ,它提供了用于网络应用编程的类库,包括 URL、URLConnection、Socket、 ServerSocket 等。Java 的 RMI(远程方法激活)机制也是开发分布式应用的重要手段。4、Java 语言是健壮的。Java 的强类型机制、异常处理、废料的自动收集等是Java 程序健壮性的重要保证。对指针的丢弃是 Java 的明智选择。Java 的安全检查机制使得 Java 更具健壮性。5、Java 语言是安全的。Java 通常被用在网络环境中,为此,Java 提供了一个安全机制以防恶意代码的攻击。除了 Java 语言具有的许多安全特性以外,Java 对通过网络下载的类具有一个安全防范机制(类 ClassLoader) ,如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类 SecurityManager)让Java 应用设置安全哨兵。 6、Java 语言是体系结构中立的。Java 程序(后缀为 java 的文件)在 Java 平台上被编译为体系结构中立的字节码格式(后缀为 class 的文件), 然后可以在实现这个 Java 平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。 7、Java 语言是可移植的。这种可移植性来源于体系结构中立性,另外,Java 还严格规定了各个基本数据类型的长度。Java 系统本身也具有很强的可移植性,Java 编译器是用 Java 实现的,Java 的运行环境是用 ANSI C 实现的。8、Java 语言是解释型的。如前所述,Java 程序在 Java 平台上被编译为字节码格式, 然后可以在实现这个 Java 平台的任何系统中运行。在运行时,Java 平台中的Java 解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。9、Jav
    展开阅读全文
    1
      金牌文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:中国跳棋的设计与实现.rar
    链接地址:http://www.gold-doc.com/p-116495.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们
    copyright@ 2014-2018 金牌文库网站版权所有
    经营许可证编号:浙ICP备15046084号-3
    收起
    展开