亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > 媒體動畫 > 正文

Director基礎教程:Director 影片劇本、父代劇本與行為

2024-09-08 19:27:09
字體:
來源:轉載
供稿:網友
director 影片劇本、父代劇本與行為
   原著:lingoworkshop
   翻譯:alphachi

   在director中,對于每一種演員類型,都對應著一個“type”屬性。director本身支持的演員類型包括#bitmap、#shape和#field等;其他的一些演員類型,例如#quicktime和#flash,通過內部的xtras也可支持;此外,一些第三方的xtras還能夠創建像#osbox和#ospopupmenu這些類型的演員。

   影片劇本、父代劇本和行為都是#scrpit類型的演員,也就是我們通常所說的劇本演員。

   每一個劇本演員都擁有一個“scripttype”屬性——影片劇本的scripttype是#movie,行為的scripttype是#score,父代劇本的scripttype是#parent。scripttype的重要性在于:

   (1)它決定了一個劇本的作用范圍:影片劇本可以作用于全局范圍;而行為和父代劇本則只可作用于局部范圍。

   (2)在創作模式下,它決定了劇本演員能否被添加到一個角色上:行為能夠被拖拽到角色上并觸發這樣的進程——自動添加行為到角色的scriptlist中,并生成mui對話框以設定具體的屬性數值;而影片劇本和父代劇本則不能被拖拽到角色上,盡管它們可以通過lingo被添加到scriptlist中。

   每一個劇本演員還有一個“scrpittext”屬性,scripttext是在影片運行時或是在消息窗口中運行命令時被執行的lingo代碼;而為了執行這些lingo代碼,director會從劇本演員中創建一個“劇本對象”。當影片運行時,這一過程對于影片劇本來說是自動進行的,而對于父代劇本和行為則必須通過使用“script”關鍵字進行。

   要想創建對劇本演員的一個引用,可以像下面這樣使用“member”關鍵字:

scriptcastmemberreference = member (“scriptcastmembername”)
put scriptcastmemberreference
-- (member 3 of castlib 1)

   要想創建對劇本對象的一個引用,可以像下面這樣使用“script”關鍵字:

scriptobject = script (“scriptcastmembername”)
put scriptobject
-- (script “scriptcastmembername”)

   劇本對象擁有自己獨立的屬性,能夠響應發送給它的各種消息,例如#mousedown這樣的標準事件和#dothishandle這樣的自定義消息。從不同的scripttype中創建的劇本對象本質上都是相同的,唯一的區別在于,director如何給它們發送消息和它們如何被創建。

   director會給影片劇本對象創建一個特殊的內部引用,因此如果不指明要回應消息的劇本對象,director將認定這個消息是為影片劇本的劇本對象設計的,并會將其發送給已經創建的所有影片劇本對象,直到找到了能夠響應此消息的對象為止。在以這種方式將消息發送給影片劇本對象時,不能夠包含任何特定的參數。但如果創建的是一個對此劇本的明確引用,那么在使用這個引用給對象發送消息的時候則可以包含引用本身。

   要想證明這一點,可以創建一個名為“ascriptname”的影片劇本并賦予下面的scripttext:

on handlername scriptobj
put # handlername, scriptobj
end

   如果此時在消息窗口中鍵入“handlername”,則會得到下面的結果:

handlername
-- #handlername <void>

   但如果創建的是一個明確的引用,那么給其發送消息后會得到下面的結果:

scriptobject = script (“ascriptname”)
scriptobject.handlername()
-- #handlername (script “ascriptname”)

   為了試驗,將影片劇本的scripttext改成下面這樣:

on handlername scriptobj
put “nothing here, move along”, scriptobj
end

   點擊“recompile”,然后在消息窗口中鍵入“handlername”并回車,將會看到:

handlername
-- “nothing here, move along” <void>

   這是因為,在調用沒有引用的處理程序時“scripttext”已經改變,所以點擊“recompile”后消息被發送給了新創建的影片劇本對象。但如果我們先發送消息的話,將會看到:

scriptobject.handlername()
-- #handlername (script “ascriptname”)

   在第二個例子中,劇本對象實際執行的代碼并未改變,其存在與劇本演員本身無關。

   現在,將此影片劇本的scripttype改成#parent/#behavior,并對scripttext作如下更改:

on handlername scriptobj
put “i am a script with limited scope”
end

   此時在消息窗口中再次鍵入“handlername”,將會看到:

handlername
-- #handlername <void>

   影片劇本已經不存在了,消息怎么會還能夠被響應呢?這是因為任何在消息窗口中創建的變量均被認為是全局變量,所以早些時候用“scriptobject = script(“ascriptname”)”創建的對影片劇本的引用依然能夠正常工作。此對象是從影片劇本中創建的,director用它來響應消息窗口中發出的“handlername”消息。

   在消息窗口中鍵入:

scriptobject = void
handlername

   這次將會得到“handler not defindeed error”的提示,因為已經沒有影片劇本對象可以響應“handlername”消息了。盡管還存在一個劇本演員,它的scripttext中也定義有“handlername”處理程序,但此劇本演員不是影片劇本,因此director不能自動從中創建劇本對象。雖然我們已經從父代劇本/行為中創建了一個劇本對象,但由于沒有直接將消息發送給對象本身,導致它依然無法響應“handlername”消息。要想獲取父代劇本或行為中創建的劇本對象,應該指明具體的目標:

scriptobject = script (“ascriptname”)
scriptobject.handlername()
-- #handlername (script ”ascriptname”)

   綜上所述,從影片劇本和父代劇本/行為中創建的劇本對象之間的區別在于:

   (1)director只會從影片劇本中自動創建劇本對象。

   (2)director可以自動將“無目標”消息發送給從影片劇本中創建的劇本對象,而不會發

