2002/vaiolo.r

01/* **********************************VAIOLO*****************************
02questo robot � dedicato alla pazienza infinita di Alessandro Carlin, mio maestro nei Crobots che spero di fregare!!*/
03 
04/* crobot di :
05 
06QUESTO HA 386 ISTRUZIONI E GAREGGIA NEI 500
07 
08LUCA STRINGHER
09 
10COME SI COMPORTA:
11 
12vaiolo va all'angolo pi� vicino e fa un quadrato come gli altri virus. piccolo. da implementare
13 
14*/
15 
16int x,y,a,b,ang,xi,yi,anga,d0,d3,d4,d1,d2,i,angm,r,dq,q,angq,d,D,ang2,ang3,ang4;
17main()
18{
19inoculazione();
20r=40;
21incubazione();}
22 
23inoculazione()
24{
25x=loc_x();y=loc_y();
26if(x>500){i=2;}else{;i=1;}
27if(y>500){i+=1;if(i==2){i=4;}}
28trasmissione();
29}
30 
31incubazione()
32{
33 
34while(1)
35{
36x=rand(r)+xi;a=0;
37while(speed()>49);{epidemia();}
38while(loc_x()<x){drive(a,100);epidemia();}drive(a,0);
39y=rand(r)+yi;a=90;
40while(speed()>49);{epidemia();}
41while(loc_y()<y){drive(a,100);epidemia();}drive(a,0);
42x=rand(r)+xi;a=180;
43while(speed()>49);{epidemia();}
44while(loc_x()>x){drive(a,100);epidemia();}drive(a,0);
45y=rand(r)+yi;a=270;
46while(speed()>49);{epidemia();}
47while(loc_y()>y){drive(a,100);epidemia();}drive(a,0);
48/*linfociti();*/
49/*r=r-10;
50if(r<10){r=40;}*/
51}
52}
53 
54epidemia()
55{
56d0=scan(anga,10);
57if(d0>0)
58    {
59    cannon(anga,d0);
60 
61    /*D=5;
62    while(D>1)
63        {anga=anga+D;  
64        d1=scan(anga,D);
65        if(d1==0){anga=anga-2*D;d1=scan(anga,D);}
66        d4=d3;ang4=ang3;
67        d3=d2;ang3=ang2;
68        d2=d1;ang2=anga;
69        D=D-2;
70        }
71    anga=anga+(ang2-ang4)/2;
72    d=d1+(d2-d4)/2;
73    cannon(anga,d);*/
74    }
75else{anga+=20;}
76if(anga>angm){anga=angm-90;}
77     
78     
79}
80 
81trasmissione()
82{
83if(i==1){xi=80 ;yi=80;angm=90;}
84if(i==4){xi=80; yi=870;angm=360;}
85if(i==2){xi=870;yi=80;angm=180;}
86if(i==3){xi=870;yi=870;angm=270;}
87anga=angm-90;
88}
89/*
90linfociti()
91{
92q=0;
93angq=angm-90;
94while(angq>angm)
95    {dq=scan(angq,10);
96    angq=angq+20;
97    if(dq>0){q+=1;}
98    }
99}*/