void OnLevelWasLoaded()
    {
        SceneTriggerScript trigger = GameObject.FindGameObjectWithTag(destinationTag).GetComponent <SceneTriggerScript>() as SceneTriggerScript;

        UpdateFacing(trigger.Forward);
        transform.position = trigger.transform.position + new Vector3(trigger.Forward.x, trigger.Forward.y, 0.0f) * rigidbody2D.renderer.bounds.size.y;
    }
    void OnTriggerEnter2D(Collider2D collider)
    {
        if (collider.tag.Contains("SceneTrigger"))
        {
            BoxCollider2D boxCollider = collider.gameObject.GetComponent <BoxCollider2D>();

            SceneTriggerScript exitTrigger = (SceneTriggerScript)boxCollider.gameObject.GetComponent <SceneTriggerScript>();
            lastSceneTriggerTag = exitTrigger.gameObject.tag;
            destinationTag      = exitTrigger.DestinationTag == null ? lastSceneTriggerTag : exitTrigger.DestinationTag;

            DontDestroyOnLoad(gameObject);
            Application.LoadLevel(exitTrigger.getScene());
        }
    }