|
主题: .dir嵌套到.dir,运行效果出错了。
|
 白天
职务:普通成员
等级:1
金币:0.0
发贴:61
|
#12002/3/20 16:46:06
我用.dir 作为cast放到另一个.dir的时间线上。 子.dir用了交互。代码如下: on mouseEnter me -- put the member of sprite me.spritenum set the member of sprite 10 to the member of sprite me.spritenum -- put the member of sprite 10 end
在编辑状态下运行正确。然后嵌套到主.dir中,放在某通道上enabled script,运行,移动鼠标,这下子好看了,什么反应都没有!然后我加入现在注释掉的两行,编辑状态下运行,提示还是正确的,再回到主.dir,运行,呵呵,好笑了,第二个提示是“-- (member 0 of castLib 0)”。但是其中有两个是非零的信号(同样也是错误的)。 推断: 1:代码是运行了的 2:sprite 10 指向了主.dir 3:作为引用的the member of sprite(me.spritenum) 同样指向了主.dir 4:内部机制有问题。
那么:应该用什么样的方法才能正确使子.dir的调用有效呢? 我假设的前提是:主.dir与子.dir之间不应该有勾搭,就是说,不要在主或子.dir上给对方任何假设。他们应该是完整、独立的。
请有见解的朋友参与讨论。
|
 南山东篱摄螂
职务:普通成员
等级:4
金币:10.0
发贴:1840
|
#22002/3/20 22:13:45
照你的说法只好用 play movie 的方法来调用另一个dir了,只有这样才是比较独立的。
至于你的程序中的 me.spritenum 和 sprite 10 是不是同一个?如果是同一个当然不会有什么反应。
|
 超级战神
职务:普通成员
等级:1
金币:0.0
发贴:48
|
#32002/3/20 22:27:03
我也同样的问题!!!!!!!!我嵌套dxr文件,,,,结果一塌糊涂
高手呢?????????????
|
 白天
职务:普通成员
等级:1
金币:0.0
发贴:61
|
#42002/3/21 10:41:37
东影默在上个帖子中说 引用: 照你的说法只好用 play movie 的方法来调用另一个dir了,只有这样才是比较独立的。
至于你的程序中的 me.spritenum 和 sprite 10 是不是同一个?如果是同一个当然不会有什么反应。
代码是连接到10以外的任何一个sprite。 设想是这样的:以主.dir作为大的框架,把子模块都以.dir的形式嵌套起来,形成一个比较有机的系统,这样子可以保持大环境的延续。所以并不想用play movie来调用,究竟哪种方法比较合适呢? 我有另外一段子.dir,也是运用同样的代码,但是不是交互的,自动运行,也嵌套了,嘿!完全没有问题。我服了。
|
 超级战神
职务:普通成员
等级:1
金币:0.0
发贴:48
|
#52002/3/21 12:04:30
我看没办法,用miaw,,,,????没法背景透明呀!!!!!!!!!!
|
 白天
职务:普通成员
等级:1
金币:0.0
发贴:61
|
#62002/3/21 12:41:12
超级战神在上个帖子中说 引用: 我看没办法,用miaw,,,,????没法背景透明呀!!!!!!!!!!
一旦用了miaw,立刻变成独立于大环境的东西。有些不符合有机整体的要求了。
|
 sxg312
职务:普通成员
等级:1
金币:0.0
发贴:22
|
#72002/3/21 12:49:55
这种方法叫LDM, 嵌套的D文件支持的事件有一些限制,如交换图片的程序不能写在鼠标事件(mouseenter,mouseleave等)中,你要另外写个函数,然后在这些事件中调用,还有种方法就是用全局变量来判别电影的当前状态,在主电影中用这些得到这些数值就能很好的控制了。
个人觉得用这种方法做菜单之类的很不错,能作出很多效果。大家一起来研究研究。
|
 超级战神
职务:普通成员
等级:1
金币:0.0
发贴:48
|
#82002/3/21 13:28:29
说具体点好吗?怎么写独立的函数,以及怎么用全局变量控制,,,些个东西看看!!!!!!!!!!
|
 南山东篱摄螂
职务:普通成员
等级:4
金币:10.0
发贴:1840
|
#92002/3/21 13:32:27
如果你是用 Import 的方法引入“子.dir” ,那么往往会被系统自动拆分为 filmloop和cast的形式,如果是以外部文件方式引入那么就会有很多的脚本限制,是很难对“子.dir”进行有机的控制。就是在开发时也不好进行模块化,它们之间的延续性和依赖性太强了,不适合独立进行开发。而且在后期调试时会变得非常的繁杂,所以就我个人而言我是绝提倡这样做的。我认为还是用 play movie 的方法来调用独立的影片。 至大环境的统一,我们可以通过用统一的界面和命名规则来进行,还有共用成员表也是极好的方法。
|
 sxg312
职务:普通成员
等级:1
金币:0.0
发贴:22
|
#102002/3/21 15:31:31
特别强调一点这种方法用来作小功能(如目录)很好,其他的用途可能很不方便。 下面给出一段我的目录称序:
----1.子电影中按钮上的脚本 property currentMember,enterme global where_goto on beginSprite me currentMember = sprite(me.spritenum).member.name enterme=false where_goto=void end on mouseenter me cursor 280 enterme=true case the rollover of 1: where_goto=1 2: where_goto=2 3: where_goto=3 4: where_goto=4 5: where_goto=5 otherwise nothing end case end on mouseLeave me cursor -1 enterme=false where_goto=void end on mousedown me cursor -1 enterme=false end on exitframe me -----交换图片程序 if enterme=true then rolloverMember = currentmember & "-a" sprite(the currentspriteNum).member =rolloverMember else sprite(the currentspriteNum).member =currentMember end if end
----2.主电影中(把以下的脚本放在该精灵-即子电影上) global where_goto on mouseup me case where_goto of "1",1: go to movie"mov01" "2",2: go to movie"mov02" "3",3: go to movie"mov03" "4",4: go to movie"mov04" "5",5: go to movie"mov05" otherwise nothing end case where_goto=void end ... ... ...
|