Example #1
0
        public void show()
        {
            GUIStyle style = GUI.skin.GetStyle("Label");

            style.alignment = TextAnchor.UpperLeft;
            style.fontSize  = GuiBase.FontSize(16);
            GUI.BeginGroup(new Rect(GuiBase.Width(290f), GuiBase.Height(110f), GuiBase.Width(660f), GuiBase.Height(480f)));
            GUI.Box(new Rect(GuiBase.Width(0f), GuiBase.Height(0f), GuiBase.Width(660f), GuiBase.Height(480f)), string.Empty);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(15f), GuiBase.Width(400f), GuiBase.Height(30f)), new GUIContent("For more in depth guides, please visit the forum"));
            if (GUI.Button(new Rect(GuiBase.Width(420f), GuiBase.Height(15f), GuiBase.Width(80f), GuiBase.Height(30f)), new GUIContent("Forum", "In the Sticky: Game Guides there are various guides for the game.")))
            {
                App.OpenWebsite("http://www.kongregate.com/forums/2874-idling-to-rule-the-gods/topics/609942-game-guides");
            }
            if (GUI.Button(new Rect(GuiBase.Width(520f), GuiBase.Height(15f), GuiBase.Width(80f), GuiBase.Height(30f)), new GUIContent("Wiki", "A wiki with info and tips about this game.")))
            {
                App.OpenWebsite("http://itrtg.wikia.com/wiki/Idling_to_Rule_the_Gods_Wiki");
            }
            TextAsset textAsset = Resources.Load("faq") as TextAsset;
            string    text      = textAsset.text;
            GUIStyle  gUIStyle  = new GUIStyle();

            gUIStyle.richText = true;
            int num = (int)style.CalcHeight(new GUIContent(text), GuiBase.Width(590f));

            this.scrollPosition = GuiBase.TouchScrollView(new Rect(GuiBase.Width(0f), GuiBase.Height(55f), GuiBase.Width(640f), GuiBase.Height(400f)), this.scrollPosition, new Rect(0f, GuiBase.Height(15f), GuiBase.Width(620f), (float)num + GuiBase.Height(60f)));
            style.fontStyle     = FontStyle.Normal;
            style.alignment     = TextAnchor.UpperLeft;
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(30f), GuiBase.Width(590f), (float)num + GuiBase.Height(60f)), text);
            GUI.EndScrollView();
            GUI.EndGroup();
        }
Example #2
0
        private void showCredits(GUIStyle labelStyle)
        {
            int      num      = 210;
            GUIStyle gUIStyle = new GUIStyle();

            gUIStyle.fontStyle        = FontStyle.Bold;
            gUIStyle.fontSize         = InfoArea.FontSize(16);
            gUIStyle.normal.textColor = Gui.MainColor;
            gUIStyle.wordWrap         = true;
            int num2 = 550;

            InfoArea.scrollPositionLeftSide = GuiBase.TouchScrollView(new Rect(InfoArea.Width(15f), InfoArea.Height((float)num), InfoArea.Width(260f), InfoArea.Height(280f)), InfoArea.scrollPositionLeftSide, new Rect(InfoArea.Width(15f), InfoArea.Height((float)num), InfoArea.Width(235f), InfoArea.Height((float)num2)));
            GUI.Label(new Rect(InfoArea.Width(35f), InfoArea.Height((float)num), InfoArea.Width(220f), InfoArea.Height(30f)), new GUIContent("Idea, Coding, Art and Story"), gUIStyle);
            num += 30;
            GUI.Label(new Rect(InfoArea.Width(35f), InfoArea.Height((float)num), InfoArea.Width(220f), InfoArea.Height(30f)), new GUIContent("Denny Stöhr"));
            num += 45;
            GUI.Label(new Rect(InfoArea.Width(35f), InfoArea.Height((float)num), InfoArea.Width(220f), InfoArea.Height(30f)), new GUIContent("Story Proofreading"), gUIStyle);
            num += 30;
            GUI.Label(new Rect(InfoArea.Width(35f), InfoArea.Height((float)num), InfoArea.Width(220f), InfoArea.Height(30f)), new GUIContent("Quizer (C1-7,13)"));
            num += 25;
            GUI.Label(new Rect(InfoArea.Width(35f), InfoArea.Height((float)num), InfoArea.Width(220f), InfoArea.Height(30f)), new GUIContent("Little Girl Blue (C8+9)"));
            num += 25;
            GUI.Label(new Rect(InfoArea.Width(35f), InfoArea.Height((float)num), InfoArea.Width(220f), InfoArea.Height(30f)), new GUIContent("Tangrid (C1-9)"));
            num += 25;
            GUI.Label(new Rect(InfoArea.Width(35f), InfoArea.Height((float)num), InfoArea.Width(220f), InfoArea.Height(30f)), new GUIContent("Ensignia (C10-13)"));
            num += 25;
            GUI.Label(new Rect(InfoArea.Width(35f), InfoArea.Height((float)num), InfoArea.Width(220f), InfoArea.Height(30f)), new GUIContent("Pom6 (C12)"));
            num += 25;
            GUI.Label(new Rect(InfoArea.Width(35f), InfoArea.Height((float)num), InfoArea.Width(220f), InfoArea.Height(30f)), new GUIContent("Timothy Chong (C14)"));
            num += 45;
            GUI.Label(new Rect(InfoArea.Width(35f), InfoArea.Height((float)num), InfoArea.Width(220f), InfoArea.Height(30f)), new GUIContent("Music"), gUIStyle);
            num += 30;
            labelStyle.alignment = TextAnchor.UpperLeft;
            GUI.Label(new Rect(InfoArea.Width(35f), InfoArea.Height((float)num), InfoArea.Width(220f), InfoArea.Height(30f)), new GUIContent("bearhack"));
            if (GUI.Button(new Rect(InfoArea.Width(130f), InfoArea.Height((float)num), InfoArea.Width(115f), InfoArea.Height(30f)), new GUIContent("SoundCloud")))
            {
                App.OpenWebsite("https://soundcloud.com/bearhack145-953728889");
            }
            num += 50;
            GUI.Label(new Rect(InfoArea.Width(35f), InfoArea.Height((float)num), InfoArea.Width(220f), InfoArea.Height(100f)), new GUIContent("Players who helped to improve the game (reported and helped to fix bugs, good ideas)"), gUIStyle);
            num += 100;
            GUI.Label(new Rect(InfoArea.Width(35f), InfoArea.Height((float)num), InfoArea.Width(220f), InfoArea.Height(150f)), new GUIContent("ArtyD42, Pom6, Little Girl Blue, Zongre, Bajablo, mnjiman, Dzugavili, Shadow543211, EuroWolf, Robstradomus, notfromearth, somethingggg, Zongre, elara85"));
            GUI.EndScrollView();
            if (GUI.Button(new Rect(InfoArea.Width(25f), InfoArea.Height(530f), InfoArea.Width(245f), InfoArea.Height(35f)), new GUIContent("Close")))
            {
                this.ShowCredits = false;
            }
        }
Example #3
0
        private void showPrivacy(GUIStyle labelStyle)
        {
            labelStyle.fontStyle = FontStyle.Bold;
            GUI.Label(new Rect(InfoArea.Width(30f), InfoArea.Height(210f), InfoArea.Width(220f), 30f), new GUIContent("Privacy"));
            labelStyle.fontStyle = FontStyle.Normal;
            string text = "\r\nThis game saves your game data to a server once every 15 minutes to back up your data. \r\nThis contains everything you see in the game and also an unique id depending on the plattform where you play it. No personal data is taken.\r\nFor Android the id from Google Play Games is used. If you didn't install Google Play Games, no backup will be made and so no data taken.\r\nIn Steam and Kongregate, the id from your login-name is used.\r\nThis game recognizes your unique id and you may get your game save back if lose it, or change your device as long as you log in with the same account and click 'Load Online' before the autosave takes place.\r\n\r\nThis game is build with Unity. \r\nUnity also Unity collects error reports and also some data like your IP address, country, device model.\r\nUnity Ads has probably collected device information, like IP address and device identifiers,and information regarding the delivery of ads and your interaction with them, all of which may be shared with ad publishers and attribution companies. Unity Ads may also incorporate data derived from the Unity Analytics service in user profiles and use that profile data in order to provide personalized advertising.\r\n";
            int    num  = 900;

            InfoArea.scrollPositionLeftSide = GuiBase.TouchScrollView(new Rect(InfoArea.Width(15f), InfoArea.Height(240f), InfoArea.Width(260f), InfoArea.Height(260f)), InfoArea.scrollPositionLeftSide, new Rect(InfoArea.Width(15f), InfoArea.Height(240f), InfoArea.Width(220f), InfoArea.Height((float)num)));
            GUI.Label(new Rect(InfoArea.Width(30f), InfoArea.Height(240f), InfoArea.Width(220f), InfoArea.Height((float)num)), new GUIContent(text));
            GUI.EndScrollView();
            if (GUI.Button(new Rect(InfoArea.Width(25f), InfoArea.Height(530f), InfoArea.Width(245f), InfoArea.Height(35f)), new GUIContent("Close")))
            {
                this.PrivacyIsShowing = false;
            }
        }
Example #4
0
        private void showTOU(GUIStyle labelStyle)
        {
            labelStyle.fontStyle = FontStyle.Bold;
            GUI.Label(new Rect(InfoArea.Width(30f), InfoArea.Height(210f), InfoArea.Width(220f), 30f), new GUIContent("Terms of Use"));
            labelStyle.fontStyle = FontStyle.Normal;
            string text = "The game automatically saves every few seconds, but this doesn't mean it can't be lost. To prevent the unlikely event to lose your save, please do a manual backup.\nYou can create a manual backup of your save if you click the 'Save'-Button in the Info Tab. The tooltip shows you the save location.\nThe responsibility to keep your save is on yourself.\n\nPlease manually do an online save to make sure your game has saved. If it shows 'Game Saved online', then everything was done correctly. If not, then there could be something blocking that feature such as a plugin. \nIf you lose your save, and have no manual backup, you can still try to 'Load Online' within the first 15 minutes after you start the game to get your save back.\n\nYou are NOT allowed to decompile, or hack the game in any way. You are also not allowed to spread, or sell this game under your own name.\n\nDo not manipulate the game save in any way as there is some protection placed within it. If you are able to manipulate it and would like to use it anyway despite being told not to, turn off or disable online highscoring. This will not bother other players who have played the game legitimately.\n\nIf you buy items for real money, then no refund is possible. If they are usable and are used up, they will be gone. If they are permanent through a rebirth, then they will stay.";
            int    num  = 1050;

            InfoArea.scrollPositionLeftSide = GuiBase.TouchScrollView(new Rect(InfoArea.Width(15f), InfoArea.Height(240f), InfoArea.Width(260f), InfoArea.Height(260f)), InfoArea.scrollPositionLeftSide, new Rect(InfoArea.Width(15f), InfoArea.Height(240f), InfoArea.Width(220f), InfoArea.Height((float)num)));
            GUI.Label(new Rect(InfoArea.Width(30f), InfoArea.Height(240f), InfoArea.Width(220f), InfoArea.Height((float)num)), new GUIContent(text));
            GUI.EndScrollView();
            if (GUI.Button(new Rect(InfoArea.Width(25f), InfoArea.Height(530f), InfoArea.Width(245f), InfoArea.Height(35f)), new GUIContent("Close")))
            {
                this.TouIsShowing = false;
            }
        }
Example #5
0
        private void showLegals(GUIStyle labelStyle)
        {
            labelStyle.fontStyle = FontStyle.Bold;
            GUI.Label(new Rect(InfoArea.Width(30f), InfoArea.Height(210f), InfoArea.Width(220f), 30f), new GUIContent("Legal Notice"));
            labelStyle.fontStyle = FontStyle.Normal;
            string text = "Information referring to. § 5 TMG\n\nResponsible for this game is:\n\nShugasu UG (haftungsbeschränkt)\nKirchenweg 26\nHinterhof\n90419 Nürnberg\nGermany\n\nRepresented by:\nDenny Stöhr\n\nContact:\nPhone: +49 1520 3674040\nE-Mail: [email protected]\nWebsite: www.shugasu.com\n\nVAT number:\nVAT identification number in accordance with section 27 a of the German VAT act:\nDE298011143\n\nRegister entry:\nHandelsregister Entry\nRegister Number: HRB 31203\nRegister Court: Nuremberg\n\nCopyright:\nThis game is subject to German copyright law. Unless expressly permitted by law \n(§ 44a et seq. of the copyright law), every form of utilizing, reproducing or processing works  subject to copyright protection on this game requires the prior consent of Denny Stöhr.\nUnauthorized utilization of copyrighted works is punishable (§ 106 of the copyright law).\n\n";
            int    num  = 900;

            InfoArea.scrollPositionLeftSide = GuiBase.TouchScrollView(new Rect(InfoArea.Width(10f), InfoArea.Height(240f), InfoArea.Width(260f), InfoArea.Height(260f)), InfoArea.scrollPositionLeftSide, new Rect(InfoArea.Width(10f), InfoArea.Height(240f), InfoArea.Width(220f), InfoArea.Height((float)num)));
            GUI.Label(new Rect(InfoArea.Width(30f), InfoArea.Height(240f), InfoArea.Width(220f), InfoArea.Height((float)num)), new GUIContent(text));
            GUI.EndScrollView();
            if (GUI.Button(new Rect(InfoArea.Width(25f), InfoArea.Height(530f), InfoArea.Width(245f), InfoArea.Height(35f)), new GUIContent("Close")))
            {
                this.ImprintIsShowing = false;
            }
        }
        private void ShowBattleFinished()
        {
            GUIStyle style = GUI.skin.GetStyle("Label");

            style.fontSize  = GuiBase.FontSize(16);
            style.alignment = TextAnchor.UpperCenter;
            style.fontStyle = FontStyle.Bold;
            GUI.Label(new Rect(GuiBase.Width(10f), GuiBase.Height(20f), GuiBase.Width(640f), GuiBase.Height(45f)), "Battle finished");
            style.fontStyle = FontStyle.Normal;
            style.alignment = TextAnchor.UpperLeft;
            style.fontSize  = GuiBase.FontSize(14);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(50f), GuiBase.Width(640f), GuiBase.Height(45f)), this.Battle.BattleRewardText);
            if (GUI.Button(new Rect(GuiBase.Width(200f), GuiBase.Height(100f), GuiBase.Width(100f), GuiBase.Height(30f)), "Finish"))
            {
                this.Battle.IsBattleFinished = false;
            }
            string text = "Show Battle log";

            if (this.showLog)
            {
                text = "Hide Battle log";
            }
            if (GUI.Button(new Rect(GuiBase.Width(20f), GuiBase.Height(100f), GuiBase.Width(150f), GuiBase.Height(30f)), text))
            {
                this.showLog = !this.showLog;
            }
            if (this.showLog)
            {
                int           num           = 150;
                StringBuilder stringBuilder = new StringBuilder();
                foreach (string current in this.Battle.FightingLog)
                {
                    stringBuilder.Append(current).Append("\n");
                }
                string text2 = stringBuilder.ToString();
                int    num2  = (int)style.CalcHeight(new GUIContent(text2), GuiBase.Width(600f));
                SpecialFightUi.scrollPosition = GuiBase.TouchScrollView(new Rect(GuiBase.Width(20f), GuiBase.Height(150f), GuiBase.Width(630f), GuiBase.Height(320f)), SpecialFightUi.scrollPosition, new Rect(0f, GuiBase.Height(150f), GuiBase.Width(600f), GuiBase.Height((float)num2)));
                GUI.Label(new Rect(GuiBase.Width(0f), GuiBase.Height((float)(num - 2)), GuiBase.Width(600f), (float)num2), text2, style);
                GUI.EndScrollView();
            }
        }
        private void ShowAutoBuyOptions()
        {
            GUIStyle style  = GUI.skin.GetStyle("TextField");
            GUIStyle style2 = GUI.skin.GetStyle("Label");
            GUIStyle style3 = GUI.skin.GetStyle("Button");

            style.fontSize  = GuiBase.FontSize(16);
            style3.fontSize = GuiBase.FontSize(16);
            GUI.Box(new Rect(GuiBase.Width(290f), GuiBase.Height(110f), GuiBase.Width(660f), GuiBase.Height(480f)), string.Empty);
            style2.fontSize  = GuiBase.FontSize(16);
            style2.alignment = TextAnchor.UpperLeft;
            int num = 330;

            GUI.Label(new Rect(GuiBase.Width((float)num), GuiBase.Height(125f), GuiBase.Width(400f), GuiBase.Height(80f)), "Select which creations you want to autobuy. \nEven if a setting here is on, it won't autobuy them if the main setting on the creations page is off.");
            if (GUI.Button(new Rect(GuiBase.Width(800f), GuiBase.Height(125f), GuiBase.Width(100f), GuiBase.Height(30f)), new GUIContent("Back")))
            {
                this.showAutoBuyOptions = false;
            }
            this.scrollPosAutobuy = GuiBase.TouchScrollView(new Rect(GuiBase.Width((float)num), GuiBase.Height(205f), GuiBase.Width(560f), GuiBase.Height(350f)), this.scrollPosAutobuy, new Rect(0f, GuiBase.Height(0f), GuiBase.Width(520f), GuiBase.Height((float)this.marginTop)));
            num            = 0;
            this.marginTop = 0;
            foreach (Creation current in App.State.AllCreations)
            {
                if (current.TypeEnum != Creation.CreationType.Shadow_clone)
                {
                    GUI.Label(new Rect(GuiBase.Width((float)num), GuiBase.Height((float)this.marginTop), GuiBase.Width(450f), GuiBase.Height(30f)), current.Name);
                    current.AutoBuy = GUI.Toggle(new Rect(GuiBase.Width((float)(num + 170)), GuiBase.Height((float)(this.marginTop + 2)), GuiBase.Width(70f), GuiBase.Height(30f)), current.AutoBuy, new GUIContent(string.Empty));
                    this.marginTop += 35;
                    if (current.TypeEnum == Creation.CreationType.Village)
                    {
                        this.marginTop = 0;
                        num            = 270;
                    }
                }
            }
            GUI.EndScrollView();
            style.alignment = TextAnchor.UpperCenter;
        }
Example #8
0
 public static void ShowBigMessage()
 {
     if (!string.IsNullOrEmpty(GuiBase.BigMessageText))
     {
         GUIStyle style = GUI.skin.GetStyle("Label");
         style.fontSize  = GuiBase.FontSize(16);
         style.alignment = TextAnchor.UpperLeft;
         int num = (int)style.CalcHeight(new GUIContent(GuiBase.BigMessageText), GuiBase.Width(500f));
         if (num < 320)
         {
             num = 320;
         }
         GUI.BeginGroup(new Rect(0f, 0f, (float)Screen.width, (float)Screen.height));
         GUI.Box(new Rect(0f, 0f, (float)Screen.width, (float)Screen.height), string.Empty);
         GUI.Label(new Rect(GuiBase.Width(350f), GuiBase.Height(20f), GuiBase.Width(400f), GuiBase.Height(40f)), GuiBase.Logo);
         GuiBase.BigMessageScrollBar = GuiBase.TouchScrollView(new Rect(GuiBase.Width(120f), GuiBase.Height(100f), GuiBase.Width(650f), GuiBase.Height(400f)), GuiBase.BigMessageScrollBar, new Rect(GuiBase.Width(120f), GuiBase.Height(100f), GuiBase.Width(620f), (float)num));
         GUI.Label(new Rect(GuiBase.Width(240f), GuiBase.Height(100f), GuiBase.Width(500f), GuiBase.Height((float)num)), GuiBase.BigMessageText);
         GUI.EndScrollView();
         if (GUI.Button(new Rect(GuiBase.Width(415f), GuiBase.Height(520f), GuiBase.Width(100f), GuiBase.Height(30f)), "Close"))
         {
             if (string.IsNullOrEmpty(GuiBase.SecondMessage))
             {
                 GuiBase.BigMessageIsShowing = false;
                 GuiBase.BigMessageText      = string.Empty;
             }
             else
             {
                 GuiBase.BigMessageText = GuiBase.SecondMessage;
                 GuiBase.SecondMessage  = string.Empty;
             }
         }
         GUI.EndGroup();
     }
     else
     {
         GuiBase.BigMessageIsShowing = false;
     }
 }
        public void Show()
        {
            GUIStyle style = GUI.skin.GetStyle("Label");

            style.fontSize = GuiBase.FontSize(16);
            if (!App.State.Generator.IsAvailable)
            {
                GUI.Box(new Rect(GuiBase.Width(290f), GuiBase.Height(110f), GuiBase.Width(660f), GuiBase.Height(480f)), string.Empty);
                style.alignment = TextAnchor.MiddleCenter;
                GUI.Label(new Rect(GuiBase.Width(310f), GuiBase.Height(150f), GuiBase.Width(640f), GuiBase.Height(30f)), "You need to build a Temple of God to unlock the divinity generator.", style);
                return;
            }
            if (DivinityGeneratorUi.AddIsOpen)
            {
                this.scrollViewHeight = (int)GuiBase.Height(1000f);
            }
            else
            {
                this.scrollViewHeight = 0;
            }
            GUI.BeginGroup(new Rect(GuiBase.Width(280f), GuiBase.Height(110f), GuiBase.Width(670f), GuiBase.Height(480f)));
            GUI.Box(new Rect(GuiBase.Width(10f), GuiBase.Height(0f), GuiBase.Width(660f), GuiBase.Height(80f)), string.Empty);
            style.alignment = TextAnchor.UpperLeft;
            GUIStyle style2 = GUI.skin.GetStyle("TextField");

            style2.fontSize  = GuiBase.FontSize(14);
            style2.alignment = TextAnchor.MiddleCenter;
            GUIContent content = new GUIContent("Clones to add / remove", "Click on the buttons for standard values or in the input field, then input the number of clones each click on + / - should add / remove.");

            if (DivinityGeneratorUi.AddIsOpen)
            {
                content = new GUIContent("Creations to add", "The number of creations you want to sacrifice and generate divinity out of it.");
            }
            GUI.Label(new Rect(GuiBase.Width(30f), GuiBase.Height(11f), GuiBase.Width(285f), GuiBase.Height(30f)), content);
            int num  = 210;
            int num2 = 65;

            if (DivinityGeneratorUi.AddIsOpen)
            {
                num  = 170;
                num2 = 105;
            }
            if (App.CurrentPlattform == Plattform.Android)
            {
                GUIStyle textField = Gui.ChosenSkin.textField;
                if (GUI.Button(new Rect(GuiBase.Width((float)num), GuiBase.Height(10f), GuiBase.Width((float)num2), GuiBase.Height(25f)), this.CloneCountString, textField))
                {
                    base.ShowNumberInput("Clones to add / remove", App.State.GameSettings.ClonesToAddCount, 9223372036854775807L, delegate(CDouble x)
                    {
                        this.CloneCountString = x.ToString();
                    });
                }
            }
            else
            {
                this.CloneCountString = GUI.TextField(new Rect(GuiBase.Width((float)num), GuiBase.Height(10f), GuiBase.Width((float)num2), GuiBase.Height(25f)), this.CloneCountString);
            }
            if (GUI.Button(new Rect(GuiBase.Width(290f), GuiBase.Height(10f), GuiBase.Width(45f), GuiBase.Height(25f)), "1"))
            {
                this.SetCountAfterButton(1);
            }
            if (GUI.Button(new Rect(GuiBase.Width(340f), GuiBase.Height(10f), GuiBase.Width(45f), GuiBase.Height(25f)), "10"))
            {
                this.SetCountAfterButton(10);
            }
            if (GUI.Button(new Rect(GuiBase.Width(390f), GuiBase.Height(10f), GuiBase.Width(45f), GuiBase.Height(25f)), "100"))
            {
                this.SetCountAfterButton(100);
            }
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(10f), GuiBase.Width(45f), GuiBase.Height(25f)), "1K"))
            {
                this.SetCountAfterButton(1000);
            }
            if (GUI.Button(new Rect(GuiBase.Width(490f), GuiBase.Height(10f), GuiBase.Width(45f), GuiBase.Height(25f)), "10K"))
            {
                this.SetCountAfterButton(10000);
            }
            if (GUI.Button(new Rect(GuiBase.Width(540f), GuiBase.Height(10f), GuiBase.Width(50f), GuiBase.Height(25f)), "100K"))
            {
                this.SetCountAfterButton(100000);
            }
            if (GUI.Button(new Rect(GuiBase.Width(595f), GuiBase.Height(10f), GuiBase.Width(53f), GuiBase.Height(25f)), "MAX"))
            {
                if (!DivinityGeneratorUi.AddIsOpen)
                {
                    this.CloneCountString = App.State.Clones.MaxShadowClones.ToString();
                }
                else
                {
                    this.CloneCountString = "999999999999999";
                }
            }
            GUI.Box(new Rect(GuiBase.Width(10f), GuiBase.Height(85f), GuiBase.Width(660f), GuiBase.Height(395f)), string.Empty);
            int num3 = 90;

            this.ShowLabels(num3, style);
            style.fontStyle = FontStyle.Normal;
            num3           += 45;
            if (DivinityGeneratorUi.AddIsOpen)
            {
                num3 += 70;
                DivinityGeneratorUi.ScrollPosition = GuiBase.TouchScrollView(new Rect(GuiBase.Width(0f), GuiBase.Height((float)num3), GuiBase.Width(650f), GuiBase.Height(255f)), DivinityGeneratorUi.ScrollPosition, new Rect(0f, GuiBase.Height((float)num3), GuiBase.Width(620f), GuiBase.Height((float)this.scrollViewHeight)));
            }
            this.ShowScrollViewElements(num3, style);
            if (DivinityGeneratorUi.AddIsOpen)
            {
                GUI.EndScrollView();
            }
            GUI.EndGroup();
        }
        public void Show()
        {
            if (GodUi.scrollBarsToZero)
            {
                this.scrollPosition    = Vector2.zero;
                GodUi.scrollBarsToZero = false;
            }
            GUIStyle style = GUI.skin.GetStyle("Label");

            style.alignment = TextAnchor.UpperLeft;
            style.fontSize  = GuiBase.FontSize(18);
            GUI.BeginGroup(new Rect(GuiBase.Width(280f), GuiBase.Height(110f), GuiBase.Width(670f), GuiBase.Height(480f)));
            GUI.Box(new Rect(GuiBase.Width(10f), GuiBase.Height(0f), GuiBase.Width(660f), GuiBase.Height(480f)), string.Empty);
            style.alignment = TextAnchor.UpperCenter;
            int num  = 20;
            int num2 = 400;

            if (App.State.Statistic.HasStartedUltimatePetChallenge)
            {
                GUI.Label(new Rect(GuiBase.Width(0f), GuiBase.Height((float)num), GuiBase.Width(550f), GuiBase.Height(30f)), new GUIContent("Pet Power: " + App.State.Ext.GetTotalPetPower(false).ToGuiText(true), "The power of all pets who are available to fight gods combined."), style);
                GUI.Label(new Rect(GuiBase.Width(0f), GuiBase.Height((float)(num + 25)), GuiBase.Width(550f), GuiBase.Height(30f)), new GUIContent("Multi from gods: " + App.State.Ext.PetPowerMultiGods.ToGuiText(true), "This is a multiplier to the pet power and will multiply with 4 for each god defeated. This won't reset after rebirthing."), style);
                GUI.Label(new Rect(GuiBase.Width(0f), GuiBase.Height((float)(num + 50)), GuiBase.Width(550f), GuiBase.Height(30f)), new GUIContent("Multi from pet pills: " + App.State.Ext.PetPowerMultiCampaigns.ToGuiText(true), "You can find Pet Pills in item campaigns for additional multipliers. This won't reset after rebirthing."), style);
                GUI.Label(new Rect(GuiBase.Width(0f), GuiBase.Height((float)(num + 75)), GuiBase.Width(550f), GuiBase.Height(30f)), new GUIContent("Multi from monuments: " + App.State.Ext.PetPowerMultiMonuments().ToGuiText(true), "Your monuments will even give multipliers to your pets! Sadly, all of this is lost after rebirthing."), style);
                GUI.Label(new Rect(GuiBase.Width(0f), GuiBase.Height((float)(num + 100)), GuiBase.Width(550f), GuiBase.Height(30f)), new GUIContent("Total Pet Power: " + App.State.Ext.GetTotalPetPower(true).ToGuiText(true), "The total power your pets have to fight the gods. The damage you do is (total power / 3 - god defense) / 5000 * milliseconds. \nCriticals from TBS are also possible."), style);
                num += 115;
                int num3 = 20;
                int num4 = num;
                int num5 = 0;
                foreach (Pet current in App.State.Ext.AllPets)
                {
                    if (current.CurrentHealth > 0 && !current.IsInCampaign)
                    {
                        GUI.Label(new Rect(GuiBase.Width((float)num3), GuiBase.Height((float)PetUi.GetPetTop(current.TypeEnum, num4)), GuiBase.Width(40f), GuiBase.Height(40f)), new GUIContent(current.Image, "Pets who are available for fighting against the gods. Pets with no health or who are in campaigns can't participate."));
                        num5++;
                        num4 += 5;
                        if (num5 > App.State.Ext.AllPets.Count / 2)
                        {
                            num4 -= 10;
                        }
                        num3 += 20;
                    }
                }
                num  += 120;
                num2 -= 220;
            }
            GUIStyle style2 = GUI.skin.GetStyle("Button");

            style2.fontSize = GuiBase.FontSize(18);
            style.fontStyle = FontStyle.Bold;
            GUI.Label(new Rect(GuiBase.Width(25f), GuiBase.Height((float)num), GuiBase.Width(200f), GuiBase.Height(30f)), "God");
            GUI.Label(new Rect(GuiBase.Width(210f), GuiBase.Height((float)num), GuiBase.Width(200f), GuiBase.Height(30f)), "Unlocks", style);
            style.fontStyle = FontStyle.Normal;
            num            += 35;
            if (App.State.PremiumBoni.TotalMightIsUnlocked && GUI.Button(new Rect(GuiBase.Width(520f), GuiBase.Height(10f), GuiBase.Width(140f), GuiBase.Height(30f)), "Unleash Might"))
            {
                if (SpecialFightUi.IsFighting)
                {
                    GuiBase.ShowToast("Please finish your special fight first°");
                }
                else
                {
                    int num6 = 0;
                    foreach (Might current2 in App.State.AllMights)
                    {
                        if (current2.IsUsable && current2.UseCoolDown == 0L && current2.DurationLeft <= 0L)
                        {
                            current2.Unleash();
                            num6++;
                        }
                    }
                    if (num6 > 0)
                    {
                        GuiBase.ShowToast("Multi unleash!");
                    }
                    else
                    {
                        GuiBase.ShowToast("Skills are on cooldown, please wait a bit.");
                    }
                }
            }
            this.scrollPosition = GuiBase.TouchScrollView(new Rect(GuiBase.Width(0f), GuiBase.Height((float)num), GuiBase.Width(650f), GuiBase.Height((float)num2)), this.scrollPosition, new Rect(0f, GuiBase.Height((float)num), GuiBase.Width(620f), GuiBase.Height((float)(this.marginTop - num))));
            if (this.marginTop < 390)
            {
                GUIStyle style3 = GUI.skin.GetStyle("scrollview");
                style3.normal.background = null;
            }
            this.marginTop = num;
            bool flag = true;

            for (int i = 0; i < App.State.AllCreations.Count; i++)
            {
                Creation creation = App.State.AllCreations[i];
                if (!creation.GodToDefeat.IsDefeated)
                {
                    flag = false;
                }
            }
            if (App.State.PrinnyBaal.IsUnlocked && flag)
            {
                style.fontSize = GuiBase.FontSize(16);
                GuiBase.CreateProgressBar(this.marginTop, App.State.PrinnyBaal.getPercentOfHP(), App.State.PrinnyBaal.Name, App.State.PrinnyBaal.Description, GuiBase.progressBg, GuiBase.progressFgRed);
                if (App.State.PrinnyBaal.IsFighting)
                {
                    GUI.Toggle(new Rect(GuiBase.Width(430f), GuiBase.Height((float)this.marginTop), GuiBase.Width(110f), GuiBase.Height(30f)), true, "Fighting...", GUI.skin.GetStyle("Button"));
                    style.alignment = TextAnchor.MiddleLeft;
                    GUI.Label(new Rect(GuiBase.Width(35f), GuiBase.Height((float)(this.marginTop + 35)), GuiBase.Width(400f), GuiBase.Height(30f)), "Your damage /s: " + App.State.PrinnyBaal.DamageSec.ToGuiText(true), style);
                    style.alignment = TextAnchor.UpperCenter;
                    if (GUI.Button(new Rect(GuiBase.Width(550f), GuiBase.Height((float)this.marginTop), GuiBase.Width(70f), GuiBase.Height(30f)), "Stop"))
                    {
                        GodUi.EnableCreating();
                    }
                    this.marginTop += 35;
                }
                else if (GUI.Button(new Rect(GuiBase.Width(430f), GuiBase.Height((float)this.marginTop), GuiBase.Width(110f), GuiBase.Height(30f)), "Fight"))
                {
                    App.State.PrinnyBaal.IsFighting = true;
                    GodUi.DisableCreation();
                }
            }
            else
            {
                for (int j = 0; j < App.State.AllCreations.Count; j++)
                {
                    Creation creation2 = App.State.AllCreations[j];
                    if (!creation2.GodToDefeat.IsDefeated)
                    {
                        style.fontSize = GuiBase.FontSize(16);
                        GuiBase.CreateProgressBar(this.marginTop, creation2.GodToDefeat.getPercentOfHP(), creation2.GodToDefeat.Name, creation2.Description, GuiBase.progressBg, GuiBase.progressFgRed);
                        GUI.Label(new Rect(GuiBase.Width(210f), GuiBase.Height((float)this.marginTop), GuiBase.Width(200f), GuiBase.Height(30f)), creation2.Name, style);
                        if (creation2.IsActive)
                        {
                            GUI.Toggle(new Rect(GuiBase.Width(430f), GuiBase.Height((float)this.marginTop), GuiBase.Width(110f), GuiBase.Height(30f)), true, "Fighting...", GUI.skin.GetStyle("Button"));
                            style.alignment = TextAnchor.MiddleLeft;
                            GUI.Label(new Rect(GuiBase.Width(35f), GuiBase.Height((float)(this.marginTop + 35)), GuiBase.Width(400f), GuiBase.Height(30f)), "Your damage /s: " + creation2.GodToDefeat.DamageSec.ToGuiText(true), style);
                            style.alignment = TextAnchor.UpperCenter;
                            if (GUI.Button(new Rect(GuiBase.Width(550f), GuiBase.Height((float)this.marginTop), GuiBase.Width(70f), GuiBase.Height(30f)), "Stop"))
                            {
                                GodUi.EnableCreating();
                            }
                            this.marginTop += 35;
                        }
                        else if (GUI.Button(new Rect(GuiBase.Width(430f), GuiBase.Height((float)this.marginTop), GuiBase.Width(110f), GuiBase.Height(30f)), "Fight"))
                        {
                            bool flag2 = true;
                            foreach (Creation current3 in App.State.AllCreations)
                            {
                                if (current3.TypeEnum < creation2.TypeEnum && !current3.GodToDefeat.IsDefeated)
                                {
                                    flag2 = false;
                                }
                            }
                            if (!flag2)
                            {
                                GuiBase.ShowToast("You need to defeat all previous gods first!");
                            }
                            else
                            {
                                App.State.PrinnyBaal.IsFighting = false;
                                bool isActive = creation2.IsActive;
                                GodUi.DisableCreation();
                                creation2.IsActive = !isActive;
                            }
                        }
                        this.marginTop += 35;
                    }
                }
            }
            GUI.EndScrollView();
            GUI.EndGroup();
        }
