Hey everyone, I'm vinheim and I'm new to Java. Something about this code seems to baffle me. I can't find exactly why the program isn't showing the .gif file or playing the .wav file. The package is called exepartone:

Code:
package exepartone;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class assignment extends JApplet implements Runnable, ActionListener
{
    int xPos, yPos;
    JButton startStop;
    Thread runner;
    boolean isRunning = true;
    ImageIcon birdIcon;
    private AudioClip sound1;
    JButton playSound, loopSound, stopSound;
    public JComboBox chooseOption;
    int val = 0;
    public void init()
    {
        Dimension size = getContentPane().getSize();
        Container contentPane = new AnimationPane();
        setContentPane(contentPane);
        contentPane.setBackground(Color.white);
        contentPane.setSize(size);
 xPos = contentPane.getSize().width/2;
 yPos = contentPane.getSize().height/2;
 startStop = new JButton("Stop");
 contentPane.add(startStop);
 startStop.addActionListener(this);
 Container c = getContentPane();
 c.setLayout(new FlowLayout());
        String choices[] = {"Bird", "Leak"};
        chooseOption = new JComboBox(choices);
        chooseOption.addItemListener(new ItemListener()
        {
            public void itemStateChanged(ItemEvent e)
            {
                val = chooseOption.getSelectedIndex() == 0 ? 0 : 1;
         sound1.stop();
            }
        });
        c.add(chooseOption);
 ButtonHandler handler = new ButtonHandler();
 playSound = new JButton("Play");
 playSound.addActionListener(handler);
 c.add(playSound);
 loopSound = new JButton("Loop");
 loopSound.addActionListener(handler);
 c.add(loopSound);
 stopSound = new JButton("Stop");
 stopSound.addActionListener(handler);
 c.add(stopSound);
        sound1 = getAudioClip(getDocumentBase(), "leak.wav");
        birdIcon = new ImageIcon(getImage(getCodeBase(), "bird.gif"));
    }
    public void start()
    {
        if (runner == null)
        {
            runner = new Thread(this);
            runner.start();
        }
    }
    public void stop()
    {
        runner = null;
    }
    public void run()
    {
        while (isRunning)
        {
            try
            {
                Thread.sleep(10);
            }
            catch (InterruptedException e) { }
     xPos += changeBy();
     yPos += changeBy();
     repaint();
        }
    }
    int changeBy()
    {
        double myVal;
        if (java.lang.Math.random() < .5)
        {
            myVal = java.lang.Math.random() * -10;
        }
        else
        {
            myVal = java.lang.Math.random() * 10;
        }
        return (int) myVal;
    }
    public void actionPerformed(ActionEvent e)
    {
        if (isRunning)
        {
            isRunning = false;
            startStop.setText("Start");
            stop();
        }
        else
        {
            isRunning = true;
            startStop.setText("Stop");
            start();
        }
    }
    class AnimationPane extends JPanel
    {
        public void paintComponent(Graphics g)
        {
            super.paintComponent(g);
            if (val == 0)
                birdIcon.paintIcon(this, g, xPos, yPos);
        }
    }
    private class ButtonHandler implements ActionListener
    {
        public void actionPerformed(ActionEvent e)
 {
            if (val == 1)
            {
                if (e.getSource() == playSound)
                    sound1.play();
  else if (e.getSource() == loopSound)
                    sound1.loop();
  else if (e.getSource() == stopSound)
                    sound1.stop();
            }
 }
    }
}