アットウィキロゴ

guiii

class war{
 
b:number[]=new Array();
a:number[]=new Array();
life_b:number[]=new Array();
life_a:number[]=new Array();
x:number[]=new Array();
y:number[]=new Array();
number_dir:number[]=new Array();
dir:number[][]=new Array();
rank_a:number[]=new Array();
rank_b:number[]=new Array();
 
fresh():void{
 
var s,ch,chx:number;
 
ch=0;
for(s=1;s<11;s++){
if(this.life_a[s]>50)ch=100;
}
chx=0;
for(s=1;s<11;s++){
if(this.life_b[s]>50)chx=100;
}
 
ch=ch*chx;
 
for(s=1;s<11;s++){
if(ch<50)this.life_a[s]=100;    
if(ch<50)this.life_b[s]=100;  
if(ch<50)this.a[s]=s;    
if(ch<50)this.b[s]=90+s; 
 
}
 
 
}
 
fight_a(s:number){
 
var sx,c,n,s1,k,h:number;
 
s1=this.a[s];
k=0;
for(n=1;n<this.number_dir[s1]+1;n++){
c=this.dir[s1][n];
for(sx=1;sx<11;sx++){
h=0;
if(this.b[sx]==c)h=h+1;
if(this.life_b[sx]>50)h=h+1;
if(h==2)k=sx;
}
}
 
if(this.life_a[s]<50)k=0;
var e1:number;
e1=Math.random();
 
if(k>0){
if(e1>0.5)this.life_a[s]=0;
if(e1<0.5)this.life_b[k]=0;
}
 
}
 
fight_b(s:number){
 
var sx,c,n,s1,k,h:number;
 
s1=this.b[s];
k=0;
for(n=1;n<this.number_dir[s1]+1;n++){
c=this.dir[s1][n];
for(sx=1;sx<11;sx++){
h=0;
if(this.a[sx]==c)h=h+1;
if(this.life_a[sx]>50)h=h+1;
if(h==2)k=sx;
}
}
 
if(this.life_b[s]<50)k=0;
 
var e1:number;
e1=Math.random();
 
if(k>0){
if(e1>0.5)this.life_a[k]=0;
if(e1<0.5)this.life_b[s]=0;
}
 
}
 
 
faststep():void{
 
var s,sx,tx:number;
 
tx=0; 
for(s=1;s<11;s++){
for(sx=1;sx<11;sx++){
tx=tx+1;
this.y[tx]=s;
this.x[tx]=sx;
}
} 
 
var x1,y1,h,n,ch:number;
var dx=new Array();
var dy=new Array();
 
dx[1]=1;
dy[1]=0;
dx[2]=-1;
dy[2]=0;
dx[3]=0;
dy[3]=1;
dx[4]=0;
dy[4]=-1;
 
for(s=1;s<101;s++){
n=0;
for(sx=1;sx<5;sx++){
x1=this.x[s]+dx[sx];
y1=this.y[s]+dy[sx];
ch=0;
for(tx=1;tx<101;tx++){
h=0;
if(this.x[tx]==x1)h=h+1;
if(this.y[tx]==y1)h=h+1;
if(h==2)ch=tx;
}
if(ch>0)n=n+1;
if(ch>0)this.dir[s][n]=ch;
}
this.number_dir[s]=n;
}
 
 
for(s=1;s<11;s++){
this.a[s]=s;
this.b[s]=90+s;    
this.life_a[s]=100;
this.life_b[s]=100;    
}
 
 
 
}
move_a(s:number):void{
 
var h,s1,s2,sx,tx,ch,n:number; 
var de=new Array();
s1=this.a[s];
 
n=0;
for(sx=1;sx<this.number_dir[s1]+1;sx++){
s2=this.dir[s1][sx];
ch=0;
for(tx=1;tx<11;tx++){
h=0;
if(s2==this.a[tx])h=h+1;
if(this.life_a[tx]>50)h=h+1;
if(h==2)ch=100;
}
for(tx=1;tx<11;tx++){
h=0;
if(s2==this.b[tx])h=h+1;
if(this.life_b[tx]>50)h=h+1;
if(h==2)ch=100;
}
if(ch<60)n=n+1;
if(ch<60)de[n]=s2;
}
 
var m1,m2:number;
 
m1=n*Math.random();
m2=Math.floor(m1)+1;
if(n>0)this.a[s]=de[m2];
 
 }
 
move_b():void{
 
var r,s,s1,s2,s3,x1,y1,x2,y2:number;
var minp,sx,sxs,h,e1:number;
var ch:number[]=new Array();
var den:number[]=new Array();
 
 
var c1,c2:number;
c1=0;
for(s=1;s<11;s++){
if(this.life_a[s]>50)c1=c1+1;    
}
 
 
c2=0;
for(s=1;s<11;s++){
if(this.life_b[s]>50)c2=c2+1;    
}
 
if(c1>c2)c1=c2;
 
 
this.ranking_a(c1);
 
this.ranking_b(c1);
 
 
for(s=1;s<c1+1;s++){
s1=this.rank_a[s];
s2=this.a[s1];
x1=this.x[s2];
y1=this.y[s2];
s1=this.rank_b[s];
s2=this.b[s1];
minp=99999;
sxs=0;
for(sx=1;sx<this.number_dir[s2]+1;sx++){
s3=this.dir[s2][sx];
x2=this.x[s3];
y2=this.y[s3];
e1=(x1-x2)*(x1-x2)+(y1-y2)*(y1-y2);
if(e1<minp)sxs=s3;
if(e1<minp)minp=e1;
}
this.b[s1]=sxs;
}
 
 
 }
 
ranking_b(c1:number):void{
 
var r,s,s1,x1,y1,x2,y2:number;
var minp,sx,h,e1:number;
var ch:number[]=new Array();
 
for(r=1;r<11;r++){
ch[r]=0;
}
 
for(r=1;r<c1+1;r++){
s=this.rank_a[r];
s1=this.a[s];
x1=this.x[s1];
y1=this.y[s1];
minp=999999;
sx=0;
for(s=1;s<11;s++){
h=0;
s1=this.b[s];
x2=this.x[s1];
y2=this.y[s1];
e1=(x1-x2)*(x1-x2)+(y1-y2)*(y1-y2);
if(e1<minp)h=h+1;
if(this.life_b[s]>50)h=h+1;
if(ch[s]<60)h=h+1;
if(h==3)minp=e1;
if(h==3)sx=s;
}
this.rank_b[r]=sx;
ch[sx]=100;
}
 
 
 
}
 
ranking_a(c1:number):void{
 
var s,sx,r,s1:number;
var ch:number[]=new Array();
var maxp,h:number;
 
for(r=1;r<11;r++){
ch[r]=0;
}
 
for(r=1;r<c1+1;r++){
maxp=0;
sx=0;
for(s=1;s<11;s++){
h=0;
s1=this.a[s];
if(this.y[s1]>maxp)h=h+1;
if(ch[s]<60)h=h+1;
if(this.life_a[s]>50)h=h+1;
if(h==3)maxp=this.y[s1];
if(h==3)sx=s;
}
this.rank_a[r]=sx;
ch[sx]=100;
}
 
 
 
}
 
}
 
最終更新:2016年11月30日 14:11