Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 5 из 5
  1. #1
    Аватар для m1n1vv
    Пользователь

    Статус
    Оффлайн
    Регистрация
    09.09.2015
    Сообщений
    541
    Репутация:
    78 ±

    Правильно ли построил условия

    Привет. Хочу убедиться в правильности условия. А если если есть возможность, то и упростить.

    Цель:
    Если kill_detected больше нуля, то иконка игрока красного цвета, а если еще BagWithMoneyPlayer равно 1, то чередуются красного и желтого цвета. В противном случае прозрачная иконка.
    Работает в секундном таймере.

    PHP код:
    if (kill_detected[playerid] != 0// if (kill_detected[playerid])
    {
        
    kill_detected[playerid]--;

        if (
    BagWithMoneyPlayer{playerid} == 1)
        {
            if (
    kill_detected[playerid] % == 0)
            {
                
    SetPlayerColor(playeridCOLOR_RED1); // красный
            
    }
            else
            {
                
    SetPlayerColor(playeridCOLOR_BIGMONEY); // желтый
            
    }
        }
        else
        {
            
    SetPlayerColor(playeridCOLOR_RED1); // красный
        
    }
    }
    else
    {
        
    SetPlayerColor(playeridCOLOR_WHITE_A); // прозрачный

      Открыть/закрыть
    PHP код:
    if (kill_detected[playerid])
    {
        
    kill_detected[playerid]--;

        if (
    BagWithMoneyPlayer{playerid})
        {
            if (
    kill_detected[playerid] % == 0)
            {
                
    SetPlayerColor(playeridCOLOR_RED1);
            }
            else
            {
                
    SetPlayerColor(playeridCOLOR_BIGMONEY);
            }
        }
        else
        {
            
    SetPlayerColor(playeridCOLOR_RED1);
        }
    }
    else
    {
        
    SetPlayerColor(playeridCOLOR_WHITE_A);

    Последний раз редактировалось m1n1vv; 08.10.2016 в 21:39.

  2. #2
    Аватар для Geebrox
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.08.2015
    Адрес
    Ташкент
    Сообщений
    375
    Репутация:
    97 ±
    PHP код:
    if(kill_detected[playerid])
    {
        
    kill_detected[playerid]--;

        if(
    BagWithMoneyPlayer{playerid})
            
    SetPlayerColor(playerid
                (
    kill_detected[playerid] % 2) ? COLOR_BIGMONEY COLOR_RED1);
        else
            
    SetPlayerColor(playeridCOLOR_RED1);
    }
    else
        
    SetPlayerColor(playeridCOLOR_WHITE_A); 
    Могу предложить такой вариант, если конечно до этого твой код нормально функционировал
    Последний раз редактировалось Geebrox; 08.10.2016 в 22:23.
    Респект:
    @DeimoS
    @ziggi
    @Daniel_Cortez

  3. Пользователь сказал cпасибо:
    m1n1vv (09.10.2016)
  4. #3
    Аватар для m1n1vv
    Пользователь

    Статус
    Оффлайн
    Регистрация
    09.09.2015
    Сообщений
    541
    Репутация:
    78 ±
    Все же есть ошибка в построении. Если kill_detected равно 0, а BagWithMoneyPlayer нет. Нет вероятности исключительно для желтой иконки.

    PHP код:
    if (kill_detected[playerid] && BagWithMoneyPlayer{playerid})
    {
        
    kill_detected[playerid]--;
        
    SetPlayerColor(playerid, (kill_detected[playerid] % 2) ? COLOR_RED1 COLOR_BIGMONEY);
    }
    else if (
    kill_detected[playerid])
    {
        
    kill_detected[playerid]--;
        
    SetPlayerColor(playeridCOLOR_RED1);
    }
    else if (
    BagWithMoneyPlayer{playerid})
    {
        
    SetPlayerColor(playeridCOLOR_BIGMONEY);
    }
    else
    {
        
    SetPlayerColor(playeridCOLOR_WHITE_A);

    Последний раз редактировалось m1n1vv; 10.10.2016 в 01:54.

  5. #4
    Аватар для Saibot
    Пользователь

    Статус
    Оффлайн
    Регистрация
    21.08.2016
    Сообщений
    58
    Репутация:
    24 ±
    PHP код:
    if(-- kill_detected[playerid] != 0)
    {
        
    SetPlayerColor(playerid,
        (
            !
    BagWithMoneyPlayer{playerid} ? COLOR_RED1 COLOR_BIGMONEY)
        );
    }
    else
        
    SetPlayerColor(playerid,
        (
            !
    BagWithMoneyPlayer{playerid} ? COLOR_WHITE_A COLOR_BIGMONEY)
        ); 

  6. 2 пользователя(ей) сказали cпасибо:
    Danny_Marcelo (16.10.2016) m1n1vv (10.10.2016)
  7. #5
    Аватар для m1n1vv
    Пользователь

    Статус
    Оффлайн
    Регистрация
    09.09.2015
    Сообщений
    541
    Репутация:
    78 ±
    Цитата Сообщение от Saibot Посмотреть сообщение
    PHP код:
    if(-- kill_detected[playerid] != 0)
    {
        
    SetPlayerColor(playerid,
        (
            !
    BagWithMoneyPlayer{playerid} ? COLOR_RED1 COLOR_BIGMONEY)
        );
    }
    else
        
    SetPlayerColor(playerid,
        (
            !
    BagWithMoneyPlayer{playerid} ? COLOR_WHITE_A COLOR_BIGMONEY)
        ); 
    Спасибо. Но тогда kill_detected[playerid] станет меньше нуля, и упустил кратность. Получается такое:

    PHP код:
    if(kill_detected[playerid])
    {
        
    kill_detected[playerid]--;
        
    SetPlayerColor(playerid
        (
            (!
    BagWithMoneyPlayer{playerid}) ?
            
    COLOR_RED1 : ((kill_detected[playerid] % 2) ? COLOR_RED1 COLOR_BIGMONEY))
        );
    }
    else
    {
        
    SetPlayerColor(playerid, (!BagWithMoneyPlayer{playerid}) ? COLOR_WHITE_A COLOR_BIGMONEY);

    )
    Последний раз редактировалось m1n1vv; 10.10.2016 в 06:58.

 

 

Информация о теме

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

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •