![]() |
Страницы (2): [1] 2 » Показать все 21 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- error EV_playback 0 (https://hlfx.ru/forum/showthread.php?threadid=2388)
error EV_playback 0
В общем создал я нож на основе монтировки, класс задекларировал в weapons.h, основной код разместил в crowbar.cpp,также в клиенте все задекларировал.Однако при попытке ударить воздух,возникает ошибка EV_playback 0 и анимация удара не воспроизводится. Но стоит приблизится к какому либо объекту(стене, зомби, ученому, трупу), как анимация чудесным образом работает. Что это может быть, и как исправить? Лопата (монтировка) работает нормально, я в ней только модель поменял.
__________________
-Brain is dead-
Эвент для ножа ты прекешировал с помощью PRECACHE_EVENT?
__________________
эээ... Да, с помощью этого. Эвент лежит где надо, скопировал с монтировки.
__________________
-Brain is dead-
Ну а на клиенте ты его захукал?
__________________
Вроде да, в каком файле, напомни пожалуйста? Кстати если эвент не прекешить а наследовать от монтировки, то тоже такая фигня(
__________________
-Brain is dead-
KiQ попробуй сделать нож чисто на сервере, без эвентов.
Но если я его наследую от монтировки, то клиентская часть должна быть по любому? Или нет?
__________________
-Brain is dead-
KiQ если наследуешь, то да. Но можно все анимации и звуки играть на сервере. Конечно, с эвентами для mp лучше. Но если делаешь сингл, то разницы нет.
KiQ покажи код вызова эвента.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ku2zoff то есть сначала нужно наследовать в public метод PrimaryAttack, и затем куда нибудь в начало этого метода вписать SetWeaponAnim(CROWBAR_ATTACK1)? Все анимации берутся из enum gauss_e.
Добавлено 19-10-2010 в 14:24:
Дядя Миша я сейчас не дома
__________________
-Brain is dead-
KiQ да. Только enum желательно свой забацать.
KiQ ну как домой вернешься - покажи. Мы никуда не торопимся.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Так. Во первых хочу уточнить ошибку. EV_playback out of range 0. Во вторых, почему то когда я делаю хук эвента на клиенте (cl_dll/hl/hl_events.cpp",почему то клиент компилируется с нулевым map и отсутствием собственно dll. В процессе компиляции ошибок не возникало О_О Где еще надо декларировать название эвента,вот у меня оно EV_Knife. На всякий случай говорю, что юзаю батниковый компилятор, а не студию..// Теперь вопрос по другой теме.Я переделал модель барни для своего мода и прилепил ему дробовик вместо пистолета. Но осталось две проблемы - во первых мазлфлэш остался на месте несуществующего пистолета, во вторых я никак не могу поменять то,чем он стреляет. Я менял тип патронов в наследованом классе на PLAYER_SHOTGUN, но стреляет он все равно пистолетом 'О_о.
__________________
-Brain is dead-
KiQ
Покажи код серверной и клиентской части ножа.
__________________
минутку...
Сервер
1 | LINK_ENTITY_TO_CLASS( weapon_knife, CKnife ); |
2 | void CKnife::Spawn( ) { |
3 | Precache( ); |
4 | m_iId = WEAPON_KNIFE; |
5 | SET_MODEL(ENT(pev), "models/w_knife.mdl"); |
6 | m_iClip = -1; |
7 | FallInit();// get ready to fall down. |
8 | } |
9 | void CKnife::Precache( void ) { PRECACHE_MODEL("models/v_knife.mdl"); PRECACHE_MODEL("models/w_knife.mdl"); PRECACHE_MODEL("models/p_knife.mdl"); |
10 | PRECACHE_EVENT("events/knife.sc"); |
11 | } |
12 | int CKnife::GetItemInfo(ItemInfo *p) { |
13 | p->pszName = STRING(pev->classname); |
14 | p->pszAmmo1 = NULL; |
15 | p->iMaxAmmo1 = -1; |
16 | p->pszAmmo2 = NULL; |
17 | p->iMaxAmmo2 = -1; |
18 | p->iMaxClip = WEAPON_NOCLIP; |
19 | p->iSlot = 0; p->iPosition = 1; |
20 | p->iId = WEAPON_KNIFE; |
21 | p->iWeight = CROWBAR_WEIGHT; |
22 | return 1; |
23 | } |
24 | BOOL CKnife::Deploy( ) { |
25 | return DefaultDeploy( "models/v_knife.mdl", "models/p_knife.mdl", CROWBAR_DRAW, "crowbar" ); |
26 | } |
1 | class CKnife : public CCrowbar { |
2 | public: |
3 | void Spawn( void ); |
4 | void Precache( void ); |
5 | int GetItemInfo(ItemInfo *p); |
6 | BOOL Deploy( void ); |
7 | }; |
void EV_KnifeFire( struct event_args_s *args ); |
CKnife g_Knife; |
HUD_PrepEntity( &g_Knife,&player ); |
case WEAPON_KNIFE: pWeapon = &g_Knife; break; |
void EV_KnifeFire( struct event_args_s *args ); |
gEngfuncs.pfnHookEvent( "events/knife.sc", EV_KnifeFire ); |
__________________
-Brain is dead-
Временная зона GMT. Текущее время 17:34. | Страницы (2): [1] 2 » Показать все 21 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024