如何制作Flash游戏

Flash是网页浏览器上很流行的动画格式,很多网站中都能见到这种格式的游戏。尽管面对日益增长的移动应用程序,Flash格式不再那么流行,但是很多好玩的游戏仍是采用Flash格式。Flash使用的语言是ActionScript,用它可以控制屏幕上出现的对象,而且十分易学。阅读本文,学习如何制作一个简单的Flash游戏。

开始制作

  • 01

    设计游戏。在编写代码之前,你要对你的游戏有个大概的设想。Flash适合制作一些比较简单的游戏,所以不要在游戏中加入过多的伤脑筋的设计。先选择一种游戏的类型,并且构思几种基本的设计,然后再开始制作。阅读本文可以了解更多有关游戏设计阶段的内容。常见的Flash游戏类型,包括: 跑酷游戏:游戏中的人物一直在跑,而玩家需要控制人物跳过障碍物,或以其它方式躲过。玩家通常只有一两种控制方式。 横轴格斗游戏:人物横向移动,击败身边的敌人才能继续前进。这种游戏中,通常有几种不同的动作来击败敌人。 解谜游戏:这种游戏需要让玩家解出谜题,从而过关。谜题类型多种多样,可以像《宝石迷阵》那种三消游戏一样简单,也可以像是在冒险游戏中出现的谜题一样复杂。 角色扮演游戏:这类游戏的核心在于角色的发展和提升,角色会在各种场景中遇到不同的敌人。尽管各个游戏的战斗机制不完全相同,但是大多数还是回合制。角色扮演游戏要比只有一个动作的游戏要复杂得多。

  • 02

    Flash擅长制作的游戏。Flash最适合制作2D游戏,尽管也可以制作3D游戏,但是这要需要用到更高级的编程语言,并且对语言有着深入的了解。几乎所有成功的Flash游戏都是2D游戏。 Flash游戏最适合小段时间玩。这是因为大多数Flash游戏玩家都会在一小段空闲时间玩游戏,比如休息时,也就是说游戏时间通常在15分钟或者更短的时间内。

  • 03

    熟悉AS3语言。制作Flash游戏需要用到AS3语言,为了成功的制作出游戏,你需要对它的工作原理有所了解。对如何在AS3中编程所有了解之后,你就能制作出简单的游戏了。 在亚马逊或者其他商店中,都有关于ActionScript语言的教程,网上也有很多教程和例子可供学习。

  • 04

    下载Flash Professional。这个软件是收费的,但是用它可以很快的制作出Flash游戏。同时它还包含很多功能(包括一些开源的功能),不过这些功能有的兼容性差,有的效率低。 Flash Professional是制作游戏唯一需要用到的软件。

