MyGameMyLove.com
[代码整理]代码实现的循环滚动效果 2008-6-26 10:07:00 举报不良信息 |
||
| mygamemylove
注册时间:2008-5-6 11:42:00 |
代码实现的循环滚动效果 //滚动初使化 /*mc:MovieClip,滚动的父类 linkid:String, 库符号连接ID numFx:Number, -1为向左,1为向右 numSD:Number 滚动的速度 */ function ini_GD (mc:MovieClip, linkid:String, numFx:Number,numSD:Number) { //移动距离,用于删除不在显示部分的mc mc.len = 0; mc.creati = 0; mc.killi = 1; //速度 mc.sd = 5; //单个元件的宽度 mc.w = 67; // mc.linkid = linkid; mc.numFx = numFx; //初使生成第一排 if (mc.numFx == 1) { for (var i = 8; i >= 1; i--) { mc.creati++; var mcTem:MovieClip = mc.attachMovie (mc.linkid, "mc" + mc.creati, mc.creati); mcTem._x = mc.w * i; mcTem.mc.gotoAndStop (1); mcTem.mc.txt.text = mc.creati; } } else { for (var i = 1; i <= 8; i++) { mc.creati++; var mcTem:MovieClip = mc.attachMovie (mc.linkid, "mc" + mc.creati, mc.creati); mcTem._x = mc.w * mc.creati; mcTem.mc.gotoAndStop (1); mcTem.mc.txt.text = mc.creati; } } mc.go = function () { this._x += this.sd * this.numFx; this.len += this.sd; if (this.len > this.w) { this.len -= this.w; // if (this.numFx == -1) { this.creati++; var mcTem:MovieClip = this.attachMovie (this.linkid, "mc" + this.creati, this.creati); mcTem._x = this.w * this.creati; mcTem.mc.gotoAndStop (1); mcTem.mc.txt.text = this.creati; // this["mc" + this.killi].removeMovieClip (); this.killi++; } else { this.creati++; var mcTem:MovieClip = this.attachMovie (this.linkid, "mc" + this.creati, this.creati); mcTem._x = -this.w * (this.creati - 9); mcTem.mc.gotoAndStop (1); mcTem.mc.txt.text = this.creati; // this["mc" + this.killi].removeMovieClip (); this.killi++; } } }; } //背景反方向运动 var mcGD_bak:MovieClip = _root.createEmptyMovieClip ("mcGD_bak", _root.getNextHighestDepth ()); //设置遮蔽 mcGD_bak.setMask (mcMask_bak); ini_GD (mcGD_bak, "linkbak", 1); //mcGD_bak做可以参照的位置, mcGD_bak._x = mcGDTem_bak._x; mcGD_bak._y = mcGDTem_bak._y; //隐藏参照的位置 mcGDTem_bak._visible = false; // // //滚动列表 var mcGD:MovieClip = _root.createEmptyMovieClip ("mcGD", _root.getNextHighestDepth ()); //设置遮蔽 mcGD.setMask (mcMask); //mcGDTem做可以参照的位置, mcGD._x = mcGDTem._x; mcGD._y = mcGDTem._y; //隐藏参照的位置 mcGDTem._visible = false; ini_GD (mcGD, "linkXD", -1); // _root.onEnterFrame = function () { //循环 mcGD.go (); mcGD_bak.go (); }; |
|

