cs_set_user_team или rg_set_user_team

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
83
Реакции
11
Что лучше использовать. Юзал rg_set_user_team, сервер крашился с такой ошибкой
Код:
PF_MessageEnd_I: User Msg 'ScoreAttrib': 0 bytes written, expected 2
 
Сообщения
1,701
Реакции
1,512
Помог
26 раз(а)
Лучше использовать rg_set_user_team. Сообщения ScoreAttrib там нет.
 
Сообщения
83
Реакции
11
разобрался, заменил fm_get_user_team на rg_get_user_team
 
Сообщения
83
Реакции
11
Хотя нет, всё равно падает с этой ошибкой.

Код:
public msg_scoreattrib(msgid, dest, id)
{
    static attrib
    attrib = get_msg_arg_int(2)
    
    if(attrib == ATTRIB_BOMB)
        set_msg_arg_int(2, ARG_BYTE, 0)
}

Код:
public event_damage(victim)
{
    if(!is_user_alive(victim) || !g_gamestarted)
        return PLUGIN_CONTINUE
    
    if(g_himera[victim])
    {
        static Float:gametime
        gametime = get_gametime()
        
        g_regendelay[victim] = gametime + g_class_data[g_player_class[victim]
        g_hitdelay[victim] = gametime + g_class_data[g_player_class[victim]
    }
    else
    {
        static attacker
        attacker = get_user_attacker(victim)
        
        if(!is_user_alive(attacker) || !g_himera[attacker] || g_himer)
            return PLUGIN_CONTINUE
        
        if(g_victim[attacker] == victim)
        {
            g_himer = true
            g_victim[attacker] = 0

            message_begin(MSG_ALL, g_msg_deathmsg)
            write_byte(attacker)
            write_byte(victim)
            write_byte(0)
            write_string(g_infection_name)
            message_end()
            
            message_begin(MSG_ALL, g_msg_scoreattrib)
            write_byte(victim)
            write_byte(0)
            message_end()
            
            himer_user(victim, attacker)
            
            static frags, deaths
            frags = get_user_frags(attacker)
            deaths = cs_get_user_deaths(victim)
            set_user_frags(attacker, frags + 1)
            cs_set_user_deaths(victim, deaths + 1)
            fm_set_user_money(attacker, get_pcvar_num(cvar_infectmoney))
        
            static params[2]
            params[0] = attacker
            params[1] = victim
    
            set_task(0.3, "task_updatescore", TASKID_UPDATESCR, params, 2)
        }
        g_infecting = false
    }
    return PLUGIN_CONTINUE
}
Если закомментировать эту строку то, нет краша register_message(get_user_msgid("ScoreAttrib"), "msg_scoreattrib")
 
Сообщения
1,420
Реакции
2,511
Помог
58 раз(а)
Как код выше относится к вопросу про cs_set_user_team и rg_set_user_team? Помощь в исправлении плагина в соответствующую тему: https://dev-cs.ru/forums/plugins-errors/. На сам вопрос в принципе ответ был дан. У rg_set_user_team к тому же есть еще один аргумент, check_win_conditions, выполняет то же что и натив rg_check_win_conditions.
 
Статус
В этой теме нельзя размещать новые ответы.

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу