Pawn з нуля? Чи реально написати власний плагін для сервера ( 1 повноцінний плагін )
Про матеріал

Ми вже навчилися писати простенький плагін, і тепер настав час зробити щось водночас складніше й простіше.
Давайте напишемо плагін, який додаватиме тег у чат за прапорцем доступу. Досить актуальний і простий плагін, а головне — БЕЗКОШТОВНО
У нас буде тег VIP для нас і наших друзів, а DOG — для тих, хто нас дістав )
Пояснення коду:
- На початку ми підключаємо два заголовкові файли —
amxmodxиamxmisc, які потрібні для роботи з плагіном. - Потім ми оголошуємо дві константи —
TAG_VIPиTAG_DOG, у яких зберігаються відповідні теги. - Далі ми реєструємо плагін і команду
/mytags, яка виводитиме список доступних тегів гравця. - У функції
cmdTagsми оголошуємо кілька локальних змінних:szTags— рядок, до якого додаватимуться доступні теги,szTag— тимчасовий буфер для отримання кожного тегу з конфіга. - За допомогою функції
GetConfigStringми отримуємо список доступних тегів із конфіга й додаємо кожен із них до рядкаszTags. - Потім ми отримуємо прапорці доступу гравця за допомогою функції
get_user_flags. - Якщо у гравця є прапорець
ADMIN_J, то ми виводимо повідомлення про це в консоль і додаємо тег VIP у чат гравця. - Аналогічно, якщо у гравця є прапорець
ADMIN_I, то ми виводимо
Не забудьте змінити прапорці й назви... Все ж таки це урок, а не просто копіпаст мого коду!!!
Напишіть про результат у коментарях і давайте для зручності трохи ускладнимо: я не люблю щоразу компілювати плагін, тож винесемо все в конфіг.
Для цього нам потрібно внести деякі зміни в плагін.
- Необхідно додати новий файл конфігурації "chatvip.cfg" до директорії "configs".
- У коді плагіна потрібно замінити жорстко закодовані значення на зчитування з файлу конфігурації.
- Для зчитування значень із файлу конфігурації потрібно використовувати функції бібліотеки "file".
- Також потрібно додати перевірку успішного зчитування значень із файлу конфігурації.
Ось який вигляд матиме оновлений код плагіна:
Після цих змін ви зможете змінювати значення змінних "tagVIP" і "tagDOG" у файлі "configs/chatvip.cfg" без потреби змінювати
Компілюємо й пробуємо. Ну як, це ж справді легко й просто! Сподіваюся, у всіх вийшло, і не забудьте про коментарі — я на вас чекаю.
Можемо ще трохи ускладнити життя нашим псам на сервері й додати звук. Я додам звук гавкання — гавкатимуть щоразу, як почнуть писати, щоб я знав, чи варто читати чат, чи ні...
Ось оновлений код плагіна, який додає тег у чат гравця, якщо той має певний прапорець доступу, і відтворює звук, коли в чаті вводять певний тег:
Оновлений файл конфігурації "configs/chatvip.cfg":
У цій версії плагіна, якщо гравець напише тег "i", то звук /cstrike/music/dog.mp3 відтворюватиметься щоразу, коли хтось напише тег "i" у чаті.






Коментарі (1)