Example #11
0
        public static void Show()
        {
            if (KredOffersUi.ShowAds)
            {
                KredOffersUi.ShowAdUi();
                return;
            }
            GUIStyle style  = GUI.skin.GetStyle("Label");
            GUIStyle style2 = GUI.skin.GetStyle("Button");

            style2.fontSize = GuiBase.FontSize(16);
            style.alignment = TextAnchor.UpperLeft;
            style.fontSize  = GuiBase.FontSize(15);
            GUI.Box(new Rect(GuiBase.Width(290f), GuiBase.Height(110f), GuiBase.Width(660f), GuiBase.Height(480f)), string.Empty);
            if (Kongregate.IsWaitingForPurchase)
            {
                GUI.Label(new Rect(GuiBase.Width(310f), GuiBase.Height(130f), GuiBase.Width(630f), GuiBase.Height(70f)), "Waiting for the result...");
                return;
            }
            KredOffersUi.scrollPosition = GuiBase.TouchScrollView(new Rect(GuiBase.Width(280f), GuiBase.Height(120f), GuiBase.Width(660f), GuiBase.Height(430f)), KredOffersUi.scrollPosition, new Rect(0f, GuiBase.Height(20f), GuiBase.Width(620f), GuiBase.Height((float)KredOffersUi.marginTop)));
            KredOffersUi.marginTop      = 25;
            GUI.Label(new Rect(GuiBase.Width(25f), GuiBase.Height((float)(KredOffersUi.marginTop + 5)), GuiBase.Width(400f), GuiBase.Height(30f)), "Want some rewards without spending Kreds?");
            if (GUI.Button(new Rect(GuiBase.Width(445f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Click here")))
            {
                KredOffersUi.ShowAds = true;
            }
            KredOffersUi.marginTop += 55;
            if (!App.State.PremiumBoni.HasPurchasedGodPowerOnce)
            {
                style.fontStyle = FontStyle.Bold;
                style.fontSize  = GuiBase.FontSize(18);
                GUI.Label(new Rect(GuiBase.Width(25f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(630f), GuiBase.Height(70f)), "For your first 'God Power' purchase you will receive twice the amount!");
                style.fontSize          = GuiBase.FontSize(15);
                style.fontStyle         = FontStyle.Normal;
                KredOffersUi.marginTop += 35;
            }
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
            KredOffersUi.AddHeader("God Power", 20, style);
            int num = App.State.PremiumBoni.GodPowerPurchaseBonusPercent();

            if (num > 0)
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(120f)), "The more you play and the more you purchase, the more God Power you will receive from purchases.\nCurrent bonus: " + num + "%\nYou will receive what is shown on the buttons, even if the purchase dialog afterwards shows less.");
            }
            else
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "Gain the power of gods!\nWith god power you can buy various permanent bonuses in the god power page.");
            }
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(170f), GuiBase.Width(150f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.GodPower);
            GUI.Label(new Rect(GuiBase.Width(150f), GuiBase.Height(162f), GuiBase.Width(40f), GuiBase.Height(40f)), KredOffersUi.godPower);
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(60f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            int num2 = 5 * (num + 100) / 100;

            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy " + num2 + " for 25")))
            {
                Kongregate.PurchaseItem(Premium.ID_GOD_POWER5);
            }
            num2 = 25 * (num + 100) / 100;
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(100f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(100f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy " + num2 + " for 110")))
            {
                Kongregate.PurchaseItem(Premium.ID_GOD_POWER25);
            }
            num2 = 50 * (num + 100) / 100;
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(140f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(140f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy " + num2 + " for 210")))
            {
                Kongregate.PurchaseItem("jeahitsmine");
            }
            num2 = 100 * (num + 100) / 100;
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(180f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(180f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy " + num2 + " for 399")))
            {
                Kongregate.PurchaseItem(Premium.ID_GOD_POWER100);
            }
            KredOffersUi.marginTop += 225;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(250f)));
            KredOffersUi.AddHeader("Lucky Draws", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(55f)), "Try out your luck!");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(185f), GuiBase.Width(400f), GuiBase.Height(35f)), "You have: " + App.State.PremiumBoni.LuckyDraws.GuiText);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(210f), GuiBase.Width(400f), GuiBase.Height(35f)), "You can open up at most 50 a day.");
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(60f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 1 for 10")))
            {
                Kongregate.PurchaseItem(Premium.ID_LUCKY_DRAW);
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(100f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(100f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 10 for 90")))
            {
                Kongregate.PurchaseItem(Premium.ID_LUCKY_DRAW10);
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(140f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(140f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 50 for 398")))
            {
                Kongregate.PurchaseItem(Premium.ID_LUCKY_DRAW50);
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(180f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.luckyDraw);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(180f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Open one")))
            {
                GuiBase.ShowToast(App.State.PremiumBoni.UseLuckyDraw());
            }
            if (App.State.PremiumBoni.TimeForNextLuckyDraw < 0)
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(95f), GuiBase.Width(200f), GuiBase.Height(25f)), "Get your free draw now!");
                if (GUI.Button(new Rect(GuiBase.Width(240f), GuiBase.Height(100f), GuiBase.Width(130f), GuiBase.Height(32f)), new GUIContent("Get free draw!")))
                {
                    App.State.PremiumBoni.GetFreeLuckyDraw();
                }
            }
            else
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(95f), GuiBase.Width(200f), GuiBase.Height(50f)), "Time until your free draw is ready: " + Conv.MsToGuiText(App.State.PremiumBoni.TimeForNextLuckyDraw.ToLong(), true));
            }
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(140f), GuiBase.Width(450f), GuiBase.Height(50f)), App.State.Ext.Lucky.LastDrawText);
            KredOffersUi.marginTop += 240;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(220f)));
            KredOffersUi.AddHeader("Daily Packs", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(55f)), "Get one additional Lucky Draw and 2 God Power once a day for 15 or 30 days!");
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(60f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 15 for 50")))
            {
                Kongregate.PurchaseItem(Premium.ID_DAILY_PACK_15);
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(100f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(100f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 30 for 90")))
            {
                Kongregate.PurchaseItem(Premium.ID_DAILY_PACK);
            }
            int num3 = 110;

            if (App.State.PremiumBoni.DailyPackDaysLeft > 0)
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(150f), GuiBase.Width(400f), GuiBase.Height(30f)), "Packs Left: " + App.State.PremiumBoni.DailyPackDaysLeft.GuiText);
                if (App.State.PremiumBoni.TimeForNextDailyPack <= 0L)
                {
                    GUI.Label(new Rect(GuiBase.Width(580f), GuiBase.Height(150f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.dailyPack);
                    if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(150f), GuiBase.Width(120f), GuiBase.Height(32f)), new GUIContent("Open Pack")))
                    {
                        App.State.PremiumBoni.GetDailyPack();
                    }
                }
                else
                {
                    GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(110f), GuiBase.Width(260f), GuiBase.Height(50f)), "Time until the next pack arrives: " + Conv.MsToGuiText(App.State.PremiumBoni.TimeForNextDailyPack, true));
                }
                num3 = 180;
            }
            KredOffersUi.marginTop += num3;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
            KredOffersUi.AddHeader("Pet Token", 20, style);
            int num4 = 60;

            if (!App.State.PremiumBoni.BoughtLimitedPetToken)
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)num4), GuiBase.Width(400f), GuiBase.Height(100f)), "Limited Offer. You can only buy this once!");
                GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height((float)num4), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
                if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height((float)num4), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 1 for 49")))
                {
                    Kongregate.PurchaseItem(Premium.ID_PET_TOKEN_LIMITED);
                }
                KredOffersUi.marginTop += 40;
                num4 += 40;
            }
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)num4), GuiBase.Width(400f), GuiBase.Height(100f)), "Unlock special Pets!\nYou can see the pets in Fight -> Pets.");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)(num4 + 70)), GuiBase.Width(150f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.PetToken.GuiText);
            GUI.Label(new Rect(GuiBase.Width(150f), GuiBase.Height((float)(num4 + 62)), GuiBase.Width(50f), GuiBase.Height(50f)), KredOffersUi.imgPetToken);
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height((float)num4), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height((float)num4), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 1 for 150")))
            {
                Kongregate.PurchaseItem(Premium.ID_PET_TOKEN);
            }
            num4 += 40;
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height((float)num4), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height((float)num4), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 3 for 399")))
            {
                Kongregate.PurchaseItem(Premium.ID_PET_TOKEN3);
            }
            KredOffersUi.marginTop += 180;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
            KredOffersUi.AddHeader("Improved Crystal Upgrade", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "Adds 25% to the starting upgrade chance for all crystals (can't go higher than 95%)!\nYou can get this only once.");
            if (App.State.PremiumBoni.HasCrystalImprovement)
            {
                GUI.Label(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "You own this already!");
            }
            else
            {
                GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(60f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
                if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy for 135")))
                {
                    Kongregate.PurchaseItem(Premium.ID_CRYSTAL_CHANCE);
                }
            }
            KredOffersUi.marginTop += 120;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
            KredOffersUi.AddHeader("Crystal Equip Slot", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "Adds one more equip slot for your crystals!\n");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(83f), GuiBase.Width(400f), GuiBase.Height(100f)), "Currently you can equip " + App.State.PremiumBoni.MaxCrystals.GuiText + " crystals at once.");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(106f), GuiBase.Width(400f), GuiBase.Height(100f)), "You can buy up to " + (6 - App.State.PremiumBoni.MaxCrystals).GuiText + " more slots.");
            if (App.State.PremiumBoni.MaxCrystals >= 6)
            {
                GUI.Label(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "Your slots are maxed!");
            }
            else
            {
                GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(60f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
                if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy for 90")))
                {
                    Kongregate.PurchaseItem(Premium.ID_CRYSTAL_SLOT);
                }
            }
            KredOffersUi.marginTop += 135;
            GUI.EndGroup();
            if (App.State.PremiumBoni.ImprovedNextAt)
            {
                GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
                KredOffersUi.AddHeader("Improved Next At for challenges", 20, style);
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "If you buy this, improved next at will also work in challenges!\n");
                if (App.State.PremiumBoni.ChallengeImprovedNextAt)
                {
                    GUI.Label(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "You own this already!");
                }
                else
                {
                    GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(60f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
                    if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy for 175")))
                    {
                        Kongregate.PurchaseItem(Premium.ID_CHALLENGE_NEXT_AT);
                    }
                }
                KredOffersUi.marginTop += 100;
                GUI.EndGroup();
            }
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
            KredOffersUi.AddHeader("Refrigerator", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "Keeps your food save. If you buy this, you won't lose your pet food after rebirthing!\n");
            if (App.State.PremiumBoni.PetFoodAfterRebirth)
            {
                GUI.Label(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "You own this already!");
            }
            else
            {
                GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(60f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
                if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy for 175")))
                {
                    Kongregate.PurchaseItem(Premium.ID_FOOD_AFTER_REBIRTH);
                }
            }
            KredOffersUi.marginTop += 110;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
            KredOffersUi.AddHeader("Unlimited Gender Change", 20, style);
            if (App.State.PremiumBoni.HasUnlimitedGenderChange)
            {
                string str = "male";
                if (App.State.Avatar.IsFemale)
                {
                    str = "female";
                }
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(390f), GuiBase.Height(100f)), "Change your gender. Your current gender is " + str);
                if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(140f), GuiBase.Height(28f)), new GUIContent("Change")))
                {
                    App.State.Avatar.GenderChosen = false;
                    HeroImage.Init(true);
                }
                KredOffersUi.marginTop += 20;
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(100f), GuiBase.Width(390f), GuiBase.Height(100f)), "Change your name. Your current name is " + App.State.AvatarName);
                if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(100f), GuiBase.Width(140f), GuiBase.Height(28f)), new GUIContent("Change")))
                {
                    App.State.ChangeAvatarName = true;
                }
            }
            else
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "If you buy this, you can change your name and gender for free as often as you want!\n");
                GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(60f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
                if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy for 149")))
                {
                    Kongregate.PurchaseItem(Premium.ID_UGC);
                }
            }
            KredOffersUi.marginTop += 150;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(180f)));
            KredOffersUi.AddHeader("Ultimate shadow summon", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(55f)), "Creating shadow clones is too slow? With this you will max them instantly!");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(140f), GuiBase.Width(400f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.UltimateShadowSummonCount);
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(60f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 1 for 15")))
            {
                Kongregate.PurchaseItem(Premium.ID_SHADOW_SUMMON);
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(100f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(100f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 10 for 120")))
            {
                Kongregate.PurchaseItem(Premium.ID_SHADOW_SUMMON10);
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(140f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.imgShadowSummon);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(140f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Use 1")))
            {
                App.State.PremiumBoni.UseUltimateShadowSummon();
            }
            KredOffersUi.marginTop += 170;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(180f)));
            KredOffersUi.AddHeader("Godly liquid", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(55f)), "Doubles your speed when creating creations (and clones) for 90 minutes. (Multiplies with godly liquid V2)");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(110f), GuiBase.Width(400f), GuiBase.Height(30f)), "Duration left: " + Conv.MsToGuiText(App.State.PremiumBoni.GodlyLiquidDuration, true));
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(140f), GuiBase.Width(400f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.GodlyLiquidCount);
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(60f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 1 for 10")))
            {
                Kongregate.PurchaseItem("nightmare");
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(100f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(100f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 10 for 90")))
            {
                Kongregate.PurchaseItem("myfirstid");
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(140f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.imgGodlyLiquid);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(140f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Use 1")))
            {
                App.State.PremiumBoni.UseGodlyLiquid();
            }
            KredOffersUi.marginTop += 170;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(180f)));
            KredOffersUi.AddHeader("Godly liquid V2", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(55f)), "Doubles your speed when creating creations (and clones) until your next rebirth.");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(110f), GuiBase.Width(400f), GuiBase.Height(30f)), "Is in use: " + App.State.PremiumBoni.GodlyLiquidV2InUse);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(140f), GuiBase.Width(400f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.GodlyLiquidV2Count);
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(60f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 1 for 33")))
            {
                Kongregate.PurchaseItem(Premium.ID_GODLY_LIQUID_REBIRTH);
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(100f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(100f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 10 for 299")))
            {
                Kongregate.PurchaseItem(Premium.ID_GODLY_LIQUID_REBIRTH10);
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(140f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.imgGodlyLiquidV2);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(140f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Use 1")))
            {
                App.State.PremiumBoni.UseGodlyLiquidRebirth();
            }
            KredOffersUi.marginTop += 170;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(180f)));
            KredOffersUi.AddHeader("Chakra pill", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(65f)), "Increases your chakra to let your clones build faster.\nDoubles the speed to build monuments and upgrades for 90 minutes. (Multiplies with chakra pill V2)");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(120f), GuiBase.Width(400f), GuiBase.Height(30f)), "Duration left: " + Conv.MsToGuiText(App.State.PremiumBoni.ChakraPillDuration, true));
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(150f), GuiBase.Width(400f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.ChakraPillCount);
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(70f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(70f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 1 for 10")))
            {
                Kongregate.PurchaseItem("xzp");
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(110f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(110f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 10 for 90")))
            {
                Kongregate.PurchaseItem("helloworld");
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(150f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.imgChakraPill);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(150f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Use 1")))
            {
                App.State.PremiumBoni.UseChakraPill();
            }
            KredOffersUi.marginTop += 180;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)KredOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(180f)));
            KredOffersUi.AddHeader("Chakra pill V2", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(65f)), "Increases your chakra to let your clones build faster.\nDoubles the speed to build monuments and upgrades until your next rebirth.");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(120f), GuiBase.Width(400f), GuiBase.Height(30f)), "Is in use: " + App.State.PremiumBoni.ChakraPillV2InUse);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(150f), GuiBase.Width(400f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.ChakraPillV2Count);
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(70f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(70f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 1 for 33")))
            {
                Kongregate.PurchaseItem(Premium.ID_CHAKRA_PILL_REBIRTH);
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(110f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.kreds);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(110f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Buy 10 for 299")))
            {
                Kongregate.PurchaseItem(Premium.ID_CHAKRA_PILL_REBIRTH10);
            }
            GUI.Label(new Rect(GuiBase.Width(590f), GuiBase.Height(150f), GuiBase.Width(32f), GuiBase.Height(32f)), KredOffersUi.imgChakraPillV2);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(150f), GuiBase.Width(140f), GuiBase.Height(32f)), new GUIContent("Use 1")))
            {
                App.State.PremiumBoni.UseChakraPillRebirth();
            }
            KredOffersUi.marginTop += 180;
            GUI.EndGroup();
            GUI.EndScrollView();
        }
        private void show()
        {
            GUIStyle style = GUI.skin.GetStyle("Label");

            style.alignment = TextAnchor.UpperLeft;
            style.fontSize  = GuiBase.FontSize(16);
            GUI.BeginGroup(new Rect(GuiBase.Width(290f), GuiBase.Height(110f), GuiBase.Width(660f), GuiBase.Height(480f)));
            GUI.Box(new Rect(GuiBase.Width(0f), GuiBase.Height(0f), GuiBase.Width(660f), GuiBase.Height(480f)), string.Empty);
            this.scrollPosition = GuiBase.TouchScrollView(new Rect(GuiBase.Width(0f), GuiBase.Height(15f), GuiBase.Width(640f), GuiBase.Height(460f)), this.scrollPosition, new Rect(0f, GuiBase.Height(15f), GuiBase.Width(620f), GuiBase.Height((float)this.scrollHeight)));
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(10f), GuiBase.Width(600f), GuiBase.Height(50f)), new GUIContent("Some stats of your game. All multis will apply when rebirthing and can't be higher than your god multiplier."));
            style.fontStyle = FontStyle.Normal;
            int num = 70;

            if (UpdateStats.TimeLeftForEvent > 0L)
            {
                num = this.AddLine(num, "Time left until next chocolate", Conv.MsToGuiText(App.State.Statistic.TimeUntilNextChocolate, true), "This event will end in: " + Conv.MsToGuiText(UpdateStats.TimeLeftForEvent, false), 30);
            }
            num  = this.AddLine(num, "Time played since rebirth", Conv.MsToGuiText(App.State.Statistic.TimePlayedSinceRebirth, true), "You need 1 hour to reach 100% rebirth multiplier. After that every 30 minutes played will increase your total rebirth multiplier by 1%. This time will count both offline and online time.", 30);
            num  = this.AddLine(num, "Time online", Conv.MsToGuiText(App.State.Statistic.TimePlayed, true) + this.Multiboni(App.State.Statistic.MultiTimePlayed), "The total time the game was open. Every 10 minutes will increase your statistic multi by 1.", 30);
            num  = this.AddLine(num, "Time offline", Conv.MsToGuiText(App.State.Statistic.TimeOffline, false) + this.Multiboni(App.State.Statistic.MultiTimeOffline), "The time you were offline after you started to play this game. Every 40 minutes will increase your statistic multi by 1. To prevent cheating, the time only works if you are online before you close the game.", 30);
            num += 20;
            num  = this.AddLine(num, "Rebirths", App.State.Statistic.TotalRebirths.Serialize() + this.Multiboni(App.State.Statistic.MultiTotalRebirths), "The number of times you pushed the Rebirth button. Each rebirth increases your statistic multi by 1000.", 30);
            num  = this.AddLine(num, "Training levels", App.State.Statistic.TotalTrainingLevels.ToGuiText(true) + this.Multiboni(App.State.Statistic.MultiTotalTrainingLevels), "The total number of levels you gained by trainings. Every 10,000 levels increases your statistic multi by 1.", 30);
            num  = this.AddLine(num, "Skill levels", App.State.Statistic.TotalSkillLevels.ToGuiText(true) + this.Multiboni(App.State.Statistic.MultiTotalSkillLevels), "The total number of levels you gained by learning skills. Every 10,000 levels increases your statistic multi by 1.", 30);
            num  = this.AddLine(num, "Enemies defeated", App.State.Statistic.TotalEnemiesDefeated.ToGuiText(true) + this.Multiboni(App.State.Statistic.MultiTotalEnemiesDefeated), "The total number of enemies you defeated. Every 200,000 enemies you defeat increases your statistic multi by 1.", 30);
            num  = this.AddLine(num, "Creations", App.State.Statistic.TotalCreations.ToGuiText(true) + this.Multiboni(App.State.Statistic.MultiTotalCreations), "The total number of things you created. Every 1000 creations increases your statistic multi by 1.", 30);
            num  = this.AddLine(num, "Shadow clones created", App.State.Statistic.TotalShadowClonesCreated.ToGuiText(true) + this.Multiboni(App.State.Statistic.MultiTotalShadowClonesCreated), "All the shadow clones you created. Every 1000 clones created reduces their attack divider by 1 (after rebirth, min divider 50).  Every 2000 increases your statistic multi by 1.", 30);
            num  = this.AddLine(num, "Shadow clones died", App.State.Statistic.TotalShadowClonesDied.ToGuiText(true) + this.Multiboni(App.State.Statistic.MultiTotalShadowClonesDied), "All shadow clones who died fighting enemies. Every 500 clones who died reduces their defense and hp divider by 1 (after rebirth, min divider 50).  Every 500 increases your statistic multi by 1.", 30);
            num += 20;
            num  = this.AddLine(num, "Achievements", App.State.Statistic.TotalAchievements.GuiText + this.Multiboni(App.State.Statistic.MultiTotalAchievements), "The total number of achievements you got. Each achievement will increase your statistic multi by 5.", 30);
            num  = this.AddLine(num, "Gods defeated", App.State.Statistic.TotalGodsDefeated.ToGuiText(true) + this.Multiboni(App.State.Statistic.MultiTotalGodsDefeated), "The total number of gods you defeated. Each defeated god increases your statistic multi by 50.", 30);
            num  = this.AddLine(num, "Divinity used", App.State.Statistic.TotalMoneySpent.ToGuiText(true) + this.Multiboni(App.State.Statistic.MultiTotalMoneySpent), "The total divinity you traded in for creations. The more you trade in, the higher your statistic multi.", 30);
            num  = this.AddLine(num, "Upgrades", App.State.Statistic.TotalUpgrades.GuiText + this.Multiboni(App.State.Statistic.MultiTotalUpgrades), "The number of times you did upgrade a monument. Each upgrade increases your statistic multi by 5. Upgrading is available after defeating Freya.", 30);
            string str = string.Empty;

            if (App.State.Statistic.HighestGodDefeated > 28)
            {
                if (App.State.Statistic.HighestGodDefeated == 29)
                {
                    str = "P. Baal";
                }
                else
                {
                    str = "P. Baal v " + (App.State.Statistic.HighestGodDefeated - 28);
                }
            }
            else
            {
                str = EnumName.Name((God.GodType)App.State.Statistic.HighestGodDefeated.ToInt());
            }
            string str2 = string.Empty;

            if (!string.IsNullOrEmpty(App.State.Statistic.GodDefeatedBeforeRebirth))
            {
                str2 = "\nOn your last rebirth, you defeated " + App.State.Statistic.GodDefeatedBeforeRebirth;
            }
            num  = this.AddLine(num, "Strongest god defeated", str + this.Multiboni(App.State.Statistic.MultiHighestGodDefeated), "The strongest god you have defeated. Each higher tier increases your statistic multi by 50 (5000 after Baal)." + str2, 30);
            num += 20;
            num  = this.AddLine(num, "Ultimate Beings defeated", App.State.Statistic.UBsDefeated + this.Multiboni(App.State.Statistic.MultiUBsDefeated), "How many Ultimate Beings you have defeated. Each one increases your statistic multi by 40.", 30);
            num  = this.AddLine(num, "Total Powersurge levels", App.State.Statistic.TotalPowersurge.ToGuiText(true) + this.Multiboni(App.State.Statistic.MultiTotalPowersurge), "How many times you upgraded a level in Powersurge. Each level increases your statistic multi by 1.", 30);
            num  = this.AddLine(num, "Most shadow clones defeated", App.State.Statistic.MostDefeatedShadowClones + this.Multiboni(App.State.Statistic.MultiMostClonesDefeated), "The most shadow clones you have defeated in one special fight. Increases your statistic multi by 500 x defeated count x defeated count.", 30);
            num  = this.AddLine(num, "TBS Score", App.State.Statistic.TBSScore + this.Multiboni(App.State.Statistic.MultiTBSScore), "Your score in the TBS - Game. Increases your statistic multi by 100 x score.", 30);
            if (App.CurrentPlattform != Plattform.Android)
            {
                num = this.AddLine(num, "Highscore Godly Shoot", App.State.Statistic.GodlyShootScore.ToInt() + this.Multiboni(App.State.Statistic.MultiGodlyShootScore), "The highest score you reached in 'Godly Shoot'. Each one increases your statistic multi by 500.", 30);
                num = this.AddLine(num, "Highscore Godly Shoot Boss", App.State.Statistic.GodlyShootScoreBoss.ToInt() + this.Multiboni(App.State.Statistic.MultiGodlyShootScoreBoss), "The highest score you reached in 'Godly Shoot' in Boss mode. Each one increases your statistic multi by 250.", 30);
            }
            num  = this.AddLine(num, "AFK Clones killed", App.State.Statistic.AfkyClonesKilled.GuiText + this.Multiboni(App.State.Statistic.MultiAfkyClonesKilled), "The total number of clones your afky God has killed. Increases your statistic multi by 1 every 1000. Capped at 25 million.", 30);
            num  = this.AddLine(num, "Highest Afky God Power", App.State.Statistic.AfkyGodPower.GuiText + this.Multiboni(App.State.Statistic.MultiAfkyGodPower), "The highest Power your Afky God ever had. Increases your statistic multi by 1 every 10. Capped at 25 million.", 30);
            num += 20;
            CDouble cDouble = App.State.PremiumBoni.TotalMight;

            num = this.AddLine(num, "Total Might gained", cDouble.GuiText + this.Multiboni(App.State.Statistic.MultiTotalMight), "How many times you upgraded a level in the Might-Tab. Each one increases your statistic multi by 10.", 30);
            CDouble cDouble2 = App.State.PremiumBoni.TotalGodPowerSpent;

            num  = this.AddLine(num, "Total God Power spent", cDouble2.GuiText + this.Multiboni(App.State.Statistic.MultiTotalGPsUsed), "How many God Power you have spent. Each one increases your statistic multi by 20.\nGP spent for permanent upgrades: " + App.State.PremiumBoni.PermanentGPSpent, 30);
            num  = this.AddLine(num, "Total Pet Growth", App.State.Statistic.TotalPetGrowth.GuiText + this.Multiboni(App.State.Statistic.MultiPetGrowth), "The total combined growth of all the pets you own.", 30);
            num += 20;
            num  = this.AddLine(num, "All Achievements Challenges", App.State.Statistic.AchievementChallengesFinished + this.Multiboni(App.State.Statistic.MultiAchievementChallenge), "How often you finished an All Achievements Challenge. You will receive 750,000 statistic multi and your achievements will increase your multipliers by 1% more for each one. \nIt will also reduce the levels for trainings and fights you need to reach an achievement by 1% (Maxed at 50%).", 30);
            num  = this.AddLine(num, "Double Rebirth Challenges", App.State.Statistic.DoubleRebirthChallengesFinished + this.Multiboni(App.State.Statistic.MultiDBChallenge), "How often you have defeated Baal after a Double Rebirth Challenge. You will receive 500,000 statistic multi and your might will level up one time (up to a max of 50) for each one.", 30);
            string right = Conv.MsToGuiText(App.State.Statistic.FastestDRCallenge.ToLong(), true);

            if (App.State.Statistic.FastestDRCallenge <= 0)
            {
                right = "No challenge finished.";
            }
            string str3 = string.Empty;

            if (App.State.Statistic.HasStartedDoubleRebirthChallenge)
            {
                str3 = "\nTime since you started the challenge: " + Conv.MsToGuiText(App.State.Statistic.TimeAfterDRCStarted.ToLong(), true);
            }
            num = this.AddLine(num, "Fastest DRC", right, "The fastest time you completed a 'Double Rebirth Challenge'" + str3, 30);
            num = this.AddLine(num, "1K Challenges", App.State.Statistic.OnekChallengesFinished + this.Multiboni(App.State.Statistic.Multi1KChallenge), "How often you have defeated Baal in a 1K Challenge. You will receive 1.5 million statistic multi and your clones will level up might 5% faster for each one. (level 40 is max)", 30);
            string right2 = Conv.MsToGuiText(App.State.Statistic.Fastest1KCCallenge.ToLong(), true);

            if (App.State.Statistic.Fastest1KCCallenge <= 0)
            {
                right2 = "No challenge finished.";
            }
            str3 = string.Empty;
            if (App.State.Statistic.HasStarted1kChallenge)
            {
                str3 = "\nTime since you started the challenge: " + Conv.MsToGuiText(App.State.Statistic.TimeAfter1KCStarted.ToLong(), true);
            }
            num = this.AddLine(num, "Fastest 1KC", right2, "The fastest time you completed a '1K Challenge'" + str3, 30);
            num = this.AddLine(num, "No Rebirth Challenges", App.State.Statistic.NoRbChallengesFinished + this.Multiboni(App.State.Statistic.MultiNoRbChallenge), "How often you have defeated Baal in a No Rebirth Challenge. You will receive 10 million statistic multi and you can fight Ultimate Beings 1% faster. (20% is max)", 30);
            string right3 = Conv.MsToGuiText(App.State.Statistic.FastestNoRbCCallenge.ToLong(), true);

            if (App.State.Statistic.FastestNoRbCCallenge <= 0)
            {
                right3 = "No challenge finished.";
            }
            if (App.State.Statistic.HasStartedNoRbChallenge)
            {
                str3 = "\nTime since you started the challenge: " + Conv.MsToGuiText(App.State.Statistic.TimeAfterNoRbStarted.ToLong(), true);
            }
            num  = this.AddLine(num, "Fastest No Rebirth Challenge", right3, "The fastest time you completed a 'No Rebirth Challenge'" + str3, 30);
            num += 20;
            num  = this.AddLine(num, "Ultimate Universe Challenges", App.State.Statistic.UniverseChallengesFinished + this.Multiboni(App.State.Statistic.MultiUUChallenge), "How often you finished an 'Ultimate Universe Challenge'. Your Planet level will increase by 1 for each finished Challenge (level 50 is max).", 30);
            string right4 = Conv.MsToGuiText(App.State.Statistic.FastestUUCallenge.ToLong(), true);

            if (App.State.Statistic.FastestUUCallenge <= 0)
            {
                right4 = "No challenge finished.";
            }
            str3 = string.Empty;
            if (App.State.Statistic.HasStartedUniverseChallenge)
            {
                str3 = "\nTime since you started the challenge: " + Conv.MsToGuiText(App.State.Statistic.TimeAfterUUCStarted.ToLong(), true);
            }
            num = this.AddLine(num, "Fastest UUC", right4, "The fastest time you completed an 'Ultimate Universe Challenge'" + str3, 30);
            num = this.AddLine(num, "Ultimate Pet Challenges", App.State.Statistic.UltimatePetChallengesFinished + this.Multiboni(App.State.Statistic.MultiUPChallenge), "How often you beat Baal with your pets. You will receive 2 million statistic multi and receive 5% more rewards from pet campaigns (maxed at 20).", 30);
            string right5 = Conv.MsToGuiText(App.State.Statistic.FastestUPCallenge.ToLong(), true);

            if (App.State.Statistic.FastestUPCallenge <= 0)
            {
                right5 = "No challenge finished.";
            }
            str3 = string.Empty;
            if (App.State.Statistic.HasStartedUltimatePetChallenge)
            {
                str3 = "\nTime since you started the challenge: " + Conv.MsToGuiText(App.State.Statistic.TimeAfterUPCStarted.ToLong(), true);
            }
            num = this.AddLine(num, "Fastest UPC", right5, "The fastest time you completed an 'Ultimate Pet Challenge'" + str3, 30);
            num = this.AddLine(num, "Black Holes Challenges", App.State.Statistic.BlackHoleChallengesFinished + this.Multiboni(App.State.Statistic.MultiBHChallenge), "How often you have finished the challenge. You will receive 750,000 statistic multi.\nFor each challenge finished, blackholes are 2% cheaper to build and each blackhole up to the number of BHCs completed provides an additional 5% chance for 1 GP each hour.\nCan't go higher than 200% for 2 additional GP each hour.", 30);
            string right6 = Conv.MsToGuiText(App.State.Statistic.FastestBHCallenge.ToLong(), true);

            if (App.State.Statistic.FastestBHCallenge <= 0)
            {
                right6 = "No challenge finished.";
            }
            str3 = string.Empty;
            if (App.State.Statistic.HasStartedBlackHoleChallenge)
            {
                str3 = "\nTime since you started the challenge: " + Conv.MsToGuiText(App.State.Statistic.TimeAfterBHCStarted.ToLong(), true);
            }
            num  = this.AddLine(num, "Fastest BHC", right6, "The fastest time you completed a 'Black Hole Challenge'" + str3, 30);
            num += 20;
            num  = this.AddLine(num, "Ultimate Baal Challenges", App.State.Statistic.UltimateBaalChallengesFinished + this.Multiboni(App.State.Statistic.MultiUBChallenge), "How often you beat Baal after an Ultimate Baal Challenge. You will receive 5 million statistic multi and P.Baals will grow weaker by 1% for each one (50% is minimum).", 30);
            string right7 = Conv.MsToGuiText(App.State.Statistic.FastestUBCallenge.ToLong(), true);

            if (App.State.Statistic.FastestUBCallenge <= 0)
            {
                right7 = "No challenge finished.";
            }
            str3 = string.Empty;
            if (App.State.Statistic.HasStartedUltimateBaalChallenge)
            {
                str3 = string.Concat(new object[]
                {
                    "\nTime since you started the challenge: ",
                    Conv.MsToGuiText(App.State.Statistic.TimeAfterUBCStarted.ToLong(), true),
                    ", currently you are on the ",
                    App.State.Statistic.RebirthsAfterUBC,
                    ". rebirth."
                });
            }
            num = this.AddLine(num, "Fastest UBC", right7, "The fastest time you completed a 'Ultimate Baal Challenge'" + str3, 30);
            string right8 = "-";

            if (App.State.Statistic.MinRebirthsAfterUBC > 0)
            {
                right8 = App.State.Statistic.MinRebirthsAfterUBC.ToGuiText(true);
            }
            num = this.AddLine(num, "Minimum Rebirths used for UBC", right8, "Can you defeat baal in one rebirth?", 30);
            num = this.AddLine(num, "Ultimate Arty Challenges", App.State.Statistic.ArtyChallengesFinished + this.Multiboni(App.State.Statistic.MultiUAChallenge), "How often you beat Baal after an Ultimate Arty Challenge within 4 rebirths. You will receive 20 million statistic multi and P.Baals will grow weaker by 2% for each one (50% is minimum).", 30);
            string right9 = Conv.MsToGuiText(App.State.Statistic.FastestUACallenge.ToLong(), true);

            if (App.State.Statistic.FastestUACallenge <= 0)
            {
                right9 = "No challenge finished.";
            }
            str3 = string.Empty;
            if (App.State.Statistic.HasStartedUltimateBaalChallenge)
            {
                str3 = string.Concat(new object[]
                {
                    "\nTime since you started the challenge: ",
                    Conv.MsToGuiText(App.State.Statistic.TimeAfterUACStarted.ToLong(), true),
                    ", currently you are on the ",
                    App.State.Statistic.RebirthsAfterUAC,
                    ". rebirth."
                });
            }
            num    = this.AddLine(num, "Fastest UAC", right9, "The fastest time you completed an 'Ultimate Arty Challenge'" + str3, 30);
            right8 = "-";
            if (App.State.Statistic.MinRebirthsAfterUAC > 0)
            {
                right8 = App.State.Statistic.MinRebirthsAfterUAC.ToGuiText(true);
            }
            num  = this.AddLine(num, "Minimum Rebirths used for UAC", right8, "Can you defeat baal in one rebirth?", 30);
            num += 20;
            num  = this.AddLine(num, "Monuments created", App.State.Statistic.MonumentsCreated.GuiText, "The number of monuments you created. They work as a multiplier for all other statistic multiplier. Monuments are unlocked after defeating Diana.", 30);
            num  = this.AddLine(num, "Total Multiplier ", string.Concat(new object[]
            {
                App.State.Statistic.StatisticRebirthMultiplierBase.ToGuiText(true),
                " x ",
                App.State.Statistic.MultiMonumentsCreated + 1,
                " = ",
                (App.State.Statistic.StatisticRebirthMultiplierBase * (App.State.Statistic.MultiMonumentsCreated + 1)).ToGuiText(true)
            }), "Total multiplier out of all statistics. Also multiplied with " + App.State.PremiumBoni.StatisticMulti.ToGuiText(true) + " from god power purchases but it is capped at: " + App.State.Multiplier.RebirthMulti.ToGuiText(true), 50);
            num += 25;
            GUI.EndScrollView();
            GUI.EndGroup();
            this.scrollHeight = num;
        }
Example #13
0
        public void Show(GUIStyle labelStyle)
        {
            labelStyle.fontSize  = 16;
            labelStyle.fontStyle = FontStyle.Normal;
            GUIStyle style = GUI.skin.GetStyle("Button");

            style.fontSize = GuiBase.FontSize(15);
            GUI.BeginGroup(new Rect(GuiBase.Width(9f), GuiBase.Height(45f), GuiBase.Width(265f), GuiBase.Height(490f)));
            GUI.Label(new Rect(GuiBase.Width(0f), GuiBase.Height(0f), GuiBase.Width(245f), GuiBase.Height(50f)), new GUIContent("Challenges"));
            App.State.GameSettings.HideMaxedChallenges = GUI.Toggle(new Rect(GuiBase.Width(110f), GuiBase.Height(5f), GuiBase.Width(260f), GuiBase.Height(25f)), App.State.GameSettings.HideMaxedChallenges, new GUIContent("Hide maxed", "If this is on, maxed challenges will be hidden."));
            this.scrollPosition = GuiBase.TouchScrollView(new Rect(GuiBase.Width(0f), GuiBase.Height(35f), GuiBase.Width(245f), GuiBase.Height(310f)), this.scrollPosition, new Rect(0f, GuiBase.Height(0f), GuiBase.Width(225f), GuiBase.Height((float)(this.marginTop + 30))));
            this.marginTop      = 0;
            bool flag = App.State.GameSettings.HideMaxedChallenges && App.State.HomePlanet.UpgradeLevel >= 50;

            if (App.State.HomePlanet.UpgradeLevel >= 5 && !flag && GUI.Button(new Rect(GuiBase.Width(0f), GuiBase.Height((float)this.marginTop), GuiBase.Width(225f), GuiBase.Height(30f)), new GUIContent("Ultimate Universe Challenge", "This is almost like a normal rebirth. You will lose nothing and your time until you create one universe is recorded. If you create a universe, your Planet Level will be increased by one (This means your Powersurge speed will increase).")))
            {
                App.CheckRebirth(delegate(bool x)
                {
                    if (x)
                    {
                        App.Rebirth();
                        App.State.Statistic.HasStartedUniverseChallenge = true;
                        App.State.Statistic.TimeAfterUUCStarted         = 0;
                    }
                }, true);
            }
            bool flag2 = App.State.GameSettings.HideMaxedChallenges && App.State.Statistic.AchievementChallengesFinished >= 50;

            if (App.State.Statistic.UniverseChallengesFinished > 0 && !flag2)
            {
                this.marginTop += 40;
                if (GUI.Button(new Rect(GuiBase.Width(0f), GuiBase.Height((float)this.marginTop), GuiBase.Width(225f), GuiBase.Height(30f)), new GUIContent("All Achievements Challenge", "This is almost like a normal rebirth. You will lose nothing and when you get all achievements available, your achievements will provide 1% more multiplier permanently and it will lower the requirement to get an training or fight achievement by 1% (maxed at 50).")))
                {
                    App.CheckRebirth(delegate(bool x)
                    {
                        if (x)
                        {
                            App.Rebirth();
                            App.State.Statistic.HasStartedAchievementChallenge = true;
                        }
                    }, true);
                }
            }
            bool flag3 = App.State.GameSettings.HideMaxedChallenges && App.State.Statistic.BlackHoleChallengesFinished >= 40;

            if (App.State.Statistic.AchievementChallengesFinished > 0 && !flag3)
            {
                this.marginTop += 40;
                if (GUI.Button(new Rect(GuiBase.Width(0f), GuiBase.Height((float)this.marginTop), GuiBase.Width(225f), GuiBase.Height(30f)), new GUIContent("Black Hole Challenge", "This is like a normal rebirth. It ends after building one black hole with one upgrade. For each challenge you have finished, the cost for building black holes and upgrades will be decreased by 2%.\nIt also adds a chance for passive god power gain of 5% for each black hole build and challenge finished. Maxed at 40 challenges. \n With 40 challenges finished, you will only pay 20% of the orginal cost and 40 black holes built will give you 3 god power every hour.")))
                {
                    App.CheckRebirth(delegate(bool x)
                    {
                        if (x)
                        {
                            App.Rebirth();
                            App.State.Statistic.HasStartedBlackHoleChallenge = true;
                        }
                    }, true);
                }
            }
            bool flag4 = App.State.GameSettings.HideMaxedChallenges && App.State.Statistic.UltimatePetChallengesFinished >= 20;

            if (App.State.Statistic.TotalPetGrowth > 10000 && !flag4)
            {
                this.marginTop += 40;
                if (GUI.Button(new Rect(GuiBase.Width(0f), GuiBase.Height((float)this.marginTop), GuiBase.Width(225f), GuiBase.Height(30f)), new GUIContent("Ultimate Pet Challenge", "This is like a normal rebirth but you can't fight gods by yourself. Your pets will fight the gods instead. The god page will show your total pet power for this run and this will be used to fight gods.\nThe challenge is finished when your pets defeat baal. While the challenge is active, your pets can find pet pills in item campaigns which will boost their multiplier until the challenge is over.\nEach challenge finished will increase all rewards from pet campaigns by 5%. Maxed at 100%")))
                {
                    App.CheckRebirth(delegate(bool x)
                    {
                        if (x)
                        {
                            App.Rebirth();
                            App.State.Statistic.HasStartedUltimatePetChallenge = true;
                            App.State.Ext.PetPowerMultiCampaigns = 1;
                            App.State.Ext.PetPowerMultiGods      = 1;
                            foreach (Creation current in App.State.AllCreations)
                            {
                                current.GodToDefeat.IsDefeatedPetChallenge = false;
                            }
                        }
                    }, true);
                }
            }
            if (!App.State.GameSettings.HideMaxedChallenges || !(App.State.Statistic.DoubleRebirthChallengesFinished >= 50))
            {
                this.marginTop += 40;
                if (GUI.Button(new Rect(GuiBase.Width(0f), GuiBase.Height((float)this.marginTop), GuiBase.Width(225f), GuiBase.Height(30f)), new GUIContent("Double Rebirth Challenge", "This is an extra challenge that works like doing two rebirths in a row, resetting your multipliers to their starting values. ONLY recommended if you have a lot of God Power and want a challenge. If you beat Baal again after starting this challenge, you will receive an extra reward.\nAfter starting this challenge, you will gain 1 God Power for defeating the earlier gods for the first time once more.")))
                {
                    App.CheckRebirth(delegate(bool x)
                    {
                        if (x)
                        {
                            GuiBase.ShowDialog("Are you sure?", "This is an extra challenge which will reward you with 10 God Power and 500,000 statistic multi after you defeat Baal again. \nIt will also level up might for each finished challenge by 1 level as soon as you unlock it.\nThis will revert your current stats to the default values!", delegate
                            {
                                GuiBase.ShowDialog("Are you really sure?", "This is no normal rebirth and it will take quite a bit of time to go back to your current progress.", delegate
                                {
                                }, delegate
                                {
                                    App.Rebirth();
                                    App.Rebirth();
                                    App.State.Statistic.HasStartedDoubleRebirthChallenge = true;
                                    App.State.Statistic.TimeAfterDRCStarted = 0;
                                    foreach (Creation current in App.State.AllCreations)
                                    {
                                        current.GodToDefeat.IsDefeatedForFirstTime = false;
                                    }
                                }, "No", "Yes", false, false);
                            }, delegate
                            {
                            }, "Yes", "No", false, false);
                        }
                    }, false);
                }
            }
            bool flag5 = App.State.GameSettings.HideMaxedChallenges && App.State.Statistic.OnekChallengesFinished >= 40;

            if (App.State.Statistic.DoubleRebirthChallengesFinished > 1 && !flag5)
            {
                this.marginTop += 40;
                if (GUI.Button(new Rect(GuiBase.Width(0f), GuiBase.Height((float)this.marginTop), GuiBase.Width(225f), GuiBase.Height(30f)), new GUIContent("1k Challenge", "This is an extra challenge that works like doing two rebirths in a row, resetting your multipliers to their starting values. Compared to the Double Rebirth Challenge, you will only have 1000 Clones which can't be increased until you finish this challenge (defeat Baal). If you beat Baal again after starting this challenge, you will receive an extra reward.")))
                {
                    App.CheckRebirth(delegate(bool x)
                    {
                        if (x)
                        {
                            GuiBase.ShowDialog("Are you sure?", "This is an extra challenge which will reward you with 20 God Power and 750,000 statistic multi after you defeat Baal again. \nIt will also increase the speed, your clones will level up might by 5%.\nThis will revert your current stats to the default values!", delegate
                            {
                                GuiBase.ShowDialog("Are you really sure?", "This is no normal rebirth and it will take quite a bit of time to go back to your current progress.", delegate
                                {
                                }, delegate
                                {
                                    App.Rebirth();
                                    App.Rebirth();
                                    App.State.Statistic.HasStarted1kChallenge = true;
                                    App.State.Statistic.TimeAfter1KCStarted   = 0;
                                    foreach (Creation current in App.State.AllCreations)
                                    {
                                        current.GodToDefeat.IsDefeatedForFirstTime = false;
                                    }
                                }, "No", "Yes", false, false);
                            }, delegate
                            {
                            }, "Yes", "No", false, false);
                        }
                    }, false);
                }
            }
            bool flag6 = App.State.GameSettings.HideMaxedChallenges && App.State.Statistic.NoRbChallengesFinished >= 20;

            if (App.State.Statistic.OnekChallengesFinished > 0 && !flag6)
            {
                this.marginTop += 40;
                if (GUI.Button(new Rect(GuiBase.Width(0f), GuiBase.Height((float)this.marginTop), GuiBase.Width(225f), GuiBase.Height(30f)), new GUIContent("No Rebirth Challenge", "This is an extra challenge that works like doing two rebirths in a row, resetting your multipliers to their starting values. Compared to the Double Rebirth Challenge, you can't rebirth until you finish this challenge (defeat Baal). Rebirthing once will cancel this challenge. If you beat Baal again after starting this challenge, you will receive an extra reward.")))
                {
                    App.CheckRebirth(delegate(bool x)
                    {
                        if (x)
                        {
                            GuiBase.ShowDialog("Are you sure?", "This is an extra challenge which will reward you with 250 God Power and 5,000,000 statistic multi after you defeat Baal again. \nUltimate Beings will also appear 1% faster. (Maxed at 20%)\nThis will revert your current stats to the default values!", delegate
                            {
                                GuiBase.ShowDialog("Are you really sure?", "This is no normal rebirth and it will take quite a bit of time to go back to your current progress.", delegate
                                {
                                }, delegate
                                {
                                    App.Rebirth();
                                    App.Rebirth();
                                    App.State.Statistic.HasStartedNoRbChallenge = true;
                                    App.State.Statistic.TimeAfterNoRbStarted    = 0;
                                }, "No", "Yes", false, false);
                            }, delegate
                            {
                            }, "Yes", "No", false, false);
                        }
                    }, false);
                }
            }
            if (!App.State.GameSettings.HideMaxedChallenges || !(App.State.Statistic.UltimateBaalChallengesFinished + App.State.Statistic.ArtyChallengesFinished * 2 >= 50))
            {
                this.marginTop += 40;
                if (GUI.Button(new Rect(GuiBase.Width(0f), GuiBase.Height((float)this.marginTop), GuiBase.Width(225f), GuiBase.Height(30f)), new GUIContent("Ultimate Baal Challenge", "This is similar to the double rebirth challenge, but your current God Power and upgrades will also be locked (defeat Baal again to regain everything that you had before). Max Shadow Clones will be reverted to 1000. Your total might will revert to 0.\nYour reward for beating this challenge will be much bigger than that for the regular double rebirth challenge. This might be the better option if you don't have much God Power and want a challenge.")))
                {
                    App.CheckRebirth(delegate(bool x)
                    {
                        if (x)
                        {
                            GuiBase.ShowDialog("Are you sure?", "This is an extra challenge which will reward you with 100 God Power and 5 million statistic multi after you defeat Baal again. This will revert your current stats to the default values and also remove your God Power and God Power Upgrades. P.Baals will also become weaker by 1% until 50% for each finished challenge.", delegate
                            {
                                UpdateStats.SaveToServer(UpdateStats.ServerSaveType.UBChallengeSave);
                                GuiBase.ShowDialog("Are you really sure?", "This is no normal rebirth and it will take quite a bit of time to go back to your current progress.", delegate
                                {
                                }, delegate
                                {
                                    this.StartUltimateBaalChallenge();
                                }, "No", "Yes", false, false);
                            }, delegate
                            {
                            }, "Yes", "No", false, false);
                        }
                    }, false);
                }
            }
            if (!App.State.GameSettings.HideMaxedChallenges || !(App.State.Statistic.ArtyChallengesFinished >= 2))
            {
                this.marginTop += 40;
                if (GUI.Button(new Rect(GuiBase.Width(0f), GuiBase.Height((float)this.marginTop), GuiBase.Width(225f), GuiBase.Height(30f)), new GUIContent("Ultimate Arty Challenge", "This isn't worth it, so I'd pass on it. It is similar to anUltimate Baal Challenge (UBC), but you will also lose your training caps, unlocked TBS, need to unlock your Planet again and you have to defeat Baal within 5 rebirths after taking this challenge (The rebirth used for starting this challenge counts as one!).\nOnce you do a 6th rebirth the challenge will chancel, and you will receive no reward. \nIf you finish this challenge, you will receive twice the rewards than you would get from an UBC.")))
                {
                    App.CheckRebirth(delegate(bool x)
                    {
                        if (x)
                        {
                            GuiBase.ShowDialog("Are you sure?", "This is an extra challenge which will reward you with 200 God Power and 10 million statistic multi if you defeat Baal within 4 rebirths. The first time, you will receive the turtle pet and the second time a free pet token. No extra reward after that!\nBeating it faster than in 2000000 seconds ~23 days is almost impossible without cheating, so also no extra reward for that.\nThis will revert your current stats to the default values and also remove your God Power and God Power Upgrades. P.Baals will also become weaker by 2% until 50% for each finished challenge.", delegate
                            {
                                UpdateStats.SaveToServer(UpdateStats.ServerSaveType.UAChallengeSave);
                                GuiBase.ShowDialog("Are you really sure?", "This is no normal rebirth and it will take quite a bit of time to go back to your current progress.", delegate
                                {
                                }, delegate
                                {
                                    this.StartArtyChallenge();
                                }, "No", "Yes", false, false);
                            }, delegate
                            {
                            }, "Yes", "No", false, false);
                        }
                    }, false);
                }
            }
            GUI.EndScrollView();
            GUI.EndGroup();
        }
        private void show()
        {
            GUIStyle style = GUI.skin.GetStyle("Label");

            style.alignment = TextAnchor.UpperLeft;
            style.fontSize  = GuiBase.FontSize(16);
            GUIStyle style2 = GUI.skin.GetStyle("Button");

            style2.fontSize = GuiBase.FontSize(14);
            GUI.BeginGroup(new Rect(GuiBase.Width(290f), GuiBase.Height(110f), GuiBase.Width(660f), GuiBase.Height(480f)));
            GUI.Box(new Rect(GuiBase.Width(0f), GuiBase.Height(0f), GuiBase.Width(660f), GuiBase.Height(480f)), string.Empty);
            int num = (int)style.CalcHeight(new GUIContent(this.shownStory), GuiBase.Width(590f));

            if (!string.IsNullOrEmpty(this.shownStory))
            {
                this.scrollPosition = GuiBase.TouchScrollView(new Rect(GuiBase.Width(0f), GuiBase.Height(20f), GuiBase.Width(640f), GuiBase.Height(400f)), this.scrollPosition, new Rect(0f, GuiBase.Height(15f), GuiBase.Width(620f), (float)num + GuiBase.Height(60f)));
                style.fontStyle     = FontStyle.Bold;
                style.alignment     = TextAnchor.UpperCenter;
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(10f), GuiBase.Width(590f), GuiBase.Height(30f)), this.shownTitle);
                style.fontStyle = FontStyle.Normal;
                style.alignment = TextAnchor.UpperLeft;
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(50f), GuiBase.Width(590f), (float)num + GuiBase.Height(60f)), this.shownStory);
                GUI.EndScrollView();
                if (GUI.Button(new Rect(GuiBase.Width(320f), GuiBase.Height(440f), GuiBase.Width(100f), GuiBase.Height(30f)), "Back"))
                {
                    this.shownTitle = string.Empty;
                    this.shownStory = string.Empty;
                    this.shownIndex = -1;
                }
                if (this.shownIndex > 0 && GUI.Button(new Rect(GuiBase.Width(430f), GuiBase.Height(440f), GuiBase.Width(100f), GuiBase.Height(30f)), "Previous"))
                {
                    this.shownIndex--;
                    this.scrollPosition = Vector2.zero;
                    this.shownTitle     = StoryUi.UnlockedStoryParts[this.shownIndex].Key;
                    TextAsset textAsset = Resources.Load("Story/" + StoryUi.UnlockedStoryParts[this.shownIndex].Value) as TextAsset;
                    this.shownStory = textAsset.text;
                }
                if (StoryUi.UnlockedStoryParts.Count > this.shownIndex + 1 && GUI.Button(new Rect(GuiBase.Width(540f), GuiBase.Height(440f), GuiBase.Width(100f), GuiBase.Height(30f)), "Next"))
                {
                    this.shownIndex++;
                    this.scrollPosition = Vector2.zero;
                    this.shownTitle     = StoryUi.UnlockedStoryParts[this.shownIndex].Key;
                    TextAsset textAsset2 = Resources.Load("Story/" + StoryUi.UnlockedStoryParts[this.shownIndex].Value) as TextAsset;
                    this.shownStory = textAsset2.text;
                }
            }
            else
            {
                int num2 = 20;
                for (int i = 0; i < StoryUi.UnlockedStoryParts.Count; i++)
                {
                    KeyValuePair <string, string> part = StoryUi.UnlockedStoryParts[i];
                    if (i % 2 == 0)
                    {
                        this.AddStoryPartButton(part, num2, 20, i);
                    }
                    else
                    {
                        num2 = this.AddStoryPartButton(part, num2, 320, i);
                    }
                }
                if (!string.IsNullOrEmpty(StoryUi.infoText))
                {
                    GUI.Label(new Rect(GuiBase.Width(40f), GuiBase.Height((float)num2), GuiBase.Width(590f), GuiBase.Height(30f)), StoryUi.infoText);
                }
            }
            GUI.EndGroup();
            style2.fontSize = GuiBase.FontSize(16);
        }
