Flash 游戏开发常用函数代 游牧人 2 类型:闪吧 BBS 来源:闪吧■■■对象数组 比如要构建一个有很多属性的数组,简单的可以这样做: 2024 代码: var a:Array = new Array(); for (var i = 0; i<10; i++) { a[i] = new Object(); a[i].x = 10; a[i].y = 10*i; a[i].name = "---"; a[i].id = i; // 随便你给什么属性啊。 } ////先用局部变量存储对象会更好一点。 var a=new Array() for(var i=0;i<10;i++){ var ta=new Object(); ta.x=10; ta.y=10; ta.name="n"+i; a.push(ta); } ////或者更简便一点的方法: var a=new Array() for(var i=0;i<10;i++){ a[i]={x:10,y:10,name:"n"+i} } ■■■程序控制角色运动 下面这段代码控制 MovieClip mc 从 (50,50) 横向运动到(100,50) 停止,速度为 5 pixel: mc._x = mc._y=50; mc.onEnterFrame = function() { _x += 5; trace(_x); if (_x == 100) { delete (mc.onEnterFrame); } }; ■■■精确计时 我们设定了时间为 60 秒,然后通过 setInterval 来定期(每 1000milliseconds)触发一个函数 runTimer。 function runTimer 用来计时,当时间到了以后,转去执行 outThere。 function outThere 用来处理时间到了以后的动作,不要忘记 clearInterval(intervalID),停止计时。 var time:Number = 60; var intervalID:Number; intervalID = setInterval(runTimer, 1000); function runTimer() { time--; trace(time); if (time == 0) { outThere(); } } function outThere() { // blah blah blah clearInterval(intervalID); } ■■■找到目前最小的一个可用的深度 Depth(来自国外) 针对 Flash Player 6 的: availTopDepth = function () { var allDepths = []; for (var z in _root) { if (_root[z] instanceof Button || _root[z] instanceof MovieClip || _root[z] instanceof TextField) { allDepths.push(_root[z].getDepth()); } } if (allDepths.length != 0) { sortAll = function (a, b) { if (ab) {return 1;} else {return 0;}}; allDepths.sort(sortAll); return (parseInt(allDepths[allDepths.length-1])+1); } }; trace(_root.availTopDepth()); 放置一个 MovieClip 在 S...