Хочу , чтобы переменная изменялась при входе в триггер и возвращалась к обратному значение при выходе из него ... Написал такой код
Код
#pragma strict
function OnTriggerEnter() { GameObject.Find("IGROK").GetComponent(CharacterController).slopeLimit = 90; }
function OnTriggerExit() { GameObject.Find("IGROK").GetComponent(CharacterController).slopeLimit = 60; }
При входе значение меняется на 90, но при выходе не возвращается к 60 ... Подскажите , ЛЮДИ ДОБРЫЕ, в чём ошибка ... И можно ли это реализовать через ELSE, но без проверки каждый кадр ? ...
Сообщение отредактировал dostalition - Ср, 31 Июл 2013, 17:55
то, при входе в триггер, рендер отключается и значение меняется на 90, а при выходе ни рендер не включается, ни значение не меняется в скрипте ...
Добавлено (31 Июл 2013, 23:31) --------------------------------------------- Попробуйте Кто-нибудь этот slopeLimit изменить у Себя через вход/выход триггера ... Другие скрипты работают: рендер отключается и включается, цвет эмбиента меняется туда и обратно, пока не пытаюсь изменить slopeLimit, а с ним только при входе получается сотрудничать ...
Добавлено (02 Авг 2013, 14:15) --------------------------------------------- Через дебаг.лог, поставленный после строчки
, в функции ЭНТЕР , при вхождении выдаёт сообщения НЕПЕРЕСТАВАЯ, тогда как, в том же скрипте, но без изменения слоупЛимит, как и положено, показывает сообщение раз при входе и раз при выходе ... Видимо проблема уже на этом этапе ...
Добавлено (02 Авг 2013, 19:14) --------------------------------------------- Числовые значения переменных из других скриптов меняются как надо, дело именно в ЧарактерКонтроллере и этой "слоупЛимит" ...
Добавлено (02 Авг 2013, 19:46) --------------------------------------------- Создал , для пробы, такой простейший скрипт под названием CHISLO
и в нём всё работает , как надо : СН меняется на 90 один раз, при входе и на 60 один раз при выходе ... Так же и с дебагом ... Т.е. сам скрипт этот нормально пашет, а вот проблема в ЧарактерКонтроллере ... Его же даже из редактора нельзя открыть для редактирования , EditScript отсутствует строчка ...
Добавлено (02 Авг 2013, 19:49) --------------------------------------------- Как, вообще, можно отредактировать CharacterController ? Или , хоть, посмотреть как там что написано, может что проясниться ...
Добавлено (02 Авг 2013, 19:54) --------------------------------------------- В справке есть только это http://docs.unity3d.ru/ScriptReference/CharacterController-slopeLimit.html , но оно не помогает ...
Добавлено (02 Авг 2013, 20:04) --------------------------------------------- Теперь выяснил, что проблема не в СС, а именно в слоупЛимит, т.к. вот такой скрипт работает как надо