using System; using System.Collections.Generic; using System.Linq; using UnityEngine; namespace Oxide.Plugins { [Info("Gathering Manager", "Mughisi", "2.2.75", ResourceId = 675)] class GatherManager : RustPlugin { #region Configuration Data // Do not modify these values because this will not change anything, the values listed below are only used to create // the initial configuration file. If you wish changes to the configuration file you should edit 'GatherManager.json' // which is located in your server's config folder: :\...\server\\oxide\config\ private bool configChanged; // Plugin settings private const string DefaultChatPrefix = "Gather Manager"; private const string DefaultChatPrefixColor = "#008000ff"; public string ChatPrefix { get; private set; } public string ChatPrefixColor { get; private set; } // Plugin options private static readonly Dictionary DefaultGatherResourceModifiers = new Dictionary(); private static readonly Dictionary DefaultGatherDispenserModifiers = new Dictionary(); private static readonly Dictionary DefaultQuarryResourceModifiers = new Dictionary(); private static readonly Dictionary DefaultPickupResourceModifiers = new Dictionary(); private static readonly Dictionary DefaultSurveyResourceModifiers = new Dictionary(); // Defaults private const float DefaultMiningQuarryResourceTickRate = 5f; private const float DefaultExcavatorResourceTickRate = 3f; private const float DefaultExcavatorTimeForFullResources = 120f; private const float DefaultExcavatorBeltSpeedMax = 0.1f; public Dictionary GatherResourceModifiers { get; private set; } public Dictionary GatherDispenserModifiers { get; private set; } public Dictionary QuarryResourceModifiers { get; private set; } public Dictionary ExcavatorResourceModifiers { get; private set; } public Dictionary PickupResourceModifiers { get; private set; } public Dictionary SurveyResourceModifiers { get; private set; } public float MiningQuarryResourceTickRate { get; private set; } public float ExcavatorResourceTickRate { get; private set; } public float ExcavatorTimeForFullResources { get; private set; } public float ExcavatorBeltSpeedMax { get; private set; } // Plugin messages private const string DefaultNotAllowed = "You don't have permission to use this command."; private const string DefaultInvalidArgumentsGather = "Invalid arguments supplied! Use gather.rate "; private const string DefaultInvalidArgumentsDispenser = "Invalid arguments supplied! Use dispenser.scale "; private const string DefaultInvalidArgumentsSpeed = "Invalid arguments supplied! Use quarry.rate