Example #15
0
        public static void Show()
        {
            GUIStyle style  = GUI.skin.GetStyle("Label");
            GUIStyle style2 = GUI.skin.GetStyle("Button");

            style.alignment = TextAnchor.UpperLeft;
            style.fontSize  = GuiBase.FontSize(16);
            style2.fontSize = GuiBase.FontSize(16);
            App.State.PremiumBoni.CheckIfGPIsAdjusted();
            GUI.Box(new Rect(GuiBase.Width(290f), GuiBase.Height(110f), GuiBase.Width(660f), GuiBase.Height(480f)), string.Empty);
            GodPowerUi.scrollPosition = GuiBase.TouchScrollView(new Rect(GuiBase.Width(280f), GuiBase.Height(120f), GuiBase.Width(660f), GuiBase.Height(430f)), GodPowerUi.scrollPosition, new Rect(0f, GuiBase.Height(20f), GuiBase.Width(620f), GuiBase.Height((float)GodPowerUi.marginTop)));
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(30f), GuiBase.Width(400f), GuiBase.Height(30f)), "Here you can buy various offers with your god power.");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(68f), GuiBase.Width(150f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.GodPower);
            GUI.Label(new Rect(GuiBase.Width(150f), GuiBase.Height(60f), GuiBase.Width(40f), GuiBase.Height(40f)), GodPowerUi.godPower);
            GodPowerUi.marginTop = 105;
            string tooltip = string.Empty;

            if (App.State.Statistic.UltimateBaalChallengesFinished > 0 || App.State.Statistic.ArtyChallengesFinished > 0)
            {
                tooltip = "The value in brackets is the total boost with your crystal power included.";
            }
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(600f), GuiBase.Height(30f)), new GUIContent("You can adjust unused god power for additional stat multiplier.", tooltip));
            GodPowerUi.marginTop += 30;
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(300f), GuiBase.Height(30f)), new GUIContent("Bonus Physical: "));
            GUI.Label(new Rect(GuiBase.Width(250f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(300f), GuiBase.Height(30f)), new GUIContent(" % (" + (App.State.PremiumBoni.GpBoniPhysical * (1 + App.State.PremiumBoni.CrystalPower / 1000)).GuiText + ")"));
            App.State.PremiumBoni.GpBoniPhysical = (int)GUI.HorizontalSlider(new Rect(GuiBase.Width(340f), GuiBase.Height((float)(GodPowerUi.marginTop + 2)), GuiBase.Width(200f), GuiBase.Height(30f)), (float)App.State.PremiumBoni.GpBoniPhysical.ToInt(), 0f, (float)App.State.PremiumBoni.MaxBoniPhysical);
            GodPowerUi.addTextField(ref App.State.PremiumBoni.GpBoniPhysical, App.State.PremiumBoni.GodPower);
            GodPowerUi.marginTop += 30;
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(300f), GuiBase.Height(30f)), new GUIContent("Bonus Mystic: "));
            GUI.Label(new Rect(GuiBase.Width(250f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(300f), GuiBase.Height(30f)), new GUIContent(" % (" + (App.State.PremiumBoni.GpBoniMystic * (1 + App.State.PremiumBoni.CrystalPower / 1000)).GuiText + ")"));
            App.State.PremiumBoni.GpBoniMystic = (int)GUI.HorizontalSlider(new Rect(GuiBase.Width(340f), GuiBase.Height((float)(GodPowerUi.marginTop + 2)), GuiBase.Width(200f), GuiBase.Height(30f)), (float)App.State.PremiumBoni.GpBoniMystic.ToInt(), 0f, (float)App.State.PremiumBoni.MaxBoniMystic);
            GodPowerUi.addTextField(ref App.State.PremiumBoni.GpBoniMystic, App.State.PremiumBoni.GodPower);
            GodPowerUi.marginTop += 30;
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(300f), GuiBase.Height(30f)), new GUIContent("Bonus Battle: "));
            GUI.Label(new Rect(GuiBase.Width(250f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(300f), GuiBase.Height(30f)), new GUIContent(" % (" + (App.State.PremiumBoni.GpBoniBattle * (1 + App.State.PremiumBoni.CrystalPower / 1000)).GuiText + ")"));
            App.State.PremiumBoni.GpBoniBattle = (int)GUI.HorizontalSlider(new Rect(GuiBase.Width(340f), GuiBase.Height((float)(GodPowerUi.marginTop + 2)), GuiBase.Width(200f), GuiBase.Height(30f)), (float)App.State.PremiumBoni.GpBoniBattle.ToInt(), 0f, (float)App.State.PremiumBoni.MaxBoniBattle);
            GodPowerUi.addTextField(ref App.State.PremiumBoni.GpBoniBattle, App.State.PremiumBoni.GodPower);
            GodPowerUi.marginTop += 30;
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(300f), GuiBase.Height(30f)), new GUIContent("Bonus Creating: "));
            GUI.Label(new Rect(GuiBase.Width(250f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(300f), GuiBase.Height(30f)), new GUIContent(" % (" + (App.State.PremiumBoni.GpBoniCreating * (1 + App.State.PremiumBoni.CrystalPower / 1000)).GuiText + ")"));
            App.State.PremiumBoni.GpBoniCreating = (int)GUI.HorizontalSlider(new Rect(GuiBase.Width(340f), GuiBase.Height((float)(GodPowerUi.marginTop + 2)), GuiBase.Width(200f), GuiBase.Height(30f)), (float)App.State.PremiumBoni.GpBoniCreating.ToInt(), 0f, (float)App.State.PremiumBoni.MaxBoniCreating);
            GodPowerUi.addTextField(ref App.State.PremiumBoni.GpBoniCreating, App.State.PremiumBoni.GodPower);
            GodPowerUi.marginTop += 35;
            style.fontStyle       = FontStyle.Bold;
            if (App.State.PremiumBoni.CrystalPower > 0 || App.State.PremiumBoni.CrystalBonusBuilding > 0)
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(450f), GuiBase.Height(30f)), new GUIContent(string.Concat(new object[]
                {
                    "Your current creating speed multiplier: ",
                    App.State.PremiumBoni.CreatingSpeedUpPercent(false),
                    " % (",
                    App.State.PremiumBoni.CreatingSpeedUpPercent(true),
                    ")"
                }), string.Concat(new object[]
                {
                    "The higher your multiplier, the faster you can create things.\n",
                    App.State.PremiumBoni.CreatingSpeedUpPercent(false),
                    " from god power and ",
                    App.State.PremiumBoni.CrystalPower / 2,
                    " from crystal power."
                })));
                string text = ".";
                if (App.State.PremiumBoni.CrystalBonusBuilding > 0)
                {
                    text = ", increased by " + App.State.PremiumBoni.CrystalBonusBuilding.GuiText + " % from equipped crystals.";
                }
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)(GodPowerUi.marginTop + 28)), GuiBase.Width(450f), GuiBase.Height(30f)), new GUIContent(string.Concat(new object[]
                {
                    "Your current building speed multiplier: ",
                    App.State.PremiumBoni.BuildingSpeedUpPercent(false),
                    " % (",
                    App.State.PremiumBoni.BuildingSpeedUpPercent(true),
                    ")"
                }), string.Concat(new object[]
                {
                    "The higher your multiplier, the faster you can build monuments and upgrades.\n",
                    App.State.PremiumBoni.BuildingSpeedUpPercent(false),
                    " from god power and ",
                    App.State.PremiumBoni.CrystalPower / 2,
                    " from crystal power",
                    text
                })));
            }
            else
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(450f), GuiBase.Height(30f)), new GUIContent("Your current creating speed multiplier: " + App.State.PremiumBoni.CreatingSpeedUpPercent(true) + " %", "The higher your multiplier, the faster you can create things.\n"));
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)(GodPowerUi.marginTop + 28)), GuiBase.Width(450f), GuiBase.Height(30f)), new GUIContent("Your current building speed multiplier: " + App.State.PremiumBoni.BuildingSpeedUpPercent(true) + " %", "The higher your multiplier, the faster you can build monuments and upgrades."));
            }
            if (App.State.Statistic.UltimateBaalChallengesFinished > 0 || App.State.Statistic.ArtyChallengesFinished > 0)
            {
                GodPowerUi.marginTop += 30;
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)(GodPowerUi.marginTop + 28)), GuiBase.Width(400f), GuiBase.Height(30f)), new GUIContent("Crystal Power: " + App.State.PremiumBoni.CrystalPower.GuiText, "If you have crystals equipped when you rebirth, you will receive 1 crystal power for each grade (2 for ultimate crystals, 3 for god crystals).\nEach crystal power will add 0.5% to your creating speed, building speed multiplier, and increases the effectiveness of unused godpower adjusted by 0.1%."));
            }
            if (App.State.Statistic.HighestGodDefeated >= 28 && !App.State.Statistic.HasStartedArtyChallenge)
            {
                GodPowerUi.marginTop += 61;
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(600f), GuiBase.Height(30f)), new GUIContent("Your current chance to lose levels on a miss in the TBS - Game: " + (100 - App.State.PremiumBoni.TbsMissreduction) + " %", "The lower the chance, the less likely you will lose a level when you miss on the TBS - Game. (20% is minimum)"));
                GodPowerUi.marginTop += 28;
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(600f), GuiBase.Height(30f)), new GUIContent("The progress from the TBS - Game you keep after rebirthing: " + App.State.PremiumBoni.TbsProgressAfterRebirth + " %", "After rebirthing you will keep the shown % of your levels in the TBS - Game. (80% is maximum)"));
                GodPowerUi.marginTop += 28;
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(600f), GuiBase.Height(30f)), new GUIContent("Chance for double points in TBS: " + App.State.PremiumBoni.TbsDoublePoints + " %", "If you hit the white bar in TBS, this is your chance to get twice as much points. (100% is maximum)"));
                GodPowerUi.marginTop += 28;
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(600f), GuiBase.Height(30f)), new GUIContent("Extra Pixels for the white area: " + App.State.PremiumBoni.TbsExtraPixels, "The current (and also the minimum) width of the white area is increased by " + App.State.PremiumBoni.TbsExtraPixels + " pixels. (3 is maximum)"));
                GodPowerUi.marginTop -= 20;
            }
            style.fontStyle       = FontStyle.Normal;
            GodPowerUi.marginTop += 70;
            GodPowerUi.marginTop  = GodPowerUi.AddItem("Increase creating speed permanently by 2%", " increases your creating speed permanently by 2%.", GodPowerUi.marginTop, 1, style, delegate
            {
                App.State.PremiumBoni.AddCreationSpeed(2);
                GuiBase.ShowToast("Your creating speed multiplier is now increased by 2%!");
            });
            GodPowerUi.marginTop = GodPowerUi.AddItem("Increase creating speed permanently by 5%", " increases your creating speed permanently by 5%.", GodPowerUi.marginTop, 2, style, delegate
            {
                App.State.PremiumBoni.AddCreationSpeed(5);
                GuiBase.ShowToast("Your creating speed multiplier is now increased by 5%!");
            });
            GodPowerUi.marginTop = GodPowerUi.AddItem("Increase creating speed permanently by 15%", " increases your creating speed permanently by 15%.", GodPowerUi.marginTop, 5, style, delegate
            {
                App.State.PremiumBoni.AddCreationSpeed(15);
                GuiBase.ShowToast("Your creating speed multiplier is now increased by 15%!");
            });
            GodPowerUi.marginTop = GodPowerUi.AddItem("Increase creating speed permanently by 35%", " increases your creating speed permanently by 35%.", GodPowerUi.marginTop, 10, style, delegate
            {
                App.State.PremiumBoni.AddCreationSpeed(35);
                GuiBase.ShowToast("Your creating speed multiplier is now increased by 35%!");
            });
            GodPowerUi.marginTop = GodPowerUi.AddItem("Increase creating speed permanently by 350%", " increases your creating speed permanently by 350%.", GodPowerUi.marginTop, 100, style, delegate
            {
                App.State.PremiumBoni.AddCreationSpeed(350);
                GuiBase.ShowToast("Your creating speed multiplier is now increased by 350%!");
            });
            GodPowerUi.marginTop += 20;
            GodPowerUi.marginTop  = GodPowerUi.AddItem("Increase building speed permanently by 2%", " increases your building speed permanently by 2%.", GodPowerUi.marginTop, 1, style, delegate
            {
                App.State.PremiumBoni.AddBuildingSpeed(2);
                GuiBase.ShowToast("Your building speed multiplier is now increased by 2%!");
            });
            GodPowerUi.marginTop = GodPowerUi.AddItem("Increase building speed permanently by 5%", " increases your building speed permanently by 5%.", GodPowerUi.marginTop, 2, style, delegate
            {
                App.State.PremiumBoni.AddBuildingSpeed(5);
                GuiBase.ShowToast("Your building speed multiplier is now increased by 5%!");
            });
            GodPowerUi.marginTop = GodPowerUi.AddItem("Increase building speed permanently by 15%", " increases your building speed permanently by 15%.", GodPowerUi.marginTop, 5, style, delegate
            {
                App.State.PremiumBoni.AddBuildingSpeed(15);
                GuiBase.ShowToast("Your building speed multiplier is now increased by 15%!");
            });
            GodPowerUi.marginTop = GodPowerUi.AddItem("Increase building speed permanently by 35%", " increases your building speed permanently by 35%.", GodPowerUi.marginTop, 10, style, delegate
            {
                App.State.PremiumBoni.AddBuildingSpeed(35);
                GuiBase.ShowToast("Your building speed multiplier is now increased by 35%!");
            });
            GodPowerUi.marginTop = GodPowerUi.AddItem("Increase building speed permanently by 350%", " increases your building speed permanently by 350%.", GodPowerUi.marginTop, 100, style, delegate
            {
                App.State.PremiumBoni.AddBuildingSpeed(350);
                GuiBase.ShowToast("Your building speed multiplier is now increased by 350%!");
            });
            GodPowerUi.marginTop += 20;
            GodPowerUi.marginTop  = GodPowerUi.AddItem("Double your statistic multi (currently: " + App.State.PremiumBoni.StatisticMulti.GuiText + " x)", "your statistic multi will double. (It still can't be higher than your god multi, so only buy it, if you feel like your god multi outruns your statistic multi by far)", GodPowerUi.marginTop, 50, style, delegate
            {
                App.State.PremiumBoni.StatisticMulti = App.State.PremiumBoni.StatisticMulti * 2;
                GuiBase.ShowToast("Your statistic multi is now twice as high!");
            });
            GodPowerUi.marginTop += 20;
            GodPowerUi.marginTop  = GodPowerUi.AddItem(string.Concat(new object[]
            {
                "Increase the count of creations per bar by one. \nYou need to be able to afford it or nothing will be created.\nCurrently you can create up to ",
                App.State.PremiumBoni.CreationCountBoni(true).ToInt() + 1,
                " (",
                App.State.PremiumBoni.CreationCountBoni(false).ToInt() + 1,
                " from god power) at once."
            }), "increases the count you create for each progressbar in 'Create' by one.", GodPowerUi.marginTop, 50, style, delegate
            {
                App.State.PremiumBoni.AddCreationCountBoni(1);
                GuiBase.ShowToast("You can now create more items for each progress!");
            });
            GodPowerUi.marginTop += 100;
            GodPowerUi.marginTop  = GodPowerUi.AddItem("Increase your maximum Clones by 1 instantly.\nAlso increases your soft cap by 1.", "increases your maximum clones by 1.", GodPowerUi.marginTop, 1, style, delegate
            {
                App.State.Clones.MaxShadowClones += 1;
                App.State.Clones.AbsoluteMaximum++;
                GuiBase.ShowToast("Your maximum clones are increased by 1!");
            });
            GodPowerUi.marginTop += 25;
            GodPowerUi.marginTop  = GodPowerUi.AddItem("Increase your maximum Clones by 1000 instantly.\nAlso increases your soft cap by 1000.", "increases your maximum clones by 1000.", GodPowerUi.marginTop, 3, style, delegate
            {
                App.State.Clones.MaxShadowClones += 1000;
                App.State.Clones.AbsoluteMaximum += 1000;
                GuiBase.ShowToast("Your maximum clones are increased by 1000!");
            });
            GodPowerUi.marginTop += 25;
            GodPowerUi.marginTop  = GodPowerUi.AddItem("Increase your maximum Clones by 10000 instantly.\nAlso increases your soft cap by 10000.", "increases your maximum clones by 10000.", GodPowerUi.marginTop, 25, style, delegate
            {
                App.State.Clones.MaxShadowClones += 10000;
                App.State.Clones.AbsoluteMaximum += 10000;
                GuiBase.ShowToast("Your maximum clones are increased by 10000!");
            });
            GodPowerUi.marginTop += 25;
            GodPowerUi.marginTop  = GodPowerUi.AddItem("Increase your maximum Clones by 100,000 instantly.\nAlso increases your soft cap by 100,000.", "increases your maximum clones by 100,000.", GodPowerUi.marginTop, 250, style, delegate
            {
                App.State.Clones.MaxShadowClones += 100000;
                App.State.Clones.AbsoluteMaximum += 100000;
                GuiBase.ShowToast("Your maximum clones are increased by 100,000!");
            });
            if (App.State.Statistic.HighestGodDefeated >= 28)
            {
                if (App.State.PremiumBoni.TbsMissreduction < 80)
                {
                    GodPowerUi.marginTop += 25;
                    GodPowerUi.marginTop  = GodPowerUi.AddItem("Reduce the chance to lose a level on the TBS - Game when you miss by 5%.", "decreases the chance to lose points after a miss in the TBS - Game by 5%. (20% is minimum).", GodPowerUi.marginTop, 10, style, delegate
                    {
                        App.State.PremiumBoni.TbsMissreduction += 5;
                        GuiBase.ShowToast("The chance to lose a level if you miss in the TBS - Game is reduced by 5%!");
                    });
                }
                if (App.State.PremiumBoni.TbsProgressAfterRebirth < 80)
                {
                    GodPowerUi.marginTop += 25;
                    GodPowerUi.marginTop  = GodPowerUi.AddItem("Keep 10% of your levels from the TBS - Game even after rebirthing.", "you will Keep 10% more of your levels from the TBS - Game after rebirthing. (80% is maximum)", GodPowerUi.marginTop, 10, style, delegate
                    {
                        App.State.PremiumBoni.TbsProgressAfterRebirth += 10;
                        GuiBase.ShowToast("You keep 10% more of your levels after rebirthing!");
                    });
                }
                if (App.State.PremiumBoni.TbsDoublePoints < 100)
                {
                    GodPowerUi.marginTop += 25;
                    GodPowerUi.marginTop  = GodPowerUi.AddItem("Increase the chance to score twice as much points in TBS by 5%.", "your chance to score double points in TBS after a hit will increase by 5 %", GodPowerUi.marginTop, 5, style, delegate
                    {
                        App.State.PremiumBoni.TbsDoublePoints += 5;
                        GuiBase.ShowToast("Your chance to score double points in TBS is increased by 5%!");
                    });
                }
                if (App.State.PremiumBoni.TbsExtraPixels < 3)
                {
                    GodPowerUi.marginTop += 25;
                    GodPowerUi.marginTop  = GodPowerUi.AddItem("Increase the white area for TBS by 1 pixel.", "the current (and also the minimum) width of the white area in the TBS-Game will be increased by 1 pixel", GodPowerUi.marginTop, 33, style, delegate
                    {
                        App.State.PremiumBoni.TbsExtraPixels++;
                        GuiBase.ShowToast("The current (and also the minimum) width of the white area in TBS is increased by 1 pixel!");
                    });
                }
            }
            string str = "male";

            if (App.State.Avatar.IsFemale)
            {
                str = "female";
            }
            GodPowerUi.marginTop += 20;
            if (!App.State.PremiumBoni.HasUnlimitedGenderChange)
            {
                GodPowerUi.marginTop = GodPowerUi.AddItem("Change your gender. Your current gender is " + str, "you can choose your gender again.", GodPowerUi.marginTop, 20, style, delegate
                {
                    App.State.Avatar.GenderChosen    = false;
                    App.State.GameSettings.AvaScaled = false;
                    HeroImage.Init(true);
                });
                GodPowerUi.marginTop += 30;
                GodPowerUi.marginTop  = GodPowerUi.AddItem("Change your name. Your current name is " + App.State.AvatarName, "you can rename your character.", GodPowerUi.marginTop, 20, style, delegate
                {
                    App.State.ChangeAvatarName = true;
                });
            }
            else
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(390f), GuiBase.Height(100f)), "Change your gender. Your current gender is " + str);
                if (GUI.Button(new Rect(GuiBase.Width(420f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(140f), GuiBase.Height(28f)), new GUIContent("Change")))
                {
                    App.State.Avatar.GenderChosen    = false;
                    App.State.GameSettings.AvaScaled = false;
                    HeroImage.Init(true);
                }
                GodPowerUi.marginTop += 40;
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(390f), GuiBase.Height(100f)), "Change your name. Your current name is " + App.State.AvatarName);
                if (GUI.Button(new Rect(GuiBase.Width(420f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(140f), GuiBase.Height(28f)), new GUIContent("Change")))
                {
                    App.State.ChangeAvatarName = true;
                }
            }
            GodPowerUi.marginTop += 40;
            if (App.State.PremiumBoni.AutoBuyCostReduction < 20)
            {
                GodPowerUi.marginTop += 10;
                GodPowerUi.marginTop  = GodPowerUi.AddItem("Decrease Auto buy cost. Currently you pay " + (120 - App.State.PremiumBoni.AutoBuyCostReduction) + " %.", "decreases the cost for auto buy by 1%.", GodPowerUi.marginTop, 3, style, delegate
                {
                    App.State.PremiumBoni.AutoBuyCostReduction++;
                });
            }
            if (!App.State.PremiumBoni.HasPetHalfStats)
            {
                GodPowerUi.marginTop += 20;
                GodPowerUi.marginTop  = GodPowerUi.AddItem("Pet half stats. This will unlock a button to create clones with half the stats of your pets.", "adds a button 'Half stats' and 'Half stats for all' to the clone creation screen of your pets.", GodPowerUi.marginTop, 100, style, delegate
                {
                    App.State.PremiumBoni.HasPetHalfStats = true;
                    GuiBase.ShowToast("You can now adjust the stats of your clones with one button! It might not be the most effective way but its fast and easy.");
                });
                GodPowerUi.marginTop += 20;
            }
            else
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(550f), GuiBase.Height(50f)), "Pet half stats is already bought");
                GodPowerUi.marginTop += 20;
            }
            if (!App.State.PremiumBoni.ImprovedNextAt)
            {
                GodPowerUi.marginTop += 20;
                GodPowerUi.marginTop  = GodPowerUi.AddItem("Improved 'Next at'. With this your clones will stay at the current skill until a next one is available!", "the 'Next at'-option won't remove clones if there is no skill unlocked.", GodPowerUi.marginTop, 99, style, delegate
                {
                    App.State.PremiumBoni.ImprovedNextAt = true;
                    GuiBase.ShowToast("Now you can say good bye to micromanaging skills. Just have 'Next at' on with a low value until all skills / trainings are unlocked.");
                });
            }
            else
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(550f), GuiBase.Height(50f)), "Improved 'Next at' is already bought");
                GodPowerUi.marginTop += 20;
            }
            if (!App.State.PremiumBoni.CanShowAlerts)
            {
                GodPowerUi.marginTop += 20;
                GodPowerUi.marginTop  = GodPowerUi.AddItem("Show an alert button if your divinity generator is empty or you can feed your pets.", "a button will show up below the achievement toggle, if your divinity generator is empty or your pets can be fed.", GodPowerUi.marginTop, 50, style, delegate
                {
                    App.State.PremiumBoni.CanShowAlerts = true;
                    GuiBase.ShowToast("Now a button will be shown, if your divinity generator is empty or your pets can be fed.");
                });
            }
            else
            {
                GodPowerUi.marginTop += 20;
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(550f), GuiBase.Height(50f)), "The alert button is already bought");
                GodPowerUi.marginTop += 20;
            }
            GodPowerUi.marginTop += 35;
            style.fontStyle       = FontStyle.Bold;
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)GodPowerUi.marginTop), GuiBase.Width(550f), GuiBase.Height(50f)), "The offers below are temporary and lost when you rebirth.");
            style.fontStyle       = FontStyle.Normal;
            GodPowerUi.marginTop += 35;
            CDouble newClones = App.State.Clones.MaxShadowClones - App.State.Clones.Count;

            if (newClones > 99999)
            {
                newClones = 99999;
            }
            GodPowerUi.marginTop = GodPowerUi.AddItem("Create up to 99999 Shadow Clones at once! \nThis can't be higher than your maximum clones.", " will let you create " + newClones + " shadow clones at once.", GodPowerUi.marginTop, 3, style, delegate
            {
                App.State.Clones.Count += newClones;
                App.State.Clones.TotalClonesCreated          += newClones;
                App.State.Statistic.TotalShadowClonesCreated += newClones;
                if (App.State.Clones.Count > App.State.Clones.MaxShadowClones)
                {
                    App.State.Clones.Count = App.State.Clones.MaxShadowClones;
                }
                GuiBase.ShowToast("You created " + newClones + " shadow clones at once!");
            });
            GodPowerUi.marginTop += 20;
            CDouble divinityToGet = App.State.DivinityGainSec(true) * 3600;

            GodPowerUi.marginTop = GodPowerUi.AddItem("Increase your 'Divinity' by " + divinityToGet.ToGuiText(true), " will increase your current 'Divinity' by " + divinityToGet.ToGuiText(true), GodPowerUi.marginTop, 1, style, delegate
            {
                App.State.Money += divinityToGet;
                GuiBase.ShowToast("Your 'Divinity' is increased by " + divinityToGet.ToGuiText(true));
            });
            CDouble divinityV2 = divinityToGet * 4;

            GodPowerUi.marginTop = GodPowerUi.AddItem("Increase your 'Divinity' by " + divinityV2.ToGuiText(true), " will increase your current 'Divinity' by " + divinityV2.ToGuiText(true), GodPowerUi.marginTop, 3, style, delegate
            {
                App.State.Money += divinityV2;
                GuiBase.ShowToast("Your 'Divinity' is increased by " + divinityV2.ToGuiText(true));
            });
            CDouble divinityV3 = divinityToGet * 8;

            GodPowerUi.marginTop = GodPowerUi.AddItem("Increase your 'Divinity' by " + divinityV3.ToGuiText(true), " will increase your current 'Divinity' by " + divinityV3.ToGuiText(true), GodPowerUi.marginTop, 5, style, delegate
            {
                App.State.Money += divinityV3;
                GuiBase.ShowToast("Your 'Divinity' is increased by " + divinityV3.ToGuiText(true));
            });
            GUI.EndScrollView();
        }
