2016-04-18 14 views
0

私が書いたスクリプトは完全には機能していません。私はポーズボタンを持っています。それを押すと、ブールが起動し、正しく動作していることが示されますが、一時停止中はUIがポップアップせず、ゲームがバックグラウンドで停止しません。あなたがはっきり理解できることを願っています。私は初心者です!SetActive()を正しく使う方法がわからない

using UnityEngine; 
using System.Collections; 
using UnityEngine.UI; 

public class PauseManager : MonoBehaviour { 

    public GameObject pauseMenu; 

    public bool paused = false; 

    public void start() 
    { 
     pauseMenu.SetActive(false); 
    } 

    public void update() 
    { 
     if(Input.GetButtonDown("escape")) 
     { 
      paused = !paused; 
     } 
     if (paused) 
     { 
      pauseMenu.SetActive(true); 
      Time.timeScale = 0; 

     } 
     if (!paused) 
     { 
      pauseMenu.SetActive(false); 
      Time.timeScale = 1; 
     } 

    } 
    public void Resume() 
    { 
     paused = false; 
    } 
    public void pauseButton() 
    { 
     paused = true; 
    } 
} 

答えて

0

アドバイスあなたは、このようにコードを変更します。

using UnityEngine; 
using System.Collections; 
using UnityEngine.UI; 

public class PauseManager : MonoBehaviour { 

    public GameObject pauseMenu; 

    bool paused = false; 

    void Start() 
    { 
     pauseMenu.SetActive(false); 
    } 

    void Update() 
    { 
     if(Input.GetButtonDown("escape")) 
     { 
      paused = !paused; 
     } 
     if (paused) 
     { 
      PauseGame(); 

     } 
     if (!paused) 
     { 
      ResumeGame(); 
     } 

    } 
    void PauseGame(){ 
     pauseMenu.SetActive(true); 
     Time.timeScale = 0f; 

    } 

    void ResumeGame(){ 
     pauseMenu.SetActive(false); 
     Time.timeScale = 1f; 

    } 
    public void Resume() 
    { 
     ResumeGame(); 
    } 
    public void pauseButton() 
    { 
     PauseGame(); 
    } 


} 

は、私はあなたが、ボタンを押す一時停止タイムスケールを0にし、更新が動作しない場合、問題はその上だと思います。

+0

ありがとうございました! –

+0

@ZacharyTurnerこの道を歩くには長い道のりがあります。私たちの努力の中でお互いを励まし合いましょう。^_ ^ – tim