Inheritance: Resource
コード例 #1
0
		public override bool Convert(ConvertOperation convert)
		{
			bool finishConvertOp = false;

			if (convert.Data.ContainsGameObjectRefs())
			{
				GameObject[] draggedObjArray = convert.Data.GetGameObjectRefs();

				// Filter out GameObjects that are children of others
				draggedObjArray = draggedObjArray.Where(o => !draggedObjArray.Any(o2 => o.IsChildOf(o2))).ToArray();

				// Generate Prefabs
				foreach (GameObject draggedObj in draggedObjArray)
				{
					if (convert.IsObjectHandled(draggedObj)) continue;

					// Create Prefab
					Prefab prefab = new Prefab(draggedObj);

					// Add a name hint that may be used as indicator to select a Resource name later
					prefab.AssetInfo = new AssetInfo();
					prefab.AssetInfo.NameHint = draggedObj.Name;

					// Mark GameObject as handled
					convert.MarkObjectHandled(draggedObj);						
					convert.AddResult(prefab);
					finishConvertOp = true;
				}
			}

			return finishConvertOp;
		}
コード例 #2
0
        public void When_a_non_script_resource_is_deleted_Then_dont_run()
        {
            var logCountBeforeRunning = Log.LogData.Data.Count();

            var resource = new Prefab();
            resource.Save("test.prefab.res");
            var eventArgs = new ResourceEventArgs("test.prefab.res");

            _scriptResourceEvents.OnResourceDeleting(this, eventArgs);

            Assert.AreEqual(logCountBeforeRunning, Log.LogData.Data.Count());
        }
コード例 #3
0
ファイル: Hue.cs プロジェクト: CinnamonBagels/HUEWGJ2014
 public void OnInit(Component.InitContext context)
 {
     // 1. Retrieve
     ContentRef<Prefab> blockPrefabReference = GameRes.Data.Block_Prefab;
     blockPrefab = blockPrefabReference.Res;
 }
コード例 #4
0
		private void ActionPrefabOpenRes(Prefab prefab)
		{
			try
			{
				CreateGameObjectAction undoRedoAction = new CreateGameObjectAction(null, prefab.Instantiate());
				UndoRedoManager.Do(undoRedoAction);
				DualityEditorApp.Select(this, new ObjectSelection(undoRedoAction.Result));
			}
			catch (Exception exception)
			{
				Log.Editor.WriteError("An error occurred instanciating Prefab {1}: {0}", 
					Log.Exception(exception),
					prefab != null ? prefab.Path : "null");
			}
		}
コード例 #5
0
        public void When_a_non_script_resource_is_renamed_Then_dont_throw()
        {
            var resource = new Prefab();
            resource.Save("test.prefab.res");
            var eventArgs = new ResourceRenamedEventArgs("test2.prefab.res", "test.prefab.res");

            Assert.DoesNotThrow(() => _scriptResourceEvents.OnResourceRenamed(this, eventArgs));
        }