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

FREE BMenu : 1.0.0 1.0.0

Нет прав для скачивания
C#:
// Все права принадлежат дискорд сообществу https://discord.gg/VgNHPpNrz6
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using Newtonsoft.Json;
using Oxide.Core;
using Oxide.Core.Libraries.Covalence;
using Oxide.Core.Plugins;
using Oxide.Game.Rust.Cui;
using UnityEngine;

namespace Oxide.Plugins
{
	[Info("BMenu", "King", "1.0.0")]
	public class BMenu : RustPlugin
	{
        #region [Vars]
        [PluginReference] Plugin ImageLibrary;
        public string Layer = "BMenu.Layer";
        private readonly List<BasePlayer> MenuUsers = new List<BasePlayer>();
        private readonly List<BasePlayer> MenuUsers2 = new List<BasePlayer>();
        #endregion

        #region [Oxide]
        private void OnServerInitialized()
        {
            if (!ImageLibrary)
            {
                NextTick(() =>
                {
                    PrintError($"ERROR! Plugin ImageLibrary not found!");
                    Interface.Oxide.UnloadPlugin(Name);
                });
                return;
            }
            
            AddCovalenceCommand("menuOpen", nameof(CmdMenu));
            AddCovalenceCommand("menu", nameof(CmdMenu2));
            foreach (var image in config._Images)
                AddImage(image.Key, image.Value);

			foreach (var entity in BaseNetworkable.serverEntities)
				OnEntitySpawned(entity as BaseEntity);
                
            foreach (var player in BasePlayer.activePlayerList)
            {
                InitializeUI(player);
                MenuUsers.Add(player);
            }

			timer.Every(2, () =>
			{
				foreach (var player in BasePlayer.activePlayerList)
				{
					if (player.IsNpc || player.IsSleeping() || player.IsReceivingSnapshot) continue;

                    if (MenuUsers.Contains(player))
					    SupportUI(player, "time");
				}
			});
        }
        private void Unload()
        {
            foreach (BasePlayer player in BasePlayer.activePlayerList)
            {
                CuiHelper.DestroyUi(player, Layer);
            }
        }
        #endregion

        #region [Rust-Api]
		private void OnPlayerConnected(BasePlayer player)
		{
			if (player.IsReceivingSnapshot || player.IsSleeping())
			{
				timer.In(1, () => OnPlayerConnected(player));
				return;
			}
 
            MenuUsers.Add(player);
			InitializeUI(player);
			UpdateOnline();
		}
		private void OnPlayerDisconnected(BasePlayer player)
		{
            MenuUsers.Remove(player);
			timer.In(1f, UpdateOnline);
		}
		private void OnEntitySpawned(BaseEntity entity)
		{
			EntityHandle(entity, true);
		}
		private void OnEntityKill(BaseEntity entity)
		{
			EntityHandle(entity, false);
		}
        #endregion

        #region [ImageLibrary]
        private bool HasImage(string imageName, ulong imageId = 0) => (bool)ImageLibrary.Call("HasImage", imageName, imageId);
        private bool AddImage(string url, string shortname, ulong skin = 0) => (bool)ImageLibrary?.Call("AddImage", url, shortname, skin);
        private string GetImage(string shortname, ulong skin = 0) => (string)ImageLibrary?.Call("GetImage", shortname, skin);
        #endregion

