1、利用 Actiionscript 编程实现“弹小球”的方法研究摘 要 在中职教育中,充分利用学生爱玩游戏的特性,用简单的脚本代码实现实例游戏,能有效达到教学要求。本文通过“弹小球”的设计实例,介绍如何利用 Actionscript 编程实现游戏特效。 【关键词】Flash Actionscript Flash 实例 针对中职教学中 Flash 编程课程,利用 Actionscript 编程实现一些互动小游戏,引发学生的好奇心,将枯燥的脚本语言和鲜活的互动游戏糅为一体,提高学生的理解能力和动手能力。 1 Actionscript 编程语言特性 Actionscript 脚本语言是 Flash 内
2、置编程语言,可以实现一些特殊的动画效果。该语言可以帮助用户按照各自想法实现不同的繁杂场景,呈现出多种靓丽的特效。Actionscript 需要在 Flash 的动作面板中完成,动作面板有两种模式:标准模式和专家模式。点击进入动作面板后,左侧的上方是一个“动作”工具箱,单击前面的图标展开每一个条目,可以显示出对应条目下的动作脚本语句元素,双击选中的语句即可将其添加到编辑窗口。下方是一个“脚本”导航器。里面列出了 FLA 文件中具有关联动作脚本的帧位置和对象;单击脚本导航器中的某一项目,与该项目相关联的脚本则会出现在“脚本”窗口中,并且场景上的播放头也将移到时间轴上的对应位置上。双击脚本导航器中的
3、某一项,则该脚本会被固定。右侧部分是“脚本”编辑窗口,这是添加代码的区域。可以直接在“脚本”窗口中编辑动作、输入动作参数或删除动作。 本文通过简单实例“弹小球” ,讲解 Actionscript 中一些动作脚本的用法。 2 “弹小球”实例的设计与实现 2.1 常用的“弹小球”制作实例的 Actionscript 脚本语句 2.1.1 Flash.display.Shape 这是包 flash.display 下类 public class Shape,通过 ActionScript 绘图应用程序编程接口 (API) ,可使用 Shape 类创建简单形状。 Shape 类包括 graphics
4、属性,该属性可以从 Graphics 类访问方法。Shape 类继承顺序为DisplayObject、EventDispatch、Object。Sprite 类包括 graphics 属性,并且它包括不可用于 Shape 类的其它功能。 Sprite 对象支持鼠标单击事件,而 Shape 对象不支持。用 import 在 Actionscript 脚本语言中导入包 flash.display。 2.1.2 events.Event 这是包 flash.events 下类 public class Event,Event 继承自Object,Event 类作为创建 Event 对象的基类,当发生
5、事件时,Event 对象将作为参数传递给事件侦听器。对于许多事件(如由 Event 类常量表示的事件) ,此基本信息就足够了。但其它事件需要更详细的信息。Event 类的方法可以在事件侦听器函数中使用,能过影响事件对象的行为。对于某些关联事件可以做默认行为。用 import 在 Actionscript 脚本语言中导入包 flash.events。 2.1.3 utils.Timer 这是包 flash.utils 下类 public class Timer,timer 继承顺序为EventDispatcher 和 Objiect,Timer 类是 Flash Player 计时器的接口。可以
6、创建新的 Timer 对象,可以按照指定时间顺序运行代码。使用 start() 的方法启动计时器,添加事件侦听器,设置代码按照计时器间隔运行。对于创建的 Timer 对象取决于 swf 文件的帧频或 Flash Player 的环境,能基本进行间隔调度。用 import 在 Actionscript 脚本语言中导入包 utils.Timer。 2.1.4 events.TimerEvent 同(2)是属于一个类,但是在 events 下的创建一个 TimeEvent 对象,这是时间事件侦听器,用 import 在 Actionscript 脚本语言中导入包 flash.events。 2.1.
7、5 text.TextField 这是包 flash.text 下类 public class TextField,TeXField 继承顺序为 InteractiveObject、DisplayObject、EventDispatcher 和Object,TextField 类用于创建显示对象以显示和输入文本。若要动态创建文本字段,用 TextField()构造函数,允许设置、选择和操作在创作过程中或运行时创建的动态或输入文本字段中的文本。用 import 在Actionscript 脚本语言中导入包 flash.text。 2.1.6 addEventListene 这是一个侦听事件并对应
8、处理的函数,当侦听到对应事件后直接处理,它只接受 Event 对象为自己的唯一参数,并且不能返回任何结果。侦听器在侦听时分为三个阶段:捕获阶段、目标阶段和冒泡阶段。侦听顺序为捕获阶段目标阶段冒泡阶段。捕获阶段用于监听是否调用了监听函数,目标阶段确定目标本身,冒泡阶段表面监听目标回到原点。自带的 addEventListener 方法默认只有参数 event 事件类型。 2.2 “弹小球”实例的设计思路 明确“弹小球”互动小游戏的全部元件和交互对象,这个游戏中首先我们要设定好整个游戏的框架大小,其中有一个元件小球,并设定好大小和颜色,要有一个元件球板,并设定好大小和颜色。之后我们开始设计互动,小
9、球能够上下左右进行弹射,其中上左右是通过我们规定好的游戏框架的框壁,下是一个可以移动的球板,一开始小球移动速度很慢,每次弹射后加速一下,当加速至我们规定的最高速度后就保持不变。当我们的球板没有接住小球,让小球从游戏框中掉落,显示游戏结束,再重新开始,如此循环。 教学有法,而教无定法,教学中不能一味地死板硬套,只要涉及游戏就闻而变色。通过互动小游戏的设计,掌握 Actionscript 脚本编程的学习,捕捉学生的心理状态,发现教学契机,构建良好的教学方法,达到理想的教学效果。 参考文献 1陈民,吴婷.动画设计与制作M.南京:江苏教育出版社,2010,03. 2甘登岱.Flash8.0 版精彩动漫设计M.北京:航空工业出版社,2007. 作者简介 梁卓韬(1980-) ,男,安徽省合肥市人。硕士学位。现为安徽省汽车工业学校讲师,主要研究方向为计算机应用技术。 作者单位 安徽省汽车工业学校 安徽省合肥市 231131