1

问题在于添加i. 我试过了++i,我也试过i=i+1i.tostring()i++但我仍然得到输出

击中!1

我如何增加i

这是我的代码:

function mousePosition(inputEvent:MouseEvent)
{
    var i:Number = 0;
    var smiley:MovieClip = new Smiley();
    smiley.x = inputEvent.stageX;
    smiley.y = inputEvent.stageY;
    smiley.addEventListener(Event.ENTER_FRAME, smileyEnterFrame, false, 0, true);
    this.addChild(smiley);
    // ****************************** BELOW IS THE PROBLEM ******
        if (smiley.hitTestObject(RoundButton1) == true)
    {i=i+1;
        trace("hitting!"+ i);
    }
}
4

1 回答 1

5

您的变量i仅在您的函数中具有作用域mousePosition,因此每次调用时,mousePosition您都在声明一个新变量i并将其设置为0. 尝试hitCounter在函数之外声明变量,使其具有全局范围。

var hitCounter:Number = 0;

function mousePosition(inputEvent:MouseEvent)
{
   ...
   if (smiley.hitTestObject(RoundButton1) == true)
   {
       hitCounter++;
       trace('hitting! ' + hitCounter);
   }
}

试一试。

于 2013-06-16T02:37:27.020 回答