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

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

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

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

[ReAPI] GunDrop

Статус пользователя NightFury406
сообщение 2.10.2018, 13:11
Сообщение #1
Стаж: 6 лет 1 месяц

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

Плагин меняет физику выброса оружия на более реалистичное и добавляет подсветку модели как из CSO
Cкриншот

Код:
#include <amxmodx>
#include <hamsandwich>
#include <fakemeta>
#include <reapi>

#define PDATA_VALID 2
#define is_entity(%0) (pev_valid(%0) == PDATA_VALID)
#define is_user(%0) (1 <= %0 <= MaxClients)
#define MODEL_GUNDROP "models/406/gundrop.mdl"
#define SOUND_GUNDROP "406/weapondrop.wav"

public plugin_precache()
{
engfunc(EngFunc_PrecacheModel, MODEL_GUNDROP)
engfunc(EngFunc_PrecacheSound, SOUND_GUNDROP)
}

public plugin_init()
{
register_plugin("GunDrop", "1.0", "406")
RegisterHam(Ham_Item_Kill, "weaponbox", "fw_ItemKillPost", 1)
RegisterHam(Ham_Touch, "weaponbox", "fw_TouchPost", 1)
RegisterHookChain(RG_CBasePlayer_DropPlayerItem, "rg_CBasePlayerDropPlayerItemPost", 1)
}

public rg_CBasePlayerDropPlayerItemPost(player, szName[])
{
new entity = GetHookChainReturn(ATYPE_INTEGER)
if(!is_entity(entity)) return HC_CONTINUE
set_pev(entity, pev_movetype, MOVETYPE_BOUNCE)
set_pev(entity, pev_gravity, 1.0)
set_pev(entity, pev_friction, 0.8)
new Float:vOrigin[3]
vOrigin[1] = random_float(-360.0, 360.0)
set_pev(entity, pev_angles, vOrigin)
vOrigin[1] = random_float(-200.0, 200.0)
set_pev(entity, pev_avelocity, vOrigin)
pev(player, pev_v_angle, vOrigin)
angle_vector(vOrigin, ANGLEVECTOR_FORWARD, vOrigin)
vOrigin[0] *= 300.0; vOrigin[1] *= 300.0; vOrigin[2] *= 300.0
set_pev(entity, pev_velocity, vOrigin)
return HC_CONTINUE
}

public fw_TouchPost(entity, victim)
{
if(pev(entity, pev_flags) & FL_KILLME)
{
new gundrop = pev(entity, pev_iuser1)
if(is_entity(gundrop)) set_pev(gundrop, pev_flags, FL_KILLME)
return HAM_IGNORED
}
if(is_user(victim)) return HAM_IGNORED
new Float:vOrigin[3]
pev(entity, pev_velocity, vOrigin)
vOrigin[0] *= 0.7; vOrigin[1] *= 0.7; vOrigin[2] *= 0.7
set_pev(entity, pev_velocity, vOrigin)
if(ExecuteHam(Ham_IsBSPModel, victim)) engfunc(EngFunc_EmitSound, entity, CHAN_VOICE, SOUND_GUNDROP, VOL_NORM, ATTN_NORM, 0, random_num(90, 120))
new gundrop = pev(entity, pev_iuser1)
if(is_entity(gundrop)) return HAM_IGNORED
gundrop = rg_create_entity("info_target")
set_pev(gundrop, pev_aiment, entity)
set_pev(gundrop, pev_movetype, MOVETYPE_FOLLOW)
engfunc(EngFunc_SetModel, gundrop, MODEL_GUNDROP)
set_pev(gundrop, pev_framerate, 1.0)
set_pev(entity, pev_iuser1, gundrop)
return HAM_IGNORED
}

public fw_ItemKillPost(entity)
{
new gundrop = pev(entity, pev_iuser1)
if(is_entity(gundrop)) set_pev(gundrop, pev_flags, FL_KILLME)
}

Прикрепленные файлы:
Прикрепленный файл  resources.zip ( 62,93 килобайт ) Кол-во скачиваний: 124
Прикрепленный файл  gundrop.sma ( 2,42 килобайт ) Кол-во скачиваний: 115
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   Цитировать сообщение
Статус пользователя Maksumus
сообщение 3.10.2018, 9:37
Сообщение #2
Стаж: 7 лет 3 месяца

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

и как?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя cs7RG
сообщение 3.10.2018, 10:42
Сообщение #3


Стаж: 8 лет 1 месяц
Город: Иваново

Сообщений: 693
Благодарностей: 138
Полезность: 78

ЧТо то не компилируется .
Прикрепленные файлы:
Прикрепленное изображение


Помог ? Нажми спасибку »
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя adva
сообщение 3.10.2018, 10:56
Сообщение #4


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

Стаж: 10 лет

Сообщений: 2543
Благодарностей: 1676
Полезность: 819

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

Цитата(cs7RG @ 3.10.2018, 11:42) *
ЧТо то не компилируется .

Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя SISA
сообщение 3.10.2018, 14:44
Сообщение #5
Стаж: 13 лет

Сообщений: 2774
Благодарностей: 2956
Полезность: 994

Цитата(cs7RG @ 3.10.2018, 12:42) *
ЧТо то не компилируется .


У вас древняя версия амх.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Xopowo
сообщение 4.10.2018, 18:55
Сообщение #6


Стаж: 11 лет

Сообщений: 38
Благодарностей: 58
Полезность: 690

Спасибо за плагин, но можно ли сделать, чтобы лазер-мины не учитывались за объект и не имели подсветку? К примеру, вот эти..
Прикрепленный файл  zp_lasermine_282.sma ( 37,23 килобайт ) Кол-во скачиваний: 25
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя NightFury406
сообщение 4.10.2018, 22:57
Сообщение #7
Стаж: 6 лет 1 месяц

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

Цитата(Xopowo @ 4.10.2018, 21:55) *
Спасибо за плагин, но можно ли сделать, чтобы лазер-мины не учитывались за объект и не имели подсветку? К примеру, вот эти..
Прикрепленный файл  zp_lasermine_282.sma ( 37,23 килобайт ) Кол-во скачиваний: 25

Я не знаю почему мины подсвечиваються, конфликта в вашем плагене с моим я не нашла.. Что именно происходит?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Xopowo
сообщение 5.10.2018, 11:35
Сообщение #8


Стаж: 11 лет

Сообщений: 38
Благодарностей: 58
Полезность: 690

При установке лазеров они выглядят примерно вот так
Прикрепленное изображение
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя NightFury406
сообщение 6.10.2018, 0:19
Сообщение #9
Стаж: 6 лет 1 месяц

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

Цитата(Xopowo @ 5.10.2018, 14:35) *
При установке лазеров они выглядят примерно вот так
Прикрепленное изображение

Попробуйте сделать проверку отсеев класс мины в таче на моем плагине
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя panda08
сообщение 7.10.2018, 18:03
Сообщение #10


Стаж: 10 лет

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

Под 1.8.2 никак?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя SISA
сообщение 14.8.2019, 15:53
Сообщение #11
Стаж: 13 лет

Сообщений: 2774
Благодарностей: 2956
Полезность: 994

Вопрос к автору.

Каким образом удаляется кастомная энтити, при удалении оружия по таймауту или в конце раунда ?

Ham_Item_Kill на веапонбокс не вызывается как бэ. Единственно, что можно хукнуть, это Think и FM_FreeEntPrivateData

По факту плагин создает пустые энтити и они валяются где-то в нулевых оригинах карты. При чем, они остаются привязанными к определенным номерам энтити через мувтайп... К чему это в итоге приведет, можно лишь гадать.

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