Блокировка фона

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

Блокировка фона

Сообщение alexchromets 01 окт 2012, 05:08

Как реализовать отключение реакции фона при вызове паузы? У меня во время паузы фон работает.
Синтаксис:
Используется javascript
//Script Pause
#pragma strict

var paused                                  : boolean           = false;
var window                                                                                = 0;
var myFont                              : Font;
var style                                       : GUIStyle;
var toggle                                                                                       = false;
var soundFloat                  : float                                  = 1.0;
//
function Update ()  
{  
        if (Input.GetKeyDown(KeyCode.Escape))
        {  
                if(!paused)
                {  
                        Time.timeScale = 0;
                        paused=true;
                        if (audio.clip)
                        {
                                audio.Pause();
                        }
                        //Screen.showCursor = true;
                }
                else
                {
                        Time.timeScale = 1;
                        paused=false;
                        if (audio.clip)
                        {
                                audio.Play();
                        }
                }
        }
}
function OnGUI()
{
        if(paused==true)
        {      
                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),"Продолжить игру"))
                {
                        Time.timeScale = 1;
                        paused=false;
                        if (audio.clip)
                        {
                                audio.Play();
                        }
                        //Screen.showCursor = false;
                }
                if (GUI.Button (Rect (Screen.width/2 - 90,Screen.height/2 - 40,180,30), "Играть заново"))
                {
                        Time.timeScale = 1;
                        paused=false;
                        if (audio.clip)
                        {
                                audio.Play();
                        }
                        Application.LoadLevel ("sceneLevel1");
                }
                if (GUI.Button (Rect (Screen.width/2 - 90,Screen.height/2 - 0,180,30), "Главное меню"))
                {
                        Application.LoadLevel ("sceneScreenMainMenu");
                }
                if (GUI.Button (Rect (Screen.width/2 - 90,Screen.height/2 + 40,180,30), "Выйти из игры"))
                {
                        Application.Quit();
                }
        }
}
 
alexchromets
UNец
 
Сообщения: 14
Зарегистрирован: 30 сен 2012, 21:27

Re: Блокировка фона

Сообщение AndreyMust19 01 окт 2012, 07:46

Какой фон, что вы под ним понимаете?
Нужна помощь? Сами, сами, сами, сами, сами... делаем все сами
AndreyMust19
Адепт
 
Сообщения: 1119
Зарегистрирован: 07 июн 2011, 13:19

Re: Блокировка фона

Сообщение alexchromets 01 окт 2012, 11:46

AndreyMust19 писал(а):Какой фон, что вы под ним понимаете?

Под фоном я подразумеваю сцену, поверх которой выводится меню паузы.
alexchromets
UNец
 
Сообщения: 14
Зарегистрирован: 30 сен 2012, 21:27

Re: Блокировка фона

Сообщение 2rusbekov 01 окт 2012, 17:42

Тоже сталкивался. апдейт продолжает работать. а физика нет. или наоборот. чет не помню уже. тоже интересно
Still alive...
Аватара пользователя
2rusbekov
Адепт
 
Сообщения: 1409
Зарегистрирован: 06 апр 2012, 12:57
Откуда: Бишкек

Re: Блокировка фона

Сообщение trololoid 01 окт 2012, 17:50

Во всех классах, где есть логика перемещения проверять условие.
Аватара пользователя
trololoid
Старожил
 
Сообщения: 712
Зарегистрирован: 15 сен 2011, 19:18
Откуда: Туапсе, Краснодарский край, Россия

Re: Блокировка фона

Сообщение seaman 01 окт 2012, 19:56

Все в проекте изменять с использованием Time.deltaTime
seaman
Адепт
 
Сообщения: 8352
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: Блокировка фона

Сообщение alexchromets 01 окт 2012, 23:43

Что-то я не понял как именно это сделать и куда вписать.
Вот код, там где обрабатываются нужные мне объекты:
Синтаксис:
Используется javascript
// Enemy Script

// Inspector Variables
var shapeColor                          : Color[];                                      // color of the object
var numberOfClicks              : int                           = 2;            // how many time to click on an object before it gets destroyed
var respawnWaitTime             : float                         = 2.0;  // how long to hide
var explosion                                   : Transform;                            // lood particle effect
var enemyPoint                          : int                           =1;             // value of the enemy object

// Private Variables
private var storeClicks : int = 0;

// Start is only called once in the lifetime of the behavior
function Start ()
{
        storeClicks = numberOfClicks;
        var startPosition = Vector3 (Random.Range(-6, 6),Random.Range(-4, 4), 0);       // new random position of the game object
        transform.position = startPosition;     // move the game object to the new location
        RandomColor ();
}
// Update is called every frame
function Update ()
{
        audio.volume = scriptScreenMainMenu.soundFloat; //применяем громкость
        if (numberOfClicks <= 0)
        {
                if (explosion)
                {
                        Instantiate (explosion, transform.position, transform.rotation);        // create an explosion
                }
                if (audio.clip)
                {
                        audio.Play();
                }
                var position = Vector3 (Random.Range(-6, 6),Random.Range(-4, 4), 0);    // new random position of the game object
                RespawnWaitTime();
                transform.position = position;  // move the game object to the new location
                numberOfClicks = storeClicks;
        }
}
//RespawnWaitTime is used to hide a game object for a set amount of time and then unhide it
function RespawnWaitTime ()
{
        renderer.enabled = false;
        RandomColor ();
        yield WaitForSeconds (respawnWaitTime);
        renderer.enabled = true;
}
// Random Color is used to change out the material of a game object
function RandomColor ()
{
        if (shapeColor.length > 0)
        {
                var newColor = Random.Range(0, shapeColor.length);
                renderer.material.color = shapeColor[newColor];
        }
}
 
alexchromets
UNец
 
Сообщения: 14
Зарегистрирован: 30 сен 2012, 21:27

Re: Блокировка фона

Сообщение KorsaiR 03 окт 2012, 15:17

я , чтобы реализовать паузу, во всех скриптах пишу в Update "if(Time.timeScale > 0) :) тогда в этом случае апдейт работает только если время не равно 0
Мои игры: 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

Re: Блокировка фона

Сообщение alexchromets 04 окт 2012, 12:40

KorsaiR писал(а):я , чтобы реализовать паузу, во всех скриптах пишу в Update "if(Time.timeScale > 0) :) тогда в этом случае апдейт работает только если время не равно 0

Работает, спасибо!
alexchromets
UNец
 
Сообщения: 14
Зарегистрирован: 30 сен 2012, 21:27


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

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

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