Иконка ресурса

FREE ItemName : 0.0.1 0.0.1

Нет прав для скачивания
C#:
using System.Collections.Generic;
using System.Linq;
using Newtonsoft.Json;

namespace Oxide.Plugins
{
    [Info("ItemName", "Hougan", "0.0.1")]
    public class ItemName : RustPlugin
    {
        #region Classes

        private class CustomItem
        {
            [JsonProperty("SkinID предметa")]
            public ulong SkinID;
            [JsonProperty("Отображаемое имя предмета")]
            public string DisplayName;
            
            public CustomItem() {}
            public CustomItem(ulong skinId, string name)
            {
                SkinID = skinId;
                DisplayName = name;
            }
        }

        private class Configuration
        {
            [JsonProperty("Список предметов для отслеживания")]
            public List<CustomItem> Items = new List<CustomItem>();

            public static Configuration Generate()
            {
                return new Configuration()
                {
                    Items = new List<CustomItem>
                    {
                        new CustomItem(1492610636UL, "Золотой череп"),
                        new CustomItem(1492612801UL, "Золотая рыбка"),
                        new CustomItem(1500420411UL, "Золотая ловушка"),
                        new CustomItem(1552134674UL, "Волшебный саженец"),
                        new CustomItem(1492611813UL, "Сердце человека")
                    }
                };
            }
        }
        
        #endregion

        #region Variables

        private static Configuration Settings;

        #endregion

        #region Initialization
       
        protected override void LoadConfig()
        {
            base.LoadConfig();
            try
            {
                Settings = Config.ReadObject<Configuration>();
                if (Settings == null) LoadDefaultConfig();
            } 
            catch
            {
                PrintWarning($"Ошибка чтения конфигурации 'oxide/config/{Name}', создаём новую конфигурацию!!");
                LoadDefaultConfig();
            }
            
            NextTick(SaveConfig);
        }

        protected override void LoadDefaultConfig() => Settings = Configuration.Generate();
        protected override void SaveConfig()        => Config.WriteObject(Settings);

        #endregion

        #region Hooks

        private void CanAcceptItem(ItemContainer container, Item item, int targetPos)
        {
            var shouldName = Settings.Items.FirstOrDefault(p => p.SkinID == item.skin);
            if (shouldName == null) return;

            item.name = shouldName.DisplayName;
        } 

        #endregion
    }
}

Автор
15FPS
Скачиваний
0
Просмотры
1
Первый выпуск
Обновление
Оценка
0.00 звёзд 0 оценок

Другие ресурсы пользователя 15FPS

Сверху