звиняйте, в сорс вкралась ошибка :)
тут правильно

Код:
Object.prototype.RNDGenerator=function(obj) {
this._rnd=new Array();
this._obj=obj;
this.randomize=function() {
if(this._obj!=undefined&&this._obj.__proto__==Array.prototype) {
delete this._rnd;
this._rnd=new Array();
var len=this._obj.length;
this.length=len;
for(var i=0;i<len;i++) {
this._rnd[i]=this._obj[i];
}
}
}
this.random=function() {
var len=this._rnd.length;
if(len!=0) {
var n=random(len);
var temp=this._rnd[len-1];
this._rnd[len-1]=this._rnd[n];
this._rnd[n]=temp;
var out=this._rnd.pop();
this.length=this._rnd.length;
return out;
} else {
return null;
}
}
ASSetPropFlags(this,null,7);
this.randomize();
}

Код:
myRandom=new RNDGenerator([1,2,3,4,5,6,7,8,9]);
trace("-== 1-st set ==-");
while(myRandom.length) {
trace(myRandom.random());
}
myRandom.randomize();
trace("-== 2-nd set ==-");
while(myRandom.length) {
trace(myRandom.random());