![]() |
Страницы (252): « Первая ... « 233 234 235 236 [237] 238 239 240 241 » ... Последняя » Показать все 3768 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Нубские вопросы от <censored> и других нубов (https://hlfx.ru/forum/showthread.php?threadid=4535)
илья2 ну вот нафига? pev->weapons передаёт битовую маску, а не десятичное число с номером оружия. WEAPON_NONE и так по-умолчанию имеется у игрока. Вылет происходит на этапе какой-то проверки на нулёвость, которых тонна на сервере и на клиенте. А зачем вообще занимать нулевой Id? Их же 29 или 30 штук доступно.
WEAPON_NONE - это 0. Сам подумай, можно ли на ноль что-то вешать.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
Илья
Если оружие невозможно убрать - ему не нужен никакой идентификатор.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
илья2 номер Id не влияет на слот, занимаемый оружием. Вот так у монтировки:
p->iSlot = 0; |
p->iPosition = 0; |
p->iId = WEAPON_CROWBAR; // 1 |
__________________
Илья
как убрать оружие с инвентаря игрока ? есть ли код для этого ?
__________________
Илья
Энтитя player_weaponstrip. Только она убирает ВСЕ оружия и опционально костюм. Но можно дописать ей функционал выборочного убирания оружия.
__________________
Илья
1 | int i; |
2 | CBasePlayerItem *pPendingItem; |
3 | for (i = 0; i < MAX_ITEM_TYPES; i++) |
4 | { |
5 | m_pActiveItem = m_rgpPlayerItems[i]; |
6 | while (m_pActiveItem) |
7 | { |
8 | pPendingItem = m_pActiveItem->m_pNext; |
9 | m_pActiveItem->Drop( ); |
10 | m_pActiveItem = pPendingItem; |
11 | } |
12 | m_rgpPlayerItems[i] = NULL; |
13 | } |
14 | m_pActiveItem = NULL; |
CBasePlayer *pPlayer; |
pPlayer->RemoveAllItems("weapon_crowbar"); |
Помнится для корректного выбрасывания пушки в P2 я довольно много кода дописывал. Там по нормальному не сделаешь.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша для выбрасывания да. А для удаления уже всё есть в RemovePlayerItem.
а если поставить несуществующую позицию и слот. оружие удалиться из худа ?
например так:
p->iSlot = -1;
p->iPosition = -1;
или так
p->iSlot = NULL;
p->iPosition = NULL;
Добавлено 06-09-2022 в 13:43:
проверил работает. Надо было самого начала так сделать не догадался малек.
Добавлено 06-09-2022 в 13:47:
все оказывается просто было и не надо было изобретать велосипед
Добавлено 06-09-2022 в 14:11:
вот так это в принципе и работает кулаки которые без костюма находятся на -1 слоте и позиции а когда достаем и одеваем костюм то кулаки уже в костюме ну в общем как в brutal half-life
https://youtu.be/yP448eB-0eY
__________________
Илья
Временная зона GMT. Текущее время 13:38. | Страницы (252): « Первая ... « 233 234 235 236 [237] 238 239 240 241 » ... Последняя » Показать все 3768 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2023