MSAgent 詳細(xì)解說(shuō)第2/5頁(yè)
更新時(shí)間:2006年11月13日 00:00:00 作者:
二、伶牙俐齒
下面,我們就讓他來(lái)做一點(diǎn)實(shí)際的東西 —— 說(shuō)話!還是接續(xù)上例:
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁(yè)面才能執(zhí)行]
Merlin 說(shuō)話了(如果要讀出聲音來(lái)的話,需要客戶端在 MicroSoft 的網(wǎng)站上下載并安裝相應(yīng)的語(yǔ)音引擎)!這里涉及到這么幾個(gè)新的東西:
Agent.LanguageID 聲明語(yǔ)言種類,0x0409是英文的編號(hào)(有關(guān)語(yǔ)言編號(hào)請(qǐng)參考 www.microsoft.com/globaldev/reference/oslocversion.mspx ),目前如果沒(méi)有這個(gè)聲明,或聲明為錯(cuò)誤的語(yǔ)種,則語(yǔ)言只是一次性完全顯示Agent.Speak() 和 Agent.Think() 是 MSAgent 的兩個(gè)語(yǔ)言表達(dá)顯示行為,只有顯示圖形的區(qū)別。
了解了這些功能,是不是正在陶醉呀?別急,還有更好的東西呢!
三、活靈活現(xiàn)
總是看著一個(gè)呆頭呆腦的東西一動(dòng)不動(dòng),即使是很 Q ,也會(huì)有感到多少的厭煩,下面我們就讓他動(dòng)起來(lái)。
這個(gè)例子由于調(diào)用的是網(wǎng)絡(luò)文件,所以會(huì)慢一點(diǎn),請(qǐng)耐心等待一下!
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁(yè)面才能執(zhí)行]
看到?jīng)]有?其實(shí)只要你善于調(diào)動(dòng)它的積極性,MSAgent 也蠻活潑的!信息觀察,不難發(fā)現(xiàn),原來(lái)讓 MSAgent 動(dòng)起來(lái),也不過(guò)就這么簡(jiǎn)單:
Agent.MoveTo(x, y) 是角色移動(dòng)到指定的坐標(biāo);
Agent.Play(action) 命令角色做某個(gè)動(dòng)作,動(dòng)作列表見(jiàn): msdn.microsoft.com/library/default.asp?url=/library/en-us/msagent/deschar_3pgy.asp (這里需要說(shuō)明一下,不是所有的角色都支持這些動(dòng)作的,處理方法后面會(huì)有說(shuō)明?。?
Agent.Hide() 隱藏角色(不是釋放角色,通過(guò) Agent.Show() 可以再次顯示)
Agent.get(Request, list) 預(yù)載相關(guān) MSAgent 動(dòng)畫(huà)數(shù)據(jù),MSAgent人物數(shù)據(jù)文件支持單結(jié)構(gòu)角色文件(.acs,角色數(shù)據(jù)與動(dòng)畫(huà)數(shù)據(jù)存于同一個(gè)文件),也支持分離結(jié)構(gòu)角色文件(.acf,角色數(shù)據(jù)存于.acf中,動(dòng)畫(huà)數(shù)據(jù)存于.aca中)。基于本地硬盤(pán)和網(wǎng)絡(luò)調(diào)用均可采用這兩種模式,當(dāng)調(diào)用網(wǎng)絡(luò) acf 文件時(shí),由于角色數(shù)據(jù)與動(dòng)畫(huà)數(shù)據(jù)分別下載,所以需要預(yù)載相關(guān)動(dòng)畫(huà)數(shù)據(jù),使用 acs 文件(一般沒(méi)有本地 acf 文件的可能性),不需要預(yù)載。
AgentLoadRequest, AgentLoadRequest 和 AgentAnimationRequest 這三個(gè)參數(shù)本例并沒(méi)有實(shí)際用到,返回應(yīng)相關(guān)操作的狀態(tài)對(duì)象(相當(dāng)于 readystatus 屬性),在調(diào)用網(wǎng)絡(luò) acf 文件時(shí)有比較實(shí)際的用途,這個(gè)會(huì)在后面說(shuō)明!
相關(guān)文章
頁(yè)面載入結(jié)束自動(dòng)調(diào)用js函數(shù)示例
當(dāng)頁(yè)面加載完成后自動(dòng)調(diào)用預(yù)先編好的js函數(shù),在某些特殊情況下還是比較實(shí)用的,具體實(shí)現(xiàn)如下,感興趣的朋友可以參考下2013-09-09原生JS實(shí)現(xiàn)首頁(yè)進(jìn)度加載動(dòng)畫(huà)
這篇文章主要為大家詳細(xì)介紹了原生JS實(shí)現(xiàn)首頁(yè)進(jìn)度加載動(dòng)畫(huà),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09JS獲取當(dāng)前頁(yè)面名稱的簡(jiǎn)單實(shí)例
下面小編就為大家?guī)?lái)一篇JS獲取當(dāng)前頁(yè)面名稱的簡(jiǎn)單實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08關(guān)于JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法
下面小編就為大家?guī)?lái)一篇關(guān)于JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-06-06javascript之學(xué)會(huì)吝嗇 精簡(jiǎn)代碼
前端開(kāi)發(fā),要學(xué)會(huì)吝嗇:2010-04-04JS實(shí)現(xiàn)獲取毫秒值及轉(zhuǎn)換成年月日時(shí)分秒的方法
這篇文章主要介紹了JS實(shí)現(xiàn)獲取毫秒值及轉(zhuǎn)換成年月日時(shí)分秒的方法,結(jié)合實(shí)例形式分析了javascript常見(jiàn)的Date()日期時(shí)間獲取、轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下2018-08-08JS將光標(biāo)聚焦在文本最后的實(shí)現(xiàn)代碼
這篇文章主要介紹了JS將光標(biāo)聚焦在文本最后的方法,需要的朋友可以參考下2014-03-03