Кик если не подтвердил готовность PUG MOD

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
162
Реакции
4
Помог
3 раз(а)
Всем привет! Подскажите как добавить в pug mod кик если не подтвердил готовность? Нашёл вот такой код в другом плагине:

Код:
/*====================================================================================================
 [Checks] Check Match status Player status
====================================================================================================*/
public check_status() {
    static name[32], message[191], len
    new players[32], players_num
    
    get_players(players, players_num, "h")
    
    switch(game_status) {
        case warmup, change: {
            if(players_num == pl && ready_players == pl) start_match()
            
            else if(players_num == pl && ready_players != pl) {
                len = format(message[len], charsmax(message), "** Ожидаем готовности игроков:")
        
                for(new id = 0; id <= players_num; id++) {
                    if(is_user_connected(players[id])) {
                        if(!player_status[players[id]]) {
                            get_user_name(players[id], name, charsmax(name))
                            len += format(message[len], charsmax(message), " %s", name)
                        }
                    }
                }
                
                client_print(0, print_chat, message)
            }
            else if(players_num < pl) {
                client_print(0, print_chat, "** Для старта матча не хватает игроков.")
            }   
        }
    }
}

public check_player(id) {
    static name[32], a[32]
    new checks, players[32], players_num
    
    get_players(players, players_num, "h")
    get_user_name(id, name, charsmax(name))
    
    if(players_num > pl) {
        server_cmd("kick #%d  ^"Сервер полон, зрителем нельзя.^"", get_user_userid(id))
        
        return PLUGIN_HANDLED
    }
    
    switch(game_status) {
        case fihalf, sehalf, change: {
            for(new i = 1; i <= pl; i++) {
                if(equal(player_name[i], name) && player_id[i] == id) {
                    break
                }
                else if(equal(player_name[i], name) && player_id[i] != id) {
                
                    format(a, charsmax(a), player_name[id])
                    format(player_name[id], charsmax(name), name)
                    format(player_name[i], charsmax(a), a)   
                    
                    break
                }
                else checks++
            }
            
            if(checks >= pl) {
                server_cmd("kick #%d  ^"Вы не участвуете в этом матче.^"", get_user_userid(id))
                
                return PLUGIN_HANDLED
            }
    
            player_status[id] = ready
            ready_players++
        
            client_print(0, print_chat, "** Игрок %s вернулся в игру.", player_name[id])
        }
        
        case warmup: {
            player_status[id] = nready
            player_stop[id] = nready
            
            format(player_name[id], 31, name)
            player_id[id] = id
            
            client_print(id, print_chat, "** Пропиши !r для готовности и матч начнется.")
        }
    }
    
    return PLUGIN_CONTINUE
}
Я так понимаю , что мне нужна только вот эта часть , но в какое место нужно его вставить? :

Код:
public check_status() {
    static name[32], message[191], len
    new players[32], players_num
    
    get_players(players, players_num, "h")
    
    switch(game_status) {
        case warmup, change: {
            if(players_num == pl && ready_players == pl) start_match()
            
            else if(players_num == pl && ready_players != pl) {
                len = format(message[len], charsmax(message), "** Ожидаем готовности игроков:")
        
                for(new id = 0; id <= players_num; id++) {
                    if(is_user_connected(players[id])) {
                        if(!player_status[players[id]]) {
                            get_user_name(players[id], name, charsmax(name))
                            len += format(message[len], charsmax(message), " %s", name)
                        }
                    }
                }
                
                client_print(0, print_chat, message)
            }
            else if(players_num < pl) {
                client_print(0, print_chat, "** Для старта матча не хватает игроков.")
            }   
        }
    }
}
 
Сообщения
162
Реакции
4
Помог
3 раз(а)
Можно закрыть. В моде реализована такая функция через квар pug_force_ready_kick .
 
Статус
В этой теме нельзя размещать новые ответы.

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

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