Пропажа фрагов после начало раунда

Drumanid

Нестандартное звание
Сообщения
1,862
Реакции
1,748
Приветствую всех.
Нужна помощь связанная с выдачей фрагов за обезвреживание/взрыва бомбы.

Пытался самостоятельно решить данную проблему, но у меня нихрена не вышло.

Бывало... Выдавал их до конца раунда(при помощи другого плагина) они оставались, но были моменты когда они пропадали.
Поэтому запоминать и выдавать их уже в начале раунда - не получится.

Код:

PHP:
#include <sourcemod>

public OnPluginStart()
{
   HookEvent("bomb_exploded", BE);
   HookEvent("bomb_defused", BD);
}

public Action:BE(Handle:event, const String:name[], bool:dontBroadcast)
{
   new client = GetClientOfUserId(GetEventInt(event, "userid"))

   SetEntProp(client, Prop_Data, "m_iFrags", GetClientFrags(client) + 3);
   PrintToChatAll("%N, получил 3 фрага за взрыв бомбы!", client);
}

public Action:BD(Handle:event, const String:name[], bool:dontBroadcast)
{
   new client = GetClientOfUserId(GetEventInt(event, "userid"))

   SetEntProp(client, Prop_Data, "m_iFrags", GetClientFrags(client) + 3);
   PrintToChatAll("%N, получил 3 за обезвреживание бомбы!", client);
}

Видео:

 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
Это всё CS:GO, конкретно - бэкап раундов. Именно он устанавливает те значение, которые записал (предыдущие). Победить можно его отключением, либо постоянной переустановкой фрагов.
 

Drumanid

Нестандартное звание
Сообщения
1,862
Реакции
1,748
Это понятно...
Победить можно его отключением
А если по подробнее, как это можно сделать?

Нашел, понял. Спасибо.

PHP:
mp_backup_round_file 0
mp_backup_round_file_last 0
mp_backup_round_file_pattern 0

Пошел проверять.

---

Неа, фраги все равно забирает...
 
Последнее редактирование:

Drumanid

Нестандартное звание
Сообщения
1,862
Реакции
1,748
Оффтоп Раньше отключение работало, но после какого-то обновления перестало, даже с последними настройками. Вроде такие дела.
Так что, нужно переустанавливать фраги. Я бы попробовал сделать это в самом бэкапе.
Я удалил эти бекап файлы, они теперь у меня во все не создаются.
Думал может еще и в них проблема...

Я попробую.
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
Вообще, для CS:GO пора писать на новом синтаксисе - старый SM на него всё равно не поставишь:
PHP:
#include <sourcemod>

#pragma newdecls required

public void OnPluginStart()
{
   HookEvent("bomb_exploded", EventBomb);
   HookEvent("bomb_defused", EventBomb);
}

public void EventBomb(Event event, const char[] name, bool dontBroadcast)
{
   int client = GetClientOfUserId(event.GetInt("userid"));

   SetEntProp(client, Prop_Data, "m_iFrags", GetClientFrags(client) + 3);
   PrintToChatAll("%N получил 3 фрага за %s бомбы!", client, name[5] == 'e' ? "взрыв" : "обезвреживание");
}
 

Drumanid

Нестандартное звание
Сообщения
1,862
Реакции
1,748
Вообще, для CS:GO пора писать на новом синтаксисе - старый SM на него всё равно не поставишь:
PHP:
#include <sourcemod>

#pragma newdecls required

public void OnPluginStart()
{
   HookEvent("bomb_exploded", EventBomb);
   HookEvent("bomb_defused", EventBomb);
}

public void EventBomb(Event event, const char[] name, bool dontBroadcast)
{
   int client = GetClientOfUserId(event.GetInt("userid"));

   SetEntProp(client, Prop_Data, "m_iFrags", GetClientFrags(client) + 3);
   PrintToChatAll("%N получил 3 фрага за %s бомбы!", client, name[5] == 'e' ? "взрыв" : "обезвреживание");
}

А в чем понт ?
Оптимизация?

Где по подробнее можно узнать об этом "синтаксисе".

Что изменилось...
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
"Скоро" только он и будет компилироваться. Думаю, это произойдёт в версии SM 2.0.0 и выше. Пока же, разработчики его выправляют (уже были баги), дали "отсрочку".
по подробнее можно узнать об этом "синтаксисе
SourcePawn Transitional Syntax - AlliedModders Wiki.
 

KonveeR

Hanzo hasashi
Сообщения
1,639
Реакции
667
Вообще, для CS:GO пора писать на новом синтаксисе - старый SM на него всё равно не поставишь:
PHP:
L 03/19/2017 - 18:34:22: SourceMod error session started
L 03/19/2017 - 18:34:22: Info (map "de_dust2_night") (file "errors_20170319.log")
L 03/19/2017 - 18:34:22: [SM] Exception reported: Client index 0 is invalid
L 03/19/2017 - 18:34:22: [SM] Blaming: frags_defused_bomb.smx
L 03/19/2017 - 18:34:22: [SM] Call stack trace:
L 03/19/2017 - 18:34:22: [SM]   [0] GetClientFrags
L 03/19/2017 - 18:34:22: [SM]   [1] Line 16, C:\Users\User\Desktop\Полный компилятор\frags_defused_bomb.sp::EventBomb
L 03/19/2017 - 18:34:37: Error log file session closed.
 

Drumanid

Нестандартное звание
Сообщения
1,862
Реакции
1,748
PHP:
L 03/19/2017 - 18:34:22: SourceMod error session started
L 03/19/2017 - 18:34:22: Info (map "de_dust2_night") (file "errors_20170319.log")
L 03/19/2017 - 18:34:22: [SM] Exception reported: Client index 0 is invalid
L 03/19/2017 - 18:34:22: [SM] Blaming: frags_defused_bomb.smx
L 03/19/2017 - 18:34:22: [SM] Call stack trace:
L 03/19/2017 - 18:34:22: [SM]   [0] GetClientFrags
L 03/19/2017 - 18:34:22: [SM]   [1] Line 16, C:\Users\User\Desktop\Полный компилятор\frags_defused_bomb.sp::EventBomb
L 03/19/2017 - 18:34:37: Error log file session closed.
PHP:
#include <sourcemod>

#pragma newdecls required

public void OnPluginStart()
{
   HookEvent("bomb_exploded", EventBomb);
   HookEvent("bomb_defused", EventBomb);
}

public void EventBomb(Event event, const char[] name, bool dontBroadcast)
{
   int client = GetClientOfUserId(event.GetInt("userid"));

   if(client)
   {
       SetEntProp(client, Prop_Data, "m_iFrags", GetClientFrags(client) + 3);
       PrintToChatAll("%N получил 3 фрага за %s бомбы!", client, name[5] == 'e' ? "взрыв" : "обезвреживание");
   }
}
Решил вопрос...

Создаем файл autoexec.cfg и вписываем туда следующее:

PHP:
mp_backup_round_file ""
mp_backup_round_file_last ""
mp_backup_round_file_pattern ""
mp_backup_round_auto "0"

Проблема решена.
Тему можно закрыть.
 
Последнее редактирование:
Сверху Снизу