Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

изменить кнопку

Kasper55
сообщение 30.10.2014, 17:52
Сообщение #1
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

Есть плагин пинок , но там юзается на кнопку E а нужно на V , как я понял вот эта кнопка IN_USE но как изменить я так и не понял

Код:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <fakemeta_util>
#include <hamsandwich>
#include <engine>
#include <cstrike>
#include <zombieplague>

#define PLUGIN "[CSO] Foot Kick"
#define VERSION "0.0.1.4"
#define AUTHOR "PlaneShift1231"

#define gModels "models/cso/v_foot.mdl"

new const gSounds[][] = {
"cso/foot_slash.wav",
"cso/foot_kick.wav" } ;

new bool: gFootKick[33] ;

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR) ;
RegisterHam(Ham_Player_PreThink, "player", "PlayerPreThink") ; }

public plugin_precache() {
precache_sound(gSounds[0]) ;
precache_sound(gSounds[1]) ;
precache_model(gModels) ; }

public FootKick(id) {
if( !zp_get_user_zombie(id) && is_user_alive(id) && get_pdata_float(id, 83) <= 0.0 && !(pev(id, pev_flags) & FL_DUCKING) ) {
set_pev(id, pev_velocity, {0.0}) ;
set_pev(id, pev_viewmodel2, gModels) ;
PlayAnimation(id, 1) ;
set_pdata_float(id, 83, 0.6) ;
gFootKick[id] = true ;
new Target, Body ;
get_user_aiming(id, Target, Body, 100) ;
if( Target && is_user_alive(Target) && zp_get_user_zombie(Target) ) {
new Float: fVelocity[3] ;
velocity_by_aim(id, 500, fVelocity) ;
fVelocity[2] = 300.0 ;
set_pev(Target, pev_velocity, fVelocity) ; }
if( AimDistance(id) <= 100 || is_user_alive(Target) ) {
emit_sound(id, CHAN_WEAPON, gSounds[1], 1.0, ATTN_NORM, 0, PITCH_NORM) ; }
else emit_sound(id, CHAN_WEAPON, gSounds[0], 1.0, ATTN_NORM, 0, PITCH_NORM) ; }
return PLUGIN_HANDLED ; }

public PlayerPreThink(id) {
static Float: NextAttack ;
NextAttack = get_pdata_float(id, 83, 5) ;
if( NextAttack >= 0.0 && gFootKick[id] ) {
set_pev(id, pev_velocity, {0.0,0.0,0.0}) ; }
if( NextAttack <= 0.0 && gFootKick[id] ) {
static Weapon ;
Weapon = get_pdata_cbase(id, 373) ;
if(pev_valid(Weapon)) {
ExecuteHamB(Ham_Item_Deploy, Weapon) ;
gFootKick[id] = false ; } }
new Button = get_user_button(id) ;
if( Button & IN_USE ) {
FootKick(id) ; } }

stock Float: AimDistance(id) {
static a, Float:b ;
return get_user_aiming(id, a, _:b) ; }

stock PlayAnimation(const Player, const Sequence) {
set_pev(Player, pev_weaponanim, Sequence) ;
message_begin(MSG_ONE_UNRELIABLE, SVC_WEAPONANIM, .player = Player) ;
write_byte(Sequence) ;
write_byte(pev(Player, pev_body)) ;
message_end() ; }
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 30.10.2014, 17:55
Сообщение #2
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

Kasper55,
вероятно есть другой код, т.к. тут нет бинда кнопки, не ловит события и т.д.

Отредактировал: Orty_Hart, - 30.10.2014, 17:55
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Kasper55
сообщение 30.10.2014, 18:00
Сообщение #3
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

Цитата(Orty_Hart @ 30.10.2014, 17:55) *
Kasper55,
вероятно есть другой код, т.к. тут нет бинда кнопки, не ловит события и т.д.

это весь плагин , он выполняет функции нажимаешь на кнопку и делаешь пинок ногой , моделька есть
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 30.10.2014, 18:01
Сообщение #4


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

Orty_Hart,
Код:
public PlayerPreThink(id) {
static Float: NextAttack ;
NextAttack = get_pdata_float(id, 83, 5) ;
if( NextAttack >= 0.0 && gFootKick[id] ) {
set_pev(id, pev_velocity, {0.0,0.0,0.0}) ; }
if( NextAttack <= 0.0 && gFootKick[id] ) {
static Weapon ;
Weapon = get_pdata_cbase(id, 373) ;
if(pev_valid(Weapon)) {
ExecuteHamB(Ham_Item_Deploy, Weapon) ;
gFootKick[id] = false ; } }
new Button = get_user_button(id) ;
if( Button & IN_USE ) {
FootKick(id) ; } }

Тут вроде отлов какой то.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Type
сообщение 30.10.2014, 18:22
Сообщение #5
Стаж: 11 лет

Сообщений: 378
Благодарностей: 130
Полезность: 284

Код
ExecuteHamB(Ham_Item_Deploy, Weapon);

На V нельзя.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Kasper55
сообщение 30.10.2014, 18:26
Сообщение #6
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

Цитата(Type @ 30.10.2014, 18:22) *
Код
ExecuteHamB(Ham_Item_Deploy, Weapon);

На V нельзя.

а на какую можно что бы конфликта с парашутом не было?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
shel
сообщение 30.10.2014, 18:30
Сообщение #7
Стаж: 12 лет

Сообщений: 79
Благодарностей: 7
Полезность: 0

Цитата(Kasper55 @ 30.10.2014, 20:26) *
а на какую можно что бы конфликта с парашутом не было?

r :D
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Type
сообщение 30.10.2014, 18:31
Сообщение #8
Стаж: 11 лет

