Вызов "чужого" метода в анимации. Как?

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

Вызов "чужого" метода в анимации. Как?

Сообщение Dmytro 11 апр 2021, 21:40

Привет. Метод вызывается в анимации с помощью Event. Ну типа add Event на полоске с анимацией и в инспекторе выбираем нужный метод из доступных. А доступные методы потому что этот скрипт с этими методами висит на объекте где данная анимация есть. Но как достучаться до "чужих" методов? До тех методов которые есть в скриптах на других объектах ...? Как вызвать методы других объектов из анимации? Я чего то не пойму. Подскажите если кто знает.
Аватара пользователя
Dmytro
UNIт
 
Сообщения: 55
Зарегистрирован: 29 авг 2017, 17:04

Re: Вызов "чужого" метода в анимации. Как?

Сообщение Saltant 11 апр 2021, 21:44

Вешаешь на ивент метод и в этом методе вызываешь чё нить из другого скрипта.
Я на Google Play _https://play.google.com/store/apps/developer?id=Saltant
Аватара пользователя
Saltant
Адепт
 
Сообщения: 2236
Зарегистрирован: 09 окт 2018, 16:40
Откуда: Химки
  • Сайт

Re: Вызов "чужого" метода в анимации. Как?

Сообщение Dmytro 11 апр 2021, 21:50

Аватара пользователя
Dmytro
UNIт
 
Сообщения: 55
Зарегистрирован: 29 авг 2017, 17:04

Re: Вызов "чужого" метода в анимации. Как?

Сообщение Saltant 11 апр 2021, 21:52

Что оно?
Тебе нужно вызвать какой то метод из другого скрипта? Ну так и вызывай, можно через ссылку, можешь какой то контроллер сделать и через синглтон дёргать что нить, вариантов много.
Я на Google Play _https://play.google.com/store/apps/developer?id=Saltant
Аватара пользователя
Saltant
Адепт
 
Сообщения: 2236
Зарегистрирован: 09 окт 2018, 16:40
Откуда: Химки
  • Сайт

Re: Вызов "чужого" метода в анимации. Как?

Сообщение Dmytro 11 апр 2021, 22:00

Я так понял что всё равно этот метод не появиться в списке доступных методов. Нужно через промежуточный метод(на скрипте на объекте с анимацией) + ссылка на нужный объект. А в этом промежуточном методе вызывать метод через ссылку( otherObj.needMethod() ) . А этот промежуточный метод уже вызывать в анимации. Так?
Аватара пользователя
Dmytro
UNIт
 
Сообщения: 55
Зарегистрирован: 29 авг 2017, 17:04

Re: Вызов "чужого" метода в анимации. Как?

Сообщение Saltant 11 апр 2021, 22:24

Естественно, всё как обычно.
Я в своем проекте делал так - у меня срабатывал ивент на анимации, дергался скрипт с персонажа, в этом скрипте я обращался к singleton контроллеру (в моем случае это был soundController) я передавал в него имя объекта который передал анимацию и собственно в звуковом контроллере я получал нужный мне звук для проигрывания и проигрывал его.

GetSound это generic метод в моем звуковом контроллере, который возвращает мне ScriptableObject где у меня описана моя пушка, в том числе там назначены звуки выстрела, перезарядки и т.п, я получаю этот объект и вызываю нужный мне звук уже в том методе который сработал когда был event в анимации.
Изображение

OnShot() метод как раз дергается непосредственно анимацией, в нем я иду в контроллер за нужным звуком.
Изображение
Я на Google Play _https://play.google.com/store/apps/developer?id=Saltant
Аватара пользователя
Saltant
Адепт
 
Сообщения: 2236
Зарегистрирован: 09 окт 2018, 16:40
Откуда: Химки
  • Сайт

Re: Вызов "чужого" метода в анимации. Как?

Сообщение Dmytro 11 апр 2021, 22:34

Спасибо. Буду пробовать.
Аватара пользователя
Dmytro
UNIт
 
Сообщения: 55
Зарегистрирован: 29 авг 2017, 17:04


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

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

Сейчас этот форум просматривают: Yandex [Bot] и гости: 25