Шапка. SetVariantString

Alnet

Участник
Сообщения
39
Реакции
0
Здравствуйте, написал свой плагин шапок, но столкнулся с той-же проблемой что и все скриптеры которые пытались сделать шапки для CSGO.

Выяснилось что не все модели имеют forward - голову... (что странно т.к она есть и в ее можно убить игрока с этой моделью) - Сразу прошу читателя поправить меня если я сделал не верное утверждение.

Пытаюсь привязать шапку SetVariantString("forward"); к ГОЛОВЕ - ниче не выходит (мое предположение по этому поводу выше)

Можно попробовать SetVariantString("primary"); к СПИНЕ - тут как не кручу-верчу не могу подобрать нужные Ang и Pos чтоб посадить ее на голову.. Да и когда почти подобрал - шапка в один момент сама почему-то разворачивается не так как надо и не становится в исходное положение(

Можно оставить шапку в ногах и поднять ее на голову, но при этом она будет спадать при прыжке или присесте..

Я буду еще ковыряться и искать самое оптимальное решение этой задачи, но хотел бы поинтересоваться у вас, может быть вы уже нашли решение? Если да - то поделитесь пожалуйста и заодно объясните почему вы выбрали этот вариант.
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
PHP:
        decl Float:m_fHatOrigin[3];
        decl Float:m_fHatAngles[3];
        decl Float:m_fForward[3];
        decl Float:m_fRight[3];
        decl Float:m_fUp[3];
        GetClientAbsOrigin(client,m_fHatOrigin);
        GetClientAbsAngles(client,m_fHatAngles);
      
        m_fHatAngles[0] += 0.0;
        m_fHatAngles[1] += 70.0;
        m_fHatAngles[2] += 0.0;
      
        new Float:m_fOffset[3];
        m_fOffset[0] = 0.0;
        m_fOffset[1] = 0.0;
        m_fOffset[2] = 0.0;
      
        GetAngleVectors(m_fHatAngles, m_fForward, m_fRight, m_fUp);
      
        m_fHatOrigin[0] += m_fRight[0]*m_fOffset[0]+m_fForward[0]*m_fOffset[1]+m_fUp[0]*m_fOffset[2];
        m_fHatOrigin[1] += m_fRight[1]*m_fOffset[0]+m_fForward[1]*m_fOffset[1]+m_fUp[1]*m_fOffset[2];
        m_fHatOrigin[2] += m_fRight[2]*m_fOffset[0]+m_fForward[2]*m_fOffset[1]+m_fUp[2]*m_fOffset[2];
      

        new m_iEnt = CreateEntityByName("prop_dynamic_override");
        DispatchKeyValue(m_iEnt, "model", model);
        DispatchKeyValue(m_iEnt, "spawnflags", "256");
        DispatchKeyValue(m_iEnt, "solid", "0");
        SetEntPropEnt(m_iEnt, Prop_Send, "m_hOwnerEntity", client);
      
        DispatchSpawn(m_iEnt);  
        AcceptEntityInput(m_iEnt, "TurnOn", m_iEnt, m_iEnt, 0);

        TeleportEntity(m_iEnt, m_fHatOrigin, m_fHatAngles, NULL_VECTOR);
          
        SetVariantString("!activator");
        AcceptEntityInput(m_iEnt, "SetParent", client, m_iEnt, 0);
          
        SetVariantString("facemask");
        AcceptEntityInput(m_iEnt, "SetParentAttachmentMaintainOffset", m_iEnt, m_iEnt, 0);

Потому что так работает.
 
Сверху Снизу