AMX MOD X
Среда, 04.12.2024, 23:50:34



Приветствую Вас Гость | RSS
[ Главная ] [ Определение hit зоны - AMX Mod X Форум ] [ Регистрация ] [ Вход ]
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/

  • Страница 1 из 1
  • 1
Модератор форума: slogic, AlMod  
Определение hit зоны
pa1nkillerДата: Пятница, 19.06.2009, 18:05:28 | Сообщение # 1
Рядовой
Группа: Пользователи
Сообщений: 18
Репутация: 0
Статус: Не в сети
Собсна пишу плагин, который при попадании в различные хитзоны(head,stomach,leftarm...), делает соответствующие эффекты и расчеты. Но я не могу понять как вычислить эту хитзону при попадании в тебя пули.

p1^^
 
defaultNick8433Дата: Пятница, 19.06.2009, 19:49:55 | Сообщение # 2
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Репутация: 19
Статус: Не в сети
Code
#include <amxmodx>

public plugin_init(){
register_plugin("x","x","x")
register_event("DeathMsg","onDeath","a")
}
public onDeath()
{
new iKiller=read_data(1)//индек киллера,если понадобится
new iVictim=read_data(2)//индекс жертвы,если понадобится
new iHeadshot=read_data(3)//индекс попадания в хэд

if(!iHeadshot)//если был хэдшот
//твой код
}


Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
 
PomanoBДата: Пятница, 19.06.2009, 20:48:05 | Сообщение # 3
Генералиссимус
Группа: Cупер-модеры
Сообщений: 1313
Репутация: 70
Статус: Не в сети
Надо хукать Ham_TraceAttack, в функцию передаётся параметр tracehandle, далее get_tr2(tracehandle, TR_iHitgroup) вернет то что нужно

http://romanov4400.mybrute.com
 
KokaДата: Суббота, 20.06.2009, 18:51:10 | Сообщение # 4
Полковник
Группа: Пользователи
Сообщений: 169
Репутация: 1
Статус: Не в сети
это хук при смерти =)

Code
RegisterHam(Ham_Killed, "fwd_Ham_Killed_Post", 1)

public fwd_Ham_Killed_Post(victim, attacker, shouldgib)
{
  /*
  *[HIT - ZONES]  
  * 1 - generic  
  * 2 - head  
  * 4 - chest  
  * 8 - stomach
  * 16 - left arm
  * 32 - right arm  
  * 64 - left leg  
  * 128 - right leg  
  */
   
  client_print(victim, print_chat, "Victim[%d] Attacker[%d] Shouldgib[%d]", victim, attacker, shouldgib);
  client_print(attacker, print_chat, "Victim[%d] Attacker[%d] Shouldgib[%d]", victim, attacker, shouldgib);
   
  return HAM_IGNORED
}


стал ощущать рефлексы тоньше, оставаясь как всегда с идеей той же...
 
PomanoBДата: Суббота, 20.06.2009, 20:17:05 | Сообщение # 5
Генералиссимус
Группа: Cупер-модеры
Сообщений: 1313
Репутация: 70
Статус: Не в сети
Во первых в amxconst.inc написано
Code

/* Parts of body for hits */
#define HIT_GENERIC  0    /* none */
#define HIT_HEAD  1
#define HIT_CHEST  2
#define HIT_STOMACH  3
#define HIT_LEFTARM  4
#define HIT_RIGHTARM  5
#define HIT_LEFTLEG  6
#define HIT_RIGHTLEG  7

Добавлю что 8 - это шит
Во вторых в Ham_Killed не видно попаданий


http://romanov4400.mybrute.com
 
se7hДата: Понедельник, 22.06.2009, 15:10:55 | Сообщение # 6
Генерал-майор
Группа: Cупер-модеры
Сообщений: 424
Репутация: 13
Статус: Не в сети
Code
#include <amxmodx>

public plugin_init()
{
          register_plugin("name", "version", "author")
          register_event("Damage", "damage", "b", "2!0")
}

public damage(id)
{
          new weaponID, hitzone
          new attacker = get_user_attacker(id, weaponID, hitzone)    // attacker - id атакующего, weaponID - номер оружия, hitzone - номер хитбокса
}

лёгкий метод без использования Hamsandwich




Сообщение отредактировал se7h - Понедельник, 22.06.2009, 15:28:10
 
pa1nkillerДата: Четверг, 25.06.2009, 13:43:04 | Сообщение # 7
Рядовой
Группа: Пользователи
Сообщений: 18
Репутация: 0
Статус: Не в сети
Quote (se7h)
лёгкий метод без использования Hamsandwich

Вот ето нужно было,))) а то сендвичи и факеметы для меня еще тяжело усваиваемые))

но все равно спасибо всем


p1^^
 
  • Страница 1 из 1
  • 1
Поиск:

AMX Mod X Russian Community © 2006-2024