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;
        }
        
        Direction direction = null;
        try {
            direction = Direction.valueOf(command.getSecondWord().toUpperCase());
        } catch(IllegalArgumentException e) {
            System.out.println("Invalid direction!");
            return;
        }

        boolean success = player.move(direction);
        if (success && player.getRoom() != rooms.get("win_room")) {
            System.out.println(player.look());
        } else if (player.getRoom() == rooms.get("win_room")){
            System.out.println("You are " +
                               player.getRoom().getShortDescription() + ".");
        } else {
            System.out.println("There is no door!");
        }

        ArrayList<NPC> inRoom = npcsInRoom(player.getRoom());
        if (inRoom.size() > 0) {
            hideOrFight(inRoom);
        }
    }