Помощь со скриптом

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Помощь со скриптом

Сообщение egor 26 окт 2012, 15:57

Что нужно добавить в скрипт чтобы при нажатии esc игра останавливалась и открывалось меню?

// Main Menu Script
Синтаксис:
Используется javascript
 var window                                = 0;  
 var myFont      : Font;
 var style         : GUIStyle;
 var toggle                = false;  //тумблер  
 static var soundFloat                   : float              = 1.0;
 //  

  function OnGUI ()
  {
  AudioListener.volume = soundFloat; //применяем громкость  
  if (Input.GetKey("f1"))
  {
   window = 2;
  }
  GUI.skin.font = myFont;
  if (window == 0)  // теперь главное меню активировано при window = 0  
  {
   GUI.Box (Rect (Screen.width/2 - 100,Screen.height/2 - 100,200,180), "ГЛАВНОЕ МЕНЮ");  
   if (GUI.Button (Rect (Screen.width/2 - 90,Screen.height/2 - 80,180,30), "Играть"))  
  {  
   Application.LoadLevel ("sceneLevel1");  
  }  
  if (GUI.Button (Rect (Screen.width/2 - 90,Screen.height/2 - 40,180,30), "Настройки"))  
  {  
   window = 1; // активируем окно "настройки"  
  }  
  if (GUI.Button (Rect (Screen.width/2 - 90,Screen.height/2 - 0,180,30), "Помощь"))  
  {  
   window = 2; // активируем окно "помощь"  
  }  
  if (GUI.Button (Rect (Screen.width/2 - 90,Screen.height/2 + 40,180,30), "Выход"))  
  {  
   Application.Quit();  
  }  
  }  
  if (window == 1) // наши настройки
  {  
   GUI.Box (Rect (Screen.width/2 - 100,Screen.height/2 - 100,200,180), "Настройки");  
   GUI.Label (Rect (Screen.width/2 - 90,Screen.height/2 - 70, 180, 20), "Громкость музыки:");  
   soundFloat = GUI.HorizontalSlider (Rect (Screen.width/2 - 90,Screen.height/2 - 50, 180, 20), soundFloat, 0.0, 1.0); //ползунок, регулирующий громкость
   toggle = GUI.Toggle (Rect (Screen.width/2 - 90,Screen.height/2 - 20, 180, 20), toggle, "На весь экран");  
   if (toggle == true)  
   {
    Screen.SetResolution(Screen.currentResolution.width, Screen.currentResolution.height, true);
   }
   else
   {
    Screen.SetResolution(800, 600, false);
   }
   if (GUI.Button (Rect (Screen.width/2 - 90,Screen.height/2 + 40,180,30), "Назад") || Input.GetKey ("escape"))  
   {  
    window = 0;  
   }  
  }  
  if (window == 2) // наша помощь  
  {  
   GUI.Box (Rect (Screen.width/2 - 100,Screen.height/2 - 100,200,180), "Помощь");  
   GUI.Label (Rect (Screen.width/2 - 100,Screen.height/2 - 80,200,140), "Здесь должна быть помощь ", style); // текст  
   if (GUI.Button (Rect (Screen.width/2 - 90,Screen.height/2 + 40,180,30), "Назад") || Input.GetKey ("escape"))  
   {  
    window = 0;  
   }  
  }  
  }
egor
UNец
 
Сообщения: 47
Зарегистрирован: 13 окт 2012, 23:12

Re: Помощь со скриптом

Сообщение waruiyume 26 окт 2012, 16:08

Используйте тег syntax.
Код: Выделить всё
[syntax=javascript]
//код
[/syntax]
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Помощь со скриптом

Сообщение egor 26 окт 2012, 16:49

Спасибо, я не знаю что такое syntax, но скрипт я нашел вот он
function Update () {
if (Input.GetKeyDown (KeyCode.Escape))
{
Application.LoadLevel (0);
}
}
Но теперь мне надо чтобы при открытии меню игра останавливалась и в меню была строчка продолжить
egor
UNец
 
Сообщения: 47
Зарегистрирован: 13 окт 2012, 23:12

Re: Помощь со скриптом

Сообщение KorsaiR 26 окт 2012, 17:01

в каждом скрипте которые используются пропиши в update:
Синтаксис:
Используется csharp
if(Time.timeScale >0){
"тут твой код"
}


затем на скрипте,в котором прописана функция включения меню:
if(Input.GetKeyUp(KeyCode.Escape))
Time.timeScale = 0f;
дальше сам думай. лично я так делаю :)
з.ы: ещё тебе нужно будет додумать как сделать, чтобы пауза отключалась :)
Мои игры: Sunrise, Fireground, Spacerift
Sunrise: _www.sunsurv.ru , _https://store.steampowered.com/app/6631 ... _survival/
Fireground: _https://store.steampowered.com/app/1026 ... ND/?beta=0
Spacerift: _https://vk.com/spacerift
Аватара пользователя
KorsaiR
Старожил
 
Сообщения: 797
Зарегистрирован: 09 июл 2012, 12:20
Откуда: Новосибирск
Skype: pwiliya


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21