コード例 #1
0
ファイル: NestedPrefab.cs プロジェクト: bmjoy/Framework-1
 public void PlacePrefab()
 {
     for (int p = 0; p < _prefabs.Count; p++)
     {
         var pos = transform.TransformPoint(_prefabs[p].RootPosition);
         //if (dungeon != null) {
         //    var gridPosition = MathUtils.ToIntVector(pos);
         //    if (dungeon.Model.GetGridCellLookup(gridPosition.x, gridPosition.z).ContainsDoor) {
         //        continue;
         //    }
         //}
         for (int c = 0; c < _prefabs[p].ChildPositions.Length; c++)
         {
             var newPrefab = ItemPool.Spawn(_prefabs[p].Prefab, pos + _prefabs[p].ChildPositions[c],
                                            Quaternion.Euler(_prefabs[p].Rotation), true, true);
             var nested = newPrefab.GetComponent <NestedPrefab>();
             if (nested != null)
             {
                 nested.transform.localScale = Vector3.one;
                 nested.PlacePrefab();
                 ItemPool.Despawn(nested.gameObject);
             }
         }
     }
 }