Создание amxx плагина
Статья предназначена для новичков в программировании, но что-нибудь
мыслящих (например тех, кто хотя бы сумел с первого раза поставить
amxx:)), доступным языком. Супермегакуль-программеры могут распечатать
эту статью и использовать её по назначению.
Что нам понадобится?
amxx-studio у меня версия 1.3 взять можно на amxmodx.org
(http://www.amxmodx.org/) Открыв программу amx-studio мы увидим типичный
редактор с подсветкой кода.
Это комментарий к программе.
/* Plugin generated by AMXX-Studio */
Мы можем изменить его скажем на:
/* Супер мега плагин, который ничего не делает, начинающего кулхацкера Васи Пупкина из бобруйска */
Это все информация о плагине и его авторе.
#define PLUGIN "New Plugin"
#define VERSION "1.0"
#define AUTHOR "Author"
Можем изменить скажем на:
#define PLUGIN "Pupkin Plugin"
#define VERSION "1.0"
#define AUTHOR "Bac9|"
Примечание: Здесь уже придется писать латиницей.
Это список модулей, которые мы будем использовать.
#include amxmodx>
#include amxmisc
Добавим ещё один интересный модуль cstrike. В конечном счете у нас будет:
#include amxmodx
#include amxmisc
#include cstrike
Функции модулей мы можем посмотреть на сайте amxmodx.org
(http://www.amxmodx.org/) в разделе functions
(http://www.amxmodx.org/funcwiki.php). А работу с функциями мы разберем
чуть попозже.
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
// Add your code here...
}
Эта функция рассказывает amx`y все о себе (какие команды ей надо, какие
функции они вызывают и.т.д. и.т.п.). register_plugin(PLUGIN, VERSION,
AUTHOR) эта строчка регистрирует наш плагинчик, как плагин под
названием, которое мы указали выше, версии, которую мы тоже указали выше
и с автором (не поверите), которого мы тоже указали выше.
Что же делать дальше?
Дальше мы добавим в наш плагин команду, с помощью которой мы будем вызывать функцию. Добавим в public plugin_init() {
следующую строчку:
register_concmd("amx_pupkin","vasia",ADMIN_ALL,"zapustit function vasia pupkin")
amx_pupkin - команда, если мы введем её в консоль cs, то запустится
функция под названием vasia. Чтобы запустить команду не нужно обладать
никакими правами(ADMIN_ALL), если команда должна быть доступной только
для администратора, то вместо ADMIN_ALL пишем ADMIN_KICK. zapustit
function vasia pupkin - комментарий к команде, который будет виден в
списке команд amx вызываемом по команде amx_help в консоли cs.
Теперь обработаем функцию vasia, вызываемую при вводе amx_pupkin в консоль cs.
public pupkin(id) { //Начинаем функцию взяв id игрока
client_print(id,print_chat,"Tb| 3anycTuL fyHkcuy pupkina") //Выводим сообщение в чат
} //Заканчиваем функцию
Теперь сохраняем плагин под именем pupkin в папку
cstrike/addons/amxmodx/scripting и запускаем compile.exe. После чего
забираем откомпилированый плагин(pupkin.amxx) в папке compiled и как
всегда устанавливаем его.
Что же делает этот плагин?
При вводе amx_pupkin в консоль cs он выводит нам сообщение в чат cs Tb| 3anycTuL fyHkcuy pupkina. Такой вот простой пример.
Модули amx mod`a содержат огромное количество полезных функций, список и
описание которых мы можем посмотреть тут: www.amxmodx.org Например:
cs_set_user_money(id,900) поменяет количество денег человека которого
идентифицирует id на 900$. На этом пока. Надеюсь эта статья хоть как-то
вам поможет...