private void goRoom(Command command) {
        if (!command.hasSecondWord()) {
            // if there is no second word, we don't know where to go...
            System.out.println("Go where?");
            return;
        }
        
        String direction = command.getSecondWord();
        if (direction.equals("back")) {
            player.subtractLocationHistory();
            printLocationInfo();
            lookForNPCMessage();
            return;
        }
        
        // Special cases.
        
        if (player.getLocation().getName().equals("antechamber") && direction.equals("west")) {
            System.out.println("Carefully sneaking into the living room, you hear something running violently towards you from behind. You don't have enough time to turn your head around before you feel a heavy blow to the back of your head and everything goes black!");
            player.clearLocationHistory();
            player.clearInventory();
            System.out.println("You wake up freezing on the wet stone floor of an ancient prison cell, your head resting in a small pool of blood. For some reason whoever guards this place left the door open. Perhaps the note lying next to you might reveal something.\n");
            player.addLocationHistory(rooms.get("cell1"));
            printLocationInfo();
            return;
        }
        if (player.getLocation().getName().equals("hallwayB1") && direction.equals("north")) {
            System.out.println("\n\nThere's nothing but a black void on the other side of the door. You doubt the idea but since you have no other choice, you walk right out. It seems there is no gravity, neither any oxygen and you start to choke. But at the same time everything fades and soon you can't even feel your body.");
            System.out.println("\nYou wake up sleeping on the grass of a green meadow in a forest. The sky is clear and the sun shines strongly into your eyes. Looking to your left, Hrangst lies dead, pale as snow. It seems Zuul kept his word.");
            System.out.println("\n\nCongratulations upon beating 'Zuul's Dungeon'!\n");
            quit(new Command("quit", null));
        }
        
        // Regular operation.
        
        // Try to leave current room through chosen exit.
        Exit chosenExit = player.getLocation().getExit(direction);
        if (chosenExit == null) {
            System.out.println("There's no room in that direction.\n");
            return;
        }
        Room nextRoom = chosenExit.getNeighbour();
        if (!chosenExit.getUnlocked()) {
            System.out.println("The door is locked.\n");
            return;
        }
        player.addLocationHistory(nextRoom);
        printLocationInfo();
        lookForNPCMessage();
    }