/* E Programmato da: Alessandro Carlin Riparametrizzazione di Enigma, ritoccato qua e la' */ int pezzo,asb,asa,ss,dimitri,dp,d,or,ul,ll,b,tempo,oscar,xora,flag,flag1,daa,rng,t,oldr,deg,odeg,dist; main(){ if (asa=(loc_y(t=11)>500)) up(920); else dn(80); if (asb=(loc_x()>500)) dx(920); else sx(80); b=2*asa+(asa!=asb); /* per questa devo ringraziare Simone Ascheri */ ll=90*b-35; sganna(ul=ll+130); while(t<10000){ daa=damage(++t); pezzo=(ss*(dist-900+oscar)); while(speed()>49); drive(d=360+180*asb,100); if (ss){if (or) look(350-180*asb); else look(80+180*asa); } if (asb) sx(xora=loc_x()-45-or*pezzo); else dx(xora=loc_x()+45+or*pezzo); zozzo=45+!or*pezzo; if(!asa) {d=90;up(loc_y()+zozzo);} else {d=270;dn(loc_y()-zozzo);} tempo(); if (asb) dx(920); else sx(80); tempo(); if(!asa) {dn(80);} else {up(920);} if (ss) if((damage())>daa) or=!or; if ((t>3&&!(oldr<800)||t>6)) { if (++tempo>20) {oscar=60;or=!or;} if (tempo>5) ss=1; if (damage()>85) {ss=0;} sganna(); } } fine(); } up(limt) {while(loc_y()limt) {drive(270,100);Fire();}drive(270,0);} dx(limt) {while(loc_x()limt) {drive(180,100);Fire();}drive(180,0);} Fire() { if((oldr=scan(deg,10))&&(oldr<830)) { if (oldr=scan(deg,4)); else if (oldr=scan(deg-=7,3)); else if (oldr=scan(deg+=14,3)); else return; if (!scan(deg+=2,2)) deg-=4; cannon (deg,oldr); } else if(scan(deg+=20,10)); else if(scan(deg-=40,10)); else if(scan(d,10)) deg=d; else return (deg+=80); } Fuoco() { if (oldr=scan(odeg=deg,10)) { if (scan(deg-=7,4)); else if (scan(deg+=14,4)); else if (scan(deg-=7,4)); if (!(scan(deg+=2,2))) deg-=4; return(cannon(deg+(deg-odeg),2*scan(deg,10)-oldr)); } else { if (oldr=scan(deg+=340,10)) return cannon(deg,oldr); if (oldr=scan(deg+=40,10)) return cannon(deg,oldr); if (oldr=scan(deg+=300,10)) return cannon(deg,oldr); if (oldr=scan(deg+=80,10)) return cannon(deg,oldr); if (oldr=scan(deg+=260,10)) return cannon(deg,oldr); if (oldr=scan(deg+=120,10)) return cannon(deg,oldr); deg+=80; } } fine() { if (!b||b==3) while(loc_x()<500) zzy(115+257*b,300,60); else while(loc_x()>500) zzy(115+(b-1)*770,240,120); while(1) { while(loc_y()>150) zz(220,350); while(loc_y()<850) zz(140,10); } } zz(d1,d2){ while(loc_x()>500) {drive(d1,100);Fuoco();} while(loc_x()<500) {drive(d2,100);Fuoco();} } zzy(lom,d1,d2){ while(loc_y()>lom) {drive(d1,100);Fuoco();} while(loc_y()0); t=10002*((flag1>0)); } tempo(){ dn=d;dn=d;dn=d; }