写一个基本的游戏

  • 01

    了解AS3代码的基本构建块。在制作游戏的过程中,你可能会用到几种不同的代码结构。在AS3代码中,主要有三种类型的代码结构: 变量 —— 这是用来储存数据的地方。数据的类型种类很多,可以是数字、字符(字符串)、对象等等。使用var命令来定义变量,并且变量名只能是一个单词。 varplayerHealth: Number=; // “var”表示你要定义一个变量。 // “playerHealth”是变量的名字。 // “Number”是变量的类型。 // “100”是变量中的数值。 // 所有命令都以“;”结尾。 事件处理器 —— 事件处理器会在特定的事发生时,告诉程序之后该如何运行。这是玩家在输入和重复代码时所必须用到的。事件处理器通常会调用函数。 (MouseEvent. CLICK, swingSword ); // “addEventListener()” 定义事件处理器的类型。 // “MouseEvent”是事件的类型。 // “.CLICK”是事件中的特定动作。 // “swingSword”是事件发生后,需要用到的函数。 函数 —— 部分代码会有一个关键词作为名字,方便之后调用。游戏的运行离不开函数,复杂的游戏可能会用到数百条函数,而简单的游戏可能只需要用到几条函数。函数只有被调用时才会起作用,所以它们的顺序无所谓。 functionswingSword ( e:MouseEvent ): void; { //代码的位置 } // “function”是每个函数之前都要有的关键词。 // “swingSword”是函数名。 // “e:MouseEvent”是附加参数,表明函数是由该事件处理器调用的。 // “:void”是函数的返回值。如果无数据返回,使用:void。

  • 02

    创建对象。要制作游戏,你必须创建可以和玩家互动的对象。根据教程的不同,“对象”可能会叫做“精灵”、“演员”或者“影片剪辑”。要制作这个简单的游戏,你需要创建一个长方形。 打开Flash Professional。创建新的项目。 点击工具栏中的矩形工具。根据软件的配置不同,工具栏的位置也会不同。在当前窗口中画一个长方形。 用选择工具,选中长方形。

  • 03

    给对象指定属性。选中长方形之后,打开设计菜单,选择“转化为元件”(也可在选中之后,按下F8)。在“转化为元件”窗口中,给你的对象命名,比如“敌人”。 打开配置窗口。当鼠标悬停在窗口上方时,会出现一个叫“实例名”的空白文本框。输入上一步中你给对象的命名(“敌人”)。这样就创建了一个可以通过AS3语言交互的“名字”。 每一个“实例”都是单独的对象,都可以用代码进行控制。点击资源库标签,然后将实例拖进场景中,就可以复制已创建的实例。每添加一个实例,它的名字就会改变一次,以示区分(“敌人”、“敌人1”、“敌人2”等等)。 要在代码中使用对象,只需要输入它的名字即可,本例中就是“敌人”。

  • 04

    改变实例的属性。生成一个实例之后,你可以通过AS3改变它的属性。改变它的位置、调整它的大小,等等。输入实例和参数的数字,中间以“.”分隔,就可以改变它的属性: enemy.x = 150; 改变enemy在x轴上的位置。 enemy.y = 150; 改变enemy在y轴上的位置。y轴是从屏幕顶端开始计算的。 enemy.rotation = 45;让enemy顺时针旋转45度。 enemy.scaleX = 3;将enemy的宽延长3倍。输入负数的话,就会翻转对象。 enemy.scaleY = 0.5;将对象的高减半。

  • 05

    使用trace()命令检查。这个命令将当前值返回给对象,用来检查程序运行是否无误。在最终代码中不需要用到这个命令,通常使用这个命令来检查游戏的错误。

  • 06

    利用上述信息制作一个游戏。现在,你已经对它的核心功能有所了解了,现在你可以用它来制作一个小游戏。游戏是这样的:每次点击敌人都会改变它的大小,生命耗尽,游戏结束。 varenemyHP: Number=; // 将初始生命设为100。 varplayerAttack: Number=; // 设定玩家的攻击力。enemy. addEventListener (MouseEvent. CLICK, attackEnemy ); // 对对象使用这个函数,当对象被点击时才会生效,点击其它地方不会有效果。setEnemyLocation ( ); // 这个函数可以设定“敌人”的位置,在游戏开始时生效。 functionsetEnemyLocation ( ): void {enemy. x=; // 让“敌人”向右移动200像素。enemy. y=; // 让“敌人”向下移动150像素。enemy. rotation=; // 让“敌人”瞬时针转动45度 trace ( "enemy's x-value is", enemy. x, "and enemy's y-value is", enemy. y ); // 显示当前“敌人”的位置,从而进行调试。 } functionattackEnemy ( e:MouseEvent ): void // 创建“敌人”被点击时运行的函数。 {enemyHP = enemyHP - playerAttack; // 从生命值中减去攻击力,结果是剩余的生命值。enemy. scaleX= enemyHP /; // 根据新的生命值,改变宽度。除以100,转化为小数。enemy. scaleY= enemyHP /; // 根据新的生命值,改变宽度。 trace ( "The enemy has", enemyHP, "HP left" ); //输入“敌人”的生命值。 }

  • 07

    运行一下。完成上述代码之后,你就可以试试你的新游戏了。点击控制菜单,选择测试影片,游戏就开始了。点击“敌人”,看看它的大小是否变化了。Trace函数的输出结果会显示在结果窗口中。

