Checking plugin initialization status:
C#:
// Important API to ensure smooth data retrieval - use readiness check via the API
// Generating a database takes some time, so in other APIs, null values may be possible
// To avoid this, use this API before accessing other APIs

Boolean IsReady - returns true if the plugin is fully initialized, otherwise false

// Usage example:

public Boolean IsReadyIQFakeActive()
{
    if (IQFakeActive != null && config.UseIQFakeActive)
        return IQFakeActive.Call<Boolean>("IsReady");

    return false;
}
Obtaining a list of players, fake and real:
C#:
JObject GetListPlayers() - returns a JObject with a list of fake and real players

// Requires a List class with the FakePlayer class: List<FakePlayer>

public class FakePlayer
{
    [JsonProperty("userId")]
    public String userId;
    [JsonProperty("displayName")]
    public String displayName;
    public Boolean isMuted;
}

// Example usage:
private List<FakePlayer> GetCombinedPlayerList()
{
    if (!IsReadyIQFakeActive()) return null;
    JObject jsonData = IQFakeActive.Call<JObject>("GetListPlayers");

    if (!jsonData.TryGetValue("players", out JToken playersToken)) return null;
    List<FakePlayer> playerList = playersToken.ToObject<List<FakePlayer>>();
    return playerList;
}

// IsReadyIQFakeActive() - checks if the plugin is active using the "IsReady" API and if the plugin support function is enabled
// Example IsReadyIQFakeActive
public Boolean IsReadyIQFakeActive()
{
    if (IQFakeActive != null && config.UseIQFakeActive)
        return IQFakeActive.Call<Boolean>("IsReady");
    return false;
}

Obtaining a list of only fake players:
C#:
// Similar principle to the GetListPlayers API
JObject GetOnlyListFakePlayers() - returns a JObject with a list of fake and real players
// Requires a List class with the FakePlayer class: List<FakePlayer>
// Example usage:
private List<FakePlayer> GetFakePlayerList()
{
    if (!IsReadyIQFakeActive()) return null;
    JObject jsonData = IQFakeActive.Call<JObject>("GetOnlyListFakePlayers");

    if (!jsonData.TryGetValue("players", out JToken playersToken)) return null;
    List<FakePlayer> playerList = playersToken.ToObject<List<FakePlayer>>();
    return playerList;
}

Getting online count:
C#:
Int32 GetOnline - returns the current online count, including fake and real players
Int32 GetOnlyFakeOnline - returns the current online count of fake players only

Checking if a player is fake:
C#:
Boolean IsFakeUser(String idOrName) - returns true if the player is generated by the plugin, otherwise false if the player is real

Getting the nickname of a fake player:
C#:
String GetFakeName(String userId) - returns the nickname of a fake player
// If the plugin is not fully initialized, it will return "initializePlugin"
// If the fake player with the given userid is not found, it will return "notFindedUser"

Getting the full plugin database:
C#:
JObject GetDatabase - returns a JObject with the complete plugin data
// Requires a complete database class
// The database includes:
// - All generated messages
// - All generated players
// - All generated players and real players
// - Number of fake players
// - Number of fake and real players
// - Generated chat presets (with IQChat support)
// -- Chat prefix
// -- Nickname color in chat
// -- Message color in chat
// -- Nickname size in chat
// -- Message size in chat
// Database class:
public FakeDatabase fakeDatabase = new();
public class FakeDatabase
{
    public OnlineDatabase onlineDatabase = new();
    public ChatPresetFakePlayer chatPresetFakePlayer = new();
    public List<FakePlayer> fakePlayerList = new();
    public List<FakePlayer> fakePlayerConnection = new();
    public List<FakePlayer> fakePlayerDisconnection = new();
    public List<FakePlayer> realAndFakePlayerList = new();
    public List<Messages> fakeMessageList = new();
    public class Messages
    {
        [JsonProperty("message")]
        public String message;
    }
    public class OnlineDatabase
    {
        public Int32 currentFakeOnline;
        public Int32 currentOnline;
    }
    public class FakePlayer
    {
        [JsonProperty("userId")]
        public String userId;
        [JsonProperty("displayName")]
        public String displayName;
        public Boolean isMuted;
    }
    public class ChatPresetFakePlayer
    {
        public String chatPrefix;
        public String chatColor;
        public String nickColor;
        public Int32 sizeMessage;
        public Int32 sizeNick;
    }
}

Проверка статуса инициализации плагина :
C#:
// Важное API, дабы все данные подтягивались без проблем - используйте проверку готовности по API
// генерация базы данных занимает некоторое время, поэтому в других API возможны - null
// чтобы такого не было - используйте это API перед обращением к другому API

