hi i'm quite new at java , and i'm trying to program frogger.
Now i'm nearly done but i got a problem , when my frog hits the water he needs to be reset , but how can i do the checkup if he hits the water or a treelog? controleerBotsingMetBoomstam() is the method that i use to check if the frog collides with the log and i want it to check that it collides with the water aswell , i commented out my solution for it but it doesn work properly so anyone got an idea?

Tim

Java Code:
package javaproject;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import java.awt.Graphics.*;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.util.ArrayList;
import javax.swing.*;
import javax.swing.Timer;
import java.io.*;

public class Frogger extends JFrame {

    private JMenuBar menubalk;
    private JMenu bestand, f1;
    private JMenuItem start, stop, restart, sluiten, help;
    private Paneel paneel;
    private String hhhelp, titel;
    private StringBuffer hulp, hhelp;
    private BufferedReader lezer;
    private boolean gestart = true;

    public static void main(String[] args) {
        new Frogger();

    }

    public Frogger() {
        setTitle("Frogger Lite");
        setSize(600, 690);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        paneel = new Paneel();
        setContentPane(paneel);
        setVisible(true);
        setResizable(false);
        menubalk = new JMenuBar();
        bestand = new JMenu("Bestand");
        f1 = new JMenu("Info");
        restart = new JMenuItem("Restart");
        restart.addActionListener(new RestartHandler());
        help = new JMenuItem("Help");
        help.addActionListener(new HelpHandler());
        start = new JMenuItem("Start");
        start.addActionListener(new StartHandler());
        sluiten = new JMenuItem("Sluiten");
        sluiten.addActionListener(new SluitHandler());

        stop = new JMenuItem("Pauze");
        stop.addActionListener(new PauzeHandler());

        f1.add(help);
        menubalk.add(bestand);
        bestand.add(start);
        bestand.add(stop);
        bestand.add(restart);
        bestand.add(sluiten);

        menubalk.add(f1);

        setJMenuBar(menubalk);
    }

    class StartHandler implements ActionListener {

        public void actionPerformed(ActionEvent e) {
            paneel.startTimer();
            gestart = true;
        }
    }

    class PauzeHandler implements ActionListener {

        public void actionPerformed(ActionEvent e) {
            paneel.stopTimer();
            gestart = false;
        }
    }

    class RestartHandler implements ActionListener {

        public void actionPerformed(ActionEvent e) {
            paneel.resetLevens();
            paneel.resetKikker();
            paneel.resetTijd();
            paneel.startTimer();
            paneel.repaint();
            paneel.resetKlavers();
        }
    }

    class SluitHandler implements ActionListener {

        public void actionPerformed(ActionEvent e) {
            System.exit(0);
        }
    }

    class HelpHandler implements ActionListener {

        public void actionPerformed(ActionEvent e) {
            paneel.stopTimer();
            hulp = new StringBuffer();
            titel = "Help";
            try {
                lezer = new BufferedReader(new FileReader("Help.txt"));
                while ((hhhelp = lezer.readLine()) != null) {

                    hulp.append("  " + hhhelp);
                    hulp.append("\n");
                }
                lezer.close();

                JOptionPane.showMessageDialog(paneel, hulp.toString(), titel, JOptionPane.QUESTION_MESSAGE);
                if (JOptionPane.OK_OPTION == 0) {
                    if (gestart == true) {
                        paneel.startTimer();
                    }

                }
            } catch (FileNotFoundException d) {
                JOptionPane.showMessageDialog(paneel, "Kan het bestand niet vinden");
            } catch (IOException f) {
                JOptionPane.showMessageDialog(paneel, "Fout bij het lezen of sluiten van het bestand");
            }


        }
    }
}

class Paneel extends JPanel {

    private Timer tijdTimer;
    private int levens, klavers;
    private boolean bAuto = false;
    private boolean bBoomstam = false;
    private boolean bKlaver = false;
    private Kikker kikker = new Kikker();
    private Auto autosRij1[] = new Auto[4];
    private Auto autosRij2[] = new Auto[4];
    private Auto autosRij3[] = new Auto[4];
    private Auto autosRij4[] = new Auto[4];
    private Boomstam boomstammenRij1[] = new Boomstam[5];
    private Boomstam boomstammenRij2[] = new Boomstam[5];
    private Boomstam boomstammenRij3[] = new Boomstam[5];
    private Boomstam boomstammenRij4[] = new Boomstam[5];
    private KlaverBlad klaver[] = new KlaverBlad[4];
    private ImageIcon background = new ImageIcon("Bgground.png");
    private int autox1, autox2, autox3, autox4, boomstamx1, boomstamx2, boomstamx3, boomstamx4, tijd;
    private javax.swing.Timer automove;
    private ImageIcon win = new ImageIcon("win.jpg");
    private boolean pauze = false;

