Director 编写自己的行为

2016-03-18 15:53 63 1 收藏

想不想get新技能酷炫一下,今天图老师小编就跟大家分享个简单的Director 编写自己的行为教程,一起来看看吧!超容易上手~

【 tulaoshi.com - 设计软件 】


一、什么是行为

   行为是一类特殊的剧本,即我们通常所说的Behavior。为了明白其具体含义,让我们先来看看什么是剧本。

   在Director中,虽然只要通过鼠标的点击和拖动等一些非代码的操作就可以实现许多复杂的交互和演示,但Director强大的真正原因之一在于拥有内置的编程语言Lingo,这也是它能够成为一个完整多媒体开发平台的关键。而Lingo作为Director的核心内容,则是通过各种不Tulaoshi.com同类型的剧本来实现其作用的。

   Director中的剧本共有四种:
   * 影片剧本(Movie Script):作用于整个影片,包含有可供其它剧本调用的处理程序。
   * 父代剧本(Parent Script):仅在进行面向对象编程时使用。
   * 行为剧本(Behavior Script):根据作用区域不同分为角色剧本(Sprite Script)和帧剧本(Frame Script),分别控制相应的角色或帧。
   * 演员表剧本(Cast Script):隶属于相应的演员,作用于所有使用此演员的角色。

   这四种剧本互相协作,对影片进行着全面的控制。而其中的行为剧本,使用得最为广泛。

二、为什么要使用行为

   那么为什么要使用行为呢?也就是说,使用行为有什么好处呢?

   其实,行为的最大优势在于能够批量“生产”和“操纵”特定的角色或帧。举个简单的例子来说,如果我们需要制作一些简单的导航按钮,则只需编写下面这段代码即可:

on mouseUp me
go to frame 5
end


   这段代码的含义非常简单:当在此按钮上点击鼠标时播放头跳到第5帧。我们只要将其赋予某个按钮,即可实现相应的导航功能。

   如果只需少量这样的按钮,则并不能看出来行为的优势,但如果需要制作许多这样的导航按钮且导航目的地不同时,行为的优势便显而易见了。简单的说,只需编写一个简单的导航行为,就可“以不变应万变”。


三、编写自己的行为

   下面我们就以上面所提到的导航按钮为例,编写一个简单完整的“Guide Behavior”。

   1. 准备素材:

   首先,准备需要使用的演员(包括文本演员和按钮演员各4个)并将其置于舞台之上,完成后的结果如图所示。其中4个文本演员生成的角色分别位于通道1中的不同帧。


   2. 编写剧本:

   打开剧本窗口,建立一个名为“Loop”的剧本演员,并在属性监察窗中将其属性调整为“Behavior”,然后输入下面的代码:

on exitFrame me
go to the frame
end

   上面这段代码使得播放头始终在当前帧上循环,直至发出跳出循环的命令。其实这个“Loop”便是一个简单的行为,只不过它并没有需要设置的参数。

   使用相同的方法建立一个名为“Guide”的剧本演员并调整其属性,然后输入下面的代码:

property pTargetFrame

on getPropertyDescriptionList me
list = [:]
addProp list , # pTargetFrame, [ # comment: "Go To Frame" , # format: #integer , # range: [ # min: 1 , # max: 25 ], # default: 1 ]
return list
end

on mouseUp me
go to frame pTargetFrame
end

   3. 添加Script:

   将行为“Loop”分别拖拽到分镜表窗口帧通道的1、5、16、24帧,以使影片能够在这些帧上循环播放。

   以同样的方法将行为“Guide”拖拽到角色2(由演员“Button01”生成)上,此时会出现下图所示的参数对话框。通过这个对话框,可以直接指定“go to frame pTargetFrame”命令中pTargetFrame的取值。利用滑动条,在当前对话框中指定其取值为“1”。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/shejiruanjian/)

   分别对角色3、4、5进行相同的操作,只不过需要在参数对话框中指定不同的pTargetFrame取值:角色3的pTargetFrame = 5,角色4的pTargetFrame = 16,角色5的pTargetFrame = 24。

   从以上的操作中可以看到,此时的pTargetFrame已经成为了一个“变量”,我们完全可以根据需要指定其取值,从而避免了为不同的导航目的地编制不同的导航命令。这便是行为的强大之处。


 

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/shejiruanjian/)四、完善自己的行为

   虽然“Guide”行为已经能够发挥其应有的作用,但离完整的行为还有一段距离,下面让我们来对其进行一些完善。

   1. getPropertyDescriptionList函数的使用

   在编写上面的“Guide”行为时,我们使用了一个名为“getPropertyDescriptionList”的函数,那么这个函数具体有什么作用呢?

   getPropertyDescriptionList函数实际上返回的是一个属性列表,而其中的属性和属性

12下一页

来源:https://www.tulaoshi.com/n/20160318/1888476.html

延伸阅读
在VCL中包含有一个TList类,几乎可以实现链表所有功能,Delphi的工程师真是伟大。但是在实际应用中需要TTree类,来实现树的功能,我写了两个类TyuTree,TYuNode。可以方便实现,树创建,结点增删、移动功能。请大家指教。代码实例:Procedure Test();Var YuTree: TyuTree;Node: TYuNode;Begin    //第1步:创建树、增加第一个结点0Yu...
标签: 月经
    经期有些事情是不可以去做的,做了就会伤害自己的身体。经期不能做的事情有哪些呢?经期不能做的事情有很多,但是以下三件事请如果你做了就会有很严重的后果。   1、饮酒   后果:容易醉酒从而引发肝脏毛病有研究认为,女性在月经期间体内激素水平发生较大波动,此时饮酒较平时更易醉,且酒精对...
标签: 育儿知识
怎样教孩子对自己的行为负责 有人说,父母对孩子过分溺爱,将会使孩子缺乏责任心。这个问题应该怎么来理解?应该怎样从小培养孩子的责任心? 笔者在美国访问进修时,曾看到当地报纸上登过一则报道,讲一个小学生因破坏性行为受到停乘校车1周的处罚,孩子只好每天步行上学。有人问他的母亲为什么不用家里的汽车送他去上学,孩子的母亲坚决地说...
标签: PHP
               搞完了PHP4调用JavaBean,又想去试试调用COM,开始以为很难,自己用VB6写了一个Active Dll在PHP4中调用,马上成功,比调用javabean方便多了,下面讲一下我的步骤。      下载的版本是从http://www.mm4.de/。     &nbs...
  可视化控件(Visual Component)实际上就是一个类(class),要编写一个类,可以直接在*.pas文件中编写。但是要编写控件,则必须使用包(package)。从File菜单中选择New,新建一个Package,这就是存放和安装控件用的包。然后单击Package窗口中的Add按钮,添加一个元件(Unit)。 在弹出的对话框最上方选择New Component。因为一...

经验教程

955

收藏

28
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部