- Home /
Pause Menu Quality Settings Error ?
Hi bit stuck here guys ,usinf the PauseMenu off the Wiki (which works great BTW) but the Quality Settings is giving me this Error but I am not certain what to change and where ,can anyone point out the obvious please :)
Assets/PauseMenu.cs(238,35): warning CS0618: UnityEngine.QualityLevel' is obsolete: See QualitySettings.names, QualitySettings.SetQualityLevel, and QualitySettings.GetQualityLevel'
======================= PauseMenu.cs =========================
 using UnityEngine;
 using System.Collections;
  
 public class PauseMenu : MonoBehaviour
 {
  
     public GUISkin skin;
  
     private float gldepth = -0.5f;
     private float startTime = 0.1f;
     //
     public Texture racertexture;
     public Texture pausebtn;
     public Material mat;
  
     private long tris = 0;
     private long verts = 0;
     private float savedTimeScale;
     // private SepiaToneEffect pauseFilter;
  
     private bool showfps;
     private bool showtris;
     private bool showvtx;
     private bool showfpsgraph;
  
     public Color lowFPSColor = Color.red;
     public Color highFPSColor = Color.green;
  
     public int lowFPS = 30;
     public int highFPS = 50;
  
     public GameObject start;
  
     public string url = "unity.html";
  
     public Color statColor = Color.yellow;
  
     public string[] Instructions= {
         "NonLinearGames",
         "Presents Crazy Racer",
         "Change Steering by Tablet or Joystick",
         "with the Two Icons (Top Right)",
         "If your car gets stuck press the Icon ",
         "Next to the  Speedo (Top Left) ",
         "Levels will open after you complete ",
          "the previous level faster than a set time. "};
         
         
         public Texture[] crediticons;
  
     public enum Page {
         None,Main,Options,Instructions
     }
  
     private Page currentPage;
  
     private float[] fpsarray;
     private float fps;
  
     private int toolbarInt = 0;
     private string[]  toolbarstrings =  {"Audio","Unused","Stats","System"};
  
  
     void Start() {
         fpsarray = new float[Screen.width];
         Time.timeScale = 1;
         // pauseFilter = Camera.main.GetComponent<SepiaToneEffect>();
         // PauseGame();
     }
  
     void OnPostRender() {
         if (showfpsgraph && mat != null) {
             GL.PushMatrix ();
             GL.LoadPixelMatrix();
             for (var i = 0; i < mat.passCount; ++i)
             {
                 mat.SetPass(i);
                 GL.Begin( GL.LINES );
                 for (int x=0; x < fpsarray.Length; ++x) {
                     GL.Vertex3(x, fpsarray[x], gldepth);
                 }
             GL.End();
             }
             GL.PopMatrix();
             ScrollFPS();
         }
     }
  
     void ScrollFPS() {
         for (int x = 1; x < fpsarray.Length; ++x) {
             fpsarray[x-1]=fpsarray[x];
         }
         if (fps < 1000) {
             fpsarray[fpsarray.Length - 1]=fps;
         }
     }
  
     static bool IsDashboard() {
         return Application.platform == RuntimePlatform.OSXDashboardPlayer;
     }
  
     static bool IsBrowser() {
         return (Application.platform == RuntimePlatform.WindowsWebPlayer ||
             Application.platform == RuntimePlatform.OSXWebPlayer);
     }
  
     void LateUpdate () {
         if (showfps || showfpsgraph) {
             FPSUpdate();
         }
        
          if (Input.GetKeyDown("escape")) 
         
                 
         {
                     switch (currentPage) 
             {
                      
                 case Page.None: 
                     PauseGame(); 
                     break;
  
                 case Page.Main: 
                     if (!IsBeginning()) 
                         UnPauseGame(); 
                     break;
  
                 default: 
                     currentPage = Page.Main;
                     break;
            
                 }
         }
     }
  
     void OnGUI () {
         if (GUI.Button(new Rect(180,0,50,50),pausebtn))
             {
                     switch (currentPage) 
             {
                      
                 case Page.None: 
                     PauseGame(); 
                     break;
  
                 case Page.Main: 
                     if (!IsBeginning()) 
                         UnPauseGame(); 
                     break;
  
                 default: 
                     currentPage = Page.Main;
                     break;
            
                 }
         }
     
 
 
 
 
 
         
    //  GUI.Box(new Rect(0,0,Screen.width,Screen.height),racertexture);
         
         if (skin != null) {
             GUI.skin = skin;
         }
         ShowStatNums();
         ShowLegal();
         if (IsGamePaused()) {
             GUI.color = statColor;
             switch (currentPage) {
                 case Page.Main: MainPauseMenu(); break;
                 case Page.Options: ShowToolbar(); break;
                 case Page.Instructions: ShowInstructions(); break;
             }
         }   
     }
  
     void ShowLegal() {
         if (!IsLegal()) {
             GUI.Label(new Rect(Screen.width-100,Screen.height-20,90,20),
             "jdonavan.com");
         }
     }
  
     bool IsLegal() {
         return !IsBrowser() || 
         Application.absoluteURL.StartsWith("http://www.jdonavan.com/") ||
         Application.absoluteURL.StartsWith("http://jdonavan.com/");
  
     }
  
     void ShowToolbar() {
         BeginPage(300,300);
         toolbarInt = GUILayout.Toolbar (toolbarInt, toolbarstrings);
         switch (toolbarInt) {
             case 0: VolumeControl(); break;
             case 3: ShowDevice(); break;
             case 1: Qualities(); QualityControl(); break;
             case 2: StatControl(); break;
         }
         EndPage();
     }
  
     void ShowInstructions() {
         BeginPage(300,300);
         foreach(string credit in Instructions) {
             GUILayout.Label(credit);
         }
         foreach( Texture credit in crediticons) {
             GUILayout.Label(credit);
         }
         EndPage();
     }
  
     void ShowBackButton() {
         if (GUI.Button(new Rect(20, Screen.height - 50, 50, 20),"Back")) {
             currentPage = Page.Main;
         }
     }
  
     void ShowDevice() {
         GUILayout.Label("Unity player version "+Application.unityVersion);
         GUILayout.Label("Graphics: "+SystemInfo.graphicsDeviceName+" "+
         SystemInfo.graphicsMemorySize+"MB\n"+
         SystemInfo.graphicsDeviceVersion+"\n"+
         SystemInfo.graphicsDeviceVendor);
         GUILayout.Label("Shadows: "+SystemInfo.supportsShadows);
         GUILayout.Label("Image Effects: "+SystemInfo.supportsImageEffects);
         GUILayout.Label("Render Textures: "+SystemInfo.supportsRenderTextures);
     }
  
     void Qualities() {
         switch (QualitySettings.currentLevel) 
         {
             case QualityLevel.Fastest:
                 GUILayout.Label("Fastest");
                 break;
             case QualityLevel.Fast:
                 GUILayout.Label("Fast");
                 break;
             case QualityLevel.Simple:
                 GUILayout.Label("Simple");
                 break;
             case QualityLevel.Good:
                 GUILayout.Label("Good");
                 break;
             case QualityLevel.Beautiful:
                 GUILayout.Label("Beautiful");
                 break;
             case QualityLevel.Fantastic:
                 GUILayout.Label("Fantastic");
                 break;
         }
     }
  
     void QualityControl() {
         GUILayout.BeginHorizontal();
         if (GUILayout.Button("Decrease")) {
             QualitySettings.DecreaseLevel();
         }
         if (GUILayout.Button("Increase")) {
             QualitySettings.IncreaseLevel();
         }
         GUILayout.EndHorizontal();
     }
  
     void VolumeControl() {
         GUILayout.Label("Volume");
         AudioListener.volume = GUILayout.HorizontalSlider(AudioListener.volume, 0, 1);
     }
  
     void StatControl() {
         GUILayout.BeginHorizontal();
         showfps = GUILayout.Toggle(showfps,"FPS");
         showtris = GUILayout.Toggle(showtris,"Triangles");
         showvtx = GUILayout.Toggle(showvtx,"Vertices");
         showfpsgraph = GUILayout.Toggle(showfpsgraph,"FPS Graph");
         GUILayout.EndHorizontal();
     }
  
     void FPSUpdate() {
         float delta = Time.smoothDeltaTime;
             if (!IsGamePaused() && delta !=0.0) {
                 fps = 1 / delta;
             }
     }
  
     void ShowStatNums() {
         GUILayout.BeginArea( new Rect(Screen.width - 100, 10, 100, 200));
         if (showfps) {
             string fpsstring= fps.ToString ("#,##0 fps");
             GUI.color = Color.Lerp(lowFPSColor, highFPSColor,(fps-lowFPS)/(highFPS-lowFPS));
             GUILayout.Label (fpsstring);
         }
         if (showtris || showvtx) {
             GetObjectStats();
             GUI.color = statColor;
         }
         if (showtris) {
             GUILayout.Label (tris+"tri");
         }
         if (showvtx) {
             GUILayout.Label (verts+"vtx");
         }
         GUILayout.EndArea();
     }
  
     void BeginPage(int width, int height) {
         GUILayout.BeginArea( new Rect((Screen.width - width) / 2, (Screen.height - height) / 2, width, height));
     }
  
     void EndPage() {
         GUILayout.EndArea();
         if (currentPage != Page.Main) {
             ShowBackButton();
         }
     }
  
     bool IsBeginning() {
         return (Time.time < startTime);
     }
  
  
     void MainPauseMenu() {
         BeginPage(200,200);
         if (GUILayout.Button (IsBeginning() ? "Play" : "Continue")) {
             UnPauseGame();
  
         }
         if (GUILayout.Button ("Options")) {
             currentPage = Page.Options;
         }
         if (GUILayout.Button ("Instructions")) {
             currentPage = Page.Instructions;
         }
         if (IsBrowser() && !IsBeginning() && GUILayout.Button ("Restart")) {
             Application.OpenURL(url);
         }
         EndPage();
     }
  
     void GetObjectStats() {
         verts = 0;
         tris = 0;
         GameObject[] ob = FindObjectsOfType(typeof(GameObject)) as GameObject[];
         foreach (GameObject obj in ob) {
             GetObjectStats(obj);
         }
     }
  
     void GetObjectStats(GameObject obj) {
            Component[] filters;
         filters = obj.GetComponentsInChildren<MeshFilter>();
         foreach( MeshFilter f  in filters )
         {
             tris += f.sharedMesh.triangles.Length/3;
               verts += f.sharedMesh.vertexCount;
         }
     }
  
     void PauseGame() {
         savedTimeScale = Time.timeScale;
         Time.timeScale = 0;
         AudioListener.pause = true;
         // if (pauseFilter) 
         //     pauseFilter.enabled = true;
         currentPage = Page.Main;
     }
  
     void UnPauseGame() {
         Time.timeScale = savedTimeScale;
         AudioListener.pause = false;
         // if (pauseFilter) 
             // pauseFilter.enabled = false;
  
         currentPage = Page.None;
  
         if (IsBeginning() && start != null) {
             start.active = true;
         }
     }
  
     bool IsGamePaused() {
         return (Time.timeScale == 0);
     }
  
     void OnApplicationPause(bool pause) {
         if (IsGamePaused()) {
             AudioListener.pause = true;
         }
     }
 }
               Comment
              
 
               
               
               Best Answer 
              
 
              Answer by DESTRUKTORR · Apr 21, 2013 at 08:21 PM