    public Paneel() {
        levens = 3;
        klavers = 4;
        addKeyListener(new ToetsenbordHandler());

        for (int i = 0; i < klaver.length; i++) {
            klaver[i] = new KlaverBlad((i * 3) * 50 + 50, 20);
        }
        for (int j = 0; j < autosRij1.length; j++) {
            autosRij1[j] = new Auto((j * 2 * 150) + autox1, 425);
            autosRij2[j] = new Auto((j * 2 * 150) + autox2, 375);
            autosRij3[j] = new Auto((j * 2 * 150) + autox3, 325);
            autosRij4[j] = new Auto((j * 2 * 150) + autox4, 275);
        }
        for (int j = 0; j < boomstammenRij1.length; j++) {
            boomstammenRij1[j] = new Boomstam((j * 2 * 150) + boomstamx1, 225);
            boomstammenRij2[j] = new Boomstam((j * 2 * 150) + boomstamx2, 175);
            boomstammenRij3[j] = new Boomstam((j * 2 * 150) + boomstamx3, 125);
            boomstammenRij4[j] = new Boomstam((j * 2 * 150) + boomstamx4, 75);
        }

        autox1 = 25;
        autox2 = 125;
        autox3 = 225;
        autox4 = 325;

        boomstamx1 = 50;
        boomstamx2 = 75;
        boomstamx3 = 225;
        boomstamx4 = 335;

        automove = new Timer(15, new TimerHandler());
        automove.start();
        tijdTimer = new Timer(1000, new TijdTimerHandler());
        tijdTimer.start();
    }

    public void controleerBotsingMetAuto() {
        for (int j = 0; j < autosRij1.length; j++) {
            if (autosRij1[j].getX() <= kikker.getX() + 30 && autosRij1[j].getX() + 70 >= kikker.getX() && autosRij1[j].getY() <= kikker.getY() && autosRij1[j].getY() + 44 >= kikker.getY() + 30) {
                bAuto = true;
                levens--;
                kikker.resetXy();

            }
            if (autosRij2[j].getX() <= kikker.getX() + 30 && autosRij2[j].getX() + 70 >= kikker.getX() && autosRij2[j].getY() <= kikker.getY() && autosRij2[j].getY() + 44 >= kikker.getY() + 30) {
                bAuto = true;
                levens--;
                kikker.resetXy();

            }
            if (autosRij3[j].getX() <= kikker.getX() + 30 && autosRij3[j].getX() + 70 >= kikker.getX() && autosRij3[j].getY() <= kikker.getY() && autosRij3[j].getY() + 44 >= kikker.getY() + 30) {
                bAuto = true;
                levens--;
                kikker.resetXy();

            }
            if (autosRij4[j].getX() <= kikker.getX() + 30 && autosRij4[j].getX() + 70 >= kikker.getX() && autosRij4[j].getY() <= kikker.getY() && autosRij4[j].getY() + 44 >= kikker.getY() + 30) {
                bAuto = true;
                levens--;
                kikker.resetXy();

            }
        }

    }

    public void stopTimer() {
        automove.stop();
        tijdTimer.stop();
        pauze = true;
    }

    public void resetLevens() {
        levens = 3;
    }

    public void resetKikker() {
        kikker.resetXy();

    }

    public void resetKlavers() {
        klavers = 4;
        for (int i = 0; i < klaver.length; i++) {
            klaver[i].setX((i * 3) * 50 + 50);
            klaver[i].setY(20);
        }
    }

    public void resetTijd() {
        tijd = 0;
    }

    public void startTimer() {
        automove.start();
        tijdTimer.start();
        pauze = false;
    }

