Робот-зяблик (Java) - должен загореться и сказать цвет при нажатии - PullRequest
0 голосов
/ 23 ноября 2018

Я написал код для робота-зяблика на Java, который должен загораться и произносить название цвета, когда он нажимается, но в тот момент, когда я нажимаю, ничего не происходит.Он работает без оператора if, но когда я его добавляю, ничего не происходит.Кто-нибудь знает почему?Спасибо

import edu.cmu.ri.createlab.terk.robot.finch.Finch;

import java.awt.Color;

public class FinchUserInteraction {

    // create finch object
    static Finch myFinch = new Finch(); 

    public static void main(String[] args) {

        //'BlueFinch' is the name of the blue Finch object 
        myFinch = new Finch();


        if (myFinch.isTapped() == true) {
            myFinch.setLED(Color.blue, 500);
            myFinch.saySomething("Blue");
        } else {
            myFinch.setLED(Color.orange);
        }

        myFinch.quit(); 
        System.exit(0); 
    }
}

Ответы [ 2 ]

0 голосов
/ 25 декабря 2018

Ваш оператор if проверяет значение myFinch.isTapped() только один раз и сразу же закрывается.Проблема: myFinch.isTapped() может работать только на одном кадре и сразу останавливаться.

0 голосов
/ 27 ноября 2018

Я понял, что myFinch.isTapped () не очень точен.Если кто-то еще пытается сделать что-то подобное, используйте myFinch.isObstacle () == true и цикл while вместо оператора if, чтобы он работал

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...