ArrayPushString • добавя String в динамичен масив

Библиотеката съдържа 28 natives и 0 forwards и 1 stock.
Аватар
TheRedShoko
Извън линия
Модератор
Модератор
Мнения: 1016
Регистриран на: 06 Окт 2016, 07:42
Местоположение: Бургас
Се отблагодари: 5 пъти
Получена благодарност: 84 пъти

ArrayPushString • добавя String в динамичен масив

Мнение от TheRedShoko » 14 Окт 2016, 17:20

cellarray.incArrayPushString(Array:handle, const input[])

Array:handle: съхранител на динамичния масив
input[]: string, който да бъде добавен

Връща: мястото на string-а в масива.
Функцията добавя String в даден динамичен масив.

Примерен плъгин: Блокиране на писане на забранени думи.

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <amxmisc>

#define PLUGIN_NAME "CellArray Example"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "AMXX-BG.info"

new Array:szForbiddenWords

public plugin_init()
{
    register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR)
    
    szForbiddenWords = ArrayCreate(64)    //Създаваме масива
    
    register_concmd("amx_add_word", "AdminAddWord", ADMIN_BAN)
    register_clcmd("say", "CheckSay")
    register_clcmd("say_team", "CheckSay")
}

public plugin_end()
{
    ArrayDestroy(szForbiddenWords)        //Унищожаваме масива
}

public AdminAddWord(id, iLevel, iCID)
{
    if (!cmd_access(id, iLevel, iCID))
    {
        return PLUGIN_HANDLED
    }
    
    new szWord[64]
    read_argv(1, szWord, charsmax(szWord))
    
    ArrayPushString(szForbiddenWords, szWord)    // Добавяме String в масива
    
    client_print(0, print_chat, "* ADMIN added %s to the list of forbidden words!", szWord)
    
    return PLUGIN_HANDLED
}

public CheckSay(id)
{
    new szMessage[64], szArrayWord[64]
    new iArraySize = ArraySize(szForbiddenWords)    //Взимаме размера на масива
    read_args(szMessage, charsmax(szMessage))
    
    for (new i = 0; i < iArraySize; i++)
    {
        ArrayGetString(szForbiddenWords, i, szArrayWord, charsmax(szArrayWord)) //Взимаме string-а на позиция i в масива
        
        if (equali(szMessage, szArrayWord))
        {
            client_print(id, print_chat, "* The word %s is FORBIDDEN!", szArrayWord)
            
            return PLUGIN_HANDLED
        }
    }
    
    return PLUGIN_CONTINUE
} 

Обратно към “cellarray.inc”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 10 госта