ResetScore+

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
  • Автор ресурса
  • #41
Lite Resetscore v1.0.3

[0] Line 21, LiteResetscore.sp::Annonce()
Это потому, что у тебя объявление о командах пишет не так, как у всех. У Resetscore+ таких ошибок не возникает, а твой я попробовал и скинул. Ошибка редкая, как видишь, сразу и не в курсе был.
Должно теперь пройти - с того же поста выше скачай обновку.
P.S. Есть идея. Может тебе лучше сделать 1 показ, когда игрок вступит за КТ или Т, а не через 5 секунд?
 
Последнее редактирование:

Metamoto

Участник
Сообщения
407
Реакции
14
Re: Lite Resetscore v1.0.3

Это потому, что у тебя объявление о командах пишет не так, как у всех. У Resetscore+ таких ошибок не возникает, а твой я попробовал и скинул. Ошибка редкая, как видишь, сразу и не в курсе был.
Должно теперь пройти - с того же поста выше скачай обновку.
P.S. Есть идея. Может тебе лучше сделать 1 показ, когда игрок вступит за КТ или Т, а не через 5 секунд?

Поставил, будут ошибки отпишусь.

Добавлено через 1 минуту
Это потому, что у тебя объявление о командах пишет не так, как у всех. У Resetscore+ таких ошибок не возникает, а твой я попробовал и скинул. Ошибка редкая, как видишь, сразу и не в курсе был.
Должно теперь пройти - с того же поста выше скачай обновку.
P.S. Есть идея. Может тебе лучше сделать 1 показ, когда игрок вступит за КТ или Т, а не через 5 секунд?

Ну разницы нету, так будет лучше. Через пять сек это после подключения, даже если команду не выбрал верно? А так, только когда уже выбрал. Так лучше, когда команду уже выбрал. Я, кстати говоря, сразу так и просил ))

Добавлено через 37 минут
Это потому, что у тебя объявление о командах пишет не так, как у всех. У Resetscore+ таких ошибок не возникает, а твой я попробовал и скинул. Ошибка редкая, как видишь, сразу и не в курсе был.
Должно теперь пройти - с того же поста выше скачай обновку.
P.S. Есть идея. Может тебе лучше сделать 1 показ, когда игрок вступит за КТ или Т, а не через 5 секунд?

Теперь русскими буквами не обновляется.
 
Последнее редактирование:

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
  • Автор ресурса
  • #43
Lite Resetscore v1.0.7

Оффтоп
------------------------------------------------------------------
dcf75d389211.jpg

Будет только 1 раз показано объявление, как на картинке выше, в случае, если игрок зайдёт за команду КТ или Т;
если же игрок выбрал Спектраторов, то анонс не отобразится до тех пор, пока он не вступит в игру.
Присутствуют сообщения в чат при вводе команд обнуления счёта.

Команды для сброса счёта:
С учётом регистра и без указания в предложении:
публичные - !rs и !resetscore;
скрытые - /rs и /resetscore.
Без учёта регистра и в предложениях:
1rs и 1resetscore.
С учётом регистра и в предложениях:
!кы, 1кы и куыуеысщку.
 

Вложения

  • LiteResetscore.sp
    1.8 КБ · Просмотры: 27
Последнее редактирование:

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
Оффтоп
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
  • Автор ресурса
  • #45
Resetscore+ v1.0.4

Обновлено до версии 1.0.4.
Изменения:
Чуть укорочен изначальный код.
Автоматическое создание конфигурационного файла от плагина по пути cstrike\cfg\sourcemod сервера, где будут квары для настройки.
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
  • Автор ресурса
  • #46
Resetscore+ v1.0.6

Обновлено до версии 1.0.6.
Изменения:
Убрана иногда появляющаяся ошибка в логах: 'Native "GetClientDeaths" reported: Client is not in game'.
Оптимизация кода.
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
  • Автор ресурса
  • #47
