Exemplo n.º 1
0
        protected override void DoSpecialSaveLoadGUI(Rect inRect)
        {
            GUI.BeginGroup(inRect);
            bool  flag = Event.current.type == EventType.KeyDown && Event.current.keyCode == KeyCode.Return;
            float top  = inRect.height - 52f;

            GenFont.SetFontSmall();
            GUI.skin.textField.alignment             = TextAnchor.MiddleLeft;
            GUI.skin.textField.contentOffset         = new Vector2(12f, 0f);
            GUI.skin.settings.doubleClickSelectsWord = true;
            GUI.SetNextControlName("MapNameField");
            Rect   position = new Rect(5f, top, 400f, 35f);
            string text     = GUI.TextField(position, Find.Map.info.fileName);

            if (GenText.IsValidFilename(text))
            {
                Find.Map.info.fileName = text;
            }
            if (!this.focusedMapNameArea)
            {
                GUI.FocusControl("MapNameField");
                this.focusedMapNameArea = true;
            }
            Rect butRect = new Rect(420f, top, inRect.width - 400f - 20f, 35f);

            if (Widgets.TextButton(butRect, "LoadGameButton".Translate()) || flag)
            {
                LoadColonists.LoadFromFile(Find.Map, Find.Map.info.fileName);
                Find.LayerStack.Remove(this);
                Find.LayerStack.Add(new ColonistCreationMenu(ColonistManager.Population[0]));
            }
            GUI.skin.label.alignment = TextAnchor.UpperLeft;
            GUI.EndGroup();
        }
Exemplo n.º 2
0
        protected override void FillWindow(Rect inRect)
        {
            GenFont.SetFontMedium();

            //Header
            Rect HeaderPos = new Rect(0f, 0f, WinSize.x, 40f);

            GUI.Label(HeaderPos, Language.FindText(LoadLanguage.language, "Start with how many colonists?"));

            //SelectDown
            Rect DownPos = new Rect(80f, 55f, 40f, 40f);

            if (Widgets.TextButton(DownPos, "<".Translate()))
            {
                if (ColonistDifficulty.Difficulty == "Easy")
                {
                    if (Amount > 3)
                    {
                        //Lower amount and re-display
                        Amount--;
                        ShowAmount(new Rect(135f, 60f, 40f, 40f));
                    }
                }
                else if (ColonistDifficulty.Difficulty == "Normal")
                {
                    if (Amount > 2)
                    {
                        //Lower amount and re-display
                        Amount--;
                        ShowAmount(new Rect(135f, 60f, 40f, 40f));
                    }
                }
                else
                {
                    if (Amount > 1)
                    {
                        //Lower amount and re-display
                        Amount--;
                        ShowAmount(new Rect(135f, 60f, 40f, 40f));
                    }
                }
            }

            //ShowAmount
            ShowAmount(new Rect(135f, 60f, 40f, 40f));

            //SelectUp
            Rect UpPos = new Rect(160f, 55f, 40f, 40f);

            if (Widgets.TextButton(UpPos, ">".Translate()))
            {
                if (ColonistDifficulty.Difficulty == "Easy")
                {
                    if (Amount < 5)
                    {
                        //Raise amount and re-display
                        Amount++;
                        ShowAmount(new Rect(135f, 60f, 40f, 40f));
                    }
                }
                else if (ColonistDifficulty.Difficulty == "Normal")
                {
                    if (Amount < 4)
                    {
                        //Raise amount and re-display
                        Amount++;
                        ShowAmount(new Rect(135f, 60f, 40f, 40f));
                    }
                }
                else
                {
                    if (Amount < 3)
                    {
                        //Raise amount and re-display
                        Amount++;
                        ShowAmount(new Rect(135f, 60f, 40f, 40f));
                    }
                }
            }

            GenFont.SetFontSmall();

            //Return to Menu
            Rect ReturnPos = new Rect(0, WinSize.y - 75, ButtonSize.x, ButtonSize.y);

            if (Widgets.TextButton(ReturnPos, Language.FindText(LoadLanguage.language, "Back")))
            {
                Application.LoadLevel("Entry");
            }

            //Accept
            Rect AcceptPos = new Rect((WinSize.x - ButtonSize.x) - 40f, WinSize.y - 75, ButtonSize.x, ButtonSize.y);

            if (Widgets.TextButton(AcceptPos, Language.FindText(LoadLanguage.language, "Accept")))
            {
                ModdedMapInitParams.GenerateColonists();
                if (Genstep_ColonistCreationMod.BaseStats[0] == false)
                {
                    ColonistManager.RandomColonists();
                }
                else
                {
                    ColonistManager.PawnsToColonists();
                }
                Find.LayerStack.Add(new ColonistCreationMenu(ColonistManager.Population[0]));
            }
        }
Exemplo n.º 3
0
        protected override void FillWindow(Rect inRect)
        {
            Vector2 vector  = new Vector2(inRect.width - 16f, 48f);
            Vector2 vector2 = new Vector2(100f, vector.y - 12f);

            inRect.height -= 45f;
            List <FileInfo> list     = SaveFiles.AllSaveFiles.ToList <FileInfo>();
            float           num      = vector.y + 8f;
            float           height   = (float)list.Count * num;
            Rect            viewRect = new Rect(0f, 0f, inRect.width - 16f, height);
            Rect            position = new Rect(inRect.AtZero());

            position.height    -= this.bottomAreaHeight;
            this.scrollPosition = GUI.BeginScrollView(position, this.scrollPosition, viewRect);
            float num2 = 0f;

            foreach (FileInfo current in list)
            {
                Rect rect = new Rect(0f, num2, vector.x, vector.y);
                Widgets.DrawMenuSection(rect);
                Rect innerRect = rect.GetInnerRect(6f);
                GUI.BeginGroup(innerRect);
                string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(current.Name);
                if (MapFiles.IsAutoSave(fileNameWithoutExtension))
                {
                    GUI.color = DialogList.AutosaveTextColor;
                }
                else
                {
                    GUI.color = DialogList.ManualSaveTextColor;
                }
                Rect position2 = new Rect(15f, 0f, innerRect.width, innerRect.height);
                GUI.skin.label.alignment = TextAnchor.MiddleLeft;
                GenFont.SetFontSmall();
                GUI.Label(position2, fileNameWithoutExtension);
                GUI.color = Color.white;
                Rect position3 = new Rect(220f, 0f, innerRect.width, innerRect.height);
                GenFont.SetFontTiny();
                GUI.color = new Color(1f, 1f, 1f, 0.5f);
                GUI.Label(position3, current.LastWriteTime.ToString());
                GUI.color = Color.white;
                GUI.skin.label.alignment = TextAnchor.UpperLeft;
                GenFont.SetFontSmall();
                float num3    = vector.x - 12f - vector2.x - vector2.y;
                Rect  butRect = new Rect(num3, 0f, vector2.x, vector2.y);
                if (Widgets.TextButton(butRect, this.interactButLabel))
                {
                    this.DoMapEntryInteraction(Path.GetFileNameWithoutExtension(current.Name));
                }
                Rect rect2 = new Rect(num3 + vector2.x + 5f, 0f, vector2.y, vector2.y);
                if (Widgets.ImageButton(rect2, ButtonText.DeleteX))
                {
                    FileInfo localFile = current;
                    Find.UIRoot.layers.Add(new Dialog_Confirm("ConfirmDelete".Translate(new object[]
                    {
                        localFile.Name
                    }), delegate
                    {
                        localFile.Delete();
                    }, true));
                }
                TooltipHandler.TipRegion(rect2, "DeleteThisSavegame".Translate());
                GUI.EndGroup();
                num2 += vector.y + 8f;
            }
            GUI.EndScrollView();
            this.DoSpecialSaveLoadGUI(inRect.AtZero());
        }