作者yank0323 (IUTD)
看板Flash
标题[问题] 影片片段跑一次就不动了
时间Thu Jun 30 01:16:15 2011
小弟初学flash
遇到了瓶颈
来请问一下
onClipEvent (load) {
b=150;}
onClipEvent (enterFrame) {
if(b>0){
this.gotoAndStop("boss_move");
b--;}
else {
this.gotoAndStop("boss_attack");
b=b+150;}
trace (b);}
上面是原始码
遇到的问题就是
第一次跑的时候boss_move跟boss_attack都有播放
可是跑过一遍後就不会在播放了
看着b从150跑到0又变成150
确定if有动作但影片片段却没变
想不出原因
可以帮忙解惑一下吗
感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.64.11.230
1F:→ aquarianboy:附个原始档吧 06/30 01:17
2F:→ yank0323:就.是不是操控影片片段的指令 在回圈里只能动一次呢? 06/30 01:31
3F:→ yank0323:刚刚才发现我没存档= = 惨了.. 06/30 01:32
5F:推 KawasumiMai:请爱用mediafire,badongo已经不是很方便的免空 06/30 01:49
6F:→ yank0323:喔喔 好的 那我在去试试 06/30 01:51
8F:推 KawasumiMai:我想吐槽一下,你的程式码写的是move跟attack 06/30 02:02
9F:→ KawasumiMai:但是标签写的是wait attack跟dead 06/30 02:03
10F:→ yank0323:楼上说的已经更改了 可是还是只动一次 06/30 02:14
11F:推 KawasumiMai:印象中已经载入的mc宣告stop之後 06/30 02:23
12F:→ KawasumiMai:在没有reload的前提之下,就算重新显示也会维持原状态 06/30 02:23
13F:→ KawasumiMai:换句话说你的wait跟attack子mc都有stop过 06/30 02:24
14F:→ KawasumiMai:如果重新宣告跑到wait跟attack 06/30 02:25
15F:→ KawasumiMai:子mc也要呼叫一次gotoAndPlay(1)的样子 06/30 02:25
16F:→ KawasumiMai:(不确定是不是这个原因,记得以前遇过类似问题 06/30 02:25
17F:→ KawasumiMai:你可以把三个影格的mc都取作main 06/30 02:26
18F:→ KawasumiMai:this.main.gotoAndPlay(1) 06/30 02:27
19F:推 KawasumiMai:但是要注意的是你的wait呼叫了150次 06/30 02:30
20F:→ KawasumiMai:会因此卡在第一格,可能弄个boolean会比较好 06/30 02:30
21F:→ KawasumiMai:事实上设定b==150的时候才移动影格会严谨得多 06/30 02:30
22F:→ yank0323:把三个都设定一样的名字後 连动也不会动了 06/30 02:37
24F:→ KawasumiMai:CS4的版本,我有修改实体名称跟enterframe那段 06/30 02:40
25F:→ KawasumiMai:不知道是不是你要的效果 06/30 02:40
26F:→ KawasumiMai:顺带一提,你的attack只有维持瞬间的时间 06/30 02:40
27F:→ KawasumiMai:所以attack的动画有跟没有一样 06/30 02:40
28F:→ KawasumiMai:想做act可以问问hirabbitt大,他最近也在写 06/30 02:43
29F:→ KawasumiMai:就判定跟移动的流畅度也许你可以请教一下 06/30 02:43
30F:→ yank0323:感谢回答 我看懂了 :) 06/30 02:49
31F:→ yank0323:至於流畅度跟判定 我真的需要请教了 :) 06/30 02:51
32F:→ yank0323:对了 刚发现一个问题就是 06/30 03:03
33F:→ yank0323:如果我只有用attack 把wait拿掉来看 06/30 03:05
34F:→ yank0323:攻击动作也有几秒钟 反之拿另外一个 也是有动作 06/30 03:06
35F:→ yank0323:但就是两个放一起 就卡卡的 这是什麽原因呢? 06/30 03:06
36F:推 KawasumiMai:你要了解到你写的程式中,何时呼叫切换影格 06/30 03:11
37F:→ KawasumiMai:目前很大的一个问题是,你attack只有在0的时候 06/30 03:11
38F:→ KawasumiMai:b+=150之後,第二趟>0就会切掉了(wait没拿掉的情况) 06/30 03:12
39F:→ KawasumiMai:因此放在一起的时候attack就会出问题 06/30 03:12
40F:→ KawasumiMai:之所以拿掉wait会变顺,你要了解到底是因为b维持在0 06/30 03:13
41F:→ KawasumiMai:还是因为wait拿掉之後就算b+=150也没有切换影格的动作 06/30 03:13
42F:→ KawasumiMai:才因此停在attack让你看到他的动作的? 06/30 03:14
43F:→ yank0323:原来有这层涵义 完全没发现到B值一变 就马上变换影格了 06/30 03:24
44F:→ yank0323:所以才需要延迟时间去跑 不然状态切换太快就会造成 06/30 03:26
45F:→ yank0323:影格卡卡的 06/30 03:26