public void VerifyExpList()
 {
     if (expThresholdList.Count == levelCap)
     {
         return;
     }
     expThresholdList = PlayerProgression.GenerateExpTH(sumRecursively, expTHM, expTHC, levelCap);
 }
Пример #2
0
        private float DrawExpListGenerator(float startX, float startY, LevelProgressionStats stats)
        {
            EditorGUI.LabelField(new Rect(startX, startY += spaceY, width, height), "Generate Exp List:", headerStyle);

            cont = new GUIContent(" - Sum Recursively:", "");
            EditorGUI.LabelField(new Rect(startX, startY += spaceY, width, height), cont);
            stats.sumRecursively = EditorGUI.Toggle(new Rect(startX + spaceX, startY, widthS, height), stats.sumRecursively);

            cont = new GUIContent(" - Increment Rate:", "");
            EditorGUI.LabelField(new Rect(startX, startY += spaceY, width, height), cont);
            stats.expTHM = EditorGUI.DelayedFloatField(new Rect(startX + spaceX, startY, widthS, height), stats.expTHM);

            cont = new GUIContent(" - Starting Value:", "");
            EditorGUI.LabelField(new Rect(startX, startY += spaceY, width, height), cont);
            stats.expTHC = EditorGUI.DelayedIntField(new Rect(startX + spaceX, startY, widthS, height), stats.expTHC);

            if (GUI.Button(new Rect(startX + 15, startY += spaceY + 2, widthS - 5, height + 2), "Reset"))
            {
                stats.sumRecursively = stats.sumRecursively_Cached;
                stats.expTHM         = stats.expTHM_Cached;
                stats.expTHC         = stats.expTHC_Cached;
            }

            bool regenNeeded = stats.sumRecursively != stats.sumRecursively_Cached;

            regenNeeded = regenNeeded || stats.expTHM != stats.expTHM_Cached;
            regenNeeded = regenNeeded || stats.expTHC != stats.expTHC_Cached;
            regenNeeded = regenNeeded || stats.expThresholdList.Count != stats.levelCap;
            if (regenNeeded)
            {
                GUI.color = new Color(0, 1f, 1f, 1f);
            }

            if (GUI.Button(new Rect(startX + 10 + widthS, startY, spaceX + 5 - 15, height + 2), "Generate Exp"))
            {
                stats.expThresholdList = PlayerProgression.GenerateExpTH(stats.sumRecursively, stats.expTHM, stats.expTHC, stats.levelCap);

                stats.sumRecursively_Cached = stats.sumRecursively;
                stats.expTHM_Cached         = stats.expTHM;
                stats.expTHC_Cached         = stats.expTHC;
            }

            string textRS = stats.sumRecursively ? "Σ(" : "";
            string textRE = stats.sumRecursively ? ")" : "";

            cont = new GUIContent("exp = " + textRS + "(" + stats.expTHM + "*lvl)+" + stats.expTHC + textRE, "The formula used to generate current exp list");
            //cont=new GUIContent(" - Starting Value:", "");
            EditorGUI.LabelField(new Rect(startX + spaceX + width - 80, startY, width * 2, height), cont);

            GUI.color = Color.white;

            return(startY);
        }
Пример #3
0
        private float DrawExpListGenerator(float startX, float startY, LevelProgressionStats stats)
        {
            EditorGUI.LabelField(new Rect(startX, startY += spaceY, width, height), "Generate Exp List:", headerStyle);

            cont = new GUIContent(" - Sum Recursively:", "");
            EditorGUI.LabelField(new Rect(startX, startY += spaceY, width, height), cont);
            sumRecursively = EditorGUI.Toggle(new Rect(startX + spaceX, startY, widthS, height), sumRecursively);

            cont = new GUIContent(" - Increment Rate:", "");
            EditorGUI.LabelField(new Rect(startX, startY += spaceY, width, height), cont);
            expTHM = EditorGUI.FloatField(new Rect(startX + spaceX, startY, widthS, height), expTHM);

            cont = new GUIContent(" - Starting Value:", "");
            EditorGUI.LabelField(new Rect(startX, startY += spaceY, width, height), cont);
            expTHC = EditorGUI.IntField(new Rect(startX + spaceX, startY, widthS, height), expTHC);

            if (stats.expThresholdList.Count != stats.levelCap)
            {
                GUI.color = new Color(0, 1f, 1f, 1f);
            }

            if (GUI.Button(new Rect(startX + 15, startY += spaceY + 2, spaceX + widthS - 15, height + 2), "Generate Exp"))
            {
                stats.expThresholdList = PlayerProgression.GenerateExpTH(sumRecursively, expTHM, expTHC, stats.levelCap);

                stats.sumRecursively = sumRecursively;
                stats.expTHM         = expTHM;
                stats.expTHC         = expTHC;
            }

            //public float expTHM=1.5f;
            //public int expTHC=10;

            string textRS = stats.sumRecursively ? "Σ(" : "";
            string textRE = stats.sumRecursively ? ")" : "";

            cont = new GUIContent("exp = " + textRS + "(" + stats.expTHM + "*lvl)+" + stats.expTHC + textRE, "The formula used to generate current exp list");
            //cont=new GUIContent(" - Starting Value:", "");
            EditorGUI.LabelField(new Rect(startX + spaceX + width - 80, startY, width * 2, height), cont);

            GUI.color = Color.white;

            return(startY);
        }