Gag System [API] v1.1

Одобрените от нас плъгини. Моля, докладвайте ако забележите бъг с някой от плъгините в този раздел.
Аватар
TheRedShoko
Извън линия
Модератор
Модератор
Мнения: 1016
Регистриран на: 06 Окт 2016, 07:42
Местоположение: Бургас
Се отблагодари: 5 пъти
Получена благодарност: 84 пъти

Gag System [API] v1.1

Мнение от TheRedShoko » 12 Дек 2017, 11:11

Име на плъгина: Gag System
Автор: TheRedShoko
Версия: 1.1

Описание: Плъгинът представлява Gag система, която забранява на даден играч да пише в чата. Има доста такива онлайн, но скоро отворих кода на така известната система на Kostov, която се оказа с леко омазан код. Реших да пусна една моя такава, която да бъде подобна на неговата, но с оправени няколко бъга и променен дизайн.
Модули нужни за правилното функциониране на плъгина:
  • fakemeta
  • regex
  • nvault

Cvars:
gagsystem_showhud - включва/изключва hud съобщенията (по подразбиране: "1")
gagsystem_printexpired - включва/изключва съобщенията за изтекъл гаг (по подразбиране: "1")
Под AMXX 1.8.2 изисква смяна на мапа, за да бъдат активирани!!!

Commands:
  • amx_gag <nick | #id | ip> <minutes> <reason> - гагва играч по даден nick/userid/ip за дадени минути (ако бъде подадено 0 ще е завинаги) с дадена причина.
  • amx_ungag <nick | #id | ip> - премахва гага на играч с даден nick/userid/ip.
  • amx_gagmenu - отваря меню с играчи, от където може да слагате/премахвате гаг
  • amx_cleangags - изтрива всички направени до момента гагове

Change log:
v0.1 ALPHA - first release
v0.2 ALPHA - added gag menu, fixed double gag bug.

v1.0:
- official release
- added block name change while gagged
- added amx_cleangags command
- fixed 1.8.2 compile time errors
- added hud messages that can be disabled by cvar gagsystem_showhud
- added messages on gag expire that can be disabled by cvar gagsystem_printexpired (on 1.8.2 when enabled by cvar it requires map change)
- added sound on gag
- added define to disable logging
- blocked microphone usage while gagged
v1.1
- added API for the plugin

Инсталация на плъгина:
1. Компилирате локално плъгина и инсталирате както всеки друг.
[/ht]
Използване на API
Прикачил съм API библиотека с natives и forwards, които биха могли да помогнат при разработка на други плъгини. В архива при inc файла съм добавил unit tests, които са използвани за изпробване на правилното функциониране на natives. От тях можете да видите примери как се използват natives на плъгина.
Настройки на плъгина:
- Ако искате да изключите log-ването на gags/ungags трябва да добавите // пред #define LOG_GAGS
- Ако искате да добавите/премахнете това се случва от new const g_GagTimes[][GagTimeData] =. В бъдеще ще бъде добавено през ini файл или нещо подобно.
- Ако искате да промените префикса на чат съобщенията, това се прави от new const g_szChatPrefix[] = "[GagSystem]";.
- Името на log файла можете да промените от new const g_szLogFile[] = "addons/amxmodx/logs/gag_system.log";

!-- ВАЖНО --!
#define IP_PATTERN "([0-9]+.*[1-9][0-9]+.*[0-9]+.*[0-9])" НЕ ТРЯБВА ДА СЕ ПИПА В ПРОТИВЕН СЛУЧАЙ GAG И UNGAG КОМАНДИТЕ НЯМА ДА РАБОТЯТ.

Снимки:

Гаг меню:
Screenshot_2.png
Screenshot_2.png (59.67 KiB) Преглеждано 12606 пъти
Screenshot_2.png
Screenshot_2.png (59.67 KiB) Преглеждано 12606 пъти
Въвеждане на причина за гаг:
Screenshot_3.png
Screenshot_3.png (19.12 KiB) Преглеждано 12606 пъти
Screenshot_3.png
Screenshot_3.png (19.12 KiB) Преглеждано 12606 пъти
Hud съобщение при GAG:
Screenshot_4.png
Screenshot_4.png (68.13 KiB) Преглеждано 12606 пъти
Screenshot_4.png
Screenshot_4.png (68.13 KiB) Преглеждано 12606 пъти
Чат съобщение, пак при GAG:
Screenshot_5.png
Screenshot_5.png (49.51 KiB) Преглеждано 12606 пъти
Screenshot_5.png
Screenshot_5.png (49.51 KiB) Преглеждано 12606 пъти
Hud съобщение при ungag:
Screenshot_6.png
Screenshot_6.png (46.62 KiB) Преглеждано 12606 пъти
Screenshot_6.png
Screenshot_6.png (46.62 KiB) Преглеждано 12606 пъти
Чат съобщение при ungag:
Screenshot_7.png
Screenshot_7.png (39.45 KiB) Преглеждано 12606 пъти
Screenshot_7.png
Screenshot_7.png (39.45 KiB) Преглеждано 12606 пъти
За да компилирате ще ви трябва библиотеката WPMGPrintChatColor, която може да намерите тук

