Actionscript 3中的“if(MouseEvent.CLICK = true)”错误?

时间:2012-04-04 21:37:43

标签: actionscript-3

这是两个错误;

  

1067:将布尔值的值隐式强制转换为不相关的   类型字符串。

     

1049:非法分配给指定为的变量   恒定。

我想基本上设置它,如果点击鼠标

符号直升机的-y速度=变速'速度'

有任何帮助吗?感谢

1 个答案:

答案 0 :(得分:4)

此测试并不意味着什么:MouseEvent.CLICK是常量,其值始终 "click"。所以(MouseEvent.CLICK)将始终为true(如果此字符串不为null,则测试字符串将返回true。)

要检查鼠标是否已关闭,您应该写下这样的内容:

var mouseDown:Boolean;
addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
addEventListener(Event.ENTER_FRAME, onEnterFrame);


function onMouseDown(event:MouseEvent):void
{
  mouseDown = true;
}

function onMouseUp(event:MouseEvent):void
{
  mouseDown = false;
}

function onEnterFrame(event:Event):void
{
  if (mouseDown)
  {
    helicopter.y += speed;
  }
  else
  {
    //maybe fall?
  }
}