From 766372dd49b8cf790bdaba1e9a1782b4f91e45f3 Mon Sep 17 00:00:00 2001 From: ALEX11 <438026067@qq.com> Date: Tue, 23 Aug 2016 23:46:07 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=98=E5=88=B6=E4=BA=86=E8=87=AA=E5=B7=B1?= =?UTF-8?q?=E8=B4=9F=E8=B4=A3=E7=9A=84=E6=88=98=E5=9C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E4=BF=9D=E5=AD=98=E7=9A=84=E7=9B=B8=E5=85=B3=E5=8C=85=E5=9B=BE?= =?UTF-8?q?=EF=BC=88=E5=88=9D=E6=AD=A5=EF=BC=89=20=E5=AE=8C=E5=96=84?= =?UTF-8?q?=E4=BA=86=E9=9C=80=E6=B1=82=E8=AF=B4=E6=98=8E=E4=B9=A6=E4=B8=AD?= =?UTF-8?q?=E7=AC=AC3=E9=83=A8=E5=88=86=E7=9A=84=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E5=86=85=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pandafighter.class | Bin 4510 -> 0 bytes pandafighter.java | 149 ---------------------------- 软件需求规格说明书郭禹良版本0.1.doc | Bin 100864 -> 0 bytes 3 files changed, 149 deletions(-) delete mode 100644 pandafighter.class delete mode 100644 pandafighter.java delete mode 100644 软件需求规格说明书郭禹良版本0.1.doc diff --git a/pandafighter.class b/pandafighter.class deleted file mode 100644 index 1dc44306ec52ec32a8ac498a093659852979822d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4510 zcmaJ_33OY<6}?}UB}*E~OB5r(2_(?i7K@7si*QIC+evKW08N|(vzc${TUIRpALMUi zrvy@(!l5mNuF#fJpi5f1uoQ#~ZJ`HB3td>c@B4NNEj@)&%97qUU$T_sv^wYinR)Z( z&71q~dw=XFUVq@L08Ta{LHGljC}&$|&rFS3g<*3nZ*gYGNt^j? zW+5lzlF;u?*Sq+LJOAhq+@wA zJ!zm}=)mc&FdaKe;b^Qdpr$Ri$H~m=g$9@4yiEf9&8_P~?Nt>P#QSDSXSyTff z>xYKU*)F=LD4Z&~F>!b%pSRq_El*cS;S2)_POZ!An3)!bHaG>%g5jA0BkylJzkQpS zS)*{~fx6mBYIBX~2D%Sl@yc-D2?^0&r_h65&$3Kv-Oa*7_Hw4pSoz!fJj?49HXux& zGtLH5PL}s842UR}apZV*iI_5Vmco!sg)`13l61vj2@6wG{`)n zUo91dLwA*JE;JC&T5ex%+LgrIY)zTWD?6+6sxOR-aY+!PWd`R>JKM3zbSD%{ zj8VrNDQ=E<{J37>2AQvuq?w?b zgnMfKJpCSF@vyBqmm}SB9CAtj(qWZXR=to4>^CWV2p^`h$tZWSB^vFlwZ6HN_?nm3 z9L2u*PTBcZh1+mDF(W?1xhbN@8ao&wO+TUVNdy>Rm*PP8%AZ_*<;g3ak(tjZ+#xd! z1uJj5xmjy;tc;q0&nbLf0B@#2ouP-Key74+a@xbnXh>xmvc@ZU+(fQ9V%xFHw&lxG z-mV}EDiekoc({bR99u{rZZ0T%N!$!u_NZXWu!{IWg)fUZva?{7<$<+#J@(SA_dR!= zC_F5|4FtMZdGQm`qY7V_HFdLA-bv@&c@cg?;hWmfT(9F4Xr9R|0eC{;TRLIV&a~)# zN8!6#k9ECT?MxF6-3i%lv)0KO)d?uEX0vD9jILh%EAW&nYZo#D1s7pyBVaw#wZW+2! zt_hW8b5(ujWYn?yb8gSP_lYpDysF4mO_YmcpnL3LeF8!4S%v2`w*_25x6;?1Ic zo_32fQ%JLrO6hB?zM7mUr3))~yc%NU<5P=(MvK=VwsLUZpZJb&)I%+UZA0>YsN{o) zjogoh`_OndWj-w7JErZ_!q3(9v=ygJd26r~%^WeO7wz3qvbQmL4-!QzXS1@1H+W4O zo8yW&kxv#C%r5u*C8Y!SOtp|X5WDpH?{CPK6x$J=kb z1&2{Bj%(6dD-n(3+R0RuvLfD@Ohglr$s*n@r}6+@OYlIRC_>oCt7S7*5y)1Y!S{N! z6PY9~!g06+$0Lsu`MvGH9-M@$(TVGMHxytuYewBrLZT5@;63CTlLGU2FMBn#mBstm ztEJtoct3kVS|7v**bC8qCqBqtgu8TTo<E$lxAyp_je&RX+EW06u}TyR~<#nF05(S3~UpzR0Im z1LudYsi~ zI(qO(tCI@GQlXktBl~a#$?v38X=!UhO{P;ZZ}eCqn20Ul@yTo=SelnnI@REfzU|FF zIhn4Se{wRLYDzRPD(P&ZiOskWg_%Wxj1morrUmRt#rH;xrIFxm`>*nH?irnPkz^uL z#19zm9~be{N*FgVb3owZtRyYWh85VtY#An(x8f95g)Y{G0gNDr^KmWj;y2?$-jlWx zwu|uyM)5d#{}fCO?k>`hV3oinNce>Yw*~jf&4l4u!3)$cb*PW$CGA)21-aAh_%(YW zX3}2#2ES!4b)kUYQ6_)-Wbk|TV)UR7e_*eHejJNGve!fpVwyS;O`WBZbEhC!&N(K| zE7-+Y{t16Bap^^FD7mv+P>bU)B#hwDxMlV;TnuHeX_)Uf|%~$-yeBg ziYd(U&yLHnQ={u8|L#TV?q+me<*~ZC`ZXTP$JOl`4ZlW%HUBkC*3`UA#0f?PU z<`@S_r)4!~?n68oH&8TuUQ@f*XS6hQ-nReQii=)0O*5xv7>-$fkEThKIqlNXo}opT fmSMY5$8CH#LI={P9pQgqUPY}zFAO=Y&j|k)DQDg9 diff --git a/pandafighter.java b/pandafighter.java deleted file mode 100644 index 09420f9..0000000 --- a/pandafighter.java +++ /dev/null @@ -1,149 +0,0 @@ -package com.pandafighter; -import robocode.*; -import java.awt.geom.Point2D; -import java.awt.Color; -public class pandafighter extends AdvancedRobot -{ -double moveDirection; -enemyStat enemy = new enemyStat(); -public void run() - { - setBodyColor(Color.black); - setGunColor(Color.WHITE); - setRadarColor(Color.WHITE); - setScanColor(Color.BLACK); - setBulletColor(Color.YELLOW); - setAdjustGunForRobotTurn(true); - setAdjustRadarForGunTurn(true); - setTurnRadarRightRadians(2*Math.PI); //ÈÃÀ×´ïһֱת - while(true) - { - doFire(); - doScannedRobot(); - doMovement() ; - execute(); - } - } -public void onScannedRobot(ScannedRobotEvent e) - { - enemy.updateStat(e, this); - } - public void doMovement()//Ëæ»úÒƶ¯ - { //³ÌÐòÊ×ÏÈÅжÏÔ˶¯ÊÇ·ñÍê³É£¬ÈôÍê³É£¬Ëæ»úÑ¡³öÒ»¸ö×ù±êµã£¬Òƶ¯µ½¸Ãµã - if( Math.abs( getDistanceRemaining() ) < 1 ) - { - double myX = getX(); - double myY = getY(); - double nextX, nextY; // the next point move to - nextX = Math.random() * ( getBattleFieldWidth() - 100 ) + 50; - nextY = Math.random() * ( getBattleFieldHeight() - 100 ) + 50; - double turnAngle =getAngle(myX,myY,nextX,nextY ); - turnAngle = normalizeBearing( turnAngle - getHeadingRadians() ); - double moveDistance = Point2D.distance( myX, myY, nextX, nextY ); - double moveDirection = 1; - if ( Math.abs( turnAngle ) >Math.PI/2) - { - turnAngle = normalizeBearing( turnAngle + Math.PI); - moveDirection *= -1; - } - setTurnRightRadians( turnAngle ); - setAhead( moveDirection * moveDistance ); } - } - public static double getAngle(double x1, double y1, double x2, double y2) - { - return Math.atan2( x2 - x1, y2 - y1 ); - } - public void doScannedRobot() - { - if (getTime()-enemy.time>1) - { - setTurnRadarRightRadians(3*Math.PI); - } - else - { - double absolation_bearing=(getHeadingRadians()+enemy.relative_bearing)%(2*Math.PI); - double relative_radar_bearing=getRadarHeadingRadians()-absolation_bearing; - double a=normalizeBearing(relative_radar_bearing); - setTurnRadarLeftRadians(a); - } - } -public double normalizeBearing( double angle ) - { - if ( angle < -Math.PI ) - angle += 2*Math.PI; - if ( angle > Math.PI ) - angle -= 2*Math.PI; - return angle; - } - public void doFire() - { - double heading_offset=enemy.en_heading-enemy.pre_heading+0.000001; - double distance=enemy.distance; - double bullet_velocity=20-3*3; - double r=enemy.velocity/heading_offset; - double heading=0.0; - for(int i=0;i<4;i++)//µü´ú ʹԤ²â¸ü¼Ó׼ȷ - { - double b_travel_ti=distance/bullet_velocity; - double predict_heading_r=enemy.en_heading+heading_offset*b_travel_ti; - double predict_x=enemy.xCoordinate-r*Math.cos(predict_heading_r)+r*Math.cos(enemy.en_heading); - double predict_y=enemy.yCoordinate+r*Math.sin(predict_heading_r)-r*Math.sin(enemy.en_heading); - heading=Math.atan2(predict_x-getX(),predict_y-getY()); - double diatance=Point2D.distance( getX(), getY(), predict_x, predict_y ); - } - double a=normalizeBearing(heading-getGunHeadingRadians()); - setTurnGunRightRadians(a); - setFire(3); - } - public void onHitByBullet(HitByBulletEvent e) - { - if(getX()>150&&getY()>150&&enemy.battle_w-getX()>150&&enemy.battle_h-getY()>150) - { - double dist=150; - double a=normalizeBearing(90 - (getHeading() - e.getHeading())); - if(Math.abs(a)>Math.PI/2) - { - a=normalizeBearing(a+Math.PI); - } - setTurnRight( a); - setAhead(dist); - dist *= -1; - } - } -public void onWin(WinEvent e) - { - for (int i = 0; i < 50; i++) - { - turnGunRightRadians(Math.PI*3/4); - turnGunLeftRadians(Math.PI*3/4); - } - } -} -class enemyStat //·½·¨ - - { public double pre_heading; - public double en_heading; - double xCoordinate; - double yCoordinate; - double direction; - double battle_h; - double battle_w; - double relative_bearing; - double velocity; - double time; - double distance; - public void updateStat(ScannedRobotEvent e,AdvancedRobot ar) - { - pre_heading=en_heading; - en_heading=e.getHeadingRadians(); - battle_h=ar.getBattleFieldHeight(); - battle_w=ar.getBattleFieldWidth(); - relative_bearing=e.getBearingRadians(); - direction = relative_bearing + ar.getHeadingRadians(); - xCoordinate= ar.getX() + Math.sin( direction ) * distance; - yCoordinate = ar.getY() + Math.cos( direction ) *distance; - velocity=e.getVelocity(); - time=e.getTime(); - distance=e.getDistance(); - } - } \ No newline at end of file diff --git a/软件需求规格说明书郭禹良版本0.1.doc b/软件需求规格说明书郭禹良版本0.1.doc deleted file mode 100644 index 45c4220e59f883f5e8a16481fab98ecfb7651365..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 100864 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