盒子资源分类
MsAgent 孙悟空动作列表及简单演示
关键字:微软精灵 MsAgent 孙悟空 动作列表
来 自:转载,Microsoft
平 台:Win9x,Win2k/NT,WinXP
下载所需:0 火柴
深浅度:初级
完成时间:2004/5/9
发布者:register
发布时间:2004/5/9
编辑器:DELPHI
语 种:简体中文
分 类:媒体与图形
下载浏览:2553/21919
微软的精灵中我最喜欢的一个,是由《大闹天宫》中提取原型的;我得到的动作列表,谁有更完整的请跟贴: ------------------------- Alert 金箍棒闪一下 Explain 向右赞眼 Congratulate 挥大旗 GetAttention 敲锣 / 吻 / 竖琴 GestureDown 向下手势 GestureLeft 向左手势 GestureRight 向右手势 GestureUp 向上手势 Hide 隐藏 Idle1_1 LookUp 向上看 LookDown 向下看 LookLeft 向左看 LookRight 向右看 Processing 跑步 [] RestPose 姿势复位 Searching 搜索 Show 显示 Thinking 思考 Wave 挥手 或 打关斗 Writing 反复写 ------------------------- 简单示例: var AgentID: IagentCtlCharacter; AgentACS: IagentCtlRequest; MsAgent: TAgent; procedure TfrmMsagent.CreateMsAgent; begin if FileExists(IniRec.AgentFile ) and (not assigned(MsAgent)) then try MsAgent := TAgent.Create(nil); MsAgent.Connected := true; AgentACS := MsAgent.Characters.Load('MsAgent',IniRec.AgentFile); AgentID := MsAgent.Characters.Character('MsAgent'); AgentID.Height := IniRec.Height; AgentID.Width := IniRec.Width; except MsAgent.Free; MsAgent := nil; MessageDlg('错误:'#13#13'YU0002:无法创建 MsAgent 对像!', mtError,[mbOk],0); end; //try end else if Not FileExists(IniRec.AgentFile ) then MessageDlg('错误:'#13#13'YU0001:没有找到 MsAgent 文件!', mtError,[mbOk],0); end; procedure TfrmMsAgent.FreeMsAgent; begin if assigned(MsAgent) then begin MsAgent.Connected := false; MsAgent.Characters.Unload('MsAgent'); MsAgent.Free; MsAgent := nil; end; //if end; procedure TfrmMsagent.MsAgentDoSth(Msg,iPlay:string;); begin with Agent do begin if Msg <> ' then speak(Msg,'); play(iPlay); end; //with Agent end;
本站原创作品,未经作者许可,严禁任何方式转载;转载作品,如果侵犯了您的权益,请联系我们 !
相关文章
相关评论
共有评论11条
当前显示最后6条评论
zhmq
2004/5/13 12:49:51
请问下载的acs文件怎么使用? 给个步骤或示例好不好?谢谢!
abc516
2004/6/3 11:25:39
Request1 MonkeyKing 如何定义呀?!
tim001
2004/6/10 17:57:50
利害啊
amber
2005/1/13 17:35:53
大家好,我下载了“孙悟空”,怎么样才能够看到动画呢? 要安装吗,还是用什么软件打开啊,请给我详细说说吧,我一点都不懂
ljq900
2005/8/31 16:16:28
孙悟空加载过程详细解释 Agent1.Connected:=false; try Agent1.Characters.Unload('MNKYKING'); Request1:=Agent1.Characters.Load('MNKYKING',[“孙悟空”的acs文件名] ); //加载文件 MonkeyKing:=Agent1.Characters.Character('MNKYKING'); //MonkeyKing引用孙悟空对象 name:='MNKYKING'; except end; Agent1.Connected:=True; MonkeyKing.MoveTo(300,400,12); //移动孙悟空 ---------- Request1,MonkeyKing 的定义 Request1:IAgentCtlRequest; //包含操作结果接口,有时用到 MonkeyKing:IAgentCtlCharacterEx;//角色操作对象接口,常用 ---------- 至于步骤,可从网上搜索下载示例程序 MonkeyKing.Show(0); MonkeyKing.Play(copy(combobox1.Text,0,pos(' ',combobox1.Text)-1)); MonkeyKing.Speak('¹哈哈',')
ljq900
2005/8/31 17:16:32
上面AgentObjects_TLB代码不能用,作下列修改 将过程 procedure TAgent.InitControlData; 改成下列形式,不保证好用,可以试试,但能通过编译 procedure TAgent.InitControlData; const CEventDispIDs: array [0..25] of DWORD = ( $00000001, $00000003, $00000002, $00000004, $00000005, $00000006, $0000000F, $00000007, $00000009, $0000000B, $00000015, $0000000C, $00000010, $00000011, $00000013, $00000014, $00000016, $00000017, $00000018, $00000019, $0000001A, $0000001B, $0000001C, $0000001E, $0000001F, $00000020); CControlData: TControlData2 = ( ClassID: '{D45FD31B-5C6E-11D1-9EC1-00C04FD7081F}'; EventIID: '{F5BE8BD4-7DE6-11D0-91FE-00C04FD701A5}'; EventCount: 26; EventDispIDs: @CEventDispIDs; LicenseKey: nil (*HR:$80040154*); Flags: $00000000; Version: 401); begin ControlData := @CControlData; pcardinal(@TControlData2(CControlData).FirstEventOfs) ^ := Cardinal(@@FOnActivateInput) - Cardinal(Self); end;
我要发表评论
查看全部评论