code: def trigger_actions(self, source, actions):
  		
  		ret = []
  		for action in actions:
  			if isinstance(action, EventListener):
  				# Queuing an EventListener registers it as a one-time event
  				# This allows registering events from eg. play actions
  				self.log("Registering event listener %r on %r", action, self)
  				action.once = True
  				# FIXME: Figure out a cleaner way to get the event listener target
  				if source.type == CardType.SPELL:
  					listener = source.controller
  				else:
  					listener = source
  				listener._events.append(action)
  			else:
  				ret.append(action.trigger(source))
  		return ret
docs: Performs a list of `actions` from `source`.
  		This should seldom be called directly - use `queue_actions` instead.