Resetscore+ v1.0.7

Обновлено до версии 1.0.7.
Изменения:
Блокирование всех ранее отображаемых в чате команд сброса из букв: rd, rs и кы.
Такие же команды, но написанные в предложении, снова будут отображены.
Другие команды обнуления счёта: !resetdeath и !resetscore - видны всегда!
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #48
Оффтоп
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
  • Автор ресурса
  • #49
Оффтоп
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #50
В идеале, я бы хотел, чтобы все команды просто вырезались из чата, а весь остальной текст остался отображён.
Если команда посреди текста?
Или просто скрытие всего сообщения?
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
  • Автор ресурса
  • #51
Посреди, да. Именно вырезка, подмена строк, насколько я понимаю.
В общем-то, идея то есть, но не думаю, что это хорошая реализация.
просто скрытие всего сообщения?
return Plugin_Handled я изучил, но мне оно на всё подряд не надо. :)
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #52
AlmazON, Вот тебе реализация.
PHP:
Создаешь массив команд:
new String:g_sRs_CMD[][] = {"rs", "rdk", "кы", "resetscore"};

//Ловишь сообщение.

public OnMessage(client, String:sMsg[]) // Обзову так, надеюсь понятно где что.
{
	new index = CheckCommandRS(sMsg);
	if(index != -1)
	{
		new iPos = StrContains(sMsg, g_sRs_CMD[index], false); // Получаем позицию начала строки
		if(sMsg[iPos-1] == '/') // Если перед ней стоит / значит это то что нам нужно
		{
			decl String:sBuffer[50];
			FormatEx(sBuffer, sizeof(sBuffer), "/%s", g_sRs_CMD[index]);
			ReplaceString(sMsg, sizeof(sMsg), sBuffer, "", false); // Заменяем команду на пустоту
			/* Обнуляй счет, лучше функцией */
		} else if(sMsg[iPos-1] == '!') // Если перед ней стоит ! значит это тоже то что нам нужно
		{
			decl String:sBuffer[50];
			FormatEx(sBuffer, sizeof(sBuffer),  "!%s", g_sRs_CMD[index]);
			ReplaceString(sMsg, sizeof(sMsg), sBuffer, "", false); // Заменяем команду на пустоту
			/* Обнуляй счет, лучше функцией */
		}
	}
} 

stock CheckCommandRS(const String:sMsg[])
{
	for(new i=0; i < 4; i++)
	{
		if(StrContains(sMsg, g_sRs_CMD[i], false) != -1)
		{
			return i; // Функция вернет индекс строки массива, которую нашло
		}
	}
	return -1;
}
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
  • Автор ресурса
  • #53
