Op https://moodle.informatica-actief.nl/mo ... p?id=25993 bij opdracht 3.3 moet de kat een turnright doen. Dat lukt me even niet. Hoe programmeer je dat?
turnRight(); m werkt niet
Hoe laat je de kat rechtsom bewegen?
-
- Site Admin
- Berichten: 36
- Lid geworden op: 01-02-2017 10:09
-
- Site Admin
- Berichten: 36
- Lid geworden op: 01-02-2017 10:09
Kat naar rechts met turnRight()
UPDATE Dat turnRight niet werkt komt omdat dit in de klasse ANIMAL niet gedefinieerd is. Open de klasse animal maar eens en je ziet onderaan de code voor turnLeft.
Je ziet dat gewerkt wordt met windstreken.
Kopieer de hele void van turnLeft en dan daaronder plakken. Dan verander je de 4 windstreken als volgt:
Na compilen zul je zien dat de turnRight het nu wel doet.
JOR
Je ziet dat gewerkt wordt met windstreken.
Kopieer de hele void van turnLeft en dan daaronder plakken. Dan verander je de 4 windstreken als volgt:
Code: Selecteer alles
public void turnRight()
{
switch(this.getRotation()) {
case SOUTH :
setRotation(WEST);
break;
case EAST :
setRotation(SOUTH);
break;
case NORTH :
setRotation(EAST);
break;
case WEST :
setRotation(NORTH);
break;
default :
break;
}
}
JOR
-
- Berichten: 2
- Lid geworden op: 09-02-2017 15:41
Kortere versie
Op de puntjes zet je turn(90). Als je dan op het pijltje rechts klikt is het de bedoeling dat de kat rechtsom gaat. turnRight(); kent het systeem niet daarom kan je dat niet invullen op de puntjes
public void act()
{
if (canSeeMouse()) {
eatMouse();
}
else {
if (canMove()) {
move();
}
else {
turnLeft();
}
{
if (Greenfoot.isKeyDown("left")) {
turnLeft();
}
if (Greenfoot.isKeyDown("right")) {
turn(90);
}
}
}
}
public void act()
{
if (canSeeMouse()) {
eatMouse();
}
else {
if (canMove()) {
move();
}
else {
turnLeft();
}
{
if (Greenfoot.isKeyDown("left")) {
turnLeft();
}
if (Greenfoot.isKeyDown("right")) {
turn(90);
}
}
}
}