Un errore grave c'e':
codice:
class Pan1 extends JPanel{
  String label1="Vis. nella stanza";
  JLabel lab1;
  JPanel pan1;

  public Pan1(){
    lab1=new JLabel(label1);
    pan1=new JPanel();
    pan1.add(lab1);
  }
}
Nella parte evidenziata in rosso tu costruisci un nuovo oggetto JPanel, e aggiungi a quello la JLabel per visualizzare il testo. Non lo devi fare, perche' non hai nessun riferimento a quell'oggetto nel programma principale.
Infatti nel main tu istanzi un nuovo oggetto Pan1, ed e' quello che inserisci nel JFrame, quando in realta' la JLabel che vuoi visualizzare l'hai inserita nel JPanel all'interno di Pan1 (e quindi inaccessibile).

Prova con:
codice:
class Pan1 extends JPanel{
  String label1="Vis. nella stanza";
  JLabel lab1;

  public Pan1(){
    lab1=new JLabel(label1);
    add(lab1);
  }
}
Credo che fosse questo cio' che volevi ottenere.