Core

Материал из HLDM Wiki
Перейти к навигации Перейти к поиску

amxmodx.inc

get_user_name

Функция получает имя игрока

get_user_name ( index, name[], len )

index - id игрока от 1 до 32

name[] - переменная в которую будет записываться имя

len - длина

Пример

new name[32] 
get_user_name(id, name, charsmax(name)) 
client_print(id, print_chat, "Your name is: %s", name)

get_concmdsnum

Функция получает количество зарегистрированных консольных команд Тип функции Native

get_concmdsnum(flag,id = -1)

flag,id = -1 - Переменная с флагами определенного игрока или -1 (все флаги) Функция возвращает количество зарегистрированных консольных команд в зависимости от флагов игрока.


get_cvar_pointer

Функция получает id квара по его имени. Лучше все таки его записывать на этапе регистрации.

get_cvar_pointer(const cvar[])

const cvar[] - Значение квара

set_pcvar_string

Функция изменяет значения квара (работает со строками).

set_pcvar_string(pcvar, const string[])

pcvar - id квара const string[] - Новое значение квара

Пример

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "[amxmodx.inc] set_pcvar_string"
#define VERSION "1.0"
#define AUTHOR "Admin"

new pcvar

public plugin_init() {
   register_plugin(PLUGIN, VERSION, AUTHOR)
    
   //Получение id квара
   pcvar = register_cvar("test_pcvar","Mega Text")
    
   //Массив для получаемого значения
   new string[32]
   //Получаем значение квара
   get_pcvar_string(pcvar,string,31)
    
   //Вывод в консоль севрера полученого значения    
   server_print("^n Pcvar:%s ^n",string)
    
   register_concmd("set_cvar","set_cvar")
    
}

public set_cvar(){
     
   set_pcvar_string(pcvar,"New Mega Text")

server_print

Печатает сообщение в консоль сервера

server_print ( const message[], [ ... ] )

string.inc

format

Редактирует строки и записывает их в массив

format ( output[], len, const format[], ... )

output[] - Массив куда помещаем наше сообщение (строку)

len - Размер массива

const format[] - Сообщения с подстановкой массивов

... - Массивы для подстановки.

Пример:

new dest[21] 
format(dest, 20, "Hello %s. You are %d years old", "Tom", 17) 
//Получится "Hello Tom. You are 1" Потому что максимальная длина 20 символов 

strtok

Делит строку на 2 строки по указанному символу

strtok ( const text[], Left[], leftLen, Right[], rightLen, token=' ', trimSpaces=0 )

const text[] - Массив или текст для обработки.

Left[] - Массив для записи левой части текста.

leftLen - Длина массива левой части.

Right[] - Массив для записи правой части текста.

rightLen - Длина массива правой части.

token=' ' - Символ до которого отсекается левая часть

trimSpaces=0 - Если поставить 1, то разделителем будет так же первый найденный пробел.

ucfirst

Делает первый символ строки в верхнем регистре

ucfirst ( string[] )