        #region [Ui]
        private void InitializeUI(BasePlayer player)
        {
            CuiHelper.DestroyUi(player, Layer);
			var container = new CuiElementContainer
			{
				{
					new CuiPanel {RectTransform = {AnchorMin = "0 1", AnchorMax = "0 1"}, Image = {Color = "0 0 0 0"}},
					"Overlay", Layer
				}
			};
            container.Add(new CuiPanel
            {
                RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "4 -32.5", OffsetMax = "36.5 0" },
                Image = { Material = "assets/icons/greyout.mat", Color = "0.8 0.8 0.8 0.125" },
            }, Layer, Layer + "store");
            container.Add(new CuiElement
            {
                Parent = Layer + "store",
                Components =
                {
                    new CuiRawImageComponent { Png = GetImage("store"), Color = "1 1 1 0.9" },
                    new CuiRectTransformComponent {AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "5 6", OffsetMax = "-5 -5"},
                    new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                }
            });
            container.Add(new CuiButton
            {
                RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1" },
                Button = { Color = "0 0 0 0", Command = "chat.say /store" },
                Text = { Text = "" }
            }, Layer + "store");
            container.Add(new CuiPanel
            {
                RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "4 -52", OffsetMax = "36.5 -38" },
                Image = { Material = "assets/icons/greyout.mat", Color = "0.8 0.8 0.8 0.125" },
            }, Layer, Layer + "/menu");
            container.Add(new CuiElement
            {
                Parent = Layer + "/menu",
                Components =
                {
                        new CuiTextComponent { Text = $"/MENU", Color = "1 1 1 0.9", Align = TextAnchor.MiddleCenter, FontSize = 11, Font = "robotocondensed-bold.ttf" },
                        new CuiRectTransformComponent { AnchorMin = $"0 0", AnchorMax = $"0.95 1" },
                        new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                }
            });
            container.Add(new CuiButton
            {
                RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1" },
                Button = { Color = "0 0 0 0", Command = "chat.say /menu" },
                Text = { Text = "" }
            }, Layer + "/menu");
            CuiHelper.AddUi(player, container);
            SupportUI(player, "all");
        }

        private void SupportUI(BasePlayer player, string Type)
        {
            var container = new CuiElementContainer();
            switch(Type)
            {
                case "all":
                    DestroyUI(player);
                    container.Add(new CuiPanel
                    {
                        RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "42 -15", OffsetMax = "168.5 0" },
                        Image = { Material = "assets/icons/greyout.mat", Color = "0.8 0.8 0.8 0.125" },
                    }, Layer, Layer + "nameServer");
                    container.Add(new CuiElement
                    {
                        Parent = Layer + "nameServer",
                        Components =
                        {
                            new CuiTextComponent { Text = config.ServerName, Color = "1 1 1 1", Align = TextAnchor.MiddleCenter, FontSize = 12, Font = "robotocondensed-bold.ttf" },
                            new CuiRectTransformComponent { AnchorMin = $"0 0", AnchorMax = $"1 1" },
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    container.Add(new CuiPanel
                    {
                        RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "174 -15", OffsetMax = "189 0" },
                        Image = { Material = "assets/icons/greyout.mat", Color = "0.8 0.8 0.8 0.125" },
                    }, Layer, Layer + "CloseMenu");
                    container.Add(new CuiElement
                    {
                        Parent = Layer + "CloseMenu",
                        Components =
                        {
                            new CuiTextComponent { Text = $"<", Color = "1 1 1 1", Align = TextAnchor.MiddleCenter, FontSize = 12, Font = "robotocondensed-bold.ttf" },
                            new CuiRectTransformComponent { AnchorMin = $"0 0", AnchorMax = $"0.9 1" },
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    container.Add(new CuiButton
                    {
                        RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1" },
                        Button = { Color = "0 0 0 0", Command = "chat.say /menuOpen" },
                        Text = { Text = "" }
                    }, Layer + "CloseMenu");
                    container.Add(new CuiPanel
                    {
                        RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "42 -32.5", OffsetMax = "104 -18.5" },
                        Image = { Material = "assets/icons/greyout.mat", Color = "0.8 0.8 0.8 0.125" },
                    }, Layer, Layer + "playerServer");
                    container.Add(new CuiElement
                    {
                        Parent = Layer + "playerServer",
                        Components =
                        {
                            new CuiRawImageComponent { Png = GetImage("online"), Color = "1 1 1 0.9" },
                            new CuiRectTransformComponent {AnchorMin = "0 0", AnchorMax = "0.2 1", OffsetMin = "1 1.25", OffsetMax = "1 -1.25"},
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    container.Add(new CuiElement
                    {
                        Name = Layer + "playerServerText",
                        Parent = Layer + "playerServer",
                        Components =
                        {
                            new CuiTextComponent { Text = $"{GetOnline()}/{ConVar.Server.maxplayers}", Color = "1 1 1 1", Align = TextAnchor.MiddleCenter, FontSize = 12, Font = "robotocondensed-bold.ttf" },
                            new CuiRectTransformComponent { AnchorMin = $"0.22 0", AnchorMax = $"1 0.9" },
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    container.Add(new CuiPanel
                    {
                        RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "109 -32.5", OffsetMax = "168.5 -18.5" },
                        Image = { Material = "assets/icons/greyout.mat", Color = "0.8 0.8 0.8 0.125" },
                    }, Layer, Layer + "timeServer");
                    container.Add(new CuiElement
                    {
                        Parent = Layer + "timeServer",
                        Components =
                        {
                            new CuiRawImageComponent { Png = GetImage("time"), Color = "1 1 1 0.9" },
                            new CuiRectTransformComponent {AnchorMin = "0 0", AnchorMax = "0.2 1", OffsetMin = "2.4 1.25", OffsetMax = "2.1 -1.25"},
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    container.Add(new CuiElement
                    {
                        Name = Layer + "timeServerText",
                        Parent = Layer + "timeServer",
                        Components =
                        {
                            new CuiTextComponent { Text = TOD_Sky.Instance.Cycle.DateTime.ToString("HH:mm"), Color = "1 1 1 1", Align = TextAnchor.MiddleCenter, FontSize = 12, Font = "robotocondensed-bold.ttf" },
                            new CuiRectTransformComponent { AnchorMin = $"0.25 0", AnchorMax = $"1 0.9" },
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    container.Add(new CuiPanel
                    {
                        RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "42 -52", OffsetMax = "56 -38" },
                        Image = { Material = "assets/icons/greyout.mat", Color = "0.8 0.8 0.8 0.125" },
                    }, Layer, Layer + "patrolHeliCopter");
                    container.Add(new CuiElement
                    {
                        Name = Layer + "patrolHeliCopterImage",
                        Parent = Layer + "patrolHeliCopter",
                        Components =
                        {
                            new CuiRawImageComponent { Png = GetImage("heli"), Color = Events["heli"] },
                            new CuiRectTransformComponent {AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "1.7 1.7", OffsetMax = "-1.7 -1.7"},
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    container.Add(new CuiPanel
                    {
                        RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "61 -52", OffsetMax = "75 -38" },
                        Image = { Material = "assets/icons/greyout.mat", Color = "0.8 0.8 0.8 0.125" },
                    }, Layer, Layer + "CargoShip");
                    container.Add(new CuiElement
                    {
                        Name = Layer + "CargoShipImage",
                        Parent = Layer + "CargoShip",
                        Components =
                        {
                            new CuiRawImageComponent { Png = GetImage("cargo"), Color = Events["cargo"] },
                            new CuiRectTransformComponent {AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "1.7 1.7", OffsetMax = "-1.7 -1.7"},
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    container.Add(new CuiPanel
                    {
                        RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "80 -52", OffsetMax = "95 -38" },
                        Image = { Material = "assets/icons/greyout.mat", Color = "0.8 0.8 0.8 0.125" },
                    }, Layer, Layer + "Bradley");
                    container.Add(new CuiElement
                    {
                        Parent = Layer + "Bradley",
                        Components =
                        {
                            new CuiRawImageComponent { Png = GetImage("bradley"), Color = Events["bradley"] },
                            new CuiRectTransformComponent {AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "2.5 2.5", OffsetMax = "-2.5 -2.5"},
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    CuiHelper.AddUi(player, container);
                break;
                case "openMenu":
                    DestroyUI(player);

                    container.Add(new CuiPanel
                    {
                        RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "42 -15", OffsetMax = "57 0" },
                        Image = { Material = "assets/icons/greyout.mat", Color = "0.8 0.8 0.8 0.125" },
                    }, Layer, Layer + "openMenu");
                    container.Add(new CuiElement
                    {
                        Parent = Layer + "openMenu",
                        Components =
                        {
                            new CuiTextComponent { Text = $">", Color = "1 1 1 1", Align = TextAnchor.MiddleCenter, FontSize = 12, Font = "robotocondensed-bold.ttf" },
                            new CuiRectTransformComponent { AnchorMin = $"0 0", AnchorMax = $"1 1" },
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    container.Add(new CuiButton
                    {
                        RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1" },
                        Button = { Color = "0 0 0 0", Command = "chat.say /menuOpen" },
                        Text = { Text = "" }
                    }, Layer + "openMenu");

                    CuiHelper.AddUi(player, container);
                break;
                case "time":
                    CuiHelper.DestroyUi(player, Layer + "timeServerText");
                    container.Add(new CuiElement
                    {
                        Name = Layer + "timeServerText",
                        Parent = Layer + "timeServer",
                        Components =
                        {
                            new CuiTextComponent { Text = TOD_Sky.Instance.Cycle.DateTime.ToString("HH:mm"), Color = "1 1 1 1", Align = TextAnchor.MiddleCenter, FontSize = 12, Font = "robotocondensed-bold.ttf" },
                            new CuiRectTransformComponent { AnchorMin = $"0.25 0", AnchorMax = $"1 0.9" },
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    CuiHelper.AddUi(player, container);
                break;
                case "online":
                    CuiHelper.DestroyUi(player, Layer + "playerServerText");
                    container.Add(new CuiElement
                    {
                        Name = Layer + "playerServerText",
                        Parent = Layer + "playerServer",
                        Components =
                        {
                            new CuiTextComponent { Text = $"{GetOnline()}/{ConVar.Server.maxplayers}", Color = "1 1 1 1", Align = TextAnchor.MiddleCenter, FontSize = 12, Font = "robotocondensed-bold.ttf" },
                            new CuiRectTransformComponent { AnchorMin = $"0.22 0", AnchorMax = $"1 0.9" },
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    CuiHelper.AddUi(player, container);
                break;
                case "heli":
                    CuiHelper.DestroyUi(player, Layer + "patrolHeliCopterImage");
                    container.Add(new CuiElement
                    {
                        Name = Layer + "patrolHeliCopterImage",
                        Parent = Layer + "patrolHeliCopter",
                        Components =
                        {
                            new CuiRawImageComponent { Png = GetImage("heli"), Color = Events["heli"] },
                            new CuiRectTransformComponent {AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "1.7 1.7", OffsetMax = "-1.7 -1.7"},
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    CuiHelper.AddUi(player, container);
                break;
                case "cargo":
                    CuiHelper.DestroyUi(player, Layer + "CargoShipImage");
                    player.ChatMessage("хуй");
                    container.Add(new CuiElement
                    {
                        Name = Layer + "CargoShipImage",
                        Parent = Layer + "CargoShip",
                        Components =
                        {
                            new CuiRawImageComponent { Png = GetImage("cargo"), Color = Events["cargo"] },
                            new CuiRectTransformComponent {AnchorMin = "0 0", AnchorMax = "1 1", OffsetMin = "1.7 1.7", OffsetMax = "-1.7 -1.7"},
                            new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                        }
                    });
                    CuiHelper.AddUi(player, container);
                break;
            }
        }

        private void ButtonsUI(BasePlayer player)
        {
            CuiHelper.DestroyUi(player, Layer + ".Menu.Opened");
			var container = new CuiElementContainer();
			var ySwitch = -57;

			container.Add(new CuiPanel
			{
				RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1" },
				Image = { Color = "0 0 0 0" }
			}, Layer, Layer + ".Menu.Opened");

            foreach (var button in config._SettingsMenu)
			{
				container.Add(new CuiPanel
				{
					RectTransform =
					{
						AnchorMin = "0 1", AnchorMax = "0 1", OffsetMin = $"4 {ySwitch -15}",
						OffsetMax = $"{92 + 5} {ySwitch}"
					},
					Image = { Material = "assets/icons/greyout.mat", Color = "0.8 0.8 0.8 0.125" }
				}, Layer + ".Menu.Opened", Layer + $".Menu.Opened.{button.Key}");
                container.Add(new CuiElement
                {
                    Parent = Layer + $".Menu.Opened.{button.Key}",
                    Components =
                    {
                        new CuiTextComponent { Text = button.Key, Color = "1 1 1 1", Align = TextAnchor.MiddleCenter, FontSize = 11, Font = "robotocondensed-bold.ttf" },
                        new CuiRectTransformComponent { AnchorMin = $"0 0", AnchorMax = $"1 1" },
                        new CuiOutlineComponent{Color = "0 0 0 1", Distance = "0.4 0.4"}
                    }
                });
                container.Add(new CuiButton
                {
                    RectTransform = { AnchorMin = "0 0", AnchorMax = "1 1" },
                    Button = { Color = "0 0 0 0", Command = $"playerSendly {button.Value}" },
                    Text = { Text = "" }
                }, Layer + $".Menu.Opened.{button.Key}");
                ySwitch -= 15 + 3;
			}

			CuiHelper.AddUi(player, container);
        }
        #endregion

        #region [Func]
        private void DestroyUI(BasePlayer player)
        {
            CuiHelper.DestroyUi(player, Layer + "nameServer");
            CuiHelper.DestroyUi(player, Layer + "CloseMenu");
            CuiHelper.DestroyUi(player, Layer + "playerServer");
            CuiHelper.DestroyUi(player, Layer + "timeServer");
            CuiHelper.DestroyUi(player, Layer + "patrolHeliCopter");
            CuiHelper.DestroyUi(player, Layer + "CargoShip");
            CuiHelper.DestroyUi(player, Layer + "Bradley");
            CuiHelper.DestroyUi(player, Layer + "openMenu");
        }
        private void CmdMenu(IPlayer user, string cmd, string[] args)
		{
			var player = user?.Object as BasePlayer;
			if (player == null) return;

			if (MenuUsers.Contains(player))
			{
                DestroyUI(player);

                SupportUI(player, "openMenu");
				MenuUsers.Remove(player);
			}
			else
			{
                DestroyUI(player);

                SupportUI(player, "all");
				MenuUsers.Add(player);
			}
		}
		private void CmdMenu2(IPlayer user, string cmd, string[] args)
		{
			var player = user?.Object as BasePlayer;
			if (player == null) return;

			if (MenuUsers2.Contains(player))
			{
				CuiHelper.DestroyUi(player, Layer + ".Menu.Opened");
				MenuUsers2.Remove(player);
			}
			else
			{
				ButtonsUI(player);
				MenuUsers2.Add(player);
			}
		}
		[ConsoleCommand("playerSendly")]
		private void SendlyPlayer(ConsoleSystem.Arg args)
		{
			if (args.Player() != null)
			{
				var player = args.Player();
				var convertcmd =
					$"{args.Args[0]}  \" {string.Join(" ", args.Args.ToList().GetRange(1, args.Args.Length - 1))}\" 0";
				player.SendConsoleCommand(convertcmd);
			}
		}
		private void UpdateOnline()
		{
			foreach (var player in BasePlayer.activePlayerList)
			{
                if (MenuUsers.Contains(player))
				    SupportUI(player, "online");
			}
		}
        private int GetOnline()
		{
			return BasePlayer.activePlayerList.Count;
		}
        private readonly Dictionary<string, string> Events = new Dictionary<string, string>
        {
            ["cargo"] = "1 1 1 0.9",
            ["bradley"] = "1 1 1 0.9",
            ["heli"] = "1 1 1 0.9"
        };
        private void EntityHandle(BaseEntity entity, bool spawn)
		{
            if (entity == null) return;
            if (entity is BradleyAPC)
            {
                Events["bradley"] = spawn ? "1.00 0.84 0.52 1" : "1 1 1 0.9";
                foreach (var player in BasePlayer.activePlayerList)
                {
                    if (MenuUsers.Contains(player))
                        SupportUI(player, "bradley");
                }
            }
            if (entity is CargoShip)
            {
                Events["cargo"] = spawn ? "0.45 0.65 0.86 1" : "1 1 1 0.9";
                foreach (var player in BasePlayer.activePlayerList)
                {
                    if (MenuUsers.Contains(player))
                        SupportUI(player, "cargo");
                }
            }
            if (entity is BaseHelicopter)
            {
                Events["heli"] = spawn ? "0.97 0.62 0.62 1" : "1 1 1 0.9";
                foreach (var player in BasePlayer.activePlayerList)
                {
                    if (MenuUsers.Contains(player))
                        SupportUI(player, "heli");
                }
            }
		}
        #endregion

        #region [Config]
        private PluginConfig config;

        protected override void LoadDefaultConfig()
        {
            config = PluginConfig.DefaultConfig();
        }

        protected override void LoadConfig()
        {
            base.LoadConfig();
            config = Config.ReadObject<PluginConfig>();

            if (config.PluginVersion < Version)
                UpdateConfigValues();

            Config.WriteObject(config, true);
        }

        private void UpdateConfigValues()
        {
            PluginConfig baseConfig = PluginConfig.DefaultConfig();
            if (config.PluginVersion < Version)
            {
                config.PluginVersion = Version;
                if (Version == new VersionNumber(1, 0, 0))
                {
                    //
                }

                PrintWarning("Config checked completed!");
            }
            config.PluginVersion = Version;
        }

        protected override void SaveConfig()
        {
            Config.WriteObject(config);
        }

        private class PluginConfig
        {
            [JsonProperty("Название сервера")]
            public string ServerName;

            [JsonProperty("Настройки /MENU")]
            public Dictionary<string, string> _SettingsMenu;

            [JsonProperty("Изображения")]
            public Dictionary<string, string> _Images;

            [JsonProperty("Config version")]
            public VersionNumber PluginVersion = new VersionNumber();

            public static PluginConfig DefaultConfig()
            {
                return new PluginConfig()
                {
                    ServerName = "BOLOTO RUST MAX3",
                    _SettingsMenu = new Dictionary<string, string>()
                    {
                        ["ИНФОРМАЦИЯ"] = "chat.say /help",
                        ["ТОП"] = "chat.say /top",
                        ["ТЕЛЕПОРТ"] = "chat.say /tpmenu",
                        ["КРАФТ"] = "chat.say /craft",
                        ["СКИНЫ"] = "chat.say /skin",
                        ["БЛОКИРОВКА"] = "chat.say /block",
                        ["ПРИЦЕЛ"] = "chat.say /hair",
                        ["РЕПОРТ"] = "chat.say /report",
                        ["РУЛЕТКА"] = "chat.say /roll",
                    },
                    _Images = new Dictionary<string, string>()
                    {
                        ["https://i.imgur.com/r5WXR8C.png"] = "store",
                        ["https://imgur.com/T3IN2qz.png"] = "time",
                        ["https://i.imgur.com/dleUaul.png"] = "online",
                        ["https://i.imgur.com/8nx4pnW.png"] = "heli",
                        ["https://imgur.com/b39MBgv.png"] = "cargo",
                        ["https://imgur.com/bqB9Gkb.png"] = "bradley",
                    },
                    PluginVersion = new VersionNumber()
                };
            }
        }
        #endregion
    }
}

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