Ich will ein programm schreiben dass eine ampel den wahrheitswert flase bekommt wenn diese rot wird und ich kann mit meinem auto nur fahren wenn die ampel grün wird was muss ich machen?
ich will hier beim auto so machen dass er überprüft ob eine Ampel vorhanden ist und wenn ja dann ob die AmpelAn bze grün ist wenn ja soll das Auto fahren wenn nicht dann nicht
anderer Code
//code von Ampel public class Ampel extends Actor { public int i=1; public void act() { boolean ampelAnWahr; if(i<=10){ setImage("images/ampelGrün.png"); ampelAnWahr = true; } else{ setImage("images/ampelRot.png"); ampelAnWahr = false; } i++; if(i==21) i=1; } }
public void act() { tastenBelegung(); } public void tastenBelegung() { if(Greenfoot.isKeyDown("w")) { // hier will ich überprüfen ob die ampel an ist wenn ja soll er fahren aber ich weiss nicht wie setLocation(getX(), getY() - 1); } if(Greenfoot.isKeyDown("a")) { setLocation(getX() - 1, getY()); } if(Greenfoot.isKeyDown("s")) { setLocation(getX(), getY() + 1); } if(Greenfoot.isKeyDown("d")) { setLocation(getX() + 1, getY()); } }
public boolean AmpelVorhanden(String richtung) { int rot = getRotation(); if (richtung=="vorne" && rot==0 || richtung=="rechts" && rot==270 || richtung=="links" && rot==90) { if(getOneObjectAtOffset(1,0,Ampel.class)!=null ) { return true; } } if (richtung=="vorne" && rot==180 || richtung=="rechts" && rot==90 || richtung=="links" && rot==270) { if(getOneObjectAtOffset(-1,0,Ampel.class)!=null ) { return true; } } if (richtung=="vorne" && rot==90 || richtung=="rechts" && rot==0 || richtung=="links" && rot==180) { if(getOneObjectAtOffset(0,1,Ampel.class)!=null) { return true; } } if (richtung=="vorne" && rot==270 || richtung=="rechts" && rot==180 || richtung=="links" && rot==0) { if(getOneObjectAtOffset(0,-1,Ampel.class)!=null) { return true; } } return false; }