首页 简单小游戏设计—免费毕业设计论文

简单小游戏设计—免费毕业设计论文

举报
开通vip

简单小游戏设计—免费毕业设计论文简单小游戏设计—免费毕业设计论文 游戏设计 摘 要 随着软件技术以及互联网技术的不断发展,游戏产业发展迅速,已经成为经济增民的一个亮点。实践是软件开发的核心,对代码要求精益求精,在开发的过程中,简单设计,用测试驱动,通过重构和迭代代码实现现设计。 本文简要的介绍了游戏的开发现状,以及游戏开发中存在的问题。另外还简单地介绍了众多游戏开发软件中的一种——即Visual Basic,其中主要地介绍了Visual Basic 6.0,以及Visual Basic的编程环境。同时通过两个小游戏简单介绍了利用Visua...

简单小游戏设计—免费毕业设计论文
简单小游戏设计—免费毕业设计论文 游戏设计 摘 要 随着软件技术以及互联网技术的不断发展,游戏产业发展迅速,已经成为经济增民的一个亮点。实践是软件开发的核心,对代码要求精益求精,在开发的过程中,简单设计,用测试驱动,通过重构和迭代代码实现现设计。 本文简要的介绍了游戏的开发现状,以及游戏开发中存在的问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 。另外还简单地介绍了众多游戏开发软件中的一种——即Visual Basic,其中主要地介绍了Visual Basic 6.0,以及Visual Basic的编程环境。同时通过两个小游戏简单介绍了利用Visual Basic 6.0开发游戏的处理过程。在本文中主要介绍了24点纸牌和拼拼图游戏的开发,包括界面的设计和相应的界面设计原则,还介绍了其开发环境。同时也也对游戏系统的公共功能模块做了阐述。 通过对该课题的研究设计,对如何运用Visual Basic来设计游戏有了一定程度的了解,并对如何设计游戏的构架有所掌握。 关键词:游戏设计;Visual Basic技术;界面设计;模块;算法 Abstract Along with the software technology as well as the Internet technology unceasing development, the game industry development is rapid, already became the economy to increase a people's luminescent spot. The practice is a core which software develops, requests to the code to strive for perfection, in the development process, the simple design, with the test actuation, passed the overweight construction and the iteration code realization presently designs this article brief introduction game development present situation, as well as the game developed the question which existed. Moreover also simply introduced the multitudinous game develops in software one kind is Visual Basic, mainly introduced Visual Basic 6.0, as well as Visual Basic programming environment. Meanwhile simply introduced through two small games uses Visual the Basic 6.0 developments games the treating processes. Mainly introduced in this article 24 playing card and put together the chart game the development, including contact surface design and corresponding contact surface principle of design, but also introduced its development environment. Simultaneously also also has made the elaboration to the game system public function module through to this topic research design, how to designed the game using Visual Basic to have the certain degree understanding, and how to designed the game the skeleton to have grasps. Key word: The game designs;Visual Basic technology;contact surface design; module;algorithm 1 目 录 游戏开发的现状分析........................................... 3 第一章 1.1游戏开发现状................................................. 3 1.2 游戏开发中存在的问题 ........................................ 4 第二章 游戏开发的技术基础.......................................... 5 2.1 Visual Basic技术............................................ 5 2.1.1游戏开发软件的介绍 ..................................... 5 2.1.2 Visual Basic概述 ...................................... 5 2.2 Visual Basic的编程环境...................................... 6 2.2.1 Windows下的Visual Basic编程环境 ...................... 6 2.2.2 面向对象的编程......................................... 6 2.2.3 VB在系统中的应用 ...................................... 8 2.3 小结 ....................................................... 11 系统总体规划............................................... 12第三章 3.1 系统功能简介 ............................................... 12 3.1.1 24点纸牌简介 ......................................... 12 3.1.2 拼拼图简介............................................ 12 系统开发方法 ............................................... 12 3.2 3.2.1 24点纸牌的开发 ....................................... 14 3.2.2 拼拼图的开发.......................................... 23 3.3 系统开发环境 ............................................... 27 3.3.1 开发平台.............................................. 27 3.3.2 运行平台.............................................. 27 3.3.3 输入输出设计.......................................... 27 3.4 小结 ....................................................... 28 第四章 系统功能模块设计........................................... 29 4.1 24点纸牌游戏公共模块....................................... 29 4.2 拼拼图公共模块 ............................................. 31 4.3 小结 ....................................................... 32 第五章 总结与展望.................................................. 33 5.1 全文 企业安全文化建设方案企业安全文化建设导则安全文明施工及保证措施创建安全文明校园实施方案创建安全文明工地监理工作情况 总结 ................................................... 33 5.2 展望 ....................................................... 33 参考文献........................................................... 34 致 谢............................................................. 35 2 第一章 游戏开发的现状分析 1.1游戏开发现状 近两年来中国游戏产业蓬勃发展,新作品不断问世。吸引了不少有志之士,他们很愿意加入到中国游戏软件开发者的行列中来,但真正能如愿者少之又少,所以现在我们的游戏产业呈很奇特的现象,一方面是急需新血加入,而另方面却是真正能动手开发游戏的人才却如凤毛麟角。造成这种现象的原因,是游戏制作这一新兴的学科在国内才刚刚兴起,而许多相关资料在国内还很缺乏。大多数抱有美好愿望的朋友正是因为缺少这些资料才无法如愿以偿。有鉴于国内大多数计算机刊物虽已经开办了游戏专栏,但登载游戏攻略的文章多,刊出的游戏制作文章少的局面。 自从世界上第一台电子计算机问世以来,电脑游戏就作为一种新生的特有的文化媒体而存在着,电脑游戏世界是一片五彩缤纷的世界,这个世界里每时每刻都发生着许多千奇百怪的故事,因此吸引着无数玩家去探寻、去寻觅。可能会有许多朋友这样问,这么好玩的游戏是谁做出来的呢?答案只有一个,当然是由人所做出来的。电脑游戏是由一群或一组想象力丰富并充满工作热情的小伙子们齐心合力做出来的。 说到电脑游戏制作业可算的上是一种新兴的产业,但随着近些年来计算机产业突飞猛进的发展,电脑游戏制作业在国外已经成为继电影娱乐业后的又一大娱乐产业,互动式的游戏参与过程与声光动画特技效果是传统电影业所难与之相匹敌的,一时间竟引无数“英雄”为之折腰,电脑游戏产业因此而受益非浅。例如著名的3D射击游戏《DOOM毁灭战士》从问世以来就深受玩者欢迎,风靡全球、久盛不衰。而这套游戏程序的制作者就以其所获收益为后盾,在一个月间买下了三辆名贵跑车,《好莱坞探奇报》在一篇评论文章中认为电脑游戏业将超过电影业成为第一大娱乐产业,并将前述事例作为其依据而引于报章。 3 眼见国外电脑游戏产业经过这几年的发展,取得长足的进步,已经日益壮大,而我国民族电脑游戏产业却因起步较晚,尚还仅处于萌芽阶段。一些有识之士不由得大声疾呼:“赶快觉醒吧!中国游戏。”面对此种情况,任何一位有民族心的朋友都希望中国游戏产业尽快成长壮大,能早日与其它游戏强国一道跻身于世界游戏之林。美好的想法终究也只是想法而已、与国外相比我们从人员素质到开发 经验 班主任工作经验交流宣传工作经验交流材料优秀班主任经验交流小学课改经验典型材料房地产总经理管理经验 都很欠缺,如何在短期内赶上国外电脑游戏产业的发展水平,才是每位有爱国心并立志于游戏软件开发的仁人志士所应该共同面对的问题。 近年来在系统可靠性研究领域中兴起的“可靠性是极计出来的”的概念,在游戏设计工作中确实给人以实实在在的感受游戏系统的好与坏,从根本上说都是设计出来的,其它的多属于实现和质量保证方面的工作。在当前设计一部创造性的游戏产品越来越难的情况下,游戏设计工作和人选也就显得越来越重要了。 1.2 游戏开发中存在的问题 游戏制作是一门系统的开发工程,他需要多工种的配合,我们将游戏制作与盖高楼相比,参与盖楼的有蓝图设计师、建筑师、装磺制作师等工种,盖一幢高楼首先需要有一幅详细的制作蓝图,它说明了高楼所建的位置、高楼所表现的设计风格、每一层的建筑格局等,建筑师将根据设计蓝图的要求进行施工,当楼宇的基本构造已经完成后,装璜制作师则按照设计蓝图的指示,开始对建筑的外观进行装饰美化,经过以上几步,一幢美观的高楼就可以峻工交付使用了。游戏同样如此,制作一部游戏软件需要有策划、程序制作、美工音效等多工种的配合,策划如同蓝图设计师,它将决定一部游戏的内涵与外在表现方式,而程序制作则起到了建筑师的作用,它一样要根据策划的要求,将程序及数据结构如同建筑一样构造好,那美工音效呢?它同建筑高楼的装璜制作师一样要对整个游戏的外在表现讲行制作润色。 当然,在游戏设计过程中,或多或少都会遇到一些问题。比如,各工程不能直接连接,要通过shell命令来连接各个工程;还有在算法的代码编写中经常会出现错误等。在这个设计制作过程中,让我知道了如何运用Visual Basic来设计游戏,同时也增强了解决问题的能力。 4 第二章 游戏开发的技术基础 2.1 Visual Basic技术 2.1.1游戏开发软件的介绍 目前可以说进行游戏开发的软件很多,可以说每种软件都有其自身的优点,但是Visual Basic却因其许多优点越来越受到游戏开发程序员们的青睐。 2.1.2 Visual Basic概述 随着Visual Basic的发展,它已小仅是一种编程语言,而且可看成是一部生成应用程序的“机器”。没有一种开发环境能像Visual Basic(及Visual Studio) 一样提供数晕庞大、种类繁多的功能。使用它单个程序开发人员能在几分钟内开发出一个简单的应用程序,而一个开发小组则能开发出一个结构复杂、功能齐全的应用程序来。Visual Basic能使使用者树立面向对象的编程思想,否则开发出的程序只能停留在几年前的水平上,虽然许多人声称BASIC语言不是面向对象的编程语言,或者至少不如其他语言那样纯粹,但无庸置疑,使用其他工具的编程效率都低于Visual Basic。 值得一提的是,由于使用Visual Basic开发应用程序时存在千变万化的编程方式,因此很容易出现拼凑的现象。这样的程序当然也能够运行,但绝对属于一种比较不完善的设计方法。尽管使用Visual Basic能获得比使用其他工具更高的编程效率,我们仍然需要遵循一些规则以开发出思路清晰的产品。提高编程技巧的一个关键在于尽量多地掌握Visual Basic用于创建类和ActiveX组件的功能,这种架构能使程序员进一步以面向对象的方式来思考问题。那么,为什么要使用Visual Basic呢?原因其实很简单,因为我们要解决问题。 5 2.2 Visual Basic的编程环境 2.2.1 Windows下的Visual Basic编程环境 在Windows环境下,用户只需移动鼠标,单击一些按钮,或者选择菜单中的某些命令来实现某些操作,在程序运行过程中还会出现一些“对话框”,引导用户进行某些选择和操作。熟悉Windows的用户对此深有感触。 Microsoft于1991年推出了Visual Basic 1.0版本。既保留了BASIC语言简单易用的优点,又充分利用了Windows提供的图形环境,提供了崭新的可视化设计工具。 Microsoft的Visual Basic 6.0是Windows应用程序开发工具,是目前最为广泛的、易学易用的面向对象的工具。Visual Basic提供了大量的AXTIVE控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效地提高了应用程序的运行效率和可靠性。故而,实现本系统VB是一个相对好的选择。 2.2.2 面向对象的编程 在面向对象的程序设计中,“对象”是系统中的基本运行实体,它封装了数据和操作。对象的性质和状态特征称为“属性”,同类型的对象具有相同的属性。当要特制某一具体的对象时,这些属性就有了具体的值。 不同对象的不同属性值描述了对象的特征。这些值就是对象的数据。同类对象的抽象称为“类”。 对象不会无缘无故地执行某个操作,只有在接受别的对象请求时,才会进行某一操作。这种请求对象执行某一操作或回答某些信息的要求称为“消息”或“事件”。 对象接到消息所执行的程序称为事件驱动程序。VB的事件驱动程序都表示为“过程”。事件驱动过程可以包括对象的调用和各种VB语言的语句。 6 VB的工具箱为程序员提供了一套界面设计常用的对象模子类,它们的属性没有具体数值。当我们把工具箱的某个“拖动”或双击到窗体上时,系统以这个模子的形式赋予它各种初始值,构造一个实在对象。这些属性值可以由用户修改。 VB不仅为用户提供了一套 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 控件工具,还允许程序员添加新的控件工具以及用VB程序设计语言设计对象。 程序员在VB平台上开发一个应用程序,要完成的工作就是: 需求分析:对要解决的问题进行数据描述和功能描述。 界面设计:根据应用程序的功能和用户的特点,设计界面。包括建立窗体、在窗体上建立各种图形对象并设计他们的属性值。 设计时间驱动程序:为各种对象编写某事件发生时执行的程序代码。 测试:一个应用程序往往要经过反复的测试、修改才能交付使用。 实现菜单选项: VB的集成开发环境或称IDE,有多个部分组成,包含了标题栏、菜单栏、工具栏、控件栏以及窗体设计器窗口、属性窗口、代码窗口、窗体布局等。覆盖了应用程序的设计、编辑、编译和调试的所有功能。VB通过工程来组织应用程序的开发,使用工程来管理构成应用程序的所有文件。一个程序一般由若干窗体、标准模块以及应用环境组成。系统通过工程菜单对工程进行管理。系统允许同时打开和管理多个工程。用鼠标单击某个菜单项,即可打开该菜单,然后用鼠标单击菜单中的某一条,就执行相应的命令,VB是汉化的,所有的菜单命令都以汉字标出。 实现工具栏: 快捷工具栏以图标形式提供了部分常用的菜单命令的功能,用鼠标指向它时显示工具按钮的名称和功能。应用时非常方便的。 帮助: VB的联机帮助是一个较为完善的帮助系统,帮助菜单的各个命令用于启动这个系统,同时还具有通向Internet上有关VB站点的菜单选项。VB联机帮助系统包括几乎所有的VB语言参考手册中的信息内容以及数以百计的程序示例和几十相当有用的表格。VB联机帮助系统可以进行上下文相关查询,即用户可以在任何时候按下F1键,查看与当前进行的工作相关的帮助。这是一个非常有用 7 的功能,也是学习和使用VB过程中的一个有利工具。 关于系统: 由以上关于VB的介绍我们可以了解到:应用VB帮助我们实现教师排课和教室安排优化管理系统是非常方便、可靠、有效的 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 。 2.2.3 VB在系统中的应用 1.创建应用程序的主要步骤 (1)创建应用程序的界面 界面是用户和程序交互的桥梁,用VB创建的标准的Windows应用程序的界面一般由窗体和按钮、菜单、文本框和图象框等构成。根据程序的功能要求和用户与程序之间的信息交流的需要,来确定需要哪些对象,规划界面的布局。 (2)设置界面上各个对象的属性 根据规划的界面要求设置各个对象的属性,比如对象的面貌、名称、颜色、大小等。 大多数属性取值既可以在设计时通过属性窗口设定,也可以在程序代码中通过编程早程序运行时修改。 (3)编写程序响应的程序代码 界面仅仅决定程序的外观,设计完界面后就要通过“代码编辑器”窗口来添加代码,实现一些在接受外界信息后得到的响应、信息处理等任务。 (4)保存工程 一个VB程序就是一个工程,在设计一个应用程序时,系统会建立一个扩展名为.vbp的工程文件,工程文件包含了该工程所建立的所有文件的相关信息,保存工程就同时保存了该工程的所有相关文件。比如当设计界面时产生的窗体被保存在扩展名为.frm和.frx的窗体文件中。在打开一个工程时,在工程中的所有相关文件同时被装载。 (5)运行和调试程序 通过“运行”菜单中的选项来运行程序,当程序出现错误时,VB系统可 提供信息提示,也可通过“调试”和“运行”菜单来查找和排除错误。 (6)生成可执行程序 8 为了使程序可以脱离VB环境来运行程序,通过“文件”菜单中的“生成工程1.exe”命令来生成可执行(.exe)。此后即可直接执行该文件。在生成执行文件后,再通过安装向导将所有相关文件打包,就可以生成一个软件产品在Windows环境下安装独立运行。 2.创建用户界面 (1)对象 VB的对象有自己的属性、方法、事件,可以把属性看作一个对象的性质,把方法看做对象的动作,把时间看作对象的响应。VB是一种面向对象的编程语言,通过对属性、方法和事件的编程来实现各种功能。 (2)对象的属性 属性是对象的数据,用来表示对象的状态。属性有属性值,改变对象的属性值就可以改变对象的状态。 属性的设置可以在“属性“窗口中完成,也可以在运行时可设置的属性为读写属性,只能读取的属性叫只读属性。 语法: 对象名.属性名=表达式 如果省略对象名则对象为当前的窗体 (3)对象的方法 对象的方法决定了对象要执行的动作,方法中的代码是看不见的,可通过调用来使用某个对象的方法 语法:[对象名].方法名[(参数1,参数2,„)] (4)对象的事件 时间是对象的响应,VB的应用程序是由事件驱动的。也就是说,只有当事件发生时,响应事件的程序才会运行。如果没有事件的发生,则整个程序就处于停滞状态。 在VB中,事件是能被对象识别的动作。VB编程的核心就是为每个要处理的事件编写相应事件的过程代码。 (5)创建窗体 ?窗体的属性 9 在创建工程时,VB为自动加入的空白窗体设置了默认属性。设计窗体的第 一步是设置它的属性。窗体的属性很多,按类可分为: ?.杂项属性 ?.外观属性 ?.位置属性 ?.行为属性 ?.字体属性 ?.DDE属性 ?.缩放属性 ?窗体的方法 窗体有很多方法,通过代码中调用来执行。 窗体最常用的是Show方法,用于显示窗体。 常见的方法还有: Hide 隐藏窗体,使窗体不可见 Refresh 刷新窗体 Move 移动窗体 Print 在窗体中显示文本 Line,Circle 在窗体中绘制直线、矩形和圆 ?窗体的事件 窗体作为对象能够对事件做出响应 Activate和Deactivate事件 Initialize事件 Load事件 Unload事件 Click和DblClick事件 Resize事件 界面样式 SDI界面 单文档界面 MDI界面 多文档界面 (6)控件 10 VB的控件分为内部控件、ActiveX控件和可插入对象三类。 ?内部控件 内部控件是又VB本身提供的控件,也称常用控件,这些控件通常显示在控件箱中。 ?ActiveX控件 ActiveX控件是VB控件箱中扩充部分,这些控件在使用前必须添加到工具箱中。 ?可插入对象 可插入对象是由其他应用程序创建的对象,利用可插入对象,就可以在VB程序中使用其他应用程序的对象。 (7)常用控件 如:文本框、标签框、组合框、复选框、命令按钮等, (8)控件数组 控件数组是一组具有相同名称、类型和事件过程的控件。一个控件数组至少应有一个元素,元素的个数最多可达32767。同一控件数组可以设置不同的属性值。 在设计时,控件数组比直接向窗体添加多个同类型的控件占用的资源少,控件数组中的控件元素可以共享代码。控件数组常用于实现菜单控件和选项按钮分组。 2.3 小结 本章主要介绍了此次游戏开发所用的技术软件Visual Basic进行了一定的介绍。同时对Visual Basic的优点,现今的发展情况,所拥有的功能给出了说明。还说明了这次游戏设计中Visual Basic的编程环境是在Windows,主要是面向对象的编程。还介绍了Visual Basic在系统中的应用。 11 第三章 系统总体规划 3.1 系统功能简介 3.1.1 24点纸牌简介 任意给的四张扑克牌(不包括大小王),只能够用加、减、乘、除以及适当的括号连接着四张牌使得结果为24,或者宣布根本就是无解的。需要注意的是,每张牌必须且运算一次;J、Q、K可设置为11、12、13。 使用本程序其实很简单,按[Start]后,程序会任意给出四张牌,在左边的 、5、4、1按钮中也能看到相应的数值,只要输入相应的表达式就可以了。如:6这四个数,输入表达式为:6/(5/4-1)即可;如果你认为本题无解,那么你不必输入任何数值直接按回车就可以,程序会验算答题是否准确。如果输入的数据有错,那么程序会自动定位到出错的地方,以方便用户修改。 本程序还有一个Test功能,用于自定义出牌值。即:可以自己任意给出四个(1-13)的整数,按[OK]键后由程序自动算出答案。 3.1.2 拼拼图简介 根据右上角的小图片在大图中任意移动各分块,把图拼出来。按[新游戏]键重新开始游戏,按[设置]键出现设置游戏界面。在该界面中,用户可以从已有的图片中选出自己喜欢的图片进行游戏,也可以使用载入图片,到其他文档中挑自己喜欢的图片加载进去。点击[确定]即完成游戏设置。 按[退出]键直接退出游戏,按[关于]键显示版权信息。主要说明版权所有。 3.2 系统开发方法 12 3.2.1 游戏总界面设计 图3-1 游戏主界面 该截面为游戏进入游戏的最初界面,按[欢迎进入游戏世界]键,则进入如下界面: 图3-2 游戏分类界面 在该界面中分了4类游戏,按任意一个键即出现游戏选择界面,这4类中的界面大致相同,界面如下: 13 图3-3 选择游戏界面 按该界面上的键直接出来游戏窗口,其主要代码很简单,如下: Private Sub Command1_Click() Shell "f:/智能24" End Sub Private Sub Command2_Click() Shell "f:/旋转" End Sub 3.2.2 24点纸牌的开发 (1) 主界面设计 图3-4 24点纸牌主界面 按[Start]后,程序会任意给出四张牌,在左边的按钮中也能看到相应的数 14 值,只要输入相应的表达式就可以了。如:6、5、4、1这四个数,输入表达式为:6/(5/4-1)即可;如果你认为本题无解,那么你不必输入任何数值直接按回车就可以,程序会验算答题是否准确。如果输入的数据有错,那么程序会自动定位到出错的地方,以方便用户修改。 主要代码如下: Private Sub AnswerButton_Click() Dim iAnswer As Integer iAnswer=OperatorModule.Operator() '调用24点表达式计算函数 If iAnswer = 24 Then 'operater函数能返回24的值说有解 Text1.Text = OperatorModule.OperateorString + "=24" Else '答题错误所要做的动作 Text1.Text = "本题无解 " End If OKButton.Enabled = False AnswerButton.Enabled = False TestButton.Enabled = True StartButton.Enabled = True TimeButton.Enabled = True StartButton.SetFocus Timer1.Enabled = False '进程停止走动 If Trim$(Text1.Text) <> "" Then '用户选择本题有解状态 以下if...then 中为有解状态所要做的动作 If InputNumber(Text1.Text) = True And InputOperator(Text1.Text) = True Then If OperatorFunction(Text1.Text) <> "表达式出错" Then '调用表达式OperatorFunction 如果表达式没错则执行下面的步骤 If OperatorFunction(Text1.Text) = 24 Then '答题正确所要做的动作 15 a = MsgBox("恭喜~你答对了 ^_^", 0 + 64 + 0, "正确") If CheckTop10("c:\top10.txt", 14) = True Then frmUsr.Show WriteTop10 strUsrName, "c:\top10.txt", 14 End If AnswerButton.Enabled = False TestButton.Enabled = True StartButton.Enabled = True TimeButton.Enabled = True StartButton.SetFocus Else '答题错误所要做的动作 a = MsgBox("对不起~你答错了", 0 + 16 + 0, "错误") StartButton.Enabled = False TimeButton.Enabled = False TestButton.Enabled = False AnswerButton.Enabled = True AnswerButton.ForeColor = &HFF& '使字体变成红色 AnswerButton.SetFocus End If '无论答题对与否都要做的动作 Text1.Text = Text1.Text + "=" + OperatorFunction(Text1.Text) Else '表达式出错 Timer1.Enabled = True '由于是用户输入出错所以进程续继走动 a = MsgBox("操作符出错,请检查后重试", 0 + 16 + 0, "错误") Text1.SelStart = Len(Text1.Text) '将光标定位在表达式的最后 Text1.SetFocus '将焦点定位在文本框上的错误位置上,使用户能够方便地修改输入上的错误 Exit Sub 16 '此时可以直接退出这个事件按钮 等用户重新输入表达式 End If Else Timer1.Enabled = True '由于是用户输入出错所以进程续继走动 If InputOperator(Text1.Text) = True Then '先判断表达式有没有错,后判断数字有没有错 a = MsgBox("对不起~你输入的数据有误 请检查后重试" + Chr$(13) + Chr$(10) + ReturnErrorString, 0 + 48, "数据有错") Else a = MsgBox("对不起~你输入的表达式有误 请检查后重试" + Chr$(13) + Chr$(10) + ReturnErrorString, 0 + 48, "表达式有错") End If Text1.SelStart = iFindError Text1.SelLength = iErrorLong Text1.SetFocus '将焦点定位在文本框上的错误位置上,使用户能够方便地修改输入上的错误 Exit Sub End If Else '用户选择本无题状态 Else....End If 为无解状态所要做的动作 iAnswer = OperatorModule.Operator() '调用24点表达式计算函数 If iAnswer = 24 Then 'operater函数能返回24的值说有解,所用户选择状态是错误的 a = MsgBox("对不起~你答错了 本题有解", 0 + 16 + 0, "错误") AnswerButton.Enabled = True AnswerButton.ForeColor = &HFF& '使字体变成红色 AnswerButton.SetFocus Else '答题错误所要做的动作 17 a = MsgBox("恭喜~你答对了 本题无解 ^_^", 0 + 64 + 0, "正确") Text1.Text = "本题无解" TestButton.Enabled = True StartButton.Enabled = True TimeButton.Enabled = True StartButton.SetFocus End If End If End Sub (2) Test界面设计 图3-5 24点纸牌测试界面 在主界面中,按[Test]键就会出现该界面。在该界面中,可以自己任意给出四个(1-13)的整数,按[OK]键后由程序自动算出答案。按[Clear]键可以重新再测试,按[Return]可以回到主界面。该界面中程序自动给出答案的主要代码如下: Private Sub TestCards(Num As Integer) '参数num是用户选择的数值 18 Dim iCount As Integer If iCardsNumber = 4 Then iCardsNumber = 0 If iCardsNumber = 3 Then TestNumberFour = True '用户已经选够了牌数 If TestNumberFour Then TestOKButton.Enabled = True TestOKButton.SetFocus Else TestOKButton.Enabled = False End If Randomize '初始化随机 tt = Int(Rnd() * 4 + 1) '产生一个随机数 Select Case tt '用于显示四种不同种类的牌 Case 1 iCount = 0 + Num Case 2 iCount = 13 + Num Case 3 iCount = 26 + Num Case 4 iCount = 39 + Num End Select Label1.Caption = "" iRndCardsNumber(iCardsNumber + 1) = Num '将数值装入数组以便计算时使用 CardsPictureClip.Picture = CardsImageList.ListImages(iCount).Picture Dim a Dim W As Integer W = Int(Rnd * 3 + 1) '随机产生一种特殊显示模式 19 a = px(CardsPicture(iCardsNumber), CardsPictureClip, W) CardsPicture(iCardsNumber).Picture = CardsImageList.ListImages(iCount).Picture iCardsNumber = iCardsNumber + 1 End Sub (3)使用说明界面设计 这几个界面主要用于向用户说明如何玩这个游戏,各界面上的按钮如何使 用。同时也说明版权所有。其主要代码为: Private Sub Form_Load() TitleBar.Width = Form2.ScaleWidth TitleBar.Top = 0 TitleBar.Left = 0 Picture1.Left = TitleBar.Width - Picture1.Width - 100 Picture1.Top = 25 StartHelp.Top = 2040 StartHelp.Left = 360 StartHelp.Visible = True TestHelp.Top = 2150 TestHelp.Left = 360 TestHelp.Visible = False Off_OnHelp.Top = 2100 Off_OnHelp.Left = 360 Off_OnHelp.Visible = False TimeHelp.Top = 2040 TimeHelp.Left = 360 TimeHelp.Visible = False OtherHelp.Top = 2040 OtherHelp.Left = 360 OtherHelp.Visible = False 20 StartButton.Visible = False End Sub '隐藏四个边框 Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) ButBorder(0).Visible = False ButBorder(1).Visible = False ButBorder(2).Visible = False ButBorder(3).Visible = False End Sub ? 开牌/答题界面 图3-6 24点纸牌开牌/答题 ? 时间设置界面 图3-7 24点纸牌时间设置界面 21 ? 开/关时间界面 图3-8 24点纸牌开/关时间界面 ? 测试界面 图3-9 24点纸牌测试界面 ? 其它界面 图3-10 24点纸牌其它界面 22 ? 作者界面 图3-11 24点纸牌作者界面 3.2.3 拼拼图的开发 (1)主界面设计 显示上次载入的外部图片,根据右上角的小图片在大图中任意移动各分块,把图拼出来。 按[新游戏]键重新开始游戏。游戏开始后,点击已被分割的图片,程序会自动判断上下左右任意一块是否为空,若为空,则移动到为空的位置。按[设置]键出现设置游戏界面。按[退出]键直接退出游戏,按[关于]键显示版权信息。 图3-12 拼拼图主界面 23 主要代码如下: Private Sub ImageElement_Click(Index As Integer) Dim RLflags As Boolean If ImageElement(0).BorderStyle = 0 Then Exit Sub moveFlags = False '已移动标志设为假 If Index = elementNum And Not moveFlags Then '图片移出最后单元 moveImage Index, 0 Gamewin '调用判断游戏是否成功子过程 End If If Index = 0 And Not moveFlags Then '图片移入最后单元 moveImage 0, elementNum End If '移动右列单元图片 If (Index Mod ColNum) = 0 And Not moveFlags And Index <> elementNum Then moveImage Index, Index - ColNum moveImage Index, Index + 1 If Index + ColNum <> elementNum Then moveImage Index, Index + ColNum End If RLflags = True End If '移动左列单元图片 If (Index + 1) Mod ColNum = 0 And Not moveFlags Then moveImage Index, Index - 1 moveImage Index, Index + ColNum moveImage Index, Index - ColNum RLflags = True End If '移动中间列单元图片 If Not Flags And Index And Not RLflags And Index <> elementNum Then moveImage Index, Index - 1 moveImage Index, Index + 1 24 moveImage Index, Index + ColNum moveImage Index, Index - ColNum End If End Sub Private Sub moveImage(Source As Integer, Target As Integer) '移动图片子过程 If Target >= 0 And Target <= elementNum Then '判断是否出界 '判断源单元,目标单元是否符合移动条件 If ImageElement(Target).Picture = 0 And ImageElement(Source).Picture <> 0 Then '移动图片及子单元索引标识 ImageElement(Target).Picture = ImageElement(Source).Picture ImageElement(Source).Picture = LoadPicture("") ImageElement(Target).Tag = ImageElement(Source).Tag moveFlags = True '已移动标志设为真 End If End If End Sub (2)游戏设置界面 图3-13 拼拼图游戏设置界面 在该界面中,可以从已有的图片中选出自己喜欢的图片进行游戏,也可以使 用载入图片,到其他文档中挑自己喜欢的图片加载进去。点击[确定]即完成游戏 设置。 25 主要代码如下: If Checkload.Value = 1 Then DispImage.Picture = GSppt!tempImage.Picture '选择选择框时,显示上次载入的外部图片 Else For i = 0 To optNum - 1 If Optpict(i).Value Then '取消选择框时,显示选项按钮选择的图片 DispImage.Picture = GSppt!ImageList1.ListImages(i + 1).Picture DispImage.Tag = Str(i) End If Private Sub cmnLP_Click() '载入外部图片 CD1.DialogTitle = "请选择游戏图片" CD1.Flags = cdlOFNHideReadOnly CD1.Filter = "JPEG文件(*.jpg)|*.jpg|BMP文件(*.bmp)|*.bmp" CD1.ShowOpen If CD1.FileName <> "" Then DispImage.Picture = LoadPicture(CD1.FileName) '显示载入图片 GSppt!tempImage.Picture = DispImage.Picture '保存载入图片 End If End Sub (3)关于界面设计 图3-14 拼拼图关于界面 版权所有说明。 26 3.3 系统开发环境 3.3.1 开发平台 系统开发平台:Windows2000 数据库管理系统:Microsoft Access 2000数据库和普通二进制文件作为数 据加载模块 3.3.2 运行平台 操作系统:WindowsMe and Windows2000(sp1\sp2\sp3\sp4) and WindowsXp CPU:p2mx266以上 内存:64MB以上 显示卡:兼容16位色显卡 3.3.3 输入输出设计 (1)输入设计 1(与人工录入有关的设备 键盘:标准键盘,具有Windows功能键。 鼠标:两键或三键鼠标小口或USB鼠标。 汉字输入法:拼音输入法、五笔输入法等。 2. 录入软件界面:本系统所有输入均支持鼠标和键盘两种输入方式。 3. 录入方式有两种:文本式和表单式。文本式录入主要的基础信息;而表单 在这里不怎么会用到。两种风格都设置了灵活多样的录 入方式,可通过数字或汉字的快速检索数据并提供列表 框和表单方式辅助数据信息输入。 (2)输出设计 本系统输出方式采用屏幕显示和打印机输出两种方式。 27 3.4 小结 本章主要对这次设计的游戏系统的总体规划做了阐述。该设计主要设计了两个游戏:24点纸牌和拼拼图。在该章节中主要对这两个游戏的运行方式,规则做了简单介绍。也说明了系统的开发方法,其中包括了界面的设计和相应界面的设计原则。并对这次游戏系统的开发平台,运行平台以及输入输出设计做了介绍。 28 第四章 系统功能模块设计 4.1 24点纸牌游戏公共模块 在Visual Basic中可以用公用模块来存放整个工程项目公用的函数、全局变量等。整个工程项目中任何地方都可以调用公用模块中的函数、变量,这样可以极大地提高代码的效率。 在项目工程中添加一个Module,保存为Module1.bas. 下面就可以添加代码了: While ((symb <> "#") Or (ops(ops_top) <> "#")) '如果获得的关健字不是表达式的结束符 或 从运算符数组得到的字符不是 # 则执行下面的循环步骤 If ((symb <> "+") And (symb <> "-") And (symb <> "*") And (symb <> "/") And (symb <> "(") And (symb <> ")") And (symb <> "#") And (symb <> "")) Then push_opds (symb) '数字进栈 symb = getch() '再获得一下关键字 Else '如果获得的是运算符,则执行下面的步骤 Select Case relation(ops(ops_top), symb) '将新获得的运算符跟运算符数组栈顶的相比较 Case "<" 'ops(ops_top)" 'ops(ops_top)>symb 则出栈 sy = pop_ops() '从运算符数组栈顶中获得一运算符 If sy = "" Then 29 '如果获得的运算符为空 则说明表达式的格式有错 返回出错消息 退出函数 OperatorFunction = "表达式出错" Exit Function End If b = pop_opds() '从数值数组栈顶获得一数字赋值给变量 b a = pop_opds() '再从数值数组栈顶获得一数字赋值给变量 a On Error GoTo erroroccured If ((sy <> "+") And (sy <> "-") And (sy <> "*") And (sy <> "/")) Or (sy = "/" And b = 0) Then OperatorFunction = "表达式出错" Exit Function End If opds_top = opds_top + 1 '数值数组栈顶指针向上移一位 opds(opds_top) = operate(a, sy, b) '运算后进栈 Case "" 'ops(ops_top) 与 symb 比较返回一个空值 那么执行下面的步骤 OperatorFunction = "表达式出错" Exit Function End Select End If Wend If opds_top = 0 Then ' 最后如果运算没有出错的话 那么opds_top因归位为0 OperatorFunction = Str$(opds(0)) Else erroroccured: OperatorFunction = "表达式出错" End If 30 End Function 4.2 拼拼图公共模块 Public Sub Init() Dim i As Integer, j As Integer Dim Number(elementNum - 1) As Integer '定义单元序号数组 For i = 1 To elementNum - 1 '随机产生单元序号 REP: Number(i) = Int((elementNum - 1) * Rnd + 1) For j = 1 To i - 1 If Number(i) = Number(j) Then GoTo REP Next j Next i GSppt!PictureClip1.Picture = GSppt!BGimage.Picture '分割图片 For i = 1 To elementNum - 1 '产生单元图片及索引标识 GSppt!ImageElement(Number(i)).Picture = GSppt!ImageElement(Number(i)).Tag = Str(i - 1) Next i '0单元设固定图片及索引标识 GSppt!ImageElement(0).Picture = GSppt!PictureClip1.GraphicCell(elementNum - 1) GSppt!ImageElement(0).Tag = Str(elementNum - 1) GSppt!DispImage.Picture = GSppt!BGimage.Picture '显示图片缩略图 GSppt!ImageElement(elementNum).Picture = LoadPicture("") '清空最后单元 End Sub 31 4.3 小结 在这章中,阐述了游戏系统的主要功能模块的设计,在Visual Basic中可以用公用模块来存放整个工程项目公用的函数、全局变量等。整个工程项目中任何地方都可以调用公共模块中的函数、变量。 32 第五章 总结与展望 5.1 全文总结 本文就简单地介绍了利用软件Visual Basic来编写简单实用的小游戏,说明Visual Basic的简单应用性,Visual Basic既继承了Basic语言简单易用的特点,又引入了如面向对象等一系列新的思想和元素,封装了Windows编程的复杂的一面,初学者可以像搭积木一样轻松地编写应用程序,而高级用户可以自如地编写核心代码而小必纠缠于界面。利用Visual Basic,专业人员可以实现其他任何Windows开发语言能够实现的功能,而初学者只要掌握几个简单的关键词就可以编写实用的应用程序了。可以说,从开发个人或小组使用的小工具到大型企业应用程序,都可以用Visual Basic来实现。 本系统的开发设计,充分利用了Visual Basic的基础程序设计,体现了Visual Basic在面向对象的可视化编程力面的高效、简节等特点。也明确了当前各大高校持续开设Visual Basic方面程序设计课程的必要性。同时为广大学生在学习Visual Basic方面提供了实际设计的参考。这些游戏的设计,使广大益智游戏爱好者们能够更方便的利用计算机来进行休闲和娱乐。 5.2 展望 由于时间有限,再加上某些原因,虽然这些游戏在一定程度上取得了成就,但也存在许多不足之处,还有很多需要改善的地方。 在界面设计中,我们的考虑主要集中在功能设计和实现方面,在界面的美观性方面,采用了比较简洁朴实的设计思路。 33 参考文献 第一版.北京.清华[1]杨正华,周荣彪,尹兵.Visual Basic游戏编程导学[M]. 大学出版社.2004年.73-107 [2] 唐大仕.Visual Basic程序设计[M].第一版.北京.清华大学出版社.2004 年.45-252 [3]松桥工作室.深入浅出Visual Basic程序设计[M].第一版.北京.中国铁道出 版社.2004年.41-281 [4]胡同森.赵剑峰.Visual Basic6.0程序设计教程[M].杭州.科学技术出版 社.2002.35-87 .陈宁.Visual Basic6.0程序设计.北京.高等教育出版社[5]孙燕 [M].2000.115-152 .清华大学出版社.2000[6]刘炳文,许蔓舒.Visual Basic程序设计教程[M].北京 年.81-131 [7]郭洪新.短信乐园(手机游戏)的开发与设计.天津工业大学硕士学位论 文.2003年.1-12 [8] 叶虹.校本教育游戏软件的设计研究.上海师范大学硕士学位论文.2004 年.38-69 34 致 谢 35 This boothwn outside, each car became a single organism which ate and drank and excreted through its ventilators. It talked or sometimes yelled through its ventilators, too. In went water and loaves of blackbread and sausage and cheese, and out came shit and piss and language. Human beings in there were excreting into steel helmets, which were passed to the people at the ventilators, who dumped them. Billy was a dumper. The human beings also passed canteens, which guards would fill with water. When food came in, the human beings were quiet and trusting and beautiful. They shared. Human beings in there took turns standing or lying down. The legs of those who stood were like fence posts driven into a warm., squirming, fatting, sighing earth. The queer earth was a mosaic of sleepers who nestled like spoons. Now the train began to creep eastward. Somewhere in there was Christmas. Billy Pilgrim nestled like a spoon with the hobo on Christmas night, and he fell asleep, and he traveled in time to 1967 again-to the night he was kidnapped by a flying saucer from Tralfamadore. Four Billy Pilgrim could not sleep on his daughters wedding night. He was forty-four. The wedding had taken place that afternoon in a gaily striped tent in Billy's backyard. The stripes were orange and black. Billy and his wife, Valencia, nestled like spoons in their big double bed. They were jiggled by Magic Fingers. Valencia didn't need to be jiggled to sleep. Valencia was snoring like a bandsaw. The poor woman didn't have ovaries or a uterus any more. They had been removed by a surgeon-by one of Billy's partners in the New Holiday Inn. There was a full moon. Billy got out of bed in the moonlight. He felt spooky and luminous felt as though he were wrapped in cool fur that was full of static electricity. He looked down at his bare feet. They were ivory and blue. Billy now shuffled down his upstairs hallway, knowing he was about to be kidnapped by a flying saucer. The hallway was zebra-striped with darkness and moonlight. The moonlight came into the hallway through doorways of the empty rooms of Billy's two children, children no more. They were gone forever. Billy was guided by dread and the lack of dread. Dread told him when to stop. Lack of it told him when to move again. He stopped. He went into his daughter's room. Her drawers were dumped. her closet was empty. Heaped in the middle of the room were all the possessions she could not take on a honeymoon. She had a Princess telephone extension all her own-on her windowsill Its tiny night light stared at Billy. And then it rang. Billy answered. There was a drunk on the other end. Bi 'Who killed me?" he would ask. And everybody knew the answer., which was this: "Billy Pilgrim.' Listen- on the tenth night the peg was pulled out of the hasp on Billy's boxcar door, and the door was opened. Billy Pilgrim was lying at an angle on the corner-brace, self-crucified, holding himself there with a blue and ivory claw hooked over the- sill of the ventilator. Billy coughed -when the door was opened, and when he coughed he shit thin gruel. This was in accordance with the Third Law of Motion according to Sir Isaac Newton. This law tells us that for every action there is a reaction which is equal and opposite in direction. This can be useful in rocketry. The train had arrived on a siding by a prison which was originally constructed as an extermination camp for Russian prisoners of war. The guards peeked inside Billy's car owlishly, cooed calmingly. They had never dealt with Americans before, but they surely understood this general sort of freight. They knew that it was essentially a liquid which could be induced to flow slowly toward cooing and light. It was nighttime. The only light outside came from a single bulb which hung from a pole-high and far away. All was quiet outside, except for the guards, who cooed like doves. And the liquid began to flow. Gobs of it built up in the doorway, plopped to the ground. Billy was the next-to-last human being to reach the door. The hobo was the last. The hobo could not flow, could not plop. He wasn't liquid any more. He was stone. So it goes. Billy didn't. want to drop from the car to the ground. He sincerely believed that he would shatter like glass. So the guards helped him down, cooing still. They set him down facing the train. It was such a dinky train now. 36 There was a locomotive, a tender, and three little boxcars. The last boxcar was the railroad guards' heaven on wheels. Again-in that heaven on wheels-the table was set. Dinner was served. At the base of the pole from which the light bulb hung were three seeming haystacks. The Americans were wheedled and teased over to those three stacks, which weren't hay after all. They were overcoats taken from prisoners who were dead. So it goes. It was the guards' firmly expressed wish that every American without an overcoat should take one. The coats were cemented together with ice, so the guards used their bayonets as ice picks, pricking free collars and hems and sleeves and so on, then peeling off coats and handing them out at random. The coats were stiff and dome-shaped, having conformed to their piles. The coat that Billy Pilgrim got had been crumpled and frozen in such a way, and was so small, that it appeared to be not a coat but a sort of large black, three-cornered hat. There were gummy stains on it, too, like crankcase drainings or old strawberry jam. There seemed to be a dead, furry animal frozen to it. The animal was in fact the coat's fur collar. Billy glanced dully at the coats of his neighbors. Their coats all had brass buttons or tinsel or piping or numbers or stripes or eagles or moons or stars dangling from them. They were soldiers' coats. Billy was the only one who had a coat from a dead civilian. So it goes. And Billy and the rest were encouraged to shuffle around their dinky train and into the prison camp. There wasn't anything warm or lively to attract them-merely long, low, narrow sheds by the thousands, with no lights inside. Somewhere a dog barked. With the help of fear and echoes and winter silences, that dog had a voice like a big bronze gong. Billy and the rest were wooed through gate after gate, and Billy saw his first Russian. The man was all alone in the night-a ragbag with a round, flat face that glowed like a radium dial. Billy passed within a yard of him. There was barbed wire between them. The Russian did not wave or speak, but he looked directly into Billy's soul with sweet hopefulness, as though Billy might have good news for him-news he might be too stupid to understand, but good news all the same. Billy blacked out as he walked through gate after gate. He came to what he thought might be a building on Tralfamadore. It was shrilly lit and lined with white tiles. It was on Earth, though. It was a delousing station through which all new prisoners had to pass. Billy did as he was told, took off his clothes. That was the first thing they told him to do on Tralfamadore, too. A German measured Billy's upper right arm with his thumb and forefinger, asked a companion what sort of an army would send a weakling like that to the front. They looked at the other American bodies now, pointed out a lot more that were nearly as bad as Billy's. One of the best bodies belonged to the oldest American by far, a high school teacher from Indianapolis. His name was Edgar Derby. He hadn't been in Billy's boxcar. He'd been in Roland Weary's car, had cradled Weary's head while he died. So it goes. Derby was forty-four years old. He was so old he had a son who was a marine in the Pacific theater of war. Derby had pulled political wires to get into the army at his age. The subject he had taught in Indianapolis was Contemporary Problems in Western Civilization. He also coached the tennis team, and took very good care of his body. Derby's son would survive the war. Derby wouldn't. That good body of his would be filled with holes by a firing squad in Dresden in sixty-eight days. So it goes. The worst American body wasn't Billy's. The worst body belonged to a car thief from Cicero, Illinois. Ms name was Paul Lazzaro. He was tiny, and not only were his bones and teeth rotten, but his skin was disgusting. Lazzaro was polka-dotted all over with dime-sized scars. He had had many plagues of boils. Lazzaro, too, had been on Roland Weary's boxcar, and had given his word of honor to Weary that he would find some way to make Billy Pilgrim pay for Weary's death. He was looking around now, wondering which naked human being was Billy. The naked Americans took their places under many showerheads along a white-tiled wall. There were no faucets they could control. They could only wait for whatever was coming. Their penises were shriveled and their balls were retracted. Reproduction was not the main business of the evening. An unseen hand turned a master valve. Out of the showerheads gushed scalding rain. The rain was a blow-torch that did not warm. It jazzed and jangled Billy's skin without thawing the ice in the marrow of his long bones. The Americans' clothes were meanwhile passing through poison gas. Body lice and bacteria and fleas were dying by the billions. So it goes. And Billy zoomed back in time to his infancy. He was a baby who had just been bathed by his mother. Now his mother wrapped him in a towel, carried him into a rosy room that was filled with sunshine. She unwrapped him, laid him on the tickling towel, powdered him between his legs, joked with him, patted his little jelly belly. Her palm on his little jelly belly made potching sounds. Billy gurgled and cooed. 37 And then Billy was a middle-aged optometrist again, playing hacker's golf this time- on a blazing summer Sunday morning. Billy never went to church any more. He was hacking with three other optometrists. Billy was on the green in seven strokes, and it was his turn to putt. It was an eight-foot putt and he made it. He bent over to take the ball out of the cup, and the sun went behind a cloud. Billy was momentarily dizzy. When he recovered, he wasn't on the golf course any more. He was strapped to a yellow contour chair in a white chamber aboard a flying saucer, which was bound for Tralfamadore. 'Where am I?' said Billy Pilgrim. 'Trapped in another blob of amber, Mr. Pilgrim. We are where we have to be just now-three hundred million miles from Earth, bound for a time warp which will get us to Tralfamadore in hours rather than centuries.' 'How-how did I get here?' 'It would take another Earthling to explain it to you. Earthlings are the great explainers, explaining why this event is structured as it is, telling how other events may be achieved or avoided. I am a Tralfamadorian, seeing all time as you might see a stretch of Rocky Mountains. All time is all time. It does not change. It does not lend itself to warnings or explanations. It simply is. Take it moment by moment, and you will find that we are all, as I've said before, bugs in amber.' 'You sound to me as though you don't believe in free will,' said Billy Pilgrim. 'If I hadn't spent so much time studying Earthlings,' said the Tralfamadorian, 'I wouldn't have any idea what was meant by "free will." I've visited thirty-one inhabited plants in the universe, and I have studied reports on one hundred more. Only on Earth is there any talk of free will.' Five Billy Pilgrim says that the Universe does not look like a lot of bright little dots to the creatures from Tralfamadore. The creatures can see where each star has been and where it is going, so that the heavens are filled with rarefied, luminous spaghetti. And Tralfamadorians don't see human beings as two-legged creatures, either. They see them as great millipedes with babies' legs at one end and old people's legs at the other,' says Billy Pilgrim. Billy asked for something to read on the trip to Tralfamadore. His captors had five million Earthling books on microfilm, but no way to project them in Billy's cabin. They had only one actual book in English, which would be placed in a Tralfamadorian museum. It was Valley of the Dolls, by Jacqueline Susann. Billy read it, thought it was pretty good in spots. The people in it certainly had their ups-and-downs, ups-and-downs. But Billy didn't want to read about the same ups-and-downs over and over again. He asked if there wasn't, please, some other reading matters around. 'Only Tralfamadorian novels, which I'm afraid you couldn't begin to understand,' said the speaker on the wall. 'Let me look at one anyway.' So they sent him in several. They were little things. A dozen of them might have had the bulk of Valley of the Dolls-with all its ups-and-downs, up-and-downs. Billy couldn't read Tralfamadorian, of course, but he could at least see how the books were laid out-in brief clumps of symbols separated by stars. Billy commented that the clumps might be telegrams. 'Exactly,' said the voice. 'They are telegrams?' 'There are no telegrams on Tralfamadore. But you're right: each clump of-symbols is a brief, urgent message describing a situation, a scene., We Tralfamadorians read them all at once, not one after the other. There isn't any particular relationship between all the messages, except that the author has chosen them carefully, so that, when seen all at once, they produce an image of life that is beautiful and surprising and deep. There is no beginning, no middle, no end, no suspense, no moral, no causes, no effects. What we love in our books are the depths of many marvelous moments seen all at one time.' Moments after that, the saucer entered a time warp, and Billy was flung back into his childhood. He was twelve years old, quaking as he stood with his mother and father on Bright Angel Point, at the rim of Grand Canyon. The little human family was staring at the floor of the canyon, one mile straight down. 'Well,' said Billy's father, manfully kicking a pebble into space, 'there it is.' They had come to this famous place by automobile. They had had several blowouts on the way. 'It was worth the trip,' said Billy's mother raptly. 'Oh, God was it ever worth it.' Billy hated the canyon. He was sure that he was going to fall in. His mother touched him, and he wet his pants. There were other tourists looking down into the canyon, too, and a ranger was there to answer questions. A Frenchman who had come all the way from France asked the ranger in broken English ff many 38 people committed suicide by jumping in. 'Yes, sir,' said the ranger. 'About three folks a year.' So it goes. And Billy took a very short trip through time,, made a peewee jump of only ten days, so he was still twelve, still touring the West with his family. Now they were down in Carlsbad Caverns, and Billy was praying to God to get him out of there before the ceiling fell in. A ranger was explaining that the Caverns had been discovered by a cowboy who saw a huge cloud of bats come out of a hole in the ground. And then he said that he was going to mm out all the lights., and that it would probably be the first time in the lives of most people there that they had ever been in darkness that was total. Out went the lights. Billy didn't even know whether he was still alive or not. And then something ghostly floated in air to his left. It had numbers on it. His father had taken out his Pocket watch. The watch had a radium dial. Billy went from total dark to total light, found himself back in the war, back in the delousing station again. The shower was over. An unseen hand had turned the water off. When Billy got his clothes back, they weren't any cleaner, but all the little animals that had been living in them were dead. So it goes. And his new overcoat was thawed out and limp now. It was much too small for Billy. It had a fur collar and a g of crimson silk, and had apparently been made for an impresario about as big as an organ-grinder's monkey. It was full of bullet holes. Billy Pilgrim dressed himself. He put on the little overcoat, too. It split up the back, and, at the shoulders, the sleeves came entirely free. So the coat became a fur-collared vest. It was meant to flare at its owners waist, but the flaring took place at Billy's armpits. 'Me Germans found him to be one of the most screamingly funny things they had seen in all of the Second World War. They laughed and laughed. ham rose to his feet. His eyes twinkled as he started to address the young conservationists. "Hello again. You know most of the people here, including your teachers." He made a sweeping gesture in their direction. For some reason they reminded Susan of sheep--and she bit her lip to stop herself giggling. "But," Bellingham added, "there's one very important person you haven't met ... Captain James Alexander." A lean, distinguished-looking man with grey hair, kind but shrewd brown eyes and a firm jaw raised a hand in greeting. Bellingham continued: "Captain Alexander--Jim to his friends, which you will all become if you follow orders--is the master of Sea Shepherd. As far as everyone on board is concerned, he's Alexander the Great ... his word is law." Captain Alexander laughed, then introduced the two men with him. They were First Officer Philip Grant and Radio Officer Leslie Curtis. Bellingham sat down, reaching for the menu. "I dunno about you lot, but I'm starving." Two white-coated stewards padded in and began to circulate around the table. Gary ordered mushroom soup, quiche and salad, and fruit salad for dessert. Susan asked for the same, except that she wanted mixed ice-cream. Vanessa dithered daintily over the menu, seeking Yves' advice. She also consulted Darren, whose only retort was "Please yourself". Soon the six were tucking in as though they hadn't eaten for a week. When appetites were satisfied, the clatter gave way to chatter. Dinner over, some of the youngsters were now looking round rather restlessly. Bellingham called for quiet, then said: "Before you leave, a couple of points. Tomorrow's schedule is on the notice-board outside. Do read it. I don't know what time you usually go to bed, but I suggest you turn in early. We've got a heavy programme ahead--and this isn't a joy-ride." Catching sight of Darren's miserable countenance, the naturalist hastily added: "It isn't a funeral either, so there's no reason why we shouldn't enjoy ourselves. "Oh, and one more thing. If you have any questions, feel free to come and ask me. Sleep well, shipmates!" Saying goodnight to the others, Gary and Susan slipped out of the dining-room. They paused at the notice-board, then went up on deck. A simmering sun was just sinking into the sea. Gary strained forward, as if expecting to hear a hiss, and watched the waves which seemed to be on fire. Beside him Susan said nothing. Her eyes were drawn to the new moon, a hammock slung at an impossible angle between two clouds, and the first blooming of stars. Gulls mewed and snickered around the ship's stern. The lightest of breezes tiptoed across the 39 water. Gary took a deep breath. "Beats being at home, eh?" Susan sighed in agreement, forgetting that sooner or later she always felt homesick. "Damn!" Susan was scowling. Gary stared. "What's wrong?" "Vainessa--I've got to put up with her in my cabin. For months and months and months." "It's her cabin too," Gary pointed out. "Whose side are you on, Gary Izzard?" "Yours, of course. But Vanessa may not be crazy about sharing with you either." Susan pouted. "Huh!" Gary put his arm through hers. "Anyway, count your blessings. Imagine being Yves--with doleful Darren as a room-mate." She giggled. "Yeah ... things could be worse. I suppose I'll survive." They went on talking for a little longer. When Gary mentioned the thirteen chairs at the captain's table, Susan snorted. "Don't believe that stuff, do you?" He reddened slightly. "No, I ... I just ..." She interrupted: "I liked the captain and the first officer. Not so sure about the radio officer though ... Leslie Curtis. Gave me the creeps. Dunno why." Gary shrugged. "He seemed OK to me." Crossing the deck, they started down the companionway. "Get some beauty sleep--you need it," said Gary. He ducked. "And good luck with Vanessa!" Susan dawdled in the corridor. Then, straightening her back, she walked briskly to the door, turned the handle and stepped inside the cabin. It was empty but the sound of running water came from the bathroom. Susan glanced at the bottom bunk; yes, the nightdress was still there. Vanessa emerged from the bathroom, a fluffy pink towel wrapped round her head. "Hi." She treated Susan to a brilliant smile. Vanessa sat down decorously on the bunk and began to dry her hair. Susan stood, hands in pockets, uncertain what to say or do. She shuffled across the cabin and peered out of the porthole. The silence lengthened. Susan felt more and more uncomfortable. At last, turning, she blurted: "Um, Vanessa ... About the bunks. You weren't here when I moved in, and I meant to leave my stuff on the bottom bunk. The thing is ... would you mind changing?" Susan waited, heart thumping. Vanessa arched her carefully plucked eyebrows and said: "Of course I don't mind. I only took this bunk so as not to disturb you if I came in late." Susan smiled. Maybe Vanessa was a natural blonde. 40 Tucked up in the bottom bunk, Susan lay awake. Her brain buzzed with the day's events. Such a lot. And the voyage was only just starting. She pictured Gary, who always made an effort to be fair. He's probably right about that man Curtis. Why had she disliked the radio officer ...? Susan's eyelids drooped. She thought she heard the click of a cabin door. Yves or Darren going for a midnight stroll? Her curiosity stirred. Funny ... Susan fell asleep. She woke to find herself bathed in a buttery light, pouring through the porthole. Drowsily she wondered what she would do today. Then she noticed the bunk above her--like a low narrow ceiling--and realised where she was. At sea! Bound for adventure! Susan sat up, swung her legs sideways and stood stretching for a moment. No trace of sleepiness now. A series of purring snuffles rose from Vanessa's bunk. Susan chuckled. So glamour girls snored, did they? Ten minutes later Susan was on deck. She shivered with pleasure. The sun-spangled water folded and unfolded to the far horizon. The Atlantic, unimaginably wide and deep. Not a sign of land anywhere. Nice to be alone ... "Hello, Susan. Sleep well?" She frowned at Gary. "Wish you wouldn't creep up on me like that." Norman, who had been hidden by Gary, stepped into view. "Oh ... Good Morning," Susan said sweetly. Norman peered over the ship's side. "Sea's green," he commented. "That means it's murky with plants, rich feeding for fish. Blue water is poor in marine life." He took off his spectacles and began polishing them on a huge red handkerchief. Rather vaguely he added: "And did you know that barnacles, like those clinging to the bottom of this ship, might prove valuable to man? Their adhesive properties are being investigated to see if they can be used in tooth fillings and to mend bone fractures." Susan stifled a yawn. "Fascinating. By the way, Gary tells me you're an ace conjurer." Norman beamed. Just then Yves joined them. "No Darren?" queried Gary. "No, he's still fast asleep in his bunk." "Best place for him," muttered Susan. Immediately she felt guilty, and quickly went on: "That reminds me, did either of you go out late last night? I'm sure I heard your cabin door." Yves shook his head. "Not me. I couldn't wait to turnion to copy for the sole use of braille readers and those using the NLB Web Site has been given by the copyright owner. This permission is gratefully acknowledged. No unauthorised broadcasting, public performance or copying is permitted. Braille Page type: Title 9. Revelations It took a lot to annoy Yves, who would rather forgive and forget than let resentment fester. Despite everything, he'd been willing to tolerate his unco-operative room-mate. But that was before Darren 41 ng her watch. There was more "loot": a pocket calculator, a lighter, officers' brass buttons, ship's cutlery, a bundle of ten-dollar bills, a sealed packet, an orange pennant bearing the words "FRIENDS OF THE SEA OTTER". Seeing this last item, Susan had to giggle. "How on earth ...?" Three sharp raps at the door. Norman. Soon after, the door swung open - and in walked Darren. He froze. Only his eyes moved, missing no detail. Then, defiantly, he advanced to the bunk. "Hands off! That stuff's private, personal. I'll ..." "Report us?" Yves jeered. "Go ahead. You can explain how Vanessa's watch jumped into your bag." Darren wheeled, as if to break away, but the escape route was barred by Gary and Norman. 42
本文档为【简单小游戏设计—免费毕业设计论文】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_624976
暂无简介~
格式:doc
大小:399KB
软件:Word
页数:58
分类:工学
上传时间:2017-11-01
浏览量:34