/// <summary> /// 绘制属性 /// </summary> public override void DrawAttr() { base.DrawAttr(); m_TriggerRange = m_BaseTrigger as TriggerRange; m_TriggerRange.transform.tag = "RangeTrigger"; if (m_TriggerRange.GetComponent <BoxCollider2D>() == null) { m_TriggerRange.gameObject.AddComponent <BoxCollider2D>(); } GUI.color = Color.green; GUILayout.Label("在BoxCollider2D中设置范围"); GUI.color = Color.white; if (m_TriggerRange.transform.childCount <= 0) { GUI.color = Color.white; GUILayout.Label("隐形触发器,可添加item子结点成为可视"); GUI.color = Color.white; } else if (m_TriggerRange.transform.childCount > 1) { GUI.color = Color.yellow; GUILayout.Label("只能添加一个item子结点"); GUI.color = Color.white; } else { if (m_BaseTrigger.transform.GetChild(0).transform.name.Contains("item_")) { GUI.color = Color.green; GUILayout.Label("可视触发器"); GUI.color = Color.white; } else { GUI.color = Color.red; GUILayout.Label("子结点需要是item"); GUI.color = Color.white; } } }
/// <summary> /// 绘制属性 /// </summary> public override void DrawAttr() { base.DrawAttr(); m_TriggerRange = m_BaseTrigger as TriggerRange; m_TriggerRange.transform.tag = "RangeTrigger"; if (m_TriggerRange.GetComponent<BoxCollider2D>() == null) { m_TriggerRange.gameObject.AddComponent<BoxCollider2D>(); } GUI.color = Color.green; GUILayout.Label("在BoxCollider2D中设置范围"); GUI.color = Color.white; if (m_TriggerRange.transform.childCount <= 0) { GUI.color = Color.white; GUILayout.Label("隐形触发器,可添加item子结点成为可视"); GUI.color = Color.white; } else if (m_TriggerRange.transform.childCount > 1) { GUI.color = Color.yellow; GUILayout.Label("只能添加一个item子结点"); GUI.color = Color.white; } else { if (m_BaseTrigger.transform.GetChild(0).transform.name.Contains("item_")) { GUI.color = Color.green; GUILayout.Label("可视触发器"); GUI.color = Color.white; } else { GUI.color = Color.red; GUILayout.Label("子结点需要是item"); GUI.color = Color.white; } } }
/// <summary> /// 处理范围触发器 /// </summary> /// <param name="tmp"></param> private void ProcessTriggerRange(TriggerRange tmp) { if (tmp.transform.GetComponent <BoxCollider2D>() == null) { UnityEngine.Debug.LogWarning("TriggerRange需要BoxCollider2D " + tmp.transform.name); } if (tmp.transform.childCount > 0) { tmp.m_strItemName = tmp.transform.GetChild(0).name; if (tmp.transform.childCount > 1) { UnityEngine.Debug.LogWarning("可视TriggerRange只能添加一个item子结点 " + tmp.transform.name); } if (tmp.m_strItemName.Contains("item_") == false) { UnityEngine.Debug.LogError("可视TriggerRange子结点需要是item " + tmp.transform.name); } } }
/// <summary> /// 处理范围触发器 /// </summary> /// <param name="tmp"></param> private void ProcessTriggerRange(TriggerRange tmp) { if (tmp.transform.GetComponent<BoxCollider2D>() == null) { UnityEngine.Debug.LogWarning("TriggerRange需要BoxCollider2D " + tmp.transform.name); } if (tmp.transform.childCount > 0) { tmp.m_strItemName = tmp.transform.GetChild(0).name; if (tmp.transform.childCount > 1) { UnityEngine.Debug.LogWarning("可视TriggerRange只能添加一个item子结点 " + tmp.transform.name); } if (tmp.m_strItemName.Contains("item_") == false) { UnityEngine.Debug.LogError("可视TriggerRange子结点需要是item " + tmp.transform.name); } } }