Half-Life и Adrenaline Gamer форум
http://www.aghl.ru/forum/

Одна пушка в одном слоте (или как запретить подъем оружия)
http://www.aghl.ru/forum/viewtopic.php?f=42&t=3177
Страница 2 из 2

Автор:  russia [ 29 сен 2020, 22:50 ]
Заголовок сообщения:  Re: Одна пушка в одном слоте (или как запретить подъем оружи

Ок.

А вообще в идеале я как вижу:

Отловить касание с конкретной пушкой через какой ни будь Ham_Touch можно в коде самой пушки. В этом же коде (или где то еще) должен быть массив с именами оружий, которые не носятся одновременно.
{
Получаем наличие инвентаря у игрока, сравниваем с нашим массивом

если есть совпадения, то пушка не берется
}

Еще должен быть слушатель на касание с аммобоксом
{
получаем название пухи в аммобоксе
сравниваем с массивом

если есть совпадения
блочим
}

Получается здесь мне не понятны 3 вещи :unknown: :
1. как отловить косание с пушкой впнмода
2. как заблочить поднятие
3. как проверить что в аммобоксе

Автор:  russia [ 05 окт 2020, 20:33 ]
Заголовок сообщения:  Re: Одна пушка в одном слоте (или как запретить подъем оружи

Драсте)) Не хочу показаться навязчивым, но есть ли какие ни будь движения по данной теме???

Автор:  Safety1st [ 06 окт 2020, 00:13 ]
Заголовок сообщения:  Re: Одна пушка в одном слоте (или как запретить подъем оружи

Пока нет.

Автор:  russia [ 05 ноя 2020, 18:56 ]
Заголовок сообщения:  Re: Одна пушка в одном слоте (или как запретить подъем оружи

Хотел бы просто напомнить о том, что данная тема еще существует :)

Автор:  Safety1st [ 05 ноя 2020, 19:44 ]
Заголовок сообщения:  Re: Одна пушка в одном слоте (или как запретить подъем оружи

:good:

Автор:  russia [ 16 дек 2020, 16:15 ]
Заголовок сообщения:  Re: Одна пушка в одном слоте (или как запретить подъем оружи

Вопрос на засыпку:
вот есть форварды Deploy (когда игрок достал пушку) и Holster (когда убрал либо выкинул)
А как то возможно отловить моменты, когда игрок взял, но не достал определенную пушку, и когда игрок выкинул (именно выкинул, а не просто убрал) определенную пушку?

Автор:  Turanga_Leela [ 16 дек 2020, 20:18 ]
Заголовок сообщения:  Re: Одна пушка в одном слоте (или как запретить подъем оружи

russia
про добавление предмета/оружия почитай тут:
https://amx-x.ru/viewtopic.php?f=8&t=36805&start=30

а что касательно дропа, то можно отловить консольную команду, она так и называется 'drop'
пример хука:
https://forums.alliedmods.net/showthread.php?t=115972

на будущее, если хочешь что-то отловить, то попробуй сперва посмотреть константы ham модуля, например - найди в файлах amxx эту константу: "Ham_AddPlayerItem", там же будут и другие, по названиям можно подобрать похожую константу для интересующего тебя ивента, ну а потом погуглить пример задания хука.

Автор:  russia [ 17 дек 2020, 15:15 ]
Заголовок сообщения:  Re: Одна пушка в одном слоте (или как запретить подъем оружи

Отловить дропом как варинт возможно :) но для этого нужно знать что именно дропнулось. От сюда сразу же вопрос: как получить название пушки Weapon Mod находящейся в руках, если текущий слушатель будет находиться в коде стороннего плагина? Во всяком случае я пробовал и мне это сделать не удалось, все стандартные функции не работают с Weapon mod, не пробовал еще только нативами.

А вообще моя затея вот какая:
Создаем отдельный плагин с одной функцией в которой хранится 1 (если оружие есть у игрока) или 0 (если оружия у него нет)
Когда игрок подобрал пушку через натив отправляем в нашу, вышеупомянутую, функцию 1. Когда он ее выбрасывает (стало быть пишет в консоль drop) или умирает, таким же образом отправляем в функцию 0.

Дальше нужно использовать Ham_Touch, который опять же НЕ срабатывает с пушками Weapon Mod :( получаем нативом содержимое нашей функции, если 1 - блокируем подбор, если 0 - подбираем. Как видно не все hamы срабатывают с оружием данного модуля :)

Страница 2 из 2 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/