title: Pass parameters with UnityAction
body: <p>Trying to send an UnityAction as a parameter for one of my methods, like so:</p>
  
  <pre><code>public void PopulateConversationList(string [] fullConversation, string onLastPagePrompt, string npcName, int stage, UnityAction action)
  {
      conversations.Add(new Conversation(fullConversation, onLastPagePrompt, npcName, stage, action));
  }
  
  dialogHolder.PopulateConversationList(stage1, "Okay", _name, 1, QuestManager.Instance().ActivateQuest);
  </code></pre>
  
  <p>this works fine, but now I want to pass the following Action as a parameter:</p>
  
  <pre><code>public void ActivateQuest(int questId)
  {
      Debug.Log("This is the id: " + questId);
  }
  </code></pre>
  
  <p>However, it will not work when I use an action that has a parameter:</p>
  
  <pre><code>dialogHolder.PopulateConversationList(stage1, "Okay", _name, 1, QuestManager.Instance().ActivateQuest(2));
  </code></pre>
  
  <p>The above gives error: <code>Cannot convert from void to UnityAction</code>. 
  How can I pass a UnityAction with a parameter, as a parameter?</p>
  
  <p>I call the <code>Action</code> in the conversation like this:</p>
  
  <pre><code>dialog.OnAccept(ConvList[i].onLastPagePrompt, () =&gt;
  {
      ConvList[i].action();
      dialog.Hide();
  });
  </code></pre>
  
  <p>EDIT: The solution I ended up going with:</p>
  
  <pre><code>enter dialogHolder.PopulateConversationList(stage1, "Okay", _name, 1, () =&gt;
      {
          QuestManager.Instance().ActivateQuest(0);
      });
  </code></pre>
  
  <p>This way I can call several methods as well.</p>