如何制作一个Flash游戏

作者: Sara Rhodes
创建日期: 13 二月 2021
更新日期: 1 七月 2024
Anonim
怎么做一个FLASH游戏 How to make a flash game
视频: 怎么做一个FLASH游戏 How to make a flash game

内容

Flash 是在浏览器中运行的游戏的流行格式。尽管这种格式在移动应用程序中失势,但许多优秀的游戏都是用这种格式编写的。 Flash 使用 ActionScript,这是一种易于学习的编程语言,可让您控制屏幕上的对象。

脚步

第 1 部分(共 3 部分):入门

  1. 1 在开始编码之前想出一个游戏(它的故事情节)。 Flash 制作简单的游戏,所以选择一种游戏类型并考虑一个概念。阅读文章如何制作电脑游戏。主要流派包括:
    • 无尽的奔跑。在这样的游戏中,角色自动移动,玩家只引导他跳过障碍物(或以其他方式与游戏互动)。
    • 打架。在这样的游戏中,主角必须在无休止的战斗/战斗中击败敌人。
    • 拼图。益智游戏。它们的范围从最简单的谜题(收集三个相同的球)到构成冒险游戏基础的复杂谜题。
    • 角色扮演游戏。在这样的游戏中,为了能够与各种对手战斗,需要培养主角(他的技能、外表、性格)。 RPG 游戏代码比最简单的游戏代码复杂得多。
  2. 2 Flash 更适合创建 2D (2D) 游戏。 您也可以在其中创建 3D 游戏(三维),但为此您需要非常了解编程语言和其他高级技术。几乎所有流行的 Flash 游戏都是 2D 游戏。
    • Flash 游戏最适合短期游戏,因为它们是在空闲时间(不超过 15 分钟)时玩的。
  3. 3 熟悉用于编写 Flash 游戏的 ActionScript3 (AS3) 编程语言。 您可以使用AS3的基本知识创建一个简单的游戏。
    • Amazon 和其他商店上有几本 ActionScript 书籍,以及许多教程和在线示例。
  4. 4 下载 Flash 专业版。 这是一款付费但最好的 Flash 游戏创建程序。还有其他类似的程序,包括免费程序,但它们通常缺乏兼容性,或者需要更长的时间才能实现相同的目标。
    • Flash Professional 是您创建游戏所需的唯一程序。

