|
5#
楼主 |
发表于 2014-11-5 07:42:16
|
只看该作者
<P 0.4cm 0cm 0pt"><B>Lingo魔法书--导航语句</B>
<P align=left> 上次我们探讨了关于Lingo语言的基本格式.从本次开始我们就来一个个实际的Lingo语言.今天我们学习导航命令.
<TABLE width="75%" border=0>
<TR>
<TD bgColor=#cccccc>go语句</TD></TR>
<TR>
<TD height=294>
<P 0.4cm 0cm 0pt"><B>go frame <帧数></B> --跳转到第某个画面,例子 go frame 20,播放头跳到第20帧.
<P 0.4cm 0cm 0pt"><B>go the frame</B> --播放头停在某个画面.
<P 0.4cm 0cm 0pt"><B>go <标记> </B>--跳到某个有标记的画面.
<P 0.4cm 0cm 0pt"><B>go movie <电影名字> </B>--从现在的电影跳转到另外一个电影中去.例如go movie "hello" 跳转到名字叫hello的电影中.
<P 0.4cm 0cm 0pt">下面是两个扩展命令
<P 0.4cm 0cm 0pt"><B>go <帧数> of movie <电影名字></B> --跳转到另外一个电影的某个画面.
<P 0.4cm 0cm 0pt"><B>go <标记> of movie <电影名字></B> --跳转到另外一个电影的某个标记.
<P 0.4cm 0cm 0pt">
</TD></TR></TABLE>
<P align=left> go命令我们已经很熟悉了那就是可以使用go直接跳转画面.停住播放头.这些我们都在第一个例子中进行了一个试验.这次我们着重要说的是画面的标记mark.什么叫做标记呢,故名思意就是给一个帧做上一个标记.现在有这样的一个例子.我要跳转到第20帧,Lingo语言应该怎样写呢?
<P align=center><B>go frame 20</B>
<P align=left>用了帧标记是怎样呢?比如我给20帧加上一个标记,名字叫做"ok".我们可以这样写.
<P align=center><B>go "ok"</B>
<P align=left><B><FONT color=#ff0000>这两条命令是等价的<FONT color=#000000>.</FONT></FONT></B><FONT color=#ff0000><FONT color=#000000>大家可以分别单击下面的两条语句来观察结果.在下手之前大家想一下,如果我到了第20帧想回来应该怎样写Lingo语句呢?</FONT></FONT>
<P align=center>
<OBJECT codeBase=http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=7,0,2,0 height=300 width=400 classid=clsid:166B1BCA-3F9C-11CF-8075-444553540000><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><br /> <embed src="10525/lingo2-1.dcr" pluginspage="http://www.macromedia.com/shockwave/download/" width="400" height="300"> </embed> </OBJECT>
<P align=left>读者也许会问,用了标记有什么好处呢?标记的好处至少可以有两条.
<P align=left>1.好记.当我们的画面数非常多的时候我们是记不清楚什么地方是什么东西的.做了标记之后一目了然.
<P align=left>2.标记可以移动.比如本来我们做了一个交互是跳转到20帧,等下修改程序之后变成跳到30帧.这个时候非修改你的Lingo语句不可.但是现在我们可以直接把标记用鼠标移动到30帧,就可以完成修改.对于制作是很方便的.
<P align=left>哦忘记了最重要的事情,标记怎么做呢?
<P align=left><img src="http://wwwb.pconline.com.cn/pcedu/sj/jq/lingo/10525/lingo5-1.gif">
<P align=left>在Score的最上端就是标记区.在要做标记的帧上,单击这个地方,然后输入名字就好了.
<P align=left><img src="http://wwwb.pconline.com.cn/pcedu/sj/jq/lingo/10525/lingo5-2.gif">
<P align=left> 要删除一个标记.只要把标记拖出窗口就可以了.这里再提示一下,单击左侧的箭头会弹出下拉菜单.可以在里面选择标记.选中后播放头会直接跳到标记.还有两个左右箭头分别表示跳转到前一个标记和后一个标记.当你的时间轴太长的时候.这是一个很好的定位办法哦.
<P align=left><img src="http://wwwb.pconline.com.cn/pcedu/sj/jq/lingo/10525/lingo5-3.gif">
<P align=left>
<TABLE width="75%" border=0>
<TR>
<TD bgColor=#cccccc>Play语句</TD></TR>
<TR>
<TD height=294>
<P 0.4cm 0cm 0pt"><B>play frame <帧数></B> --跳转到第某个画面,例子 play frame 20,播放头跳到第20帧.
<P 0.4cm 0cm 0pt"><B>play the frame</B> --播放头停在某个画面.
<P 0.4cm 0cm 0pt"><B>play <标记> </B>--跳到某个有标记的画面.
<P 0.4cm 0cm 0pt"><B>play movie <电影名字> </B>--从现在的电影跳转到另外一个电影中去.例如go movie "hello" 跳转到名字叫hello的电影中.
<P 0.4cm 0cm 0pt">下面是两个扩展命令
<P 0.4cm 0cm 0pt"><B>play <帧数> of movie <电影名字></B> --跳转到另外一个电影的某个画面.
<P 0.4cm 0cm 0pt"><B>play <标记> of movie <电影名字></B> --跳转到另外一个电影的某个标记.
<P 0.4cm 0cm 0pt"><FONT color=#ff0000><B>play done --跳回上一次play的地方.比如在20帧执行了play 30.在30帧执行play done就会跳回20帧.</B></FONT>
</TD></TR></TABLE>
<P align=left> Play 语句和Go语句大体相同,只是多了一个<B>play done.</B>凡是用play语句跳转的都可以使用play done跳转回去.有了play done就更加简单了.go语句和play语句都可播放另外一个电影文件.但是返回的时候go必须写清楚跳转回去的电影和帧数,而play只要用play done就可以回去了.书写更简单.看看下面的例子.单击语句可以执行.
<P align=center>
<OBJECT codeBase=http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,0,0,0 height=300 width=400 classid=clsid:166B1BCA-3F9C-11CF-8075-444553540000><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><br /> <embed src="10525/lingo2-2.dcr" pluginspage="http://www.macromedia.com/shockwave/download/" width="400" height="300"> </embed> </OBJECT>
<P align=left>下面我们做一个练习.给你4张图片,要求你每单击一张图片就显示下面一张图片.单击最后一张图片显示第一张图片.就像下面的例子.
<P align=center>
<OBJECT codeBase=http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,0,0,0 height=200 width=200 classid=clsid:166B1BCA-3F9C-11CF-8075-444553540000><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><PARAM><br /> <embed src="10525/lingo2-3.dcr" pluginspage="http://www.macromedia.com/shockwave/download/" width="200" height="200"> </embed> </OBJECT>
<P align=center><img src="http://wwwb.pconline.com.cn/pcedu/sj/jq/lingo/10525/lingo5-4.gif">
<BLOCKQUOTE>
<DIV align=left>
<P 0.4cm 0cm 0pt">上面就是这个例子的流程图.总体思路:播放每个图片的时候停住.单击图片跳转.设置一组标记方便跳转.
<P 0.4cm 0cm 0pt">1.停住图片
<P 0.4cm 0cm 0pt">把4个图托拽到流程线上.每个图的最后都加了go the frame语句.作用是让显示图的时候播放头定在原地.这4个脚本都是只和帧本身有关系.所以我们用frame脚本.
<P 0.4cm 0cm 0pt">2.进行跳转:
<P 0.4cm 0cm 0pt">接下来要得是单击图片往下走.因为是单击图片以后才做动作.因此命令要写在图片里面.也就是Sprite脚本.单击每个图片,按右键在里面写上语句,go "t2" 跳转到第二张.以此类推.事件因为是单击可以用 on mouseup me.当鼠标抬起.
<P 0.4cm 0cm 0pt">OK如果你做好了整个的程序.
<P 0.4cm 0cm 0pt">
<P 0.4cm 0cm 0pt">==进阶学习==
<P 0.4cm 0cm 0pt">这里给大家介绍一个小技巧这里如果不考虑最后一张图跳转到第一张的话.我们可以让所有的图片都是用一个脚本.
<P 0.4cm 0cm 0pt">go marker(1)
<P 0.4cm 0cm 0pt">marker()是一个函数专门用来返回下一个标记的帧数.mark(1)表示当前帧下一个标记的帧数.
<P 0.4cm 0cm 0pt">例如在t1这里mark(1)的值是t2的帧数也就是"20".相当于执行了go frame 20.
<P 0.4cm 0cm 0pt">以此类推.marker(2)就是下2个标记帧数,mark(0)就是当前的. mark(-1)前一个.mark("t1")表示"t1"这个标记的帧数.
</DIV></BLOCKQUOTE>
<DIV align=center>
<P align=left> 作业:做一个展示的东西 有前后翻页箭头可以翻页.
</DIV> |
|