title: Serverside method throws error on method call, but not on client
body: <p>On my client I have the following code</p>
  
  <pre><code># If clicking on unit while target is set, activates action
    'click .actor': () -&gt;
      character = Meteor.user().character()
      target = Session.get('target')
      skill = Session.get('selectedSkill')
  
      if target and skill
        console.log character.battle()
        Meteor.call('useSkill', skill, character, target, (err) -&gt;
          if err then console.log err.reason
        )
  </code></pre>
  
  <p>Here, when I invoke the <code>character.battle()</code>, it correctly returns the battle document. But when I call the same method, on the same object, in the <code>useSkill()</code> method, it throws the following error</p>
  
  <pre><code>Exception while invoking method 'useSkill' TypeError: Object #&lt;Object&gt; has no method 'battle'
  </code></pre>
  
  <p>Serverside method</p>
  
  <pre><code>useSkill: (skill, actor, target) -&gt;
      cost = skill.cost
  
      console.log "battle: #{actor.battle()}"
      ....
  </code></pre>
  
  <p>and the association '<code>battle()</code>' method</p>
  
  <pre><code>@Characters = new Meteor.Collection('characters', 
      transform: (entry) -&gt;
  
          entry.battle = () -&gt;
              Battles.findOne({active: true, $or: [{characterOneId: this._id}, {characterTwoId: this._id}]})
  
          return entry
  )
  </code></pre>