第 2 部分(共 3 部分):制作最简单的游戏

  1. 1 了解AS3代码的基本结构。 任何 AS3 代码都包含三个主要部分:
    • 变量。它们存储数据(数字、文本、对象等)。变量由代码定义 无功 一句话。

      var playerHealth: Number = 100; // "var" - 您正在定义一个变量。 // "playerHealth" 是变量的名称。 // "Number" 是一种数据类型(这里是数字)。 // "100" 是分配给变量的值。 // 任何一行 AS3 代码都以“;”结尾

    • 事件处理程序。他们寻找需要执行的某些事件并将它们报告给程序的其他部分。这是进入播放器并重复代码所必需的。通常,事件处理程序指的是函数。

      addEventListener (MouseEvent.CLICK, swingSword); // "addEventListener ()" - 事件处理程序的定义。 // "MouseEvent" 是预期执行的输入类别。 // ".CLICK" 是 MouseEvent 类别中的特定事件。 // "swingSword" 是一个在事件执行时触发的函数。

    • 功能。由关键字定义的程序部分;随着计划的进展,它们被称为。复杂的游戏代码可以包含数百个函数,而简单的游戏代码只能包含几个。函数可以按任何顺序排列,因为它们只在被调用时运行。

      函数swingSword (e: MouseEvent): void; {// 代码} // "function" 是在任何函数开头输入的关键字。 // "swingSword" 是函数的名称。 // "e: MouseEvent" 是一个可选参数,指示 // 事件处理程序将调用该函数。 // ":void" 是函数返回的值。 // 如果没有返回值,使用:void。

  2. 2 创建玩家将与之交互的对象。 对象包括精灵、角色或视频剪辑。在我们的简单游戏示例中,您将创建一个矩形。
    • 启动 Flash Professional。创建一个新的 ActionScript 3 项目。
    • 在工具栏上,单击矩形工具。根据您的 Flash Professional 配置,此面板可能出现在不同的位置。在场景窗口中绘制一个矩形。
    • 使用选择工具选择矩形。
  3. 3 设置对象的属性。 为此,请打开“更改”菜单并选择“转换为符号”(或按 F8)。在“转换为符号”窗口中,为对象指定一个易于识别的名称,例如敌人。
    • 找到属性窗口。窗口顶部是一个标有“样品名称”的空文本字段(如果您将鼠标悬停在该字段上)。输入您在将对象转换为符号时输入的相同名称(在我们的示例中为“敌人”)。这将创建一个可在 AS3 代码中使用的唯一名称。
    • 每个“样本”都是一个独立的对象,取决于代码。您可以复制已经创建的“样本”;为此,请多次单击“库”并将“样本”拖到“舞台”上。每次添加“样本”时,其名称都会更改(“敌人”、“敌人 1”、“敌人 2”等)。
    • 当您在代码中引用一个对象时,只需使用名称“sample”(在我们的示例中为“enemy”)。
  4. 4 改变样品的属性。 创建示例后,您可以更改其属性,例如调整大小。为此,输入样本名称,然后是“.”,然后是属性名称,然后是值:
    • 敌人.x = 150; 设置敌人对象沿 x 轴的位置。
    • 敌人.y = 150; 设置“敌人”对象沿 Y 轴的位置(Y 轴的原点位于“场景”的顶点)。
    • 敌人.旋转 = 45; 将敌方物体顺时针旋转 45°。
    • 敌人.scaleX = 3; 将“敌人”对象的宽度拉伸 3 倍。负值将翻转对象。
    • 敌人.scaleY = 0.5; 将对象的高度减半。
    • .
  5. 5 探索命令 痕迹 (). 它返回特定对象的当前值,是确定一切正常工作所必需的。您不应在游戏源代码中包含此命令,但您将需要它来调试程序。
  6. 6 使用上述信息创建一个基本游戏。 在我们的示例中,您将创建一个游戏,在该游戏中,您每次点击敌人时都会改变其大小,直到他的生命值耗尽为止。

    var敌人HP:数字= 100; // 设置敌人生命值的大小(游戏开始时为 100)。 var playerAttack: Number = 10; // 设置玩家点击敌人时的攻击强度。敌人.addEventListener (MouseEvent.CLICK,attackEnemy); // 该函数的动作直接针对“敌人”对象, // 即该函数仅在对象被点击时触发, // 而不是屏幕上的其他地方。 setEnemyLocation(); // 将敌人放置在屏幕上。 // 在游戏开始时运行。函数 setEnemyLocation(): void {enemy.x = 200; // 将敌人从屏幕左侧向右移动 200 像素。敌人.y = 150; // 将敌人从屏幕顶部向下移动 150 像素。敌人.旋转 = 45; // 将敌人顺时针旋转 45 度。 trace ("敌人的 x 值是",敌人.x,"敌人的 y 值是",敌人.y); // 显示敌人当前位置以供调试。 } function attackEnemy (e: MouseEvent): void // 创建一个函数来描述点击敌人时的攻击。 {enemyHP = 敌人HP - 玩家攻击; // 从对手的生命值中减去玩家的攻击力。 // 结果是敌人生命值的新值。敌人.scaleX =敌人HP / 100; // 根据敌人的新生命值更改宽度。 // 这个值除以 100 得到一个小数。敌人.scaleY =敌人HP / 100; // 根据敌人的新生命值改变高度。 trace("敌人有",敌人的HP,"HP 还剩"); // 显示失去的健康。 }

  7. 7 开始游戏。 打开管理菜单并选择测试。您的游戏将开始;单击敌人以调整其大小。调试信息将显示在输出窗口中。

第 3 部分(共 3 部分):高级技术

  1. 1 包裹。 它们(在单独的文件中)存储变量、常量、函数和其他信息;您可以将包导入到您的程序中。通过使用其他人已经创建的包,您将大大简化创建程序的任务。
    • 阅读本文以了解有关包如何工作的详细信息。
  2. 2 创建项目文件夹。 如果您正在创建具有多个图像和声音文件的游戏,请创建多个文件夹。这将使您不会对各种元素感到困惑,并将包存储在适当的文件夹中。
    • 创建一个基础项目文件夹。在基本文件夹中,需要创建一个用于存储图像的子文件夹“IMG”、一个用于声音文件的子文件夹“SND”和一个包含包和游戏代码的子文件夹“SRC”。
    • 在常量文件的 SRC 文件夹中创建一个游戏文件夹。
    • 此文件夹结构是可选的;它作为如何组织和组织项目元素的示例提供(这在大型项目的情况下尤其重要)。如果您正在创建一个简单的游戏(如我们的示例),则不需要创建任何文件夹。
  3. 3 为您的游戏添加声音。 在没有声音或音乐的情况下玩游戏会很快让任何玩家感到厌烦。您可以使用图层工具添加声音。在 Internet 上查找有关此的更多信息。
  4. 4 创建文件“常量”。 如果你的游戏中有很多常量在整个游戏中都不会改变,你可以创建一个“常量”文件来存储其中的所有常量。常数值是吸引力,角色的速度等。
    • 如果您正在创建“常量”文件,请将其放在相应的项目文件夹中,然后将其导入包中。例如,您创建一个 constants.as 文件并将其放置在游戏文件夹中。要导入它,您必须使用以下代码:

      包{导入游戏。*; }

  5. 5 查看其他开发商的游戏。 很多开发者不会公开他们游戏的代码,但是有很多教程和其他项目可以查看代码。这是学习一些最佳技术以帮助您创建优秀游戏的好方法。