RankMe 2.8.3

TWRP

Участник
Сообщения
317
Реакции
44
ну и далее
PHP:
else if (!StrContains(sWords[0], "topknife", false) || !StrContains(sWords[0], "ещзлтшау", false))
    {    
        if (!strcmp(cpMessage, "topknife") || !strcmp(cpMessage, "ещзлтшау"))
        {
            ShowTOPKnife(client, 0);
        } 
        else 
        {
            ShowTOPKnife(client, StringToInt(cpMessage[8]));
        }
    }

неа, отображения ломается, не так
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
else if (StrEqual(cpMessage, "hitboxme", false) || StrEqual(cpMessage, "ршеищчьу", false))
Значит, 3 команда будет добавлена так:
PHP:
else if (StrEqual(cpMessage, "hitboxme", false) || StrEqual(cpMessage, "ршеищчьу", false) || StrEqual(cpMessage, "3команда", false))
Аналогично, где видишь такое.
 
  • Мне нравится
Реакции: TWRP

TWRP

Участник
Сообщения
317
Реакции
44
Значит, 3 команда будет добавлена так:
PHP:
else if (StrEqual(cpMessage, "hitboxme", false) || StrEqual(cpMessage, "ршеищчьу", false) || StrEqual(cpMessage, "3команда", false))
Аналогично, где видишь такое.

это работает,
короче вот я сделал так

PHP:
	if (StrEqual(cpMessage, "rank", false) || StrEqual(cpMessage, "ранк", false) || StrEqual(cpMessage, "кфтл", false))
	{
		//LogToFile("rankme.debug.log","\"rank\" chat hook called by client %d.",client);
		CMD_Rank(client, 0);
	}
	else if (StrEqual(cpMessage, "statsme", false) || StrEqual(cpMessage, "ыефеыьу", false))
	{
		CMD_StatsMe(client, 0);
	}
	else if (StrEqual(cpMessage, "hitboxme", false) || StrEqual(cpMessage, "ршеищчьу", false))
	{
		CMD_HitBox(client,0);
	}
	else if (StrEqual(cpMessage, "weaponme", false) || StrEqual(cpMessage, "цуфзщтьу", false))
	{
		CMD_WeaponMe(client,0);
	}
	else if (StrEqual(cpMessage, "session", false) || StrEqual(cpMessage, "ыуыышщт", false))
	{
		CMD_Session(client,0);
	}
	else if (StrEqual(cpMessage[0], "next", false) || StrEqual(cpMessage, "туче", false))
	{
		CMD_Next(client, 0);
	}
- это все работает и отображение не ломается.
то есть как не ломается я ввожу команду она мне так как надо отображает.

а ломается когда ввожу к примеру команду top, а мне отображает topknife.
теперь же мне нужно сделать эти команды:

PHP:
	else if (StrContains(sWords[0], "topknife", false) == 0)
	{	
		if (strcmp(cpMessage, "topknife") == 0)
		{
			ShowTOPKnife(client, 0);
		} 
		else 
		{
			ShowTOPKnife(client, StringToInt(cpMessage[8]));
		}
	}
	else if (StrContains(sWords[0], "topnade", false) == 0)
	{
		if (strcmp(cpMessage, "topnade") == 0)
		{
			ShowTOPNade(client, 0);
		}
		else
		{
			ShowTOPNade(client, StringToInt(cpMessage[7]));
		}
	}
	else if (StrContains(sWords[0], "tophs", false) == 0)
	{
		if (strcmp(cpMessage, "tophs") == 0)
		{
			ShowTopHS(client, 0);
		}
		else
		{
			ShowTopHS(client, StringToInt(cpMessage[7]));
		}
	}
	else if (StrContains(sWords[0], "topkills", false) == 0)
	{
		if (strcmp(cpMessage, "topkills") == 0)
		{
			ShowTopKills(client, 0);
		}
		else
		{
			ShowTopKills(client, StringToInt(cpMessage[7]));
		}
	}
	else if (StrContains(sWords[0], "topdeaths", false) == 0)
	{
		if (strcmp(cpMessage, "topdeaths") == 0)
		{
			ShowTopDeaths(client, 0);
		}
		else
		{
			ShowTopDeaths(client, StringToInt(cpMessage[7]));
		}
	}
	else if (StrContains(sWords[0], "topacc", false) == 0)
	{
		if (strcmp(cpMessage, "topacc") == 0)
		{
			ShowTopAcc(client, 0);
		}
		else
		{
			ShowTopAcc(client, StringToInt(cpMessage[7]));
		}
	}
	else if (StrContains(sWords[0], "toptime", false) == 0)
	{
		if (strcmp(cpMessage, "toptime") == 0)
		{
			ShowTopTime(client, 0);
		}
		else
		{
			ShowTopTime(client, StringToInt(cpMessage[7]));
		}
	}
	else if (StrContains(sWords[0], "topweapon", false) == 0)
	{
		if (strcmp(cpMessage, "topweapon") == 0)
		{
			CMD_TopWeapon(client,0); // Build the menu on the next frame
		} 
		else 
		{
			if (GetWeaponNum(sWords[1]) == 30)
			{
				CMD_TopWeapon(client,0);
			}
			else
			{
				ShowTOPWeapon(client, GetWeaponNum(sWords[1]), StringToInt(sWords[2]));
			}
		}
	}
	else if (StrContains(sWords[0],"top", false) == 0)
	{
		if (strcmp(cpMessage,"top") == 0)
		{
			ShowTOP(client, 0);
		}
		else
		{
			ShowTOP(client, StringToInt(cpMessage[3]));
		}
	}
	return Plugin_Continue;
}

ну я не пойму как тут, я делал как выше что-то на подобе или похоже, но начинает ломается отображение на сервере, даже пишу voteban, а мне top выводит.

дайте пример как тут сделать команды,
Например:
PHP:
	else if (StrContains(sWords[0], "topknife", false) == 0)
	{	
		if (strcmp(cpMessage, "topknife") == 0)
		{
			ShowTOPKnife(client, 0);
		} 
		else 
		{
			ShowTOPKnife(client, StringToInt(cpMessage[8]));
		}
	}

Так пробовал http://hlmod.ru/forum/showpost.php?p=169365&postcount=686 но оно ломается. :sad:
 

TWRP

Участник
Сообщения
317
Реакции
44
Так, например:
PHP:
else if (StrContains(sWords[0], "topknife", false) == 0 || StrContains(sWords[0], "2команда", false) == 0) 
    {     
        if (strcmp(cpMessage, "topknife") == 0 || strcmp(cpMessage, "2команда") == 0) 
        { 
            ShowTOPKnife(client, 0); 
        }  
        else  
        { 
            ShowTOPKnife(client, StringToInt(cpMessage[8])); 
        } 
    }
Но 2 команда должна иметь строго 8 латинских букв (любых, но совпадающих вверху и ниже) или 4 в кириллице!
Оффтоп
Либо по-новому:
PHP:
	else if (StrContains(sWords[0], "topknife", false) == 0) 
    {     
        if (strcmp(cpMessage, "topknife") == 0) 
        { 
            ShowTOPKnife(client, 0); 
        }  
        else  
        { 
            ShowTOPKnife(client, StringToInt(cpMessage[8])); 
        } 
    }
	else if (StrContains(sWords[0], "2команда", false) == 0) 
    {     
        if (strcmp(cpMessage, "2команда") == 0) 
        { 
            ShowTOPKnife(client, 0); 
        }  
        else  
        { 
            ShowTOPKnife(client, StringToInt(cpMessage[N])); 
        } 
    }
Где N - количество символов в команде (русская буква считается за 2).

значит topknife должен выглядеть так ?

PHP:
	else if (StrContains(sWords[0], "topknife", false) == 0 || StrContains(sWords[0], "ещзлтшау", false) == 0) 
	{	
		if (strcmp(cpMessage, "topknife") == 0 || strcmp(cpMessage, "ещзлтшау") == 0) 
		{
			ShowTOPKnife(client, 0);
		} 
		else 
		{
			ShowTOPKnife(client, StringToInt(cpMessage[24]));
		}
	}

Добавлено через 26 минут
ну вот что у меня получилось

PHP:
	else if (StrContains(sWords[0], "topknife", false) == 0 || StrContains(sWords[0], "ещзлтшау", false) == 0) 
	{	
		if (strcmp(cpMessage, "topknife") == 0 || strcmp(cpMessage, "ещзлтшау") == 0) 
		{
			ShowTOPKnife(client, 0);
		} 
		else 
		{
			ShowTOPKnife(client, StringToInt(cpMessage[24]));
		}
	}
	else if (StrContains(sWords[0], "topnade", false) == 0 || StrContains(sWords[0], "ещзтфву", false) == 0) 
	{
		if (strcmp(cpMessage, "topnade") == 0 || strcmp(cpMessage, "ещзтфву") == 0) 
		{
			ShowTOPNade(client, 0);
		}
		else
		{
			ShowTOPNade(client, StringToInt(cpMessage[21]));
		}
	}
	else if (StrContains(sWords[0], "tophs", false) == 0 || StrContains(sWords[0], "ещзры", false) == 0)
	{
		if (strcmp(cpMessage, "tophs") == 0 || strcmp(cpMessage, "ещзры") == 0) 
		{
			ShowTopHS(client, 0);
		}
		else
		{
			ShowTopHS(client, StringToInt(cpMessage[15]));
		}
	}
	else if (StrContains(sWords[0], "topkills", false) == 0 || StrContains(sWords[0], "ещзлшдды", false) == 0)
	{
		if (strcmp(cpMessage, "topkills") == 0 || strcmp(cpMessage, "ещзлшдды") == 0) 
		{
			ShowTopKills(client, 0);
		}
		else
		{
			ShowTopKills(client, StringToInt(cpMessage[24]));
		}
	}
	else if (StrContains(sWords[0], "topdeaths", false) == 0 || StrContains(sWords[0], "ещзвуферы", false) == 0)
	{
		if (strcmp(cpMessage, "topdeaths") == 0 || strcmp(cpMessage, "ещзвуферы") == 0)
		{
			ShowTopDeaths(client, 0);
		}
		else
		{
			ShowTopDeaths(client, StringToInt(cpMessage[27]));
		}
	}
	else if (StrContains(sWords[0], "topacc", false) == 0 || StrContains(sWords[0], "ещзфсс", false) == 0)
	{
		if (strcmp(cpMessage, "topacc") == 0 || strcmp(cpMessage, "ещзфсс") == 0)
		{
			ShowTopAcc(client, 0);
		}
		else
		{
			ShowTopAcc(client, StringToInt(cpMessage[18]));
		}
	}
	else if (StrContains(sWords[0], "toptime", false) == 0 || StrContains(sWords[0], "ещзешьу", false) == 0)
	{
		if (strcmp(cpMessage, "toptime") == 0 || strcmp(cpMessage, "ещзешьу") == 0)
		{
			ShowTopTime(client, 0);
		}
		else
		{
			ShowTopTime(client, StringToInt(cpMessage[21]));
		}
	}
	else if (StrContains(sWords[0], "topweapon", false) == 0 || StrContains(sWords[0], "ещзцуфзщт", false) == 0)
	{
		if (strcmp(cpMessage, "topweapon") == 0 || strcmp(cpMessage, "ещзцуфзщт") == 0)
		{
			CMD_TopWeapon(client,0); // Build the menu on the next frame
		} 
		else 
		{
			if (GetWeaponNum(sWords[1]) == 30)
			{
				CMD_TopWeapon(client,0);
			}
			else
			{
				ShowTOPWeapon(client, GetWeaponNum(sWords[1]), StringToInt(sWords[2]));
			}
		}
	}
	else if (StrContains(sWords[0],"top", false) == 0 || StrContains(sWords[0], "ещз", false) == 0)
	{
		if (strcmp(cpMessage,"top") == 0 || strcmp(cpMessage, "ещз") == 0)
		{
			ShowTOP(client, 0);
		}
		else
		{
			ShowTOP(client, StringToInt(cpMessage[9]));
		}
	}
	return Plugin_Continue;
}

вроде все работает и отображение не ломаное, все как надо.

но правда как исправить в команде topweapon количество букв
там ShowTOPWeapon(client, GetWeaponNum(sWords[1]), StringToInt(sWords[2]));

и кстати я заметил что по дефолту в не которых команд было прописано по 7 букв
ShowTOP(client, StringToInt(cpMessage[7]));
а на самом деле там 8.

вот как раз topweapon там 2 прописано StringToInt(sWords[2])

как так ?
и правильно-ли я сделал выше ?
 
Последнее редактирование:

TWRP

Участник
Сообщения
317
Реакции
44
Нет.

Начудил ты) Русским языком сказал же, что если пишешь в 1 колонке, то команда должна содержать строго столько же символов!

Оффтоп

Можешь тогда мне сделать команду topknife как правильно надо...
 

TWRP

Участник
Сообщения
317
Реакции
44
Работает в режиме распознавания прямой команды. Но там же ещё что-то можно писать после команды... Цифры видимо - сколько игроков отобразить.

Смотря, какую команду надо дополнительно.


topknife хотяб например
Чтобы я потом все остальные сделал...
 

TWRP

Участник
Сообщения
317
Реакции
44
topknife - к ней ещё какую? Сразу давай пару своих примеров, а то опять начудишь.

topknife
чтобы вызывалось тоже такой командой - ещзлтшау

ну и также.
topweapon - ещзцуфзщт

думаю ты понял, дальше я потом сам попробую по примеру :blush2:
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
Я сам не пойму, откуда у автора эти цифры, которые я обозначил, как N. Большинство совпадает с моей мыслью, но некоторые команды явно больше или меньше, чем число символов. То ли автор что-то напутал, то ли ещё кто...
Поставь те же цифры, что в оригинале - работать не хуже его будет и ладно.
 
  • Мне нравится
Реакции: TWRP

TWRP

Участник
Сообщения
317
Реакции
44
Я сам не пойму, откуда у автора эти цифры, которые я обозначил, как N. Большинство совпадает с моей мыслью, но некоторые команды явно больше или меньше, чем число символов. То ли автор что-то напутал, то ли ещё кто...
Поставь те же цифры, что в оригинале - работать не хуже его будет и ладно.

PHP:
    else if (StrContains(sWords[0], "topknife", false) == 0 || StrContains(sWords[0], "ещзлтшау", false) == 0) 
    {    
        if (strcmp(cpMessage, "topknife") == 0 || strcmp(cpMessage, "ещзлтшау") == 0) 
        {
            ShowTOPKnife(client, 0);
        } 
        else 
        {
            ShowTOPKnife(client, StringToInt(cpMessage[8]));
        }
    }

так?
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
Да.
topknife x (x равняется числу)
Вот зачем применяется вариант с цифрами. У тебя просто новая команда с числом не будет работать, а стандартная - будет.
Тогда лучше так:
PHP:
else if (StrContains(sWords[0], "topknife", false) == 0)  
    {     
        if (strcmp(cpMessage, "topknife") == 0)  
        { 
            ShowTOPKnife(client, 0); 
        }  
        else  
        { 
            ShowTOPKnife(client, StringToInt(cpMessage[8])); 
        } 
    }else if (strcmp(cpMessage, "ещзлтшау") == 0) ShowTOPKnife(client, 0);
Но можно как и у тебя - просто проверяется лишний раз.
 
  • Мне нравится
Реакции: TWRP

Maxim Bakin

Участник
Сообщения
14
Реакции
0
Помогите, установил на сервер cs go
Перезапустил сервер, не работает... что делать?
 

m2t6hdso

Участник
Сообщения
4
Реакции
0
\x04[RankMe]: \x01 Помогите решить проблему скачал плагин rankme CD anouncer так вот мне надо перфикс изменить на моё название помогите решить проблему плз

Добавлено через 3 часа 22 минуты
Люди нужна помощь столкнулся с такой проблемой как получение очков и где настроить коефециент получения очков,так как имею в ранге из 500 1 место заходят нубы убивая меня они получают много очков,как сделать стоб у топ игроков не снимались очки до тех пор пока игрок не зайдет в топ или,ограничить очки допустим если уж полынй нуб ток зашел убил то чтоб ему не давали больше 10 очков,ставлю + кто поможет вот скайп мой Just_do_it058
 
Последнее редактирование:

Tesloz

JDK
Сообщения
283
Реакции
246
Чтобы перенести базу данных из sql в mysql на хостинг,нужно этим делать???
= rankme_dump_db -> Дамп датабазы в файл SQL? (required to be 1 if using the web interface and SQLite, case MySQL, it won't be dumped) 1 = да 0 = нет. По умолчанию 0.
 
Сверху Снизу