|
主题: 你遇到过吗?--问题口袋
|
 liping2
职务:普通成员
等级:1
金币:0.0
发贴:25
|
#12001/3/13 22:27:40
问题口袋 听说LINGO无所不能,我有些简单的LINGO问题想请教一下大虾们 1、在LINGO中如何实现SPRITE从一个地方移动到另一个地方? 2、我最近用DIRECTOR做一个东西,里面有一个主画面,是分成四块的(由四幅小图组成),分别对应四个交互,现在的问题是:如果当用户点击左上的交互时,主画面整体向右下角移动,并逐步放大,使原来左上角的小画面占据屏幕中央,然后再跳转到别的地方。用LINGO如何实现? 3、如何用LINGO来检测本系统的AAA目录中是否存在某个文件(如XXX.XX)? 4、要在DIRECTOR中做下个时钟演示器,(一个带有十二个等分点有圆,一根时针,一根分针,当分针转过十二个等分点时,分针转过一个等分点),能用LINGO来玩成吗?怎样写LINGO? 5、原本对齐的文本,生成EXE文件后运行就出现左移而错位,这究竟是怎么回事? 请大虾们谈谈您的经验!先谢谢了!
|
 D计划-混沌
职务:管理员
等级:6
金币:15.2
发贴:3528
|
#22001/3/14 11:53:18
1.sprite().loc=[x,y] 2.sprite(左上)定位点为左上(缺省为sprite中心,paint中设定) sprite().width=sprite().width+ sprite().height=sprite().width*(原图宽高比) ....以此类推(注意定位点,这样写起来程序简单些) 3.FILOIO( http://www.5dmedia.com/bbs/newsdetail.asp?id=16945) 4.BEHAVIOR-CONTROLS-ANALOGCLOCK 5.??,请查看帮助-paragraph相关
|
 liping2
职务:普通成员
等级:1
金币:0.0
发贴:25
|
#32001/3/14 22:11:51
非常感谢54zq!我还是有点不明白!! “2、我最近用DIRECTOR做一个东西,里面有一个主画面,是分成四块的(由四幅小图组成),分别对应四个交互,现在的问题是:如果当用户点击左上的交互时,主画面整体向右下角移动,并逐步放大,使原来左上角的小画面占据屏幕中央,然后再跳转到别的地方。用LINGO如何实现?”如果同时存在右上、左下、右下有同样的交互,那又如何定SPRITE的中心呢? 谢谢您的解答!!
|
 D计划-混沌
职务:管理员
等级:6
金币:15.2
发贴:3528
|
#42001/3/16 19:30:16
我想了三种解决的办法 1.就是上述办法,定位的方式为( sprite(左上)定位点为左上,sprite(右上)定位点为右上,sprite(左下)定位点为左下,sprite(右下)定位点为右下,点击各sprite时,此sprite因定位点原因,只需直接改变他的width和height,其它各sprite 的位置靠left,right,top,bottom的相对对齐来得到(与自身的定位点就没关系了),应该是很好实现的,这是一个比较取巧的办法,但能很好解决这个问题 2。用rect,举一个例子
图例四图位置 2 1 3 4
on beginsprite global j set j =1 end on exitframe global j if j<11 then sprite(1).rect=sprite(1).rect+[-40,0,0,30] sprite(2).rect=sprite(2).rect+[-40,0,0,30]+[-40,0,-40,0] sprite(3).rect=sprite(3).rect+[-40,0,0,30]+[-40,0,-40,0]+[0,30,0,30] sprite(4).rect=sprite(4).rect+[-40,0,0,30]+[0,30,0,30] else go frame "tz" end 3。用image和copypixles将4副小图合成一新的图片,然后。。。。。
|
 liping2
职务:普通成员
等级:1
金币:0.0
发贴:25
|
#52001/3/20 0:16:40
非常感谢54zq这么仔细的解答!无奈我底子太薄,还要发问,不好意思! 你所说的:“1.就是上述办法,定位的方式为( sprite(左上)定位点为左上,sprite(右上)定位点为右上,sprite(左下)定位点为左下,sprite(右下)定位点为右下,点击各sprite时,此sprite因定位点原因,只需直接改变他的width和height,其它各sprite ”sprite的定位点是用LINGO来定的吗?用的什么语句? 现在我又遇到一个问题: 我的用户对鼠标操作不熟,原本在主画面的四个交互需要加入 按键(1、2、3、4、)来控制,我在on mouseDown me go to "cchu1"
end 下面又加了: on keydown if the key = "1" then go to "cchu1" end if end 等等 但只有按“1”时有响应,而其它相类似做的“2”“3”“4”却无响应。这是怎么回事?只有将if the key = "1" then---if the key = "2" then---if the key = "3" then---if the key = "4" then---写在一起时才有效,但这在整个电影中“1”“2”“3”“4”都有效。这是否太浪费资源了?要实现我这样的功能,些什么样的做法?最简单的LINGO是什么?
|
 D计划-混沌
职务:管理员
等级:6
金币:15.2
发贴:3528
|
#62001/3/20 12:32:34
1.手动--在paint中G lingo-- set the centerRegPoint of member i= TRUE set the regPoint of member i= point(x,y) 2.?? 你写在什么地方 ------------------------ on exitFrame me go to the frame end on keydown case the key of "1":go 1 "2":go 2 ............... end case end --------------------
|
 liping2
职务:普通成员
等级:1
金币:0.0
发贴:25
|
#72001/3/20 21:47:12
太谢谢了!我是写在sptite script中的! 又有一个问题:我在写LINGO语句时到底写在何种script中才合理?这里面有些什么样的实用的原则?呵呵!不要嫌问题太大了哟!
|
 liping2
职务:普通成员
等级:1
金币:0.0
发贴:25
|
|
 D计划-混沌
职务:管理员
等级:6
金币:15.2
发贴:3528
|
#92001/3/23 12:36:10
这好像得讲讲script(脚本)的分类 一般director的书籍都会谈及script(脚本)的分类 script(脚本)按性质只应该分为四类,就是moviescipt(电影脚本),behaviorscript(行为脚本),parentscript(父脚本),castscript(演员脚本),可以在cast中明显看到这四者标记的不同 moviescipt(电影脚本):这种脚本只要存在就在整个影片中都响应,他不能放置在演员表中,(ctrl+0编辑) behaviorscript(行为脚本):也称scorescript(剪辑室脚本),这种脚本把关联到剪辑室时才起作用,可以把他拖拽至一个sprite(角色)或frame(帧)通道上(ctrl+alt+;编辑) --(所以也经常把behaviorscript分为spritescript和framescript) parentscript(父脚本):在用lingo调用前,几乎不起任何作用,(通过castmemberproperties的type转换) (type可使script在以上三种脚本中自由转换,在它下面将会发现link script as,一个很好的功能,呵呵,) castscript(演员脚本):这种脚本写在cast(演员)内部是跟随且仅对所在cast(演员)起作用,(在演员上点击右键选择castmember script编辑) 我们会发现parentscript和moviescipt是不能被拖拽到剪辑室的 ---------------------------------------------------------------- --因为castscript(演员脚本)能被behaviorscript(行为脚本)完全代替,且不灵活,所以在lingo编程中不大使用(不知macromedia的出发点是什么) ,我们只需考虑moviescipt、behaviorscript和parentscript ----------------------------------------------------------------- 那么写LINGO语句时到底写在何种script中才合理?这里面有些什么样的实用的原则? 首先只要是规范lingo语句写在任何地方都不会报错的 但是我认为macromedia还是希望大家按一定的规则编写lingo 取决于lingo写法的规则,在于他何时起作用 这就必须了解消息的类型和他的接收顺序 什么是消息:消息就是事件发出的信号(比如mousedown,exitframe...) 消息的分类:简单分就是系统触发形和用户触发型(找不到有关资料,大该是这样吧) 消息的接收顺序:(依次由上到下接收) 角色脚本spritescript 演员脚本(这个可以不考虑) 帧脚本framecript 电影脚本 --父脚本是靠lingo触发的 ----------------------------------------------- 考虑一下个脚本的特性,我们会知道这是一种必然(只有这样才能保证程序正常运行) --好恐怖,我看了n本书上都没有清楚的描述 --未完代续
编辑历史:[这消息被54zq编辑过(编辑时间2001-03-23 23:23:35)] [这消息被54zq编辑过(编辑时间2001-03-23 23:31:48)]
|
 liping2
职务:普通成员
等级:1
金币:0.0
发贴:25
|
|
 liping2
职务:普通成员
等级:1
金币:0.0
发贴:25
|
#112001/3/23 23:05:06
又有一个问题,在D8中使用过渡方式:“DM XTREME TRANSITION.....”中的DMXT ROLL DOWN 过渡时就出现非法操作,这究竞是为什么?
|
 D计划-混沌
职务:管理员
等级:6
金币:15.2
发贴:3528
|
#122001/3/23 23:36:04
系统或xtras本身的问题,肯定有好用的版本
|
 liping2
职务:普通成员
等级:1
金币:0.0
发贴:25
|
#132001/3/25 9:23:45
54zq: 看了你的解答,胜读n本书!你怎么不写本书呀!?
|
 liping2
职务:普通成员
等级:1
金币:0.0
发贴:25
|
#142001/3/27 20:21:13
各位大虾: 我又遇到一个问题:我用FLASH做的SWF导入D8后就删除了源文件上(FLA和SWF)现在我又需要 修改CAST中的SWF,怎么办,用办法将D8中的SWF文件导出来吗?(向AW中那样)请大家指“道”! 谢 ̄ ̄ ̄!
|
 liping2
职务:普通成员
等级:1
金币:0.0
发贴:25
|
#152001/3/27 20:26:09
各位大虾: 我又遇到一个问题:我用FLASH做的SWF导入D8后就删除了源文件上(FLA和SWF)现在我又需要 修改CAST中的SWF,怎么办,用办法将D8中的SWF文件导出来吗?(向AW中那样)请大家指“道”! 谢 ̄ ̄ ̄!
|