如何正确使用Movieclip Container位置?

时间:2016-11-21 09:15:07

标签: arrays actionscript-3 containers

大家好,所以我很难尝试让它发挥作用。基本上我有一个名为planetContainer的影片剪辑容器,我在我的数组中添加MC就像这样:

private function collisionPlanetHandler():void 
    {
        for (var i:int = 0; i < aPlanetArray.length; i++)
        {
            var currentPlanet:mcOuterPlanets = aPlanetArray[i];

            planetContainer.addChild(aPlanetArray[i]);

            if (character.hitTestObject(currentPlanet) && !nextlevel)
            {
                trace("HIT");
                yDown += 300;
                //tap back to false
                tap = false;
                nextlevel = true;
                if (!bNullObject)  // have null object so doesnt loop again and cause error for planet == null
                {
                    planet.destroy();
                    planet =  null;
                }
                bNullObject = true;
                planetHit = currentPlanet; // to land on correct planet
                aPlanetArray.splice(i, 1);
                randomRotation = randomNumber(1, 2);  //Stop in random rotation for next planet

                TweenLite.to(planetContainer, 2.0, { y:(stage.stageHeight / 2) - 200, ease:Elastic.easeOut } );


                //planetIncrement -= 200;
                //addPlanet(randomNumber(50, 200), planetIncrement);

            }

        }

    }private function collisionPlanetHandler():void 
    {
        for (var i:int = 0; i < aPlanetArray.length; i++)
        {
            var currentPlanet:mcOuterPlanets = aPlanetArray[i];

            planetContainer.addChild(aPlanetArray[i]); //add to container

            if (character.hitTestObject(currentPlanet) && !nextlevel)
            {
                trace("HIT");
                yDown += 300;
                //tap back to false
                tap = false;
                nextlevel = true;
                if (!bNullObject)  // have null object so doesnt loop again and cause error for planet == null
                {
                    planet.destroy();
                    planet =  null;
                }
                bNullObject = true;
                planetHit = currentPlanet; // to land on correct planet
                aPlanetArray.splice(i, 1);
                randomRotation = randomNumber(1, 2);  //Stop in random rotation for next planet

                TweenLite.to(planetContainer, 2.0, { y:(stage.stageHeight / 2) - 200, ease:Elastic.easeOut } );


                //planetIncrement -= 200;
                //addPlanet(randomNumber(50, 200), planetIncrement);

            }

        }

    }

当玩家点击数组中的一个行星时我可以看到该功能,我希望planetContainer补间。但我想要完成的是当玩家击中阵列中的一个MC时,我希望容器补间到他们的玩家所处的原始位置,在这种情况下是舞台的中心。

这不符合我的想法:

 TweenLite.to(planetContainer, 2.0, { y:(stage.stageHeight / 2) - 200, ease:Elastic.easeOut } );

我知道它拥有整个集装箱中心,每当我试图降落在集装箱中的另一个星球上时,基本上什么都没有发生任何变化。我不知道如何将容器放置在舞台上玩家的最后位置。或者如何使行星落在正确的y轴上的位置,y轴是阶段y轴的中心,然后其他行星也会下降。

我希望我有意义。如果需要更多信息,我会提供。谢谢!

0 个答案:

没有答案