Опубліковано 9 липня9 лип Адміністратор Store Плагін магазину, розроблений для покращення вашого ігрового процесу, забезпечуючи динамічну систему кредитів, яка дозволяє гравцям купувати необхідні предмети безпосередньо в магазині.📦 Встановлення1) ПередумовиЦей плагін вимагає такої залежності:➡ CS2MenuManagerMake sure to install this dependency before proceeding.2) Завантажте плагінЗавантажте останню версію за посиланням:https://github.com/schwarper/cs2-store/releases3) Налаштуйте параметри плагінаПісля встановлення:Перейменуйте файли конфігурації в:addons/counterstrikesharp/configs/plugins/cs2-store/на такі:cs2-store.json→ Визначте тут доступні товари магазину.config.toml→ Налаштуйте параметри плагіна та бази даних.4) Завантаження/перезавантаження плагінаЩоб активувати:Перезавантажте серверАБОВиконайте ці команди в консолі сервера:css_plugins load cs2-store(Завантажити плагін)css_plugins reload Store(Перезавантажити після змін)🕸️ Приклад APIДайте гравцеві предмет або кредитиpublic class TestModule : BasePlugin{ public override string ModuleName => "Test Module"; public override string ModuleVersion => "0.0.1"; private IStoreApi? _storeApi; public override void OnAllPluginsLoaded(bool hotReload) { _storeApi = IStoreApi.Capability.Get(); } public void GivePlayerCredits(CCSPlayerController player, int credits) { _storeApi?.GivePlayerCredits(player, credits); } public bool GivePlayerItem(CCSPlayerController player, string uniqueId) { // Checks if item is exist. if (_storeApi?.GetItem(uniqueId) is not { } item) return false; // Checks if player has already this item if (_storeApi.Item_PlayerHas(player, item["type"], uniqueId, ignoreVip: false)) return false; // Give item _storeApi.Item_Give(player, item); return true; }}Додати модуль//Module type[StoreItemType("test")]//We use IItemModulepublic class TestModule : BasePlugin, IItemModule{ public override string ModuleName => "Test Module"; public override string ModuleVersion => "0.0.1"; // You can also use this way. // However, we won't use _storeApi anywhere for this example. //private IStoreApi? _storeApi; public override void OnAllPluginsLoaded(bool hotReload) { // You need to use assembly here. IStoreApi.Capability.Get()?.RegisterModules(Assembly.GetExecutingAssembly()); //_storeApi = IStoreApi.Capability.Get(); //_storeApi?.RegisterModules(Test.Assembly); } // ============================ // IItemModule dependencies // ============================ // Sets if item is equipable public bool Equipable => false; // Sets if player has to be alive/dead to purchase // True => alive only // False => dead only // Null => everyone can purchase public bool? RequiresAlive => null; // You can use this execute as OnAllPluginsLoaded. public void OnPluginStart() { Console.WriteLine($"Test OnPluginStart"); } public void OnMapStart() { } public void OnServerPrecacheResources(ResourceManifest manifest) { } // If you set false, they cannot equip / unequip, if true, they can. public bool OnEquip(CCSPlayerController player, Dictionary<string, string> item) { return true; } public bool OnUnequip(CCSPlayerController player, Dictionary<string, string> item, bool update) { return true; }} Інформація Додав Ciko Додано 09.07.26 Категорія Плагіна Перегляд файла
Приєднуйтесь до обговорення
Ви можете написати зараз та зареєструватися пізніше. Якщо у вас є обліковий запис, авторизуйтесь, щоб опублікувати від імені свого облікового запису.