Преимущества:
где:
где:
- Асинхронные функции
- Поддержка SQLite и MySQL
- Автоматическое сохранение и установка игроку языка
C-подобный:
using ClientPrefsAPI;
<My plugin class>: BasePlugin
{
<...>
private bool bClientPrefsApiReady = false;
private IClientPrefsApi? _CP_api;
public override void Load(bool hotReload)
{
<...>
_CP_api = IClientPrefsApi.Capability.Get();
if (_CP_api != null) bClientPrefsApiReady = true;
<...>
}
<...>
}
C-подобный:
public async void MyExampleFuncSet(CCSPlayerController? player)
{
<...>
if(bClientPrefsApiReady)
{
<...>
await _CP_api.SetClientCookie(player.SteamID.ToString(), <sMyCookieName>, <sMyCookieValue>);
<...>
}
<...>
}
- Функция должна быть асинхронной (используйте async/await)
- Первый параметр строковый и содержит SteamID игрока
- Второй параметр строковый и содержит имя кука
- Третий параметр строковый и содержит значение кука
- True, если введённые данные валидны и соединение с базой данных установлено
- False, в других случаях
C-подобный:
public async void MyExampleFuncGet(CCSPlayerController? player)
{
<...>
if(bClientPrefsApiReady)
{
<...>
string sValue = await _CP_api.GetClientCookie(player.SteamID.ToString(), <sMyCookieName>);
<...>
}
<...>
}
- Функция должна быть асинхронной (используйте async/await)
- Первый параметр строковый и содержит SteamID игрока
- Второй параметр строковый и содержит имя кука
- Строка(string) если введённые данные валидны и соединение с базой данных установлено
- null в других случаях
- Требования
-
- CounterStrikeSharp
- MySqlConnector (2.3.7)
- System.Data.SQLite.Core (только 1.0.117; 1.0.118 не работает)
- System.Text.Json (8.0.3)
- Установка
-
- Скомпилировать или скопировать ClientPrefsApi в папку counterstrikesharp/shared/ClientPrefsApi
- Скомпилировать или скопировать ClientPrefs в папку counterstrikesharp/plugins/ClientPrefs
- Скопировать и настроить файл конфигурации db_config.json в папку counterstrikesharp/plugins/ClientPrefs
- Установить или скопировать DLL из требований (MySqlConnector.dll, SQLite.Interop.dll, System.Data.SQLite.dll, System.Text.Json.dll) в папку counterstrikesharp/plugins/ClientPrefs
- Перезапустить сервер