[Shop] Core v2.0.19
Опубликовано: 03.01.2013, 18:15
Увеличение картинки
[Shop] Core

Версия: 1.9.0


Требование:
Любая игра на движке Source
Sourcemod 1.3 или выше
Не обязательно - Updater, чтобы плагин был всегда актуальным

Описание:
Основной плагин внутре-игрового магазина. Поддержка MySQL, SQLite

Команды в чате:
!shop или /shop или !store или /store - для открытия главного меню магазина
!inv или /inv или !inventory или /inventory - для открытия инвентаря

Админ Root:
!givecredits или /givecredits <ник> <кол-во кредитов> - Чтобы дать кредиты игроку
!takecredits или /takecredits <ник> <кол-во кредитов> - Чтобы забрать кредиты у игрока
!setcredits или /setcredits <ник> <кол-во кредитов> - Чтобы установить кредиты игроку

Команды в консоле:
sm_shop, sm_store - для открытия главного меню магазина
sm_inv, sm_inventory - для открытия инвентаря

Админ Root:
sm_givecredits <ник> <кол-во кредитов> - Чтобы дать кредиты игроку
sm_takecredits <ник> <кол-во кредитов> - Чтобы забрать кредиты у игрока
sm_setcredits <ник> <кол-во кредитов> - Чтобы установить кредиты игроку

Серверная команда 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.9.6 [04.12.13] - Надеюсь исправил баг с раздвоением аномального предмета
Исправлен баг с регистрацией предмета несколько раз
Форвард Shop_OnConnected вызывается теперь 1 раз после загрузки Shop

Версия 1.9.7 [06.12.13] - Исправлен баг, когда пункт "Дополнительные функции" не отображался в главном меню 

Версия 1.9.8 [10.02.14] - Добавлен натив Shop_ShowCategory

Версия 1.9.9 [16.02.14] - Добавлен форвард Shop_OnItemLoaded. Вызывается при загрузке предмета игроку из базы данных
Добавлен форвард Shop_OnItemEquipped. Вызывается, когда игрок включает предмет
Добавлен форвард Shop_OnItemDequipped. Вызывается, когда игрок выключает предмет
Добавлен форвард Shop_OnItemElapsed. Глобальный вызов, когда предмет истек
Добавлен форвард Shop_OnCreditsReceive. Вызывается, когда игрок получает кредиты
Добавлен форвард Shop_OnItemBuy. Вызывается перед тем, как игрок покупает предмет
Добавлен натив Shop_GetClientItemDuration. Для получения времени предмета игрока
Добавлен натив Shop_SetClientItemDuration. Для установки длительности предмета игроку
Добавлен натив Shop_GetClientItemPrice. Для получения абсолютной цены продажи предмет (У тех, у кого выставляется длительность предмета)
Испавлен натив Shop_GiveCredits, чтобы возвращал кредиты, которые были выданы игроку

Версия 1.9.10 [16.02.14] - Вернул кнопку Назад в меню покупок
Исправлен натив Shop_GetClientItemPrice, который всегда возвращал 0

Версия 2.0.0 [20.03.14] - Переписание плагина
Изменение структуры базы данных
Изменение всех настроек. Настройки из settings.txt перевелись в convars
Изменение всей библиотеки
Исправление многочисленных багов. Теперь доступ к предметам происходит по их иденту
Новый метод передачи кредитов и предметов
Добавлено несколько больше форвардов
Добавлена возможность превью предмета
Добавлен тип предмета BuyOnly. Который не попадает в инвентарь при покупке, а вызывает функцию покупки для модуля.
Возможность указать 2 метода отсчета. По использованию (по умолчанию) и реальное время.
Регистрация категории происходит моментально
Переход с ветки 1.х до 2.х происходит автоматически
и множество других изменений которые могли быть не внесены в этот список

Версия 2.0.1 [22.03.14] - Исправлена ошибка при выборе категории
Исправлено неверное показание количества предметов в категории покупок
Исправлено передача уникального названия предмета в функции

Версия 2.0.2 [23.03.14] - Добавлен натив Shop_ShowFunctionsMenu
Исправлена библиотека

Версия 2.0.3 [23.03.14] - Исправлен вывод предметов в категории регистрированные несколькими плагинами

Версия 2.0.4 [23.03.14] - Вызов форварда Shop_OnItemToggled при истечении времени предмета
Исправлено многочисленный вызов Shop_OnItemToggled при включении предмета

Версия 2.0.5 [23.03.14] - Исправлена работа с MySQL

Версия 2.0.6 [23.03.14] - Исправлено бесконечное время действия предметов, истекала при покупке (Метод отсчета - Реальный)
Исправлена структура keyvalues

Версия 2.0.7 [24.03.14] - Добавлена переменная sm_shop_start_credits и sm_advenced_shop_version

Версия 2.0.8 [24.03.14] - Исправлено не запускавшийся таймер для предметов типа None

Версия 2.0.9 [29.03.14] - Исправлена ошибка с таймерами

Версия 2.0.10 [30.03.14] - Окончательное решение ошибки с таймером
Исправлено проблема с ToggleCategoryOff

Версия 2.0.11 [31.03.14] - Исправлена проблема с предметами Item_Finite
Добавлены нативы Shop_IsAdmin и Shop_ShowAdminMenu

Версия 2.0.12 [05.04.14] - Небольшой фикс
Добавлены нативы Shop_AddToAdminMenu и Shop_RemoveFromAdminMenu
Немного поправлена библиотека

