title: UnityEvent is returning Object as parameters instead of GameObject
body: <p>I have a component attached to a Gameobject that contains an event with a Gameobject as parameter:</p>
  
  <pre><code>[System.Serializable]
  public class ReleasedOnDifferent : UnityEvent&lt;GameObject&gt;
  {
  }
  releasedOnDifferent.Invoke(this.gameObject);
  </code></pre>
  
  <p>the event is linked to a simple function as follow:</p>
  
  <pre><code> public void releasedOnDifferent(GameObject gameObject)
   {
   }
  </code></pre>
  
  <p><img src="https://i.stack.imgur.com/ZVHh9.png" alt="from ispector"></p>
  
  <p>but when the event is invoked this happens:</p>
  
  <blockquote>
    <p>ArgumentException: Object of type 'UnityEngine.Object' cannot be converted to type 'UnityEngine.GameObject'.</p>
  </blockquote>
  
  <p>it seems that when <code>Invoke(this.gameObject)</code> is called a Object type is passed instead of Gameobject</p>
  
  <p>Am I missing something?</p>