Ru/Acttable t: Difference between revisions

From Valve Developer Community
< Ru
Jump to navigation Jump to search
mNo edit summary
Line 18: Line 18:
{ ACT_MP_CROUCH_IDLE, ACT_MYMOD_CROUCH_AIM_MYWEAPON, false },
{ ACT_MP_CROUCH_IDLE, ACT_MYMOD_CROUCH_AIM_MYWEAPON, false },
{ ACT_MP_RUN, ACT_MYMOD_RUN_MYWEAPON, false },
{ ACT_MP_RUN, ACT_MYMOD_RUN_MYWEAPON, false },
// etc.
// и т.д.
};
};



Revision as of 01:42, 22 July 2013

Template:Otherlang2 acttable_t дефайны транслируются между общими activities генерируя в PlayerAnimState объект в одной экземпляре конкретного оружия.Например, ACT_MP_STAND_IDLE может быть отправлен как ACT_DOD_STAND_AIM_RIFLE для одного оружия.

Если оружие не имеет ActTable, или имеет неполную таблицу, вы скорее всего увидите вашу модель оружия с "jesus pose" анимацией в некоторых случаях.

Icon-Bug.pngБаг:CBaseCombatWeapon::ActivityOverride(), с выполнением в ActTable, не вызывается на базовом коде. Смотрите m_PlayerAnimState#Implementation чтобы это исправить.  [нужно проверить в ?]

Реализация

Добавте DECLARE_ACTTABLE() в оба, клиент и сервер, класса. Затем, в shared code:

acttable_t CMyWeapon::m_acttable[] = 
{
	{ ACT_MP_STAND_IDLE,	ACT_MYMOD_STAND_AIM_MYWEAPON,	false },
	{ ACT_MP_CROUCH_IDLE,	ACT_MYMOD_CROUCH_AIM_MYWEAPON,	false },
	{ ACT_MP_RUN,		ACT_MYMOD_RUN_MYWEAPON,		false },
	// и т.д.
};

IMPLEMENT_ACTTABLE( CMyWeapon );

Третье значение показывает будет ли использоваться анимация или нет.

Нужно сделать: Запомните это.

Перевод: --Slam12f 01:41, 22 July 2013 (PDT)