Нашел тутор, по которому сделал подбор оружия в стиле Halo. Т.е. в один слот можно поместить только одно оружие. Чтобы оружие сменить надо подойти к стволу который лежит на земле, нажать "использовать".
Вопрос такого плана, я ковыряюсь в tri.cpp, каким условием можно оттуда проверить находиться ли в зоне досягаемости игрока оружие, и что это за оружие?
я в Си абсолютный 0, просто подумал, что можно сделать по аналогии с Blood Overlay (тутор есть на форуме), только условие заменить. Так что, просьба к адептам C++ особо не смеяться
[)r0n надо сделать трейс от игрока, который будет проверять, что за энтитя находится в месте, куда направлен прицел. Штоб сильно не грузить проц, можно этот трейс делать не постоянно, а в момент нажатия кнопочки "USE". И проверять энтитю по имени класса. А потом уже можно и на клиент мессагу отправлять, если понадобится.
[)r0n писал: Имелось в виду как все таки узнать, что за оружие перед игроком на сервере.
ну что конкретно узнать?
делаем UTIL_FindEntityInSphere, проверяем класснейм на 'weapon_", если совпадает делаем преобразование в CBasePlayerWeapon и вызываем GetItemInfo. А там уже глядим что это за пушка и чего в ней.
Я так понял, оружие у тебя подбирается юзанием. Нужно при подбирании какой-либо пушки ставить игроку определённый флаг или переменную. Если есть флаг - значит у игрока есть пушка, значит вторая пушка, ставящая игроку такой же флаг не подберётся. Теперь делаем трейс, проверяем, если пушка с другим флагом, то она подбирается, если с таким же - старая выкидывается, новая подбирается.