コード例 #1
0
ファイル: BezierPath.cs プロジェクト: JustJessTV/GitMergeTest
		/// <summary>
		/// 	Called when the parent is enabled.
		/// </summary>
		protected override void OnEnable(HydraMonoBehaviour parent)
		{
			if (m_Points == null)
				m_Points = new BezierPointAttribute[0];

			base.OnEnable(parent);
		}
コード例 #2
0
        /// <summary>
        ///     Creates the instance.
        /// </summary>
        /// <returns>The instance.</returns>
        /// <param name="parent">Parent.</param>
        /// <typeparam name="T">The instance type.</typeparam>
        public static T CreateInstance <T>(HydraMonoBehaviour parent) where T : HydraMonoBehaviourChild, new()
        {
            T output = new T();

            output.Enable(parent);

            return(output);
        }
コード例 #3
0
        /// <summary>
        ///     Processes the message.
        /// </summary>
        /// <param name="children">Children.</param>
        /// <param name="parent">Parent.</param>
        /// <param name="message">Message.</param>
        public static void ProcessMessage(List <HydraMonoBehaviourChild> children, HydraMonoBehaviour parent, Message message)
        {
            for (int index = 0; index < children.Count; index++)
            {
                HydraMonoBehaviourChild child = children[index];

                if (child == null)
                {
                    continue;
                }

                switch (message)
                {
                case Message.OnUpdate:
                    child.Update(parent);
                    break;

                case Message.OnDestroy:
                    child.Destroy(parent);
                    break;

                case Message.OnDisable:
                    child.Disable(parent);
                    break;

                case Message.OnEnable:
                    child.Enable(parent);
                    break;

                case Message.OnReset:
                    child.Reset(parent);
                    break;

                default:
                    throw new ArgumentOutOfRangeException();
                }
            }
        }
コード例 #4
0
		/// <summary>
		/// 	Called when the object is loaded.
		/// </summary>
		protected override void OnEnable(HydraMonoBehaviour parent)
		{
			base.OnEnable(parent);

			InstantiateChild();
		}
コード例 #5
0
		/// <summary>
		/// 	Called when the parent updates.
		/// </summary>
		/// <param name="parent">Parent.</param>
		protected override void OnUpdate(HydraMonoBehaviour parent)
		{
			base.OnUpdate(parent);

			SetLayer(parent.gameObject.layer);
		}
コード例 #6
0
		/// <summary>
		/// 	Called when the object goes out of scope.
		/// </summary>
		protected override void OnDisable(HydraMonoBehaviour parent)
		{
			Unsubscribe(m_EventHelper);

			base.OnDisable(parent);
		}
コード例 #7
0
		/// <summary>
		/// 	Unsubscribe from the specified eventHelper.
		/// </summary>
		/// <param name="eventHelper">Event helper.</param>
		private void Unsubscribe(HydraMonoBehaviour eventHelper)
		{
			if (eventHelper == null)
				return;

			eventHelper.onWillRenderObjectCallback -= OnChildWillRenderObject;
		}
コード例 #8
0
 /// <summary>
 ///     Called when the parent is about to be destroyed.
 /// </summary>
 protected virtual void OnDestroy(HydraMonoBehaviour parent)
 {
     ProcessMessage(parent, Message.OnDestroy);
 }
コード例 #9
0
 /// <summary>
 ///     Called to reset the instance to default values.
 /// </summary>
 protected virtual void OnReset(HydraMonoBehaviour parent)
 {
     ProcessMessage(parent, Message.OnReset);
 }
コード例 #10
0
 /// <summary>
 ///     Calls OnDestroy().
 /// </summary>
 /// <param name="parent">Parent.</param>
 public void Destroy(HydraMonoBehaviour parent)
 {
     OnDestroy(parent);
 }
コード例 #11
0
 /// <summary>
 ///     Calls OnDisable().
 /// </summary>
 /// <param name="parent">Parent.</param>
 public void Disable(HydraMonoBehaviour parent)
 {
     OnDisable(parent);
 }
コード例 #12
0
 /// <summary>
 ///     Calls OnEnable().
 /// </summary>
 /// <param name="parent">Parent.</param>
 public void Enable(HydraMonoBehaviour parent)
 {
     OnEnable(parent);
 }
コード例 #13
0
 /// <summary>
 ///     Calls OnReset().
 /// </summary>
 /// <param name="parent">Parent.</param>
 public void Reset(HydraMonoBehaviour parent)
 {
     OnReset(parent);
 }
コード例 #14
0
 /// <summary>
 ///     Calls OnUpdate().
 /// </summary>
 /// <param name="parent">Parent.</param>
 public void Update(HydraMonoBehaviour parent)
 {
     OnUpdate(parent);
 }
コード例 #15
0
		/// <summary>
		/// 	Called when the object is about to be destroyed.
		/// </summary>
		protected override void OnDestroy(HydraMonoBehaviour parent)
		{
			base.OnDestroy(parent);

			DestroyChild();
		}
コード例 #16
0
 /// <summary>
 ///     Called when the parent updates.
 /// </summary>
 protected virtual void OnUpdate(HydraMonoBehaviour parent)
 {
     ProcessMessage(parent, Message.OnUpdate);
 }
コード例 #17
0
 /// <summary>
 ///     Processes the message.
 /// </summary>
 /// <param name="message">Message.</param>
 private void ProcessMessage(HydraMonoBehaviour parent, Message message)
 {
     ProcessMessage(GetMonoBehaviourChildren(), parent, message);
 }