Поиск Аналог Ultimate Weapons с открытым кодом

kapangaIII

Команда форума
Разработчик
Регистрация
31 Окт 2017
Сообщения
840
Симпатии
251
#41
С модельиндексом все понятно, а в throwplayer через engfunc(EngFunc_SetModel ну и entity_set_model
 

Vaqtincha

Разработчик
Регистрация
28 Янв 2018
Сообщения
445
Симпатии
258
#42
надеюсь ты установил модельку не на weapon entity а grenade entity который возвращает функции выше
29 Дек 2018
Стоп. Ты начал писать плагин без меня ?
 

kapangaIII

Команда форума
Разработчик
Регистрация
31 Окт 2017
Сообщения
840
Симпатии
251
#43
?
Пример приведи. Я на grenade устанавливал, нужная мне энтити.
public PlayerThrowGrenade(const this, const grenade)
entity_set_model(grenade,"mdl");



P.s Я его ещё вчера днём написал.
 

Vaqtincha

Разработчик
Регистрация
28 Янв 2018
Сообщения
445
Симпатии
258
#44
kapangaIII,
C++:
RegisterHookChain(RG_CBasePlayer_ThrowGrenade, "CBasePlayer_ThrowGrenade", .post = true)


public CBasePlayer_ThrowGrenade(const pPlayer, const pWeapon, Float:vecSrc[3], Float:vecThrow[3], Float:time, const usEvent)
{
    new pGrenade = GetHookChainReturn(ATYPE_INTEGER)
    
    if (pGrenade > 0)
    {
        server_print("[ThrowGrenade] WeaponEnt %i | Grenade %i", pWeapon, pGrenade)
    }
}
29 Дек 2018
В инклуде 2й аргумент описано неверно. На самом деле это weapon entity который в руках и он всегда невидимый. Когда игрок бросает гранату создается др. энтити с моделькой
 

kapangaIII

Команда форума
Разработчик
Регистрация
31 Окт 2017
Сообщения
840
Симпатии
251
#45
Попробуй сменить на w_ak47 например.
engfunc(EngFunc_SetModel, pGrenade, "models/w_ak47.mdl");
У меня просто все равно не меняется, странно.

В fm_setmodel с суперсидом меняется.
29 Дек 2018
W_ точнее
 

Vaqtincha

Разработчик
Регистрация
28 Янв 2018
Сообщения
445
Симпатии
258
#46
А вот юзать
set_entvar(ent, var_modelindex, index)
set_entvar(ent, var_model, "ddddd.mdl")
вместо
engfunc(EngFunc_SetModel, ent, "ddddd.mdl")
это бред
 

kapangaIII

Команда форума
Разработчик
Регистрация
31 Окт 2017
Сообщения
840
Симпатии
251
#47
var_model не использовал, он не используется нигде почти
А modelindex иногда используется, поэтому и попытался, но...
 

Vaqtincha

Разработчик
Регистрация
28 Янв 2018
Сообщения
445
Симпатии
258
#48
kapangaIII,
C++:
public CBasePlayer_ThrowGrenade(const pPlayer, const pWeapon, Float:vecSrc[3], Float:vecThrow[3], Float:time, const usEvent)
{
    new pGrenade = GetHookChainReturn(ATYPE_INTEGER)
    
    if (pGrenade > 0)
    {
        server_print("[ThrowGrenade] WeaponEnt %i | Grenade %i", pWeapon, pGrenade)
        
        engfunc(EngFunc_SetModel, pGrenade, "models/w_ak47.mdl");
    }
}
 

Вложения

  • 99,4 KB 34

kapangaIII

Команда форума
Разработчик
Регистрация
31 Окт 2017
Сообщения
840
Симпатии
251
#49
Видимо ты особенный... Как ни странно, у меня не работает :/
Ладно, спс, попробую все обновить сейчас.
 

kapangaIII

Команда форума
Разработчик
Регистрация
31 Окт 2017
Сообщения
840
Симпатии
251
#51
Лучше мозг сразу обновлю, виндовс долго слишком обновляется)
 

kapangaIII

Команда форума
Разработчик
Регистрация
31 Окт 2017
Сообщения
840
Симпатии
251
#52
Если кто-то хочет потестить на живых серверах и сообщить о недочетах - пишите в личку.
Требования: 1.8.3 и выше, реапи, регеймдлл.
 

fantom

Постоялец
Регистрация
11 Июн 2017
Сообщения
251
Симпатии
164
Пол
Мужской
#53
Есть идеи как заменить w_ модель гранаты используя лишь хуки reapi, в RG_CBasePlayer_ThrowGrenade не меняется, в RG_ThrowHeGrenade уэе без импульса?
В RG_CWeaponBox_SetModel соответственно нету ее вроде.
Делал хук спавна грены (можна броска) и потом в след фрейме (RequestFrame из 190 например)
 

Vaqtincha

Разработчик
Регистрация
28 Янв 2018
Сообщения
445
Симпатии
258
#54
fantom, костыль... Выше рабочий и правильный код и никаких фреймов!
 

kapangaIII

Команда форума
Разработчик
Регистрация
31 Окт 2017
Сообщения
840
Симпатии
251
#55
Если кто-то хочет потестить на живых серверах и сообщить о недочетах - пишите в личку.
Требования: 1.8.3 и выше, реапи, регеймдлл.
И да, те кто с отложенными тестами - не стоит. Мне нужно потестить в течении дня и сказать все ли в порядке (я и так знаю что там все нормально, но все же).