Flash教程:模拟幸运号抽奖机

2019-10-08 20:24:11王振洲

var kO:Boolean = true;
total_txt.text = "参与选号总数是: " total_num;
//=====================================================
//============= 函数区 ===============================
//------ 根据第一帧上输入的数值复制文本框个数与各位数上的数量
this.createEmptyMovieClip("main", 0);
body();
function body() {
for (var i:Number = 0; i<txtLong_num; i ) {
for (var j:Number = 0; j<4; j ) {
main["m" i j] = main.attachMovie("cell", "m" i j, main.getNextHighestDepth(), {_x:i*80, _y:-j*85});
main["m" i j].v = true;
main["m" i j].filters = [d_filters];
//main["m" i j].num 决定再次升到顶端时其中的数值从数组num_array中进行取值的位置
main["m" i j].num = j;
main["m" i j].t.text = num_array[j].toString().substr(i, 1);
Rolling(main["m" i j]);
}
}
}
//------- 文本框居中排列
PosiMain();
function PosiMain() {
main._x = Stage.width/2-main._width/2;
main._y = Stage.height/2-40;
}
//------- 滚动函数
function Rolling(target:MovieClip) {
target.onEnterFrame = function() {
if (this.v) {
this._y = 40;
if (this._y>=80) {
this.num = 4;
if (this.num>total_num) {
this.num = Number(this._name.substr(2, 1));
}
this.t.text = num_array[Number(this.num)].toString().substr(this._name.substr(1, 1), 1);
this._y = -255;
}
} else {
deleCell();
}
};
}
main.setMask(mask_mc);
//------- 停止滚动和显示结果区
function deleCell() {
for (var i in main) {
// 如果文本框未位上的数字与停止按钮给出的数字不同时就被删除
if (main._name.substr(2, 1) != randomNum) {
main.t.text = "";
main._visible = false;
main.removeMovieClip();
delete main.onEnterFrame;
} else {
// 如果文本框未位上的数字与停止按钮给出的数字相同时就作为显示对象
if (main._y != 0) {
main._y = (0-main._y)/10;
} else {
//--- 删除num_array中已抽的号码
C_array.push(main);
if (C_array.length == txtLong_num) {
var n = main.num;
getNo_array.push(num_array[n]);
jieguo_mc.t.text = "";
for (var Index:Number = (getNo_array.length-1); Index>=0; Index--) {
jieguo_mc.t.text = "第" (Index 1) "次抽取的号码是: " getNo_array[Index] "n";
}
var tw1 = new mx.transitions.Tween(jieguo_mc, ’_y’, mx.transitions.easing.Back.easeOut, jieguo_mcY0, Stage.height-jieguo_mc._height, 1, true);
num_array.splice(n, 1);
delete main.onEnterFrame;