Core: различия между версиями

Материал из HLDM Wiki
Перейти к навигации Перейти к поиску
м (Откат правок 78.85.26.105 (обсуждение) к версии 178.178.30.132)
(amxmodx.inc)
Строка 16: Строка 16:
 
  get_user_name(id, name, charsmax(name))  
 
  get_user_name(id, name, charsmax(name))  
 
  client_print(id, print_chat, "Your name is: %s", 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 ===
 
 
Печатает сообщение в консоль сервера
 
Печатает сообщение в консоль сервера
  

Версия 23:16, 16 ноября 2012

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[] )