Inheritance: Object
コード例 #1
0
ファイル: R2DC_Movement.cs プロジェクト: JRSerjeant/GGJ2016
		List<CornerInfo> PrepareCornerInfos( string undoLabel ) {
			List<Transform> objs = selection.GetSelection();
			error = ADError.None;

			// load edge info & store the orginal obj position for undo  
			List<CornerInfo> cornerInfos = new List<CornerInfo>();
			foreach( Transform obj in objs ) {
				// make sure the Canvas is setup correctly
				CanvasRenderer canvasRenderer = obj.GetComponent<CanvasRenderer>();
				if( canvasRenderer != null && state.context.type != ContextType.Canvas ) {
					error = ADError.CanvasContext;
					return null;
				}

				// make sure NGUI is setup correctly
				R2DC_NGUI.NGUIState nguiState = ngui.ValidateState( obj.gameObject );
				if( nguiState == R2DC_NGUI.NGUIState.InvalidContext ) {
					error = ADError.NGUIContext;
					return null;
				}
				else if( nguiState == R2DC_NGUI.NGUIState.ReflectionError ) {
					error = ADError.NGUIReflection;
					return null;
				}

				CornerInfo cornerInfo = new CornerInfo();
				cornerInfo.transform = obj;
				Vector3[] corners = bounds.GetWorldCorners( obj, state.preferColliders );
				if( corners == null ) {
					return null;
				}
				cornerInfo.corners = corners;
				cornerInfos.Add( cornerInfo );

				Undo.RecordObject( obj.transform, undoLabel );
			}

			return cornerInfos;
		}