FLASH AS3 中的碰撞问题(在线等)

来源:百度知道 编辑:UC知道 时间:2024/06/19 10:29:40
stop();
var 开始拖 = false; //声明变量“开始拖”的初始状态是false
var 碰撞状态; //声明变量“碰撞状态”
按钮.onPress = function() { //当实体“按钮”按下时
this.startDrag(true); //自身被拖动
this._x = _xmouse;
this._y = _ymouse;
开始拖 = true; };
按钮.onRelease = function() { //当实体“按钮”抬起时
stopDrag(); //停止拖动动作
开始拖 = false; //变量“开始拖”为假
};

function ball() { //建立函数ball
if (_root.按钮.hitTest(_root.圆)) {/*如果碰撞检测目标的实体‘圆’与被拖拽的实体‘按钮’发生撞击*/
_root.nextFrame();//显示下一帧
}
}

结果效果是能用鼠标拽着走 但是 两个MC不发生撞击
谁能帮我解释一下 谢谢

可以看出来,你的一定不是AS3呀,你用的是AS2呀.
你的没有什么大错,小问题的呀. 因为你写的函数并没有调用呀.

stopDrag(); //停止拖动动作
开始拖 = false; //变量“开始拖”为假

再在下面加一行,调用函数:
ball();

试试吗?

首选有一点~
var 开始拖 = false;
虽然as3支持中文 但你打中文不累吗?外国人看得懂吗?
你不怕乱码吗?以后记得改正啦~
还有你用的语言不是as3~是as2

依我看你的代码没有问题,检测函数写得没错
但你只写了一个函数却没有调用它啊
你可以把ball()函数放到 this.onEnterFrame
里~意思是进入每一帧的事件~