FLASH CS4 实战项目——填数字游戏

萌到你眼炸
952次浏览
2021年01月01日 04:00
最佳经验
本文由作者推荐

情人节故事-小学生法制教育案例

2021年1月1日发(作者:杨大峥)


FLASH CS4 实战项目——填数字游戏
在具有交互效果的动画中,一般是通 过使用Flash组件与ActionScript来实现的。本实例
首先通过随机生成两个文本框中的 数值,然后运用ActionScript中的加减运算、赋值语句和条
件语句进行判断所输入的结果是 否正确来实现的,如图3-8所示。

图3-8 填数字游戏效果图


(1)新建一个520×367像素的空白文
档,并创建“背景”层,导入素材图像。然
后新 建“填数字游戏”图层,添加“填数字
游戏”文本并设置属性,如图3-9所示。

图3-9 导入素材并输入文本
(2)新建box1影片剪辑元件。在创建
的“文 本”图层中,选择第1帧并添加文本。
然后分别在第2帧和第3帧插入空白关键帧
并添加内容, 如图3-10所示。

图3-10 编辑图层内容
“+”号和“=号字体为“创艺简仿宋”,
字号为48。在第2帧将“对”元件拖

至舞台;在第3帧将“错”元件拖至舞
台。
(3)新建“输入框”图层,选择其第1
帧,执行【窗口】|【组件】命令,从【组
件】面板中拖入舞台三个文本框,设置其属性,并将其分别实例化。然后删除后两帧,如图
3-11所示。

图3-11 添加实例化对象
从左到右三个文本框的实例化名称依
次是numTxt1、numTxt2和 numTxt3,

三个文本框的【宽度】为54,高度为4
0。
(4)新 建“按钮”图层,分别在第1帧
和第2帧插入按钮组件。然后在

属性】检
查 器中,分别设置其实例化名称为okbtnt和
backbtn,如图3-12所示。

图3-12 添加实例化对象
(5)新建as图层,分别将前3帧转换
为关键帧, 执行【窗口】|【动作】命令,
为各帧添加停止播放代码“stop();”,如图3-
13所 示。



图3-13 为as图层各帧添加代码
(6)单击“场景 1”,返回舞台。新建
“组件”图层。然后把box1元件拖至舞台,
并设置其实例化名称为b oxContent,如图3-
14所示。