    public void controleerBotsingMetBoomstam() {

        for (int j = 0; j < boomstammenRij1.length; j++) {

            if ((boomstammenRij1[j].getX() <= kikker.getX() && boomstammenRij1[j].getX() + 165 >= kikker.getX() + 30 && boomstammenRij1[j].getY() <= kikker.getY() && boomstammenRij1[j].getY() + 35 >= kikker.getY() + 30)) {
                kikker.addX(-1);
            }
            /*if (kikker.getX() + 30 < boomstammenRij1[j].getX() && boomstammenRij1[j].getY() <= kikker.getY() && boomstammenRij1[j].getY() + 35 >= kikker.getY() + 30 || kikker.getX() > boomstammenRij1[j].getX() + 165  && boomstammenRij1[j].getY() <= kikker.getY() && boomstammenRij1[j].getY() + 35 >= kikker.getY() + 30) {
                stopTimer();
            }*/

            if ((boomstammenRij2[j].getX() <= kikker.getX() + 30 && boomstammenRij2[j].getX() + 165 >= kikker.getX() + 30 && boomstammenRij2[j].getY() <= kikker.getY() && boomstammenRij2[j].getY() + 35 >= kikker.getY() + 30)) {
                kikker.addX(2);
            }
            if ((boomstammenRij3[j].getX() <= kikker.getX() && boomstammenRij3[j].getX() + 165 >= kikker.getX() + 30 && boomstammenRij3[j].getY() <= kikker.getY() && boomstammenRij3[j].getY() + 35 >= kikker.getY() + 30)) {
                kikker.addX(-1);
            }
            if ((boomstammenRij4[j].getX() <= kikker.getX() + 30 && boomstammenRij4[j].getX() + 165 >= kikker.getX() + 30 && boomstammenRij4[j].getY() <= kikker.getY() && boomstammenRij4[j].getY() + 35 >= kikker.getY() + 30)) {
                kikker.addX(2);
            }
            if (kikker.getX() < 0) {
                resetKikker();
                levens--;
            }
            if (kikker.getX() + 10 > 600) {
                resetKikker();
                levens--;
            }
        }
    }

    public void controleerBotsingMetKlaver() {
        for (int a = 0; a < autosRij1.length; a++) {
            if (klaver[a].getX() <= kikker.getX() + 30 && klaver[a].getX() + 50 >= kikker.getX() && klaver[a].getY() <= kikker.getY() && klaver[a].getY() + 48 >= kikker.getY() + 30) {
                bKlaver = true;
                kikker.resetXy();
                klavers--;
                startTimer();
                klaver[a].setX(1500);
                klaver[a].setY(1500);

            }
        }

    }

    public void paintComponent(Graphics g) {
        setFont(new Font("Verdana", Font.PLAIN, 12));
        super.paintComponent(g);
        g.setColor(Color.BLACK);
        g.fillRect(0, 600, 600, 50);
        g.setColor(Color.WHITE);
        if (levens > 0) {
            g.drawString("Levens : " + levens + "     Verstreken Tijd : " + tijd + " seconden" + "     huidig aantal klavers : " + klavers, 50, 625);
        }



        background.paintIcon(this, g, 0, 0);

        for (int i = 0; i < klaver.length; i++) {
            klaver[i].teken(g);
        }

        for (int i = 0; i < autosRij1.length; i++) {

            autosRij1[i].setX((i * 2 * 150) + autox1);
            autosRij1[i].teken(g);
        }
        for (int i = 0; i < autosRij2.length; i++) {

            autosRij2[i].setX((i * 2 * 150) + autox2);
            autosRij2[i].teken(g);
        }
        for (int i = 0; i < autosRij3.length; i++) {

            autosRij3[i].setX((i * 2 * 150) + autox3);
            autosRij3[i].teken(g);
        }
        for (int i = 0; i < autosRij4.length; i++) {

            autosRij4[i].setX((i * 2 * 150) + autox4);
            autosRij4[i].teken(g);
        }
        for (int i = 0; i < boomstammenRij1.length; i++) {

            boomstammenRij1[i].setX((i * 2 * 150) + boomstamx1);
            boomstammenRij1[i].teken(g);
        }
        for (int i = 0; i < boomstammenRij2.length; i++) {

            boomstammenRij2[i].setX((i * 2 * 150) + boomstamx2);
            boomstammenRij2[i].teken(g);
        }
        for (int i = 0; i < boomstammenRij3.length; i++) {

            boomstammenRij3[i].setX((i * 2 * 150) + boomstamx3);
            boomstammenRij3[i].teken(g);
        }

        for (int i = 0; i < boomstammenRij4.length; i++) {

            boomstammenRij4[i].setX((i * 2 * 150) + boomstamx4);
            boomstammenRij4[i].teken(g);
        }
        kikker.teken(g);
        this.requestFocusInWindow();
        if (levens == 0) {
            stopTimer();
            g.setColor(Color.red);
            setFont(new Font("Verdana", Font.BOLD, 60));
            g.drawString("GAME OVER", 100, 300);
        }

        if (klavers == 0) {
            stopTimer();
            g.setColor(Color.red);
            win.paintIcon(this, g, 25, 150);
        }

    }

    class ToetsenbordHandler extends KeyAdapter {