QualityLevel is obsolete, in Unity. Simply change
 switch (QualitySettings.currentLevel) 
        {
             case QualityLevel.Fastest:
                GUILayout.Label("Fastest");
                break;
             case QualityLevel.Fast:
                GUILayout.Label("Fast");
                break;
             case QualityLevel.Simple:
                GUILayout.Label("Simple");
                break;
             case QualityLevel.Good:
                GUILayout.Label("Good");
                break;
             case QualityLevel.Beautiful:
                GUILayout.Label("Beautiful");
                break;
             case QualityLevel.Fantastic:
                GUILayout.Label("Fantastic");
                break;
         }
To
 switch (QualitySettings.GetQualityLevel()) 
        {
             case 0:
                GUILayout.Label("Fastest");
                break;
             case 1:
                GUILayout.Label("Fast");
                break;
             case 2:
                GUILayout.Label("Simple");
                break;
             case 3:
                GUILayout.Label("Good");
                break;
             case 4:
                GUILayout.Label("Beautiful");
                break;
             default:
                GUILayout.Label("Fantastic");
                break;
         }
Your answer
 
 
             Follow this Question
Related Questions
Pause menu scripting help? 1 Answer
Hold the esc button for a pause menu 1 Answer
Pause Menu Text Not Rendering 0 Answers
 koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                