图3-14 导入元件并将其实例化
(7)新建“动作脚本”图层。按F9快
捷键,打开【动作】面板。创建输入文本框
和 按钮中文本样式的变量分别为styl和btnst
yle,并设置样式属性。代码如下:
var styl:TextFormat=new TextFormat();
创建输入文本框组件的文本样式
=35;
定义文本的字体大小
=0x000000;
定义文本的字体颜色
=;
定义文本的对齐方式为居中对齐
var btnstyle:TextFormat=new TextFormat();
创建按钮组件的文本样式
=14;
定义文本的字体大小
(8)用ActionScript代码定义输入文本
框和按钮 的样式,并设置输入文本框的编辑
方式和初始值等属性。代码如下:
=String((Math.
random()*5));
*获取0到5之间的随 机整数并赋给影片剪辑b
oxContent中的输入文本框numTxt2*
=String((Math.
random()*5+5));
*获取5到10之 间的随机整数并赋给影片剪辑
boxContent中的输入文本框numTxt3*
ct=
*定义影片剪辑boxContent中的输入文本框允
许输入的字符*
le=false;
*定义影片剪辑boxContent中的输入文本框nu
mTxt2的内容不可编辑*
le=false;
*定义影片剪辑boxContent中的输入文本框nu
mTxt3的内容不可编辑* le(
*为影片剪辑boxContent中的输入文本框numT
xt1应用文本样式*
le(
*为影片剪辑boxContent中的输入文本框numT
xt2应用文本样 式*
le(
*为影片剪辑boxContent中的输入文本框numT
xt3应用 文本样式*
=算算看
*定义影片剪辑boxContent中的按钮okbtn上显
示的文本*
le(
*为影片剪辑boxContent中的按钮okbtn应用文
本样式* (9)编写影片剪辑boxContent中按钮o
kbtn的鼠标单击事件函数buttoncl ick1()。如


下所示:
function buttonclick1(event:MouseEvent):void {
创建名称为buttonclick1的函数
var a:Number=Number(1.t
ext);
*将影片剪辑boxConten t中的输入文本框nu
mTxt1中的内容转换为数字类型并赋值给变量a*
var b:Number=Number(2.t
ext);
*将影片剪辑boxConten t中的输入文本框nu
mTxt2中的内容转换为数字类型并赋值给变量b*
var c:Number=Number(3.t
ext);
*将影片剪辑boxConten t中的输入文本框nu
mTxt3中的内容转换为数字类型并赋值给变量c*
var d:Number=c-b;
求变量c和b的差并赋给变量d
if (a==d) {
判断变量a和d的值是否相等
dPlay(2);
*影片剪辑boxContent跳转到第2帧,然后
播放*
=重新开始
*定义影片剪辑boxContent中的按钮backb
tn上显示的文本*
le(
nstyle);
*为影片剪辑boxContent中的按钮backbtn
应用文本样式*
} else {
dPlay(3);
*影片剪辑boxContent跳转到第3帧,然后
播放*
=重新开始
*定义影片剪辑boxContent中的按钮backb
tn上显示的文本*
le(
nstyle);
*为影片剪辑boxContent中的按钮backbtn
应用文本样式*
}
}
(10)编写影片剪辑boxContent中按钮
backbtn的鼠标单击事 件函数buttonclick2()。
如下所示:
function buttonclick2(event:MouseEvent):void {
创建名称为buttonclick2的函数
dPlay(1);
*影片剪辑boxContent跳转到第1帧,然后播
放*
le(
*为影片剪辑boxContent中的输入文本框nu
mTxt1应用文本样式*
le(
l);
*为影片剪辑boxContent中的输入文本框nu
mTxt2应用文本样式*
le(
l);
*为影片剪辑boxContent中的输入文本框nu
mTxt3应用文本样式*
=算算看
*定义影片剪辑boxContent中的按钮上显示
的文本*
le(
e);
*为影片剪辑boxContent中的按钮okbtn应用
文本样式*
=
*定义影片剪辑boxContent中的输入文本框
中的内容为空*
=String((M
()*5));
*获取0到5之间的随机整数并赋给影片剪辑
boxContent中的输入文本框numTxt2*
=String((M
()*5+5));
*获取5到10之间的随机整数并赋给影片剪
辑boxContent中的输入文本框numTxt3*
}


(11)定义监听影片播放事件,并编写
影片播放事件函数che ckframe()。代码如下:
addEventListener(_FRAME,checkfr
ame);
*对影片添加事件监听,当影片播放时,执行c
heckframe()函数*
function checkframe(event:Event):void {
创建名称为checkframe的函数
if (tFrame==1) {
*如果播放头在影片剪辑boxConten的时间轴
中的第1帧时*
if (!={
*如果影片剪辑boxContent中的输入文本
框numTxt1的内容为空*
ntListener(Mous
,buttonclick1);
*对影片剪 辑boxContent中的按钮okbtn
添加事件监听,当其被单击时,执行buttonclic k1()
函数*
}
} else {
否则
ntListener(Mouse
,buttonclick2);
*对影片剪辑boxContent中的按钮backbtn
添加事件监听,当其被单击时 ,执行buttonclick2()
函数*
}
}


天空之镜-元旦节图片


热干面怎么吃-禅与摩托车维修艺术


热和能-地震作文


友情名言-小学六年级英语作文


乌兰巴托的爸爸简谱-健康生活知识竞赛


爱很简单吉他谱-数学名人故事


称的多音字组词-安徒生童话有哪些


公用事业-皇帝的新衣故事