Воскресенье, 22 Декабря 2024, 15:02

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Обращение к переменным из других скриптов
LordZickДата: Воскресенье, 04 Марта 2012, 17:59 | Сообщение # 1
участник
Сейчас нет на сайте
Доброго всем времени суток. Мне надо, чтобы при соприкосновении персонажа с тригером, переменная number из скрипта IfEnterCreate принимала значение 19. Собственно, вопрос: как это сделать?
Я пробовал вот так:
Code

function OnTriggerEnter (myTrigger : Collider)  
{

     if(myTrigger.gameObject.name == "TriggerMovie1")
     {
        isControllable = false;
        GUIText.IfEnterCreate.number = 19;
     }
      
}


P.S. GUIText - это объект, просто было влом переименовывать =)
Но таким образом, выдавало ошибку:
Code

NullReferenceException: Object reference not set to an instance of an object
Boo.Lang.Runtime.RuntimeServices.GetDispatcher (System.Object target, System.String cacheKeyName, System.Type[] cacheKeyTypes, Boo.Lang.Runtime.DynamicDispatching.DispatcherFactory factory)
Boo.Lang.Runtime.RuntimeServices.GetDispatcher (System.Object target, System.Object[] args, System.String cacheKeyName, Boo.Lang.Runtime.DynamicDispatching.DispatcherFactory factory)
Boo.Lang.Runtime.RuntimeServices.SetProperty (System.Object target, System.String name, System.Object value)
ThirdPersonController.OnTriggerEnter (UnityEngine.Collider myTrigger) (at Assets/Standard Assets/Character Controllers/Sources/Scripts/ThirdPersonController.js:317)



SnakeRДата: Воскресенье, 04 Марта 2012, 18:11 | Сообщение # 2
постоянный участник
Сейчас нет на сайте
LordZick, а поиском не судьба воспользоваться????
вот тут обсуждалось


Unity3D Developer
Ваш лучший помощник при разработке в Unity3D
LordZickДата: Воскресенье, 04 Марта 2012, 19:25 | Сообщение # 3
участник
Сейчас нет на сайте
SnakeR, извини и спасибо smile
Но я пишу на ява скрипте, а переводить из си шарпа на него не умею sad

Добавлено (04.03.2012, 19:25)
---------------------------------------------
Попробовал из юнити3Д по русски, http://www.unity3d.ru/distribution/viewtopic.php?f=18&t=2310
Получился такой код:
Code

gameObject.Find("GUIText").GetComponent("IfEnterCreate").number = 19;

Но теперь при старте пишет:
Code

UnityException: You are not allowed to call this function when declaring a variable.
Move it to the line after without a variable declaration.





Сообщение отредактировал LordZick - Воскресенье, 04 Марта 2012, 19:25
SnakeRДата: Воскресенье, 04 Марта 2012, 19:38 | Сообщение # 4
постоянный участник
Сейчас нет на сайте
LordZick, ну тут написано, что вызывать функцию при объявлении переменной нельзя, перемести функцию ниже объявления переменной.

Unity3D Developer
Ваш лучший помощник при разработке в Unity3D
LordZickДата: Воскресенье, 04 Марта 2012, 19:42 | Сообщение # 5
участник
Сейчас нет на сайте
SnakeR, ураа, спасибо!
Проблема решена smile



  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг