public GuessingScreen(final CLayout layout, final JPanel panelContainer) {
        addMouseListener(this);
        this.setLayout(null);
        this.layout = layout;
        this.cl = layout.cl;
        this.panelContainer = panelContainer;
        // Path to the background image
        background =  Toolkit.getDefaultToolkit().createImage(layout.getDirectory("menu") + "guessing_background.png");

        String guessDir = layout.getDirectory("guess");
        String scanDir = layout.getDirectory("scans");
        NUM_SCANS_AND_OBJ = new File(guessDir).listFiles().length;
        // Set up all of the game objects
        pastLeftScans = new int[NUM_SCANS_AND_OBJ];
        guessOptions = new GuessObjects[NUM_GUESSES - 1];
        indeces = new int[NUM_GUESSES - 1];
        guessIndeces = new int[NUM_GUESSES - 1];
        allGuesses = new GuessObjects[NUM_SCANS_AND_OBJ];
        allScans = new ScanObjects[NUM_SCANS_AND_OBJ];
        objectNames = new String[NUM_SCANS_AND_OBJ];

        // Guess objects
        File guessDirectory = new File(guessDir);
        for( int f = 0; f < guessDirectory.listFiles().length; f++ ) {
            String gName = guessDirectory.listFiles()[f].toString();
            allGuesses[f] = new GuessObjects(gName, f);
        }
        
        // Scan objects
        File scanDirectory = new File(scanDir);
        for( int f = 0; f < scanDirectory.listFiles().length; f++ ) {
            String sName = scanDirectory.listFiles()[f].toString();
            allScans[f] = new ScanObjects(sName, f);
        }

        randomizeObjects();

        // Setup Timer
        //new InactivityListener( layout, panelContainer );
        Action reset = new AbstractAction()
        {
            public void actionPerformed(ActionEvent e)
            {
                cl.show(panelContainer, "1");
            }
        };
        new InactivityListener(this.layout, reset, 1).start();
    }