Запускайте код в MonoBehaviour всякий раз, когда добавляется другой компонент.C#

Место общения программистов C#
Ответить
Anonymous
 Запускайте код в MonoBehaviour всякий раз, когда добавляется другой компонент.

Сообщение Anonymous »

В Unity MonoBehaviour имеют различные методы, которые запускаются автоматически, когда что-то происходит с ними/игровым объектом, к которому они прикреплены, например: OnDestroy(), OnEnable(), OnValidate() .
Интересно, есть ли способ написать MonoBehaviour, в котором код запускается всякий раз, когда к связанному с ним GameObject() добавляется другой компонент. Например, мне нужно что-то похожее на это:

Код: Выделить всё

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class MyMonoBehaviour: MonoBehaviour
{
void OnComponentAdded(MonoBehaviour component)
{
Debug.Log("Component added!")
}
}
Таким образом, если бы я когда-либо добавлял компонент к чему-то, к чему уже был прикреплен компонент MyMonoBehaviour, в моем приведенном выше примере добавленный компонент! был бы зарегистрирован в консоли.
Однако я не вижу никакого способа сделать это на самом деле, просматривая документацию MonoBehaviour.
Возможно, это возможно, но я просто не знаю, как это сделать. сделай это. Если да, то кто-нибудь, пожалуйста, скажите мне, как это можно сделать!

Подробнее здесь: https://stackoverflow.com/questions/798 ... t-is-added
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»