R1KO, спасибо. Тоже думал о поиске начала, но ещё и конца позиции. Здесь делим на 2 текста и потом строками вставляем в одно без команды. :)
Длинновато...
А так?
PHP:
public OnMessage(client, String:sMsg[]) // Обзову так, надеюсь понятно где что. 
{ 
    new index = CheckCommandRS(sMsg); 
    if(index != -1) 
    { 
        new iPos = StrContains(sMsg, g_sRs_CMD[index], false); // Получаем позицию начала строки 
        if(sMsg[iPos-1] == '/' || sMsg[iPos-1] == '!') // Если перед ней стоит / значит это то что нам нужно 
        { 
            decl String:sBuffer[50];
			if(sMsg[iPos-1] == '/')
				FormatEx(sBuffer, sizeof(sBuffer), "/%s", g_sRs_CMD[index]); 
			else FormatEx(sBuffer, sizeof(sBuffer),  "!%s", g_sRs_CMD[index]);
            ReplaceString(sMsg, sizeof(sMsg), sBuffer, "", false); // Заменяем команду на пустоту 
            /* Обнуляй счет, лучше функцией */ 
        }
    } 
}
FormatEx(sBuffer, sizeof(sBuffer) вообще оба нельзя вместить без проверок, просто одно под другим?
И буфер что вмещает? Только команды, не весь же текст сообщения?
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #54
FormatEx(sBuffer, sizeof(sBuffer) вообще оба нельзя вместить без проверок, просто одно под другим?
тоже думал, но не захотел еще раз проверять символ.

Тогда уж так:
PHP:
FormatEx(sBuffer, sizeof(sBuffer), "%s%s", g(sMsg[iPos-1] == '/') ? "/":"!", g_sRs_CMD[index]);


И буфер что вмещает? Только команды, не весь же текст сообщения?
Да
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
  • Автор ресурса
  • #55
В итоге это?
PHP:
if(sMsg[iPos-1] == '/' || sMsg[iPos-1] == '!') // Если перед ней стоит / значит это то что нам нужно  
        {  
            decl String:sBuffer[50]; 
            FormatEx(sBuffer, sizeof(sBuffer), "%s%s", g(sMsg[iPos-1] == '/') ? "/":"!", g_sRs_CMD[index]);
            ReplaceString(sMsg, sizeof(sMsg), sBuffer, "", false); // Заменяем команду на пустоту  
            /* Обнуляй счет, лучше функцией */  
        }
Неплохо весьма. А разве от стока new index = CheckCommandRS(sMsg); нельзя сразу вставить в if(CheckCommandRS(sMsg) != -1)?
не захотел еще раз проверять символ
Всмысле сам SM?
В буфере одна команда или все? А то для одной многовато...
 

Джускaси

Участник
Сообщения
259
Реакции
40
В логах ошибки ставил плагин на чистый сервер
L 06/19/2014 - 13:31:59: SourceMod error session started
L 06/19/2014 - 13:31:59: Info (map "de_dust2") (file "errors_20140619.log")
L 06/19/2014 - 13:31:59: [SM] Native "IsClientInGame" reported: Client index 0 is invalid
L 06/19/2014 - 13:31:59: [SM] Displaying call stack trace for plugin "Resetscore+.smx":
L 06/19/2014 - 13:31:59: [SM] [0] Line 53, Resetscore+.sp::Say()
L 06/19/2014 - 13:31:59: [SM] Native "IsClientInGame" reported: Client index 0 is invalid
L 06/19/2014 - 13:31:59: [SM] Displaying call stack trace for plugin "Resetscore+.smx":
L 06/19/2014 - 13:31:59: [SM] [0] Line 53, Resetscore+.sp::Say()
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
  • Автор ресурса
  • #57
Resetscore+ v1.0.8

Обновлено до версии 1.0.8.
Изменения:
Убрана иногда появляющаяся ошибка в логах: 'Native "IsClientInGame" reported: Client index is invalid'.
 

lively7777

Участник
Сообщения
9
Реакции
0
Re: Resetscore+ & GhostlyChat for lively7777

По личной просьбе форумчанина lively7777.
1) Плагин настроен только для сброса всего счёта.
Поместить по пути: cstrike\addons\sourcemod\plugins сервера.
2) Плагин позволяет живым игрокам видеть чат мёртвых.
Содержимое архива распаковать в cstrike сервера.

помоги с настройками.. что бы сам банил!:(
 

Вложения

  • smac.cfg
    2.8 КБ · Просмотры: 10

Metamoto

Участник
Сообщения
407
Реакции
14
Оффтоп
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
  • Автор ресурса
  • #60
что нужно прописать в конфиге, чтобы сохранения счета не было на сервере? Я после обновления счет сбрасываю, а он снова появляется
Для Counter-Strike: Global Offensive:
mp_backup_round_file_pattern ""
mp_backup_round_file ""
Как отключить  бэкапы каждого сыгранного раунда (в корне сервера)
в server.cfg:
mp_backup_round_file 0
mp_backup_round_file_last 0
mp_backup_round_file_pattern 0
Но тут же говорят, что это перестало работать и предлагают новые решения проблемы.
 
Сверху Снизу