var pos=new Array();
var age=new Array();
var number;
var life=new Array();
var postx=new Array();
var point=new Array();
var pointx=new Array();
function sample(){
var timer;
var delay = 5000;
faststep();
var loop = function(){
for(a1=1;a1<7;a1++){
death(a1);
}
for(s=1;s<number+1;s++){
age[s]=age[s]+1;
}
rep();
fresh();
paint();
clearTimeout(timer);
timer = setTimeout(loop,delay);
}
loop();
}
function fresh(){
for(s=number+1;s<number+7;s++){
pos[s]=new Array();
age[s]=1;
life[s]=100;
}
for(s=number+1;s<number+7;s++){
for(sx=1;sx<7;sx++){
pos[s][sx]=0;
}}
v=15;
for(s=number+1;s<number+7;s++){
v=v+1;
pos[s][1]=v;
}
number=number+6;
}
function rep(){
var px=new Array();
var delta=new Array();
var pc=new Array();
for(s=1;s<number+1;s++){
px[s]=0;
if(life[s]>50)px[s]=100;
}
for(tr=1;tr<16;tr++){
pc[0]=0;
c=0;
for(s=1;s<number+1;s++){
if(px[s]>50)c=c+1;
if(px[s]>50)delta[c]=s;
a1=age[s]-1;
ss=pos[s][a1];
if(px[s]>50)pc[c]=pc[c-1]+pointx[tr][ss];
}
pv=pc[c];
m1=pv*Math.random();
m2=1;
for(s=1;s<c;s++){
if(m1>pc[s])m2=s+1;
}
m3=delta[m2];
a3=age[m3];
px[m3]=0;
pos[m3][a3]=tr;
}
}
function death(aa){
var xx=new Array();
var n;
for(s=1;s<number+1;s++){
h=0;
if(life[s]>50)h=h+1;
if(age[s]==aa)h=h+1;
if(h==2)n=n+1;
if(h==2)xx[n]=s;
}
m1=n*Math.random();
m2=Math.floor(m1)+1;
m3=xx[m2];
life[m3]=0;
}
function faststep(){
postx[0]="";
postx[1]="将軍";
postx[2]="大老";
postx[3]="駿河城代";
postx[4]="美濃藩主";
postx[5]="伊勢藩主";
postx[6]="信濃藩主";
postx[7]="老中";
postx[8]="駿河老中";
postx[9]="美濃守護";
postx[10]="伊勢守護";
postx[11]="信濃守護";
postx[12]="勘定奉行";
postx[13]="町奉行";
postx[14]="寺社奉行 ";
postx[15]="外国奉行";
postx[16]="美濃代官";
postx[17]="大垣代官";
postx[18]="伊勢代官";
postx[19]="松坂代官";
postx[20]="信濃代官";
postx[21]="松本代官";
number=21;
for(s=1;s<number+1;s++){
pos[s]=new Array();
}
tx=0;
for(s=1;s<7;s++){
for(sx=1;sx<s+1;sx++){
tx=tx+1;
age[tx]=7-s;
}
}
for(s=1;s<number+1;s++){
for(sx=1;sx<7;sx++){
pos[s][sx]=0;
}}
for(s=1;s<number+1;s++){
a1=age[s];
pos[s][a1]=s;
life[s]=100;
}
for(s=1;s<16;s++){
pointx[s]=new Array();
}
for(s=1;s<16;s++){
for(sx=1;sx<22;sx++){
pointx[s][sx]=1
}}
for(s=1;s<16;s++){
pointx[s][s]=1000;
}
pointx[1][4]=100;
pointx[1][5]=100;
pointx[1][6]=100;
pointx[2][4]=100;
pointx[2][5]=100;
pointx[2][6]=100;
pointx[3][4]=100;
pointx[3][5]=100;
pointx[3][6]=100;
pointx[4][7]=100;
pointx[4][8]=100;
pointx[4][9]=100;
pointx[5][7]=100;
pointx[5][8]=100;
pointx[5][10]=100;
pointx[6][7]=100;
pointx[6][8]=100;
pointx[6][11]=100;
pointx[7][9]=100;
pointx[7][10]=100;
pointx[7][11]=100;
pointx[7][12]=10;
pointx[7][13]=10;
pointx[8][9]=100;
pointx[8][10]=100;
pointx[8][11]=100;
pointx[8][14]=10;
pointx[8][15]=10;
pointx[9][12]=100;
pointx[9][13]=100;
pointx[9][14]=100;
pointx[9][15]=100;
pointx[9][16]=10;
pointx[9][17]=10;
pointx[10][12]=100;
pointx[10][13]=100;
pointx[10][14]=100;
pointx[10][15]=100;
pointx[10][18]=10;
pointx[10][19]=10;
pointx[11][12]=100;
pointx[11][13]=100;
pointx[11][14]=100;
pointx[11][15]=100;
pointx[11][20]=10;
pointx[11][21]=10;
point[0]=0;
point[1]=10000;
point[2]=1000;
point[3]=1000;
point[4]=100;
point[5]=100;
point[6]=100;
point[7]=10;
point[8]=10;
point[9]=5;
point[10]=5;
point[11]=5;
point[12]=2;
point[13]=2;
point[14]=2;
point[15]=2;
point[16]=1;
point[17]=1;
point[18]=1;
point[19]=1;
point[20]=1;
point[21]=1;
}
function paint(){
var str;
str="<table>";
for(s=1;s<number+1;s++){
str=str+"<tr>";
for(sx=1;sx<7;sx++){
str=str+"<td>";
n1=pos[s][sx];
str=str+postx[n1];
str=str+"</td>";
}
str=str+"</tr>";
}
str=str+"</table>";
$("#memo").html(str);
}
最終更新:2015年04月25日 00:47