Тук може да видите всички сървъри, които използват плъгина.
Тук можете да видите всички функции и forwards, които включва API-то и тяхното описание.

Последна версия:
gag_system.sma
v1.1
(19.6 KiB) Свалено 2055 пъти
gag_system.sma
v1.1
(19.6 KiB) Свалено 2055 пъти
Gag system API.zip
(1.63 KiB) Свалено 1623 пъти
Gag system API.zip
(1.63 KiB) Свалено 1623 пъти

По-стари версии:

gag_system.sma
v1.0
(16.58 KiB) Свалено 534 пъти
gag_system.sma
v1.0
(16.58 KiB) Свалено 534 пъти
gag_system.sma
v0.2 ALPHA
(12.21 KiB) Свалено 398 пъти
gag_system.sma
v0.2 ALPHA
(12.21 KiB) Свалено 398 пъти
gag_system.sma
v0.1 APLHA
(8.93 KiB) Свалено 385 пъти
gag_system.sma
v0.1 APLHA
(8.93 KiB) Свалено 385 пъти

Аватар
Smiley
Извън линия
Foreigner
Foreigner
Мнения: 26
Регистриран на: 12 Дек 2017, 22:40

Gag System v0.1 ALPHA Testing

Мнение от Smiley » 12 Дек 2017, 22:54

Can you make gags to be saved on steamid, name and ip?
Now I see in code he saves now on name and ip or just ip?

Another idea is to admins to give gag and ungag from the chat with comands: /gag and /ungag.

PS.Why you don't use "colorchat.inc"?Is more convenient to not search another inc for this plugin.
It's have almost everyone that colorchat ;)

Аватар
TheRedShoko
Извън линия
Модератор
Модератор
Мнения: 1016
Регистриран на: 06 Окт 2016, 07:42
Местоположение: Бургас
Се отблагодари: 5 пъти
Получена благодарност: 84 пъти

Gag System v0.1 ALPHA Testing

Мнение от TheRedShoko » 12 Дек 2017, 23:56

It's saved just by IP. It saves the nickname, but is used as additional information, not as identity. I may add a cvar about switching between IP and SteamID.

I'll think about that.

Since there are many versions of colorchat.inc and many people have complained about chat message problems I've decided to change it to any library that's not so popular. Anyway I've pasted direct download link for the library so I don't think that's such a big problem to get it.

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

Gag System v0.1 ALPHA Testing

Мнение от OciXCrom » 13 Дек 2017, 00:22

colorchat.inc has got several problems and many people fail to notice that. I highly recommend not to use it. A better alternative is the one uploaded here or my own version which can be found in my signature down below.

Аватар
TheRedShoko
Извън линия
Модератор
Модератор
Мнения: 1016
Регистриран на: 06 Окт 2016, 07:42
Местоположение: Бургас
Се отблагодари: 5 пъти
Получена благодарност: 84 пъти

Gag System v0.2 ALPHA Testing

Мнение от TheRedShoko » 13 Дек 2017, 01:06

v0.2 Alpha
- Added gag menu
- Fixed double gag bug
- Added more bugs to fix later
Извън темата
LF > Photos of the plugin pl0x Q.Q

Аватар
monk
Извън линия
Потребител
Потребител
Мнения: 156
Регистриран на: 22 Окт 2016, 18:08
Местоположение: /gym
Се отблагодари: 2 пъти
Получена благодарност: 9 пъти

Gag System v0.2 ALPHA Testing

Мнение от monk » 13 Дек 2017, 10:05

Поздравления за труда! :)
Можеш да добавиш, ако не си го, при гаг да се мутва микрофона и човека да не може да си сменя ника, понеже мн хора, когато са гагнати започват да обиждат админите чрез смяна на ника.
П.С Под 1.8.2 не се компилира, дори с инклуда

Код за потвърждение: Избери целия код

//AMXXPC compile.exe
// by the AMX Mod X Dev Team


//// gag_system.sma
// C:\Documents and Settings\asensio\Desktop\182\scripting\gag_system.sma(55) :
error 017: undefined symbol "regex_compile_ex"
// C:\Documents and Settings\asensio\Desktop\182\scripting\gag_system.sma(55) :
warning 213: tag mismatch
// C:\Documents and Settings\asensio\Desktop\182\scripting\gag_system.sma(107) :
 error 088: number of arguments does not match definition
// C:\Documents and Settings\asensio\Desktop\182\scripting\gag_system.sma(146) :
 error 088: number of arguments does not match definition
//
// 3 Errors.
// Could not locate output file C:\Documents and Settings\asensio\Desktop\182\sc
ripting\compiled\gag_system.amx (compile failed).
//
// Compilation Time: 0,36 sec
// ----------------------------------------

Press enter to exit ...
Последно промяна от monk на 13 Дек 2017, 10:08, променено общо 1 път.
My body is like breakfast, lunch, and dinner. I don't think about it, I just have it.
- Arnold Schwarzenegger
--
45.144.155.105:27029 -Ex0t1C-pLay # > Dust 2 Only <
--

Аватар
Maverick
Извън линия
Рекламатор
Рекламатор
Мнения: 254
Регистриран на: 22 Окт 2016, 17:05
Местоположение: 93.123.18.81:27017
Се отблагодари: 34 пъти
Получена благодарност: 14 пъти
Обратна връзка:

Gag System v0.2 ALPHA Testing

Мнение от Maverick » 13 Дек 2017, 10:07

Не може да се компилира, показва тези грешки и двете версии, не може и с този сайт.
Изображение

Аватар
Smiley
Извън линия
Foreigner
Foreigner
Мнения: 26
Регистриран на: 12 Дек 2017, 22:40

Gag System v0.2 ALPHA Testing

Мнение от Smiley » 13 Дек 2017, 10:37

Hmm, reason to gags must to dissapear because it's logical for what is given gag and is uncomfortable.
Gags is given for vulgar language or advertising, but much more is vor vulgar language.For advertising can use another plugin to stop ads.

Is better to save all together in "database"(ip + name + steamid) without cvar to switching SteamID/IP.I see this method on some plugin of gag but isn't complete that source.

After is very good to execute this plugin one file in folder configs with words .ini/.txt with vulgar language/ads, words to can be added everytime and to give automatically gag 3/5 minutes (setted by cvar) how long time to give gag if some player write in chat some words from that file "words.ini".If cvar for this is set to 0, plugin to not give gag for that words.

@OciXCrom, your "cromchat.inc" does the same thing like "colorchat.inc" and this what be used in this plugin of gag?
Последно промяна от Smiley на 13 Дек 2017, 14:09, променено общо 3 пъти.

Аватар
TheRedShoko
Извън линия
Модератор
Модератор
Мнения: 1016
Регистриран на: 06 Окт 2016, 07:42
Местоположение: Бургас
Се отблагодари: 5 пъти
Получена благодарност: 84 пъти

Gag System v0.2 ALPHA Testing

Мнение от TheRedShoko » 13 Дек 2017, 13:22

Микрофона съм го спрял, не се сетих за смяната на ник, ще го направя при следващата версия. Проблема с компилацията под 1.8.2 възниква, защото съм го писал и тествал под 1.8.3. Пробвайте да замените regex_compile_ex с regex_compile. Ако пак не стане довечера ще го преработя да компилира и под 1.8.2.

In my oppinion the reason is not useless... Although I can make a version with reasons and without. When everything is OK I'm gonna release and SQL version of the plugin.

Аватар
Maverick
Извън линия
Рекламатор
Рекламатор
Мнения: 254
Регистриран на: 22 Окт 2016, 17:05
Местоположение: 93.123.18.81:27017
Се отблагодари: 34 пъти
Получена благодарност: 14 пъти
Обратна връзка:

Gag System v0.2 ALPHA Testing

Мнение от Maverick » 13 Дек 2017, 13:32

Не стана
Изображение
Ама може би не е само това причината защото тука си е 1.8.3 https://amx.freakz.ro/

Публикувай отговор
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Одобрени плъгини”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 10 госта