public override void OnInspectorGUI() { serializedObject.Update(); script = target as FilledRenderer3D; if (MadGUI.Foldout("Textures", true)) { MadGUI.BeginBox(); FieldBackgroundTextures(); EditorGUILayout.PropertyField(textureBar, new GUIContent("Bar Texture")); CheckTextureIsReadable(script.textureBar); CheckTextureFilterTypeNotPoint(script.textureBar); FieldForegroundTextures(); FieldPremultipliedAlpha(); MadGUI.EndBox(); } if (showPositionAndSize && MadGUI.Foldout("Position & Size", true)) { MadGUI.BeginBox(); if (MadGUI.Button("Make Pixel-Perfect")) { script.transform.localPosition = MadMath.Round(script.transform.localPosition); script.transform.localScale = new Vector3(1, 1, 1); EditorUtility.SetDirty(script); } if (!IsAnchored()) { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Anchor"); if (GUILayout.Button("Create")) { CreateAnchor(); } EditorGUILayout.EndHorizontal(); } else { var anchor = GetAnchor(); var serAnchor = new SerializedObject(anchor); MadAnchorInspector.DrawInspector(serAnchor); } EditorGUI.BeginChangeCheck(); script.pivot = (EnergyBar3DBase.Pivot) EditorGUILayout.EnumPopup("Pivot Point", script.pivot); if (EditorGUI.EndChangeCheck()) { EditorUtility.SetDirty(script); } MadGUI.PropertyField(guiDepth, "GUI Depth"); MadGUI.EndBox(); } if (MadGUI.Foldout("Appearance", false)) { MadGUI.BeginBox(); var dir = (EnergyBarRenderer.GrowDirection) growDirection.enumValueIndex; if (dir == EnergyBarRenderer.GrowDirection.ColorChange) { GUI.enabled = false; } EditorGUILayout.PropertyField(textureBarColorType, new GUIContent("Bar Color Type")); EditorGUI.indentLevel++; switch ((EnergyBarRenderer.ColorType)textureBarColorType.enumValueIndex) { case EnergyBarRenderer.ColorType.Solid: EditorGUILayout.PropertyField(textureBarColor, new GUIContent("Bar Color")); break; case EnergyBarRenderer.ColorType.Gradient: EditorGUILayout.PropertyField(textureBarGradient, new GUIContent("Bar Gradient")); break; } EditorGUI.indentLevel--; GUI.enabled = true; EditorGUILayout.PropertyField(growDirection, new GUIContent("Grow Direction")); if (dir == EnergyBarRenderer.GrowDirection.RadialCW || dir == EnergyBarRenderer.GrowDirection.RadialCCW) { MadGUI.Indent(() => { EditorGUILayout.Slider(radialOffset, -1, 1, "Offset"); EditorGUILayout.Slider(radialLength, 0, 1, "Length"); }); } else if (dir == EnergyBarRenderer.GrowDirection.ColorChange) { EditorGUILayout.PropertyField(textureBarGradient, new GUIContent("Bar Gradient")); } FieldLabel(); MadGUI.EndBox(); } if (MadGUI.Foldout("Effects", false)) { MadGUI.BeginBox(); FieldSmoothEffect(); MadGUI.PropertyFieldToggleGroup2(effectBurn, "Burn Out", () => { MadGUI.Indent(() => { MadGUI.PropertyField(effectBurnTextureBar, "Burn Texture Bar"); MadGUI.PropertyField(effectBurnTextureBarColor, "Burn Color"); }); }); MadGUI.PropertyFieldToggleGroup2(effectBlink, "Blink", () => { MadGUI.Indent(() => { MadGUI.PropertyField(effectBlinkValue, "Value"); MadGUI.PropertyField(effectBlinkRatePerSecond, "Rate (per second)"); MadGUI.PropertyField(effectBlinkColor, "Color"); }); }); MadGUI.PropertyFieldToggleGroup2(effectFollow, "Sprite Follow", () => { MadGUI.Indent(() => { if (GUI.enabled && !GrowDirectionSupportedByFollowEffect()) { MadGUI.Error("This effect cannot be used with selected grow direction. " + "Please read manual for more information."); } MadGUI.PropertyField(effectFollowObject, "Texture or GameObject", "This can be Texture, MadSprite or any other GameObject."); if (!VerifyFollowObject()) { MadGUI.Error("You can put here only Texture2D or GameObject."); } MadGUI.PropertyField(effectFollowColor, "Color"); MadGUI.PropertyField(effectFollowRotation, "Rotation"); if (MadGUI.Foldout("Scale", false)) { MadGUI.Indent(() => { MadGUI.PropertyField(effectFollowScaleX, "X"); MadGUI.PropertyField(effectFollowScaleY, "Y"); MadGUI.PropertyField(effectFollowScaleZ, "Z"); }); } }); }); MadGUI.EndBox(); } EditorGUILayout.Space(); serializedObject.ApplyModifiedProperties(); }
public override void OnInspectorGUI() { ClearActionQueue(); serializedObject.Update(); var t = target as EnergyBarTransformRenderer; if (MadGUI.Foldout("Textures", true)) { MadGUI.BeginBox(); FieldBackgroundTextures(); MadGUI.Indent(() => { EditorGUILayout.LabelField("Object Texture"); GUITexture(textureObjectTexture, textureObjectColor); MadGUI.PropertyFieldVector2(transformAnchor, "Texture Anchor"); }); EditorGUILayout.Space(); CheckTextureIsReadable(t.textureObject.texture); CheckTextureFilterTypeNotPoint(t.textureObject.texture); FieldForegroundTextures(); FieldPremultipliedAlpha(); MadGUI.EndBox(); } if (MadGUI.Foldout("Position & Size", true)) { MadGUI.BeginBox(); MadGUI.PropertyFieldVector2(screenPosition, "Position"); EditorGUI.indentLevel++; PropertySpecialNormalized(screenPosition, screenPositionNormalized); MadGUI.PropertyField(pivot, "Pivot"); MadGUI.PropertyField(anchorObject, "Anchor"); MadGUI.PropertyField(anchorCamera, "Anchor Camera", "Camera on which world coordinates will be translated to " + "screen coordinates."); EditorGUI.indentLevel--; MadGUI.PropertyField(guiDepth, "GUI Depth"); PropertySpecialResizeMode(size, resizeMode); FieldRelativeToTransform(); MadGUI.EndBox(); } if (MadGUI.Foldout("Object Transform", true)) { MadGUI.BeginBox(); MadGUI.PropertyFieldToggleGroup2(transformTranslate, "Translate", () => { MadGUI.Indent(() => { MadGUI.PropertyFieldVector2(translateFunctionStart, "Start Point"); MadGUI.PropertyFieldVector2(translateFunctionEnd, "End Point"); }); }); MadGUI.PropertyFieldToggleGroup2(transformRotate, "Rotate", () => { MadGUI.Indent(() => { MadGUI.PropertyField(rotateFunctionStart, "Start Angle"); MadGUI.PropertyField(rotateFunctionEnd, "End Angle"); }); }); MadGUI.PropertyFieldToggleGroup2(transformScale, "Scale", () => { MadGUI.Indent(() => { MadGUI.PropertyFieldVector2(scaleFunctionStart, "Start Scale"); MadGUI.PropertyFieldVector2(scaleFunctionEnd, "End Scale"); }); }); MadGUI.EndBox(); } if (MadGUI.Foldout("Appearance", false)) { MadGUI.BeginBox(); FieldLabel(); MadGUI.EndBox(); } serializedObject.ApplyModifiedProperties(); ExecuteActionQueue(); }
public override void OnInspectorGUI() { ClearActionQueue(); serializedObject.Update(); var t = target as EnergyBarSequenceRenderer; if (MadGUI.Foldout("Textures", true)) { MadGUI.BeginBox(); EditorGUILayout.PropertyField(method, new GUIContent("Render Method")); switch ((EnergyBarSequenceRenderer.Method)method.enumValueIndex) { case EnergyBarSequenceRenderer.Method.Grid: OnGUIGrid(); break; case EnergyBarSequenceRenderer.Method.Sequence: PropertyFieldWithChildren("sequence"); break; } MadGUI.PropertyField(color, "Color Tint"); FieldBackgroundTextures(); FieldForegroundTextures(); FieldPremultipliedAlpha(); MadGUI.EndBox(); } if (MadGUI.Foldout("Position & Size", true)) { MadGUI.BeginBox(); MadGUI.PropertyFieldVector2(position, "Position"); EditorGUI.indentLevel++; PropertySpecialNormalized(position, positionNormalized); MadGUI.PropertyField(pivot, "Pivot"); MadGUI.PropertyField(anchorObject, "Anchor"); EditorGUI.indentLevel--; MadGUI.PropertyField(guiDepth, "GUI Depth"); PropertySpecialResizeMode(size, resizeMode); FieldRelativeToTransform(); MadGUI.EndBox(); } if (MadGUI.Foldout("Appearance", false)) { MadGUI.BeginBox(); FieldLabel(); MadGUI.EndBox(); } if (MadGUI.Foldout("Effects", false)) { MadGUI.BeginBox(); FieldSmoothEffect(); MadGUI.EndBox(); } serializedObject.ApplyModifiedProperties(); ExecuteActionQueue(); EditorGUILayout.PrefixLabel("Preview:"); MadGUI.BeginBox(); { var rect = EditorGUILayout.BeginVertical(); GUILayout.Space(100); if (t.IsValid()) { Rect texCoords; var texture = t.GetTexture(out texCoords); if (texture != null) { GUI.DrawTextureWithTexCoords(PreserveAspect(rect), texture, texCoords); } } EditorGUILayout.EndVertical(); } MadGUI.EndBox(); }
public override void OnInspectorGUI() { ClearActionQueue(); serializedObject.Update(); var t = target as EnergyBarRenderer; if (MadGUI.Foldout("Textures", true)) { MadGUI.BeginBox(); FieldBackgroundTextures(); EditorGUILayout.PropertyField(textureBar, new GUIContent("Bar Texture")); CheckTextureIsReadable(t.textureBar); CheckTextureFilterTypeNotPoint(t.textureBar); FieldForegroundTextures(); FieldPremultipliedAlpha(); MadGUI.EndBox(); } if (MadGUI.Foldout("Position & Size", true)) { MadGUI.BeginBox(); MadGUI.PropertyFieldVector2(screenPosition, "Position"); EditorGUI.indentLevel++; PropertySpecialNormalized(screenPosition, screenPositionNormalized); MadGUI.PropertyField(pivot, "Pivot"); MadGUI.PropertyField(anchorObject, "Anchor"); MadGUI.PropertyField(anchorCamera, "Anchor Camera", "Camera on which world coordinates will be translated to " + "screen coordinates."); EditorGUI.indentLevel--; MadGUI.PropertyField(guiDepth, "GUI Depth"); PropertySpecialResizeMode(size, resizeMode); FieldRelativeToTransform(); MadGUI.EndBox(); } if (MadGUI.Foldout("Appearance", false)) { MadGUI.BeginBox(); var dir = (EnergyBarRenderer.GrowDirection)growDirection.enumValueIndex; if (dir == EnergyBarRenderer.GrowDirection.ColorChange) { GUI.enabled = false; } EditorGUILayout.PropertyField(textureBarColorType, new GUIContent("Bar Color Type")); EditorGUI.indentLevel++; switch ((EnergyBarRenderer.ColorType)textureBarColorType.enumValueIndex) { case EnergyBarRenderer.ColorType.Solid: EditorGUILayout.PropertyField(textureBarColor, new GUIContent("Bar Color")); break; case EnergyBarRenderer.ColorType.Gradient: EditorGUILayout.PropertyField(textureBarGradient, new GUIContent("Bar Gradient")); break; } EditorGUI.indentLevel--; GUI.enabled = true; EditorGUILayout.PropertyField(growDirection, new GUIContent("Grow Direction")); if (dir == EnergyBarRenderer.GrowDirection.RadialCW || dir == EnergyBarRenderer.GrowDirection.RadialCCW) { MadGUI.Indent(() => { EditorGUILayout.Slider(radialOffset, -1, 1, "Offset"); EditorGUILayout.Slider(radialLength, 0, 1, "Length"); }); } else if (dir == EnergyBarRenderer.GrowDirection.ColorChange) { EditorGUILayout.PropertyField(textureBarGradient, new GUIContent("Bar Gradient")); } FieldLabel(); MadGUI.EndBox(); } if (MadGUI.Foldout("Effects", false)) { MadGUI.BeginBox(); FieldSmoothEffect(); MadGUI.PropertyFieldToggleGroup2(effectBurn, "Burn Out Effect", () => { MadGUI.Indent(() => { MadGUI.PropertyField(effectBurnTextureBar, "Burn Texture Bar"); MadGUI.PropertyField(effectBurnTextureBarColor, "Burn Color"); }); }); MadGUI.PropertyFieldToggleGroup2(effectBlink, "Blink Effect", () => { MadGUI.Indent(() => { MadGUI.PropertyField(effectBlinkValue, "Value"); MadGUI.PropertyField(effectBlinkRatePerSecond, "Rate (per second)"); MadGUI.PropertyField(effectBlinkColor, "Color"); }); }); #if MAD_DEBUG MadGUI.PropertyFieldToggleGroup2(effectEdge, "Edge Effect", () => { MadGUI.Indent(() => { MadGUI.PropertyField(effectEdgeTexture, "Edge Texture"); MadGUI.PropertyField(effectEdgeIn, "Fade In Buffer"); MadGUI.PropertyField(effectEdgeOut, "Fade Out Buffer"); MadGUI.PropertyField(effectEdgeRotateAngle, "Rotation"); }); }); #endif MadGUI.EndBox(); } EditorGUILayout.Space(); serializedObject.ApplyModifiedProperties(); ExecuteActionQueue(); }
override public void OnInspectorGUI() { serializedObject.Update(); valueCurrent.intValue = (int)EditorGUILayout.Slider("Current Value", valueCurrent.intValue, valueMin.intValue, valueMax.intValue); MadGUI.PropertyField(valueMin, "Min Value"); MadGUI.PropertyField(valueMax, "Max Value"); int fillDirectionPrev = fillDirection.enumValueIndex; MadGUI.PropertyField(fillDirection, "Fill Direction"); if (fillDirectionPrev != fillDirection.enumValueIndex) { SetFillDirection((UISprite.FillDirection)fillDirection.enumValueIndex, fillDirectionInvert.boolValue); } bool invertFillPrev = fillDirectionInvert.boolValue; MadGUI.PropertyField(fillDirectionInvert, "Invert Fill"); if (invertFillPrev != fillDirectionInvert.boolValue) { SetFillDirection((UISprite.FillDirection)fillDirection.enumValueIndex, fillDirectionInvert.boolValue); } MadGUI.PropertyField(colorType, "Bar Color Type"); switch ((UIFillProgressBar.ColorType)colorType.enumValueIndex) { case UIFillProgressBar.ColorType.Solid: t.bar.color = EditorGUILayout.ColorField("Bar Color", t.bar.color); EditorUtility.SetDirty(t.bar); break; case UIFillProgressBar.ColorType.Gradient: MadGUI.PropertyField(colorGradient, "Bar Color Gradient"); break; default: Debug.LogError("unknown option: " + colorType.enumValueIndex); break; } if (MadGUI.Foldout("Position", true)) { MadGUI.BeginBox(); { MadGUI.PropertyField(anchorObject, "Anchor", "Object to attach to"); MadGUI.PropertyField(anchorCamera, "Anchor Camera", "Camera on which anchored object is visible"); MadGUI.PropertyField(anchor3d, "Anchor 3D", "If enabled bar will be positioned in real 3D position. Useful when Using 3D interface in NGUI."); MadGUI.PropertyFieldVector2(anchorOffset, "Anchor Offset"); } MadGUI.EndBox(); } if (MadGUI.Foldout("Effects", true)) { MadGUI.BeginBox(); { FieldSmoothEffect(); bool burnEnabledPrev = effectBurn.boolValue; MadGUI.PropertyFieldToggleGroup2(effectBurn, "Burn Out Effect", () => { MadGUI.Indent(() => { if (burnEnabledPrev != effectBurn.boolValue) { SetBurnEffect(effectBurn.boolValue); } if (effectBurn.boolValue) { ((UISprite)effectBurnBar.objectReferenceValue).color = EditorGUILayout.ColorField("Burn Color", ((UISprite)effectBurnBar.objectReferenceValue).color); } }); }); MadGUI.PropertyFieldToggleGroup2(effectBlink, "Blink Effect", () => { MadGUI.Indent(() => { MadGUI.PropertyField(effectBlinkValue, "Value"); MadGUI.PropertyField(effectBlinkRatePerSecond, "Rate (per second)"); MadGUI.PropertyField(effectBlinkColor, "Color"); }); }); } MadGUI.EndBox(); } serializedObject.ApplyModifiedProperties(); }
public override void OnInspectorGUI() { ClearActionQueue(); serializedObject.Update(); if (MadGUI.Foldout("Textures", true)) { MadGUI.BeginBox(); MadGUI.PropertyField(repeatCount, "Repeat Count"); MadGUI.PropertyField(icon, "Icon"); CheckTextureIsGUI(icon.objectReferenceValue as Texture2D); CheckTextureFilterTypeNotPoint(icon.objectReferenceValue as Texture2D); MadGUI.Indent(() => { MadGUI.PropertyField(iconColor, "Icon Tint"); }); MadGUI.PropertyField(iconSlot, "Slot Icon"); CheckTextureIsGUI(iconSlot.objectReferenceValue as Texture2D); CheckTextureFilterTypeNotPoint(iconSlot.objectReferenceValue as Texture2D); MadGUI.Indent(() => { MadGUI.PropertyField(iconSlotColor, "Slot Icon Tint"); }); FieldPremultipliedAlpha(); MadGUI.EndBox(); } if (MadGUI.Foldout("Position & Size", true)) { MadGUI.BeginBox(); MadGUI.PropertyFieldVector2(startPosition, "Start Position"); EditorGUI.indentLevel++; PropertySpecialNormalized(startPosition, startPositionNormalized); MadGUI.PropertyField(pivot, "Pivot"); MadGUI.PropertyField(anchorObject, "Anchor"); EditorGUI.indentLevel--; MadGUI.PropertyField(guiDepth, "GUI Depth"); PropertySpecialResizeMode(iconSize, resizeMode, "Icon "); // switch ((EnergyBarOnGUIBase.ResizeMode) resizeMode.enumValueIndex) { // case EnergyBarOnGUIBase.ResizeMode.Constant: // PropertyFieldToggleGroupInv2(iconSizeCalculate, "Manual Size", () => { // Indent(() => { // PropertyFieldVector2(iconSize, "Icon Size"); // }); // }); // break; // // case EnergyBarOnGUIBase.ResizeMode.Stretch: // PropertyFieldVector2(iconSize, "Icon Size"); // break; // // case EnergyBarOnGUIBase.ResizeMode.KeepRatio: // EditorGUI.BeginChangeCheck(); // // float y = EditorGUILayout.FloatField("Icon Height", iconSize.vector2Value.y); // if (EditorGUI.EndChangeCheck()) { // var vec = new Vector2(iconSize.vector2Value.x, y); // iconSize.vector2Value = vec; // } // break; // } MadGUI.PropertyFieldVector2(positionDelta, "Icons Distance"); FieldRelativeToTransform(); MadGUI.EndBox(); } if (MadGUI.Foldout("Appearance", false)) { MadGUI.BeginBox(); FieldLabel(); MadGUI.EndBox(); } if (MadGUI.Foldout("Effects", false)) { MadGUI.BeginBox(); MadGUI.PropertyField(effect, "Grow Effect"); if (effect.enumValueIndex == (int)EnergyBarRepeatRenderer.Effect.Cut) { MadGUI.PropertyField(cutDirection, "Cut Direction"); } FieldSmoothEffect(); MadGUI.EndBox(); } serializedObject.ApplyModifiedProperties(); ExecuteActionQueue(); }
public override void OnInspectorGUI() { serializedObject.Update(); var t = target as RepeatedRenderer3D; if (MadGUI.Foldout("Textures", true)) { MadGUI.BeginBox(); EditorGUILayout.BeginHorizontal(); MadGUI.PropertyField(textureIcon, "Icon"); EditorGUILayout.PropertyField(tintIcon, new GUIContent(""), new GUILayoutOption[] { GUILayout.Width(50) }); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); MadGUI.PropertyField(textureSlot, "Slot"); EditorGUILayout.PropertyField(tintSlot, new GUIContent(""), new GUILayoutOption[] { GUILayout.Width(50) }); EditorGUILayout.EndHorizontal(); CheckTextureIsReadable(t.textureIcon); CheckTextureIsReadable(t.textureSlot); MadGUI.EndBox(); } if (showPositionAndSize && MadGUI.Foldout("Position & Size", true)) { MadGUI.BeginBox(); if (MadGUI.Button("Make Pixel-Perfect")) { t.transform.localPosition = MadMath.Round(t.transform.localPosition); t.transform.localScale = new Vector3(1, 1, 1); EditorUtility.SetDirty(t); } if (!IsAnchored()) { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Anchor"); if (GUILayout.Button("Create")) { CreateAnchor(); } EditorGUILayout.EndHorizontal(); } else { var anchor = GetAnchor(); var serAnchor = new SerializedObject(anchor); MadAnchorInspector.DrawInspector(serAnchor); } EditorGUI.BeginChangeCheck(); t.pivot = (EnergyBar3DBase.Pivot) EditorGUILayout.EnumPopup("Pivot Point", t.pivot); if (EditorGUI.EndChangeCheck()) { EditorUtility.SetDirty(t); } MadGUI.PropertyField(guiDepth, "GUI Depth"); MadGUI.EndBox(); } if (MadGUI.Foldout("Appearance", false)) { MadGUI.BeginBox(); MadGUI.PropertyField(repeatCount, "Repeat Count"); MadGUI.PropertyFieldVector2(repeatPositionDelta, "Icon Distance"); MadGUI.PropertyField(growType, "Grow Type"); MadGUI.ConditionallyEnabled(growType.enumValueIndex == (int) RepeatedRenderer3D.GrowType.Fill, () => { MadGUI.PropertyField(fillDirection, "Fill Direction"); }); FieldLabel(); MadGUI.EndBox(); } if (MadGUI.Foldout("Effects", false)) { MadGUI.BeginBox(); FieldSmoothEffect(); MadGUI.EndBox(); } EditorGUILayout.Space(); serializedObject.ApplyModifiedProperties(); }