- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
package FlyE;
/**
*东师范大学
*山信息科学与工程学院
* 王赛
*Blog: /u/1878725434
*
*
*
*
*
*
*/
import java.awt.Color;
import java.awt.geom.Point2D;
import robocode.*;
import robocode.util.Utils;
public class FlyE extends AdvancedRobot{
/**
* 扫描到敌人的时间
*/
private double time1 = 0;
private Enemy enemy = new Enemy();
private boolean discover = false; //敌人是否 被发现的属性
private double heading = 0.0;
private double radarHeading = 0.0;
public double bPower = 2;
private double distance = 800;//敌人即将到的距离
private double time ;
public void onScannedRobot(ScannedRobotEvent e){
discover = true ;
preTime1 = time1;//保存之前扫描到的时间
time1= getTime();//保存当前扫描到的时间
//初始化敌人
enemy.setBearing(e.getBearingRadians());
preHeading1 = enemy.getHeading();//之前扫描到敌人的 heading///
enemy.setHeading(e.getHeadingRadians());
enemy.setSpeed( e.getVelocity());
enemy.setDistance(e.getDistance());
time = distance / Rules.getBulletSpeed(bPower);
}
/**
* 子弹相撞时
*/
public void onBulletHitBullet(BulletHitBulletEvent event) {
bPower = 0.5;
}
/**
* 坦克相撞时
*/
public void onHitRobot(HitRobotEvent event){
if(getRadarTurnRemainingRadians() ( 0.01) ){
setTurnRadarLeftRadians((Math.PI ) + 0.35);
setBack(20);
}
}
/**
* 被子弹击中时,??需要继续改进
*/
public void onHitByBullet(HitByBulletEvent e){
if(getDistanceRemaining() 1){
setAhead(6);
execute();
}
//scan();
}
/**
* 打扮
*/
private void dressing(){
setBodyColor(Color.black);
setRadarColor(Color.yellow);
setBulletColor(Color.red);
setScanColor(Color.GREEN);
}
/**
* 车炮和雷达分离
*/
private void severance(){
setAdjustGunForRobotTurn(true);
setAdjustRadarForGunTurn(true);
setAdjustRadarForRobotTurn(true);
}
/**
* 移动
*/
private void movement(){
//随机选点摆脱敌人算法
if(getDistanceRemaining() 1 ){
double nx = 0;
double ny = 0;
double safDis =68 ;
//随机生成的x,y坐标
nx = Math
您可能关注的文档
- 7生态恢复工程.ppt
- 800方每日番茄制品污水处理工程.doc
- 8机械量检测课件.ppt
- A85工程竣工验收备案表.doc
- ABB仪表介绍课件.ppt
- AcademicReadingTest3试题及答案.doc
- AcademicWritingforGraduateStudents全册课件.ppt
- Android的应用开发工程实训五子棋实验报告.doc
- ANSYS土木工程经典实例.doc
- ANSYS工程分析基础与观念Chapter01.doc
- 利用纳米颗粒纯化固定化组氨酸标签葡萄糖脱氢酶.pdf
- 初级经济师《经济基础》考试题库【3套练习题】模拟训练含答案(第1次).docx
- 加拿大英文介绍ppt.pptx
- 到新单位工作心得体会(精选8篇).pdf
- 动静脉内瘘相关肢体疼痛原因与处理.pptx
- 初级维修电工试卷013及其答案.doc
- 《GBT 43556.1-2023光纤光缆线路维护技术 第1部分:基于泄漏光的光纤识别》最新解读.pptx
- 《GBT 43549-2023鞋类 鞋垫试验方法 静态压缩变形》最新解读.pptx
- 《GBT 4937.35-2024半导体器件 机械和气候试验方法 第35部分:塑封电子元器件的声学.pptx
- 《GB 37219-2023充气式游乐设施安全规范》最新解读.pptx
文档评论(0)