Плагин: [Shop]Core
Версия: v1.9.5
Описание:
Основной плагин внутри-игрового магазина. Поддержка MySQL, SQLite
Требование:
- Любая игра на движке Source
- Sourcemod 1.3 или выше
- Не обязательно - Updater, чтобы плагин был всегда актуальным
Команды плагина:
Команды в чате:
!shop или /shop или !store или /store - для открытия главного меню магазина
!inv или /inv или !inventory или /inventory - для открытия инвентаря
Админс флагом Root (z):
!givecredits или /givecredits "ник" "кол-во кредитов" - Чтобы дать кредиты игроку
!takecredits или /takecredits "ник" "кол-во кредитов" - Чтобы забрать кредиты у игрока
!setcredits или /setcredits "ник" "кол-во кредитов" - Чтобы установить кредиты игроку
---------------
Команды в консоле:
sm_shop, sm_store - для открытия главного меню магазина
sm_inv, sm_inventory - для открытия инвентаря
Админ с флагом Root (z):
sm_givecredits "ник" "кол-во кредитов" - Чтобы дать кредиты игроку
sm_takecredits "ник" "кол-во кредитов" - Чтобы забрать кредиты у игрока
sm_setcredits "ник" "кол-во кредитов" - Чтобы установить кредиты игроку
sm_shop_dump - Для вывода информации о предметах в файл shop.dump
shop_save - Для сохранения инвентаря игроков
Серверная команда shop_reload_settings для перезагрузки настроек
История изменений:
Код
[13.12.12] - Начало создания плагина
Версия 1.0 [15.12.12] - Первый выход плагина
Версия 1.1 [17.12.12] - Увеличена длина буфера и мелкие неисправности
Версия 1.2 [18.12.12] - Добавлена возможность продавать предметы. Некоторые исправления
Версия 1.3 [19.12.12] - Значительная оптимизация на базу данных. Исправление ошибок
Версия 1.3.1 [19.12.12] - Добавлена поддержка для поздней загрузке плагина
Версия 1.4 [20.12.12] - Значительная оптимизация. Сохранение
включенных вещей. Подкорректирована поддержка поздней загрузки.
Расширение библиотеки.
Версия 1.5 [21.12.12] - Устранены утечки памяти. Библиотека изменена и расширена (Требуется обновить модули)
Версия 1.6 [22.12.12] - Устранены утечки памяти. Библиотека изменена и расширена. Добавлены команды takecredits и setcredits
Версия 1.7 [23.12.12] - Изменена библиотека. Добавлены нативы.
Добавлены забытые нативы UseItem и UseItemId. Возможность вывести в меню
дополнительную информацию
Версия 1.7.1 [24.12.12] - Улучшены последние нативы для удобной работы
Версия 1.7.2 [26.12.12] - Исправлена одна маленькая ошибка, вводящая в заблуждение модуль Trails
Версия 1.8 [02.01.13] - Большие изменения в плагине. Изменена
библиотека. Добавлены нативы. Исправлены все возможные ошибки. Добавлена
возможность мульти-язычного перевода.
Версия 1.8.1 [02.01.13] - Добавлен multi-targets в командах
Версия 1.8.2 [03.01.13] - Добавлен вывод кол-во предметов категории в
покупке. Поправлен неверный перевод, когда выводилось "Кол-во" вместо
"Цена"
Версия 1.8.3 [03.01.13] - Исправлен баг, который выдавал покупки одного игрока всем
Версия 1.8.4 [04.01.13] - Добавил бэкап предметов игроков, у которых
покупки не были занесены в базу по причине отсутствия соединения
Версия 1.8.5 [05.01.13] - Теперь UnregisterMe и RemoveItemFromCategory
функционируют полностью и утечка памяти (хоть и очень редкая, при
выгрузке модуля) устранена. Поправил библиотеку. Исправил натив
SetItemSellPrice (выставлял покупаемую цену). Добавил GiveItem и
SellItem натив и немного изменил натив SetItemSellPrice
Версия 1.8.6 [03.03.13] - Выведены все возможные настройки в папку "shop".
Добавлен иммунитет админов.
Добавлен натив Shop_ToggleCategoryOff.
Добавлен натив Shop_IsAdmin.
Добавлены несколько форвардов
Добавлен в меню пункт "Панель Администратора" с возможностью редактирования каждого клиента на сервере.
Добавлена поддержка последнего обновления CS:GO.
Добавлены ещё 2 пункта в меню (Передача кредитов с комиссией и Испытать удачу)
Добавлена новая команда для добавления игрока в базу данных.
Добавлены дополнительные проверки функции.
Добавлены расширенные настройки.
Исправлена ошибка с нативом Shop_UnregisterMe. (Рекомендуется обновить модули)
Исправлены некоторые ошибки в коде и в документации.
Убрана требуемость натива "GetUserMessageType" (Для sourcemod ниже версии 1.5.0)
Значительные исправления багов.
Изменены данные о включенных предметах игроков. (Рекомендуется удалить файл "data/shop.txt")
Папку Shop с файлами настроек иметь не обязательно!
Версия 1.8.7 [03.03.13] - Исправлен баг с нативами Shop_UseItem и Shop_UseItemId
Версия 1.8.8 [03.03.13] - Исправлен баг с файлом database.cfg и если отсутствуют конфигурации базы данных
Версия 1.9.0 [11.08.13] - Добавлено множество функции такие как: Описание категории и предметов;
Возможность мультиперевода предметов;
Возможность передавать предметы от игрока игроку;
Длительность предмета;
Доступность предмета определенной команде;
Добавлено в настройки параметр Database Prefix, где указывается префикс баз данных
Добавлено
в настройки параметр Validate, для включения или отключения ожидания
проверки SteamID на кражу аккаунта Steam. Работает если
"SteamAuthStringValidation" установлен на "yes" в "configs/core.cfg"
Добавлено в настройки параметр Item Transfer, для включения или отключения возможности игрокам передавать предметы
Добавлено в настройки параметр Item Transfer Credits, цена передачи предмета
Изменено оформление меню
Изменена библиотека, теперь AddItemToCategory разделена на 3 натива:
Shop_StartItem;
Shop_SetItemInfo;
Shop_SetItemCallbacks;
Можно устанавливать дополнительную информацию о предмете с помощью:
Shop_SetItemCustomInfo;
Shop_SetItemCustomInfoFloat;
Shop_SetItemCustomInfoString;
И заканчивать устанавливать параметры предмета нужно с помощью: Shop_EndItem
Все параметры устанавливаются только после Shop_StartItem и обязательно должны заканчиваться с помощью Shop_EndItem.
Добавлены нативы для получения дополнительной информации о предмете:
Shop_GetItemCustomInfo;
Shop_GetItemCustomInfoFloat;
Shop_GetItemCustomInfoString;
Добавлены нативы для добавления функции в меню:
Shop_AddToFunctionsMenu
Shop_RemoveFromFunctionsMenu
Shop_AddToAdminMenu
Shop_RemoveFromAdminMenu
Нативы для открытия меню:
Shop_ShowMainMenu
Shop_ShowInventory
Shop_ShowFunctions
Shop_ShowAdminMenu
Нативы для получения или установки длительности предмета:
Shop_GetItemDuration
Shop_SetItemDuration
Добавлены форварды:
Shop_OnItemStarted
Shop_OnMenuTitle
Shop_OnItemDisplay
Shop_OnItemTransfer
Shop_GetDatabasePrefix
Версия 1.9.1 [12.08.13] - Исправлен баг с предметами типа Item_Finite,
позволяя предметам быть использованы бесконечное кол-во раз
Версия 1.9.2 [16.08.13] - Исправлен баг с параметром Luck Credits заставляя его быть минимум 1
Версия 1.9.3 [26.08.13] - Исправлен баг с параметром Credits Tranfser. Не выключал возможность передавать кредиты
Версия 1.9.4 [05.09.13] - Исправлен баг с параметром Credits Tranfser. Не выключал возможность передавать кредиты
Версия 1.9.4 [05.09.13] - Исправлен баг с параметром Item Transfer Credits. Не выключал возможность передавать кредиты
Версия 1.9.5 [27.09.13] - Добавлена команда sm_shop_dump. Для вывода информации о предметах в виде KeyValues
Добавлена команда shop_save, чтобы сохранить инвентарь не выходя с сервера или не перезагружая карту.
Цена продажа теперь не может быть выше чем цена покупки.
Некоторые исправления
Установка:
1) Распаковать архив в папку sourcemod
2) Настроить файлы настроек в папке sourcemod/configs/shop - Если таково требуется
3) Установить модули (см. пункт Модули ниже)
Заметка:
Преимущество подключение к БД имеет следующую последовательность:
1) Настройки подключения к БД с sourcemod файла databases.cfg
2) Если пункт 1 не прошел, тогда за настройку возьмет файл sourcemod/configs/shop/database.cfg
3) Если ни один пункт не прошел валидность, тогда используется SQLite подключение к базе данных shop
Настройки:
Не обязательно: Чтобы добавить пункт "Информация" в главное меню,
создайте файл sourcemod/configs/shop/shop_info.txt с содержимым, которое
будет выведено в меню при выборе пункта. К примеру:
Цитата
Строка 1
Строка 2
Строка 3
Модули: (дополнения к магазину)
[Shop] Speed v2.0.0 - дает способность быстро передвигаться
[Shop] Nades v1.0.0 - дает возможность изменить модели гранат
[Shop] Trails v2.0.1 - трейлы (полосы) за игроками
[Shop] Paintball v2.0.1 - пейнтбол
[Shop] Ball v1.1 - подарки с кредитами
[Shop] Equipments v2.0.0 - добавляет шапки, маски, очки
[Shop] Skins v2.0.0 - скины
[Shop] Medkit v2.0.1 - аптечка
[Shop] Money Distributor v1.3.2 - раздача кредитов за пребывание в игре.