版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、director中事件發(fā)生的順序及其意義director中事件發(fā)主的順序及其意義我開始學(xué)習(xí)lingo的時候,在兒個困擾我的兒個嚴(yán)重問題屮,事件的執(zhí)行順序就是其屮2,所以我現(xiàn)在把它們的整理出來,希望對還被這個問題騷擾的同志們有所幫助(部分資 料來自aougu的lingo詞典)。如果那位有補充,歡迎跟帖。基于方便起見,假設(shè)一個電影中只有一個精靈而且只有第一幀,那么事件的執(zhí)行順序是這樣 的:,fpreparemovleh一” begi nsprite”nprepareframeh-”startmovie”,fenterframef,nexitframe,f一 "stopmovie”-&qu
2、ot;endsprite"下面分別說明:lfpreparemovie,f :系統(tǒng)消息和事件處理程序;所包含的語句在電影調(diào)入演員后、做下列事情前執(zhí)行:建立所播放的第一幀中sprite所屬行為的實例。預(yù)備播放笫一幀,包括畫出此幀,播放任何聲音、以及執(zhí)行過渡和調(diào)色板效果。用于第一幀sprite行為的新全局變量應(yīng)在處理程序on preparemovie中初始化o在以前的電影己經(jīng)設(shè)定的全局變量無需復(fù)位。處理程序on preparemovie是一個放置 lingo的好地方,以建立全局變量、初始化變量、在電影其余部分調(diào)入內(nèi)存的同時播放聲音、 或檢查與調(diào)整計算機狀態(tài)(如色深)的好地方。此時,電影屮的
3、第一幀的演員已經(jīng)載入,但是還沒有進行初始化,因此這里可以對電彫進 行初始化,但是可能很多針對精靈,演員等具體內(nèi)容的命令不能正確執(zhí)行。-"beginsprite":系統(tǒng)消息和事件處理程序,當(dāng)播放頭進入一幀,這一幀里首次出現(xiàn)了某個sprite吋運行包 含的語句。象endsprite,即使播放頭在這一幀上循環(huán),這個事件也將只發(fā)生一次。這是因 為觸發(fā)事件的sprite不是首次出現(xiàn)。這個事件在prepareframe前發(fā)生。當(dāng)beginsprite 的消息被發(fā)送的時候,director會給任一附在這個sprite上的事件腳本建立一個實例。如 果被使用在行為上,對象參數(shù)me會忽略這個事
4、件。這條消息將被發(fā)送到行為和幀腳木。如果一個sprite在電影的第一幀出現(xiàn),那么beginsprite的消息將會在preparemovie g 但在prepareframe和startmovie事件前發(fā)送。注意:需要注意某些sprite屬性,如rect屬性可能就不能受begainsprite處理程序的控制。因為這個屬性需要計算,并且在舞臺更新以前不能完成。浹rti于這個事件之岀現(xiàn)一次,所以這是個把對精靈腳本甚至幀腳本初始化的好地方,如設(shè)定 屬性變量的初始值等。 prepareframe*:系統(tǒng)消息和事件處理程序;包含的語句在畫當(dāng)前幀以前立即執(zhí)行。與beginsprite和endsprite事件
5、不同,每次播放頭進入幀時都產(chǎn)生prepareframe事件。處理程序on prepareframe是一個在sprite畫出前改變sprite屬性的有用的地方。如果用于行為,處理程序on prepareframe接收me引用。此時,第一幀已經(jīng)準(zhǔn)備完畢,所以完全可以對精靈,演員的屬性等進行控制,這里是一個 更改屬性的好地方。注意由于以上三個事件發(fā)生的吋候,精靈還沒有畫出,所以命令go,play和updatestage在處理程序內(nèi)無效。一” startmovie”:影片事件處理程序,當(dāng)影片的第一幀剛剛顯示完畢時,該處理程序被調(diào)用。好像不多用,當(dāng)然,有些命令可能需要放在這里,如go, play等。一
6、"enterframe'':系統(tǒng)消息和事件處理程序;每次播放頭進入該幀的時候就執(zhí)行包含在里面的語句.on enterframe事件處理程序放在行為,幀或者電影腳本中.像下面這樣:要分配一個處理程序給獨立的sprite,把處理程序?qū)戇M一個附在sprite上的行為屮.要分配一個處理程序給獨立的幀,把處理程序?qū)戇M幀腳本.分配處理程序到每一個幀屮,把on enterframe處理程序?qū)懭腚娪澳_本中.處理程序每次會在播放頭進入一幀的時候執(zhí)行除非幀腳本由自己的處理程序.如果幀腳本rtl 口己的處理程序,幀腳本中的on enterframe會忽略電影腳本中的on enterfram
7、e處理程序.此時,當(dāng)前幀已經(jīng)畫出,所以這時候改變精靈的屬性并不是令人稱道的事情,因為很可能會導(dǎo)致畫面的閃動。當(dāng)然,還是有些腳本可以在有預(yù)謀在這里使用。"exitframe*:系統(tǒng)消息和事件處理程序;exitframe包含的語句將在每次播放頭退出該幀的時候執(zhí)行.onexitframe處理程序是一個比較有用的地方來使得lingo重新設(shè)置離開幀z后的環(huán)境。o n exitframe事件處理程序放在行為,幀或者電影腳本中,就像下面這樣: 分配處理程序給獨立的sprite,把處理程序?qū)懺谝栏皆趕prite ±的行為中.分配處理程序 給獨立的幀,把處理程序?qū)懺趲_本中.分配處理程序到每
8、個幀除非有其他額外的條件,否 則就把處理程序放在電影腳本屮.on exitframe處理程序就在每次播放頭退出一個幀的 時候生效,除非這個幀有自己的on exitframe處理程序.當(dāng)該幀腳本有自己on exitfra me處理程序的時候,該幀on exitframe處理程序取代電彫腳本屮的那個處理程序.眾所周知,這是我們使用最頻繁的事件,很多腳本都推薦在這里使用。我的原則是:如果 能在這里使用,那么我不會放到別的什么地方去。"stopmovie”:系統(tǒng)消息,影片事件處理程序。當(dāng)影片停止或結(jié)朿時,該處理程序運行。浹此時,己經(jīng)運行結(jié)束,如果你在電影運行的時候曾使用程序更改過某些東西的話
9、,也許你 應(yīng)該在這里把它恢復(fù)過來。-,endspriteh:系統(tǒng)消息和事件處理程序;在播放頭離開一個sprite并且進入了一個不存在該sprite的幀 中的時候,執(zhí)行其中包含的lingo語言.他在exitframe以后發(fā)生.endsprite事件處理程 序放在行為腳本中.一旦endsprite事件發(fā)生,d i rector就破壞附在sprite上的任何行為腳 本的例程.如果這個事件在一個行為中被使用,他將被傳遞到行為或者幀腳本所引用的me對 象去.如杲播放頭播放到了一幀的結(jié)束endsprite消息將在exitframe消息z后發(fā)送.go ,play ,和updatestage命令在on end
10、sprite處理稈序中無效.浹老實說,我絕少用到這個事件,因為我感覺在這里我?guī)缀踝霾粊硎裁?,也許能消除些什么?以上內(nèi)容簡單來說就是這樣的:-電影調(diào)入演員,電影屬性等;"preparemovie"-播放頭進入第一幀,實例化腳本;-"beginsprite"-當(dāng)前幀準(zhǔn)備完畢;prepareframe"-畫當(dāng)前幀;-“startmovie”"enterframe"-播放頭處于當(dāng)前幀中;"exitframe"播放頭退出當(dāng)前幀;之間的循環(huán),(可能在某處有beginsprite或endsprite)-hstopmov
11、ie"-電影停止; nendspriteh-精靈結(jié)束。補充:還有一個事件-stepframe,我不很熟,所以沒有寫出來,執(zhí)行順序是在緊挨pre pareframe z前,希望有那位補充上。周末抽點時間看了一下書,然后再試了一下,才發(fā)現(xiàn)stepframe的功能其實也很強大,不 過我用得不多,把我的想法說出來大家參考一下吧。stepframe :oop事件處理程序,任何添加到actorlist里面的劇本對象都在每一幀發(fā)送一次該消息。actor li st :影片屬性;一個有外部子對象存入的列表。每當(dāng)播放頭進入幀吋actorlist中的對象接受一 個 stepframe 信息。向 acto
12、rlist 加入一個對象時,使用"add actorlist , theobject”。父腳本或 ancestor腳本中的對象,在播放頭每移到新的一幀時自動被調(diào)用。清除actorlist中的對象,用” s et actorlist to ",將它設(shè)為空列表。 當(dāng)actorlist在另外的影片中有分枝時,director不能清除其中的目錄,原因是在新影片 中有不可預(yù)知的行為。預(yù)防當(dāng)前影片中的子對彖從一個新影片上移過,在新影片的” on pr eparemovie "名柄中插入指令” set the actorlist ="舉個例子吧,moviescript 中on stepframeme . loc = point ( random ( 800 ), random ( 600 )end這樣如果你在其他語言中向actorlist加入一個對彖x,那么每一次stepframe事件發(fā)生 的時候,都會對這個對象執(zhí)行:x. loc = point ( random
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年東臺市市級機關(guān)公開轉(zhuǎn)任公務(wù)員備考題庫及1套參考答案詳解
- 2025年梓潼縣公開考核招聘衛(wèi)生專業(yè)技術(shù)人員26人備考題庫及答案詳解參考
- 2025年懷化市老齡協(xié)會招聘招募備考題庫有答案詳解
- 2025年崇州市人民醫(yī)院醫(yī)共體成員單位自主招聘(補充招聘)備考題庫及完整答案詳解1套
- 2025年湘潭市九華中學(xué)(長沙市一中九華中學(xué))代課教師招聘備考題庫及完整答案詳解1套
- 福建省能源石化集團有限責(zé)任公司2025年秋季招聘備考題庫及參考答案詳解1套
- 湖南時空信息安全檢測服務(wù)有限公司2025年面向社會公開招聘備考題庫及一套參考答案詳解
- 簡約商務(wù)風(fēng)年度工作總結(jié)匯報
- 2025年中國煤炭地質(zhì)總局應(yīng)屆高校畢業(yè)生招聘467人備考題庫及參考答案詳解一套
- 手繪水彩中國風(fēng)二十四節(jié)氣立秋科普模板
- 勞動仲裁授課課件
- 新工廠工作匯報
- 山西低空經(jīng)濟發(fā)展現(xiàn)狀
- 汽車電子工程師崗位面試問題及答案
- 錢乙完整版本
- HXN5型機車柴油機的結(jié)構(gòu)特點柴油機84課件
- 高速公路維修施工方案與措施
- 紡織品的物理化學(xué)性質(zhì)試題及答案
- 發(fā)改價格〔2007〕670號建設(shè)工程監(jiān)理與相關(guān)服務(wù)收費標(biāo)準(zhǔn)
- 高空作業(yè)吊板施工方案
- 雞舍鋼結(jié)構(gòu)廠房施工組織設(shè)計方案
評論
0/150
提交評論