Доступ к готовым решениям

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Мануал Anti-CAPS

Pascal

Новичок
Автор: Nexius
Взято из скрипта от Nexius
Для начала ко всем define​
PHP:
#define TOLOWER_IN_ANY_CASE
#define TOLOWER_WITHOUT_CAP_LETTERS
#define MAX_UPPERCASE_PERSENT	45.0
В public OnPlayerText​
PHP:
	#if !defined TOLOWER_IN_ANY_CASE
		if(IsTextUppercase(text))
		{
		#if defined TOLOWER_WITHOUT_CAP_LETTERS
			UpperToLowerWithoutCapLetters(text);
		#else
			UpperToLower(text);
		#endif
		}
	#elseif defined TOLOWER_WITHOUT_CAP_LETTERS
		UpperToLowerWithoutCapLetters(text);
	#else
		UpperToLower(text);
	#endif
После в OnPlayerCommandText​
PHP:
	#if !defined TOLOWER_IN_ANY_CASE
		if(IsTextUppercase(cmdtext))
		{
		#if defined TOLOWER_WITHOUT_CAP_LETTERS
			UpperToLowerWithoutCapLetters(cmdtext);
		#else
			UpperToLower(cmdtext);
		#endif
		}
	#elseif defined TOLOWER_WITHOUT_CAP_LETTERS
		UpperToLowerWithoutCapLetters(cmdtext);
	#else
		UpperToLower(cmdtext);
	#endif
Ко всем stock​
PHP:
stock IsTextUppercase(const text[])
{
	new len = strlen(text), count;
	for(new i = len - 1; i != -1; --i)
	{
		if('A' <= text[i] <= 'Z' || 'А' <= text[i] <= 'Я' || text[i] == 'Ё') count++;
	}
	if((float(count) / float(len)) * 100.0 > MAX_UPPERCASE_PERSENT) return 1;
	return 0;
}

stock UpperToLowerWithoutCapLetters(text[])
{
	for(new i, bool:cap = true, len = strlen(text); i < len; i++)
	{
		switch(text[i])
		{
			case '.', '!', '?', ';': cap = true;
			case 'a'..'z', 'а'..'я', 'ё': cap = false;
			case 'A'..'Z', 'А'..'Я':
			{
				if(cap) cap = false;
				else text[i] += 32;
			}
			case 'Ё':
			{
				if(cap) cap = false;
				else text[i] = 'ё';
			}
		}
	}
	return 1;
}

stock UpperToLower(text[])
{
	for(new i = strlen(text) - 1; i != -1; --i)
	{
		switch(text[i])
		{
			case 'A'..'Z', 'А'..'Я': text[i] += 32;
			case 'Ё': text[i] = 'ё';
		}
	}
	return 1;
}
 
Сверху Снизу