lib/metro/scene.rb
def _prepare_transition(new_scene)
      log.debug "Preparing to transition from scene #{self} to #{new_scene}"

      new_scene.class.actors.find_all {|actor_factory| actor_factory.load_from_previous_scene? }.each do |actor_factory|
        new_actor = new_scene.actor(actor_factory.name)
        current_actor = actor(actor_factory.name)
        new_actor._load current_actor._save
      end

      prepare_transition_to(new_scene)
      new_scene.prepare_transition_from(self)
    end
def _prepare_transition(new_scene)
      log.debug "Preparing to transition from scene #{self} to #{new_scene}"

      new_scene.class.actors.find_all {|actor_factory| actor_factory.load_from_previous_scene? }.each do |actor_factory|
        new_actor = new_scene.actor(actor_factory.name)
        current_actor = actor(actor_factory.name)
        new_actor._load current_actor._save
      end

      prepare_transition_to(new_scene)
      new_scene.prepare_transition_from(self)
    end
Before a scene is transitioned away from to a new scene, this private method is
 here to allow for any housekeeping or other work that needs to be done before
 calling the subclasses implementation of `prepare_transition`.

 @param [Scene] new_scene this is the instance of the scene that is about to replace
   the current scene.