Вот новый код:

using UnityEngine;
using System.Collections;
public class MainMenu: MonoBehaviour {
public Rect windowRect1= new Rect (20, 20, 120, 50);
public Rect windowRect2= new Rect (20, 20, 120, 50);
private string b1;
private string b2;
public bool menu=false;
public Camera cam;
public Transform FPS;
private bool a=false;
public float g=5.0f;
void OnGUI()
{
if((menu && (Application.loadedLevel==1))||(Application.loadedLevel==0)){windowRect1 = GUI.Window (0, windowRect1, MyWindow1, "Main Menu");
if(a) windowRect2 = GUI.Window (0, windowRect2, MyWindow2, "Setting");}
if(menu)
{
Time.timeScale=0.1f; // <---- Вот здеся)
}
else Time.timeScale=1.0f;
}
void MyWindow1 (int windowID)
{
GUILayout.BeginHorizontal();
if(GUILayout.Button(b1))
{
if(Application.loadedLevel==0) Application.LoadLevel(1);
if(Application.loadedLevel==1)
{
Screen.lockCursor = true;
menu=false;
}
}
GUILayout.EndHorizontal();
GUILayout.BeginHorizontal();
if(GUILayout.Button("Setting")) a=!a;
GUILayout.EndHorizontal();
GUILayout.BeginHorizontal();
if(GUILayout.Button(b2))
{
if(Application.loadedLevel==1) Application.LoadLevel(0);
if(Application.loadedLevel==0) Application.Quit();
}
GUILayout.EndHorizontal();
//GUI.DragWindow();
}
void MyWindow2 (int windowID)
{
GUILayout.BeginHorizontal();
GUILayout.Label("Graphics");
GUILayout.EndHorizontal();
GUILayout.BeginHorizontal();
g=GUILayout.HorizontalSlider(g,0,6);
if(g>=0 && g<1)
QualitySettings.currentLevel = QualityLevel.Fastest;
if(g>=1 && g<2)
QualitySettings.currentLevel = QualityLevel.Fast;
if(g>=2 && g<3)
QualitySettings.currentLevel = QualityLevel.Simple;
if(g>=3 && g<4)
QualitySettings.currentLevel = QualityLevel.Good;
if(g>=4 && g<5)
QualitySettings.currentLevel = QualityLevel.Beautiful;
if(g>=5 && g<6)
QualitySettings.currentLevel = QualityLevel.Fantastic;
GUILayout.EndHorizontal();
GUILayout.BeginHorizontal();
if(GUILayout.Button("Ok")) a=!a;
GUILayout.EndHorizontal();
//GUI.DragWindow();
}
void Update()
{
if(Application.loadedLevel==0)
{
b1="Play";
b2="Exit";
Screen.lockCursor = false;
}
if(Application.loadedLevel==1)
{
cam.gameObject.GetComponent<MouseLook>().enabled=!menu;
FPS.gameObject.GetComponent<MouseLook>().enabled=!menu;
gameObject.GetComponent<Strelok>().enabled=!menu;
b1="Continue";
b2="Main Menu";
if(Input.GetAxis("Esc")!=0)
{
menu=true;
Screen.lockCursor = false;
}
}
}
}
вот новый код.
ошибок некаких не выдаёт.
Но как видно он ставит не на паузу (Time.timeScale=0.1f; ).
А мне надо на паузу (Time.timeScale=0.0f; )
но когда я так изменю строку , игра не снимается с паузы (ошибок никаких не выдаёт).
Помогите!

---------------
---------------
---------------
using UnityEngine;
using System.Collections;
public class Apteka : MonoBehaviour {
public int prib=10;
public Collider igrok;
void OnCollisionEnter (Collision coll)
{
if(igrok == coll.collider)
global.live+=prib;
}
}
это скрипт аптечки.
igrok - это FPS плэйер
global.live - это его жизни
Но почему скрипт срабатывает только если апчтечка упадёт игроку на голову?