簡體   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