Example #1
0
    void OnEndPage(AdvPage page)
    {
        if (page.CurrentData.IsEmptyText)
        {
            return;
        }
        AdvBacklog log = page.Engine.BacklogManager.LastLog;

        if (log == null)
        {
            return;
        }

        if (itemPrefab == null || targetRoot == null)
        {
            Debug.LogError("itemPrefab or targetRoot is null");
            return;
        }
        if (logs.Count > 0 && logs.Count >= maxLog)
        {
            GameObject.Destroy(logs[0]);
            logs.RemoveAt(0);
        }
        GameObject go = targetRoot.AddChildPrefab(itemPrefab);

        go.SendMessage("OnInitData", log);
        go.transform.SetSiblingIndex(1);
        logs.Add(go);
    }
        /// <summary>
        /// 指定のコンポーネントつきのGameObjectを子オブジェトの先頭からコピーして指定の数になるように追加
        /// </summary>
        /// <typeparam name="T">コンポーネントの型</typeparam>
        /// <param name="count">子の数</param>
        public static void InitCloneChildren <T>(this Transform t, int count) where T : Component
        {
            //今ある子
            T[] chidlren = t.GetComponentsInChildren <T>(true);
            int addCount = Mathf.Max(0, count - chidlren.Length);

            for (int i = 0; i < addCount; ++i)
            {
                t.AddChildPrefab(chidlren[0].gameObject);
            }
        }
Example #3
0
        /// <summary>
        /// 指定のコンポーネントつきのGameObjectを子オブジェトの先頭からコピーして指定の数になるように追加
        /// </summary>
        /// <typeparam name="T">コンポーネントの型</typeparam>
        /// <param name="count">子の数</param>
        public static void InitCloneChildren <T>(this Transform t, int count) where T : Component
        {
            //今ある子
            T[] chidlren = t.GetComponentsInChildren <T>(true);
            if (chidlren.Length <= 0)
            {
                Debug.LogError(typeof(T).Name + " is not under " + t.gameObject.name);
                return;
            }
            int addCount = Mathf.Max(0, count - chidlren.Length);

            for (int i = 0; i < addCount; ++i)
            {
                t.AddChildPrefab(chidlren[0].gameObject, chidlren[0].gameObject.transform.localPosition, chidlren[0].gameObject.transform.localScale);
            }
        }
Example #4
0
 /// <summary>
 /// プレハブからGameObjectを作成して子として追加する
 /// </summary>
 /// <param name="prefab">子を作成するためのプレハブ</param>
 /// <param name="localPosition">子に設定するローカル座標</param>
 /// <returns>追加済みの子</returns>
 public static GameObject AddChildPrefab(this Transform t, GameObject prefab, Vector3 localPosition)
 {
     return(t.AddChildPrefab(prefab, localPosition, Vector3.one));
 }
Example #5
0
 /// <summary>
 /// プレハブからGameObjectを作成して子として追加する
 /// </summary>
 /// <param name="prefab">子を作成するためのプレハブ</param>
 /// <returns>追加済みの子</returns>
 public static GameObject AddChildPrefab(this Transform t, GameObject prefab)
 {
     return(t.AddChildPrefab(prefab, Vector3.zero, Vector3.one));
 }
 public static GameObject AddChildPrefab(Transform parent, GameObject prefab, Vector3 localPosition, Vector3 localScale)
 {
     return(parent.AddChildPrefab(prefab, localPosition, localScale));
 }
 public static GameObject AddChildPrefab(Transform parent, GameObject prefab)
 {
     return(parent.AddChildPrefab(prefab, Vector3.get_zero(), Vector3.get_one()));
 }
Example #8
0
 public static GameObject AddChildPrefab(Transform parent, GameObject prefab)
 {
     return(parent.AddChildPrefab(prefab, Vector3.zero, Vector3.one));
 }