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

2015/4/2

Please help!! I keep getting error messages

apoint93 apoint93

2015/4/2

#
apoint93 apoint93

2015/4/2

#
import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)

/**
 * Write a description of class HomeworkWorld here.
 * 
 * @author Aminee Cockfield 
 * @version 03/30/2015
 */
public class HomeworkWorld extends World
{
    /**
     * INSERT CODE BEOLW
     * Add two instance variables that are of type String[]
     *        one will be an array of images
     *        one will be an array of sounds
     *        DO NOT INCLUDE THE FILE SUFFIX - add that through code later
     *        
     *        Note - each image is 55x55
     */
    private String[] image = {"smiley1.p", "smiley2", "smiley3", "smiley4", "smiley5"};
    private String[] soundfile = {"hello", "happy", "crying", "ohno", "raspberry"};

    /**
     * Constructor for objects of class HomeworkWorld.
     * 
     */
    public HomeworkWorld()
    {   
        
        // Create a new world with 400x100 cells with a cell size of 1x1 pixels.
        super(400, 100, 1); 
        makeImages();    
    }
    
        /**
         * INSERT CODE BELOW
         * Write a "for" loop
         *      It should loop 5 times  (you can either hard code 5 or use code)
         *      It should use the method addObject( Actor object, int x, int y) to add new Emoticons to your world.
         *      Note:  concatinate the ".png" for images  and ".wav" for the sounds
         *      
         *      Determine the x value using a mathematical calculation
         *      The y value can be either hard coded or calculated
         *      
         */
        private void makeImages()
        {
            //make the Emoticon Images
            for(int i = 0; i<5; i++)
            {
                addObject(new Emoticon (image [i], soundfile [i]), 70*(i+1), 50);
            }
        }
}
apoint93 apoint93

2015/4/2

#
import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)

/**
 * Write a description of class Emoticon here.
 * 
 * @author  
 * @version 03/30/2015
 */
public class Emoticon extends Actor
{
    private String sound;
    private String image;    
    
    /**
     * INSERT CODE BELOW
     *   Write a construtor method
     *         The method should have two parameters
     *                type:  String     name:   newImage
     *                type:  String     name:   newSound
     *             
     *         The method should
     *               1.   set the instance variable  image   to the value passed by the corresponding parameter
     *               2.   set the instance variable  sound   to the value passed by the corresponding parameter
     *               
     *               3.   Use the method   setImage( java.lang.String filename ) to set the image.
     *               
     */
    
    public Emoticon (String newImage, String newSound)
    {
        image = newImage;
        sound = newSound;
        setImage(image);
    }

    /**
     * Act - do whatever the Emoticon wants to do. This method is called whenever
     * the 'Act' or 'Run' button gets pressed in the environment.
     */
    public void act() 
    {
        // When the mouse is click on this object, play the sound.
         if(Greenfoot.mouseClicked(this))
         {
             /**
              * INSERT CODE BELOW
              *     Use the method  Greenfoot.playSound( java.lang.String filename ) to play the sound
              *     
              */
             Greenfoot.playSound(sound + ".wav");
         }        
    }  
}
Super_Hippo Super_Hippo

2015/4/2

#
It would help if you would show the error message. You are using 'setImage' with the String which does not have the suffix (like '.png').
fejfo fejfo

2015/4/3

#
public Emoticon (String newImage, String newSound)
    {
        image = newImage;
        sound = newSound;
        setImage(image);
    }
 
    /**
     * Act - do whatever the Emoticon wants to do. This method is called whenever
     * the 'Act' or 'Run' button gets pressed in the environment.
     */
    public void act() 
    {
        // When the mouse is click on this object, play the sound.
         if(Greenfoot.mouseClicked(this))
         {
             /**
              * INSERT CODE BELOW
              *     Use the method  Greenfoot.playSound( java.lang.String filename ) to play the sound
              *     
              */
             Greenfoot.playSound(sound + ".wav");
         }        
    } 
for your "setImage(image)" you should use
setImage(new GreenfootImage(image));
and for Greenfoot.playSound(sound + ".wav"); you should use
new GreenfootSound(sound+".wav").play();
and your private String image = {"smiley1.p", "smiley2", "smiley3", "smiley4", "smiley5"}; should contain file extensions
Super_Hippo Super_Hippo

2015/4/3

#
If all images have the same file suffix, you can also use (for example):
setImage(new GreenfootImage(image+".png"));
You need to login to post a reply.