Русское сообщество по скриптингу

Как добавить выстрел по ПКМ  [Решено]

Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.

Модераторы: Subb98, liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.

Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.

Как добавить выстрел по ПКМ

Сообщение provaider » 22 фев 2018, 09:17

Если у оружия нету действий по ПКМ как добавить туда выстрел как по ЛКМ? Без
Код: Выделить всё
FM_CmdStart
не обойтись или как-то по другому можно? Спасибо!
Аватара пользователя
provaider
 
Сообщения: 86
Зарегистрирован: 21 дек 2017, 20:17
Забанен
Благодарил (а): 38 раз.
Поблагодарили: 4 раз.
Языки программирования: Pawn
SourcePawn
C++
Php
Ruby
Python
C#

Re: Как добавить выстрел по ПКМ  [Решено]

Сообщение DeMNiX » 22 фев 2018, 10:27

либо в постфрейме чекать нажатие IN_ATTACK2
либо, если есть reapi, использовать оффсет m_Weapon_bHasSecondaryAttack
Работа с моделями для кс 1.6
Telegram @DeMNiX
vk com/sbalburov
Аватара пользователя
DeMNiX
 
Сообщения: 177
Зарегистрирован: 24 сен 2011, 17:48
Благодарил (а): 25 раз.
Поблагодарили: 37 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: Как добавить выстрел по ПКМ

Сообщение flymic24 » 22 фев 2018, 10:34

provaider, К примеру:
Код: Выделить всё
Ham_Item_PostFrame

с проверкой на нажатие кнопки IN_ATTACK2 - это и есть вторичная атака.

А вообще, нужно смотреть что за оружие.
Аватара пользователя
flymic24
 
Сообщения: 209
Зарегистрирован: 05 окт 2012, 17:29
Откуда: Bryansk
Благодарил (а): 4 раз.
Поблагодарили: 76 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: Как добавить выстрел по ПКМ

Сообщение provaider » 22 фев 2018, 11:55

DeMNiX писал(а):либо в постфрейме чекать нажатие IN_ATTACK2
либо, если есть reapi, использовать оффсет m_Weapon_bHasSecondaryAttack

Спасибо, всё работает. Но... как сделать чтобы оно 1 раз вызывалось? А то не стрельба, а speedhack какой-то))

Код: Выделить всё
    if(pev(player_id, pev_button) & IN_ATTACK2)
        ExecuteHamB(Ham_Weapon_PrimaryAttack,weapon_id);

пробовал вот так
Код: Выделить всё
    if(pev(player_id, pev_oldbuttons) & ~IN_ATTACK2)
        ExecuteHamB(Ham_Weapon_PrimaryAttack,weapon_id);

тоже самое((
Аватара пользователя
provaider
 
Сообщения: 86
Зарегистрирован: 21 дек 2017, 20:17
Забанен
Благодарил (а): 38 раз.
Поблагодарили: 4 раз.
Языки программирования: Pawn
SourcePawn
C++
Php
Ruby
Python
C#

Re: Как добавить выстрел по ПКМ

Сообщение flymic24 » 22 фев 2018, 13:22

provaider,
Код: Выделить всё
#define m_flNextSecondaryAttack        47
#define extra_offset_weapon        4

new iButton pev(player_idpev_button);

if((
iButton IN_ATTACK2) && get_pdata_float(weapon_idm_flNextSecondaryAttackextra_offset_weapon) < 0.0)    {
    
ExecuteHamB(Ham_Weapon_PrimaryAttackweapon_id);
    
    
set_pdata_float(weapon_idm_flNextSecondaryAttack0.1extra_offset_weapon);
    
    
set_pev(player_idpev_buttoniButton & ~IN_ATTACK2);
}

0.1 задержка на следующий выстрел
Аватара пользователя
flymic24
 
Сообщения: 209
Зарегистрирован: 05 окт 2012, 17:29
Откуда: Bryansk
Благодарил (а): 4 раз.
Поблагодарили: 76 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: Как добавить выстрел по ПКМ

Сообщение provaider » 22 фев 2018, 13:48

flymic24, мде, провтыкал, спасибо что "носом ткнули"!!

Добавлено спустя 23 минуты 13 секунд:
А можно отловить с какой кнопки был произведен выстрел?
Аватара пользователя
provaider
 
Сообщения: 86
Зарегистрирован: 21 дек 2017, 20:17
Забанен
Благодарил (а): 38 раз.
Поблагодарили: 4 раз.
Языки программирования: Pawn
SourcePawn
C++
Php
Ruby
Python
C#

Re: Как добавить выстрел по ПКМ

Сообщение flymic24 » 22 фев 2018, 14:27

Можно !! Способ реализации будет зависеть от конечной цели
Аватара пользователя
flymic24
 
Сообщения: 209
Зарегистрирован: 05 окт 2012, 17:29
Откуда: Bryansk
Благодарил (а): 4 раз.
Поблагодарили: 76 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: Как добавить выстрел по ПКМ

Сообщение provaider » 22 фев 2018, 18:15

flymic24 писал(а):Можно !! Способ реализации будет зависеть от конечной цели

А конкретней, на словах. Просто выводить в чат с какой кнопки был произведён выстрел...
Аватара пользователя
provaider
 
Сообщения: 86
Зарегистрирован: 21 дек 2017, 20:17
Забанен
Благодарил (а): 38 раз.
Поблагодарили: 4 раз.
Языки программирования: Pawn
SourcePawn
C++
Php
Ruby
Python
C#

Re: Как добавить выстрел по ПКМ

Сообщение Hilarious » 22 фев 2018, 19:26

Самый простой - записать в массив.
В матрице :-[
Аватара пользователя
Hilarious
 
Сообщения: 69
Зарегистрирован: 07 фев 2018, 08:46
Благодарил (а): 6 раз.
Поблагодарили: 29 раз.

Re: Как добавить выстрел по ПКМ

Сообщение provaider » 23 фев 2018, 12:23

Hilarious писал(а):Самый простой - записать в массив.

А правильный?
Аватара пользователя
provaider
 
Сообщения: 86
Зарегистрирован: 21 дек 2017, 20:17
Забанен
Благодарил (а): 38 раз.
Поблагодарили: 4 раз.
Языки программирования: Pawn
SourcePawn
C++
Php
Ruby
Python
C#


Вернуться в Скриптинг

Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и гости: 18