[1] [2] 下一頁  

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲第一精品久久忘忧草社区| 欧美日韩高清区| 久久久久久久久久久免费| 欧美一级电影免费在线观看| 欧美大片在线影院| 国产精品国产福利国产秒拍| 98精品国产自产在线观看| 欧美老少做受xxxx高潮| 欧美性xxxx极品hd欧美风情| 精品久久久久久久大神国产| 久久久久久久999| 亚洲xxxxx性| 中文字幕日韩欧美精品在线观看| 国产在线精品自拍| 日韩中文字幕第一页| 亚洲黄色在线观看| 久久精品久久久久| 98午夜经典影视| 国产亚洲精品成人av久久ww| 中文字幕国产亚洲2019| 国产精品96久久久久久| 欧美精品福利视频| 91久久久久久久久久久| 国产精品视频内| 91九色蝌蚪国产| 亚洲第一天堂无码专区| 国产精品1区2区在线观看| 亚洲一区亚洲二区亚洲三区| 日韩中文字幕第一页| 亚洲日本中文字幕免费在线不卡| 日韩电影中文字幕av| 深夜精品寂寞黄网站在线观看| 俺也去精品视频在线观看| 亚洲男女性事视频| 国产精品福利在线观看网址| 亚洲精品白浆高清久久久久久| 亚洲专区在线视频| 68精品久久久久久欧美| 久久精品视频免费播放| 亚洲欧洲黄色网| 91久久久久久久久久久久久| 国产成人精品午夜| 欧美在线一级va免费观看| 亚洲欧美福利视频| 国产98色在线| 日韩精品在线观| 91国产精品视频在线| 伊人男人综合视频网| 欧美一级电影免费在线观看| 国产福利精品av综合导导航| 精品久久久久国产| 日韩av在线导航| 精品国产户外野外| 日韩av电影中文字幕| 欧美性xxxxx极品娇小| 国产精品国产三级国产专播精品人| 国产在线观看一区二区三区| 欧美亚洲国产成人精品| 久久综合伊人77777| 九九久久久久久久久激情| 91精品国产91久久久久久| 国产成人一区二区| 国产高清在线不卡| 成人亚洲综合色就1024| 国产精品嫩草视频| 国产午夜精品美女视频明星a级| 亚洲欧美综合另类中字| 国产精品久久久久久久久久久不卡| 午夜精品久久久久久99热| 亚洲视屏在线播放| 国产999精品| 91在线高清免费观看| 国产精品视频xxx| 日韩免费av片在线观看| 亚洲剧情一区二区| 欧美一级bbbbb性bbbb喷潮片| 久久久久久久久久久国产| 欧美日韩激情美女| 久久艳片www.17c.com| 国产精品久久久久久搜索| 国产成人精品综合久久久| 欧美日本中文字幕| 欧美精品久久久久久久免费观看| 欧美猛男性生活免费| 国产视频久久久久久久| 精品国产乱码久久久久久天美| 岛国av一区二区| 久久久久久尹人网香蕉| 欧美尺度大的性做爰视频| 欧美在线视频免费| 91精品免费久久久久久久久| 日韩精品在线播放| 91精品久久久久久久久久久久久久| 成人a免费视频| 国产一区二区在线免费视频| 日韩久久精品成人| 精品国产成人av| 国产丝袜视频一区| 亚洲国产一区二区三区在线观看| 国产精品嫩草影院一区二区| 欧美视频在线看| 黑人狂躁日本妞一区二区三区| 精品久久久国产精品999| 国产精品视频最多的网站| 国产亚洲视频在线观看| 欧美日韩亚洲系列| www欧美日韩| 欧美性猛交xxxxx免费看| 欧美亚洲国产日本| 欧美视频在线免费| 中文字幕日韩欧美精品在线观看| 国产午夜精品视频免费不卡69堂| 亚洲精品电影在线观看| 国产欧美最新羞羞视频在线观看| 日本亚洲精品在线观看| 亚洲大胆人体在线| 欧美精品在线网站| 亚洲情综合五月天| 久久精品人人做人人爽| 91欧美精品成人综合在线观看| 伊人成人开心激情综合网| 久久69精品久久久久久国产越南| 日本欧美国产在线| www.亚洲免费视频| 国产成人免费91av在线| 日韩中文字幕国产精品| 日韩欧美a级成人黄色| 狠狠躁18三区二区一区| 欧美性生交xxxxxdddd| 中文字幕日韩精品在线观看| 成人久久一区二区| 欧美特黄级在线| 亚洲欧美另类中文字幕| 久久五月情影视| 成人高h视频在线| 国产精品1区2区在线观看| 国产精品wwww| 久久久国产精品视频| 91国产中文字幕| 久久久久九九九九| 国产精品影院在线观看| 久久在线免费观看视频| 欧美中文字幕在线播放| 成人a级免费视频| 性色av香蕉一区二区| 亚洲自拍偷拍在线| 91免费视频国产| 国产美女精品视频免费观看| 国产精品久久精品| 九色精品美女在线| 日韩激情在线视频| 国产在线久久久| xxav国产精品美女主播| 亚洲夜晚福利在线观看| 欧美一级视频免费在线观看| 97avcom| 麻豆国产va免费精品高清在线| 欧美激情精品久久久久| 欧美成人免费va影院高清| 久久99亚洲精品| 国产97色在线| 国产精品视频地址| 98精品国产高清在线xxxx天堂| 国内精品小视频在线观看|