|
Название: Меню паузы на одну клавишу Отправлено: piligrin от Ноябрь 03, 2012, 11:45:17 Скажите, как правильно написать этот код на ява-скрипт, чтоб работало:
Или как отключить эти переменные (var mouseSpeed; и var speed;) из скрипта c# ? Название: Re: Меню паузы на одну клавишу Отправлено: Born for go от Ноябрь 10, 2012, 16:22:11 1. Вопрос сформулирован ужасно
2. Читаемость кода ужасная 3. Вот Ваш Код: var mouseSpeed : float = 4.0; 4. Чтобы отключить переменные - сотрите их :facepalm: элементарно жеvar speed : float = 0.1; function Update () { if(Input.GetKeyDown(KeyCode.Escape)) { mouseSpeed.enabled = !mouseSpeed.enabled ; speed.enabled = !speed.enabled ; } } // просто уберите "|| Input.GetKeyDown(KeyCode.N)", элементарно Название: Re: Меню паузы на одну клавишу Отправлено: piligrin от Ноябрь 10, 2012, 21:08:49 Born for go, мне искренне жаль, что мой код поверг Вас в ужас sm:) Теперь уже понимаю, что вопрос был задан некорректно. Думал, что я неправильно перевёл этот код из шарпа в яву, но проблема была в другом месте и уже устранена.
Что значит стереть переменные? Не понимаю о чём Вы. Мне нужно из скрипта C# выключать/включать переменные в ява-скрипте(или выключать/включать весь ява-скрипт), если такое возможно, конечно. Типа этого: GetComponent<класс скрипта>().enabled = false; или: GetComponent<класс скрипта>().переменная = false;(только из си-шарпа в яве). Если можете, дайте код, которым это можно сделать. (Ещё раз прошу прощения за причинённые неудобства, задаю вопросы со своего уровня познаний unity и скриптинга, которые, увы, невелики.) Название: Re: Меню паузы на одну клавишу Отправлено: Born for go от Ноябрь 11, 2012, 12:17:58 Опять же вопрос сформулирован не очень. sm_milo Ну думаю, Вы имели в виду изменение переменной ява скрипта посредством C#?
Название: Re: Меню паузы на одну клавишу Отправлено: piligrin от Ноябрь 11, 2012, 15:37:04 ...думаю, Вы имели в виду изменение переменной ява скрипта посредством C#? Да, именно так. Но на всякий случай ещё раз расскажу.Есть ява скрипт с переменной var speed : float = 5.0; И есть скрипт си шарп с кнопкой: if(Input.GetKeyDown(KeyCode.Escape)) { Переменная в ява скрипте speed = false; } Название: Re: Меню паузы на одну клавишу Отправлено: Alcatraz от Ноябрь 11, 2012, 15:48:32 зачем 2 скрипта на 2-х языках?
Тогда делай так: Код: if(Input.GetKeyDown(KeyCode.Escape)) { gameObject.SendMessage("SetSpeed",false); } а в ява скрипте пропиши: Код: function SetSpeed(b : boolean) { speed = f; } действие кода - скрипт будет посылать своему объекту сигнал. и другим скриптам тоже. Делай так, если оба скрипта на одном объекте, если на разных, то gameObject. замени на переменную с объектом, т.е так: Код: var obj : GameObject; ______ obj.SendMessage(итд). Название: Re: Меню паузы на одну клавишу Отправлено: piligrin от Ноябрь 11, 2012, 20:35:24 зачем 2 скрипта на 2-х языках? Потому,что не получается перевести его из явы в шарп,вот и приходится плясать между ними.Да, скрипты на разных объектах.Я наверное делаю что-то не так, потому, что в скрипте C# выдаёт ошибку: "obj." - не существует в текущем контексте. Делаю вот так: Ява-скрипт "NoclipedCamera.js" И ещё, не понял в этой строке что писать вместо " f " : function SetSpeed(b : boolean) { speed = f; } Название: Re: Меню паузы на одну клавишу Отправлено: Alcatraz от Ноябрь 11, 2012, 21:23:35 Моя ошибка. вместо f пиши b (переменная из аргумента функции).
obj нужно задать, если в разных объектах. Название: Re: Меню паузы на одну клавишу Отправлено: piligrin от Ноябрь 13, 2012, 10:03:44 Спасибо.
|