        public void keyPressed(KeyEvent ke) {
            if (levens > 0 && pauze == false) {


                switch (ke.getKeyCode()) {
                    case KeyEvent.VK_UP:
                        if (kikker.getY() <= 50) {
                            kikker.setY(50);
                        }

                        kikker.addY(-50);


                        break;
                    case KeyEvent.VK_DOWN:
                        if (kikker.getY() > 500) {
                            kikker.setY(520);
                        }

                        kikker.addY(50);


                        break;
                    case KeyEvent.VK_LEFT:
                        if (kikker.getX() < 0) {
                            kikker.setX(0);
                        }
                        if (kikker.getX() >= 50) {
                            kikker.addX(-50);
                        }


                        break;
                    case KeyEvent.VK_RIGHT:
                        if (kikker.getX() > 565) {
                            kikker.setX(600);
                        }
                        if (kikker.getX() <= 515) {
                            kikker.addX(50);
                        }

                        break;

                }
                repaint();
            }
        }
    }

    class TimerHandler implements ActionListener {

        public void actionPerformed(ActionEvent e) {
            controleerBotsingMetAuto();
            controleerBotsingMetKlaver();
            controleerBotsingMetBoomstam();

            if (bAuto == true) {
                bAuto = false;
            }
            if (bKlaver == true) {
                bKlaver = false;
            }

            autox1--;
            if (autox1 < -1000) {
                autox1 = 600;
            }
            autox2 = autox2 - 2;
            if (autox2 < -1000) {
                autox2 = 600;
            }
            autox4 = autox4 - 2;
            if (autox4 < -1000) {
                autox4 = 600;
            }
            autox3--;
            if (autox3 < -1000) {
                autox3 = 600;
            }


            boomstamx2 += 2;
            if (boomstamx2 > 600) {
                boomstamx2 = -1400;
            }
            boomstamx1--;
            if (boomstamx1 < -1400) {
                boomstamx1 = 600;
            }
            boomstamx3--;
            if (boomstamx3 < -1400) {
                boomstamx3 = 600;
            }
            boomstamx4 += 2;
            if (boomstamx4 > 600) {
                boomstamx4 = -1400;
            }

            repaint();


        }
    }

    class TijdTimerHandler implements ActionListener {

        public void actionPerformed(ActionEvent e) {
            tijd++;

        }
    }
}

class SpelObject {

    protected int x;
    protected int y;
    protected Timer bewegingstimer;

    public int getY() {
        return y;
    }

    public int getX() {
        return x;
    }

    public void setX(int x) {
        this.x = x;
    }

    public void setY(int y) {
        this.y = y;
    }

    public void teken(Graphics g) {
    }
}

class Auto extends SpelObject {

    private int random;
    private ImageIcon Auto1 = new ImageIcon("auto1.png");
    private ImageIcon Auto2 = new ImageIcon("auto2.png");
    private ImageIcon Auto3 = new ImageIcon("auto3.png");
    private ImageIcon Auto4 = new ImageIcon("auto4.png");

    public Auto(int x, int y) {

        this.x = x;
        this.y = y;
        randomize();
    }

    public void randomize() {
        random = (int) ((4 * Math.random()) + 1);
    }

    public void teken(Graphics g) {
        switch (random) {
            case 1:
                Auto1.paintIcon(null, g, x, y);
                break;
            case 2:
                Auto2.paintIcon(null, g, x, y);
                break;
            case 3:
                Auto3.paintIcon(null, g, x, y);
                break;
            case 4:
                Auto4.paintIcon(null, g, x, y);
                break;
            default:
                Auto1.paintIcon(null, g, x, y);
                break;
        }


    }
}

class Boomstam extends SpelObject {

    private ImageIcon boomstam = new ImageIcon("boomstam.png");

    public Boomstam(int x, int y) {
        this.x = x;
        this.y = y;

    }

    public void teken(Graphics g) {
        boomstam.paintIcon(null, g, x, y);
    }
}

class Kikker {

    private int x = 50;
    private int y = 475;
    private ImageIcon kikker = new ImageIcon("kikker.png");

    public Kikker() {
    }

    public int getY() {
        return y;
    }

    public int getX() {
        return x;
    }

    public void resetXy() {
        x = 50;
        y = 475;
    }

    public void setX(int x) {
        this.x = x;
    }

    public void addX(int x) {
        this.x = this.x + x;
    }

    public void addY(int y) {
        this.y = this.y + y;
    }

    public void setY(int y) {
        this.y = y;
    }

    public void teken(Graphics g) {
        kikker.paintIcon(null, g, x, y);
    }
}

class KlaverBlad {

    private int x;
    private int y;
    private ImageIcon klaver = new ImageIcon("Klaver.png");

    public KlaverBlad(int x, int y) {
        this.x = x;
        this.y = y;
    }

    public int getY() {
        return y;
    }

    public int getX() {
        return x;
    }

    public void setX(int x) {
        this.x = x;
    }

    public void setY(int y) {
        this.y = y;
    }

    public void teken(Graphics g) {
        klaver.paintIcon(null, g, x, y);
    }
}