示例#1
0
 /// <summary>Get a translation equivalent to "Fridge".</summary>
 public static string DefaultName_Fridge()
 {
     return(I18n.GetByKey("default-name.fridge"));
 }
示例#2
0
 /// <summary>Get a translation equivalent to "Order".</summary>
 public static string Label_Order()
 {
     return(I18n.GetByKey("label.order"));
 }
示例#3
0
 /// <summary>Get a translation equivalent to "You don't have any chests in range.".</summary>
 public static string Errors_NoChestsInRange()
 {
     return(I18n.GetByKey("errors.no-chests-in-range"));
 }
示例#4
0
 /// <summary>Get a translation equivalent to "tile {{x}}, {{y}}".</summary>
 /// <param name="x">The value to inject for the <c>{{x}}</c> token.</param>
 /// <param name="y">The value to inject for the <c>{{y}}</c> token.</param>
 public static string Label_Location_Tile(object x, object y)
 {
     return(I18n.GetByKey("label.location.tile", new { x, y }));
 }
示例#5
0
 /// <summary>Get a translation equivalent to "Category".</summary>
 public static string Label_Category()
 {
     return(I18n.GetByKey("label.category"));
 }
示例#6
0
 /// <summary>Get a translation equivalent to "Cabin ({{owner}})".</summary>
 /// <param name="owner">The value to inject for the <c>{{owner}}</c> token.</param>
 public static string DefaultCategory_OwnedCabin(object owner)
 {
     return(I18n.GetByKey("default-category.owned-cabin", new { owner }));
 }
示例#7
0
 /// <summary>Get a translation equivalent to "{{locationName}} #{{number}}".</summary>
 /// <param name="locationName">The value to inject for the <c>{{locationName}}</c> token.</param>
 /// <param name="number">The value to inject for the <c>{{number}}</c> token.</param>
 public static string DefaultCategory_Duplicate(object locationName, object number)
 {
     return(I18n.GetByKey("default-category.duplicate", new { locationName, number }));
 }
示例#8
0
 /// <summary>Get a translation equivalent to "edit chest".</summary>
 public static string Button_EditChest()
 {
     return(I18n.GetByKey("button.edit-chest"));
 }
示例#9
0
 /// <summary>Get a translation equivalent to "sort inventory".</summary>
 public static string Button_SortInventory()
 {
     return(I18n.GetByKey("button.sort-inventory"));
 }
示例#10
0
 /// <summary>Get a translation equivalent to "Take items from this chest first".</summary>
 public static string Label_AutomateTakeFirst()
 {
     return(I18n.GetByKey("label.automate-take-first"));
 }
示例#11
0
 /// <summary>Get a translation equivalent to "Never take items from this chest".</summary>
 public static string Label_AutomateTakeDisabled()
 {
     return(I18n.GetByKey("label.automate-take-disabled"));
 }
示例#12
0
 /// <summary>Get a translation equivalent to "Put items in this chest first".</summary>
 public static string Label_AutomateStoreFirst()
 {
     return(I18n.GetByKey("label.automate-store-first"));
 }
示例#13
0
 /// <summary>Get a translation equivalent to "Automate options".</summary>
 public static string Label_AutomateOptions()
 {
     return(I18n.GetByKey("label.automate-options"));
 }
示例#14
0
 /// <summary>Get a translation equivalent to "Hide this chest (you'll need to find the chest to undo this!)".</summary>
 public static string Label_HideChestHidden()
 {
     return(I18n.GetByKey("label.hide-chest-hidden"));
 }
示例#15
0
 /// <summary>Get a translation equivalent to "{{name}} #{{number}}".</summary>
 /// <param name="name">The value to inject for the <c>{{name}}</c> token.</param>
 /// <param name="number">The value to inject for the <c>{{number}}</c> token.</param>
 public static string DefaultName_Other(object name, object number)
 {
     return(I18n.GetByKey("default-name.other", new { name, number }));
 }
示例#16
0
 /// <summary>Get a translation equivalent to "save".</summary>
 public static string Button_Save()
 {
     return(I18n.GetByKey("button.save"));
 }
示例#17
0
 /// <summary>Get a translation equivalent to "retrieve items".</summary>
 public static string DefaultName_ShippingBin_Take()
 {
     return(I18n.GetByKey("default-name.shipping-bin.take"));
 }
示例#18
0
 /// <summary>Get a translation equivalent to "reset".</summary>
 public static string Button_Reset()
 {
     return(I18n.GetByKey("button.reset"));
 }
示例#19
0
 /// <summary>Get a translation equivalent to "Cabin (empty)".</summary>
 public static string DefaultCategory_UnownedCabin()
 {
     return(I18n.GetByKey("default-category.unowned-cabin"));
 }
示例#20
0
 /// <summary>Get a translation equivalent to "You can't access chests from here.".</summary>
 public static string Errors_DisabledFromHere()
 {
     return(I18n.GetByKey("errors.disabled-from-here"));
 }
示例#21
0
 /// <summary>Get a translation equivalent to "Location".</summary>
 public static string Label_Location()
 {
     return(I18n.GetByKey("label.location"));
 }
示例#22
0
 /// <summary>Get a translation equivalent to "You don't have any chests yet.".</summary>
 public static string Errors_NoChests()
 {
     return(I18n.GetByKey("errors.no-chests"));
 }
示例#23
0
 /// <summary>Get a translation equivalent to "Name".</summary>
 public static string Label_Name()
 {
     return(I18n.GetByKey("label.name"));
 }
示例#24
0
 /// <summary>Get a translation equivalent to "You don't have any chests in this area.".</summary>
 public static string Errors_NoChestsInLocation()
 {
     return(I18n.GetByKey("errors.no-chests-in-location"));
 }
        /// <summary>Register the config menu if available.</summary>
        public void Register()
        {
            var menu = this.ConfigMenu;

            if (!menu.IsLoaded)
            {
                return;
            }

            menu.Register();
            menu
            .AddSectionTitle(I18n.Config_Title_GeneralOptions)
            .AddCheckbox(
                name: I18n.Config_ShowHoverTooltips_Name,
                tooltip: I18n.Config_ShowHoverTooltips_Desc,
                get: config => config.ShowHoverTooltips,
                set: (config, value) => config.ShowHoverTooltips = value
                )
            .AddCheckbox(
                name: I18n.Config_EnableShippingBin_Name,
                tooltip: I18n.Config_EnableShippingBin_Desc,
                get: config => config.EnableShippingBin,
                set: (config, value) => config.EnableShippingBin = value
                )
            .AddCheckbox(
                name: I18n.Config_AddOrganizePlayerItems_Name,
                tooltip: I18n.Config_AddOrganizePlayerItems_Desc,
                get: config => config.AddOrganizePlayerInventoryButton,
                set: (config, value) => config.AddOrganizePlayerInventoryButton = value
                )
            .AddDropdown(
                name: I18n.Config_Range_Name,
                tooltip: I18n.Config_Range_Desc,
                get: config => config.Range.ToString(),
                set: (config, value) => config.Range = Enum.Parse <ChestRange>(value, ignoreCase: true),
                allowedValues: Enum.GetNames <ChestRange>(),
                formatAllowedValue: name => I18n.GetByKey($"config.range.{name}")
                )

            .AddSectionTitle(I18n.Config_Title_GeneralControls)
            .AddKeyBinding(
                name: I18n.Config_ToggleUiKey_Name,
                tooltip: I18n.Config_ToggleUiKey_Desc,
                get: config => config.Controls.Toggle,
                set: (config, value) => config.Controls.Toggle = value
                )

            .AddSectionTitle(I18n.Config_Title_MenuControls)
            .AddKeyBinding(
                name: I18n.Config_EditChest_Name,
                tooltip: I18n.Config_EditChest_Desc,
                get: config => config.Controls.EditChest,
                set: (config, value) => config.Controls.EditChest = value
                )
            .AddKeyBinding(
                name: I18n.Config_SortItems_Name,
                tooltip: I18n.Config_SortItems_Desc,
                get: config => config.Controls.SortItems,
                set: (config, value) => config.Controls.SortItems = value
                )
            .AddKeyBinding(
                name: I18n.Config_NavigatePrevChest_Name,
                tooltip: I18n.Config_NavigatePrevChest_Desc,
                get: config => config.Controls.PrevChest,
                set: (config, value) => config.Controls.PrevChest = value
                )
            .AddKeyBinding(
                name: I18n.Config_NavigateNextChest_Name,
                tooltip: I18n.Config_NavigateNextChest_Desc,
                get: config => config.Controls.NextChest,
                set: (config, value) => config.Controls.NextChest = value
                )
            .AddKeyBinding(
                name: I18n.Config_NavigatePrevCategory_Name,
                tooltip: I18n.Config_NavigatePrevCategory_Desc,
                get: config => config.Controls.PrevCategory,
                set: (config, value) => config.Controls.PrevCategory = value
                )
            .AddKeyBinding(
                name: I18n.Config_NavigateNextCategory_Name,
                tooltip: I18n.Config_NavigateNextCategory_Desc,
                get: config => config.Controls.NextCategory,
                set: (config, value) => config.Controls.NextCategory = value
                )
            .AddKeyBinding(
                name: I18n.Config_HoldToScrollCategories_Name,
                tooltip: I18n.Config_HoldToScrollCategories_Desc,
                get: config => config.Controls.HoldToMouseWheelScrollCategories,
                set: (config, value) => config.Controls.HoldToMouseWheelScrollCategories = value
                )
            .AddKeyBinding(
                name: I18n.Config_HoldToScrollChests_Name,
                tooltip: I18n.Config_HoldToScrollChests_Desc,
                get: config => config.Controls.HoldToMouseWheelScrollChests,
                set: (config, value) => config.Controls.HoldToMouseWheelScrollChests = value
                )

            .AddSectionTitle(I18n.Config_Title_DisableInLocations)
            .AddCheckbox(
                name: I18n.Config_DisableMines_Name,
                tooltip: I18n.Config_DisableMines_Desc,
                get: config => config.DisabledInLocations.Contains(MinesName),
                set: (config, value) =>
            {
                if (value)
                {
                    config.DisabledInLocations.Add(MinesName);
                }
                else
                {
                    config.DisabledInLocations.Remove(MinesName);
                }
            }
                )
            .AddTextbox(
                name: I18n.Config_DisableCustomNames_Name,
                tooltip: I18n.Config_DisableCustomNames_Desc,
                get: config => string.Join(", ", config.DisabledInLocations.Where(name => !name.Equals(MinesName, StringComparison.OrdinalIgnoreCase)).OrderBy(p => p, StringComparer.OrdinalIgnoreCase)),
                set: (config, value) =>
            {
                MutableInvariantSet parsed = new(value.Split(',').Select(p => p.Trim()).Where(p => p != string.Empty));
                if (config.DisabledInLocations.Contains(MinesName))
                {
                    parsed.Add(MinesName);
                }

                config.DisabledInLocations.Clear();
                config.DisabledInLocations.AddMany(parsed);
            }
                );
        }
示例#26
0
 /// <summary>Get a translation equivalent to "Avoid removing the last item in a stack".</summary>
 public static string Label_AutomatePreventRemoveStacks()
 {
     return(I18n.GetByKey("label.automate-prevent-remove-stacks"));
 }