|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
与位图图形相比,矢量图形需要的内存和存储空间小很多,因为它们是以数学公式而不是大型数据集来表示的。位图图形之所以更大,是因为图像中的每个像素都需要一组单独的数据来表示。
poluoluo中心提醒:在这个教程中我们将进修怎样用FlashAS3来失掉鼠标确当后方位。我们能够用此为游戏创立风趣的把持办法,比方可把鼠标看成一个游戏把持杆。如今我们先展现一下我们的作品。
疾速教程:怎样用ActionScript侦测鼠标的地位
在这个教程中我们将进修怎样用FlashAS3来失掉鼠标确当后方位。我们能够用此为游戏创立风趣的把持办法,比方可把鼠标看成一个游戏把持杆。如今我们先展现一下我们的作品。
上面是一个复杂的示例:
复杂概述
利用鼠标事务来监听鼠标光标的活动,用变量存贮响应数据并展现其以后方位。
第一步:创立一个新文档
翻开Flash并创立一个新的Flash文档(ActionScript3)。
第二步:翻开举措面板
按F9或实行窗口>举措翻开举措面板。
第三步:变量
键进一些我们将利用的变量,变量名应能一览无余。
varpreviousX:Number=0;
varpreviousY:Number=0;
varcurrentX:Number=0;
varcurrentY:Number=0;
varxDir:String;
varyDir:String;
vardir:TextField=newTextField();
第四步:主函数
上面是主函数
functiongetMouseDirection():void
{
dir.width=stage.stageWidth;//文本地区的巨细
addChild(dir);//在舞台上增加文本地区
//在舞台上增加一个鼠标事务监听器,并当鼠标活动时实行checkDirection函数
stage.addEventListener(MouseEvent.MOUSE_MOVE,checkDirection);
}
第五步:CheckDirection函数
上面的代码将检测鼠标方位,并将了局展现在舞台文本域上。
function
checkDirection(e:MouseEvent):void
{
getHorizontalDirection();
getVerticalDirection();
dir.text=”x:”+xDir+”,y:”+yDir;
}
第六步:猎取方位
检测鼠标的偏向.
//程度偏向
functiongetHorizontalDirection():void
{
previousX=currentX;//检测方才的地点
currentX=stage.mouseX;//猎取以后的地点
if(previousX>currentX)//将两个地点举行对照来断定偏向
{
xDir=“left”;
}
elseif(previousX<currentX)
{
xDir=“right”;
}
else
{
xDir=“none”;
}
}
//垂直偏向
functiongetVerticalDirection():void
{
previousY=currentY;//检测方才的地点
currentY=stage.mouseY;//猎取以后的地点
if(previousY>currentY)//将两个地点举行对照来断定偏向
{
yDir=“up”;
}
elseif(previousY<currentY)
{
yDir=“down”;
}
else
{
yDir=“none”;
}
}
第七步:运转函数
增加上面的代码来运转函数。当getMouseDirection()入手下手函数运转,就会创建一个能够启动偏向唆使器的鼠标活动事务监听器
getMouseDirection();
第八步:文档类版本
package
{
importflash.display.MovieClip;
importflash.text.TextField;
publicclassMouseMoveDemoextendsMovieClip
{
publicvarpreviousX:Number=0;
publicvarpreviousY:Number=0;
publicvarcurrentX:Number=0;
publicvarcurrentY:Number=0;
publicvarxDir:String;
publicvaryDir:String;
publicvardir:TextField=newTextField();
publicfunctionMouseMoveDemo()
{
getMouseDirection();
}
publicfunctiongetMouseDirection():void
{
dir.width=stage.stageWidth;
addChild(dir);
stage.addEventListener(MouseEvent.MOUSE_MOVE,checkDirection);
}
publicfunction
checkDirection(e:MouseEvent):void
{
getHorizontalDirection();
getVerticalDirection();
dir1.text=“x:”+xDir
dir2.text=“y:”+yDir;
}
publicfunctiongetHorizontalDirection():void
{
previousX=currentX;
currentX=stage.mouseX;
if(previousX>currentX)
{
xDir=“left”;
}
elseif(previousX<currentX)
{
xDir=“right”;
}
else
{
xDir=“none”;
}
}
publicfunctiongetVerticalDirection():void
{
previousY=currentY;
currentY=stage.mouseY;
if(previousY>currentY)
{
yDir=“up”;
}
elseif(previousY<currentY)
{
yDir=“down”;
}
else
{
yDir=“none”;
}
}
}
}
假如较之工夫工夫轴代码而更喜好用文档类的话就选择上述的办法
你能够将这个类用在任何项目中以拔出鼠标偏向唆使器。只需将全部类复制到新的AS文档中,将其保为”MouseMoveDemo.as”,,然后你能够用上面的利用上面的部分代码以作参考:
varmouseMoveDemo:MouseMoveDemo=newMouseMoveDemo();
addChild(mouseMoveDemo);
总结
这是个对照基本的例子,试着做做吧,并将它使用到你的项目中。
感谢浏览。
flash影片的后缀名为.swf,该类型文件必须有flash播放器才能打开(包括各大浏览器,视频播放器),且播放器的版本须不低于FLASH程序自带播放器的版本。 |
|