flash as3 怎么让一个元件在舞台范围内随机移动 5

就这个元件谢谢... 就这个元件 谢谢 展开
 我来答
百度网友ce01e12
2012-08-19 · TA获得超过1055个赞
知道小有建树答主
回答量:715
采纳率:0%
帮助的人:766万
展开全部
假设它是 ball_mc;

使用TweenMax

move();
function move(){
TweenMax.to(ball_mc, Math.random()*3,{x:Math.random()*stage.stageWidth, y:Math.random()*stage.stageHeight, onComplete: move});
}

你的那些图片,也可以使用这个函数去随机移动,但素鼠标rollOver的时候要 TweenMax.killAll(); 移开的时候又需要再调用一次这个函数, 检测边缘你需要在X和Y那里写写
xlzzc
2012-08-16 · TA获得超过7301个赞
知道大有可为答主
回答量:4205
采纳率:50%
帮助的人:1411万
展开全部
随机移动有多种形式,不知道您 要的是哪种形式?匀速?变速?直线?曲线?途中变向还是碰壁后转向?反弹吗?

import flash.geom.Rectangle;
import flash.display.Sprite;
import flash.utils.Timer;
import flash.events.TimerEvent;
var vx:Number=5,vy:Number=3;
//绘制一个圆,运动的物体......................
var r:uint=10;
var ball:Sprite =new Sprite();
ball.graphics.clear();
ball.graphics.lineStyle(1,0x00ff00);
ball.graphics.beginFill(0x00ff00);
ball.graphics.drawCircle(0,0,r);
ball.graphics.endFill();
ball.x=stage.stageWidth/2
ball.y=stage.stageHeight/2
this.addChild(ball);
//设置边界.................................
var boundary:Rectangle=new Rectangle(r,r,stage.stageWidth-r,stage.stageHeight-r);
//动力系统...........................
var timer:Timer=new Timer(50);
timer.start();
timer.addEventListener(TimerEvent.TIMER,run);
function run(e:TimerEvent):void {
if (ball.x<=boundary.left||ball.x>=boundary.right) {
vx=- vx;
}
if (ball.y<=boundary.top||ball.y>=boundary.bottom) {
vy=- vy;
}
ball.y+=vy;
ball.x+=vx;
}
追问

我其实是想要想这些图片在舞台范围内飘动(走直线的 碰到墙壁会回头)鼠标指住一张图的时候  所有图片随机运动停止   指住的那张图片放大居中   鼠标移开 随机运动恢复  这样子难做到么  求代码? 谢谢高手

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式