Разбор скрипта

Нужно что бы функция считала игроков за кт что не так)??


  • Всего проголосовало
    2
Q

Qujeck

int Ct_player
int Team
for(new cl; ++cl <= MaxClients;){
if(!IsClientInGame(cl)&&GetClientTeam(Team);){
if(Team !== 1&& !==2 &&!==0){
Ct_player++
}
}
 

gibs

Фитиль народного волненья
Сообщения
722
Реакции
407
Мошенник
Я не хочу тебя унизить или нечто такое, но в этом кусочке столько ошибок, что тебе следует освоить хотя бы основы элементарной логики. Ну а так же работу элементарных конструкций самого языка.
 

Kailo

Участник
Сообщения
194
Реакции
896
Много не так (Используйте коды [ php ][ /php ] для кода).
1) Не правильная логика верхнего условия
Код надо выполнять когда и игрок в игре, а тебя обратная проверка.
Проверка результата GetClientTeam лишняя
2) Не правильное использование GetClientTeam
3) ';' внутри верхнего условия
4) кривые операторы в нижнем условии
5) не хватает одной '}'
6) перемешка синтаксиса, где-то int, а где-то new
7) в SourcePawn нет оператора !==, только !=
8) Зачем проверять не находится ли игрок в других командах, когда можно проверить просто находится ли он в кт?
исправленный код
PHP:
int Ct_player
for(int cl; ++cl <= MaxClients;){
    if(IsClientInGame(cl) && GetClientTeam(cl) == 3) {
            Ct_player++
    }
}
а так выглядел бы ваш правильный код
PHP:
int Ct_player
int Team
for(int cl; ++cl <= MaxClients;){
if(IsClientInGame(cl)){
    Team = GetClientTeam(cl)
    if(Team != 1 && Team != 2 && Team != 0){
        Ct_player++
    }
}

P.S. так for выглядел бы красивее и понятнее
PHP:
for (int cl = 1; cl <= MaxClients; cl++)
 
Последнее редактирование:
Сверху Снизу