var name_post=new Array();
var fam=new Array();
var pos=new Array();
var life=new Array();
var name_fam=new Array();
var number;
var age=new Array();
var ch=new Array();
var chx=new Array();
function myFunction() {
name_post[0]="";
name_post[1]="大御所";
name_post[2]="将軍";
name_post[3]="大老";
name_post[4]="美濃藩主";
name_post[5]="伊勢藩主";
name_post[6]="信濃藩主";
name_post[7]="老中";
name_post[8]="駿河老中";
name_post[9]="美濃守護";
name_post[10]="伊勢守護";
name_post[11]="信濃守護";
name_post[12]="勘定奉行";
name_post[13]="町奉行";
name_post[14]="寺社奉行 ";
name_post[15]="外国奉行";
name_post[16]="美濃代官";
name_post[17]="大垣代官";
name_post[18]="伊勢代官";
name_post[19]="松坂代官";
name_post[20]="信濃代官";
name_post[21]="松本代官";
name_fam[1]="松平";
name_fam[2]="徳川";
name_fam[3]="平家";
name_fam[4]="水戸";
name_fam[5]="藤原";
name_fam[6]="一橋";
name_fam[7]="紀伊";
name_fam[9]="北条";
name_fam[8]="柳生";
name_fam[10]="近衛";
name_fam[11]="西園寺";
name_fam[15]="北条門";
name_fam[13]="紀伊門";
name_fam[14]="柳生門";
name_fam[12]="一橋門";
name_fam[17]="西園寺門";
name_fam[16]="近衛門";
for(s=1;s<22;s++){
pos[s]=s;
life[s]=100;
}
fam[1]=1;
fam[2]=2;
fam[3]=3;
fam[4]=4;
fam[5]=8;
fam[6]=5;
fam[7]=11;
fam[8]=6;
fam[9]=7;
fam[10]=9;
fam[11]=10;
fam[12]=13;
fam[13]=15;
fam[14]=14;
fam[15]=16;
fam[16]=12;
fam[17]=13;
fam[18]=14;
fam[19]=15;
fam[20]=16;
fam[21]=17;
number=21;
tx=0;
for(s=1;s<7;s++){
for(sx=1;sx<s+1;sx++){
tx=tx+1;
age[tx]=7-s;
}
}
for(t=2;t<20;t++){
for(a=1;a<7;a++){
death(a);
}
for(s=1;s<number+1;s++){
ch[s]=0;
if(life[s]<50)ch[s]=100;
}
for(de=1;de<12;de++){
rev_fam(de);
}
for(s=1;s<number+1;s++){
chx[s]=0;
if(life[s]<50)chx[s]=100;
}
for(de=1;de<16;de++){
rev_post(de);
}
for(s=1;s<number+1;s++){
age[s]=age[s]+1;
}
for(s=1;s<7;s++){
age[s+number]=1;
life[s+number]=100;
fam[s+number]=s+11;
pos[s+number]=15+s;
}
number=number+6;
id="1IHQ14W7sMSoRByM0SyUxaC3x-ckbNeswpTQcp3wQ2nM";
ex = SpreadsheetApp.openById(id);
var sheet = ex.getSheetByName("data");
var don=new Array();
for(s=1;s<number+1;s++){
don[s-1]=new Array();
}
for(s=1;s<number+1;s++){
s1=pos[s];
s2=fam[s];
don[s-1][0]="";
if(life[s]>50)don[s-1][0]=name_fam[s2]+name_post[s1];
}
sheet.getRange(1,t,number,1).setValues(don);
}
}
function rev_post(de){
var point=new Array();
for(s=1;s<16;s++){
point[s]=new Array();
}
for(s=1;s<16;s++){
for(sx=1;sx<18;sx++){
point[s][sx]=1;
}}
/*大御所、将軍*/
point[1][1]=100;
point[2][2]=100;
/* 大老 */
point[3][3]=100;
point[3][5]=100;
/**藩主 **/
point[4][4]=100;
point[4][6]=50;
point[4][7]=50;
point[5][3]=100;
point[5][8]=50;
point[5][9]=50;
point[6][5]=100;
point[6][10]=100;
point[6][11]=100;
/**老中 **/
point[7][6]=100;
point[7][8]=100;
point[7][10]=100;
point[8][7]=100;
point[8][9]=100;
point[8][11]=100;
/**守護**/
point[9][6]=100;
point[9][7]=100;
point[9][12]=50;
point[9][13]=50;
point[10][8]=100;
point[10][9]=100;
point[10][14]=50;
point[10][15]=50;
point[11][10]=100;
point[11][11]=100;
point[11][16]=50;
point[11][17]=50;
point[12][6]=100;
point[12][7]=100;
point[12][8]=100;
point[12][9]=100;
point[12][10]=100;
point[12][11]=100;
/**bi**/
point[13][6]=100;
point[13][8]=100;
point[13][10]=100;
point[14][6]=100;
point[14][8]=100;
point[14][10]=100;
point[15][7]=100;
point[15][8]=100;
point[15][11]=100;
point[15][7]=100;
point[15][8]=100;
point[15][11]=100;
sx=0;
maxp=0;
for(s=1;s<number+1;s++){
h=0;
if(life[s]>50)h=h+1;
if(chx[s]<50)h=h+1;
s1=fam[s];
s2=pos[s];
p1=point[de][s1]+(22-s2);
if(p1>maxp)h=h+1;
if(h==3)maxp=p1;
if(h==3)sx=s;
}
chx[sx]=100;
pos[sx]=de;
}
function rev_fam(de){
var point=new Array();
for(s=1;s<12;s++){
point[s]=new Array();
}
for(s=1;s<12;s++){
for(sx=1;sx<18;sx++){
point[s][sx]=1;
}}
/**/
point[1][1]=100;
point[1][2]=50;
point[1][3]=25;
point[2][2]=100;
point[2][4]=50;
point[2][5]=25;
point[3][3]=100;
point[3][8]=50;
point[3][9]=50;
point[4][4]=100;
point[4][6]=50;
point[4][7]=50;
point[5][5]=100;
point[5][10]=50;
point[5][11]=50;
point[6][6]=100;
point[6][12]=50;
point[7][7]=100;
point[7][13]=50;
point[8][8]=100;
point[8][14]=50;
point[9][9]=100;
point[9][15]=50;
point[10][10]=100;
point[10][16]=50;
point[11][11]=100;
point[11][17]=50;
sx=0;
maxp=0;
for(s=1;s<number+1;s++){
h=0;
if(life[s]>50)h=h+1;
if(ch[s]<50)h=h+1;
s1=fam[s];
s2=pos[s];
p1=point[de][s1]+(22-s2);
if(p1>maxp)h=h+1;
if(h==3)maxp=p1;
if(h==3)sx=s;
}
ch[sx]=100;
fam[sx]=de;
}
function death(aa){
var xx=new Array();
var n;
n=0;
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;
}
最終更新:2017年03月28日 23:44