Example #16
0
        protected void Show(bool syncScrollbars)
        {
            if (!AreaRightUi.IsCloneCountInitialized)
            {
                AreaRightUi.cloneCountString        = App.State.GameSettings.ClonesToAddCount.ToString();
                AreaRightUi.IsCloneCountInitialized = true;
            }
            if (this.Init())
            {
                return;
            }
            this.SyncScrollbars = syncScrollbars;
            GUI.BeginGroup(new Rect(GuiBase.Width(280f), GuiBase.Height(110f), GuiBase.Width(670f), GuiBase.Height(480f)));
            GUI.Box(new Rect(GuiBase.Width(10f), GuiBase.Height(0f), GuiBase.Width(660f), GuiBase.Height(80f)), string.Empty);
            GUIStyle style = GUI.skin.GetStyle("Label");

            style.alignment = TextAnchor.UpperLeft;
            style.fontSize  = GuiBase.FontSize(16);
            GUIStyle style2 = GUI.skin.GetStyle("TextField");

            style2.fontSize  = GuiBase.FontSize(14);
            style2.alignment = TextAnchor.MiddleCenter;
            GUI.Label(new Rect(GuiBase.Width(30f), GuiBase.Height(11f), GuiBase.Width(220f), GuiBase.Height(30f)), new GUIContent("Clones to add / remove", "Click on the buttons for standard values or in the input field, then input the number of clones each click on + / - should add / remove."));
            if (App.CurrentPlattform == Plattform.Android)
            {
                GUIStyle textField = Gui.ChosenSkin.textField;
                if (GUI.Button(new Rect(GuiBase.Width(210f), GuiBase.Height(10f), GuiBase.Width(65f), GuiBase.Height(25f)), AreaRightUi.CloneCountString, textField))
                {
                    base.ShowNumberInput("Clones to add / remove", App.State.GameSettings.ClonesToAddCount, App.State.Clones.MaxShadowClones, delegate(CDouble x)
                    {
                        AreaRightUi.CloneCountString = x.ToString();
                    });
                }
            }
            else
            {
                AreaRightUi.CloneCountString = GUI.TextField(new Rect(GuiBase.Width(210f), GuiBase.Height(10f), GuiBase.Width(65f), GuiBase.Height(25f)), AreaRightUi.CloneCountString, style2);
            }
            if (GUI.Button(new Rect(GuiBase.Width(290f), GuiBase.Height(10f), GuiBase.Width(45f), GuiBase.Height(25f)), "1"))
            {
                this.SetCountAfterButton(1);
            }
            if (GUI.Button(new Rect(GuiBase.Width(340f), GuiBase.Height(10f), GuiBase.Width(45f), GuiBase.Height(25f)), "10"))
            {
                this.SetCountAfterButton(10);
            }
            if (GUI.Button(new Rect(GuiBase.Width(390f), GuiBase.Height(10f), GuiBase.Width(45f), GuiBase.Height(25f)), "100"))
            {
                this.SetCountAfterButton(100);
            }
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(10f), GuiBase.Width(45f), GuiBase.Height(25f)), "1K"))
            {
                this.SetCountAfterButton(1000);
            }
            if (GUI.Button(new Rect(GuiBase.Width(490f), GuiBase.Height(10f), GuiBase.Width(45f), GuiBase.Height(25f)), "10K"))
            {
                this.SetCountAfterButton(10000);
            }
            if (GUI.Button(new Rect(GuiBase.Width(540f), GuiBase.Height(10f), GuiBase.Width(50f), GuiBase.Height(25f)), "100K"))
            {
                this.SetCountAfterButton(100000);
            }
            if (GUI.Button(new Rect(GuiBase.Width(595f), GuiBase.Height(10f), GuiBase.Width(53f), GuiBase.Height(25f)), "MAX"))
            {
                AreaRightUi.CloneCountString = App.State.Clones.MaxShadowClones.ToString();
            }
            GUI.Box(new Rect(GuiBase.Width(10f), GuiBase.Height(85f), GuiBase.Width(660f), GuiBase.Height(395f)), string.Empty);
            int num = 90;

            style.alignment = TextAnchor.UpperCenter;
            style.fontStyle = FontStyle.Bold;
            this.ShowLabels(num, style);
            style.fontStyle = FontStyle.Normal;
            num            += 45;
            if (App.State.GameSettings.SyncScrollbars && this.SyncScrollbars)
            {
                AreaRightUi.scrollPositionStatic = GuiBase.TouchScrollView(new Rect(GuiBase.Width(0f), GuiBase.Height((float)num), GuiBase.Width(650f), GuiBase.Height(330f)), AreaRightUi.scrollPositionStatic, new Rect(0f, GuiBase.Height((float)num), GuiBase.Width(620f), GuiBase.Height((float)this.scrollViewHeight)));
            }
            else
            {
                this.scrollPosition = GuiBase.TouchScrollView(new Rect(GuiBase.Width(0f), GuiBase.Height((float)num), GuiBase.Width(650f), GuiBase.Height(330f)), this.scrollPosition, new Rect(0f, GuiBase.Height((float)num), GuiBase.Width(620f), GuiBase.Height((float)this.scrollViewHeight)));
            }
            this.ShowScrollViewElements(num, style);
            GUI.EndScrollView();
            GUI.EndGroup();
        }
        private void Show()
        {
            if (CreatingUi.scrollBarsToZero)
            {
                this.scrollPosition         = Vector2.zero;
                CreatingUi.scrollBarsToZero = false;
            }
            if (this.IsAchievement)
            {
                GuiBase.ShowAchievements(App.State.CreatingAchievements, "creating");
                return;
            }
            GUIStyle style = GUI.skin.GetStyle("Label");

            if (this.showAutoBuyOptions)
            {
                this.ShowAutoBuyOptions();
            }
            else if (this.creationToShow != null)
            {
                this.ShowBuyCreations();
            }
            else
            {
                style.fontSize = GuiBase.FontSize(16);
                GUI.Box(new Rect(GuiBase.Width(290f), GuiBase.Height(110f), GuiBase.Width(660f), GuiBase.Height(480f)), string.Empty);
                GUI.BeginGroup(new Rect(GuiBase.Width(280f), GuiBase.Height(110f), GuiBase.Width(670f), GuiBase.Height(480f)));
                int num = 20;
                GUI.Label(new Rect(GuiBase.Width(345f), GuiBase.Height((float)(num - 7)), GuiBase.Width(200f), GuiBase.Height(30f)), new GUIContent("Create Clones if not max", "If this is on, shadow clones will be created instead of the selected creation if they are not maxed already."));
                App.State.GameSettings.CreateShadowClonesIfNotMax = GUI.Toggle(new Rect(GuiBase.Width(580f), GuiBase.Height((float)(num - 5)), GuiBase.Width(70f), GuiBase.Height(30f)), App.State.GameSettings.CreateShadowClonesIfNotMax, new GUIContent(string.Empty));
                if (App.State.IsBuyUnlocked)
                {
                    string text = "If this is on, missing creations will be bought automatically if you have enough divinity.";
                    if (App.State.PremiumBoni.AutoBuyCostReduction < 20)
                    {
                        text = string.Concat(new object[]
                        {
                            text,
                            "\nBut beware: there is an additional ",
                            20 - App.State.PremiumBoni.AutoBuyCostReduction,
                            "% transaction fee!"
                        });
                    }
                    App.State.GameSettings.AutoBuyCreations = GUI.Toggle(new Rect(GuiBase.Width(580f), GuiBase.Height((float)(num + 22)), GuiBase.Width(70f), GuiBase.Height(30f)), App.State.GameSettings.AutoBuyCreations, new GUIContent(string.Empty));
                    if (GUI.Button(new Rect(GuiBase.Width(345f), GuiBase.Height((float)(num + 20)), GuiBase.Width(220f), GuiBase.Height(30f)), new GUIContent("Auto buy missing creations", text + "\nClick this button for more advanced settings.")))
                    {
                        this.showAutoBuyOptions = true;
                    }
                }
                num += 50;
                if (App.State.PremiumBoni.CreationCountBoni(true) > 0)
                {
                    num -= 25;
                    if (App.State.GameSettings.CreationToCreateCount == 0)
                    {
                        App.State.GameSettings.CreationToCreateCount = 1;
                    }
                    int num2 = App.State.PremiumBoni.CreationCountBoni(true).ToInt() + 1;
                    GUI.Label(new Rect(GuiBase.Width(30f), GuiBase.Height(15f), GuiBase.Width(155f), GuiBase.Height(30f)), new GUIContent("Creations to create: ", "Cost of resources to create one creation with 1 = 100%, 2 = 195% ... 10 = 775%, 11 = 825%, 12 = 875%..., Creation/s is 100% + 5% for each more than one."));
                    if (App.State.IsCrystalFactoryAvailable)
                    {
                        App.State.GameSettings.MaxAfterEquipCrystal = GUI.Toggle(new Rect(GuiBase.Width(240f), GuiBase.Height((float)(num - 25)), GuiBase.Width(70f), GuiBase.Height(30f)), App.State.GameSettings.MaxAfterEquipCrystal, new GUIContent(string.Empty, "If this is on, your creation count will be adjusted to your maximum count after equipping crystals."));
                    }
                    if (App.CurrentPlattform == Plattform.Android)
                    {
                        GUIStyle textField = Gui.ChosenSkin.textField;
                        if (GUI.Button(new Rect(GuiBase.Width(185f), GuiBase.Height(15f), GuiBase.Width(45f), GuiBase.Height(25f)), App.State.GameSettings.CreationToCreateCount.ToString(), textField))
                        {
                            base.ShowNumberInput("Creations to create (Max = " + (App.State.PremiumBoni.CreationCountBoni(true).ToInt() + 1) + ")", App.State.GameSettings.CreationToCreateCount, App.State.PremiumBoni.CreationCountBoni(true).ToInt() + 1, delegate(CDouble x)
                            {
                                App.State.GameSettings.CreationToCreateCount = x.ToInt();
                            });
                        }
                    }
                    else
                    {
                        this.CreationInput = GUI.TextField(new Rect(GuiBase.Width(185f), GuiBase.Height(15f), GuiBase.Width(45f), GuiBase.Height(25f)), App.State.GameSettings.CreationToCreateCount.ToString());
                    }
                    Rect position = new Rect(GuiBase.Width(30f), GuiBase.Height(50f), GuiBase.Width(200f), GuiBase.Height(30f));
                    if (position.Contains(Event.current.mousePosition) && this.creationCount != App.State.GameSettings.CreationToCreateCount)
                    {
                        this.creationCount = App.State.GameSettings.CreationToCreateCount;
                        foreach (Creation current in App.State.AllCreations)
                        {
                            current.InitSubItemCost(0);
                        }
                    }
                    App.State.GameSettings.CreationToCreateCount = (int)GUI.HorizontalSlider(position, (float)App.State.GameSettings.CreationToCreateCount, 1f, (float)num2);
                    num += 25;
                }
                style.alignment = TextAnchor.UpperCenter;
                style.fontStyle = FontStyle.Bold;
                GUI.Label(new Rect(GuiBase.Width(25f), GuiBase.Height((float)num), GuiBase.Width(200f), GuiBase.Height(30f)), "You are creating:");
                if (App.State.CreatingSpeedBoniDuration > 0L)
                {
                    GUI.Label(new Rect(GuiBase.Width(235f), GuiBase.Height((float)num), GuiBase.Width(400f), GuiBase.Height(30f)), "300% creation speed for the next " + Conv.MsToGuiText(App.State.CreatingSpeedBoniDuration, true) + "!");
                }
                style.fontStyle = FontStyle.Normal;
                num            += 35;
                Creation activeCreation = App.State.GameSettings.LastCreation;
                if (activeCreation == null)
                {
                    activeCreation = App.State.AllCreations.FirstOrDefault((Creation x) => x.IsActive);
                }
                if (activeCreation == null)
                {
                    activeCreation = App.State.AllCreations.FirstOrDefault((Creation x) => x.TypeEnum == Creation.CreationType.Shadow_clone);
                }
                GuiBase.CreateProgressBar(num, activeCreation.getPercent(), activeCreation.Name, activeCreation.Description, GuiBase.progressBg, GuiBase.progressFgBlue);
                style.alignment = TextAnchor.UpperLeft;
                GUI.Label(new Rect(GuiBase.Width(255f), GuiBase.Height((float)num), GuiBase.Width(200f), GuiBase.Height(30f)), "You have: " + activeCreation.Count.ToGuiText(true));
                string text2 = "Change creation";
                if (this.ChooseCreationIsOpen)
                {
                    text2 = "More Info";
                }
                if (GUI.Button(new Rect(GuiBase.Width(485f), GuiBase.Height((float)(num + 10)), GuiBase.Width(140f), GuiBase.Height(30f)), text2))
                {
                    this.ChooseCreationIsOpen = !this.ChooseCreationIsOpen;
                    if (this.ChooseCreationIsOpen)
                    {
                        this.scrollPosition = this.scrollPositionAllCreations;
                    }
                    else
                    {
                        this.scrollPositionAllCreations = this.scrollPosition;
                        this.scrollPosition             = Vector2.zero;
                    }
                }
                num += 25;
                GUI.Label(new Rect(GuiBase.Width(255f), GuiBase.Height((float)num), GuiBase.Width(250f), GuiBase.Height(30f)), "You created: " + activeCreation.TotalCreated.ToGuiText(true));
                num += 35;
                List <CreationCost> list = CreationCost.RequiredCreations(activeCreation.TypeEnum, 0L, false);
                int num3 = 290;
                if (this.ChooseCreationIsOpen)
                {
                    style.fontStyle = FontStyle.Bold;
                    GUI.Label(new Rect(GuiBase.Width(30f), GuiBase.Height((float)num), GuiBase.Width(150f), GuiBase.Height(30f)), "Creation");
                    GUI.Label(new Rect(GuiBase.Width(160f), GuiBase.Height((float)num), GuiBase.Width(80f), GuiBase.Height(30f)), "Count", style);
                    GUI.Label(new Rect(GuiBase.Width(290f), GuiBase.Height((float)num), GuiBase.Width(80f), GuiBase.Height(30f)), "Next At", style);
                    GUI.Label(new Rect(GuiBase.Width(375f), GuiBase.Height((float)num), GuiBase.Width(150f), GuiBase.Height(30f)), "Achieve.", style);
                    style.fontStyle = FontStyle.Normal;
                    GUI.Label(new Rect(GuiBase.Width(475f), GuiBase.Height((float)num), GuiBase.Width(40f), GuiBase.Height(30f)), new GUIContent("N A", "Off will ignore the next at. 1 will go to the next creation if the current number reached the count. 2 will go to the next creation if you created the count by yourself."), style);
                    App.State.GameSettings.CreationsNextAtMode = GUI.Toolbar(new Rect(GuiBase.Width(510f), GuiBase.Height((float)(num - 5)), GuiBase.Width(135f), GuiBase.Height(30f)), App.State.GameSettings.CreationsNextAtMode, this.toolbarNextAt);
                    num  += 35;
                    num3 -= 35;
                }
                this.scrollPosition = GuiBase.TouchScrollView(new Rect(GuiBase.Width(0f), GuiBase.Height((float)num), GuiBase.Width(660f), GuiBase.Height((float)num3)), this.scrollPosition, new Rect(0f, GuiBase.Height((float)num), GuiBase.Width(620f), GuiBase.Height((float)this.svHeight)));
                Achievement first = null;
                if (this.ChooseCreationIsOpen)
                {
                    for (int i = 0; i < App.State.AllCreations.Count; i++)
                    {
                        Creation creation = App.State.AllCreations[i];
                        if (creation.IsActive)
                        {
                            style.fontStyle = FontStyle.Bold;
                        }
                        GUI.Label(new Rect(GuiBase.Width(30f), GuiBase.Height((float)num), GuiBase.Width(145f), GuiBase.Height(30f)), new GUIContent(creation.Name, creation.Description), style);
                        GUI.Label(new Rect(GuiBase.Width(160f), GuiBase.Height((float)num), GuiBase.Width(150f), GuiBase.Height(35f)), creation.Count.ToGuiText(true), style);
                        if (App.CurrentPlattform == Plattform.Android && creation.TypeEnum != Creation.CreationType.Shadow_clone)
                        {
                            GUIStyle textField2 = Gui.ChosenSkin.textField;
                            if (GUI.Button(new Rect(GuiBase.Width(290f), GuiBase.Height((float)num), GuiBase.Width(70f), GuiBase.Height(25f)), creation.NextAtCount + string.Empty, textField2))
                            {
                                base.ShowNumberInput("Next at for " + creation.Name, creation.NextAtCount, 2147483647, delegate(CDouble x)
                                {
                                    creation.NextAtCount = x.ToInt();
                                });
                            }
                        }
                        else if (creation.TypeEnum != Creation.CreationType.Shadow_clone)
                        {
                            creation.NextAtString = GUI.TextField(new Rect(GuiBase.Width(290f), GuiBase.Height((float)num), GuiBase.Width(70f), GuiBase.Height(25f)), creation.NextAtCount.ToString());
                        }
                        if (!creation.GodToDefeat.IsDefeated)
                        {
                            GUI.Label(new Rect(GuiBase.Width(365f), GuiBase.Height((float)num), GuiBase.Width(300f), GuiBase.Height(30f)), "Defeat " + creation.GodToDefeat.Name + " to unlock", style);
                        }
                        else
                        {
                            first = App.State.CreatingAchievements.FirstOrDefault((Achievement x) => x.IntEnum == (int)creation.TypeEnum);
                            if (first != null)
                            {
                                this.AddAchievementImg(first, 370, num, 25);
                                Achievement achievement = App.State.CreatingAchievements.FirstOrDefault((Achievement x) => x.Id == first.Id + 1);
                                this.AddAchievementImg(achievement, 405, num, 25);
                                Achievement achievement2 = App.State.CreatingAchievements.FirstOrDefault((Achievement x) => x.Id == first.Id + 2);
                                this.AddAchievementImg(achievement2, 440, num, 25);
                            }
                            if (App.State.IsBuyUnlocked && creation.CanBuy && creation.TypeEnum != Creation.CreationType.Shadow_clone && GUI.Button(new Rect(GuiBase.Width(565f), GuiBase.Height((float)num), GuiBase.Width(60f), GuiBase.Height(25f)), "Buy"))
                            {
                                this.creationToShow = creation;
                            }
                            if (GUI.Button(new Rect(GuiBase.Width(475f), GuiBase.Height((float)num), GuiBase.Width(80f), GuiBase.Height(25f)), "Create"))
                            {
                                bool flag = false;
                                foreach (Creation current2 in App.State.AllCreations)
                                {
                                    if (!current2.GodToDefeat.IsDefeated && current2.IsActive)
                                    {
                                        flag = true;
                                    }
                                }
                                if (App.State.PrinnyBaal.IsFighting)
                                {
                                    flag = true;
                                }
                                if (flag)
                                {
                                    GuiBase.ShowToast("You can't create something while you fight a god!");
                                    App.State.GameSettings.LastCreation = creation;
                                }
                                else
                                {
                                    foreach (Creation current3 in App.State.AllCreations)
                                    {
                                        current3.IsActive = false;
                                    }
                                    creation.IsActive = true;
                                    App.State.GameSettings.LastCreation = creation;
                                    foreach (UltimateBeingV2 current4 in App.State.HomePlanet.UltimateBeingsV2)
                                    {
                                        current4.isCreating = false;
                                    }
                                }
                            }
                        }
                        if (creation.IsActive)
                        {
                            style.fontStyle = FontStyle.Normal;
                        }
                        num += 30;
                    }
                }
                else
                {
                    first = App.State.CreatingAchievements.FirstOrDefault((Achievement x) => x.IntEnum == (int)activeCreation.TypeEnum);
                    if (first != null)
                    {
                        GUI.Label(new Rect(GuiBase.Width(35f), GuiBase.Height((float)(num + 10)), GuiBase.Width(200f), GuiBase.Height(50f)), "Achievements for " + activeCreation.Name + ":");
                        this.AddAchievementImg(first, 255, num, 40);
                        Achievement achievement3 = App.State.CreatingAchievements.FirstOrDefault((Achievement x) => x.Id == first.Id + 1);
                        this.AddAchievementImg(achievement3, 315, num, 40);
                        Achievement achievement4 = App.State.CreatingAchievements.FirstOrDefault((Achievement x) => x.Id == first.Id + 2);
                        this.AddAchievementImg(achievement4, 375, num, 40);
                        num += 70;
                    }
                    if (list.Count > 0)
                    {
                        style.fontStyle = FontStyle.Bold;
                        int num4 = App.State.GameSettings.CreationToCreateCount;
                        if (num4 == 0)
                        {
                            num4 = 1;
                        }
                        GUI.Label(new Rect(GuiBase.Width(35f), GuiBase.Height((float)num), GuiBase.Width(210f), GuiBase.Height(50f)), string.Concat(new object[]
                        {
                            "Creations for ",
                            num4,
                            " x ",
                            activeCreation.Name
                        }));
                        if (activeCreation.Name.Length > 8)
                        {
                            num += 20;
                        }
                        style.alignment = TextAnchor.UpperCenter;
                        GUI.Label(new Rect(GuiBase.Width(210f), GuiBase.Height((float)num), GuiBase.Width(200f), GuiBase.Height(30f)), " you need");
                        GUI.Label(new Rect(GuiBase.Width(335f), GuiBase.Height((float)num), GuiBase.Width(200f), GuiBase.Height(30f)), " you have");
                        style.fontStyle = FontStyle.Normal;
                        num            += 30;
                        using (List <CreationCost> .Enumerator enumerator5 = list.GetEnumerator())
                        {
                            while (enumerator5.MoveNext())
                            {
                                CreationCost requirement = enumerator5.Current;
                                Creation     creation3   = App.State.AllCreations.FirstOrDefault((Creation x) => x.TypeEnum == requirement.TypeEnum);
                                GuiBase.CreateProgressBar(num, creation3.getPercent(), EnumName.Name(requirement.TypeEnum), creation3.Description, GuiBase.progressBg, GuiBase.progressFgBlue);
                                GUI.Label(new Rect(GuiBase.Width(210f), GuiBase.Height((float)(num + 5)), GuiBase.Width(200f), GuiBase.Height(30f)), requirement.CountNeeded.ToGuiText(true));
                                GUI.Label(new Rect(GuiBase.Width(335f), GuiBase.Height((float)(num + 5)), GuiBase.Width(200f), GuiBase.Height(30f)), creation3.Count.ToGuiText(true));
                                if (App.State.IsBuyUnlocked && creation3.CanBuy && creation3.TypeEnum != Creation.CreationType.Shadow_clone && GUI.Button(new Rect(GuiBase.Width(545f), GuiBase.Height((float)num), GuiBase.Width(80f), GuiBase.Height(30f)), "Buy"))
                                {
                                    this.creationToShow = creation3;
                                }
                                num += 35;
                            }
                        }
                        if (activeCreation.SubItemCreationCost.Count > 0)
                        {
                            num            += 10;
                            style.alignment = TextAnchor.UpperLeft;
                            style.fontStyle = FontStyle.Bold;
                            GUI.Label(new Rect(GuiBase.Width(35f), GuiBase.Height((float)num), GuiBase.Width(200f), GuiBase.Height(30f)), new GUIContent("Prerequisite Creations", "All creations needed to create the creations you need to create one." + activeCreation.Name));
                            style.alignment = TextAnchor.UpperCenter;
                            style.fontStyle = FontStyle.Normal;
                            num            += 30;
                            using (List <CreationCost> .Enumerator enumerator6 = activeCreation.SubItemCreationCost.GetEnumerator())
                            {
                                while (enumerator6.MoveNext())
                                {
                                    CreationCost requirement = enumerator6.Current;
                                    Creation     creation2   = App.State.AllCreations.FirstOrDefault((Creation x) => x.TypeEnum == requirement.TypeEnum);
                                    GuiBase.CreateProgressBar(num, creation2.getPercent(), EnumName.Name(requirement.TypeEnum), creation2.Description, GuiBase.progressBg, GuiBase.progressFgBlue);
                                    GUI.Label(new Rect(GuiBase.Width(210f), GuiBase.Height((float)(num + 5)), GuiBase.Width(200f), GuiBase.Height(30f)), requirement.CountNeeded.ToGuiText(true));
                                    GUI.Label(new Rect(GuiBase.Width(335f), GuiBase.Height((float)(num + 5)), GuiBase.Width(200f), GuiBase.Height(30f)), creation2.Count.ToGuiText(true));
                                    if (App.State.IsBuyUnlocked && creation2.CanBuy && creation2.TypeEnum != Creation.CreationType.Shadow_clone && GUI.Button(new Rect(GuiBase.Width(545f), GuiBase.Height((float)num), GuiBase.Width(80f), GuiBase.Height(30f)), "Buy"))
                                    {
                                        this.creationToShow = creation2;
                                    }
                                    num += 35;
                                }
                            }
                        }
                    }
                }
                this.svHeight = num - 150;
                GUI.EndScrollView();
                GUI.EndGroup();
            }
        }
        public static void Show()
        {
            GUIStyle style  = GUI.skin.GetStyle("Label");
            GUIStyle style2 = GUI.skin.GetStyle("Button");

            style2.fontSize = GuiBase.FontSize(16);
            style.alignment = TextAnchor.UpperLeft;
            style.fontSize  = GuiBase.FontSize(15);
            GUI.Box(new Rect(GuiBase.Width(290f), GuiBase.Height(110f), GuiBase.Width(660f), GuiBase.Height(480f)), string.Empty);
            if (SteamHelper.IsWaitingForPurchase || App.State.PremiumBoni.ItemIdToPurchase != Purchase.None)
            {
                GUI.Label(new Rect(GuiBase.Width(310f), GuiBase.Height(130f), GuiBase.Width(630f), GuiBase.Height(70f)), "Waiting for the result...");
                return;
            }
            SteamOffersUi.scrollPosition = GuiBase.TouchScrollView(new Rect(GuiBase.Width(280f), GuiBase.Height(120f), GuiBase.Width(660f), GuiBase.Height(430f)), SteamOffersUi.scrollPosition, new Rect(0f, GuiBase.Height(20f), GuiBase.Width(620f), GuiBase.Height((float)SteamOffersUi.marginTop)));
            SteamOffersUi.marginTop      = 20;
            if (!App.State.PremiumBoni.HasPurchasedGodPowerOnce)
            {
                style.fontStyle = FontStyle.Bold;
                style.fontSize  = GuiBase.FontSize(18);
                GUI.Label(new Rect(GuiBase.Width(25f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(630f), GuiBase.Height(70f)), "For your first 'God Power' purchase you will receive twice the amount!");
                style.fontSize           = GuiBase.FontSize(15);
                style.fontStyle          = FontStyle.Normal;
                SteamOffersUi.marginTop += 40;
            }
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
            SteamOffersUi.AddHeader("God Power", 20, style);
            int num = App.State.PremiumBoni.GodPowerPurchaseBonusPercent();

            if (num > 0)
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(120f)), "The more you play and the more you purchase, the more God Power you will receive from purchases.\nCurrent bonus: " + num + "%\nYou will receive what is shown on the buttons, even if the purchase dialog afterwards shows less.");
            }
            else
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "Gain the power of gods!\nWith god power you can buy various permanent bonuses in the god power page.");
            }
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(180f), GuiBase.Width(150f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.GodPower);
            GUI.Label(new Rect(GuiBase.Width(150f), GuiBase.Height(162f), GuiBase.Width(40f), GuiBase.Height(40f)), SteamOffersUi.godPower);
            int count = 5 * (num + 100) / 100;

            SteamOffersUi.addPurchaseButton(440, 60, Purchase.GodPower5, count);
            count = 25 * (num + 100) / 100;
            SteamOffersUi.addPurchaseButton(440, 100, Purchase.GodPower25, count);
            count = 50 * (num + 100) / 100;
            SteamOffersUi.addPurchaseButton(440, 140, Purchase.GodPower50, count);
            count = 100 * (num + 100) / 100;
            SteamOffersUi.addPurchaseButton(440, 180, Purchase.GodPower100, count);
            SteamOffersUi.marginTop += 225;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(260f)));
            SteamOffersUi.AddHeader("Lucky Draws", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(55f)), "Try out your luck!");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(185f), GuiBase.Width(400f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.LuckyDraws.GuiText);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(210f), GuiBase.Width(400f), GuiBase.Height(35f)), "You can open up at most 50 a day.");
            SteamOffersUi.addPurchaseButton(440, 60, Purchase.LuckyDraw, 1);
            SteamOffersUi.addPurchaseButton(440, 100, Purchase.LuckyDraw10, 10);
            SteamOffersUi.addPurchaseButton(440, 140, Purchase.LuckyDraw50, 50);
            GUI.Label(new Rect(GuiBase.Width(580f), GuiBase.Height(180f), GuiBase.Width(32f), GuiBase.Height(32f)), SteamOffersUi.luckyDraw);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(180f), GuiBase.Width(120f), GuiBase.Height(32f)), new GUIContent("Open one")))
            {
                GuiBase.ShowToast(App.State.PremiumBoni.UseLuckyDraw());
            }
            if (App.State.PremiumBoni.TimeForNextLuckyDraw < 0)
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(95f), GuiBase.Width(200f), GuiBase.Height(25f)), "Get your free draw now!");
                if (GUI.Button(new Rect(GuiBase.Width(240f), GuiBase.Height(100f), GuiBase.Width(130f), GuiBase.Height(32f)), new GUIContent("Get free draw!")))
                {
                    App.State.PremiumBoni.GetFreeLuckyDraw();
                }
            }
            else
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(95f), GuiBase.Width(200f), GuiBase.Height(50f)), "Time until your free draw is ready: " + Conv.MsToGuiText(App.State.PremiumBoni.TimeForNextLuckyDraw.ToLong(), true));
            }
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(140f), GuiBase.Width(450f), GuiBase.Height(50f)), App.State.Ext.Lucky.LastDrawText);
            SteamOffersUi.marginTop += 220;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(220f)));
            SteamOffersUi.AddHeader("Daily Packs", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(55f)), "Get one additional Lucky Draw and 2 God Power once a day for 15 or 30 days!");
            SteamOffersUi.addPurchaseButton(440, 60, Purchase.DailyPack15, 15);
            SteamOffersUi.addPurchaseButton(440, 100, Purchase.DailyPack, 30);
            int num2 = 110;

            if (App.State.PremiumBoni.DailyPackDaysLeft > 0)
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(150f), GuiBase.Width(400f), GuiBase.Height(30f)), "Packs Left: " + App.State.PremiumBoni.DailyPackDaysLeft.GuiText);
                if (App.State.PremiumBoni.TimeForNextDailyPack < 0L)
                {
                    GUI.Label(new Rect(GuiBase.Width(580f), GuiBase.Height(150f), GuiBase.Width(32f), GuiBase.Height(32f)), SteamOffersUi.dailyPack);
                    if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(150f), GuiBase.Width(120f), GuiBase.Height(32f)), new GUIContent("Open Pack")))
                    {
                        App.State.PremiumBoni.GetDailyPack();
                    }
                }
                else
                {
                    GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(110f), GuiBase.Width(260f), GuiBase.Height(50f)), "Time until the next pack arrives: " + Conv.MsToGuiText(App.State.PremiumBoni.TimeForNextDailyPack, true));
                }
                num2 = 180;
            }
            SteamOffersUi.marginTop += num2;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
            SteamOffersUi.AddHeader("Pet Token", 20, style);
            int num3 = 60;

            if (!App.State.PremiumBoni.BoughtLimitedPetToken)
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)num3), GuiBase.Width(400f), GuiBase.Height(100f)), "Limited Offer. You can only buy this once!");
                SteamOffersUi.addPurchaseButton(440, num3, Purchase.PetTokenLimited, 1);
                SteamOffersUi.marginTop += 40;
                num3 += 40;
            }
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)num3), GuiBase.Width(400f), GuiBase.Height(100f)), "Unlock special Pets!\nYou can see the pets in Fight -> Pets.");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height((float)(num3 + 70)), GuiBase.Width(150f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.PetToken.GuiText);
            GUI.Label(new Rect(GuiBase.Width(150f), GuiBase.Height((float)(num3 + 62)), GuiBase.Width(50f), GuiBase.Height(50f)), SteamOffersUi.imgPetToken);
            SteamOffersUi.addPurchaseButton(440, num3, Purchase.PetToken, 1);
            num3 += 40;
            SteamOffersUi.addPurchaseButton(440, num3, Purchase.PetToken3, 3);
            SteamOffersUi.marginTop += 180;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
            SteamOffersUi.AddHeader("Improved Crystal Upgrade", 20, style);
            num3 = 60;
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "Adds 25% to the starting upgrade chance for all crystals (can't go higher than 95%)!\nYou can get this only once.");
            if (App.State.PremiumBoni.HasCrystalImprovement)
            {
                GUI.Label(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "You own this already!");
            }
            else
            {
                SteamOffersUi.addPurchaseButton(440, num3, Purchase.CrystalUpgradeChance, 1);
            }
            SteamOffersUi.marginTop += 120;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
            SteamOffersUi.AddHeader("Crystal Equip Slot", 20, style);
            num3 = 60;
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "Adds one more equip slot for your crystals!\n");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(83f), GuiBase.Width(400f), GuiBase.Height(100f)), "Currently you can equip " + App.State.PremiumBoni.MaxCrystals.GuiText + " crystals at once.");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(106f), GuiBase.Width(400f), GuiBase.Height(100f)), "You can buy up to " + (6 - App.State.PremiumBoni.MaxCrystals).GuiText + " more slots.");
            if (App.State.PremiumBoni.MaxCrystals >= 6)
            {
                GUI.Label(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "Your slots are maxed!");
            }
            else
            {
                SteamOffersUi.addPurchaseButton(440, num3, Purchase.CrystalSlot, 1);
            }
            SteamOffersUi.marginTop += 135;
            GUI.EndGroup();
            if (App.State.PremiumBoni.ImprovedNextAt || App.State.Statistic.HasStartedArtyChallenge || App.State.Statistic.HasStartedUltimateBaalChallenge)
            {
                num3 = 60;
                GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
                SteamOffersUi.AddHeader("Improved Next At for challenges", 20, style);
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "If you buy this, improved next at will also work in challenges!\n");
                if (App.State.PremiumBoni.ChallengeImprovedNextAt)
                {
                    GUI.Label(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "You own this already!");
                }
                else
                {
                    SteamOffersUi.addPurchaseButton(440, num3, Purchase.ChallengeNext, 1);
                }
                SteamOffersUi.marginTop += 100;
                GUI.EndGroup();
            }
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
            SteamOffersUi.AddHeader("Refrigerator", 20, style);
            num3 = 60;
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "Keeps your food safe. If you buy this, you won't lose your pet food after rebirthing!\n");
            if (App.State.PremiumBoni.PetFoodAfterRebirth)
            {
                GUI.Label(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "You own this already!");
            }
            else
            {
                SteamOffersUi.addPurchaseButton(440, num3, Purchase.FoodRebirth, 1);
            }
            SteamOffersUi.marginTop += 120;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(300f)));
            SteamOffersUi.AddHeader("Unlimited Gender Change", 20, style);
            if (App.State.PremiumBoni.HasUnlimitedGenderChange)
            {
                string str = "male";
                if (App.State.Avatar.IsFemale)
                {
                    str = "female";
                }
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(390f), GuiBase.Height(100f)), "Change your gender. Your current gender is " + str);
                if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(60f), GuiBase.Width(120f), GuiBase.Height(28f)), new GUIContent("Change")))
                {
                    App.State.Avatar.GenderChosen = false;
                    HeroImage.Init(true);
                }
                SteamOffersUi.marginTop += 20;
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(100f), GuiBase.Width(390f), GuiBase.Height(100f)), "Change your name. Your current name is " + App.State.AvatarName);
                if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(100f), GuiBase.Width(120f), GuiBase.Height(28f)), new GUIContent("Change")))
                {
                    App.State.ChangeAvatarName = true;
                }
            }
            else
            {
                GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(100f)), "If you buy this, you can change your name and gender for free as often as you want!\n");
                SteamOffersUi.addPurchaseButton(440, 60, Purchase.GenderChange, 1);
            }
            SteamOffersUi.marginTop += 150;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(185f)));
            SteamOffersUi.AddHeader("Ultimate shadow summon", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(55f)), "Creating shadow clones is too slow? With this you will max them instantly!");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(140f), GuiBase.Width(400f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.UltimateShadowSummonCount);
            SteamOffersUi.addPurchaseButton(440, 60, Purchase.ShadowSummon, 1);
            SteamOffersUi.addPurchaseButton(440, 100, Purchase.ShadowSummon10, 10);
            GUI.Label(new Rect(GuiBase.Width(580f), GuiBase.Height(140f), GuiBase.Width(32f), GuiBase.Height(32f)), SteamOffersUi.imgShadowSummon);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(140f), GuiBase.Width(120f), GuiBase.Height(32f)), new GUIContent("Use 1")))
            {
                App.State.PremiumBoni.UseUltimateShadowSummon();
            }
            SteamOffersUi.marginTop += 170;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(185f)));
            SteamOffersUi.AddHeader("Godly liquid", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(55f)), "Doubles your speed when creating creations (and clones) for 90 minutes. (Multiplies with godly liquid V2)");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(110f), GuiBase.Width(400f), GuiBase.Height(30f)), "Duration left: " + Conv.MsToGuiText(App.State.PremiumBoni.GodlyLiquidDuration, true));
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(140f), GuiBase.Width(400f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.GodlyLiquidCount);
            SteamOffersUi.addPurchaseButton(440, 60, Purchase.GodlyLiquid, 1);
            SteamOffersUi.addPurchaseButton(440, 100, Purchase.GodlyLiquid10, 10);
            GUI.Label(new Rect(GuiBase.Width(580f), GuiBase.Height(140f), GuiBase.Width(32f), GuiBase.Height(32f)), SteamOffersUi.imgGodlyLiquid);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(140f), GuiBase.Width(120f), GuiBase.Height(32f)), new GUIContent("Use 1")))
            {
                App.State.PremiumBoni.UseGodlyLiquid();
            }
            SteamOffersUi.marginTop += 170;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(185f)));
            SteamOffersUi.AddHeader("Godly liquid V2", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(55f)), "Doubles your speed when creating creations (and clones) until your next rebirth.");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(110f), GuiBase.Width(400f), GuiBase.Height(30f)), "Is in use: " + App.State.PremiumBoni.GodlyLiquidV2InUse);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(140f), GuiBase.Width(400f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.GodlyLiquidV2Count);
            SteamOffersUi.addPurchaseButton(440, 60, Purchase.GodlyLiquidRebirth, 1);
            SteamOffersUi.addPurchaseButton(440, 100, Purchase.GodlyLiquidRebirth10, 10);
            GUI.Label(new Rect(GuiBase.Width(580f), GuiBase.Height(140f), GuiBase.Width(32f), GuiBase.Height(32f)), SteamOffersUi.imgGodlyLiquidV2);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(140f), GuiBase.Width(120f), GuiBase.Height(32f)), new GUIContent("Use 1")))
            {
                App.State.PremiumBoni.UseGodlyLiquidRebirth();
            }
            SteamOffersUi.marginTop += 170;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(185f)));
            SteamOffersUi.AddHeader("Chakra pill", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(65f)), "Increases your chakra to let your clones build faster.\nDoubles the speed to build monuments and upgrades for 90 minutes. (Multiplies with chakra pill V2)");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(120f), GuiBase.Width(400f), GuiBase.Height(30f)), "Duration left: " + Conv.MsToGuiText(App.State.PremiumBoni.ChakraPillDuration, true));
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(150f), GuiBase.Width(400f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.ChakraPillCount);
            SteamOffersUi.addPurchaseButton(440, 60, Purchase.ChakraPill, 1);
            SteamOffersUi.addPurchaseButton(440, 100, Purchase.ChakraPill10, 10);
            GUI.Label(new Rect(GuiBase.Width(580f), GuiBase.Height(150f), GuiBase.Width(32f), GuiBase.Height(32f)), SteamOffersUi.imgChakraPill);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(150f), GuiBase.Width(120f), GuiBase.Height(32f)), new GUIContent("Use 1")))
            {
                App.State.PremiumBoni.UseChakraPill();
            }
            SteamOffersUi.marginTop += 180;
            GUI.EndGroup();
            GUI.BeginGroup(new Rect(GuiBase.Width(5f), GuiBase.Height((float)SteamOffersUi.marginTop), GuiBase.Width(670f), GuiBase.Height(185f)));
            SteamOffersUi.AddHeader("Chakra pill V2", 20, style);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(60f), GuiBase.Width(400f), GuiBase.Height(65f)), "Increases your chakra to let your clones build faster.\nDoubles the speed to build monuments and upgrades until your next rebirth.");
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(120f), GuiBase.Width(400f), GuiBase.Height(30f)), "Is in use: " + App.State.PremiumBoni.ChakraPillV2InUse);
            GUI.Label(new Rect(GuiBase.Width(20f), GuiBase.Height(150f), GuiBase.Width(400f), GuiBase.Height(30f)), "You have: " + App.State.PremiumBoni.ChakraPillV2Count);
            SteamOffersUi.addPurchaseButton(440, 60, Purchase.ChakraPillRebirth, 1);
            SteamOffersUi.addPurchaseButton(440, 100, Purchase.ChakraPillRebirth10, 10);
            GUI.Label(new Rect(GuiBase.Width(580f), GuiBase.Height(150f), GuiBase.Width(32f), GuiBase.Height(32f)), SteamOffersUi.imgChakraPillV2);
            if (GUI.Button(new Rect(GuiBase.Width(440f), GuiBase.Height(150f), GuiBase.Width(120f), GuiBase.Height(32f)), new GUIContent("Use 1")))
            {
                App.State.PremiumBoni.UseChakraPillRebirth();
            }
            SteamOffersUi.marginTop += 180;
            GUI.EndGroup();
            GUI.EndScrollView();
        }
Example #19
0
        public static void ShowAchievements(List <Achievement> achievements, string typeName)
        {
            if (!typeName.Equals("creating"))
            {
                achievements = (from o in achievements
                                orderby o.CountNeeded.Double
                                select o).ToList <Achievement>();
            }
            GUIStyle style = GUI.skin.GetStyle("Label");

            GUI.BeginGroup(new Rect(GuiBase.Width(290f), GuiBase.Height(100f), GuiBase.Width(660f), GuiBase.Height(490f)));
            style.fontSize = GuiBase.FontSize(18);
            int num = 0;

            foreach (Achievement current in achievements)
            {
                if (current.Reached)
                {
                    num++;
                }
            }
            GUI.Box(new Rect(GuiBase.Width(0f), GuiBase.Height(10f), GuiBase.Width(660f), GuiBase.Height(480f)), string.Empty);
            style.fontStyle = FontStyle.Bold;
            style.alignment = TextAnchor.UpperCenter;
            string tooltip = string.Empty;

            if (App.State.Statistic.AchievementChallengesFinished > 0)
            {
                int num2 = App.State.Statistic.AchievementChallengesFinished.ToInt();
                if (num2 > 50)
                {
                    num2 = 50;
                }
                tooltip = "Additional multiplier from Achievement Challenges: " + num2 + " %";
            }
            GUI.Label(new Rect(GuiBase.Width(0f), GuiBase.Height(30f), GuiBase.Width(650f), GuiBase.Height(60f)), new GUIContent(string.Concat(new object[]
            {
                "Achievements for ",
                typeName,
                " ( ",
                num,
                " / ",
                achievements.Count,
                ")"
            }), tooltip));
            style.alignment = TextAnchor.UpperLeft;
            style.fontStyle = FontStyle.Normal;
            int num3 = 85;
            int num4 = 30;
            int num5 = 90 + achievements.Count * 65 / 9;

            GuiBase.scrollPosition = GuiBase.TouchScrollView(new Rect(GuiBase.Width(0f), GuiBase.Height((float)num3), GuiBase.Width(640f), GuiBase.Height(390f)), GuiBase.scrollPosition, new Rect(0f, GuiBase.Height((float)num3), GuiBase.Width(600f), GuiBase.Height((float)num5)));
            int num6 = 0;

            foreach (Achievement current2 in achievements)
            {
                num6++;
                string tooltip2 = current2.NonReachedName;
                if (current2.ShowRealName)
                {
                    tooltip2 = current2.Description;
                }
                if (current2.Reached)
                {
                    GUI.Label(new Rect(GuiBase.Width((float)num4), GuiBase.Height((float)num3), GuiBase.Width(60f), GuiBase.Height(60f)), new GUIContent(string.Empty, current2.ImageReached, tooltip2));
                }
                else
                {
                    GUI.Label(new Rect(GuiBase.Width((float)num4), GuiBase.Height((float)num3), GuiBase.Width(60f), GuiBase.Height(60f)), new GUIContent(string.Empty, current2.Image, tooltip2));
                }
                if (num6 % 9 == 0)
                {
                    num3 += 65;
                    num4  = 30;
                }
                else
                {
                    num4 += 65;
                }
            }
            GUI.EndScrollView();
            GUI.EndGroup();
        }