用新浪微博登录

只需一步,快速搞定

 找回密码
 立即注册

用新浪微博登录

只需一步,快速搞定

查看: 2571|回复: 1
打印 上一主题 下一主题

[文案] FLASH游戏开发基础讲解Pard.2——第一章:Flash游戏开发基础

[复制链接]

该用户从未签到

787

主题

1659

帖子

5743

积分

LV 11.会员

我是快乐的管理员~

积分
5743

社区居民工蜂偶尔光临业余写手最爱沙发社区平民认证用户在线达人略有小成常驻会员忠实会员兵蜂做个有钱人蜂王小有名气

跳转到指定楼层
楼主
发表于 2011-6-26 11:00:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式 |          
<><TABLE style="WIDTH: 602pt; BORDER-COLLAPSE: collapse" border=0 cellSpacing=0 cellPadding=0 width=802><COLGROUP><COL style="WIDTH: 21pt; mso-width-source: userset; mso-width-alt: 896" width=28><COL style="WIDTH: 581pt; mso-width-source: userset; mso-width-alt: 24768" width=774><TBODY><TR style="HEIGHT: 14&#46;25pt" height=19><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #0d0d0d; WIDTH: 602pt; HEIGHT: 14&#46;25pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid" class=xl65 height=19 width=802 colSpan=2><FONT color=#ffffff size=2 face=宋体><STRONG>第1章Flash游戏开发基础</STRONG></FONT></TD></TR><TR style="HEIGHT: 29&#46;25pt; mso-height-source: userset" height=39><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #0d0d0d; WIDTH: 602pt; HEIGHT: 29&#46;25pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid" class=xl66 height=39 width=802 colSpan=2><FONT color=#dbe5f1><FONT size=2><FONT face=宋体><STRONG>1&#46;1游戏的连贯设计<BR></STRONG><FONT class=font9>这里所说的连贯性就是用Flash游戏时的连贯,不论是大游戏还是小游戏,这个连贯性是必不可少的前提条件。</FONT></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 156&#46;75pt" height=209><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 530&#46;25pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl67 height=707 rowSpan=3><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT class=font7 color=#404040 size=2 face=宋体><STRONG>1&#46;1&#46;1保持美工设计的连贯</STRONG></FONT><FONT class=font6><BR><FONT color=#404040 size=2 face=宋体>  任何动画及游戏都离不开平面美术,就像好的电影有一个好的美术指导一样。因此在做Flash之前,应该先使用Photoshop、Freehand、CorelDRAW等软件将整个Flash动画中几个关键场景和出现元素的效果图画出来。在绘制的过程中,一定要注意平面用色的统一性,如果游戏的界面颜色太多,换的场景没有连续性,那么这个游戏会让玩家一看就头疼。<BR><BR>  如图1-1~图1-3所示,这是猜数字游戏的几个界面,设计风格:简约、精致。这3张效果图本身也标志了游戏的结构:引子(说明)、动画主体、结束画面,所用的主色调是桔黄色,3个界面合成了整个游戏的美工效果。<BR>                   <BR>                  图1-2游戏说明<BR>                   <BR>                  图1-2益智游戏主界面<BR>                   <BR>                  图1-3游戏结果界面</FONT></FONT></TD></TR><TR style="HEIGHT: 108&#46;75pt" height=145><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 108&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=145 width=774><FONT class=font7 color=#404040 size=2 face=宋体><STRONG>1&#46;1&#46;2动画设计的连贯</STRONG></FONT><FONT class=font6><BR><FONT color=#404040 size=2 face=宋体>  对于游戏设计连贯性,第二个要注意的就是动画的连贯。为了不使我们的游戏成为流水账,需要使动画有明显的节奏感,并在结构上有明显的过渡,当然过渡也要合理、流畅,不能生硬、唐突。要按照设计好的效果图,具体来设计整个动画,其实也就是用各种动态效果把静态效果图中的元素串联起来。<BR><BR>  如图1-4所示的小孩子拿锤子的动作,如果少掉中间的那幅动画看起来就会很生硬,不连贯,游戏玩家也就不会喜欢它。因此,在设计的时候要多花一些时间,用多一些的帧来表示动作效果。<BR>                   <BR>                  图1-4注意动画的连贯</FONT></FONT></TD></TR><TR style="HEIGHT: 264&#46;75pt" height=353><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 264&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=353 width=774><FONT class=font7 color=#404040 size=2 face=宋体><STRONG>1&#46;1&#46;3配音的连贯</STRONG></FONT><FONT class=font6><BR><FONT color=#404040 size=2 face=宋体>  理论上讲,应该在游戏结构设计的时候就开始制作音乐。但是,国内的Flash设计一般都是由个人完成,很难有专人配乐。一般都是在动画设计完成以后,从素材库中找一些合适的音乐进行配音,好一点的可能会根据音乐来设计动画。不管是什么顺序,最重要的就是协调,风格、节奏的协调才能使画面和音乐浑然一体。<BR><BR>  对于声音的连贯性,在这里要特别指出的是,要注意生成游戏的大小。大家都知道,用Flash输出*&#46;swf或者是可执行文件的时候,声音部分占了主体,如果文件太大,那么客户端下载或者是在线游戏可能就会很慢,甚至出现玩一会儿停顿一会儿的现象,所以在进行输出设置的时候,可以对输出的声音进行输出设置。这里拿FlashMX2004中文版来简单地说明一下,设置的步骤如下:<BR>(1)制作好一个游戏后,执行菜单栏“文件”|“发布设置”命令,弹出“发布设置”对话框,如图1-5所示。<BR>                   <BR>                  图1-5“发布设置”对话框<BR>(2)在“发布设置”对话框中单击Flash标签,打开Flash选项卡,如图1-6所示。默认的声音输出是MP3格式的,音频流和音频事件的声音都是一样的设置参数,在这里要指出的是,一般游戏的背景音乐都是循环的,在Flash中设置为“音频事件”的比较多,所以在输出的时候为了保证整个游戏的流畅性,最好把其设置为“双声道”模式。<BR>                   <BR>                  图1-6Flash选项卡<BR>(3)单击“音频事件(E)”右侧的“设置”按钮,弹出“声音设置”对话框,在这里压缩模式改为原始,并取消“将立体声转换为单声道”复选框的选取,“样本比率”可以设置为22kHz,如图1-7所示。这样的设置保证了背景音乐的清晰度。<BR>                   <BR>                  图1-7设置背景输出音乐<BR>(4)上一步的操作会使输出的文件反而增大了,但对于其他的“音频流”,最好把它设置成默认值,这样就可以保证文件的大小。音频流多为游戏过程中的一些小声音文件,如人物的说话声音、动物的叫声等。</FONT></FONT></TD></TR><TR style="HEIGHT: 55&#46;5pt; mso-height-source: userset" height=74><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #0d0d0d; WIDTH: 602pt; HEIGHT: 55&#46;5pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid" class=xl69 height=74 width=802 colSpan=2><FONT class=font8 color=#dbe5f1 size=2 face=宋体><STRONG>1&#46;2游戏的节奏控制</STRONG></FONT><FONT class=font9><BR><FONT color=#dbe5f1 size=2 face=宋体>  好的游戏动画应该是视觉冲击与信息传达相结合、流畅、充满美感,这些都需要我们为动画设计一个好的整体节奏。所谓的节奏,是很抽象的一个名词,就好比一首音乐有高潮有低潮,能让玩家在游戏的时候紧扣游戏的情节,那样才能真正的投入。一般情况下,动画的节奏表现手法可以按如下几个方法来实现。</FONT></FONT></TD></TR><TR style="HEIGHT: 108&#46;75pt" height=145><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 230&#46;25pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl67 height=307 rowSpan=3><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040 size=2 face=宋体>1&#46;2&#46;1游戏的篇头动画宜起伏<BR>  如果要做一个游戏片头动画,动画的开始(引子)是一段渐起的音乐,动态柔和唯美;随着音乐的渐强达到高峰,也就进入了动画的第2个阶段,这是动画主体也是信息传达的主要时期;在连续高速的动画过后音乐嘎然而止,进入结束画面,也就是整个动画的结尾。那么这个动画的整体节奏起伏是什么样子呢?如图1-8所示,我们可以用一个形容词“抑扬顿挫”来形容它。这种节奏适合做游戏的片头动画,叙事性强。<BR>                   <BR>                  图1-8起伏的节奏效果示意图<BR>  节奏起伏还可以有很多种,比如快慢交替,但不管是什么节奏,都是为传达设计者的概念而服务。我们在观看优秀的Flash作品时,一定要注意观察它的整体节奏,以及节奏与传达概念之间的联系,这也是游戏动画的精髓所在。</FONT></TD></TR><TR style="HEIGHT: 72&#46;75pt" height=97><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 72&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=97 width=774><FONT color=#404040 size=2 face=宋体>1&#46;2&#46;2交替的节奏控制<BR>  在具体的元素动态效果上,经常会采取速度交替的动态效果。例如,文字从画面的左部飞入,速度飞快,到达目标位置以后速度减慢,此时右部飞入更大、透明度更低的相同文字。两文字交错而行,速度很慢。这种速度与位置的交错,满足了动画对速度的需求,也实现了清楚传达信息的目的,如图1-9所示的是企业篇头动画效果。<BR>                   <BR>                  图1-9企业篇头动画效果</FONT></TD></TR><TR style="HEIGHT: 48&#46;75pt" height=65><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 48&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=65 width=774><FONT color=#404040 size=2 face=宋体>1&#46;2&#46;3游戏的特效节奏控制<BR>  不同的动画节奏,需要不同的动画效果来处理。节奏悠扬舒缓,元素的动态效果也多采用移动、淡入淡出、条形遮罩、单线条等表现方式;如果节奏紧张、快捷,则多采用闪动、高速位移、旋转、耀眼光芒等表现方式。效果没有定式,我们可以学习大师作品的精髓,但也要有原创的内容。</FONT></TD></TR><TR style="HEIGHT: 25&#46;5pt; mso-height-source: userset" height=34><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #0d0d0d; WIDTH: 602pt; HEIGHT: 25&#46;5pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid" class=xl69 height=34 width=802 colSpan=2><FONT class=font8 color=#dbe5f1 size=2 face=宋体><STRONG>1&#46;3游戏的速度感</STRONG></FONT><FONT class=font9><BR><FONT color=#dbe5f1 size=2 face=宋体>  既然是酷眩Flash游戏,就一定要有很好的速度感,如果在以下几个方面注意了,就会发现速度感不仅仅是动作快就能够满足的。</FONT></FONT></TD></TR><TR style="HEIGHT: 96&#46;75pt" height=129><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 303pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl67 height=404 rowSpan=4><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040 size=2 face=宋体>1&#46;3&#46;1动态的表现手法<BR>  熟悉Photoshop的人都知道Motionblur(移动模糊),移动模糊是模拟人眼看到高速运动的物体时的样子。由于人眼的视觉停留,高速运动的物体都会沿它的运动路径被拉长,就像看到高速公路上奔驰的车流,是由彩色线条组成的一样。用户可以在Photoshop或者Flash里制造物体的移动模糊效果,当需要物体高速位移,可以采用经过Motionblur处理后的物体替代。在运动结束时再换之真正的物体,视觉上就会觉得物体运动的速度极高。还有缩放模糊、旋转模糊都可以应用在Flash中,例如表现镜头的高速缩放、高速旋转等。在这里,我们举例游戏“街霸”中的动画场面,应用移动模糊明显增强了界面的动感,如图1-10所示。<BR>                   <BR>                  图1-10移动模糊表现动作</FONT></TD></TR><TR style="HEIGHT: 72&#46;75pt" height=97><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 72&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=97 width=774><FONT color=#404040 size=2 face=宋体>1&#46;3&#46;2游戏的速率<BR>  这里说的速率即fps(每秒钟播放帧数),这个速率合适与否直接影响了动画的播放速度、占用CPU资源,最重要的是影响了流畅度。理论上说,当然是fps越高,占用CPU资源越重,也就是说,可能反而会断断续续。大家知道Flash的默认值为12,但是一般情况下24~48是一个合理范围,在这个速率内的动画显得非常流畅,同时耗费资源也不是很严重,如图1-11所示的是速率(帧频)的设置。<BR> <BR>图1-11设置合适的“帧频”</FONT></TD></TR><TR style="HEIGHT: 84&#46;75pt" height=113><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 84&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=113 width=774><FONT color=#404040 size=2 face=宋体>1&#46;3&#46;3游戏的加速度<BR>  通俗地说,加速度就是速度越来越快,当然也有反向的,在Flash中就体现在帧属性中的“简易”的值。加速度在动画中的作用,是使元素的运动更接近自然界的运动,例如物体呈抛物线运动的时候,速度应该是越来越慢的,而下落的物体应该是越来越快的。一般来说,从运动到静止的物体都是逐渐减速的;反之是逐渐加速的。总之,掌握好物体运动的加速度,是把握物体运动更自然更人性化的关键因素,参数的调节如图1-12所示。<BR> <BR>图1-12设置加速度</FONT></TD></TR><TR style="HEIGHT: 48&#46;75pt" height=65><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 48&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=65 width=774><FONT color=#404040 size=2 face=宋体>1&#46;3&#46;5惯性<BR>  这也是一个常见的物理现象,和加速度相反,惯性的表现一般用在突然发生动作或者突然静止的时候,例如小汽车要高速向前运动时,可以先稍稍的向后运动一点,来表现原来静止带来的惯性;告诉运动的小汽车突然停止的时候哦可以给它以形变,然后恢复,体现高速运动的惯性。惯性大多会显得很卡通,轻微地体现惯性则会显得更自然。</FONT></TD></TR><TR style="HEIGHT: 39&#46;75pt; mso-height-source: userset" height=53><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #0d0d0d; WIDTH: 602pt; HEIGHT: 39&#46;75pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid" class=xl69 height=53 width=802 colSpan=2><FONT class=font8 color=#dbe5f1 size=2 face=宋体><STRONG>1&#46;4视觉冲击力</STRONG></FONT><FONT class=font9><BR><FONT color=#dbe5f1 size=2 face=宋体>  对于酷眩Flash游戏,是否有视觉冲击力是很重要的,视觉冲击不应该过多,而且要在合理的地方出现。那么怎样设计有冲击力的动画呢?用户可以从下面几个角度着手来创意。</FONT></FONT></TD></TR><TR style="HEIGHT: 36&#46;75pt" height=49><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 170&#46;25pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl67 height=227 rowSpan=3><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040 size=2 face=宋体>1&#46;4&#46;1速度的变化<BR>  高速度本身就产生了视觉冲击,但在众多高速运动的物体中,缓慢运动的物体反而更引人瞩目了。因此高速、变速、跟周围环境差异大的运动速度,都能给人带来一定的视觉影响。</FONT></TD></TR><TR style="HEIGHT: 48&#46;75pt" height=65><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 48&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=65 width=774><FONT color=#404040 size=2 face=宋体>1&#46;4&#46;2运动的面积<BR>  现在的Flash作品都是局部运动,这是制作者偷懒,不想付出那么多的劳动。毫无疑问,这样小面积的运动不能算是一个好的作品,大面积的运动能带来更大的冲击力,但一定要在不给人造成心理压力的前提下。如果面积很小而且无法扩大,高速闪动是个不错的选择。</FONT></TD></TR><TR style="HEIGHT: 84&#46;75pt" height=113><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 84&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=113 width=774><FONT color=#404040 size=2 face=宋体>1&#46;4&#46;3颜色的搭配<BR>  我们经常可以在影视片段中看到这样的处理:两个片段之间,突然白屏,然后画面渐出。给人很强的视觉冲击,可以说颜色变化得越大,视觉冲击就越强。我们可以经常在一些优秀作品中看到,物体往往会变白以后再移动,因为白色最亮,自然会非常抢眼。这只是一个典型的例子,颜色的变化还要依据动画的整体风格,不可生搬硬套。<BR><BR>总之,制造又酷又眩又好玩的Flash游戏,首先要从平面效果下手,设计合理美观的表现方式,然后利用各种动态效果和适当的元素去表达所需要传达的概念。动画设计的过程主要从节奏、速度、冲击力等几个方面去考虑。</FONT></TD></TR><TR style="HEIGHT: 39&#46;75pt; mso-height-source: userset" height=53><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #0d0d0d; WIDTH: 602pt; HEIGHT: 39&#46;75pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid" class=xl69 height=53 width=802 colSpan=2><FONT color=#dbe5f1><FONT size=2><FONT face=宋体><FONT class=font8><STRONG>1&#46;5国内外Flash游戏鉴赏<BR>  </STRONG></FONT><FONT class=font9>Flash已经着实火了几年,Flash的相关网站比比皆是,但是专业的Flash游戏网站确是少之又少,在这里为了提高大家的学习兴趣,我们推荐几个网站,让我们先玩一把,体会Flash游戏带来的冲击力。</FONT></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 60&#46;75pt" height=81><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 279&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl67 height=373 rowSpan=5><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040 size=2 face=宋体>1&#46;5&#46;1http://www&#46;flashgame&#46;com <BR>  这是国外直接以Flashgame&#46;com命令的地址,可以说网上的一些游戏都是原创作品,读者可以首先到这里感受一下国外Flashgame开发的魅力,如图1-13所示。 <BR> <BR>图1-13www&#46;flashgame&#46;com</FONT></TD></TR><TR style="HEIGHT: 60&#46;75pt" height=81><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 60&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=81 width=774><FONT color=#404040 size=2 face=宋体>1&#46;5&#46;2http://www&#46;flashgame&#46;com&#46;cn <BR>  国内域名被它所占有,从制作出的游戏中可以看出其独特性,但目前一些教程及源代码还是很有限的,可以看出,我们的闪客对于Flash游戏开发还是很有限的,如图1-14所示。 <BR> <BR>图1-14www&#46;flashgame&#46;com&#46;cn</FONT></TD></TR><TR style="HEIGHT: 60&#46;75pt" height=81><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 60&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=81 width=774><FONT color=#404040 size=2 face=宋体>1&#46;5&#46;3http://www&#46;plastelina&#46;net <BR>  个性化的Flash游戏网站,整个网站系由Flash开发而成,但这个网站只有益智型游戏,开发的游戏适合老人和小孩儿玩,而且这个网站是个要交费的网站,如图1-15所示。 <BR> <BR>图1-15www&#46;plastelina&#46;net</FONT></TD></TR><TR style="HEIGHT: 48&#46;75pt" height=65><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 48&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=65 width=774><FONT color=#404040 size=2 face=宋体>1&#46;5&#46;4http://www&#46;flashgamestudio&#46;com <BR>  这是一个比较出名的Flash游戏网站,从它所挂游戏的点击率就可以看出来,如图1-16所示。 <BR> <BR>图1-16www&#46;flashgamestudio&#46;com</FONT></TD></TR><TR style="HEIGHT: 48&#46;75pt" height=65><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 48&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=65 width=774><FONT color=#404040 size=2 face=宋体>1&#46;5&#46;5http://sess&#46;net <BR>  这个游戏网站很卡通,美工较差,但很多游戏还是值得一玩的,如图1-17所示。 <BR> <BR>图1-17sess&#46;net</FONT></TD></TR><TR style="HEIGHT: 53&#46;25pt; mso-height-source: userset" height=71><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #0d0d0d; WIDTH: 602pt; HEIGHT: 53&#46;25pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid" class=xl69 height=71 width=802 colSpan=2><FONT color=#dbe5f1><FONT size=2><FONT face=宋体><FONT class=font8><STRONG>1&#46;6基础ActionScript程序<BR></STRONG></FONT><FONT class=font9>  在开篇的时候我们说过,制作Flash游戏的根本就在于编程,如果用户想制作一款完全由自己创意的游戏,那么ActionScript语言要掌握得很好。对于一般的应用者来说,想制作一个小游戏,至少也要有一定的Action基础,下面就让我们一起来学习这个必须掌握的基础语言。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 120&#46;75pt" height=161><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 120&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl70 height=161><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040><FONT size=2><FONT face=宋体>1&#46;6&#46;1ActionScript基础 <BR>  Flash的动作是基于其本身的语言——ActionScript。相对于同类动画制作软件的语言(如Director的Lingo语言),ActionScript更为直观,掌握起来也比较容易。 <BR>执行菜单栏“窗口”|“开发面板”|“动作”命令(或者按F9键)调出“动作”面板,如图1-18所示。 <BR> <BR>图1-18“动作”面板<BR><BR>  “动作”面板中,左边是动作类型,双击任意一个类型可以展开其下的许多具体动作;右边是具体的参数显示窗口,根据用户所选的动作而不同,因此用户不需要对ActionScript语言懂得太多就能很方便地使用它。 <BR>用户可以对参数窗口中的参数进行拷贝、粘贴、删除等操作,操作方法是:选中参数后,用鼠标右键单击,然后从快捷菜单中选择。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 240&#46;75pt" height=321><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 240&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl70 height=321><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040><FONT size=2><FONT face=宋体>1&#46;6&#46;2影片控制Action <BR>熟练掌握Flash影片控制ActionScript语言,能够提高Flash游戏开发设计的速度,我们把它总结如下: <BR><BR>1.gotoAndPlay <BR>语法:gotoAndPlay(scene,frame) <BR>参数:scene播放头将转到的场景的名称;frame播放头将转到的帧的编号或标签。 <BR>使用说明:动作。将播放头转到场景中指定的帧,并从该帧开始播放。如果未指定场景,则播放头将转到当前场景中的指定帧。 <BR><BR>2.play <BR>语法:play() <BR>使用说明:动作。在时间轴中向前移动播放头。 <BR><BR>3.stop <BR>语法:stop <BR>使用说明:动作。停止当前正在播放的影片。此动作最通常的用法是用按钮控制影片剪辑。 <BR><BR>4.stopAllSounds <BR>语法:stopAllSounds() <BR>使用说明:动作。在不停止播放头的情况下,停止影片中当前正在播放的所有声音。设置成流的声音时,在播放头移过它们所在的帧时将恢复播放。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 409&#46;6pt" height=547><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 409&#46;6pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl70 height=547><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040><FONT size=2><FONT face=宋体>1&#46;6&#46;3浏览器/网络 <BR>该部分的Action是FlashMX2004用来与影片或外部文件进行交互操作的脚本集合。 <BR><BR>1.fscommand <BR>语法:fscommand("command","parameters") <BR>参数:command、parameters均是一个传递给宿主应用程序用于任何用途的字符串,或者是一个传递给FlashPlayer的值。 <BR>使用说明:动作。使Flash影片能够与FlashPlayer或承载FlashPlayer的程序(如Web浏览器)进行通讯。还可使用fscommand动作将消息传递给Director,或者传递给VB、VC++和其他可承载ActiveX控件的程序。 <BR><BR>2.getURL <BR>语法:getURL(url[,window[,"variables"]]) <BR>参数:url可从该处获取文档的URL。 <BR>Window一个可选参数,指定文档应加载到其中的窗口或HTML框架。用户可输入特定窗口的名称,或从下面的保留目标名称中选择: <BR>·_self指定当前窗口中的当前框架。 <BR>·_blank指定一个新窗口。 <BR>·_parent指定当前框架的父级。 <BR>·_top指定当前窗口中的顶级框架。 <BR>variables用于发送变量的GET或POST方法。如果没有变量,则省略此参数。GET方法将变量追加到URL的末尾,该方法用于发送少量变量。POST方法在单独的HTTP标头中发送变量,该方法用于发送长的变量字符串。 <BR>使用说明:动作。将来自特定URL的文档加载到窗口中,或将变量传递到位于所定义URL的另一个应用程序。若要测试此动作,请确保要加载的文件位于指定的位置。若要使用绝对URL,则需要网络连接。 <BR><BR>3.loadMovie <BR>语法:loadMovie("url",level/target[,variables]) <BR>参数:url是要加载的SWF文件或JPEG文件的绝对或相对URL。 <BR>level是一个整数,指定FlashPlayer中影片将被加载到的级别。在将影片或图像加载到级别时,标准模式下“动作”面板中的loadMovie动作将切换为loadMovieNum;在专家模式下,必须指定loadMovieNum或从“动作”面板中选择它。 <BR>target指向目标影片剪辑的路径。目标影片剪辑将替换为加载的影片或图像。只能指定target影片剪辑或目标影片的level这两者之一。 <BR>variables是一个可选参数,指定发送变量所使用的HTTP方法。该参数须是字符串GET或POST。 <BR>使用说明:动作。在播放原始影片的同时将SWF或JPEG文件加载到FlashPlayer中。loadMovie动作可以同时显示几个影片,并且无需加载另一个HTML文档就可在影片之间切换。 <BR>使用unloadMovie动作可删除使用loadMovie动作加载的影片。 <BR><BR>4.loadVariables <BR>语法:loadVariables("url",level/"target"[,variables]) <BR>参数:url变量所处位置的绝对或相对URL。 <BR>level是指定FlashPlayer中接收这些变量的级别的整数。参数具体用法同loadMovie。 <BR>target指向接收所加载变量的影片剪辑的目标路径。 <BR>variables一个可选参数,指定发送变量所使用的HTTP方法。 <BR>使用说明:动作。从外部文件(例如文本文件,或由CGI脚本、ASP、PHP脚本生成的文本)读取数据,并设置FlashPlayer级别或目标影片剪辑中变量的值。此动作还可用于使用新值更新活动影片中的变量。 <BR>5.unloadMovie <BR>语法:unloadMovie[Num](level/"target") <BR>参数:level加载影片的级别(_levelN)。从一个级别卸载影片时,在标准模式下,“动作”面板中的unloadMovie动作切换为unloadMovieNum;在专家模式下,必须指定unloadMovieNum,或者从“动作”面板中选择它。 <BR>target影片剪辑的目标路径。 <BR>使用说明:动作。从FlashPlayer中删除一个已加载的影片或影片剪辑。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 409&#46;6pt" height=547><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 409&#46;6pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl70 height=547><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040><FONT size=2><FONT face=宋体>1&#46;6&#46;4影片剪辑控制 <BR>这是控制影片的更高一级的常用命令。 <BR><BR>1.duplicateMovieClip <BR>语法:duplicateMovieClip(target,newname,depth) <BR>参数:target为要复制的影片剪辑的目标路径。 <BR>newname为复制的影片剪辑的惟一标识符。 <BR>depth为复制的影片剪辑的惟一深度级别。深度级别是复制的影片剪辑的堆叠顺序。这种堆叠顺序很像时间轴中图层的堆叠顺序;较低深度级别的影片剪辑隐藏在较高堆叠顺序的影片剪辑之下。必须为每个复制的影片剪辑分配一个惟一的深度级别,以防止它替换现有深度上的影片。 <BR>使用说明:动作。当影片正在播放时,创建一个影片剪辑的实例。无论播放头在原始影片剪辑(或“父级”)中处于什么位置,复制的影片剪辑的播放头始终从第一帧开始。如果删除父影片剪辑,则复制的影片剪辑也被删除。 <BR>2.on <BR>语法:on(mouseEvent){statement(s);} <BR>参数:statement(s)是指发生mouseEvent时要执行的指令。 <BR>mouseEvent是“事件”触发器。当发生此事件时,执行事件后面花括号中的语句。可为mouseEvent参数指定下面的任何值: <BR>·press在鼠标指针经过按钮时按下鼠标。 <BR>·release在鼠标指针经过按钮时释放鼠标按钮。 <BR>·releaseOutside当鼠标指针在按钮之内时按下按钮后,将鼠标指针移到按钮之外,此时释放鼠标。 <BR>·rollOut鼠标指针移出按钮区域。 <BR>·rollOver鼠标指针滑过按钮。 <BR>·dragOut在鼠标指针滑过按钮时按下鼠标,然后滑出此按钮区域。 <BR>·dragOver在鼠标指针移过按钮时按下鼠标,然后移出此按钮,再移回此按钮。 <BR>·keyPress(key)按下指定的key,此参数的key部分可使用Flash“键盘键和键控代码值”中所列的任何键控代码进行指定,或者使用Key对象的属性摘要中列出的任何键常量进行指定。 <BR>使用说明:事件处理函数。指定触发动作的鼠标事件或按键事件。 <BR><BR>3.onClipEvent <BR>语法:onClipEvent(movieEvent){ <BR>statement(s); <BR>} <BR>参数:movieEvent是一个称作“事件”的触发器。当事件发生时,执行该事件后面花括号中的语句。可以为movieEvent参数指定下面的任何值: <BR>·load影片剪辑一旦被实例化并出现在时间轴中时,即启动此动作。 <BR>·unload在从时间轴中删除影片剪辑之后,此动作在第一帧中启动。处理与unload影片剪辑事件关联的动作之前,不向受影响的帧附加任何动作。 <BR>·enterFrame以影片帧频不断地触发此动作。首先处理与enterFrame剪辑事件关联的动作,然后才处理附加到受影响帧的所有帧动作脚本。 <BR>·mouseMove每次移动鼠标时启动此动作。_xmouse和_ymouse属性用于确定当前鼠标位置。 <BR>·mouseDown当按下鼠标左键时启动此动作。 <BR>·mouseUp当释放鼠标左键时启动此动作。 <BR>·keyDown当按下某个键时启动此动作。使用Key&#46;getCode方法获取最近按下的键的有关信息。 <BR>·keyUp当释放某个键时启动此动作。使用Key&#46;getCode方法获取最近按下的键的有关信息。 <BR>·data当在loadVariables或loadMovie动作中接收数据时启动此动作。当与loadVariables动作一起指定时,data事件只发生一次,即加载最后一个变量时;当与loadMovie动作一起指定时,在获取数据的每一部分时,data事件都重复发生。 <BR>statement(s)发生mouseEvent时要执行的指令。 <BR>使用说明:事件处理函数。触发为特定影片剪辑实例定义的动作。 <BR><BR>4.removeMovieClip <BR>语法:removeMovieClip(target) <BR>参数:target为用duplicateMovieClip创建的影片剪辑实例的目标路径,或者用MovieClip对象的attachMovie或duplicateMovieClip方法创建的影片剪辑的实例名。 <BR>使用说明:动作。删除用MovieClip对象的attachMovie或duplicateMovieClip方法创建的,或者用duplicateMovieClip动作创建的影片剪辑实例。 <BR><BR>5.setProperty <BR>语法:setProperty("target",property,value/expression) <BR>参数:target为要设置其属性的影片剪辑实例名称的路径。 <BR>property为要设置的属性。 <BR>value为属性的新文本值。 <BR>expression表示计算结果为属性新值的公式。 <BR>使用说明:动作。当影片播放时,更改影片剪辑的属性值。 <BR><BR>6.startDrag <BR>语法:startDrag(target,[lock,left,top,right,bottom]) <BR>参数:target为要拖动的影片剪辑的目标路径。 <BR>lock是一个布尔值,指定可拖动影片剪辑是锁定到鼠标位置中央(true),还是锁定到用户首次单击该影片剪辑的位置上(false)。此参数是可选的。 <BR>left,top,right,bottom为相对于影片剪辑父级坐标的值,这些坐标指定该影片剪辑的约束矩形。这些参数是可选的。 <BR>使用说明:动作。使target影片剪辑在影片播放过程中可拖动。一次只能拖动一个影片剪辑。执行startDrag动作后,影片剪辑将保持可拖动状态,直到被stopDrag动作明确停止为止,或者直到为其他影片剪辑调用了startDrag动作为止。 <BR><BR>7.stopDrag <BR>语法:stopDrag() <BR>使用说明:动作。停止当前的拖动操作。 <BR><BR>8.updateAfterEvent <BR>语法:updateAfterEvent() <BR>使用说明:动作。当在onClipEvent处理函数中调用它时,或作为传递给setInterval的函数或方法的一部分进行调用时,该动作更新显示(与为影片设置的每秒帧数无关)。如果对updateAfterEvent的调用不在onClipEvent处理函数中,也不是传递给setInterval的函数或方法的一部分,则Flash忽略该调用。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 336&#46;75pt" height=449><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 336&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl70 height=449><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040><FONT size=2><FONT face=宋体>1&#46;6&#46;5变量 <BR>该部分Action是FlashMX2004脚本语言中的变量及对应操作的脚本集合。 <BR><BR>1.delete <BR>语法:deletereference <BR>参数:reference为要消除的变量或对象的名称。 <BR>使用说明:运算符。删除由reference参数指定的对象或变量,如果该对象被成功删除,则返回true;否则返回false。 <BR><BR>2.setvariable <BR>语法:set(variable,expression) <BR>参数:variable为保存expression参数值的标识符;expression为分配给变量的值。 <BR>使用说明:动作。为变量赋值。variable是保存数据的容器。变量可以保存任何类型的数据(例如,字符串、数字、布尔值、对象或影片剪辑)。每个影片和影片剪辑的时间轴都有其自己的变量集,每个变量又都有其独立于其他时间轴上的变量的值。 <BR><BR>3.var <BR>语法:varvariableName1[=value1][&#46;&#46;&#46;,variableNameN[=valueN]] <BR>参数:variableName为标识符;value为分配给变量的值。 <BR>使用说明:动作。用于声明局部变量。如果在函数内声明局部变量,那么变量就是为该函数定义的,且在该函数调用结束时到期。如果变量不是在块({})内声明的,但使用call动作执行该动作列表,则该变量为局部变量,且在当前列表结束时到期;如果变量不是在块中声明的,且不使用call动作执行当前动作列表,则这些变量不是局部变量。 <BR><BR>4.with <BR>语法:with(object){ <BR>statement(s); <BR>} <BR>参数:object为动作脚本对象或影片剪辑的实例;statement(s)为花括号中包含的动作或一组动作。 <BR>使用说明:动作。允许用户使用object参数指定一个对象(比如影片剪辑),并使用statement(s)参数计算对象中的表达式和动作。这可以使用户不必重复书写对象的名称或路径。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 409&#46;6pt" height=547><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 409&#46;6pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl70 height=547><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040 size=2 face=宋体>1&#46;6&#46;6条件/循环 <BR>该部分Action是FlashMX2004脚本中如何操作影片逻辑的脚本集合。 <BR><BR>1.break <BR>语法:break <BR>使用说明:动作。出现在一个循环(for,for&#46;&#46;in,dowhile或while循环)中,或者出现在与switch动作内特定case语句相关联的语句块中。break动作可命令Flash跳过循环体的其余部分,停止循环动作,并执行循环语句之后的语句。当使用break动作时,Flash解释程序会跳过该case块中的其余语句,转到包含它的switch动作后的第一个语句。使用break动作可跳出一系列嵌套的循环。 <BR><BR>2.case <BR>语法:caseexpression:statements <BR>参数:expression为任何表达式;statements为任何语句。 <BR>使用说明:关键字。定义用于switch动作的条件。如果case关键字后的expression参数在使用全等(===表示等号,使用于FlashPlayer4)的情况下等于switch动作的expression参数,则执行statements参数中的语句。如果在switch语句外部使用case动作,则将产生错误,脚本不能编译。 <BR><BR>3.continue <BR>语法:continue <BR>使用说明:动作。出现在几种类型的循环语句中,但它在每种类型的循环中的行为方式各不相同。 <BR>在while循环中,continue可使Flash解释程序跳过循环体的其余部分,并转到循环的顶端(在该处进行条件测试)。 <BR><BR>4.default <BR>语法:default:statements <BR>参数:statements表示任何语句。 <BR>使用说明:关键字。定义switch动作的默认情况。对于一个给定的switch动作,如果该switch动作的expression参数与case关键字后面的任何一个expression参数都不相等(使用全等),则执行这些语句。 <BR><BR>5.dowhile <BR>语法:do{ <BR>statement(s) <BR>}while(condition) <BR>参数:condition为要计算的条件。 <BR>statement(s)表示只要condition参数计算结果为true就会执行的语句。 <BR>使用说明:动作。执行语句,然后只要条件为true,就执行循环体中的语句。 <BR><BR>6.else <BR>语法:if(condition){ <BR>statement(s); <BR>}else(condition){ <BR>statement(s); <BR>} <BR>参数:condition表示计算结果为true或false的表达式。 <BR>statement(s)表示当if语句中指定的条件为false时,else(condition)语句后将要运行的替代语句系列。 <BR>使用说明:语句。指定当if语句中的条件返回false时要运行的语句。 <BR><BR>7.elseif <BR>语法:if(condition){ <BR>statement(s); <BR>}elseif(condition){ <BR>statement(s); <BR>} <BR>参数:condition表示计算结果为true或false的表达式。 <BR>statement(s)表示当if语句中指定的条件为false时,elseif(condition)语句后将要运行的替代语句系列。 <BR>使用说明:语句。计算条件,并指定当初始if语句中的条件返回false时要运行的语句。如果elseif条件返回true,则Flash解释程序运行该条件后面花括号({})中的语句;如果elseif条件为false,则Flash将跳过花括号中的语句,直接运行花括号之后的语句。使用elseif动作可在脚本中创建分支逻辑。 <BR><BR><BR>8.for <BR>语法:for(init;condition;next){ <BR>statement(s); <BR>} <BR>参数:init为一个在开始循环序列前要计算的表达式,通常为赋值表达式。此参数还允许使用Var语句。 <BR>condition表示计算结果为true或false的表达式。在每次循环迭代前计算该条件,当条件的计算结果为false时退出循环。 <BR>next为一个在每次循环迭代后要计算的表达式,通常为使用递增或递减运算符的赋值表达式。 <BR>statement(s)为在循环体内要执行的指令。 <BR>使用说明:动作。一种循环结构,首先计算init(初始化)表达式一次,只要condition的计算结果为true,则按照以下顺序开始循环序列——执行statement后计算next表达式。 <BR><BR>9.For&#46;&#46;in <BR>语法:for(variableIterantinobject){ <BR>statement(s); <BR>} <BR>参数:variableIterant作为迭代变量的变量名,引用数组中对象或元素的每个属性。 <BR>object表示要重复的对象的名称。 <BR>statement(s)是要为每次迭代执行的指令。 <BR>使用说明:动作。循环通过数组中对象或元素的属性,并为对象的每个属性执行statement。 <BR><BR>10.if <BR>语法:if(condition){ <BR>statement(s); <BR>} <BR>参数:condition表示计算结果为true或false的表达式。 <BR>statement(s)表示如果或当条件的计算结果为true时要执行的指令。 <BR>使用说明:动作。对条件进行计算以确定影片中的下一步动作。如果条件为true,则Flash将运行条件后面花括号({})内的语句;如果条件为false,则Flash跳过花括号内的语句,运行花括号后面的语句。使用if动作可在脚本中创建分支逻辑。 <BR><BR>11.switch <BR>语法:switch(expression){ <BR>caseClause: <BR>[defaultClause:] <BR>} <BR>参数:expression表示任意表达式。 <BR>caseClause为一个case关键字,其后跟表达式、冒号和一组语句,如果在使用全等的情况下,此处的表达式与switchexpression参数相匹配,则执行这组语句。 <BR>defaultClause为一个default关键字,其后跟着如果这些case表达式都不与switchexpression参数全等匹配时要执行的语句。 <BR>使用说明:动作。创建动作脚本语句的分支结构。像If动作一样,Switch动作测试一个条件,并在条件返回true值时执行语句。 <BR>12.while <BR>语法:while(condition){ <BR>statement(s); <BR>} <BR>参数:condition表示每次执行while动作时都要重新计算的表达式。如果该语句的计算结果为true,则运行statement(s)。 <BR>statement(s)表示条件的计算结果为true时要执行的代码。 <BR>使用说明:动作。测试表达式,只要该表达式为true,就重复运行循环中的语句或语句序列。<BR></FONT></TD></TR><TR style="HEIGHT: 409&#46;6pt" height=547><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 409&#46;6pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl70 height=547><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040><FONT size=2><FONT face=宋体>1&#46;6&#46;7用户定义的函数 <BR>该部分的Action可以通过用户自己组合,开发出更具灵活的程序脚本。 <BR><BR>1.call() <BR>语法:call(frame) <BR>参数:frame为时间轴中帧的标签或编号。 <BR>使用说明:动作。执行被调用帧中的脚本,而不将播放头移动到该帧。一旦执行完该脚本,局部变量将不存在。 <BR><BR>2.callfunction <BR>语法:object&#46;function([parameters]) <BR>参数:object表示其中定义了函数的对象(可以是影片剪辑)。 <BR>function为指定用户定义的函数的标识符。 <BR>parameters为可选参数,指示函数所需的任何参数。 <BR>使用说明:动作。允许在标准模式下,使用“动作”面板中的参数字段来调用用户定义的函数。 <BR>3.function <BR>语法:functionfunctionname([parameter0,parameter1,&#46;&#46;&#46;,parameterN]){ <BR>statement(s) <BR>} <BR>function([parameter0,parameter1,&#46;&#46;&#46;,parameterN]){ <BR>statement(s) <BR>} <BR>参数:functionnameo为新函数的名称。 <BR>parameter是一个标识符,表示要传递给函数的参数。这些参数是可选的。 <BR>statement(s)为function的函数体定义的任何动作脚本指令。 <BR>使用说明:用户定义的用来执行特定任务的一组语句。可以在影片的一个地方“声明”或定义函数,然后从影片的其他脚本调用它。定义函数时,还可以为其指定参数。参数是函数要对其进行操作的值的占位符。每次调用函数时,可以向其传递不同的参数,这使用户可以在不同场合重复使用同一个函数。 <BR><BR>4.method <BR>语法:object&#46;method=function([parameters]){ <BR>&#46;&#46;&#46;bodyoffunction&#46;&#46;&#46; <BR>}; <BR>参数:object是对象的标识符。 <BR>method是方法的标识符。 <BR>parameters为要传递给函数的参数。是可选参数。 <BR>使用说明:动作(仅限标准模式)。用于在标准模式下使用“动作”面板来定义对象的方法。 <BR><BR>5.Return <BR>语法:return[expression] <BR>return <BR>参数:expression是要作为函数值计算并返回的字符串、数字、数组或对象。此参数是可选的。 <BR>返回值:如果提供了expression参数,则返回计算的结果。 <BR>使用说明:动作。指定由函数返回的值。return动作计算expression,并将结果作为它在其中执行的函数的值返回。return动作导致函数停止运行,并用返回值代替函数。如果单独使用return语句,它返回null。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 28&#46;5pt; mso-height-source: userset" height=38><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #0d0d0d; WIDTH: 602pt; HEIGHT: 28&#46;5pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid" class=xl69 height=38 width=802 colSpan=2><FONT class=font8 color=#dbe5f1 size=2 face=宋体><STRONG>1&#46;7高级函数应用命令</STRONG></FONT><FONT class=font9><BR><FONT color=#dbe5f1><FONT size=2><FONT face=宋体>  函数是FlashMX2004中至关重要的部分,是完成对复杂程序操作的必要组合。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 409&#46;6pt" height=547><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 409&#46;6pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl70 height=547><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040 size=2 face=宋体>1&#46;7&#46;1常用函数 <BR>下面介绍FlashMX2004中常用的函数。 <BR><BR>1.escape <BR>语法:escape(expression) <BR>参数:expression是要转换为字符串并以URL编码格式进行编码的表达式。 <BR>使用说明:函数。将参数转换为字符串,并以URL编码格式进行编码,在这种格式中,将所有非字母数字的字符都转换为十六进制序列。 <BR><BR>2.eval <BR>语法:eval(expression) <BR>参数:expression为包含要获取的变量、属性、对象或影片剪辑名称的字符串。 <BR>使用说明:函数。按照名称访问变量、属性、对象或影片剪辑。如果expression是一个变量或属性,则返回该变量或属性的值;如果expression是一个对象或影片剪辑,则返回指向该对象或影片剪辑的引用;如果无法找到expression中指定的元素,则返回undefined。 <BR><BR>3.getProperty <BR>语法:getProperty(instancename,property) <BR>参数:instancename为要获取其属性的影片剪辑的实例名称。 <BR>property为影片剪辑的属性。 <BR>使用说明:函数。返回影片剪辑instancename中指定的property值。 <BR><BR>4.getTimer <BR>语法:getTimer() <BR>使用说明:函数。返回自影片开始播放时起已经过的毫秒数。 <BR><BR>5.targetPath <BR>语法:targetPath(movieClipObject) <BR>参数:movieClipObject表示对要获取其目标路径的影片剪辑的引用(例如,_root或_parent)。 <BR>使用说明:函数。返回包含movieClipObject的目标路径的字符串。此目标路径以点记号表示形式返回。若要获取以斜杠记号表示的目标路径,请使用_target属性。 <BR><BR>6.unescape <BR>语法:unescape(x) <BR>参数:x为要转换的十六进制序列字符串。 <BR>使用说明:顶级函数。将参数x作为字符串计算,将该字符串从URL编码格式(这种格式将所有十六进制序列转换为ASCII字符)进行解码,并返回该字符串。</FONT></TD></TR><TR style="HEIGHT: 336&#46;75pt" height=449><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 336&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl70 height=449><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040 size=2 face=宋体>1&#46;7&#46;2数学函数 <BR>该部分的Action帮助开发人员完成程序中的数学运算。 <BR><BR>1.isFinite <BR>语法:isFinite(expression) <BR>参数:expression为要计算的布尔表达式、变量表达式或其他表达式。 <BR>使用说明:顶级函数。对expression进行计算,如果其为有限数,则返回true;如果为无穷大或负无穷大,则返回false。无穷大或负无穷大的出现指示有错误的数学条件,例如被0除。 <BR><BR>2.isNaN <BR>语法:isNaN(expression) <BR>参数:expression为要计算的布尔表达式、变量表达式或其他表达式。 <BR>使用说明:顶级函数。对参数进行计算,如果值不是数字(NaN),则返回true,指示存在数学错误。 <BR><BR>3.parseFloat <BR>语法:parseFloat(string) <BR>参数:string为要读取并转换为浮点数的字符串。 <BR>使用说明:函数。将字符串转换为浮点数。此函数读取(或“分析”)并返回字符串中的数字,直到它到达不是数字(其初始含义为数字)部分的字符。如果字符串不是以一个可以分析的数字开始的,则parseFloat返回NaN。有效整数前面的空白将被忽略,有效整数后面的非数值字符也将被忽略。 <BR><BR>4.parseInt <BR>语法:parseInt(expression,[radix]) <BR>参数:expression是转换为整数的字符串。 <BR>radix表示要分析数字的基数(基)的整数。合法值为2~36。此参数是可选的。 <BR>使用说明:函数。将字符串转换为整数。如果参数中指定的字符串不能转换为数字,则此函数返回NaN。以0开头的整数或指定基数为8的整数被解释为八进制数字;以0x开头的字符串被解释为十六进制数字。有效整数前面的空白将被忽略;有效整数后面的非数值字符也将被忽略。</FONT></TD></TR><TR style="HEIGHT: 396&#46;75pt" height=529><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 396&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl70 height=529><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040><FONT size=2><FONT face=宋体>1&#46;7&#46;3转换函数 <BR>该部分的Action是FlashMX2004用来处理内容格式转换的函数。 <BR><BR>1.Boolean(函数) <BR>语法:Boolean(expression) <BR>参数:expression是一个可转换为布尔值的表达式。 <BR>使用说明:函数。将参数expression转换为布尔值,并以如下形式返回值: <BR>·如果expression是布尔值,则返回值为expression。 <BR>·如果expression是数字,则在该数字不为零时返回值为true,否则为false。 <BR>·如果expression是字符串,则调用toNumber方法,并且在该数字不为零时返回值为true,否则为false。 <BR>·如果expression未定义,则返回值为false。 <BR>·如果expression是影片剪辑或对象,则返回值为true。 <BR><BR>2.Number(函数) <BR>语法:Number(expression) <BR>参数:expression是要转换为数字的表达式。 <BR>使用说明:函数。将参数expression转换为数字并按如下规则返回一个值: <BR>·如果expression为数字,则返回值为expression。 <BR>·如果expression为布尔值,当expression为true时,返回值为1;当expression为false时,返回值为0。 <BR>·如果expression为字符串,则该函数会尝试将expression解析为一个带有可选尾随指数的十进制数字。 <BR>·如果expression为undefined,则返回值为0。 <BR><BR>3.String(函数) <BR>语法:String(expression) <BR>参数:expression要转换为字符串的表达式。 <BR>使用说明:函数。返回指定参数的字符串表示形式,规则如下所示: <BR>·如果expression为布尔值,则返回字符串为true或false。 <BR>·如果expression是数字,则返回的字符串为此数字的文本表示形式。 <BR>·如果expression为字符串,则返回的字符串是expression。 <BR>·如果expression是一个对象,则返回值为该对象的字符串表示形式,它是通过调用该对象的字符串属性而生成的,如果不存在此类属性,则通过调用Object&#46;toString而生成。 <BR>·如果expression是一个影片剪辑,则返回值是以斜杠(/)记号表示的此影片剪辑的目标路径。 <BR>·如果expression为undefined,则返回值为空字符串。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 29&#46;25pt; mso-height-source: userset" height=39><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #0d0d0d; WIDTH: 602pt; HEIGHT: 29&#46;25pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid" class=xl69 height=39 width=802 colSpan=2><FONT class=font8 color=#dbe5f1 size=2 face=宋体><STRONG>1&#46;8命令中的常量</STRONG></FONT><FONT class=font9><BR><FONT color=#dbe5f1><FONT size=2><FONT face=宋体>  该部分的Action列出了FlashMX2004中常用的常量。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 288&#46;75pt" height=385><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; WIDTH: 21pt; HEIGHT: 288&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=385 width=28><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040 size=2 face=宋体>1.false <BR>语法:false <BR>使用说明:表示与true相反的惟一的布尔值。 <BR><BR>2.newline <BR>语法:newline <BR>使用说明:常量。插入一个回车符,该回车符在动作脚本代码中插入一个空行。newline可用来为代码中的函数或动作所获取的信息留出空间。 <BR><BR>3.null <BR>语法:null <BR>使用说明:关键字。一个可以赋予变量或者可以在函数未提供数据时由函数返回的特殊值。可以使用null表示缺少的或者未定义数据类型的值。 <BR><BR>4.true <BR>语法:true <BR>使用说明:表示与false相反的惟一布尔值。 <BR><BR>5.undefined <BR>语法:undefined <BR>使用说明:一个特殊值,通常用于指示变量尚未赋值。对未定义值的引用返回特殊值undefined。动作脚本代码typeof(undefined)返回字符串“undefined”。undefined类型的惟一值是undefined。 <BR>当将undefined转换为字符串时,变量的值转换为空字符串。undefined值与特殊值null相似。事实上,当使用相等运算符对null和undefined进行比较时,它们的比较结果为相等。</FONT></TD></TR><TR style="HEIGHT: 28&#46;5pt; mso-height-source: userset" height=38><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #0d0d0d; WIDTH: 602pt; HEIGHT: 28&#46;5pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid" class=xl69 height=38 width=802 colSpan=2><FONT color=#dbe5f1><FONT size=2><FONT face=宋体><FONT class=font8><STRONG>1&#46;9命令中的属性<BR>  </STRONG></FONT><FONT class=font9>用FlashMX2004制作或开发游戏,其中必不可少的就是使用脚本定义所有movie的属性。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 409&#46;6pt" height=547><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 409&#46;6pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl70 height=547><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040><FONT size=2><FONT face=宋体>1.MovieClip&#46;_alpha <BR>语法:"my"MovieClip&#46;_alpha <BR>使用说明:属性。设置或获取由MovieClip指定的影片剪辑的Alpha透明度(value)。有效值为0(完全透明)~100(完全不透明)。如果影片剪辑的_alpha设置为0,虽然其中的对象不可见,但也是活动的。 <BR><BR>2.MovieClip&#46;_currentframe <BR>语法:"my"MovieClip&#46;_currentframe <BR>使用说明:属性(只读)。返回由MovieClip指定的时间轴中播放头所处的帧的编号。 <BR><BR>3.MovieClip&#46;_droptarget <BR>语法:"my"MovieClip&#46;_droptarget <BR>使用说明:属性(只读)。以斜杠语法记号表示法返回MovieClip放置到的影片剪辑实例的绝对路径。_droptarget属性始终返回以斜杠(/)开始的路径。若要将实例的_droptarget属性与引用进行比较,请使用eval函数将返回值从斜杠语法转换为点语法表示的引用。 <BR><BR>4.MovieClip&#46;_focusrect <BR>语法:"my"MovieClip&#46;_focusrect <BR>使用说明:属性。一个布尔值,指定当影片剪辑具有键盘焦点时其周围是否有黄色矩形。该属性可以覆盖全局_focusrect属性。 <BR><BR>5.MovieClip&#46;_framesloaded <BR>语法:"my"MovieClip&#46;_framesloaded <BR>使用说明:属性(只读)。从SWF文件流中已经加载的帧数。该属性很有用,可确定特定帧及其前面所有帧的内容是否已经加载,并且是否可在本地浏览器中使用。该属性对于监视大SWF文件的下载很有用。例如,可以向用户显示一条消息以表明SWF文件正在下载,直到SWF文件中的指定帧完成下载为止。 <BR><BR>6.MovieClip&#46;_height <BR>语法:"my"MovieClip&#46;_height <BR>使用说明:属性。以px(像素)为单位设置和获取影片剪辑的高度。 <BR><BR>7.MovieClip&#46;_name <BR>语法:"my"MovieClip&#46;_name <BR>使用说明:属性。返回由MovieClip指定的影片剪辑的实例名称。 <BR><BR>8._quality <BR>语法:_quality <BR>使用说明:属性(全局)。设置或获取用于影片的呈现品质。设备字体始终是带有锯齿的,因此不受_quality属性的影响。 <BR><BR>9.MovieClip&#46;_rotation <BR>语法:"my"MovieClip&#46;_rotation <BR>使用说明:属性。以度为单位指定影片剪辑的旋转。 <BR><BR>10._soundbuftime <BR>语法:_soundbuftime=integer <BR>参数:integer表示在影片开始进入流之前缓冲的秒数。 <BR>使用说明:属性(全局)。规定声音流缓冲的秒数。默认值为5秒。 <BR><BR>11.MovieClip&#46;_target <BR>语法:"my"MovieClip&#46;_target <BR>使用说明:属性(只读)。返回MovieClip参数中指定的影片剪辑实例的目标路径。 <BR><BR>12.MovieClip&#46;_totalframes <BR>语法:"my"MovieClip&#46;_totalframes <BR>使用说明:属性(只读)。返回MovieClip参数中指定的影片剪辑实例中的总帧数。 <BR><BR>13.MovieClip&#46;_url <BR>语法:"my"MovieClip&#46;_url <BR>使用说明:属性(只读)。获取从中下载影片剪辑的SWF文件的URL。 <BR><BR>14.MovieClip&#46;_visible <BR>语法:MovieClip&#46;_visible <BR>使用说明:属性。一个布尔值,指示由MovieClip参数指定的影片是否可见。不可见的影片剪辑(_visible属性设置为false)处于禁用状态。例如,不能单击_visible属性已设置为false的影片剪辑中的按钮。 <BR><BR>15.MovieClip&#46;_width <BR>语法:MovieClip&#46;_width <BR>使用说明:属性。以px(像素)为单位设置和获取影片剪辑的宽度。 <BR><BR>16.MovieClip&#46;_x <BR>语法:MovieClip&#46;_x <BR>使用说明:属性。设置影片坐标的整数,该坐标是相对于父级影片剪辑的本地坐标。如果影片剪辑在主时间轴中,则其坐标系统将把舞台的左上角作为(0,0)。如果影片剪辑位于另一个具有变形的影片剪辑中,则该影片剪辑位于包含它的影片剪辑的本地坐标系统中。因此,对于逆时针旋转90°的影片剪辑,该影片剪辑的子级将继承逆时针旋转90°的坐标系统。 <BR>提示:影片剪辑的坐标指的是注册点的位置。 <BR><BR>17.MovieClip&#46;_xmouse <BR>语法:MovieClip&#46;_xmouse <BR>使用说明:属性(只读)。返回鼠标位置的坐标。 <BR><BR>18.MovieClip&#46;_xscale <BR>语法:MovieClip&#46;_xscale <BR>使用说明:属性。确定从影片剪辑的注册点开始应用的影片剪辑的水平缩放比例(percentage)。原始缩放参照点的默认坐标为(0,0)。 <BR><BR>19.MovieClip&#46;_y <BR>语法:MovieClip&#46;_y <BR>使用说明:属性。设置影片的坐标,该坐标为相对于父级影片剪辑的本地坐标。同MovieClip&#46;_x。 <BR><BR>20.MovieClip&#46;_ymouse <BR>语法:MovieClip&#46;_ymouse <BR>使用说明:属性(只读)。指示鼠标位置的坐标。 <BR><BR>21.MovieClip&#46;_yscale <BR>语法:MovieClip&#46;_yscale <BR>使用说明:设置从影片剪辑注册点开始应用的该影片剪辑的垂直缩放比例(percentage)。原始缩放参照点的默认坐标为(0,0)。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 27pt; mso-height-source: userset" height=36><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #0d0d0d; WIDTH: 602pt; HEIGHT: 27pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid" class=xl66 height=36 width=802 colSpan=2><FONT color=#dbe5f1><FONT size=2><FONT face=宋体><STRONG>1&#46;10对象命令<BR>  </STRONG><FONT class=font9>由于FlashMX2004的脚本编程方式符合面向对象概念,所以,对象的脚本集合也是开发者经常使用的。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 409&#46;6pt" height=547><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 819&#46;2pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl67 height=1094 rowSpan=2><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040 size=2 face=宋体>1&#46;10&#46;1核心对象 <BR><BR>1.arguments&#46;callee <BR>语法:arguments&#46;callee <BR>使用说明:属性。指当前被调用的函数。 <BR><BR>2.arguments&#46;caller <BR>语法:arguments&#46;caller <BR>使用说明:属性。指进行调用的函数的arguments对象。 <BR><BR>3.arguments&#46;length <BR>语法:arguments&#46;length <BR>使用说明:属性。实际传递给函数的参数数量。 <BR><BR>4.Array <BR>语法:newArray() <BR>newArray(length) <BR>newArray(element0,element1,element2,&#46;&#46;&#46;,elementN) <BR>参数:length是一个指定数组中元素数量的整数。在元素不连续的情况下,length参数指定的是数组中最后一个元素的索引号加1。 <BR>element0&#46;&#46;&#46;elementN是一个包含两个或多个任意值的列表。这些值可以是数字、字符串、对象或其他数组。数组中第一个元素的索引或位置始终为0。 <BR>使用说明:Array对象的构造函数。用户可以使用构造函数来创建不同类型的数组,如空数组、具有特定长度但其中元素没有值的数组或其中元素具有特定值的数组。 <BR><BR>5.Boolean <BR>语法:newBoolean([x]) <BR>参数:x为任何表达式。此参数是可选的。 <BR>使用说明:Boolean对象的构造函数。创建Boolean对象的实例。如果省略x参数,则将Boolean对象初始化值为false。如果为x参数指定值,则该方法会计算它,并根据Boolean函数中的规则以布尔值返回结果。 <BR><BR>6.Date <BR>语法:newDate() <BR>newDate(year,month[,date[,hour[,minute[,second[,millisecond]]]]]) <BR>参数:year为一个0~99之间的值,表示1900年~1999年;如果年份不在上述范围内,则必须指定表示年份数的所有4位数字。 <BR>返回:整数 <BR>使用说明:Date对象的构造函数。构造一个新的Date对象,该对象保存当前日期和时间或指定的日期。 <BR><BR>7._global <BR>语法:_global&#46;identifier <BR>返回值:对包含核心动作脚本类的全局对象(例如String,Object,Math和Array)的引用。 <BR>使用说明:标识符。创建全局变量、对象或类。 <BR><BR>8.Math <BR>语法:Math&#46;abs(x) <BR>参数:x为一个数字。 <BR>返回值:一个数字。 <BR>使用说明:方法。计算并返回由参数x指定的数字的绝对值。 <BR><BR>9.Math&#46;acos <BR>语法:Math&#46;acos(x) <BR>参数:x为一个介于-1&#46;0~1&#46;0之间的数字。 <BR>使用说明:方法。以弧度为单位计算并返回参数x中指定的数字的反余弦值。 <BR><BR>10.Math&#46;asin <BR>语法:Math&#46;asin(x) <BR>参数:x为一个介于-1&#46;0~1&#46;0之间的数字。 <BR>使用说明:方法。以弧度为单位计算并返回参数x中指定的数字的反正弦值。 <BR><BR>11.Math&#46;atan <BR>语法:Math&#46;atan(x) <BR>参数:x为一个数字。 <BR>使用说明:方法。计算并返回参数x中指定的数字的反正切值。返回值介于-π/2~+π/2之间。 <BR><BR>12.Math&#46;atan2 <BR>语法:Math&#46;atan2(y,x) <BR>参数:x为一个数字,指定点的x坐标;y为一个数字,指定点的y坐标。 <BR>使用说明:方法。以弧度为单位计算并返回y/x的反正切值。返回值表示正切值为y/x相应的角,其中x是临边边长,而y是对边边长。 <BR><BR>13.Math&#46;sqrt <BR>语法:Math&#46;sqrt(x) <BR>参数:x为一个大于等于0的数字或表达式。 <BR>使用说明:方法。计算并返回指定数字的平方根。 <BR><BR>14.Number <BR>语法:myNumber=newNumber(value) <BR>参数:value是要创建的Number对象的数值,或者要转换为数字的值。 <BR>使用说明:构造函数。新建一个Number对象。 <BR><BR>15.Object <BR>语法:newObject([value]) <BR>参数:value表示要转换为对象的数字、布尔值或字符串。此参数是可选的。如果未指定value,则该构造函数将创建一个未定义属性的新对象。 <BR>使用说明:Object对象的构造函数。新建一个Object对象。 <BR><BR>16.String <BR>语法:newString(value) <BR>参数:value为新String对象的初始值。 <BR>使用说明:String对象的构造函数。创建一个新String对象。 <BR><BR>17.Super <BR>语法:super&#46;method([arg1,&#46;&#46;&#46;,argN]) <BR>super([arg1,&#46;&#46;&#46;,argN]) <BR>参数:method表示要在超类中调用的方法。 <BR>arg1,&#46;&#46;&#46;,argN为可选参数,这些参数或者传递给方法的超类版本,或者传递给超类的构造函数。 <BR>返回值:两种格式都调用一个函数。该函数可以返回任何值。 <BR>使用说明:运算符。第一种语法格式可以用于对象方法体内,用以调用方法的超类版本,而且可以选择向超类方法传递参数(arg1&#46;&#46;&#46;argN)。这对于创建某些子类方法很有用,这些子类方法在向超类方法添加附加行为的同时,又调用这些超类方法执行其原始行为。 <BR>第二种语法格式可以用于构造函数体内,用以调用此构造函数的超类版本,而且可以选择向它传递参数。这对于创建子类很有用,该子类在执行附加的初始化的同时,又调用超类构造函数执行超类初始化。 <BR></FONT></TD></TR><TR style="HEIGHT: 409&#46;6pt" height=547><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; HEIGHT: 409&#46;6pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 height=547 width=774><FONT color=#404040 size=2 face=宋体>1&#46;10&#46;2影片对象 <BR><BR>1.Accessibility&#46;isActive <BR>语法:Accessibility&#46;isActive() <BR>返回值:布尔值 <BR>使用说明:方法。指示屏幕阅读器程序当前是否处于活动状态。当希望影片在有屏幕阅读器的情况下行为方式不同时,可使用此方法。 <BR><BR>2.Button&#46;getDepth <BR>语法:myButton&#46;getDepth() <BR>使用说明:方法。返回按钮实例的深度。 <BR><BR>3.Button&#46;enabled <BR>语法:myButton&#46;enabled <BR>使用说明:属性。指定按钮是否处于启用状态的布尔值,默认值为true。 <BR><BR>4.Button&#46;tabEnabled <BR>语法:myButton&#46;tabEnabled <BR>使用说明:属性。可以对MovieClip,Button或TextField对象的实例设置该属性,默认情况下它是未定义的。 <BR><BR>5.Button&#46;tabIndex <BR>语法:myButton&#46;tabIndex <BR>使用说明:属性。使用户可以自定义影片中对象的Tab键排序。可以对按钮、影片剪辑或文本字段实例设置tabIndex属性,默认情况下为undefined。 <BR><BR>6.Button&#46;trackAsMenu <BR>语法:myButton&#46;trackAsMenu <BR>使用说明:属性。指示其他按钮或影片剪辑是否可接收鼠标按钮释放事件的布尔值属性。这将允许用户创建菜单。用户可以设置任何按钮或影片剪辑对象的trackAsMenu属性。如果trackAsMenu属性不存在,则默认行为为false。用户可以在任何时间更改trackAsMenu属性,修改后的按钮会立即采用新的行为。 <BR><BR>7.myButton&#46;useHandCursor <BR>语法:myButton&#46;useHandCursor <BR>使用说明:属性。一个布尔值,当设置为true时,指示在用户用鼠标指针滑过按钮时是否显示手形光标,useHandCursor的默认值为true;如果useHandCursor属性设置为false,则将改用箭头光标。用户可以在任何时间更改useHandCursor属性,修改后的按钮会立即采用新的光标行为。可以从原型对象中读出useHandCursor属性。 <BR><BR>8.System&#46;capabilities&#46;hasAudio <BR>语法:System&#46;capabilities&#46;hasAudio <BR>使用说明:属性。指示播放器是否具有音频功能的布尔值,默认值为true。其服务器字符串为A。 <BR><BR>9.System&#46;capabilities&#46;hasAudioEncoder <BR>语法:System&#46;capabilities&#46;hasAudioEncoder <BR>使用说明:属性。音频解码器的数组。其服务器字符串为AE。 <BR><BR>10.System&#46;capabilities&#46;screenColor <BR>语法:System&#46;capabilities&#46;screenColor <BR>使用说明:属性。指示屏幕的颜色是彩色(color)、灰度(gray)还是黑白(bw)的,默认值为color。其服务器字符串为SC。 <BR><BR>11.Color <BR>语法:newColor(target) <BR>参数:target为影片剪辑的实例名称。 <BR>使用说明:构造函数。为由target参数指定的影片剪辑创建Color对象的实例,然后可使用该Color对象的方法来更改整个目标影片剪辑的颜色。 <BR><BR>12._level <BR>语法:_levelN <BR>使用说明:属性。对_levelN的根影片时间轴的引用。用户必须使用loadMovieNum动作将影片加载到FlashPlayer中后,才可使用_level属性来定位这些影片。还可使用_levelN来定位由N所指定级别处的已加载影片。 <BR>加载到FlashPlayer实例中的初始影片会自动加载到_level0。_level0中的影片为所有随后加载的影片设置帧频、背景色和帧大小,然后影片堆叠在处于_level0的影片之上的更高编号级别中。 <BR>必须为每个使用loadMovieNum动作加载到FlashPlayer中的影片分配一个级别。用户可以按任意顺序分配级别。如果分配的级别(包括_level0)中已经包含SWF文件,则处于该级别的影片将被卸载并被替换为新影片。 <BR><BR>13._parent <BR>语法:_parent&#46;property <BR>_parent&#46;_parent&#46;property <BR>使用说明:属性。指定或返回一个引用,该引用指向包含当前影片剪辑或对象的影片剪辑或对象。当前对象是包含引用_parent的动作脚本代码的对象。使用_parent来指定一个相对路径,该路径指向当前影片剪辑或对象上级的影片剪辑或对象。 <BR><BR>14._root <BR>语法:_root&#46;movieClip <BR>_root&#46;action <BR>_root&#46;property <BR>使用说明:属性。指定或返回指向根影片时间轴的引用。如果影片有多个级别,则根影片时间轴位于包含当前正在执行脚本的级别上。指定_root与在当前级别内用斜杠记号(/)指定绝对路径的效果相同。</FONT></TD></TR><TR style="HEIGHT: 192&#46;75pt" height=257><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #fcd5b4; HEIGHT: 192&#46;75pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl70 height=257><FONT color=#404040 size=2 face=宋体> </FONT></TD><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black; BACKGROUND-COLOR: #fcd5b4; WIDTH: 581pt; BORDER-TOP: black; BORDER-RIGHT: black 1pt solid" class=xl68 width=774><FONT color=#404040><FONT size=2><FONT face=宋体>1&#46;10&#46;3客户端/服务器对象 <BR>1.LoadVars <BR>语法:newLoadVars() <BR>使用说明:构造函数。创建LoadVars对象的实例,然后用户可使用该LoadVars对象的方法来发送和加载数据。 <BR><BR>2.XML <BR>语法:newXML([source]) <BR>参数:source为创建新的XML对象而进行分析的XML文本。 <BR>使用说明:构造函数。创建一个新的XML对象。必须使用构造函数方法创建一个XML对象的实例之后,才能调用任何一个XML对象的方法。 <BR>createElement与createTextNode方法是用于在XML文档树中创建元素和文本节点的“构造函数”方法。 <BR><BR>3.XMLSocket <BR>语法:newXMLSocket() <BR>使用说明:构造函数。创建一个新的XMLSocket对象。XMLSocket对象开始时未与任何服务器连接,必须调用XMLSocket&#46;connect方法将该对象连接到服务器。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></TD></TR><TR style="HEIGHT: 51&#46;75pt; mso-height-source: userset" height=69><TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; BACKGROUND-COLOR: #0d0d0d; WIDTH: 602pt; HEIGHT: 51&#46;75pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid" class=xl66 height=69 width=802 colSpan=2><FONT size=2><FONT color=#dbe5f1><FONT face=宋体><STRONG>本章小结 <BR>  </STRONG><FONT class=font9>本章系统地介绍了Flash开发的一些基础知识,从Flash游戏的开发制作基础知识入手,生动地介绍了Flash游戏开发应该注意的地方;介绍的Flash网站能让您大开眼界;最后介绍了FlashMX2004的编程基础知识及一些经常应用到的编辑命令,方便读者在后面的游戏制作过程中使用。<SPAN style="mso-spacerun: yes"> </SPAN></FONT></FONT></FONT></FONT></TD></TR></TBODY></TABLE></P>
回复

使用道具 举报

签到天数: 1 天

[LV.1]初来乍到

172

主题

2203

帖子

5863

积分

LV 11.会员

我想进入游戏圈子,求人提携指教

积分
5863

社区居民偶尔光临工蜂最爱沙发业余写手常坐沙发沙发如床社区平民做个有钱人常驻会员略有小成渐入佳境忠实会员

沙发
发表于 2011-8-30 09:47:21 | 只看该作者
好文,慢慢看,FLASH游戏是大趋势啊,
这辈子不会的只有两件事,这也不会,那也不会
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

     
    Archiver|手机版|小黑屋|( 沪ICP备12034951号 )

GMT+8, 2024-5-3 09:09 , Processed in 0.131065 second(s), 31 queries .

© 2001-2011 Powered by Discuz! X3.1

快速回复 返回顶部 返回列表