GreenfootStars, were you in the classroom when mary made bricks transparent? If so just do the same here....


private void activatePlatform() { for (Object obj : getWorld().getObjects(GreenTrans.class)) { getWorld().addObject(new GreenPlatform(), obj.getX(), obj.getY()); getWorld().removeObject(obj); } getWorld().removeObject(this); }
private void activatePlatform() { for (Object obj : getWorld().getObjects(GreenTrans.class)) { getWorld().addObject(new GreenPlatform(), obj.getX(), obj.getY()); getWorld().removeObject(obj); } getWorld().removeObject(this); }
GreenTrans gt = (GreenTrans) obj; //Change all 'obj' in lines 5 and 6 to 'gt'
GreenTrans gt = (GreenTrans) obj; //Change all 'obj' in lines 5 and 6 to 'gt'
java.lang.NullPointerException at GreenTrans.activatePlatform(GreenTrans.java:28) at GreenTrans.act(GreenTrans.java:16) at greenfoot.core.Simulation.actActor(Simulation.java:583) at greenfoot.core.Simulation.runOneLoop(Simulation.java:541) at greenfoot.core.Simulation.runContent(Simulation.java:215) at greenfoot.core.Simulation.run(Simulation.java:205)
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) import java.util.List; /** * Write a description of class GreenTrans here. * * @author (your name) * @version (a version number or a date) */ public class GreenTrans extends TransparentPlatform { public void act() { if(((Girl)getWorld().getObjects(Girl.class).get(0)).isTouchingGreenBlob()) { activatePlatform(); } } /** * If Girl is touching a green blob, replace all green transparent blocks with green platforms. */ private void activatePlatform() { for (Object obj : getWorld().getObjects(GreenTrans.class)) { GreenTrans gt = (GreenTrans) obj; getWorld().addObject(new GreenPlatform(), gt.getX(), gt.getY()); getWorld().removeObject(gt); } getWorld().removeObject(this); } }
getWorld().addObject(new GreenPlatform(), getX(), getY()); getWorld().removeObject(this);
public class Platform extends Actor { private String _color; // color of Platform private boolean isTransparent; /** * Constructs a Platform. */ public Platform(String color, boolean isTransparent) { _color = color; setImage(new GreenfootImage("platform_" + color + ".png")); if(isTransparent == true) { getImage().setTransparency(100); } } }
import greenfoot.*; public class Platform extends Actor { private String _color; public Platform(String color) { _color = color; setImage(new GreenfootImage("platform_"+color+".png")); } public String getColor() { return _color; } }
public class Level extends World { public Level() { super(800, 600, 1); populateWorld(); } private void populateWorld() { //Create the ground for(int i = 0; i < 16; i ++) { addObject(new Platform("red", false), 25 + i * 50, 575); } //Add a Girl that can move around in the world addObject(new Girl(), 630, 400); //Add some platforms that can be jumped onto addObject(new Platform("green", true), 150, 475); addObject(new Platform("green", true), 200, 475); addObject(new Platform("blue", true), 350, 375); addObject(new Platform("blue", true), 400, 375); addObject(new Activator("blue"), 700, 525); // blue blob addObject(new Activator("green"), 150, 425); // green blob addObject(new Door(), 25, 525); setPaintOrder(Girl.class); } }