1

我正在制作一个应用程序,该应用程序的一部分非常简单,您有 4 个花瓣,然后您将所有 4 个花瓣都摘了下来,这会将您带到一个不同的场景,该场景显示一个徽标“再试一次”,出于某种原因,我什至无法追踪活动一次这些花瓣是在那个舞台上采摘的(每个花瓣都是一个电影剪辑)。我还通过类将movieclip作为变量写入AS3,我什至不知道这是否真的有必要,并且当movieclip“one”不可见并且这也不会发生时,我将句子“helloworld”进行跟踪。(我也尝试过数组,如果(“array”.visible == false 然后 gotoandplay “other scene” 得到相同的结果。);“那个地方”是我在摘下花瓣后想去的场景。

这是我当前的代码,没有错误,但它不能像我希望的那样工作,因为它没有记录电影剪辑不可见,也没有转到另一个场景。

var one = new sunflowerpetal10;
var two = new sunflowerpetal12;
var three = new sunflowerpetal13;
var four = new sunflowerpetal14;
var five = new sunflowerpetal15;
var six = new sunflowerpetal16;

var hello:String;
hello = "helloworld";

if(one.visible == false, two.visible == false, three.visible == false, four.visible == false, five.visible == false, six.visible == false)
{
 trace(hello); 

 gotoAndPlay(1, "theplace");
}

请帮忙! 我已经在舞台上的电影剪辑没有在 AS3 上注册吗?或者似乎是什么问题?

4

2 回答 2

1

您在这里有很多错误,很难确定您实际上在做什么。Flash 在何处以及如何被引用方面非常令人困惑。

对于初学者,当你调用新的东西时,你需要给它加上括号。所以...

new sunflowerpetal15();

这假设您的库中有一个名为 sunflowerpetal15 的 MC,并且该标签是“导出到 actionscript”的方式,而不仅仅是它在库中的名称。

接下来你必须把这个项目实际放在舞台上

this.addChild(new sunflowerpetal15());

在您的 if 语句中,您的下一个是非法的。我认为您的意思是 && (逻辑与)在您的项目之间,但同样,不确定您在做什么)。

当所有这些都解决后,你*应该让它去播放第 1 帧,但我怀疑你从来没有离开过第 1 帧!所以......再次,我怀疑你不清楚你在这里做什么。

你*真正需要的是一个关于开始使用 Flash 和 AS3 的分步教程。你在地图上到处都是,Flash 是一个绝对错误的环境,如果没有一个好的指南就独自去,因为它非常不直观。

于 2012-05-31T05:07:40.273 回答
0

答案!:

每一个花瓣都有这个代码(这是一旦你点击它就使对象不可见的代码):

sunflowerpetal1.addEventListener(MouseEvent.CLICK, fl_ClickToHide);

function fl_ClickToHide(event:MouseEvent):void
{
    sunflowerpetal1.visible = false;
}
  • 现在每次我试图做一个if声明,这样一旦所有的花瓣都消失了,它就会传递到另一个屏幕,它就不起作用了!

前任:

if(sunflowerpetal1.visible == false && sunflowerpetal2.visible == false && sunflowerpetal3.visible == false && sunflowerpetal4.visible == false && sunflowerpetal5.visible == false && sunflowerpetal6.visible == false)
{
    gotoAndPlay(1, "theplace");
}
  • 诀窍是把这个“if”语句放在每个花瓣当前代码的括号内,如下所示:

    sunflowerpetal1.addEventListener(MouseEvent.CLICK, fl_ClickToHide);

    函数 fl_ClickToHide(event:MouseEvent):void { sunflowerpetal1.visible = false;

    if(sunflowerpetal1.visible == false && sunflowerpetal2.visible == false && sunflowerpetal3.visible == false && sunflowerpetal4.visible == false && sunflowerpetal5.visible == false && sunflowerpetal6.visible == false)
    

    { gotoAndPlay(1, "那个地方"); }

    }

*将“if”语句放在每个花瓣(或消失的对象)代码中,您将全部设置好,一旦单击所有花瓣(或电影剪辑),您将被发送到您命令它的场景。(在将您带到另一个名为"theplace"“再试一次”的屏幕之前,我需要点击 6 个花瓣)

问题解决了=)

于 2012-06-19T15:39:43.657 回答