繁体   English   中英

Robocode中未调用onScannedRobot方法

[英]onScannedRobot method not being called in Robocode

我正在Robocode中创建一个简单的机器人。 我的功能如下所示:

public void walls() {
        see = false;
        wallBool = true;
        double maxMove = Math.max(getBattleFieldWidth(), getBattleFieldHeight());
        turnLeft(getHeading() % 90);
        ahead(maxMove);

        see = true;
        turnRight(90);
        turnGunRight((getHeading() - getGunHeading())+ 90);

        while (getEnergy() <= 115) {
            wallBool = true;
            see = true;
            ahead(maxMove);
            see = false;
            turnRight(90);
        }
    }

注意, seewallBool是在我的代码前面已经声明的变量。 在函数的while循环中,我调用turnRight(); 方法,该方法应自动扫描其他机器人。 但是,我的代码未在我的onScannedRobot函数中运行,包括以下内容:

public void onScannedRobot(ScannedRobotEvent e) {
    System.out.println("check");
    if (see==true) {
        System.out.println("check2");
        scan();
    }

    if (wallBool==true) {
        fire(2);
    }

支票永远不会打印到控制台。 怎么了?

任何帮助将不胜感激...

请确保已放置import robocode.ScannedRobotEvent; 在导入中。 如果更改了顺序,还应将public void onScannedRobot(ScannedRobotEvent e)保持在public void run()函数下方。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM