[CSGO] Не корректное измиенение скина для оружки

Тема в разделе "Программирование / Скриптинг", создана пользователем KGB1st, 10 авг 2015.

  1. KGB1st

    KGB1st

    Сообщения:
    60
    Симпатии:
    0
    В общем есть скриптик, который выдает юзверу пак оружки, из этого пака ID первичного и вторичного (автомта и пекаля) записываются в переменную. Затем уже циклом обрабатываются. Смысл весь в том что я несилен в тонкостях этих махинаций. Код нарыл на оленях, дописало под себя. Но встал в тупик когда заметил что игроки порой не видят скинов на оружии. Как это проявляется? Игрок берёт два ствола, обоим присваивается скин градиент. Но часто игроки с противоположной команды не видят этот скин. Пробовали со знакомым перевзять скины, подходили к друк другу в игре, еще раз брали оружку - тогда скин уже было видно обоим. Не пойму из-за чего..

    PHP:
    ...
    {
            
    Weaponsclient ][ ] = GivePlayerItemclient"weapon_ak47" );
            
    Weaponsclient ][ ] = GivePlayerItemclient"weapon_p250" );
            for( 
    int x2x++ )
            {
                
    int m_iItemIDHigh GetEntPropWeaponsclient ][ ], Prop_Send"m_iItemIDHigh" );
                
    int m_iItemIDLow GetEntPropWeaponsclient ][ ], Prop_Send"m_iItemIDLow" );

                
    SetEntPropWeaponsclient ][ ], Prop_Send"m_iItemIDLow"2048 );
                
    SetEntPropWeaponsclient ][ ], Prop_Send"m_iItemIDHigh");
                
    SetEntPropWeaponsclient ][ ], Prop_Send"m_nFallbackPaintKit"38 );
                
                
    Handle pack;
                
                
    CreateDataTimer2.0RestoreItemIDpack );
                
                
    WritePackCellpackWeaponsclient ][ ] );
                
    WritePackCellpackm_iItemIDHigh );
                
    WritePackCellpackm_iItemIDLow );
            }
            return 
    Plugin_handled;
    }

    public 
    Action RestoreItemIDHandle timerHandle pack )
    {
        
    int entity;
        
    int m_iItemIDHigh;
        
    int m_iItemIDLow;
        
        
    ResetPackpack );
        
        
    entity ReadPackCellpack );
        
    m_iItemIDHigh ReadPackCellpack );
        
    m_iItemIDLow ReadPackCellpack );
        
        if( 
    IsValidEdictentity ) )
        {
            
    SetEntPropentityProp_Send"m_iItemIDHigh"m_iItemIDHigh );
            
    SetEntPropentityProp_Send"m_iItemIDLow"m_iItemIDLow );
        }

    }

    P.S. лично думаю что pack надо создавать для каждого юзера в отдельности. Не пробовал.
     
  2. komashchenko

    komashchenko

    Сообщения:
    479
    Симпатии:
    421
    PHP:
    {
            
    Weaponsclient ][ ] = GivePlayerItemclient"weapon_ak47" );
            
    Weaponsclient ][ ] = GivePlayerItemclient"weapon_p250" );
            for( 
    int x2x++ )
            {
                
    SetEntPropWeaponsclient ][ ], Prop_Send"m_iItemIDHigh", -1);
                
    SetEntPropWeaponsclient ][ ], Prop_Send"m_nFallbackPaintKit"38 );
            }
            return 
    Plugin_handled;
    }
     
  3. KGB1st

    KGB1st

    Сообщения:
    60
    Симпатии:
    0
    Спасибо. Попробую после работы.

    Оффтоп
     
  4. komashchenko

    komashchenko

    Сообщения:
    479
    Симпатии:
    421
    Оффтоп
     
  5. KGB1st

    KGB1st

    Сообщения:
    60
    Симпатии:
    0
    А ну это я читал, и от туда же выдрал код. Вот только я там мало чего понял.
     
  6. KGB1st

    KGB1st

    Сообщения:
    60
    Симпатии:
    0
    У меня впорос, а что каждый новый раунд ID оружия сбрасывается. А то бывает бежишь с фейк оружием, и игрок все равно подбирает другое, как буд-то у тебя нет вообще оружия.