Boolean IsReady - возвращает true, если плагин полностью инициализирован, иначе false

// Пример использования:
public Boolean IsReadyIQFakeActive()
{
    if (IQFakeActive != null && config.UseIQFakeActive)
        return IQFakeActive.Call<Boolean>("IsReady");

    return false;
}

Получение списка игроков, фейковых и настоящих :
C#:
JObject GetListPlayers() - возвращает JObject со списком фейковых и настоящих игроков

// Требуется класс List с классом FakePlayer - List<FakePlayer>
public class FakePlayer
{
    [JsonProperty("userId")]
    public String userId;
    [JsonProperty("displayName")]
    public String displayName;
    public Boolean isMuted;
}

// Пример использования:
private List<FakePlayer> GetCombinedPlayerList()
{
    if (!IsReadyIQFakeActive()) return null;
    JObject jsonData = IQFakeActive.Call<JObject>("GetListPlayers");

    if (!jsonData.TryGetValue("players", out JToken playersToken)) return null;
    List<FakePlayer> playerList = playersToken.ToObject<List<FakePlayer>>();
    return playerList;
}

// IsReadyIQFakeActive() - проверяет активен ли плагин с помощью API "IsReady" и включена ли функция поддержки плагина
// Пример IsReadyIQFakeActive
public Boolean IsReadyIQFakeActive()
{
    if (IQFakeActive != null && config.UseIQFakeActive)
        return IQFakeActive.Call<Boolean>("IsReady");
    return false;
}

Получение списка только фейковых игроков :
C#:
//Принцип аналогичен с API GetListPlayers
JObject GetOnlyListFakePlayers() - возвращает JObject со списком фейковых и настоящих игроков
//Требуется класс List с классом FakePlayer - List<FakePlayer>
//Пример использования :
private List<FakePlayer> GetFakePlayerList()
{
    if (!IsReadyIQFakeActive()) return null;
    JObject jsonData = IQFakeActive.Call<JObject>("GetOnlyListFakePlayers");
 
    if (!jsonData.TryGetValue("players", out JToken playersToken)) return null;
    List<FakePlayer> playerList = playersToken.ToObject<List<FakePlayer>>();
    return playerList;
}

Получение количество онлайна :
C#:
Int32 GetOnline - возвращает текущий онлайн, фейковые игроки и настоящие
Int32 GetOnlyFakeOnline - возвращает текущий онлайн только фейковых игроков

Проверка является ли игрок фейковым :
C#:
Boolean IsFakeUser(String idOrName) - возвращает true, если игрок сгенерирован плагином, иначе false если игрок настоящий

Получение ника фейкового игрока :
C#:
String GetFakeName(String userId) - возвращает ник фейкового игрока
//Если плагин не инициализирован полностью - вернет "initializePlugin"
//Если фейкового игрока нет с данным userid - вернет "notFindedUser"

Получение полной базы данных плагина :
C#:
JObject GetDatabase - возвращает JObject с полными данными плагина

// Потребуется полный класс базы данных
// В базу входит :
// - Все сгенерированные сообщения
// - Все сгенерированные игроки
// - Все сгенерированные игроки и настоящие игроки
// - Количество фейковых игроков
// - Количество фейковых и настоящих игроков
// - Сгенерированные пресеты для чата (С поддержкой IQChat)
// -- Префикс в чате
// -- Цвет ника в чате
// -- Цвет сообщения в чате
// -- Размер ника в чате
// -- Размер сообщения в чате

// Класс базы данных :
public FakeDatabase fakeDatabase = new();

public class FakeDatabase
{
    public OnlineDatabase onlineDatabase = new();
    public ChatPresetFakePlayer chatPresetFakePlayer = new();
    public List<FakePlayer> fakePlayerList = new();
    public List<FakePlayer> fakePlayerConnection = new();
    public List<FakePlayer> fakePlayerDisconnection = new();
    public List<FakePlayer> realAndFakePlayerList = new();
    public List<Messages> fakeMessageList = new();

    public class Messages
    {
        [JsonProperty("message")]
        public String message;
    }

    public class OnlineDatabase
    {
        public Int32 currentFakeOnline;
        public Int32 currentOnline;
    }

    public class FakePlayer
    {
        [JsonProperty("userId")]
        public String userId;
        [JsonProperty("displayName")]
        public String displayName;
        public Boolean isMuted;
    }

    public class ChatPresetFakePlayer
    {
        public String chatPrefix;
        public String chatColor;
        public String nickColor;
        public Int32 sizeMessage;
        public Int32 sizeNick;
    }
}
Назад
Сверху Снизу