Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
  • Help Room /
avatar image
0
Question by starrtennis · Jan 13, 2019 at 10:43 PM · 2dsceneslevelsintro

Cannot access LevelChanger to change level from the pan/delay coroutine in CameraPanForIntro

 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 
 public class CameraPanForIntro : MonoBehaviour {
 
     public Transform cameraPos;
     public float panSpeed;
     LevelChanger lc;
 
     // Use this for initialization
     void Start () {
         lc = GetComponent<LevelChanger>();
         StartCoroutine (waitForPan (lc));
     }
     
     // Update is called once per frame
     void Update () {
         cameraPos.position = new Vector3 (cameraPos.position.x, cameraPos.position.y - panSpeed*Time.fixedDeltaTime, cameraPos.position.z);
 
     }
 
     IEnumerator waitForPan(LevelChanger lc){
         yield return new WaitForSeconds (10);
         Debug.Log ("Done waiting");
         //LevelChanger.fadeToLevel (3); //does not work; object reference is required to access non-static members levelToLoad and animator
         lc.fadeToLevel(3);
     }
 }


 using UnityEngine.SceneManagement;
 using UnityEngine;
 
 public class LevelChanger : MonoBehaviour {
 
     public Animator animator;
     private int levelToLoad;
 
     public void fadeToLevel (int levelIndex){
         levelToLoad = levelIndex;
         animator.SetTrigger("FadeOut");
     }
     
     // Update is called once per frame
     void Update () {
         /*if (Input.GetMouseButtonDown (0)) {
             FadeToLevel (3);
         }*/
     }
 
     public void onFadeComplete(){
         SceneManager.LoadScene (levelToLoad);
     }
 }



I am trying, with the two classes above, to pan a camera for ten seconds on an image in my game, then change the scene (level) with a fade. The fade and levelchange methods work (I tested them with a mouseclick trigger), but I can't seem to access them correctly from the class which is in charge of the camera pan and delay during the camera pan.

 NullReferenceException: Object reference not set to an instance of an object
 CameraPanForIntro+<waitForPan>c__Iterator0.MoveNext () (at Assets/Scripts/CameraPanForIntro.cs:27)
 UnityEngine.SetupCoroutine.InvokeMoveNext (IEnumerator enumerator, IntPtr returnValueAddress) (at C:/buildslave/unity/build/Runtime/Export/Coroutines.cs:17)

Thanks.

alt text


UPDATE:

I solved the problem by moving the delay coroutine to the LevelChanger itself.

 using UnityEngine.SceneManagement;
 using UnityEngine;
 using System.Collections;
 
 public class LevelChanger : MonoBehaviour {
 
     public Animator animator;
     private int levelToLoad;
 
     public void Start(){
         StartCoroutine(waitForPan ());
     }
 
     public void fadeToLevel (int levelIndex){
         levelToLoad = levelIndex;
         animator.SetTrigger("FadeOut");
     }
     
     // Update is called once per frame
     void Update () {
         /*if (Input.GetMouseButtonDown (0)) {
             FadeToLevel (3);
         }*/
     }
 
     public void onFadeComplete(){
         SceneManager.LoadScene (levelToLoad);
     }
 
     private IEnumerator waitForPan(){
         yield return new WaitForSeconds (10);
         Debug.Log ("Done waiting in LevelChanger.cs");
         //LevelChanger.fadeToLevel (3); //does not work; object reference is required to access non-static members levelToLoad and animator
         fadeToLevel(4);
     }
 }
 
levelchanger.jpg (508.4 kB)
Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

262 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

How to Manage Objects Common for Multiple Levels? 2 Answers

How to passing levels automatically in games? 0 Answers

How to have a Next Level and Game Over pop up in scene please help! 1 Answer

Problems with my playerprefs. and Level Lock System 0 Answers

Communicate between scenes with prefabs? 3 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges