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

FREE PillsHere : 3.1.0 3.1.0

Нет прав для скачивания
C#:
// Все права принадлежат дискорд сообществу https://discord.gg/VgNHPpNrz6
using Newtonsoft.Json;

namespace Oxide.Plugins
{
    [Info("PillsHere", "Wulf/lukespragg", "3.1.0", ResourceId = 1723)]
    [Description("Recovers health, hunger, and/or hydration by set amounts on item use")]
    public class PillsHere : CovalencePlugin
    {
        #region Configuration

        private Configuration config;

        public class Configuration
        {
            [JsonProperty(PropertyName = "Calories amount (0.0 - 500.0)")]
            public float CaloriesAmount;

            [JsonProperty(PropertyName = "Health amount (0.0 - 100.0)")]
            public float HealthAmount;

            [JsonProperty(PropertyName = "Hydration amount (0.0 - 250.0)")]
            public float HydrationAmount;

            [JsonProperty(PropertyName = "Item ID or short name to use")]
            public string ItemIdOrShortName;

            public static Configuration DefaultConfig()
            {
                return new Configuration
                {
                    CaloriesAmount = 0f,
                    HealthAmount = 20f,
                    HydrationAmount = 0f,
                    ItemIdOrShortName = "1685058759"
                };
            }
        }

        protected override void LoadConfig()
        {
            base.LoadConfig();
            try
            {
                config = Config.ReadObject<Configuration>();
                if (config?.HealthAmount == null) LoadDefaultConfig();
            }
            catch
            {
                PrintWarning($"Could not read oxide/config/{Name}.json, creating new config file");
                LoadDefaultConfig();
            }
            SaveConfig();
        }

        protected override void LoadDefaultConfig() => config = Configuration.DefaultConfig();

        protected override void SaveConfig() => Config.WriteObject(config);

        #endregion Configuration

        #region Initialization

        private const string permUse = "pillshere.use";

        private void Init() => permission.RegisterPermission(permUse, this);

        #endregion Initialization

        #region Healing

        private void OnItemUse(Item item)
        {
            var player = item.GetOwnerPlayer();
            if (player == null) return;

            if (item.info.itemid.ToString() != config.ItemIdOrShortName && item.info.name != config.ItemIdOrShortName) return;
            if (!permission.UserHasPermission(player.UserIDString, permUse)) return;

            player.Heal(config.HealthAmount);
            player.metabolism.calories.value += config.CaloriesAmount;
            player.metabolism.hydration.value = player.metabolism.hydration.lastValue + config.HydrationAmount;
        }

        #endregion Healing
    }
}

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