Создание 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$. На этом пока. Надеюсь эта статья хоть как-то вам поможет...