进阶技巧

  • 01

    “包”的功能。ActionScript是基于Java设计,用到了很多和Java类似的包机制。“包”可以允许你用独立的文件储存变量、常量、函数和其它信息,然后将这些文件输入到程序中。使用现成的包可以简化游戏的制作过程。 阅读更多的文章来了解Java中“包”的功能。

  • 02

    建立对象文件夹。如果你的游戏当中需要用到很多图片和生效,那么你需要创建一个文件夹来保存它们。这可以方便你储存不同的数据,以及需要的软件包。 创建根目录,然后在根目录中,创建“img”文件夹,用来储存所有图像;创建“snd”文件夹,用来储存所有音效文件;创建“src”文件,用来储存所有用到的包和代码。 在“src”文件夹中,创建“Game”文件夹,用来储存游戏中的常量文件。 当然没有必要将文件夹的结构弄成这样,但是这可以方便你管理你的游戏和素材,特别是要用到很多对象的游戏。如果只是像上文中的小游戏一样简单,你就不需要用到这种文件夹结构。

  • 03

    给你的游戏添加音效。没有音效或音乐的游戏,很容易让人乏味。使用图层工具,可以给对象加上音效。详情可以参阅相关文章。

  • 04

    创建常量文件。如果游戏中的很多变量的值,自始至终都不变,那么你可以创建常量文件来储存它们,这可以方便调用。常量可以包含引力、玩家速度或者其它你需要经常调用的值。 如果你要创建常量文件,你需要将它们放到游戏的文件夹中,然后以包的形式输入。比如,你创建了一个常量文件,然后将它放到“Game”文件夹中。导入时,使用如下命令: { importGame. *; }

  • 05

    看看别人的游戏。尽管大多数开发者不会透漏所有的游戏代码,但是有很多教程和其它开放项目的代码可以供你参考,让你了解代码和它与对象的交互方法。这是一个很好的可以学习到很多进阶技巧,从而让你的游戏更出色的方法。

(0)

相关推荐

  • 【图文】怎么制作flash小游戏

    对于制作Flash来说,制作Flash游戏一直是一项很吸引人,也很有趣的技术,甚至以制作精彩的Flash游戏作为主要的目标.但是许多人难以顺利进行Flash游戏设计,使得进展缓慢,以至于最终放弃. 熟 ...

  • FLASH 如何制作拼图游戏(AS2)

    拼图游戏相信很多人都玩过,使用FLASH代码制作拼图游戏还是比较简单的,在这里就把如何制作简单说一下.最后有详细的代码及注释!这里是AS2版的,只要不低于FLASH8版本,都可以制作. 操作方法 01 ...

  • SWFText菜鸟也能制作Flash动画

    一款非常棒的 Flash 文本特效动画制作软件,可以制作超过 168 种不同的文本特效和 40 种背景特效,可以完全自定义文字属性,包括字体、大小、颜色等等,使用 SWFText 完全不需要任何的 F ...

  • 如何快速制作flash banner

    制作网页时,你是否想有一个属于自己的flash banner呢,其实并非你想象中那么困难,本教程为大家介绍如何使用Aleo Flash Intro Banner Maker制作flash banner ...

  • 硕思闪客菜单制作flash导航条图文教程

     如何利用硕思闪客菜单制作flash导航条?具体步骤是怎样的呢? 一:创建完全自定义的flash导航条。 1、打开硕思闪客菜单软件,新建“水平菜单”或者“垂直菜单”, 菜单编辑界面将会出现原始菜单按钮 ...

  • 微信公众号怎么制作小游戏?微信公众号互动小游戏制作方法

    导读:微信朋友圈里分享吸粉小游戏的人越来越多,这说明微信公众号商家充分利用游戏参与感强.传播快.粘度高等特点为自己的品牌宣传找到了一种全新的推广方式.那么这些微信吸粉小游戏是怎么制作的呢 微信吸粉小游 ...

  • SWFText简单制作flash动画

    本文介绍一款可以简单制作flash动画的工具,只要简单的设置参数,不需要很高深的技术也能做出令人满意的flash动画了,下面是成品,你可以看看. 步骤 1.首先先打开这个软件. 2.按照需要调好宽度. ...

  • 如何制作Flash元件

    元件是做Flash的时候的一个重要的东西,元件只要创建一次,就可在整个制作过程中重复使用. 当修改元件的内容后,所修改的内容就会运用到所有包含此元件的文件中,这样就使得用户对影片的编辑更加容易. 在制 ...

  • flash游戏修改大师

    flash游戏修改使用方法 操作方法 01 快捷键设置: Ctrl+E 打开编辑面板 Ctrl+J 打开强制跳帧面板 Ctrl+L 打开层级设定面板 Ctrl+D 关闭所有面板 Ctrl+F 开启全屏 ...