小球滚动,方块上移

1.创建一个新的Flash Actionscript 3影片 (340x200).
2.在舞台上画一个矩形.设置大小为20x20.
3.将矩形转换为MC.给它取一个你喜欢的名字,将注册点移到中心!
4.设连接属性中MC的类名为"Box".如果你对MC连接属性感到陌生的话,请查看 Actionscript 3 扩展类教程.
5.现在在舞台上画一个10x10的园.
6.将园转换为MC.给它取一个你喜欢的名字,将注册点移到中心!
7.设连接属性中MC的类名为"Ball".
8.从舞台上删除园和矩形.
进入 Actionsctipt9. 在第一帧输入下列Actionscript代码:

var boxes:Array = new Array();
var ballSpeed:Number=-4;
for (var i = 0; i < 9; i++) {
	var box:Box = new Box();
	box.y=150;
	box.x=box.width*i*1.5+40;
	boxes.push(box);
	addChild(box);
}
var ball:Ball = new Ball();
ball.x=320;
ball.y=155;
ball.buttonMode=true;
addChild(ball);
ball.addEventListener(MouseEvent.CLICK, ballClicked);
function ballClicked(e:Event):void {
	addEventListener(Event.ENTER_FRAME, enterFrameHandler);
}
function enterFrameHandler(e:Event):void {
	ball.x+=ballSpeed;
	for (var i = 0; i < boxes.length; i++) {
		var box:Box=boxes[i];
		var distX:Number=ball.x-box.x;
		if (distX<50&&distX>0&&ballSpeed<0) {
			box.y-=2;
		} else if (distX < 50 && distX < 0 && ballSpeed < 0) {
			if (box.y<=150) {
				box.y+=2;
			}
		}
		if (distX<0&&distX>-50&&ballSpeed>0) {
			box.y-=2;
		} else if (distX < 50 && distX > 0 && ballSpeed > 0) {
			if (box.y<=150) {
				box.y+=2;
			}
		}
		if (ball.x+5>stage.stageWidth||ball.x-5<0) {
			ballSpeed *= (-1);
		}
	}
}

posted @ 2010-05-06 16:22  LT世纪  阅读(234)  评论(0编辑  收藏  举报