@Override
    public void actionPerformed(ActionEvent ae) {
        virhekasky.setText("");
        if (komennot.containsKey(ae.getSource())){
             Kortti kortti=komennot.get(ae.getSource());
            if (pelaaja.getOhjelma().size()==5) {
                virhekasky.setText("Et voi lisätä ohjelmaasi useampaa korttia!");
            } else  if (pelaaja.getKasi().get(kortti)>0) {
                pelaaja.getOhjelma().addLast(kortti);
                pelaaja.getKasi().put(kortti, pelaaja.getKasi().get(kortti)-1);
            } else {
                virhekasky.setText("Kyseistä korttia ei ole kädessäsi!");
            }
        } else if (ae.getSource()==poista){
            if (pelaaja.getOhjelma().size()>0) {
                if (!pelaaja.poistaKortti()) {
                    virhekasky.setText("Korttia ei voitu poistaa, koska se on lukkiutunut!");
                } 
            } else {
                virhekasky.setText("Ohjelmassasi ei ollut yhtään korttia!");
            }
        } else if (ae.getSource()==shutdown){
            pelaaja.setShutdown();
        } else if (ae.getSource()==ok){
            if (pelaaja.getOhjelma().size()==5) {
                komentorivi.setText("");
                kasi.setText("");
                pelaaja.kasiTyhjaksi();
                virhekasky.setText("Robotit liikkuvat");
                monitori.avaa();
            } else {
                virhekasky.setText("Ohjelmasi ei ole valmis. Ei voida jatkaa");
            }
        }
        paivitaKasi();
        paivitaOhjelma();
    }