Версия 2.0.13 [07.04.14] - Исправлен натив Shop_GetClientCredits, ничего не возвращал при вызове
Исправлена функция OnItemShouldDisplay

Версия 2.0.14 [11.04.14] - Исправлена ошибка с испытанием удачи

Версия 2.0.15 [14.04.14] - Исправлена ошибка с нативом Shop_SetItemSellPrice

Версия 2.0.16 [18.04.14] - Исправлена баг с комиссией при передачи кредитов
Добавлен натив Shop_SetClientItemTimeleft

Версия 2.0.17 [19.04.14] - Убрано восстановление полной продаваемой цены при уменьшении длительности предмета

Версия 2.0.18 [22.04.14] - Исправлен баг с ценой б/у
Исправлен баг с информацией о полной длительности предмета
Добавлен забытый натив в библиотеку Shop_GetItemCategoryId

Версия 2.0.19 [25.04.14] - Исправлен баг с передачей кредитов больше, чем имеется

Установка:
1) Распаковать архив в папку sourcemod
2) Настроить файлы настроек в файле sourcemod/configs/shop/settings.txt - Если требуется
3) Установить модули (см. пункт Модули ниже)

Заметка:
Преимущество подключение к БД имеет следующую последовательность:
1) Настройки подключения к БД с sourcemod файла databases.cfg(Вкладка "shop")
2) Если пункт 1 не прошел, тогда используется SQLite подключение к базе данных shop
3) Если ни один пункт не прошел валидность, тогда используется SQLite подключение к базе данных shop

Настройки:
Не обязательно: Чтобы добавить пункт "Информация" в главное меню, создайте файл sourcemod/configs/shop_info.txt с содержимым, которое будет выведено в меню при выборе пункта. К примеру:
Цитата:
Строка 1
Строка 2
Строка 3

Модули:
[Shop] Money Distributor - Раздача кредитов за пребывание в игре
[Shop] Medkit - Аптечка
[Shop] Trails - Трейлы за игроками
[Shop] Paintball - Пейнтбол
[Shop] Speed - Способность-Скорость
[Shop] Skins - Добавляет возможность покупать скины в магазине
[Shop] Equipments - Шапки, маски, очки
[Shop] Ball - Выдача кредитов за прохождение карт
[Shop] Nades Модели гранат

Источник
Категория: Плагины sourcemod | Добавил: root Просмотров: 25838 | Загрузок: 2538 | Комментарии: 23 | Рейтинг: 5.0/103
Скачивать и комментировать могут только зарегистрированные пользователи.

Регистрация или Вход

  1. Комментарии ВКонтакте
  2. Комментарии на сайте
Всего комментариев: 23
BalthazarBlade написал(а) 04.11.2014, 21:00
0   Спам
мне не даются кредиты что делать ?
_Doc_8265 написал(а) 22.09.2014, 20:28
0   Спам
kj[bbbbbbbbbbbbbbbb
zhekazzzz написал(а) 25.12.2013, 16:23
0   Спам
wall
zhekazzzz написал(а) 25.12.2013, 16:22
0   Спам
А есть шоп получше этого?
PROTTON написал(а) 25.11.2013, 16:12
0   Спам
а где ссылка на скачку файла?
wall
Shihaleev написал(а) 10.04.2013, 12:29
0   Спам
У меня такой вопрос куда и как добавлять треилы, аптечку и т. д.
pro100kirik написал(а) 03.03.2013, 19:33
0   Спам
пе***ц полный
dddd написал(а) 24.02.2013, 14:14
0   Спам
Админ а почему у меня вылетает когда я какой нибудь трейл беру?
Siegklas написал(а) 16.01.2013, 15:38
0   Спам
я так всё сделал токда где моя ошибка админ???
Vladon написал(а) 16.01.2013, 15:35
0   Спам
Siegklas  shop_trails.smx надо кидать в addons/sourcemod/plugins
Siegklas написал(а) 16.01.2013, 15:19
0   Спам
А вот файл shop_trails.smx куда кидать?
root написал(а) 16.01.2013, 15:15
0   Спам
Siegklas
ищи ошибку у себя
root написал(а) 16.01.2013, 15:15
0   Спам
Vladon
шляп нету sad
Siegklas написал(а) 16.01.2013, 13:48
0   Спам
Админ, у меня !shop работает но трейлов в магазине нету
Vladon написал(а) 15.01.2013, 22:36
0   Спам
Админ а там можно поставить Шляппы а то вроде их там нету!!!!
Siegklas написал(а) 15.01.2013, 19:29
0   Спам
Админ помочь можешь?
Siegklas написал(а) 15.01.2013, 17:51
0   Спам
ещё ессли пишешь /shop вот так в чате команду не видно и не чё не открывается
Siegklas написал(а) 15.01.2013, 17:49
0   Спам
я всё уже делал реклама есть а магаз не отткрывается
Vladon написал(а) 15.01.2013, 17:45
+1   Спам
а модули тоже надо туда сувать вместе с плагином?
Siegklas написал(а) 15.01.2013, 17:20
0   Спам
Админ а реклама есть но магаз не открывается и креды даются
Vladon написал(а) 15.01.2013, 17:00
-3   Спам
а что такое MySQL и SQLite??
Siegklas написал(а) 15.01.2013, 16:55
0   Спам
А пишет вы креды получили и всё такое
Siegklas написал(а) 15.01.2013, 16:24
+1   Спам
А всё постввил но когда !shop или !store ввожу не чего не появляется.А при выдаче кредитов вылазит информация о магизине игрока не загружена!