I have been working on this for three days and can't figure out what I'm doing wrong. Any advice is much appreciated!
Homework World Code
Emoticon Code
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
* Write a description of class HomeworkWorld here.
*
* @author (Your name)
* @version (a version number or a date)
*/
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", "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);
}
/**
* 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<6; i++)
{
Emoticon emoticon = new Emoticon();
addObject(emoticon, 10*(i+60), 50);
}
}
}
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
* Write a description of class Emoticon here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Emoticon extends Actor
{
/**
*INSERT CODE BELOW
* Create two instance varaibles of type String
* one named sound
* one named image
*/
private void emoticon(String image[i], String soundFile[i])
/**
* 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 image, String soundFile)
{
setImage(image + ".png");
sound = soundFile;
} /**
* 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");
}
}
}

