public static void Follow(Transform follower, Transform master) { if (follower != null && master != null) { PEFollow follow = follower.gameObject.AddComponent <PEFollow>(); follow.master = master; } }
public void Awake() { Init(null, null, (int)AttribType.Max); m_StartTime = Time.time; if (!m_Inited) { m_Entity = GetComponent <PeEntity>(); if (m_Entity == null) { m_Entity = gameObject.AddComponent <PeEntity>(); } m_Triggers = GetComponentsInChildren <Collider>(); m_Trajectory = GetComponent <Trajectory>(); } if (m_Trigger && m_Interval > PETools.PEMath.Epsilon) { StartCoroutine(TriggerDamage()); } SetAttribute((int)AttribType.ResRange, m_ResRange); PETrigger.AttachTriggerEvent(gameObject, OnColliderEnter, null, null); if (bufferEffect != null) { PEFollow.Follow(bufferEffect, transform); } StartCoroutine(DeleteEnumerator(m_LifeTime)); s_Projectiles.Add(this); }