В команде нет мест

Тема в разделе "Counter-Strike: Global Offensive", создана пользователем Tomich, 16 авг 2016.

  1. Tomich

    Tomich

    Сообщения:
    52
    Симпатии:
    7
    Доброго, помогите пожалуйста не могу понять почему, значит есть такие карты на прохождение в мини геймах, так вот там есть карта пила, там 64 спавна для тероров, сервер из 20 человек пытается зайти за тероров, но пишет что В команде нет мест, и если нажать на команду теров то тебя кикнет в гл меню, использовал этот плагин [CS:GO] Team Limit Bypass - AlliedModders , но он не работает хотя установлен и eror не создает. Прошу помочь как решить данную проблему.
    [​IMG]
    [​IMG]
    [​IMG]
    [​IMG]
     
  2. Someone

    Someone

    Сообщения:
    136
    Симпатии:
    44
    Попробуй лучше этот фикс:
     

    Вложения:

  3. Tomich

    Tomich

    Сообщения:
    52
    Симпатии:
    7
    можно не исходник а smx, плез.
     
  4. Someone

    Someone

    Сообщения:
    136
    Симпатии:
    44
    Ну держи.
     

    Вложения:

    SynZilla нравится это.
  5. Tomich

    Tomich

    Сообщения:
    52
    Симпатии:
    7
    так же можно расшифровку как он работает :)?
     
    Kolya нравится это.
  6. Someone

    Someone

    Сообщения:
    136
    Симпатии:
    44
    Просто закидываешь и если все ровно, то не будет появляться сообщение "В команде нет мест".
     
    Tomich нравится это.
  7. Tomich

    Tomich

    Сообщения:
    52
    Симпатии:
    7
    Все работает.
     
    Последнее редактирование: 5 сен 2016
  8. Kolya

    Kolya

    Сообщения:
    51
    Симпатии:
    3
    Все ок, но смотри, в Spawntools все выставлено на Т, ни единого места за КТ. Но почему то на изи можно зайти за КТ и раунд сбивается.
    Чем можно помочь, как вылечить эту проблему?
    (Все слоты за Т только выставлены)
     
  9. Someone

    Someone

    Сообщения:
    136
    Симпатии:
    44
    Хм, может вот так ?
    Зайти можно будет только за Т.

    PHP:
    #pragma semicolon 1

    #include <sourcemod>

    public Action:OnJoinTeam(client, const String:command[], argc)
    {
        if (!
    IsClientInGame(client))
        {
            return 
    Plugin_Continue;
        }
     
        
    int iTeam GetClientTeam(client);
     
        if (
    iTeam 1)
        {
            return 
    Plugin_Continue;
        }
     
        
    decl String:arg1[255];
        
    GetCmdArg(1arg1sizeof(arg1));
     
        
    int desiredteam StringToInt(arg1);
        if (
    desiredteam <= || desiredteam )
        {
            return 
    Plugin_Continue;
        }
     
        
    ChangeClientTeam(clientdesiredteam);
        return 
    Plugin_Continue;
    }
    Оффтоп
     
    Kolya нравится это.
  10. Kolya

    Kolya

    Сообщения:
    51
    Симпатии:
    3
    Спасибо, попробую :air_kiss:
     
  11. ludanik

    ludanik

    Сообщения:
    60
    Симпатии:
    13
    @Someone, тут можно упростить
    Код:
        if (!IsClientInGame(client))
        {
            return Plugin_Continue;
        }
        int iTeam = GetClientTeam(client);
        if (iTeam > 1)
        {
            return Plugin_Continue;
        }
    заменяешь на это
    Код:
    if (!IsClientInGame(client) || GetClientTeam(client) > 1) return Plugin_Continue;
    и
    Код:
        if (desiredteam <= 1 || desiredteam > 2 )
        {
            return Plugin_Continue;
        }
    заменяешь на это
    Код:
    if (desiredteam < 2 || desiredteam > 2) return Plugin_Continue;
    Слишком большой массив decl String:arg1[255]; > decl String:arg1[5];
    Ты не зарегистрировал команду OnJoinTeam

    Тем самым получится меньше коду.
     
    Последнее редактирование: 30 ноя 2016 в 12:09
    Kolya нравится это.
  12. Grey83

    Grey83

    Сообщения:
    317
    Симпатии:
    93
    Вообще-то лучше тогда if(desiredteam != 2) return Plugin_Continue;
    Тогда уж сразу так сделать:
    PHP:
    #pragma semicolon 1

    #include <sourcemod>

    public OnPluginStart()
    {
        
    AddCommandListener(OnJoinTeam"jointeam");
    }

    public 
    Action:OnJoinTeam(client, const String:command[], argc)
    {
        if (!
    client || !IsClientInGame(client))
            return 
    Plugin_Continue;

        
    ChangeClientTeam(client2);

        return 
    Plugin_Continue;
    }
    Так при выборе любой команды будет кидать за теров
     
    Последнее редактирование: 30 ноя 2016 в 14:39
    Kolya нравится это.
  13. Someone

    Someone

    Сообщения:
    136
    Симпатии:
    44
    Когда-то делал подобное. У меня так игроков в команду не пускало, а после вообще не давало выбрать ее. Могу ошибаться.
     
    Kolya нравится это.
  14. ludanik

    ludanik

    Сообщения:
    60
    Симпатии:
    13
    можно и так, но я писал в его случае.

    Мой вариант:
    Код:
    #pragma semicolon 1
    
    public OnPluginStart() {
        AddCommandListener(ChooseTeam, "jointeam");
    }
    
    public Action:ChooseTeam(client, const String:command[], args) {
        if (!client || !IsClientInGame(client)) return Plugin_Handled;
     
        new String:text[5];
     
        GetCmdArgString(text, sizeof(text));
        StripQuotes(text); TrimString(text);
        if (StringToInt(text) > 1) {
            ChangeClientTeam(client, 2);
            return Plugin_Handled;
        }
     
        return Plugin_Continue;
    }
    При выборе любой команды (кроме наблюдателей), будет кидать за Террористов.
     
    Последнее редактирование: 30 ноя 2016 в 15:51
    Kolya нравится это.
  15. Kolya

    Kolya

    Сообщения:
    51
    Симпатии:
    3
    Спасибо ребята. Люблю вас :*
     
  16. Kanny

    Kanny

    Сообщения:
    30
    Симпатии:
    0