Заявка за изработна на плъгин работещ с GS

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
ElitePower
Извън линия
Потребител
Потребител
Мнения: 547
Регистриран на: 13 Окт 2016, 14:20
Се отблагодари: 7 пъти
Получена благодарност: 13 пъти

Заявка за изработна на плъгин работещ с GS

Мнение от ElitePower » 10 Фев 2018, 23:15

@Shoko: Направих това, което си написал, но не става да се компилира.

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

Заявка за изработна на плъгин работещ с GS

Мнение от TheRedShoko » 10 Фев 2018, 23:25

Под CONTINUE имам предвид PLUGIN_CONTINUE.

Аватар
ElitePower
Извън линия
Потребител
Потребител
Мнения: 547
Регистриран на: 13 Окт 2016, 14:20
Се отблагодари: 7 пъти
Получена благодарност: 13 пъти

Заявка за изработна на плъгин работещ с GS

Мнение от ElitePower » 25 Мар 2018, 18:27

Ако може направете за думи, които са вписани в друг .ini файл да се не гагва. При написване в чата на думата shkurka гагва, защото в листа със забранени думи съм добавил ku*, затова ми трябва редакция на плъгина.

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

Заявка за изработна на плъгин работещ с GS

Мнение от OciXCrom » 25 Мар 2018, 20:36

Какво правим ако напише и двете думи в същото съобщение? Това не е решение.

Аватар
ElitePower
Извън линия
Потребител
Потребител
Мнения: 547
Регистриран на: 13 Окт 2016, 14:20
Се отблагодари: 7 пъти
Получена благодарност: 13 пъти

Заявка за изработна на плъгин работещ с GS

Мнение от ElitePower » 31 Юли 2018, 16:06

Стара тема, но не виждам друг подобен плъгин, който работи с плъгина на шоко. @OciX: Е как какво, ще се гагне за обидната дума и тва е. Поне като ще се върши нещо да е качествено и изпипано от - до, а не да се заеба*а колкото да върши няква работа, която не е на 100%.

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

Заявка за изработна на плъгин работещ с GS

Мнение от TheRedShoko » 31 Юли 2018, 18:25

Мога да го доработя да проверява дали думата е самостоятелна или е част от друга. В примера, който си дал, ще свърши работа, но лесно ще може да се заобиколи с нещо от рода на sKUR (добавяне на буква в началото или края) или нещо подобно.

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

Заявка за изработна на плъгин работещ с GS

Мнение от TheRedShoko » 01 Авг 2018, 10:28

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

#include <amxmodx>

#define MAX_WORDS 100
#define MAX_LEN 32

native gag_user(name[], ip[], duration, reason[], admin[])

new gsWords[ MAX_WORDS ][ MAX_LEN ];
new gsWordFile[] = "addons/amxmodx/configs/badwords.ini";

new bool:is_admin_connected[33]
new g_iAdminCount 

public plugin_init() 
{
    register_plugin( "Word Blocker", "0.1", "hornet" )
    
    register_clcmd( "say", "cmdSay" );
    register_clcmd( "say_team", "cmdSay" );
    
    new text[ MAX_LEN ], txtlen;
    for( new i ; i < file_size( gsWordFile, 1 ) ; i ++ )
    {
        read_file( gsWordFile, i , text, charsmax( text ), txtlen );
        gsWords[ i ] = text;
    }
}

public cmdSay( id )
{    
	if (g_iAdminCount > 0)
		return PLUGIN_CONTINUE;
	
	new say[ 256 ];
	read_args( say, charsmax( say ) );
	
	new index = -1;
	
	for( new i ; i < sizeof gsWords - 1 ; i ++ )
    {
	    index = contain( say, gsWords[ i ] )
		if( index != -1 )
        {		
			new wordLength = strlen(gsWords[i]);
			if (index > 0 && (say[index-1] >= 65 && say[index-1] <= 90 || say[index-1] >= 97 && say[index-1] <= 122) 
				|| index + wordLength < strlen(say) && (say[index + wordLength + 1] >= 65 && say[index + wordLength + 1] <= 90 || say[index + wordLength + 1] >= 97 && say[index + wordLength + 1] <= 122) )
			{
					return PLUGIN_CONTINUE;
			}
				
			new szName[32], szIP[16];
			get_user_name(id, szName, charsmax(szName));
			get_user_ip(id, szIP, charsmax(szIP), 1);

			gag_user(szName, szIP, 1, "Adversting / Swearing", "Bad Words System");
            
			return PLUGIN_HANDLED;
        }
    }
    
	return PLUGIN_CONTINUE;
}  

public client_putinserver(id)
{
	if(get_user_flags(id) & ADMIN_KICK)
	{
		g_iAdminCount++
		is_admin_connected[id] = true
	}
}

public client_disconnected(id)
{
	if(is_admin_connected[id])
	{
		is_admin_connected[id] = false
		g_iAdminCount--
	}
}
Пробвай. Когато имам повечко време ще го пренапиша кода и ще го оптимизирам.

Аватар
ElitePower
Извън линия
Потребител
Потребител
Мнения: 547
Регистриран на: 13 Окт 2016, 14:20
Се отблагодари: 7 пъти
Получена благодарност: 13 пъти

Заявка за изработна на плъгин работещ с GS

Мнение от ElitePower » 01 Авг 2018, 15:38

Компилирва се, но излиза следната грешка и не гагва -> AutoGag.sma(42) : warning 217: loose indentation

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

Заявка за изработна на плъгин работещ с GS

Мнение от TheRedShoko » 01 Авг 2018, 16:08

Игнорирай я. Не е грешка - warning е. Не е подреден добре кода, но да не те бърка.

Аватар
ElitePower
Извън линия
Потребител
Потребител
Мнения: 547
Регистриран на: 13 Окт 2016, 14:20
Се отблагодари: 7 пъти
Получена благодарност: 13 пъти

Заявка за изработна на плъгин работещ с GS

Мнение от ElitePower » 04 Авг 2018, 12:55

Всичко работи, благодарности на Nikolow и Shoko. Ocix също е прав донякъде, но повечето играчи като обиждат пишат отделно обидите. Ето и няколко предложения за плъгина. Все пак не заключвайте темата, нека да стои за всеки случай ако нещо изникне.

1@: Пренаписване на кода.
2@: Времето за гаг да се наглася с квар.
3@: При използване на повече думи от ини-то направо да гагва за цял мап.


@Едит 17.08: Да гагва по nick/ip/steamid едновременно.

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

Обратно към “Заявки за плъгини”

Кой е на линия

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