コード例 #1
0
 public static RepeatedRenderer3D Create(MadPanel panel) {
     var bar = MadTransform.CreateChild<RepeatedRenderer3D>(panel.transform, "repeat progress bar");
     TryApplyExampleTextures(bar);
     Selection.activeObject = bar.gameObject;
     
     return bar;
 }
コード例 #2
0
 public static RepeatedRenderer3D Create(MadPanel panel) {
     var bar = MadTransform.CreateChild<RepeatedRenderer3D>(panel.transform, "repeat progress bar");
     TryApplyExampleTextures(bar);
     Selection.activeObject = bar.gameObject;
     
     return bar;
 }
コード例 #3
0
        void OnGUI() {
            MadGUI.Info("There's more than one Panel on the scene. Please set the one that you want to create the bar on.");

            panel = EditorGUILayout.ObjectField("Panel", panel, typeof(MadPanel), true) as MadPanel;
            barType = (EnergyBar3DBase.BarType) EditorGUILayout.EnumPopup("Bar Type", barType);

            GUI.enabled = panel != null;
            if (MadGUI.Button("Create", Color.green)) {
                EnergyBarUtils.Create3DBar(barType, panel);
                Close();
            }
            GUI.enabled = true;
        }
コード例 #4
0
ファイル: CreateMeshBarTool.cs プロジェクト: poup/ankagaja
        void OnGUI()
        {
            MadGUI.Info("There's more than one Panel on the scene. Please set the one that you want to create the bar on.");

            panel   = EditorGUILayout.ObjectField("Panel", panel, typeof(MadPanel), true) as MadPanel;
            barType = (EnergyBar3DBase.BarType)EditorGUILayout.EnumPopup("Bar Type", barType);

            GUI.enabled = panel != null;
            if (MadGUI.Button("Create", Color.green))
            {
                EnergyBarUtils.Create3DBar(barType, panel);
                Close();
            }
            GUI.enabled = true;
        }
コード例 #5
0
 public static EnergyBar3DBase Create3DBar(EnergyBar3DBase.BarType type, MadPanel panel) {
     switch (type) {
         case EnergyBar3DBase.BarType.Filled:
             return FilledRenderer3DBuilder.Create(panel);
         case EnergyBar3DBase.BarType.Repeated:
             return RepeatRenderer3DBuilder.Create(panel);
         case EnergyBar3DBase.BarType.Sequence:
             return SequenceRenderer3DBuilder.Create(panel);
         case EnergyBar3DBase.BarType.Transform:
             return TransformRenderer3DBuilder.Create(panel);
         default:
             Debug.LogError("Unknown bar type: " + type);
             return null;
     }
         
 }
コード例 #6
0
 // ===========================================================
 // Static Methods
 // ===========================================================
 
 public static void CreateWizard() {
     var panel = MadPanel.UniqueOrNull();
     
     if (panel == null) {
         if (EditorUtility.DisplayDialog(
             "Init Scene?",
             "Scene not initialized for 3D bars. You cannot place new bar without proper initialization. Do it now?",
             "Yes", "No")) {
             MadInitTool.ShowWindow();
             return;
         }
         
         panel = MadPanel.UniqueOrNull();
     }
 
     var wizard = ScriptableWizard.DisplayWizard<FillRenderer3DTool>("Create Fill Renderer 3D", "Create");
     wizard.panel = MadPanel.UniqueOrNull();
     wizard.CheckValid();
 }
コード例 #7
0
    // ===========================================================
    // Constants
    // ===========================================================

    // ===========================================================
    // Methods
    // ===========================================================

    public static EnergyBar3DBase Create3DBar(EnergyBar3DBase.BarType type) {
        var panel = MadPanel.UniqueOrNull();
        if (panel == null) {
            EditorUtility.DisplayDialog("Not Initialized", "You have to initialize EBT first", "OK");
            MadInitTool.ShowWindow();
            return null;
        } else {
            switch (type) {
                case EnergyBar3DBase.BarType.Filled:
                    return FillRenderer3DBuilder.Create();
                case EnergyBar3DBase.BarType.Repeated:
                    return RepeatRenderer3DBuilder.Create();
                default:
                    Debug.LogError("Unknown bar type: " + type);
                    return null;
            }
            
        }
    }
コード例 #8
0
ファイル: MenuItems.cs プロジェクト: hagura/unity_chiruno04
 static Transform ActiveParentOrPanel() {
     Transform parentTransform = null;
     
     var transforms = Selection.transforms;
     if (transforms.Length > 0) {
         var firstTransform = transforms[0];
         if (MadTransform.FindParent<MadPanel>(firstTransform) != null) {
             parentTransform = firstTransform;
         }
     }
     
     if (parentTransform == null) {
         var panel = MadPanel.UniqueOrNull();
         if (panel != null) {
             parentTransform = panel.transform;
         }
     }
     
     return parentTransform;
 }
コード例 #9
0
    // ===========================================================
    // Static Methods
    // ===========================================================

    public static RepeatedRenderer3D Create() {
        var panel = MadPanel.UniqueOrNull();

        if (panel == null) {
            var panels = MadPanel.All();
            if (panels.Length == 0) {
                if (EditorUtility.DisplayDialog(
                "Init Scene?",
                "Scene not initialized for 3D bars. You cannot place new bar without proper initialization. Do it now?",
                "Yes", "No")) {
                    MadInitTool.ShowWindow();
                }
            } else {
                CreateMeshBarTool.ShowWindow(EnergyBar3DBase.BarType.Repeated);
            }

            return null;
        } else {
            return Create(panel);
        }
    }
コード例 #10
0
 // ===========================================================
 // Static Methods
 // ===========================================================
 
 public static FilledRenderer3D Create() {
     var panel = MadPanel.UniqueOrNull();
     
     if (panel == null) {
         if (EditorUtility.DisplayDialog(
             "Init Scene?",
             "Scene not initialized for 3D bars. You cannot place new bar without proper initialization. Do it now?",
             "Yes", "No")) {
             MadInitTool.ShowWindow();
             return null;
         }
         
         panel = MadPanel.UniqueOrNull();
     }
 
     var bar = MadTransform.CreateChild<FilledRenderer3D>(panel.transform, "fill progress bar");
     TryApplyExampleTextures(bar);
     Selection.activeObject = bar.gameObject;
     
     return bar;
 }
コード例 #11
0
    private void ReconnectPanelIfNeeded(bool firstTime) {
        if (panel == null) {
            panel = MadPanel.FirstOrNull(transform);
            if (panel == null && firstTime) {
                Debug.LogError("You have to initialize scene first! Please execute Tools -> Energy Bar Toolkit -> Initialize");
            } else {
                // check if now I am under the panel
                var topPanel = MadTransform.FindParent<MadPanel>(transform);
                bool nowUnderThePanel = topPanel == panel;

                // new scale should be applied if location of bar relative to panel has changed
                if (nowUnderThePanel && !underThePanel) {
                    // now is under the panel, but wasn't before
                    transform.localScale /= panel.transform.lossyScale.x;
                } else if (!nowUnderThePanel && underThePanel) {
                    // was under the panel before, now it isn't
                    transform.localScale *= panel.transform.lossyScale.x;
                }

                underThePanel = nowUnderThePanel;
            }
        }
    }