Сообщений: 378
Благодарностей: 130
Полезность: 284

Kasper55, M,choose_team
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Kasper55
сообщение 30.10.2014, 18:37
Сообщение #9
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

r перезарядка)

а на m стоит меню тоже уже занято , на T можно?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Type
сообщение 30.10.2014, 18:40
Сообщение #10
Стаж: 11 лет

Сообщений: 378
Благодарностей: 130
Полезность: 284

Kasper55, нет
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя s0h
сообщение 30.10.2014, 18:41
Сообщение #11


Стаж: 17 лет

Сообщений: 670
Благодарностей: 897
Полезность: 1164

Цитата(Kasper55 @ 30.10.2014, 18:37) *
r перезарядка)

а на m стоит меню тоже уже занято , на T можно?

Можно

Код:
register_impulse(201 , "impulse_201")

201 отвечает за спрей
impulse_201 наша функция

Отредактировал: s0h, - 30.10.2014, 18:41
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 30.10.2014, 18:41
Сообщение #12


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

отловить можно только то, что передается на сервер
нажатие кнопок на сервер не передается
передаются только команды

#define IN_ATTACK (1<<0)
#define IN_JUMP (1<<1)
#define IN_DUCK (1<<2)
#define IN_FORWARD (1<<3)
#define IN_BACK (1<<4)
#define IN_USE (1<<5)
#define IN_CANCEL (1<<6)
#define IN_LEFT (1<<7)
#define IN_RIGHT (1<<8)
#define IN_MOVELEFT (1<<9)
#define IN_MOVERIGHT (1<<10)
#define IN_ATTACK2 (1<<11)
#define IN_RUN (1<<12)
#define IN_RELOAD (1<<13)
#define IN_ALT1 (1<<14)
#define IN_SCORE (1<<15)

так что если F1 будет +use = то будет ловится F1, хотя на самом деле ловится USE

так же можно отловить консольные команды
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Kasper55
сообщение 30.10.2014, 18:44
Сообщение #13
Стаж: 16 лет

Сообщений: 1145
Благодарности: выкл.

Цитата(s0h @ 30.10.2014, 18:41) *
Можно

Код:
register_impulse(201 , "impulse_201")

201 отвечает за спрей
impulse_201 наша функция

не очень понял
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя s0h
сообщение 30.10.2014, 18:46
Сообщение #14


Стаж: 17 лет

Сообщений: 670
Благодарностей: 897
Полезность: 1164

На спрей переставил, т.е по дефолту эта кнопка Т, но у кого спрей на другую кнопку то та кнопка и будет отвечать за удар.

Код:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <fakemeta_util>
#include <hamsandwich>
#include <engine>
#include <cstrike>
#include <zombieplague>

#define PLUGIN "[CSO] Foot Kick"
#define VERSION "0.0.1.4"
#define AUTHOR "PlaneShift1231"

#define gModels "models/cso/v_foot.mdl"

new const gSounds[][] = {
"cso/foot_slash.wav",
"cso/foot_kick.wav" } ;

new bool: gFootKick[33] ;

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR) ;
register_impulse(201 , "FootKick") ;
RegisterHam(Ham_Player_PreThink, "player", "PlayerPreThink") ;
}

public plugin_precache() {
precache_sound(gSounds[0]) ;
precache_sound(gSounds[1]) ;
precache_model(gModels) ; }

public FootKick(id) {
if( !zp_get_user_zombie(id) && is_user_alive(id) && get_pdata_float(id, 83) <= 0.0 && !(pev(id, pev_flags) & FL_DUCKING) ) {
set_pev(id, pev_velocity, {0.0}) ;
set_pev(id, pev_viewmodel2, gModels) ;
PlayAnimation(id, 1) ;
set_pdata_float(id, 83, 0.6) ;
gFootKick[id] = true ;
new Target, Body ;
get_user_aiming(id, Target, Body, 100) ;
if( Target && is_user_alive(Target) && zp_get_user_zombie(Target) ) {
new Float: fVelocity[3] ;
velocity_by_aim(id, 500, fVelocity) ;
fVelocity[2] = 300.0 ;
set_pev(Target, pev_velocity, fVelocity) ; }
if( AimDistance(id) <= 100 || is_user_alive(Target) ) {
emit_sound(id, CHAN_WEAPON, gSounds[1], 1.0, ATTN_NORM, 0, PITCH_NORM) ; }
else emit_sound(id, CHAN_WEAPON, gSounds[0], 1.0, ATTN_NORM, 0, PITCH_NORM) ; }
return PLUGIN_HANDLED ; }

public PlayerPreThink(id) {
static Float: NextAttack ;
NextAttack = get_pdata_float(id, 83, 5) ;
if( NextAttack >= 0.0 && gFootKick[id] ) {
set_pev(id, pev_velocity, {0.0,0.0,0.0}) ; }
if( NextAttack <= 0.0 && gFootKick[id] ) {
static Weapon ;
Weapon = get_pdata_cbase(id, 373) ;
if(pev_valid(Weapon)) {
ExecuteHamB(Ham_Item_Deploy, Weapon) ;
gFootKick[id] = false ; } }
}

stock Float: AimDistance(id) {
static a, Float:b ;
return get_user_aiming(id, a, _:b) ; }

stock PlayAnimation(const Player, const Sequence) {
set_pev(Player, pev_weaponanim, Sequence) ;
message_begin(MSG_ONE_UNRELIABLE, SVC_WEAPONANIM, .player = Player) ;
write_byte(Sequence) ;
write_byte(pev(Player, pev_body)) ;
message_end() ; }


Отредактировал: s0h, - 30.10.2014, 18:49
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: