private void giveItem(Command command){
        NPC npc = null;
        
        for(NPC n : npcs.values()){
            if(n.getCurrentRoom().equals(currentRoom)){
                npc = n;
            }
        }
        
        if(npc == null){
            System.out.println("Give to whom?");
        } else if (!command.hasNthWord(2)){
            System.out.println("Give what?");
        } else {
            String itemName = command.getNthSegment(1);
            if(bag.contains(itemName)){
                if(npc.getItemNeeded().equals(itemName)){
                    System.out.println(npc.getName() + " says:");
                    System.out.println("\"I'm going to leave this on the floor...\"");
                    dropItemOnFloor(npc.swapItems(bag.removeItem(itemName)));
                    System.out.println();
                    npc.speak();
                } else {
                    System.out.println(npc.getName() + " says:");
                    System.out.println("I don't want that...");
                }
            } else {
                System.out.println("You don't have " + Phraser.addDeterminer(itemName));
            }
        }
    }