FlashAS基础精典教程(3)
2008-04-02 11:06:09来源:互联网 阅读 ()
if (q1answer == 3){
totalCorrect = totalCorrect 1;
}
if (q2answer == 2){
totalCorrect ; //totalCorrect 其实是totalCorrect = totalCorrect 1;一个更简洁的写法,几乎少打了一半的字母啊。
}
// show the user's score in an on-screen text field
displayTotal = totalCorrect;
用人的语言描述:假如第一题选3,答对数加一,假如第二题选2,答对数加一,把答对题目数赋予另一变量
现在答对的题数是放到变量displayTotal中了,怎么显示?
在quiz end第20帧处建关键帧,键入"Thank you for taking the quiz! Your score final score is: /2"(谢谢回答问题,您最后成绩是答对了 /2道题)
在"/2"之前那个空白的地方放上一个文本框,菜单Text>>Options显示文本面板,把Static Text下拉改为Dynamic Text,顺便把Border/Bg的钩去掉,最后在Variable那一栏填上要显示的变量名displayTotal
您是不是和chocobo相同不耐烦了?快下载http://www.moock.orghttp://webdesign.chinaitlab.com/lect...oockQuizzes.zip ;吧,里面的quiz.fla就是本章的内容,其他的fla的内容也将会在后面讲到
第六章 再来补充一点AS知识
数据分类是很有必要的,象8005154556这样的一个数字是没有多大意义的,但是假如将他归类到电话号码:800-515-4556,那就有意义了。(这是WHO的电话啊?是不是MOOCK的?呵呵)
AS里面数据的类型相对其他语言已算少的,有:
* 字符串String 由一系列的characters组成,能够包含字母,数字和符号,一般用双引号""扩住(记住不要写了全角的“”)
* 数字Number
* 布尔值Boolean 用于条件判断的时候,只有两个值true和false
* Null and Undefined 这也是数据的类型之一,Null代表变量还没有内容,Undefined是连变量都未定义
* 数组Array 用来按顺序地存放一组数据
* MovieClip 这也是数据的一种吗?您就当他是FLASH特有的一种数据吧,装的就是个个MC INSTANCE(解释一下吧,MC从library拖到场景中就是个单独的instance,一个MC能够创立多个instance),更有MC里面的其他数据
* Object 能够是FLASH已内部定义的,或是用户写程式时自定义的一类数据
再分类一下
number, string, boolean, undefined, and null,这些属于简单的数据类型,特征是只有一个值
array, object, movieclip. 就能够包含不止一个值
chocobo:其实array也应该算是object,上面这些概念的东西总是有些沉闷,没关系,留下印象,以后用到了,自然会回过来真正了解一遍的
第七章 能够重复的函数(function)
不是用几个例子来示范吗?怎么还不讲例子啊?是的,下一个例子要用到函数,所以再补充点函数知识。(上当了吧?chocobo也上当了,开始翻译的时候没想到这篇东西这么长的,这才讲完第一个例子呢 55~)
一个函数是下面这个样子的:
function funcName () {
statements
}
在ACTION面板里面,function这个单词是变色的,FLASH认识这个单词,他代表后面的就是描述函数的内容
funcName是函数的名字,当您以后要用这函数的时候,就要敲这个名字了(是的,建函数就是为了以后反复调用他)
()小括号里面是参数,什么是参数一会再讲
{}大括号里面的就是函数所要完成功能的一句句代码。
当我们建立函数之后,函数并不运行,只在您用函数的名字调用他出来,才正式开始运行
例如我们有这样一个函数
function sayHi () {
trace("Hi!");
}
当我们在FLASH某帧需要sayHi的时候,输入AS:
sayHi();
是不是和最常见的stop();更有play();相同啊?因为他们都是函数嘛
sayHi函数真是智,来个有意义的函数吧。先在场景里放好一个名字叫ball的instance(千万记得要给instance输入名字,否则函数运行没结果别找我)
在第一帧输入这样一个函数:
function moveBall () {
ball._x = 10; // 怕有人不懂,解释一下,_x代表ball的横坐标,ball._x =10 的意思是ball._x = ball._x 10 ,这样省略的写法更有 -= *= /= 等等
ball._y = 10;
}
再做一个按钮,按钮的AS:
on (release) {
moveBall();
}
好的,运行,从AS您能够看到,每点一下按钮,执行一次函数,而函数让小球下斜下移动。(FLASH的坐标轴,原点在左上角)
为什么要建立函数呢,就是想更有效率,现在有这个函数已不用每移动一下写一次AS了,但还是不够,我们需要更有扩展性(flexibility)的函数
这个函数只能移动叫ball的MC,只能向固定的方向移动固定的距离,我们需要能够移动任何MC,向任何方向移动任何距离的函数,这样能够省却很多输入AS的工夫(这就叫一劳永逸,呵呵)
我们的新函数有三个地方是每次调用都不相同的
1、移动的那个MC的名字
2、水平移动的距离
3、垂直移动的距离(呵呵,用极坐标,也能够把2、3说成移动的距离,和移动的角度,但是大家都不习惯极坐标)
为了告诉函数这些变化的地方,我们需要参数(parameters),参数在定义函数的时候就要输入,我们的函数改写好了:
function moveClip (theClip, xDist, yDist) {
theClip._x = xDist;
theClip._y = yDist;
}
当我们要实现原来函数功能的时候,现在调用新函数就变成
moveClip (ball, 10, 10);
定义函数的时候function moveClip (theClip, xDist, yDist) {
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇: 使用钢笔工具绘制曲线路径
下一篇: 拖拽动作连同碰撞动作周详讲解
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash
