Ejemplo n.º 1
0
 // Token: 0x06001E03 RID: 7683 RVA: 0x000A32B0 File Offset: 0x000A16B0
 protected override void execute(CSteamID executorID, string parameter)
 {
     if (ModuleHook.modules.Count == 0)
     {
         CommandWindow.LogError(this.localization.format("NoModulesErrorText"));
         return;
     }
     CommandWindow.Log(this.localization.format("ModulesText"));
     CommandWindow.Log(this.localization.format("SeparatorText"));
     for (int i = 0; i < ModuleHook.modules.Count; i++)
     {
         Module module = ModuleHook.modules[i];
         if (module != null)
         {
             ModuleConfig config = module.config;
             if (config != null)
             {
                 Local local = Localization.tryRead(config.DirectoryPath, false);
                 CommandWindow.Log(local.format("Name"));
                 CommandWindow.Log(this.localization.format("Version", new object[]
                 {
                     config.Version
                 }));
                 CommandWindow.Log(local.format("Description"));
                 CommandWindow.Log(this.localization.format("SeparatorText"));
             }
         }
     }
 }
Ejemplo n.º 2
0
        private static void updateSelection()
        {
            if (PlaySettings.editorMap == null || PlaySettings.editorMap.Length == 0)
            {
                return;
            }
            LevelInfo level = Level.getLevel(PlaySettings.editorMap);

            if (level == null)
            {
                return;
            }
            Local local = Localization.tryRead(level.path, false);

            if (local != null)
            {
                MenuWorkshopEditorUI.descriptionBox.text = local.format("Description");
            }
            if (local != null && local.has("Name"))
            {
                MenuWorkshopEditorUI.selectedBox.text = local.format("Name");
            }
            else
            {
                MenuWorkshopEditorUI.selectedBox.text = PlaySettings.editorMap;
            }
            if (MenuWorkshopEditorUI.previewImage.texture != null && MenuWorkshopEditorUI.previewImage.shouldDestroyTexture)
            {
                Object.Destroy(MenuWorkshopEditorUI.previewImage.texture);
                MenuWorkshopEditorUI.previewImage.texture = null;
            }
            string path = level.path + "/Preview.png";

            if (!ReadWrite.fileExists(path, false, false))
            {
                path = level.path + "/Level.png";
            }
            if (ReadWrite.fileExists(path, false, false))
            {
                byte[]    array     = ReadWrite.readBytes(path, false, false);
                Texture2D texture2D = new Texture2D(320, 180, 5, false, true);
                texture2D.name       = "Preview_" + PlaySettings.editorMap + "_Selected_Icon";
                texture2D.filterMode = 2;
                texture2D.hideFlags  = 61;
                texture2D.LoadImage(array);
                MenuWorkshopEditorUI.previewImage.texture = texture2D;
            }
        }
Ejemplo n.º 3
0
 public static void open()
 {
     if (PlayerPauseUI.active)
     {
         return;
     }
     PlayerPauseUI.active    = true;
     PlayerPauseUI.lastLeave = Time.realtimeSinceStartup;
     if (Provider.currentServerInfo != null && Level.info != null)
     {
         Local  local = Localization.tryRead(Level.info.path, false);
         string text;
         if (local != null && local.has("Name"))
         {
             text = local.format("Name");
         }
         else
         {
             text = Level.info.name;
         }
         string text2;
         if (Provider.currentServerInfo.IsVACSecure)
         {
             text2 = PlayerPauseUI.localization.format("VAC_Secure");
         }
         else
         {
             text2 = PlayerPauseUI.localization.format("VAC_Insecure");
         }
         if (Provider.currentServerInfo.IsBattlEyeSecure)
         {
             text2 = text2 + " + " + PlayerPauseUI.localization.format("BattlEye_Secure");
         }
         else
         {
             text2 = text2 + " + " + PlayerPauseUI.localization.format("BattlEye_Insecure");
         }
         PlayerPauseUI.serverBox.text = PlayerPauseUI.localization.format("Server", new object[]
         {
             text,
             (!OptionsSettings.streamer) ? Provider.currentServerInfo.name : PlayerPauseUI.localization.format("Streamer"),
             text2
         });
     }
     PlayerPauseUI.container.lerpPositionScale(0f, 0f, ESleekLerp.EXPONENTIAL, 20f);
 }
Ejemplo n.º 4
0
        // Token: 0x060036B2 RID: 14002 RVA: 0x001772A0 File Offset: 0x001756A0
        private static void updateSelection()
        {
            if (PlaySettings.matchmakingMap == null || PlaySettings.matchmakingMap.Length == 0)
            {
                return;
            }
            LevelInfo level = Level.getLevel(PlaySettings.matchmakingMap);

            if (level == null)
            {
                return;
            }
            Local local = Localization.tryRead(level.path, false);

            if (local != null && local.has("Name"))
            {
                MenuPlayMatchmakingUI.selectedBox.text = local.format("Name");
            }
            else
            {
                MenuPlayMatchmakingUI.selectedBox.text = PlaySettings.matchmakingMap;
            }
        }
Ejemplo n.º 5
0
        public SleekLevel(LevelInfo level, bool isEditor)
        {
            base.init();
            base.sizeOffset_X        = 400;
            base.sizeOffset_Y        = 100;
            this.button              = new SleekButton();
            this.button.sizeOffset_X = 0;
            this.button.sizeOffset_Y = 0;
            this.button.sizeScale_X  = 1f;
            this.button.sizeScale_Y  = 1f;
            if (level.isEditable || !isEditor)
            {
                this.button.onClickedButton = new ClickedButton(this.onClickedButton);
            }
            base.add(this.button);
            if (ReadWrite.fileExists(level.path + "/Icon.png", false, false))
            {
                byte[]    array     = ReadWrite.readBytes(level.path + "/Icon.png", false, false);
                Texture2D texture2D = new Texture2D(380, 80, 5, false, true);
                texture2D.name      = "Icon_" + level.name + "_List_Icon";
                texture2D.hideFlags = 61;
                texture2D.LoadImage(array);
                this.icon = new SleekImageTexture();
                this.icon.positionOffset_X     = 10;
                this.icon.positionOffset_Y     = 10;
                this.icon.sizeOffset_X         = -20;
                this.icon.sizeOffset_Y         = -20;
                this.icon.sizeScale_X          = 1f;
                this.icon.sizeScale_Y          = 1f;
                this.icon.texture              = texture2D;
                this.icon.shouldDestroyTexture = true;
                this.button.add(this.icon);
            }
            this.nameLabel = new SleekLabel();
            this.nameLabel.positionOffset_Y = 10;
            this.nameLabel.sizeScale_X      = 1f;
            this.nameLabel.sizeOffset_Y     = 50;
            this.nameLabel.fontAlignment    = 4;
            this.nameLabel.fontSize         = 14;
            this.button.add(this.nameLabel);
            Local local = Localization.tryRead(level.path, false);

            if (local != null && local.has("Name"))
            {
                this.nameLabel.text = local.format("Name");
            }
            else
            {
                this.nameLabel.text = level.name;
            }
            this.infoLabel = new SleekLabel();
            this.infoLabel.positionOffset_Y = 60;
            this.infoLabel.sizeScale_X      = 1f;
            this.infoLabel.sizeOffset_Y     = 30;
            this.infoLabel.fontAlignment    = 4;
            string text = "#SIZE";

            if (level.size == ELevelSize.TINY)
            {
                text = MenuPlaySingleplayerUI.localization.format("Tiny");
            }
            else if (level.size == ELevelSize.SMALL)
            {
                text = MenuPlaySingleplayerUI.localization.format("Small");
            }
            else if (level.size == ELevelSize.MEDIUM)
            {
                text = MenuPlaySingleplayerUI.localization.format("Medium");
            }
            else if (level.size == ELevelSize.LARGE)
            {
                text = MenuPlaySingleplayerUI.localization.format("Large");
            }
            else if (level.size == ELevelSize.INSANE)
            {
                text = MenuPlaySingleplayerUI.localization.format("Insane");
            }
            string text2 = "#TYPE";

            if (level.type == ELevelType.SURVIVAL)
            {
                text2 = MenuPlaySingleplayerUI.localization.format("Survival");
            }
            else if (level.type == ELevelType.HORDE)
            {
                text2 = MenuPlaySingleplayerUI.localization.format("Horde");
            }
            else if (level.type == ELevelType.ARENA)
            {
                text2 = MenuPlaySingleplayerUI.localization.format("Arena");
            }
            this.infoLabel.text = MenuPlaySingleplayerUI.localization.format("Info", new object[]
            {
                text,
                text2
            });
            this.button.add(this.infoLabel);
            if (!level.isEditable && isEditor)
            {
                Bundle            bundle            = Bundles.getBundle("/Bundles/Textures/Menu/Icons/Workshop/MenuWorkshopEditor/MenuWorkshopEditor.unity3d");
                SleekImageTexture sleekImageTexture = new SleekImageTexture();
                sleekImageTexture.positionOffset_X = 20;
                sleekImageTexture.positionOffset_Y = -20;
                sleekImageTexture.positionScale_Y  = 0.5f;
                sleekImageTexture.sizeOffset_X     = 40;
                sleekImageTexture.sizeOffset_Y     = 40;
                sleekImageTexture.texture          = (Texture2D)bundle.load("Lock");
                sleekImageTexture.backgroundTint   = ESleekTint.FOREGROUND;
                this.button.add(sleekImageTexture);
                bundle.unload();
            }
            if (level.configData != null && level.configData.Status != EMapStatus.NONE)
            {
                SleekNew sleek = new SleekNew(level.configData.Status == EMapStatus.UPDATED);
                if (this.icon != null)
                {
                    this.icon.add(sleek);
                }
                else
                {
                    base.add(sleek);
                }
            }
        }
Ejemplo n.º 6
0
 // Token: 0x06001FE4 RID: 8164 RVA: 0x000AFD65 File Offset: 0x000AE165
 public static Local tryRead(string path)
 {
     return(Localization.tryRead(path, true));
 }
Ejemplo n.º 7
0
        // Token: 0x06003794 RID: 14228 RVA: 0x001864F4 File Offset: 0x001848F4
        public MenuWorkshopModulesUI()
        {
            MenuWorkshopModulesUI.localization = Localization.read("/Menu/Workshop/MenuWorkshopModules.dat");
            MenuWorkshopModulesUI.container    = new Sleek();
            MenuWorkshopModulesUI.container.positionOffset_X = 10;
            MenuWorkshopModulesUI.container.positionOffset_Y = 10;
            MenuWorkshopModulesUI.container.positionScale_Y  = 1f;
            MenuWorkshopModulesUI.container.sizeOffset_X     = -20;
            MenuWorkshopModulesUI.container.sizeOffset_Y     = -20;
            MenuWorkshopModulesUI.container.sizeScale_X      = 1f;
            MenuWorkshopModulesUI.container.sizeScale_Y      = 1f;
            MenuUI.container.add(MenuWorkshopModulesUI.container);
            MenuWorkshopModulesUI.active    = false;
            MenuWorkshopModulesUI.headerBox = new SleekBox();
            MenuWorkshopModulesUI.headerBox.sizeOffset_Y = 50;
            MenuWorkshopModulesUI.headerBox.sizeScale_X  = 1f;
            MenuWorkshopModulesUI.headerBox.fontSize     = 14;
            MenuWorkshopModulesUI.headerBox.text         = MenuWorkshopModulesUI.localization.format("Header");
            MenuWorkshopModulesUI.container.add(MenuWorkshopModulesUI.headerBox);
            MenuWorkshopModulesUI.moduleBox = new SleekScrollBox();
            MenuWorkshopModulesUI.moduleBox.positionOffset_Y = 60;
            MenuWorkshopModulesUI.moduleBox.sizeOffset_Y     = -120;
            MenuWorkshopModulesUI.moduleBox.sizeScale_X      = 1f;
            MenuWorkshopModulesUI.moduleBox.sizeScale_Y      = 1f;
            MenuWorkshopModulesUI.moduleBox.area             = new Rect(0f, 0f, 5f, 0f);
            MenuWorkshopModulesUI.container.add(MenuWorkshopModulesUI.moduleBox);
            if (ModuleHook.modules.Count == 0)
            {
                SleekBox sleekBox = new SleekBox();
                sleekBox.positionOffset_Y = 60;
                sleekBox.sizeOffset_X     = -30;
                sleekBox.sizeOffset_Y     = 50;
                sleekBox.sizeScale_X      = 1f;
                sleekBox.fontSize         = 14;
                sleekBox.text             = MenuWorkshopModulesUI.localization.format("No_Modules");
                MenuWorkshopModulesUI.container.add(sleekBox);
            }
            else
            {
                for (int i = 0; i < ModuleHook.modules.Count; i++)
                {
                    ModuleConfig config    = ModuleHook.modules[i].config;
                    Local        local     = Localization.tryRead(config.DirectoryPath, false);
                    SleekBox     sleekBox2 = new SleekBox();
                    sleekBox2.positionOffset_Y = i * 130;
                    sleekBox2.sizeOffset_X     = -30;
                    sleekBox2.sizeOffset_Y     = 120;
                    sleekBox2.sizeScale_X      = 1f;
                    SleekToggle sleekToggle = new SleekToggle();
                    sleekToggle.positionOffset_X = 5;
                    sleekToggle.positionOffset_Y = -20;
                    sleekToggle.positionScale_Y  = 0.5f;
                    sleekToggle.sizeOffset_X     = 40;
                    sleekToggle.sizeOffset_Y     = 40;
                    sleekToggle.state            = config.IsEnabled;
                    SleekToggle sleekToggle2 = sleekToggle;
                    if (MenuWorkshopModulesUI.< > f__mg$cache0 == null)
                    {
                        MenuWorkshopModulesUI.< > f__mg$cache0 = new Toggled(MenuWorkshopModulesUI.onToggledModuleToggle);
                    }
                    sleekToggle2.onToggled = MenuWorkshopModulesUI.< > f__mg$cache0;
                    sleekBox2.add(sleekToggle);
                    SleekLabel sleekLabel = new SleekLabel();
                    sleekLabel.positionOffset_X = 50;
                    sleekLabel.positionOffset_Y = 5;
                    sleekLabel.sizeOffset_X     = -55;
                    sleekLabel.sizeOffset_Y     = 30;
                    sleekLabel.sizeScale_X      = 1f;
                    sleekLabel.fontSize         = 14;
                    sleekLabel.fontAlignment    = TextAnchor.UpperLeft;
                    sleekLabel.text             = local.format("Name");
                    sleekBox2.add(sleekLabel);
                    SleekLabel sleekLabel2 = new SleekLabel();
                    sleekLabel2.positionOffset_X = 50;
                    sleekLabel2.positionOffset_Y = 30;
                    sleekLabel2.sizeOffset_X     = -55;
                    sleekLabel2.sizeOffset_Y     = 25;
                    sleekLabel2.sizeScale_X      = 1f;
                    sleekLabel2.fontAlignment    = TextAnchor.UpperLeft;
                    sleekLabel2.text             = MenuWorkshopModulesUI.localization.format("Version", new object[]
                    {
                        config.Version
                    });
                    sleekBox2.add(sleekLabel2);
                    SleekLabel sleekLabel3 = new SleekLabel();
                    sleekLabel3.positionOffset_X = 50;
                    sleekLabel3.positionOffset_Y = 50;
                    sleekLabel3.sizeOffset_X     = -55;
                    sleekLabel3.sizeOffset_Y     = 65;
                    sleekLabel3.sizeScale_X      = 1f;
                    sleekLabel3.fontSize         = 12;
                    sleekLabel3.fontAlignment    = TextAnchor.UpperLeft;
                    sleekLabel3.text             = local.format("Description");
                    sleekBox2.add(sleekLabel3);
                    if (ReadWrite.fileExists(config.DirectoryPath + "/Icon.png", false, false))
                    {
                        byte[]    data      = ReadWrite.readBytes(config.DirectoryPath + "/Icon.png", false, false);
                        Texture2D texture2D = new Texture2D(100, 100, TextureFormat.ARGB32, false, true);
                        texture2D.name      = "Module_" + config.Name + "_Icon";
                        texture2D.hideFlags = HideFlags.HideAndDontSave;
                        texture2D.LoadImage(data);
                        sleekBox2.add(new SleekImageTexture
                        {
                            positionOffset_X     = 50,
                            positionOffset_Y     = 10,
                            sizeOffset_X         = 100,
                            sizeOffset_Y         = 100,
                            texture              = texture2D,
                            shouldDestroyTexture = true
                        });
                        sleekLabel.positionOffset_X  += 105;
                        sleekLabel.sizeOffset_X      -= 105;
                        sleekLabel2.positionOffset_X += 105;
                        sleekLabel2.sizeOffset_X     -= 105;
                        sleekLabel3.positionOffset_X += 105;
                        sleekLabel3.sizeOffset_X     -= 105;
                    }
                    MenuWorkshopModulesUI.moduleBox.add(sleekBox2);
                }
                MenuWorkshopModulesUI.moduleBox.area = new Rect(0f, 0f, 5f, (float)(ModuleHook.modules.Count * 130 - 10));
            }
            MenuWorkshopModulesUI.backButton = new SleekButtonIcon((Texture2D)MenuDashboardUI.icons.load("Exit"));
            MenuWorkshopModulesUI.backButton.positionOffset_Y = -50;
            MenuWorkshopModulesUI.backButton.positionScale_Y  = 1f;
            MenuWorkshopModulesUI.backButton.sizeOffset_X     = 200;
            MenuWorkshopModulesUI.backButton.sizeOffset_Y     = 50;
            MenuWorkshopModulesUI.backButton.text             = MenuDashboardUI.localization.format("BackButtonText");
            MenuWorkshopModulesUI.backButton.tooltip          = MenuDashboardUI.localization.format("BackButtonTooltip");
            SleekButton sleekButton = MenuWorkshopModulesUI.backButton;

            if (MenuWorkshopModulesUI.< > f__mg$cache1 == null)
            {
                MenuWorkshopModulesUI.< > f__mg$cache1 = new ClickedButton(MenuWorkshopModulesUI.onClickedBackButton);
            }
            sleekButton.onClickedButton = MenuWorkshopModulesUI.< > f__mg$cache1;
            MenuWorkshopModulesUI.backButton.fontSize = 14;
            MenuWorkshopModulesUI.backButton.iconImage.backgroundTint = ESleekTint.FOREGROUND;
            MenuWorkshopModulesUI.container.add(MenuWorkshopModulesUI.backButton);
        }
Ejemplo n.º 8
0
        // Token: 0x060036F8 RID: 14072 RVA: 0x0017C770 File Offset: 0x0017AB70
        private static void updateSelection()
        {
            if (PlaySettings.singleplayerMap == null || PlaySettings.singleplayerMap.Length == 0)
            {
                return;
            }
            LevelInfo level = Level.getLevel(PlaySettings.singleplayerMap);

            if (level == null)
            {
                return;
            }
            Local local = Localization.tryRead(level.path, false);

            if (local != null)
            {
                MenuPlaySingleplayerUI.descriptionBox.text = local.format("Description");
            }
            if (local != null && local.has("Name"))
            {
                MenuPlaySingleplayerUI.selectedBox.text = local.format("Name");
            }
            else
            {
                MenuPlaySingleplayerUI.selectedBox.text = PlaySettings.singleplayerMap;
            }
            if (MenuPlaySingleplayerUI.previewImage.texture != null && MenuPlaySingleplayerUI.previewImage.shouldDestroyTexture)
            {
                UnityEngine.Object.Destroy(MenuPlaySingleplayerUI.previewImage.texture);
                MenuPlaySingleplayerUI.previewImage.texture = null;
            }
            string path = level.path + "/Preview.png";

            if (!ReadWrite.fileExists(path, false, false))
            {
                path = level.path + "/Level.png";
            }
            if (ReadWrite.fileExists(path, false, false))
            {
                byte[]    data      = ReadWrite.readBytes(path, false, false);
                Texture2D texture2D = new Texture2D(320, 180, TextureFormat.ARGB32, false, true);
                texture2D.name       = "Preview_" + PlaySettings.singleplayerMap + "_Selected_Icon";
                texture2D.filterMode = FilterMode.Trilinear;
                texture2D.hideFlags  = HideFlags.HideAndDontSave;
                texture2D.LoadImage(data);
                MenuPlaySingleplayerUI.previewImage.texture = texture2D;
            }
            int num = MenuPlaySingleplayerUI.creditsBox.positionOffset_Y;

            if (level.configData.Creators.Length > 0 || level.configData.Collaborators.Length > 0 || level.configData.Thanks.Length > 0)
            {
                int    num2 = 0;
                string text = string.Empty;
                if (level.configData.Creators.Length > 0)
                {
                    text += MenuPlaySingleplayerUI.localization.format("Creators");
                    num2 += 15;
                    for (int i = 0; i < level.configData.Creators.Length; i++)
                    {
                        text  = text + "\n" + level.configData.Creators[i];
                        num2 += 15;
                    }
                }
                if (level.configData.Collaborators.Length > 0)
                {
                    if (text.Length > 0)
                    {
                        text += "\n\n";
                        num2 += 30;
                    }
                    text += MenuPlaySingleplayerUI.localization.format("Collaborators");
                    num2 += 15;
                    for (int j = 0; j < level.configData.Collaborators.Length; j++)
                    {
                        text  = text + "\n" + level.configData.Collaborators[j];
                        num2 += 15;
                    }
                }
                if (level.configData.Thanks.Length > 0)
                {
                    if (text.Length > 0)
                    {
                        text += "\n\n";
                        num2 += 30;
                    }
                    text += MenuPlaySingleplayerUI.localization.format("Thanks");
                    num2 += 15;
                    for (int k = 0; k < level.configData.Thanks.Length; k++)
                    {
                        text  = text + "\n" + level.configData.Thanks[k];
                        num2 += 15;
                    }
                }
                num2 = Mathf.Max(num2, 40);
                MenuPlaySingleplayerUI.creditsBox.sizeOffset_Y = num2;
                MenuPlaySingleplayerUI.creditsBox.text         = text;
                MenuPlaySingleplayerUI.creditsBox.isVisible    = true;
                num += num2 + 10;
            }
            else
            {
                MenuPlaySingleplayerUI.creditsBox.isVisible = false;
            }
            if (level.configData.Item != 0)
            {
                MenuPlaySingleplayerUI.itemButton.positionOffset_Y = num;
                MenuPlaySingleplayerUI.itemButton.text             = MenuPlaySingleplayerUI.localization.format("Credits_Text", new object[]
                {
                    MenuPlaySingleplayerUI.selectedBox.text,
                    string.Concat(new string[]
                    {
                        "<color=",
                        Palette.hex(Provider.provider.economyService.getInventoryColor(level.configData.Item)),
                        ">",
                        Provider.provider.economyService.getInventoryName(level.configData.Item),
                        "</color>"
                    })
                });
                MenuPlaySingleplayerUI.itemButton.tooltip   = MenuPlaySingleplayerUI.localization.format("Credits_Tooltip");
                MenuPlaySingleplayerUI.itemButton.isVisible = true;
                num += MenuPlaySingleplayerUI.itemButton.sizeOffset_Y + 10;
            }
            else
            {
                MenuPlaySingleplayerUI.itemButton.isVisible = false;
            }
            if (!string.IsNullOrEmpty(level.configData.Feedback))
            {
                MenuPlaySingleplayerUI.feedbackButton.positionOffset_Y = num;
                MenuPlaySingleplayerUI.feedbackButton.isVisible        = true;
                num += MenuPlaySingleplayerUI.feedbackButton.sizeOffset_Y + 10;
            }
            else
            {
                MenuPlaySingleplayerUI.feedbackButton.isVisible = false;
            }
            if (level.configData.Category == ESingleplayerMapCategory.CURATED && level.configData.CuratedMapMode == ECuratedMapMode.TIMED)
            {
                MenuPlaySingleplayerUI.timedBox.positionOffset_Y = num;
                MenuPlaySingleplayerUI.timedBox.text             = MenuPlaySingleplayerUI.localization.format("Timed_Text", new object[]
                {
                    MenuPlaySingleplayerUI.localization.format("Curated_Map_Timestamp", new object[]
                    {
                        level.configData.getCuratedMapTimestamp().ToString(MenuPlaySingleplayerUI.localization.format("Curated_Map_Timestamp_Format"))
                    })
                });
                MenuPlaySingleplayerUI.timedBox.isVisible = true;
                num += MenuPlaySingleplayerUI.timedBox.sizeOffset_Y + 10;
            }
            else
            {
                MenuPlaySingleplayerUI.timedBox.isVisible = false;
            }
        }
Ejemplo n.º 9
0
        public static void updateScene()
        {
            if (!Dedicator.isDedicated)
            {
                if (LoadingUI.backgroundImage == null)
                {
                    return;
                }
                if (LoadingUI.loadingImage == null)
                {
                    return;
                }
                LoadingUI.updateProgress(0f);
                Local local = Localization.read("/Menu/MenuTips.dat");
                byte  b;
                do
                {
                    b = (byte)Random.Range(1, (int)(LoadingUI.TIP_COUNT + 1));
                }while (b == (byte)LoadingUI.tip);
                LoadingUI.tip = (ELoadingTip)b;
                string text;
                if (OptionsSettings.streamer && Provider.streamerNames != null && Provider.streamerNames.Count > 0 && Provider.streamerNames[0] == "Nelson AI")
                {
                    text = local.format("Streamer");
                }
                else
                {
                    switch (LoadingUI.tip)
                    {
                    case ELoadingTip.HOTKEY:
                        text = local.format("Hotkey");
                        break;

                    case ELoadingTip.EQUIP:
                        text = local.format("Equip", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.other)
                        });
                        break;

                    case ELoadingTip.DROP:
                        text = local.format("Drop", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.other)
                        });
                        break;

                    case ELoadingTip.SIRENS:
                        text = local.format("Sirens", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.other)
                        });
                        break;

                    case ELoadingTip.TRANSFORM:
                        text = local.format("Transform");
                        break;

                    case ELoadingTip.QUALITY:
                        text = local.format("Quality");
                        break;

                    case ELoadingTip.UMBRELLA:
                        text = local.format("Umbrella");
                        break;

                    case ELoadingTip.HEAL:
                        text = local.format("Heal");
                        break;

                    case ELoadingTip.ROTATE:
                        text = local.format("Rotate");
                        break;

                    case ELoadingTip.BASE:
                        text = local.format("Base");
                        break;

                    case ELoadingTip.DEQUIP:
                        text = local.format("Dequip", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.dequip)
                        });
                        break;

                    case ELoadingTip.NIGHTVISION:
                        text = local.format("Nightvision", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.vision)
                        });
                        break;

                    case ELoadingTip.TRANSFER:
                        text = local.format("Transfer", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.other)
                        });
                        break;

                    case ELoadingTip.SURFACE:
                        text = local.format("Surface", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.jump)
                        });
                        break;

                    case ELoadingTip.ARREST:
                        text = local.format("Arrest", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.leanLeft),
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.leanRight)
                        });
                        break;

                    case ELoadingTip.SAFEZONE:
                        text = local.format("Safezone");
                        break;

                    case ELoadingTip.CLAIM:
                        text = local.format("Claim");
                        break;

                    case ELoadingTip.GROUP:
                        text = local.format("Group");
                        break;

                    case ELoadingTip.MAP:
                        text = local.format("Map", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.map)
                        });
                        break;

                    case ELoadingTip.BEACON:
                        text = local.format("Beacon");
                        break;

                    case ELoadingTip.HORN:
                        text = local.format("Horn", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.primary)
                        });
                        break;

                    case ELoadingTip.LIGHTS:
                        text = local.format("Lights", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.secondary)
                        });
                        break;

                    case ELoadingTip.SNAP:
                        text = local.format("Snap", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.snap)
                        });
                        break;

                    case ELoadingTip.UPGRADE:
                        text = local.format("Upgrade", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.other)
                        });
                        break;

                    case ELoadingTip.GRAB:
                        text = local.format("Grab", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.other)
                        });
                        break;

                    case ELoadingTip.SKYCRANE:
                        text = local.format("Skycrane", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.other)
                        });
                        break;

                    case ELoadingTip.SEAT:
                        text = local.format("Seat");
                        break;

                    case ELoadingTip.RARITY:
                        text = local.format("Rarity");
                        break;

                    case ELoadingTip.ORIENTATION:
                        text = local.format("Orientation", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.rotate)
                        });
                        break;

                    case ELoadingTip.RED:
                        text = local.format("Red");
                        break;

                    case ELoadingTip.STEADY:
                        text = local.format("Steady", new object[]
                        {
                            MenuConfigurationControlsUI.getKeyCodeText(ControlsSettings.sprint)
                        });
                        break;

                    default:
                        text = "#" + LoadingUI.tip.ToString();
                        break;
                    }
                }
                LoadingUI.tipBox.text = ItemTool.filterRarityRichText(local.format("Tip", new object[]
                {
                    text
                }));
                if (Level.info != null)
                {
                    if (!LoadingUI.pickBackgroundImage(Level.info.path + "/Screenshots") && !LoadingUI.loadBackgroundImage(Level.info.path + "/Level.png"))
                    {
                        LoadingUI.pickBackgroundImage(ReadWrite.PATH + "/Screenshots");
                    }
                    Local local2 = Localization.tryRead(Level.info.path, false);
                    if (local2 != null)
                    {
                        if (Provider.isConnected)
                        {
                            string text2;
                            if (Provider.isServer)
                            {
                                text2 = LoadingUI.localization.format("Offline");
                            }
                            else
                            {
                                if (Provider.currentServerInfo.IsVACSecure)
                                {
                                    text2 = LoadingUI.localization.format("VAC_Secure");
                                }
                                else
                                {
                                    text2 = LoadingUI.localization.format("VAC_Insecure");
                                }
                                if (Provider.currentServerInfo.IsBattlEyeSecure)
                                {
                                    text2 = text2 + " + " + LoadingUI.localization.format("BattlEye_Secure");
                                }
                                else
                                {
                                    text2 = text2 + " + " + LoadingUI.localization.format("BattlEye_Insecure");
                                }
                            }
                            LoadingUI.loadingLabel.text = local2.format("Loading_Server", new object[]
                            {
                                (!OptionsSettings.streamer) ? Provider.currentServerInfo.name : LoadingUI.localization.format("Streamer"),
                                text2
                            });
                            if (Provider.mode == EGameMode.EASY)
                            {
                                LoadingUI.loadingImage.backgroundColor = Palette.COLOR_G;
                                LoadingUI.loadingImage.foregroundColor = Palette.COLOR_G;
                            }
                            else if (Provider.mode == EGameMode.HARD)
                            {
                                LoadingUI.loadingImage.backgroundColor = Palette.COLOR_R;
                                LoadingUI.loadingImage.foregroundColor = Palette.COLOR_R;
                            }
                            else
                            {
                                LoadingUI.loadingImage.backgroundColor = Color.white;
                                LoadingUI.loadingImage.foregroundColor = Color.white;
                            }
                        }
                        else
                        {
                            LoadingUI.loadingLabel.text            = local2.format("Loading_Editor");
                            LoadingUI.loadingImage.backgroundColor = Color.white;
                            LoadingUI.loadingImage.foregroundColor = Color.white;
                        }
                    }
                    else
                    {
                        LoadingUI.loadingLabel.text            = string.Empty;
                        LoadingUI.loadingImage.backgroundColor = Color.white;
                        LoadingUI.loadingImage.foregroundColor = Color.white;
                    }
                    if (Level.info.configData.Creators.Length > 0 || Level.info.configData.Collaborators.Length > 0 || Level.info.configData.Thanks.Length > 0)
                    {
                        int    num   = 0;
                        string text3 = string.Empty;
                        if (Level.info.configData.Creators.Length > 0)
                        {
                            text3 += LoadingUI.localization.format("Creators");
                            num   += 15;
                            for (int i = 0; i < Level.info.configData.Creators.Length; i++)
                            {
                                text3 = text3 + "\n" + Level.info.configData.Creators[i];
                                num  += 15;
                            }
                        }
                        if (Level.info.configData.Collaborators.Length > 0)
                        {
                            if (text3.Length > 0)
                            {
                                text3 += "\n\n";
                                num   += 30;
                            }
                            text3 += LoadingUI.localization.format("Collaborators");
                            num   += 15;
                            for (int j = 0; j < Level.info.configData.Collaborators.Length; j++)
                            {
                                text3 = text3 + "\n" + Level.info.configData.Collaborators[j];
                                num  += 15;
                            }
                        }
                        if (Level.info.configData.Thanks.Length > 0)
                        {
                            if (text3.Length > 0)
                            {
                                text3 += "\n\n";
                                num   += 30;
                            }
                            text3 += LoadingUI.localization.format("Thanks");
                            num   += 15;
                            for (int k = 0; k < Level.info.configData.Thanks.Length; k++)
                            {
                                text3 = text3 + "\n" + Level.info.configData.Thanks[k];
                                num  += 15;
                            }
                        }
                        LoadingUI.creditsBox.positionOffset_Y = -num / 2;
                        LoadingUI.creditsBox.sizeOffset_Y     = num;
                        LoadingUI.creditsBox.text             = text3;
                        LoadingUI.creditsBox.isVisible        = true;
                    }
                    else
                    {
                        LoadingUI.creditsBox.isVisible = false;
                    }
                }
                else
                {
                    LoadingUI.pickBackgroundImage(ReadWrite.PATH + "/Screenshots");
                    LoadingUI.loadingLabel.text            = LoadingUI.localization.format("Loading");
                    LoadingUI.loadingImage.backgroundColor = Color.white;
                    LoadingUI.loadingImage.foregroundColor = Color.white;
                    LoadingUI.creditsBox.isVisible         = false;
                }
                LoadingUI.loadingBox.sizeOffset_X = -20;
                LoadingUI.cancelButton.isVisible  = false;
            }
        }
Ejemplo n.º 10
0
        private static void updateSelection()
        {
            if (PlaySettings.singleplayerMap == null || PlaySettings.singleplayerMap.Length == 0)
            {
                return;
            }
            LevelInfo level = Level.getLevel(PlaySettings.singleplayerMap);

            if (level == null)
            {
                return;
            }
            Local local = Localization.tryRead(level.path, false);

            if (local != null)
            {
                MenuPlaySingleplayerUI.descriptionBox.text = local.format("Description");
            }
            if (local != null && local.has("Name"))
            {
                MenuPlaySingleplayerUI.selectedBox.text = local.format("Name");
            }
            else
            {
                MenuPlaySingleplayerUI.selectedBox.text = PlaySettings.singleplayerMap;
            }
            if (MenuPlaySingleplayerUI.previewImage.texture != null && MenuPlaySingleplayerUI.previewImage.shouldDestroyTexture)
            {
                Object.Destroy(MenuPlaySingleplayerUI.previewImage.texture);
                MenuPlaySingleplayerUI.previewImage.texture = null;
            }
            string path = level.path + "/Preview.png";

            if (!ReadWrite.fileExists(path, false, false))
            {
                path = level.path + "/Level.png";
            }
            if (ReadWrite.fileExists(path, false, false))
            {
                byte[]    array     = ReadWrite.readBytes(path, false, false);
                Texture2D texture2D = new Texture2D(320, 180, 5, false, true);
                texture2D.name       = "Preview_" + PlaySettings.singleplayerMap + "_Selected_Icon";
                texture2D.filterMode = 2;
                texture2D.hideFlags  = 61;
                texture2D.LoadImage(array);
                MenuPlaySingleplayerUI.previewImage.texture = texture2D;
            }
            if (level.configData.Creators.Length > 0 || level.configData.Collaborators.Length > 0 || level.configData.Thanks.Length > 0)
            {
                int    num  = 0;
                string text = string.Empty;
                if (level.configData.Creators.Length > 0)
                {
                    text += MenuPlaySingleplayerUI.localization.format("Creators");
                    num  += 15;
                    for (int i = 0; i < level.configData.Creators.Length; i++)
                    {
                        text = text + "\n" + level.configData.Creators[i];
                        num += 15;
                    }
                }
                if (level.configData.Collaborators.Length > 0)
                {
                    if (text.Length > 0)
                    {
                        text += "\n\n";
                        num  += 30;
                    }
                    text += MenuPlaySingleplayerUI.localization.format("Collaborators");
                    num  += 15;
                    for (int j = 0; j < level.configData.Collaborators.Length; j++)
                    {
                        text = text + "\n" + level.configData.Collaborators[j];
                        num += 15;
                    }
                }
                if (level.configData.Thanks.Length > 0)
                {
                    if (text.Length > 0)
                    {
                        text += "\n\n";
                        num  += 30;
                    }
                    text += MenuPlaySingleplayerUI.localization.format("Thanks");
                    num  += 15;
                    for (int k = 0; k < level.configData.Thanks.Length; k++)
                    {
                        text = text + "\n" + level.configData.Thanks[k];
                        num += 15;
                    }
                }
                MenuPlaySingleplayerUI.creditsBox.sizeOffset_Y = num;
                MenuPlaySingleplayerUI.creditsBox.text         = text;
                MenuPlaySingleplayerUI.creditsBox.isVisible    = true;
            }
            else
            {
                MenuPlaySingleplayerUI.creditsBox.isVisible = false;
            }
            if (level.configData.Item != 0)
            {
                MenuPlaySingleplayerUI.itemButton.positionOffset_Y = MenuPlaySingleplayerUI.creditsBox.positionOffset_Y;
                if (MenuPlaySingleplayerUI.creditsBox.isVisible)
                {
                    MenuPlaySingleplayerUI.itemButton.positionOffset_Y += MenuPlaySingleplayerUI.creditsBox.sizeOffset_Y + 10;
                }
                MenuPlaySingleplayerUI.itemButton.text = MenuPlaySingleplayerUI.localization.format("Credits_Text", new object[]
                {
                    MenuPlaySingleplayerUI.selectedBox.text,
                    string.Concat(new string[]
                    {
                        "<color=",
                        Palette.hex(Provider.provider.economyService.getInventoryColor(level.configData.Item)),
                        ">",
                        Provider.provider.economyService.getInventoryName(level.configData.Item),
                        "</color>"
                    })
                });
                MenuPlaySingleplayerUI.itemButton.tooltip   = MenuPlaySingleplayerUI.localization.format("Credits_Tooltip");
                MenuPlaySingleplayerUI.itemButton.isVisible = true;
            }
            else
            {
                MenuPlaySingleplayerUI.itemButton.isVisible = false;
            }
            if (!string.IsNullOrEmpty(level.configData.Feedback))
            {
                MenuPlaySingleplayerUI.feedbackButton.positionOffset_Y = MenuPlaySingleplayerUI.creditsBox.positionOffset_Y;
                if (MenuPlaySingleplayerUI.creditsBox.isVisible)
                {
                    MenuPlaySingleplayerUI.feedbackButton.positionOffset_Y += MenuPlaySingleplayerUI.creditsBox.sizeOffset_Y + 10;
                }
                if (MenuPlaySingleplayerUI.itemButton.isVisible)
                {
                    MenuPlaySingleplayerUI.feedbackButton.positionOffset_Y += MenuPlaySingleplayerUI.itemButton.sizeOffset_Y + 10;
                }
                MenuPlaySingleplayerUI.feedbackButton.isVisible = true;
            }
            else
            {
                MenuPlaySingleplayerUI.feedbackButton.isVisible = false;
            }
        }
Ejemplo n.º 11
0
        // Token: 0x060032EC RID: 13036 RVA: 0x00149C74 File Offset: 0x00148074
        public SleekLevel(LevelInfo level, bool isEditor)
        {
            base.init();
            base.sizeOffset_X        = 400;
            base.sizeOffset_Y        = 100;
            this.button              = new SleekButton();
            this.button.sizeOffset_X = 0;
            this.button.sizeOffset_Y = 0;
            this.button.sizeScale_X  = 1f;
            this.button.sizeScale_Y  = 1f;
            if (level.isEditable || !isEditor)
            {
                this.button.onClickedButton = new ClickedButton(this.onClickedButton);
            }
            base.add(this.button);
            if (ReadWrite.fileExists(level.path + "/Icon.png", false, false))
            {
                byte[]    data      = ReadWrite.readBytes(level.path + "/Icon.png", false, false);
                Texture2D texture2D = new Texture2D(380, 80, TextureFormat.ARGB32, false, true);
                texture2D.name      = "Icon_" + level.name + "_List_Icon";
                texture2D.hideFlags = HideFlags.HideAndDontSave;
                texture2D.LoadImage(data);
                this.icon = new SleekImageTexture();
                this.icon.positionOffset_X     = 10;
                this.icon.positionOffset_Y     = 10;
                this.icon.sizeOffset_X         = -20;
                this.icon.sizeOffset_Y         = -20;
                this.icon.sizeScale_X          = 1f;
                this.icon.sizeScale_Y          = 1f;
                this.icon.texture              = texture2D;
                this.icon.shouldDestroyTexture = true;
                this.button.add(this.icon);
            }
            this.nameLabel = new SleekLabel();
            this.nameLabel.positionOffset_Y = 10;
            this.nameLabel.sizeScale_X      = 1f;
            this.nameLabel.sizeOffset_Y     = 50;
            this.nameLabel.fontAlignment    = TextAnchor.MiddleCenter;
            this.nameLabel.fontSize         = 14;
            this.button.add(this.nameLabel);
            Local local = Localization.tryRead(level.path, false);

            if (local != null && local.has("Name"))
            {
                this.nameLabel.text = local.format("Name");
            }
            else
            {
                this.nameLabel.text = level.name;
            }
            this.infoLabel = new SleekLabel();
            this.infoLabel.positionOffset_Y = 60;
            this.infoLabel.sizeScale_X      = 1f;
            this.infoLabel.sizeOffset_Y     = 30;
            this.infoLabel.fontAlignment    = TextAnchor.MiddleCenter;
            string text = "#SIZE";

            if (level.size == ELevelSize.TINY)
            {
                text = MenuPlaySingleplayerUI.localization.format("Tiny");
            }
            else if (level.size == ELevelSize.SMALL)
            {
                text = MenuPlaySingleplayerUI.localization.format("Small");
            }
            else if (level.size == ELevelSize.MEDIUM)
            {
                text = MenuPlaySingleplayerUI.localization.format("Medium");
            }
            else if (level.size == ELevelSize.LARGE)
            {
                text = MenuPlaySingleplayerUI.localization.format("Large");
            }
            else if (level.size == ELevelSize.INSANE)
            {
                text = MenuPlaySingleplayerUI.localization.format("Insane");
            }
            string text2 = "#TYPE";

            if (level.type == ELevelType.SURVIVAL)
            {
                text2 = MenuPlaySingleplayerUI.localization.format("Survival");
            }
            else if (level.type == ELevelType.HORDE)
            {
                text2 = MenuPlaySingleplayerUI.localization.format("Horde");
            }
            else if (level.type == ELevelType.ARENA)
            {
                text2 = MenuPlaySingleplayerUI.localization.format("Arena");
            }
            this.infoLabel.text = MenuPlaySingleplayerUI.localization.format("Info", new object[]
            {
                text,
                text2
            });
            this.button.add(this.infoLabel);
            if (!level.isEditable && isEditor)
            {
                Bundle            bundle            = Bundles.getBundle("/Bundles/Textures/Menu/Icons/Workshop/MenuWorkshopEditor/MenuWorkshopEditor.unity3d");
                SleekImageTexture sleekImageTexture = new SleekImageTexture();
                sleekImageTexture.positionOffset_X = 20;
                sleekImageTexture.positionOffset_Y = -20;
                sleekImageTexture.positionScale_Y  = 0.5f;
                sleekImageTexture.sizeOffset_X     = 40;
                sleekImageTexture.sizeOffset_Y     = 40;
                sleekImageTexture.texture          = (Texture2D)bundle.load("Lock");
                sleekImageTexture.backgroundTint   = ESleekTint.FOREGROUND;
                this.button.add(sleekImageTexture);
                bundle.unload();
            }
            if (level.configData != null && level.configData.Status != EMapStatus.NONE)
            {
                SleekNew sleek = new SleekNew(level.configData.Status == EMapStatus.UPDATED);
                if (this.icon != null)
                {
                    this.icon.add(sleek);
                }
                else
                {
                    base.add(sleek);
                }
            }
            if (level.configData != null && level.configData.Category == ESingleplayerMapCategory.CURATED && level.configData.CuratedMapMode == ECuratedMapMode.TIMED)
            {
                SleekLabel sleekLabel = new SleekLabel();
                sleekLabel.positionOffset_X = -105;
                sleekLabel.positionScale_X  = 1f;
                sleekLabel.sizeOffset_X     = 100;
                sleekLabel.sizeOffset_Y     = 30;
                sleekLabel.fontAlignment    = TextAnchor.MiddleRight;
                sleekLabel.text             = MenuPlaySingleplayerUI.localization.format("Curated_Map_Timed");
                sleekLabel.foregroundTint   = ESleekTint.NONE;
                sleekLabel.foregroundColor  = Color.green;
                if (level.configData.Status != EMapStatus.NONE)
                {
                    sleekLabel.positionOffset_Y += 30;
                }
                SleekLabel sleekLabel2 = new SleekLabel();
                sleekLabel2.positionOffset_X = -205;
                sleekLabel2.positionOffset_Y = -30;
                sleekLabel2.positionScale_X  = 1f;
                sleekLabel2.positionScale_Y  = 1f;
                sleekLabel2.sizeOffset_X     = 200;
                sleekLabel2.sizeOffset_Y     = 30;
                sleekLabel2.fontAlignment    = TextAnchor.MiddleRight;
                sleekLabel2.text             = MenuPlaySingleplayerUI.localization.format("Curated_Map_Timestamp", new object[]
                {
                    level.configData.getCuratedMapTimestamp().ToString(MenuPlaySingleplayerUI.localization.format("Curated_Map_Timestamp_Format"))
                });
                sleekLabel2.foregroundTint  = ESleekTint.NONE;
                sleekLabel2.foregroundColor = Color.green;
                if (this.icon != null)
                {
                    this.icon.add(sleekLabel);
                    this.icon.add(sleekLabel2);
                }
                else
                {
                    base.add(sleekLabel);
                    base.add(sleekLabel2);
                }
            }
        }