var ball=new Array();
var bx=new Array();
var by=new Array();
var dx=new Array();
var dy=new Array();
var number_ball;
class pan{
faststep():void{
var s:number;
number_ball=500;
for(s=1;s<101;s++){
ball[s]=0;
}
}
step():void{
var s:number;
for(s=1;s<101;s++){
this.move(s);
}
for(s=1;s<101;s++){
this.cal(s);
}
}
cal(s:number):void{
if(by[s]>450)ball[s]=0;
}
move(s:number):void{
var r1:number;
var r2:number;
var h:number;
r1=Math.random();
if(r1>0.9)dx[s]=1;
if(r1<0.1)dx[s]=-1;
r2=Math.random();
h=0;
if(r2>0.9)h=h+1;
if(dy[s]==1)h=h+1;
if(h==2)dy[s]=-1;
h=0;
if(r2>0.5)h=h+1;
if(dy[s]==-1)h=h+1;
if(h==2)dy[s]=1;
bx[s]=bx[s]+dx[s];
by[s]=by[s]+dy[s];
}
hit():void{
var s:number;
var sx:number;
sx=0;
for(s=1;s<101;s++){
if(ball[s]<50)sx=s;
}
if(sx>0)number_ball=number_ball-1;
if(sx>0)ball[sx]=100;
if(sx>0)bx[sx]=250;
if(sx>0)by[sx]=0;
if(sx>0)dx[sx]=0;
if(sx>0)dy[sx]=1;
}
}
function sample(){
var timer;
var delay = 100;
var sub=new pan();
sub.faststep();
var loop = function(){
if(Math.random()>0.9)sub.hit();
sub.step();
if(number_ball<1)sub.faststep();
paint();
clearTimeout(timer);
timer = setTimeout(loop,delay);
}
loop();
}
function paint(){
var sub2=new svgpaint();
var str="<svg width=\"500\" height=\"500\">";
var s;
for(s=1;s<101;s++){
if(ball[s]>50)str=str+sub2.rect(bx[s],by[s],5,5,"red");
}
str=str+"</svg>";
$("#memo").html(str);
}
最終更新:2015年05月08日 23:03