This site requires JavaScript, please enable it in your browser!
Greenfoot back
Cool
Cool wrote ...

2020/2/21

why doesn't this work...

Cool Cool

2020/2/21

#
I want to remove every Object from the class "Falsch" in line 44 and 45 but it doesn't work and I tried everything I know but it doesn't work!!!
import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.util.List;
import javax.swing.JOptionPane;
import java.lang.Class;
/**
 * Write a description of class Biomüll here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class Biomüll extends x
{
    private Falsch falsch = new Falsch();
    private Richtig richtig = new Richtig();
    private Muelltrennung muelltrennung = new Muelltrennung();
    private boolean k = false;

    public Biomüll()
    {
        moveReset();
    }

    public void korrektur()
    {
        xz=640/d;
        yz=440/d;
        x=getX();
        y=getY();
        while(!k)
        {
            if(x != xz && y != yz)
            {
                turnTowards(xz,yz);
                move(1);
                x=getX();
                y=getY();
            }
            else
            {
                k = true;
                rst();
            }
        }
        List objects = getObjects(Falsch.class);
        removeObjects(objects);
    }

    public void rstr()
    {
        for(int i = 0; i < 100; i++)
        {
            move(1);
        }
        getWorld().removeObjects(getWorld().getObjects(Richtig.class));
        ((Muelltrennung)getWorld()).prepare();
        moveReset();
        getWorld().removeObject(this);
    }

    public void rst()
    {
        ((Muelltrennung)getWorld()).prepare();
        moveReset();
        getWorld().removeObject(this);
    }

    public void addedToWorld(World Muelltrennung)
    {
        int random = Greenfoot.getRandomNumber(3);
        if(random == 0)
        {
            setImage("images/Fisch.png");
        }
        else if(random == 1)
        {
            setImage("images/Melone.png");
        }
        else if(random == 2)
        {
            setImage("images/Bananenschale.jpg");
        }
    }

    public void act() 
    {
        if(move1)
        {
            if(move3)
            {
                if(move6)
                {
                    ((Muelltrennung)getWorld()).richtig();
                    points += right;
                    rstr();
                }
                else
                {
                    if(up() && !move6)
                    {
                        move6();
                    }
                    else if(down())
                    {
                        ((Muelltrennung)getWorld()).falsch();
                        points += wrong;
                        korrektur();
                    }
                }
            }
            else
            {
                if(down() && !move3)
                {
                    move3();
                    if(move3)
                    {
                        down = false;
                    }
                }
                else if(up())
                {
                    ((Muelltrennung)getWorld()).falsch();
                    points += wrong;
                    korrektur();
                }
            }
        }
        else
        {
            move1();
        }
    }
}
Nosson1459 Nosson1459

2020/2/21

#
try exchanging line 44 for this
List objects = (Falsch)getObjects(Falsch.class);
Cool Cool

2020/2/21

#
Nosson1459 wrote...
try exchanging line 44 for this
List objects = (Falsch)getObjects(Falsch.class);
image ...
danpost danpost

2020/2/22

#
Try using the Actor instance method getWorld on World instance methods like getObjects and removeObjects. Like:
getWorld().removeObjects(getWorld().getObjects(Falsch.class));
You need to login to post a reply.