Flash CS4 AS3.0 制作简易拼图,怎样编写当图片进入某范围后自动吸附的代码 你好,我也是一名学生,现在在做一个拼图游戏,用的是flash...

AS3.0\u62fc\u56fe\u5438\u9644\u600e\u4e48\u505a\uff1f

\u8fd9\u91cc\u53ea\u80fd\u770b\u51fa\u4f60\u76849\u7247\u62fc\u56fe\u80fd\u62d6\u52a8\uff0c\u4f60\u60f3\u600e\u4e48\u5438\u9644\uff1f\u662f\u56fa\u5b9a\u5728\u4e00\u4e2a\u8f74\u4e0a\u5e76\u4e14\u53ea\u80fd\u62d6\u4e00\u683c\uff1f

\u9488\u5bf9\u4f60\u7684\u8ffd\u95ee\u6765\u89e3\u91ca\u4e00\u4e0b\u5427\u3002
1.\u5047\u8bbe\u6709\u788e\u7247Mosaic1\uff0cMosaic2.....Mosaic20\u3002
\u518d\u5c06\u8fd9\u4e9b\u788e\u7247\u5c01\u88c5\u4e00\u4e2a\u65b0\u7684\u5143\u4ef6MosaicSet\uff0c\u7136\u540e\u5bf9MosaicSet\u6dfb\u52a0\u76d1\u542c\u5c31\u884c\u4e86\u3002
\u7136\u540e\u901a\u8fc7event.target\u5c31\u53ef\u4ee5\u64cd\u4f5c\u788e\u7247\u4e86\uff0cevent.target\u4f1a\u6307\u5411\u5177\u4f53\u7684\u788e\u7247\uff0c\u800c\u5e76\u4e0d\u662f\u6574\u4e2aMosaicSet\u3002

2.\u5efa\u7acb\u6570\u7ec4\u7684\u8bdd\u53ef\u4ee5
var MosaicArr:Array = new Array();
MosaicArr.push(Mosaic1);
MosaicArr.push(Mosaic2);......\u7136\u540e\u53ef\u4ee5\u901a\u8fc7\u6570\u7ec4\u8bbf\u95ee\u6bcf\u4e00\u4e2aMosaic

3.\u5224\u65ad\u6bcf\u4e00\u4e2a\u62fc\u56fe\u788e\u7247\u7684\u6b63\u786e\u4f4d\u7f6e\uff1f
\u5982\u679c\u4f60\u7684\u62fc\u56fe\u788e\u7247\u90fd\u662f\u6b63\u65b9\u5f62\u7684\u8bdd\uff0c\u53ef\u4ee5\u5224\u65ad\u6bcf\u4e00\u4e2aMosaic\u7684\u5f53\u524d\u5750\u6807(x,y)\u548c\u76ee\u7684\u5750\u6807(x0,y0)\u4e4b\u95f4\u7684\u8ddd\u79bb\uff0c\u5982\u679c\u5c0f\u4e8e\u4e00\u5b9a\u7684\u8303\u56f4\uff0c\u53ef\u4ee5\u81ea\u5df1\u505a\u4e00\u4e2a\u8fd0\u52a8\u7684\u52a8\u753b\uff0c\u5c06Mosaic\u632a\u81f3\u6807\u51c6\u4f4d\u7f6e\uff08\u53ef\u4ee5\u901a\u8fc7Timer\u5b9e\u73b0\uff0c\u6bcf\u591a\u5c11\u6beb\u79d2\u632a\u52a8\u4e00\u70b9((x-x0)/10\uff0c(y-y)/10\uff09)\uff0c\u5373\u5438\u9644\u7684\u52a8\u753b\u3002

4\u3001\u62fc\u56fe\u5b8c\u6210\u7684\u8bdd\u5373\u6bcf\u4e00\u4e2a\u62fc\u56fe\u788e\u7247\u90fd\u5df2\u7ecf\u5904\u4e8e\u76ee\u7684\u5750\u6807\uff0c\u76ee\u7684\u5750\u6807\u53ca\u6bcf\u4e00\u4e2a\u788e\u7247\u7684\u72b6\u6001\u90fd\u53ef\u4ee5\u5b58\u6210\u6570\u7ec4\u3002\u8fd9\u4e2a\u5f88\u597d\u5224\u65ad\u7684\uff0c\u5c31\u662f\u6bcf\u5b8c\u6210\u4e00\u4e2a\u788e\u7247\u5c31\u5224\u65ad\u4e00\u4e0b\u6570\u7ec4\u7684\u72b6\u6001(\u6216\u8005\u5b9a\u4e49\u4e00\u4e2a\u53d8\u91cfCompleteNumber\u4ece0\u7d2f\u52a0)\u3002
\u6240\u82b1\u65f6\u95f4\u53ef\u4ee5\u5728\u5f00\u59cb\u65f6\u548c\u5b8c\u6210\u65f6\u90fd\u83b7\u53d6\u4e00\u4e0b\u7cfb\u7edf\u65f6\u95f4\uff0c\u7136\u540e\u51cf\u4e00\u4e0b\u5c31\u51fa\u6765\u4e86\u3002

//定义点pa,用于表示拼图的坐标
var pa:Point=new Point(puzzle.x,puzzle.y);
//定义点pb,用于表示目标的坐标
var pb:Point=new Point(target.x,target.y);
//d为两点(即拼图和目标)之间的距离
var d:Number=Point.distance(pa,pb);
//当距离小于100像素时,吸引拼图
//把100像素改成你想要的大小
if(d<100)
{
pa.x=target.x;
pa.y=target.y;
}

比如这图片(必须先转为mc哦)的实例名是pic,你想让它最终定位在(100,200)的位置,条件是只要它当前的x坐标和最终x坐标差距小于10,并且当前的y坐标和最终y坐标差距也小于10的时候吸附过去:
pic.addEventListener(Event.ENTER_FRAME,picHandler);
function picHandler(e:Event):void
{
if(Math.abs(pic.x - 100) <= 10 && Math.abs(pic.y - 200) <= 10)
{
pic.x= 100;
pic.y= 200;
pic.removeEventListener(Event.ENTER_FRAME,picHandler);
}
}

扩展阅读:animate动漫官网 ... adobe flash player ... flash大厅登录网站入口 ... adobe fresco免费下载 ... flash苹果版官方下载 ... 4399游戏插件flash下载 ... photoshop ... adobe flash cs4 ... flash下载安装官网 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网